TraceWeave — MCP-сервер для Claude Code: отладка RTL и SoC
Подключает логи симуляции, волновые формы и исходники RTL к ИИ-ассистенту, чтобы от упавшего прогона дойти до нужного времени, сигналов и логики.
claude mcp add traceweave -- uvx traceweave-mcpЧто делает TraceWeave
TraceWeave связывает записи компиляции, логи симуляции, волновые формы VCD/FSDB/FST и исходный код RTL с вашим ассистентом. Вы описываете проблему словами, а сервер ищет время, сигналы и драйверы, показывая доказательства, которые можно перепроверить.
Поддерживаются логи VCS, Xcelium и Verilator, а также волновые формы VCD, FSDB и FST. Экспортированные формальные волновые формы тоже можно запрашивать, автоматический поиск артефактов сейчас работает для JasperGold. Трассировка сигналов идёт по цепочке Verdi NPI → Source Graph → базовая статическая проверка: сначала запрашивается KDB, а если NPI недоступен, сервер пробует Source Graph без коммерческой лицензии и лишь затем откатывается на статический анализ.
Инструмент explain_signal_driver теперь по умолчанию отдаёт компактный формат traceweave.driver.compact.v1. Старые скрипты, которые читают исходную форму JSON, должны запросить output_format="full" или развернуть ответ через expand_compact_result. Есть и статический режим: он ищет постоянные подключения, неподключённые входы и сравнения с константами прямо в исходниках, без прогона симуляции.
Какие задачи решает
- разобраться, почему симуляция зависла или упала по таймауту
- найти расхождение между двумя прогонами по записям и волновым формам
- проследить, откуда сигнал получил значение X или Z
- прочитать поля упакованных шин и проверить завершение запросов TL-UL
- найти в исходниках константные подключения и неподключённые входы без симуляции
Примеры запросов агенту
- Симуляция упала по таймауту, найди интерфейсы и окно времени, где всё встало
- Сигнал стал X — проследи драйверы и покажи историю волновой формы
- Проверь, завершается ли запрос TL-UL, и покажи задержку и рукопожатие
Как установить TraceWeave
Командой платформы
claude mcp add traceweave -- uvx traceweave-mcpuvx запускает команду с именем пакета; если в README она другая — uvx --from traceweave-mcp <команда>
Командой платформы
codex mcp add traceweave -- uvx traceweave-mcpuvx запускает команду с именем пакета; если в README она другая — uvx --from traceweave-mcp <команда>
Файл настроек
{
"mcpServers": {
"traceweave": {
"command": "uvx",
"args": [
"traceweave-mcp"
]
}
}
}uvx запускает команду с именем пакета; если в README она другая — uvx --from traceweave-mcp <команда>
Файл настроек
{
"servers": {
"traceweave": {
"type": "stdio",
"command": "uvx",
"args": [
"traceweave-mcp"
]
}
}
}uvx запускает команду с именем пакета; если в README она другая — uvx --from traceweave-mcp <команда>
Командой платформы
gemini mcp add traceweave uvx traceweave-mcpuvx запускает команду с именем пакета; если в README она другая — uvx --from traceweave-mcp <команда>
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о TraceWeave
Как установить TraceWeave в Claude Code?
Выполните claude mcp add traceweave -- uvx traceweave-mcp. Сервер запускается через uvx, поэтому нужен установленный uv.
Что делает TraceWeave?
Связывает логи симуляции, волновые формы и исходники RTL с ассистентом, чтобы от упавшего прогона дойти до конкретного времени, сигналов и управляющей логики.
Какие форматы волновых форм поддерживаются?
VCD, FSDB и FST. На Linux дополнительно доступна опциональная поддержка FST: обнаружение, базовое чтение, выбор битов, выражения, выборка по тактам и сравнение форматов.