Skip to content

Built-in tools

The catalog of dsh's built-in tools, grouped by purpose. Which tools actually appear in your session depends on the profile composition and the agent preset (Minimal has two tools; under Code mode most tools fold into run_code); experimental tools are off by default.

Interaction & planning

ToolDescription
ask_user_questionpauses the tool call to ask the user for confirmation or multiple-choice answers
exit_plan_modesubmits a Markdown plan for review and exits plan mode on approval
skillloads the full instructions of a named skill

Shell

ToolDescription
bashone-shot bash command (bash -c, no state between calls); a persistent variant keeps cwd/env
pwshthe Windows PowerShell equivalent (one-shot and persistent)

Filesystem

ToolDescription
str_replace_editorview/create/edit files (view / create / str_replace / insert)
edit · write · read · read_imageliteral-replacement edit, whole-file write, line-numbered read, image read (vision-capable model required)
glob · grepglob file search (max 100), ripgrep content search (up to 250 line-numbered matches)

Terminal

ToolDescription
terminal_open / terminal_list / terminal_closecreate, list, and close persistent terminal sessions
terminal_read / terminal_send / terminal_signalread retained output, send text, signal the foreground process group

Subagents & orchestration

ToolDescription
subagent / subagent_forkdelegate a self-contained task to an independent subagent; the fork variant is one-shot, foreground by default
send_message / interrupt_agent / list_agentsfollow up a running background subagent, request cancellation, list status
job_output / job_list / job_killread, list, and stop background jobs of any kind
ralph · workflowa fixed-loop fresh-agent workflow; a plain-JS orchestration script (agent/pipeline/parallel hooks)
Team tools (experimental, off by default)the spawn_teammate, team_task_* multi-agent collaboration set
ToolDescription
lspLSP queries: definition, references, implementation, hover
session_event_read / session_event_search / session_event_traceread/search/trace events in an authorized session
session_search / session_tracesearch prior sessions and read session lineage

Goals, scheduling & web

ToolDescription
create_goal / get_goal / update_goalmanage a persistent same-session goal
schedule_create / schedule_list / schedule_deletesession-local reminders (one-shot or fixed-rate)
todo_writereplace the full structured task list (rendered by Blue's todo pane)
web_fetch · web_searchfetch and decode a URL to text; web search over 1–4 merged queries

Code mode & dynamic plugins (opt-in)

ToolDescription
run_codeexecute a TypeScript program (async function body) calling other tools through bindings — the reserved transport under tools.mode: code/both
cordis_* (opt-in)cordis_define / cordis_inspect_* / cordis_run / cordis_stop / cordis_undefine: define, inspect, activate, and remove dynamic Cordis plugins at runtime

Full schemas

Every tool's parameter schema is maintained in the official generated tool catalog — this page is the purpose cheat sheet; field details live there. How tool calls render in a Blue session is covered in Streaming transcript & tool cards.

Note: the terminal and lsp groups are not assembled by default — install the official optional plugins (persistent terminal, LSP navigation).

Preview · v0.1.0-rc.1