Files
deepseek-harness/examples/repl-agent/composition.md
Tianyi Cui 2faeabb05a refactor(examples): rename coding-agent leaf to repl-agent
Name the runnable leaf for the line-oriented front door it owns, matching the existing tui-agent and acp-agent organization. Move the complete config, Code Mode overlay, tests, metadata, and generated composition graph together, then update every loader path and repository reference.

Keep the shared model identity independent of its terminal front door by phrasing the persona as a coding-agent role rather than retaining the retired leaf name. Regenerate graph and tool catalogs and re-record each affected bilingual pair so derived documentation cannot point at the removed path.
2026-07-19 13:13:14 +08:00

4.4 KiB

REPL Agent App Composition

The REPL agent demo adds the real DeepSeek adapter, filesystem tools, todo_write, compaction, and both subagent transports on top of the stdio app package.

flowchart LR
  cfg["examples/repl-agent<br/>cordis.yml"]
  plugin_repl_hmr["hmr<br/>@cordisjs/plugin-hmr"]
  cfg --> plugin_repl_hmr
  plugin_repl_llm_deepseek["llm-deepseek<br/>@deepseek-ai/dsh-llm-deepseek"]
  cfg --> plugin_repl_llm_deepseek
  plugin_repl_bash["bash<br/>@deepseek-ai/dsh-bash-local"]
  cfg --> plugin_repl_bash
  plugin_repl_stdio_agent["stdio-agent<br/>@deepseek-ai/dsh-stdio-demo"]
  cfg --> plugin_repl_stdio_agent
  plugin_repl_stdio_agent --> bundle_agent_core["@deepseek-ai/dsh-agent-spine-demo"]
  plugin_repl_stdio_agent --> bundle_jsonl["@deepseek-ai/dsh-session-persistence-jsonl"]
  plugin_repl_stdio_agent --> frontdoor_stdio["@deepseek-ai/dsh-stdio<br/>pre-created main agent"]
  bundle_agent_core --> spine_llm["ctx.llm"]
  bundle_agent_core --> spine_sessions["ctx.sessions"]
  bundle_agent_core --> spine_tools["ctx.tools + tool-bash"]
  bundle_agent_core --> spine_loop["ctx.agents + ctx.agentLoop"]
  plugin_repl_token_meter["token-meter<br/>@deepseek-ai/dsh-token-meter"]
  cfg --> plugin_repl_token_meter
  plugin_repl_compact_basic["compact-basic<br/>@deepseek-ai/dsh-compact-basic"]
  cfg --> plugin_repl_compact_basic
  plugin_repl_subagent["subagent<br/>@deepseek-ai/dsh-subagent"]
  cfg --> plugin_repl_subagent
  plugin_repl_subagent_spawn["subagent-spawn<br/>@deepseek-ai/dsh-subagent-spawn"]
  cfg --> plugin_repl_subagent_spawn
  plugin_repl_subagent_fork["subagent-fork<br/>@deepseek-ai/dsh-subagent-fork"]
  cfg --> plugin_repl_subagent_fork
  plugin_repl_tool_subagent["tool-subagent<br/>@deepseek-ai/dsh-tool-subagent"]
  cfg --> plugin_repl_tool_subagent
  plugin_repl_tool_subagent_fork["tool-subagent-fork<br/>@deepseek-ai/dsh-tool-subagent"]
  cfg --> plugin_repl_tool_subagent_fork
  plugin_repl_workflow_workerthread["workflow-workerthread<br/>@deepseek-ai/dsh-workflow-workerthread"]
  cfg --> plugin_repl_workflow_workerthread
  plugin_repl_tool_workflow["tool-workflow<br/>@deepseek-ai/dsh-tool-workflow"]
  cfg --> plugin_repl_tool_workflow
  plugin_repl_tool_todo["tool-todo<br/>@deepseek-ai/dsh-tool-todo"]
  cfg --> plugin_repl_tool_todo
  plugin_repl_fs_local["fs-local<br/>@deepseek-ai/dsh-fs-local"]
  cfg --> plugin_repl_fs_local
  plugin_repl_fs_policy["fs-policy<br/>@deepseek-ai/dsh-fs-policy"]
  cfg --> plugin_repl_fs_policy
  plugin_repl_tool_fs["tool-fs<br/>@deepseek-ai/dsh-tool-fs"]
  cfg --> plugin_repl_tool_fs
  plugin_repl_tool_fs_search["tool-fs-search<br/>@deepseek-ai/dsh-tool-fs-search"]
  cfg --> plugin_repl_tool_fs_search
  plugin_repl_timeout_policy["timeout-policy<br/>@deepseek-ai/dsh-timeout-policy"]
  cfg --> plugin_repl_timeout_policy
  plugin_repl_spill_local["spill-local<br/>@deepseek-ai/dsh-spill-local"]
  cfg --> plugin_repl_spill_local
  plugin_repl_spill_policy["spill-policy<br/>@deepseek-ai/dsh-spill-policy"]
  cfg --> plugin_repl_spill_policy
Plugin id Package / module
hmr @cordisjs/plugin-hmr
llm-deepseek @deepseek-ai/dsh-llm-deepseek
bash @deepseek-ai/dsh-bash-local
stdio-agent @deepseek-ai/dsh-stdio-demo
token-meter @deepseek-ai/dsh-token-meter
compact-basic @deepseek-ai/dsh-compact-basic
subagent @deepseek-ai/dsh-subagent
subagent-spawn @deepseek-ai/dsh-subagent-spawn
subagent-fork @deepseek-ai/dsh-subagent-fork
tool-subagent @deepseek-ai/dsh-tool-subagent
tool-subagent-fork @deepseek-ai/dsh-tool-subagent
workflow-workerthread @deepseek-ai/dsh-workflow-workerthread
tool-workflow @deepseek-ai/dsh-tool-workflow
tool-todo @deepseek-ai/dsh-tool-todo
fs-local @deepseek-ai/dsh-fs-local
fs-policy @deepseek-ai/dsh-fs-policy
tool-fs @deepseek-ai/dsh-tool-fs
tool-fs-search @deepseek-ai/dsh-tool-fs-search
timeout-policy @deepseek-ai/dsh-timeout-policy
spill-local @deepseek-ai/dsh-spill-local
spill-policy @deepseek-ai/dsh-spill-policy

Source config: examples/repl-agent/cordis.yml.

Maintenance mode: hybrid: the leaf plugin list is parsed from its cordis.yml; app package expansion is curated from package source.