GthDeepAgentParams
Defined in: _worktrees/docs-release/gaunt-sloth/packages/agent/src/core/GthDeepAgent.ts:92
The subset of createDeepAgent params that are independent of the transport
(the local runner vs. the ACP server). Both GthDeepAgent.init (which adds the
console-bound tool-call-status middleware + a virtual FilesystemBackend +
checkpointer and calls createDeepAgent) and the ACP entry (deepagents-acp
startServer, which supplies its own ACP-proxying backend, checkpointer and tool-call
reporting) consume these.
middleware here deliberately EXCLUDES the tool-call-status middleware: that one writes
to stdout, which on the ACP path is the JSON-RPC channel and must stay clean. The runner
path appends it in GthDeepAgent.init.
Properties
Section titled “Properties”interruptOn?
Section titled “interruptOn?”
optionalinterruptOn?:Record<string,boolean| {allowedDecisions: ("edit"|"approve"|"reject")[];argsSchema?:Record<string,any>;description?:string| ((args_0,args_1,args_2, …args) =>string|Promise<string>);when?: (args_0, …args) =>boolean|Promise<boolean>; }>
Defined in: _worktrees/docs-release/gaunt-sloth/packages/agent/src/core/GthDeepAgent.ts:122
Per-tool human-in-the-loop configuration passed straight to
createDeepAgent({ interruptOn }) (deepagents installs LangChain’s
humanInTheLoopMiddleware for it). A matching tool call suspends the graph with a
__interrupt__ (a HITLRequest) so a consumer can approve/reject before the tool runs;
resume with new Command({ resume: { decisions: [...] } }) on the same thread_id.
gsloth sets this for the opt-in run_shell_command tool whenever the shell tool is
enabled — including under approvals.mode: "bypass" in interactive code mode, where the tool
stays gated so the runtime /auto-approve flag governs it (the runner seeds that flag ON
from approvals.mode and approves silently). It is left undefined only for a non-interactive
bypass run (exec / ask –write), whose single-shot path does not drain interrupts, so the tool
there runs inline without suspending. See getAgentBuildParams.
middleware
Section titled “middleware”middleware:
any[]
Defined in: _worktrees/docs-release/gaunt-sloth/packages/agent/src/core/GthDeepAgent.ts:98
model:
any
Defined in: _worktrees/docs-release/gaunt-sloth/packages/agent/src/core/GthDeepAgent.ts:94
permissions
Section titled “permissions”permissions:
FilesystemPermission[]
Defined in: _worktrees/docs-release/gaunt-sloth/packages/agent/src/core/GthDeepAgent.ts:96
systemPrompt
Section titled “systemPrompt”systemPrompt:
string|undefined
Defined in: _worktrees/docs-release/gaunt-sloth/packages/agent/src/core/GthDeepAgent.ts:107
gsloth’s composed system prompt (backstory + guidelines + per-command mode prompt +
system prompt). Passed to createDeepAgent({ systemPrompt }), where deepagents combines
it ADDITIVELY with its own base + filesystem prompts into ONE system message. This replaces
the previous per-turn SystemMessage injection by the runner/AG-UI callers — two system
messages (deepagents’ own + gsloth’s, not first) are rejected by Anthropic. undefined when
no prompt content is composed (lets deepagents use only its base prompt).
tools:
StructuredToolInterface<ToolInputSchemaBase,any,any>[]
Defined in: _worktrees/docs-release/gaunt-sloth/packages/agent/src/core/GthDeepAgent.ts:95