HD
Human-in-the-Loop Design
🔵 Stable 🕐 updated 2026-07-02
🔷 SkillSpec L3
pm-agentnative
Design the human approval surface for an agent system — which actions gate, how approvals batch without becoming rubber stamps, and what the audit trail must hold. Use when asked to add human oversight to an agent, design approval workflows for AI actions, decide what an agent may do autonomously, or fix approval fatigue in an existing loop. Produces an action-tier policy, approval UX spec, escalation rules, and audit-trail requirements. For specifying the whole agent use agent-spec; for the per-skill execution gates see the Execution-block pattern in SKILLSPEC §5.
What to give it
▸ The agent and its action inventory — everything it *can* do (from its tool list, not its marketing)
▸ Blast radius per action — reversible? outward-facing? money/data/permissions involved?
▸ Volume estimates — how many times per day each action fires (approval load is a design constraint, not an afterthought)
▸ Who approves — role, how many people, what else competes for their attention
✅ The bar it holds itself to
Every skill in this library self-verifies — these are this skill's own quality checks, straight from its definition.
✓ Every action in the agent's toolset appears in the tier table — none defaulted silently
✓ The approval budget is computed, and the launch design fits inside it
✓ Timeout behaviour is safe-by-default (expire, never auto-proceed)
✓ The forbidden tier removes capabilities from the toolset rather than gating them
✓ Health metrics detect rubber-stamping, not just agent errors
⚠️ What it refuses to do
Do not gate everything — undifferentiated approval load is how the important one slips through
Do not show raw transcripts as the approval artifact — humans approve decisions, not logs
Do not let unanswered approvals auto-proceed on timeout "to keep things moving"
Do not loosen tiers on gut feel — the down-tier bar is written evidence, the up-tier trigger is any incident
Do not measure only agent mistakes — an approver who edits nothing for a month is the riskier signal
Install
npx pm-claude-skills add --agent claude # or codex · cursor · gemini · hermes
# or one-line MCP (every skill, any client):
claude mcp add pm-skills -- npx -y pm-claude-skills-mcp
Related skills
🔌 Embed this skill
Drop this on your blog, docs, or site — it renders a "Run this skill" card:
<div data-pm-skill="human-in-the-loop-design"></div>
<script src="https://mohitagw15856.github.io/pm-claude-skills/embed.js" async></script>
💬 Discussion