Agent Skills: Decision Gate

Universal decision gating for any user prompt. Use before sending a final response via the bundled decision_gate scripts.

UncategorizedID: nguyentien06ck3/agent-skill-innovation/decision-gate

Install this agent skill to your local

pnpm dlx add-skill https://github.com/nguyentien06ck3/agent-skill-innovation/tree/HEAD/skills/decision-gate

Skill Files

Browse the full folder contents for decision-gate.

Download Skill

Loading file tree…

skills/decision-gate/SKILL.md

Skill Metadata

Name
decision-gate
Description
Universal decision gating for any user prompt. Use before sending a final response via the bundled decision_gate scripts.

Decision Gate

Overview

Use strict decision checkpoints that always require user input. Always call the platform-appropriate script in scripts/ (decision_gate.py) before sending any final response or ending a task. Always pass --interact to enforce an interactive prompt that blocks until the user responds. No built-in timeout is enforced; set one in the caller if needed.

Mandatory Workflow

  • For every user prompt, call the decision script with --interact and wait for the user's explicit response.
  • Do not provide a default answer. If no response is received, keep waiting.
  • Before sending the final response, call the decision script for explicit approval.
  • If the user selects new-task, stop the current flow and execute the new task instead. Do not mark the task complete without approval.

Decision Script

The script prompts once and waits for input. It prints prompts to stderr and emits JSON on stdout.

Run it in an interactive terminal (separate window or VS Code terminal).

JSON input (optional)

Create an input file with these fields:

{
  "question": "Approve the final response?",
  "options": ["approve", "revise", "cancel", "new-task"],
  "context": "Summary of what is ready to ship",
  "default": "new-task",
  "allow_empty": false
}

Call:

scripts/decision_gate.sh --interact --input path/to/decision.json

Output

The script returns JSON like this:

{
  "status": "ok",
  "question": "Proceed to step 2?",
  "context": null,
  "options": ["yes", "no", "change"],
  "raw_answer": "yes",
  "answer": "yes",
  "answer_index": 0,
  "timestamp": "2026-01-11T12:00:00Z"
}

Use answer and answer_index to decide whether to proceed or to ask follow-up questions using the script again.

RED flag

  • Don't stop the task without confirmation when calling this skill.
  • Don't respond to the user without waiting for the decision gate response.