From 58a29898e64e0e9c022ab565b46e4b52a27aa25e Mon Sep 17 00:00:00 2001 From: Minkyu Cho Date: Wed, 21 Jan 2026 19:23:41 +0900 Subject: [PATCH] fix: add interactive mode instruction to embedded skills MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ensure embedded skills follow the Guided Interactive Workflow pattern in interactive mode by adding INTERACTIVE_MODE_INSTRUCTION to getSkillPrompt. This fixes the issue where /event-tracking and other interactive skills skip confirmation/proposal steps and immediately proceed to implementation. - Confirm → Propose → Validate → Implement → Verify workflow - Applies to embedded skills: event-tracking, integration, user-management, etc. - Command mode (oneShot: true) behavior unchanged Co-Authored-By: Claude --- src/lib/skills.ts | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/src/lib/skills.ts b/src/lib/skills.ts index da60ace..a1a8990 100644 --- a/src/lib/skills.ts +++ b/src/lib/skills.ts @@ -175,6 +175,28 @@ COMPLETION CRITERIA: - Provide a summary of changes made (not what needs to be done manually) `; +/** + * Interactive mode instruction for Guided Interactive Workflow. + * Instructs the agent to follow the Confirm → Propose → Validate → Implement → Verify pattern. + */ +const INTERACTIVE_MODE_INSTRUCTION = ` +IMPORTANT: This is an interactive conversation session. Follow the Guided Interactive Workflow. + +EXECUTION GUIDELINES: +- ALWAYS follow the workflow steps in order: Confirm → Propose → Validate → Implement → Verify +- DO NOT skip to implementation without completing earlier steps +- ASK for required inputs before proceeding (platform, goals, preferences) +- PROPOSE your plan and wait for user approval before making changes +- NEVER modify files without explicit user confirmation +- If information is missing, ASK the user rather than assuming + +WORKFLOW ENFORCEMENT: +- Start by confirming the minimum required inputs from the user +- Present your proposed plan for review +- Only proceed to implementation after the user approves the plan +- Validate before implementing, verify after implementing +`; + /** * Read a local skill prompt from the skills directory. * Local skill prompts are stored in src/lib/skills//SKILL.md @@ -263,9 +285,11 @@ export async function getSkillPrompt( Target platform: ${platform} `; - // Add one-shot instruction for autonomous execution + // Add mode-specific instruction if (options?.oneShot) { prompt += ONE_SHOT_INSTRUCTION; + } else { + prompt += INTERACTIVE_MODE_INSTRUCTION; } prompt += `\n${skillMarkdown}`;