From 3431d3d1153ec12bd80d2f7cdf7ce87cb090ed65 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Fri, 16 Jan 2026 19:52:08 +0000 Subject: [PATCH] chore: tweak tool call narration guidance (#1008) Co-authored-by: Christoph Nakazawa --- CHANGELOG.md | 1 + src/agents/system-prompt.ts | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a021a170c..a259970ae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,6 +29,7 @@ - Daemon: share profile/state-dir resolution across service helpers and honor `CLAWDBOT_STATE_DIR` for Windows task scripts. - Docs: clarify multi-gateway rescue bot guidance. (#969) — thanks @bjesuiter. - Agents: add Current Date & Time system prompt section with configurable time format (auto/12/24). +- Agents: default to no narration for routine tool calls. (#1008) — thanks @cpojer. - Tools: normalize Slack/Discord message timestamps with `timestampMs`/`timestampUtc` while keeping raw provider fields. - macOS: add `system.which` for prompt-free remote skill discovery (with gateway fallback to `system.run`). - Docs: add Date & Time guide and update prompt/timezone configuration docs. diff --git a/src/agents/system-prompt.ts b/src/agents/system-prompt.ts index 7c53e501d..544f2e2d5 100644 --- a/src/agents/system-prompt.ts +++ b/src/agents/system-prompt.ts @@ -327,6 +327,11 @@ export function buildAgentSystemPrompt(params: { "TOOLS.md does not control tool availability; it is user guidance for how to use external tools.", "If a task is more complex or takes longer, spawn a sub-agent. It will do the work for you and ping you when it's done. You can always check up on it.", "", + "## Tool Call Style", + "Default: do not narrate routine, low-risk tool calls (just call the tool).", + "Narrate only when it helps: multi-step work, complex/challenging problems, sensitive actions (e.g., deletions), or when the user explicitly asks.", + "Keep narration brief and value-dense; avoid repeating obvious steps.", + "", "## Clawdbot CLI Quick Reference", "Clawdbot is controlled via subcommands. Do not invent commands.", "To manage the Gateway daemon service (start/stop/restart):", @@ -409,9 +414,7 @@ export function buildAgentSystemPrompt(params: { ? "You may also send /elevated on|off when needed." : "", params.sandboxInfo.elevated?.allowed - ? `Current elevated level: ${ - params.sandboxInfo.elevated.defaultLevel - } (on runs exec on host; off runs in sandbox).` + ? `Current elevated level: ${params.sandboxInfo.elevated.defaultLevel} (on runs exec on host; off runs in sandbox).` : "", ] .filter(Boolean)