Wick
Wick
Телеметрия C#-исключений с поддержкой Roslyn для движка Godot, предоставляемая через MCP.
Что такое Wick?
Когда игра на C# в Godot аварийно завершается, ваш ИИ-ассистент видит «сырой» стек вызовов и тратит более 8 итераций, прося вас открыть файлы. Wick перехватывает это исключение, обогащает его контекстом исходного кода с помощью Roslyn (тело метода, цепочка вызовов, последние логи, состояние сцены) и передает полную картину ИИ за один вызов. Один запрос для диагностики вместо десяти.
Чем Wick отличается от других?
Другие MCP-серверы для Godot (например, отличный GoPeak) фокусируются на манипуляции сценами и инструментах GDScript. Wick фокусируется на опыте разработчика C#/.NET:
Телеметрия исключений с поддержкой Roslyn — C#-исключения, перехваченные из stderr, обогащаются телом вызывающего метода, окружающими строками кода, содержащим типом и цепочкой вызовов. Ни один другой MCP-сервер для Godot этого не делает.
Внутрипроцессный перехват исключений — дополнительный NuGet-пакет Wick.Runtime перехватывает
TaskScheduler.UnobservedTaskExceptionи асинхронные исключения, которые не видны в stderr.Диагностика сборки с контекстом исходного кода — ошибки
dotnet buildобогащаются контекстом исходного кода Roslyn через тот же конвейер, что и исключения времени выполнения.Инструменты анализа C# — поиск символов, поиск ссылок, сигнатуры членов через рабочее пространство Roslyn.
Система групп инструментов из 5 компонентов — активируйте только то, что вам нужно: core, runtime, csharp, build, scene.
Начало работы
Предварительные требования
.NET 10 SDK (10.0.201 или новее)
Godot 4.6.1+ с поддержкой .NET/Mono
Установка
git clone https://github.com/buildepicshit/Wick.git
cd Wick
dotnet build Wick.slnx --configuration ReleaseКонфигурация MCP
Добавьте Wick в конфигурацию MCP вашего ИИ-ассистента:
{
"mcpServers": {
"wick": {
"command": "dotnet",
"args": ["run", "--project", "path/to/Wick/src/Wick.Server"],
"env": {
"WICK_GROUPS": "core,runtime,csharp,build",
"WICK_GODOT_BIN": "/path/to/godot",
"WICK_PROJECT_PATH": "/path/to/your/godot-project"
}
}
}
}Группы инструментов
Активируйте группы инструментов через переменную окружения WICK_GROUPS или флаг CLI --groups:
Компонент | Что включает | По умолчанию |
core | Инструменты GDScript, парсинг сцен, GDScript LSP, интроспекция | Всегда включено |
runtime | Конвейер исключений, запуск/остановка игры, чтение логов, runtime_diagnose | По выбору |
csharp | Анализ Roslyn, поиск символов, поиск ссылок, сигнатуры членов | По выбору |
build | dotnet build/test/clean, управление NuGet, build_diagnose | По выбору |
scene | Создание/изменение сцен через headless-режим Godot | По выбору |
Пример: WICK_GROUPS=core,runtime,csharp,build или --groups=all.
Опционально: компаньон Wick.Runtime
Для внутрипроцессного перехвата исключений (асинхронные исключения, ошибки TaskScheduler) добавьте NuGet-пакет Wick.Runtime в ваш проект Godot:
// In your Godot project's autoload or entry point:
WickRuntime.Install();Это позволяет перехватывать исключения, невидимые для stderr, и сообщать о них серверу Wick через TCP-мост.
Архитектура
Wick работает как внешний процесс — он НЕ запускается внутри Godot. Связь:
stdio — протокол MCP для ИИ-клиента
TCP 6505 — мост редактора (плагин Godot к серверу Wick)
TCP 7777 — мост времени выполнения (запущенная игра к серверу Wick)
TCP 7878 — мост компаньона Wick.Runtime (внутрипроцессный к серверу Wick)
Эта архитектура позволяет Wick использовать .NET 10, даже если среда выполнения Godot 4.6.1 ограничена .NET 8.
Авторство
Wick — это реализация «с чистого листа», вдохновленная GoPeak (лицензия MIT, (c) 2025 Solomon Elias / HaD0Yun). Подробности см. в ATTRIBUTION.md.
Участие в разработке
Мы приветствуем вклад в проект! Пожалуйста, прочитайте CONTRIBUTING.md перед отправкой PR.
Демо
Клонируйте репозиторий и откройте docs/demo/player.html в браузере, чтобы посмотреть демо, или воспроизведите файл записи напрямую:
asciinema play docs/demo/wick-demo.castЛицензия
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/buildepicshit/Wick'
If you have feedback or need assistance with the MCP directory API, please join our Discord server