# The acp-agent plugin tree: the ACP server. Also the snapshot RECORD config # (the dsh-acp-agent bin selects it for DSH_SNAPSHOT=record): a real llm-deepseek # run whose persisted log the snapshot harness harvests. Just the two swappable # backends — the DeepSeek adapter and the local bash executor — plus the ACP # server app (@deepseek-ai/dsh-acp-agent), which bundles the agent-core spine, # JSONL persistence, and the ACP bridge. # # CRITICAL: this tree loads NO stdout logger and NO hmr — stdout is reserved for # the ACP JSON-RPC protocol (see packages/ui/acp). That guarantee is now a # property of @deepseek-ai/dsh-acp-agent (it contains no logger entry), not a # leaf convention: there is no logger here to get wrong. # # Requires DEEPSEEK_API_KEY (and optionally DEEPSEEK_BASE_URL) — the # dsh-acp-agent bin loads the gitignored repo-root .env first (on STDERR only). # The DeepSeek adapter. - id: llm-deepseek name: '@deepseek-ai/dsh-llm-deepseek' config: apiKey: !!js process.env.DEEPSEEK_API_KEY baseURL: !!js process.env.DEEPSEEK_BASE_URL models: - deepseek-v4-flash - deepseek-v4-pro # Local bash executor (the agent's only tool, via agent-core's tool-bash schema). - id: bash name: '@deepseek-ai/dsh-bash-local' config: timeoutMs: 60000 # The ACP server app: the agent-core spine + JSONL persistence + the ACP bridge. # Persistence root: $DSH_SNAPSHOT_SESSIONS_ROOT when the snapshot harness sets it # (so it can harvest / isolate the log), else ./.sessions for the demo. - id: acp-agent name: '@deepseek-ai/dsh-acp-agent' config: model: deepseek-v4-flash persistenceRoot: !!js process.env.DSH_SNAPSHOT_SESSIONS_ROOT ?? './.sessions' systemPrompt: | You are a coding assistant driven over the Agent Client Protocol. Your only tools are bash (plus bash_output/bash_kill for background tasks). Do ALL file operations through bash: read with cat/sed/head, search with grep, write with heredocs (cat <<'EOF' > file), edit with sed or a rewrite. Each bash call runs in a fresh shell — pass workdir instead of cd. Check the [exit code: N] marker; verify your work. Keep answers brief and factual.