# Shared provider/tool core for the example agents, loaded via a nested # @cordisjs/plugin-include from each example's cordis.yml. This is # base-core.yml (the providerless core: llm, sessions, system-prompt, tools, # agents, invariants, bash-local, tool-bash) PLUS the real llm-deepseek adapter. # # The providerless core lives in base-core.yml so the keyless snapshot-replay # config (acp-agent/cordis.snapshot.yml) can reuse it with llm-replay in place # of the adapter — it can't reuse THIS file, because llm-deepseek's apply() # throws without DEEPSEEK_API_KEY. # # Deliberately EXCLUDES: # - the console logger: it writes to stdout, which the acp-agent reserves for # the JSON-RPC protocol (see packages/acp). Each example loads logging itself. # - agent-loop: AgentLoop pre-creates its configured `agents` in its # constructor, and the examples disagree — coding-agent needs a pre-created # `main` (its stdio-chat calls ctx.agents.get('main')), while acp-agent must # pre-create NONE (ACP session/new creates agents on demand). So each example # declares agent-loop with its own `agents` list. # # Requires DEEPSEEK_API_KEY (and optionally DEEPSEEK_BASE_URL) in the env. # The providerless core (resolved relative to THIS file's directory). - id: base-core name: '@cordisjs/plugin-include' config: path: './base-core.yml' # The DeepSeek adapter. Swap to '@deepseek-ai/dsh-llm-pi-ai' for the pi-ai-backed # twin (same config shape; `reasoning: high` replaces thinking/reasoningEffort). - 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