deepseek-harness/docs/graphs/tool-affordance-map.md

2.4 KiB

Tool Affordance Map

Maintenance mode: hybrid: tool names/schemas are boot-harvested from shipped tool plugins; required services and shipped aliases are classified in scripts/gen-doc-graphs.ts with a completeness guard.

This page connects the model-visible tools to the plugin packages and service seams behind them. For exact JSON Schemas, see tool-catalog/tools.md.

flowchart LR
  model["Model request tools[]"]
  toolpkg__deepseek_ai_dsh_tool_bash["tool-bash<br/>bash, bash_kill, bash_output"]
  model --> toolpkg__deepseek_ai_dsh_tool_bash
  requires_ctx_tools["ctx.tools"]
  toolpkg__deepseek_ai_dsh_tool_bash --> requires_ctx_tools
  requires_ctx_bash["ctx.bash"]
  toolpkg__deepseek_ai_dsh_tool_bash --> requires_ctx_bash
  toolpkg__deepseek_ai_dsh_tool_subagent["tool-subagent<br/>subagent"]
  model --> toolpkg__deepseek_ai_dsh_tool_subagent
  toolpkg__deepseek_ai_dsh_tool_subagent --> requires_ctx_tools
  requires_ctx_subagents["ctx.subagents"]
  toolpkg__deepseek_ai_dsh_tool_subagent --> requires_ctx_subagents
  toolpkg__deepseek_ai_dsh_tool_todo["tool-todo<br/>todo_write"]
  model --> toolpkg__deepseek_ai_dsh_tool_todo
  toolpkg__deepseek_ai_dsh_tool_todo --> requires_ctx_tools
  requires_owning_Agent_session["owning Agent session"]
  toolpkg__deepseek_ai_dsh_tool_todo --> requires_owning_Agent_session
Tool package Model-visible names Requires Writes / affects Shipped aliases Note
@deepseek-ai/dsh-tool-bash bash, bash_kill, bash_output ctx.tools, ctx.bash tool/call, tool/result, context/message via agent.inject() for background completion notices - The bash/bash_output/bash_kill tools are model-facing consumers of the bash executor seam.
@deepseek-ai/dsh-tool-subagent subagent ctx.tools, ctx.subagents tool/call, tool/result, child session events through the chosen provider subagent, subagent_fork The default package schema registers subagent; shipped coding/acp configs load it twice to expose spawn and fork backends.
@deepseek-ai/dsh-tool-todo todo_write ctx.tools, owning Agent session tool/call, todo/write, tool/result - todo_write is session-owned state; UIs render the latest todo/write event as a checklist or ACP plan.