Agentops shared
Shared reference documents for multi-agent skills (not directly invocable)
git clone https://github.com/boshu2/agentops
T=$(mktemp -d) && git clone --depth=1 https://github.com/boshu2/agentops "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills-codex/shared" ~/.claude/skills/boshu2-agentops-shared && rm -rf "$T"
skills-codex/shared/SKILL.mdShared References
This directory contains shared reference documents used by multiple skills:
- Verification requirements for accepting spawned workvalidation-contract.md
- Concrete examples for Codex session agentsreferences/backend-codex-subagents.md
- Fallback: background shell tasksreferences/backend-background-tasks.md
- Degraded single-agent mode (no spawn)references/backend-inline.md
- Verified Codex CLI command shapes and caveatsreferences/codex-cli-verified-commands.md
- Dated failure log and mitigations from live runsreferences/cli-command-failures-2026-02-26.md- references/content-hash-cache.md - SHA-256 content-based caching for file processing
- references/compaction-signals.md - Tool-call-based strategic compaction signals
These are not directly invocable skills. They are loaded by other skills (council, crank, swarm, research, implement) when needed.
CLI Availability Pattern
All skills that reference external CLIs MUST degrade gracefully when those CLIs are absent.
Check Pattern
# Before using any external CLI, check availability if command -v bd &>/dev/null; then # Full behavior with bd else echo "Note: bd CLI not installed. Using plain text tracking." fi
Fallback Table
| Capability | When Missing | Fallback Behavior |
|---|---|---|
| Knowledge flywheel unavailable | Write learnings to directly. Skip flywheel metrics |
| Workspace management unavailable | Work in current directory. Skip convoy/sling operations |
| CLI missing or model unavailable | Fall back to runtime-native agents. Council pre-flight checks CLI presence () and model availability for mode. |
| Session search unavailable | Skip transcript search. Note "install cass for session history" |
Required Multi-Agent Capabilities
Council, swarm, and crank require a runtime that provides these capabilities. If a capability is missing, the corresponding feature degrades.
| Capability | What it does | If missing |
|---|---|---|
| Spawn subagent | Create a parallel agent with a prompt | Cannot run multi-agent. Fall back to (inline single-agent). |
| Agent-to-agent messaging | Send a message to a specific agent | No follow-up round. Workers run fire-and-forget. |
| Broadcast | Message all agents at once | Per-agent messaging fallback. |
| Graceful shutdown | Request an agent to terminate | Agents terminate on their own when done. |
| Shared task list | Agents see shared work state | Lead tracks manually. |
Every runtime maps these capabilities to its own API. Skills describe WHAT to do, not WHICH tool to call.
After detecting your backend (see Backend Detection below), load the matching reference for concrete tool call examples:
| Backend | Reference |
|---|---|
| Codex session agents | |
| Background Tasks (fallback) | |
| Inline (no spawn) | |
Backend Detection
Use capability detection at runtime, not hardcoded tool names. The same skill must work across any agent harness that provides multi-agent primitives. If no multi-agent capability is detected, degrade to single-agent inline mode (
--quick).
Selection policy (runtime-native first):
- If running in a Codex session and
is available, use Codex session agents as the primary backend.spawn_agent - If both are technically available, pick the backend native to the current runtime unless the user explicitly requests mixed/cross-vendor execution.
- Only use background tasks when neither native backend is available.
| Operation | Codex Session Agents | OpenCode Subagents | Inline Fallback |
|---|---|---|---|
| Spawn (read-only) | | Read-only subagent prompt | Execute inline |
| Follow-up | | not supported | N/A |
| Wait | | Read-only task polling | N/A |
| Cleanup | | not supported | N/A |
OpenCode limitations:
- No inter-agent messaging — workers run as independent sub-sessions
- No follow-up mode — requires messaging between judges
(inline) mode works identically across all backends--quick
Backend Capabilities Matrix
Prefer native teams over background tasks. Native teams provide messaging, redirect, and graceful shutdown. Background tasks are fire-and-forget with no steering.
| Capability | Codex Session Agents | Background Tasks |
|---|---|---|
| File conflict prevention | Manual routing or native + lead-only commits | None |
| Process isolation | YES (sub-process) | Shared worktree |
Skill Invocation Across Runtimes
Skills that chain to other skills (e.g.,
$rpi calls $research, $vibe calls $council) MUST handle runtime differences:
| Runtime | Tool | Behavior | Pattern |
|---|---|---|---|
| Codex | | Executable — skill runs as a sub-invocation | |
| Codex | N/A | Skills not available — inline the logic or skip | Check if exists before delegating |
| OpenCode | tool (read-only) | Load-only — returns blocks into context | Call , then follow the loaded instructions inline |
OpenCode skill chaining rules:
- Call the
tool to load the target skill's content into contextskill - Read and follow the loaded instructions directly — do NOT expect automatic execution
- NEVER use slashcommand syntax (e.g.,
) in OpenCode — it triggers a command lookup, not skill loading$council - If the loaded skill references tools by Codex names, use OpenCode equivalents (see tool mapping below)
Cross-runtime tool mapping:
| Codex | OpenCode | Notes |
|---|---|---|
| Read-only subagent prompt | Same semantic role, different surface |
| Read-only task polling | Wait for completion |
| not available | Use a fresh task instead |
| not available | Let the task exit |
| tool (read-only) | Load content, then follow inline |
, , , , , | Same names | Identical across runtimes |
Rules
- Never crash — missing CLI = skip or fallback, not error
- Always inform — tell the user what was skipped and how to enable it
- Preserve core function — the skill's primary purpose must still work without optional CLIs
- Progressive enhancement — CLIs add capabilities, their absence removes them cleanly
Reference Documents
- references/backend-background-tasks.md
- references/backend-codex-subagents.md
- references/backend-inline.md
- references/codex-cli-verified-commands.md
- references/cli-command-failures-2026-02-26.md
- references/ralph-loop-contract.md
- references/orchestration-as-prompt.md
- references/strict-delegation-contract.md — canonical contract loaded by $rpi, $discovery, $validation: strict sub-skill delegation is the default for top-level orchestrators.
Local Resources
references/
- references/backend-background-tasks.md
- references/backend-codex-subagents.md
- references/backend-inline.md
- references/cli-command-failures-2026-02-26.md
- references/codex-cli-verified-commands.md
- references/ralph-loop-contract.md
scripts/
scripts/validate.sh