PromptShop

Agent Protocol

This skill defines a protocol for C-suite agents to communicate effectively, preventing chaos and circular reasoning. It establishes rules for inter-agent co...

Install

npx promptshop add agent-protocol

Details

What This Skill Does

This skill defines a protocol for C-suite agents to communicate effectively, preventing chaos and circular reasoning. It establishes rules for inter-agent communication, invocation syntax, and response formats. It is designed for multi-agent systems requiring structured coordination.

When to Use

C-suite agent coordination Preventing agent loops Orchestrating agent chains Simulating board meetings Inter-agent communication Multi-agent system design

Key Features

Defines invocation syntax Specifies response format Enforces loop prevention rules Limits maximum chain depth Prohibits circular calls Supports multiple C-suite roles

How C-suite agents talk to each other. Rules that prevent chaos, loops, and circular reasoning.

Keywords

agent protocol, inter-agent communication, agent invocation, agent orchestration, multi-agent, c-suite coordination, agent chain, loop prevention, agent isolation, board meeting protocol

Invocation Syntax

Any agent can query another using:

[INVOKE:role|question]

Examples: [INVOKE:cfo|What's the burn rate impact of hiring 5 engineers in Q3?] [INVOKE:cto|Can we realistically ship this feature by end of quarter?] [INVOKE:chro|What's our typical time-to-hire for senior engineers?] [INVOKE:cro|What does our pipeline look like for the next 90 days?]

Valid roles: ceo, cfo, cro, cmo, cpo, cto, chro, coo, ciso

Response Format

Invoked agents respond using this structure:

[RESPONSE:role] Key finding: [one line — the actual answer] Supporting data:

  • [data point 1]
  • [data point 2]
  • [data point 3 — optional] Confidence: [high | medium | low] Caveat: [one line — what could make this wrong] [/RESPONSE]

Example: [RESPONSE:cfo] Key finding: Hiring 5 engineers in Q3 extends runway from 14 to 9 months at current burn. Supporting data:

  • Current monthly burn: $280K → increases to ~$380K (+$100K fully loaded)
  • ARR needed to offset: ~$1.2M additional within 12 months
  • Current pipeline covers 60% of that target Confidence: medium Caveat: Assumes 3-month ramp and no change in revenue trajectory. [/RESPONSE]

Loop Prevention (Hard Rules)

These rules are enforced unconditionally. No exceptions.

Rule 1: No Self-Invocation

An agent cannot invoke itself. ❌ CFO → [INVOKE:cfo|...] — BLOCKED

Rule 2: Maximum Depth = 2

Chains can go A→B→C. The third hop is blocked. ✅ CRO → CFO → COO (depth 2) ❌ CRO → CFO → COO → CHRO (depth 3 — BLOCKED)

Rule 3: No Circular Calls

If agent A called agent B, agent B cannot call agent A in the same chain. ✅ CRO → CFO → CMO ❌ CRO → CFO → CRO (circular — BLOCKED)

Rule 4: Chain Tracking

Each invocation carries its call chain. Format: [CHAIN: cro → cfo → coo] Agents check this chain before responding with another invocation.

When blocked: Return this instead of invoking: [BLOCKED: cannot invoke cfo — circular call detected in chain cro→cfo] State assumption used instead: [explicit assumption the agent is making]

Isolation Rules

Board Meeting Phase 2 (Independent Analysis)

NO invocations allowed. Each role forms independent views before cross-pollination. Reason: prevent anchoring and groupthink Duration: entire Phase 2 analysis period If an agent needs data from another role: state explicit assumption, flag it with [ASSUMPTION: ...]

Board Meeting Phase 3 (Critic Role)

Executive Mentor can reference other roles' outputs but cannot invoke them. Reason: critique must be independent of new data requests Allowed: "The CFO's projection assumes X, which contradicts the CRO's pipeline data" Not allowed: [INVOKE:cfo|...] during critique phase

Outside Board Meetings

Invocations are allowed freely, subject to loop prevention rules above.

When to Invoke vs When to Assume

Invoke when: The question requires domain-specific data you don't have An error here would materially change the recommendation The question is cross-functional by nature (e.g., hiring impact on both budget and capacity)

Assume when: The data is directionally clear and precision isn't critical You're in Phase 2 isolation (always assume, never invoke) The chain is already at depth 2 The question is minor compared to your main analysis

When assuming, always state it: [ASSUMPTION: runway ~12 months based on typical Series A burn profile — not verified with CFO]

Conflict Resolution

When two invoked agents give conflicting answers:

Flag the conflict explicitly: [CONFLICT: CFO projects 14-month runway; CRO expects pipeline to close 80% → implies 18+ months] State the resolution approach:

  • Conservative: use the worse case
  • Probabilistic: weight by confidence scores
  • Escalate: flag for human decision Never silently pick one — surface the conflict to the user.

Broadcast Pattern (Crisis / CEO)

CEO can broadcast to all roles simultaneously: [BROADCAST:all|What's the impact if we miss the fundraise?]

Responses come back independently (no agent sees another's response before forming its own). Aggregate after all respond.

Quick Reference

RuleBehavior
Self-invoke❌ Always blocked
Depth > 2❌ Blocked, state assumption
Circular❌ Blocked, state assumption
Phase 2 isolation❌ No invocations
Phase 3 critique❌ Reference only, no invoke
Conflict✅ Surface it, don't hide it
Assumption✅ Always explicit with [ASSUMPTION: ...]

Internal Quality Loop (before anything reaches the founder)

No role presents to the founder without passing through this verification loop. The founder sees polished, verified output — not first drafts.

Step 1: Self-Verification (every role, every time)

Before presenting, every role runs this internal checklist:

SELF-VERIFY CHECKLIST: □ Source Attribution — Where did each data point come from? ✅ "ARR is $2.1M (from CRO pipeline report, Q4 actuals)" ❌ "ARR is around $2M" (no source, vague)

□ Assumption Audit — What am I assuming vs what I verified? Tag every assumption: [VERIFIED: checked against data] or [ASSUMED: not verified] If >50% of findings are ASSUMED → flag low confidence

□ Confidence Score — How sure am I on each finding? 🟢 High: verified data, established pattern, multiple sources 🟡 Medium: single source, reasonable inference, some uncertainty 🔴 Low: assumption-based, limited data, first-time analysis

□ Contradiction Check — Does this conflict with known context? Check against company-context.md and recent decisions in decision-log If it contradicts a past decision → flag explicitly

□ "So What?" Test — Does every finding have a business consequence? If you can't answer "so what?" in one sentence → cut it

Step 2: Peer Verification (cross-functional validation)

When a recommendation impacts another role's domain, that role validates BEFORE presenting.

If your recommendation involves...Validate with...They check...
Financial numbers or budgetCFOMath, runway impact, budget reality
Revenue projectionsCROPipeline backing, historical accuracy
Headcount or hiringCHROMarket reality, comp feasibility, timeline
Technical feasibility or timelineCTOEngineering capacity, technical debt load
Operational process changesCOOCapacity, dependencies, scaling impact
Customer-facing changesCRO + CPOChurn risk, product roadmap conflict
Security or compliance claimsCISOActual posture, regulation requirements
Market or positioning claimsCMOData backing, competitive reality

Peer validation format: [PEER-VERIFY:cfo] Validated: ✅ Burn rate calculation correct Adjusted: ⚠️ Hiring timeline should be Q3 not Q2 (budget constraint) Flagged: 🔴 Missing equity cost in total comp projection [/PEER-VERIFY]

Skip peer verification when: Single-domain ques