Forge
markdown4405de34
1# AcpSmokeDotnet — тот же ACP-smoke, что `samples/AcpSmoke`, на .NET
2
3Зачем: проверить цепочку **initialize → new_session → prompt** с тем же эталонным `echo_agent.py`, но клиентом на C# (**тот же** вендор `AgentClientProtocol`, что и IDE: `ProjectReference` на [`externals/acp-csharp`](../../externals/acp-csharp) — неофициальный SDK [nuskey8/acp-csharp](https://github.com/nuskey8/acp-csharp); пакет на [nuget.org](https://www.nuget.org/packages/AgentClientProtocol) может отставать по сигнатурам).
4
5## Требования
6
7- .NET 10 SDK (как у решения CascadeIDE).
8- Python 3.10+ и зависимости для агента: из каталога `samples/AcpSmoke` выполни `pip install -r requirements.txt` (нужен только запуск `echo_agent.py`).
9
10## Запуск
11
12Из корня репозитория `cascade-ide`:
13
14```bash
15dotnet run --project samples/AcpSmokeDotnet/AcpSmokeDotnet.csproj
16```
17
18Или из `samples/AcpSmokeDotnet`:
19
20```bash
21dotnet run
22```
23
24Опционально: путь к `echo_agent.py` первым аргументом или переменная окружения `ACP_ECHO_AGENT_PATH`; интерпретатор Python — `ACP_PYTHON` (по умолчанию `python`).
25
26Ожидается вывод с `initialize`, `session`, `session_update`, `ACP smoke (.NET) OK`.
27
28## Связь с Python-smoke
29
30Логика совпадает с `samples/AcpSmoke/smoke_client.py`: subprocess → stdio → `ClientSideConnection`. Официального ACP SDK для .NET от авторов протокола нет — используется community-реализация из `externals/acp-csharp` (как в `CascadeIDE.csproj`).
31
View only · write via MCP/CIDE