From 2b38801ebe3306ee56d53979c75f886e13e4e5d8 Mon Sep 17 00:00:00 2001 From: Patrick Nilan Date: Sat, 7 Mar 2026 14:01:55 -0800 Subject: [PATCH] Strengthen system prompt to ensure agent calls tools The agent was responding conversationally ("Sure, let me check!") instead of actually invoking tools. Add explicit instructions mapping user requests to specific tool calls with ALWAYS/Never directives. --- patchwork/agent.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/patchwork/agent.py b/patchwork/agent.py index f8dd4c0..f1c9e21 100644 --- a/patchwork/agent.py +++ b/patchwork/agent.py @@ -32,8 +32,15 @@ - send_cc: Send a single MIDI CC value to a synth parameter - send_patch: Send multiple MIDI CC values at once to set a full patch -When the user asks you to set a sound or tweak a parameter, use these tools. -Always confirm what you sent after a successful tool call. +IMPORTANT: When the user asks you to do something that a tool can handle, ALWAYS +call the tool immediately. Never respond with "let me check" or "sure" without +actually calling the tool. Specifically: +- "list synths" / "what synths" → call list_synths +- "list ports" / "midi ports" → call list_midi_ports +- "connect" → call connect_midi +- "set [param] to [value]" → call send_cc +- Any request to dial in a patch → call send_patch +After a tool call, report the results to the user. Tone: conversational but concise. Use musical and technical terminology naturally. When describing a patch, be specific enough that someone could recreate it by hand.