bundled-skills/delegate-setup/SKILL.md
Configure approved delegation lanes across installed implementer CLIs, including optional model and effort choices, then write global or project config only after explicit user approval.
npx skillsauth add FrancoStino/opencode-skills-antigravity delegate-setupInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are the orchestrator in setup mode. Discover installed implementer CLIs, propose a fleet of lanes, and write configuration only after the user approves.
This skill does not dispatch coding work. It only authors the lane map.
One concept: lanes. Never say “routes.”
Example lane: feature → implementer opencode, model opencode/grok, variant high
(OpenCode uses variant for reasoning intensity, not effort).
*-delegate skill instead.--model / --effort / --variant on that relay.implementer.model, effort or variant, …) only if that implementer supports them — see references/schema.md.AGENTS.md, CLAUDE.md, or other user agent-instruction files.*-delegate relay from this skill.(<skill-dir> is this skill’s install directory — the folder that contains this SKILL.md.)
discover → load → grounding menu → propose (with Basis) → scope → approve → write
node "<skill-dir>/scripts/discover.mjs"
Summarize installed vs missing, auth (true / false / null = unknown), and whether models were
reported, aliases (curated aliases in the registry, not live discovery — full model names also
work), unsupported, or failed.
node "<skill-dir>/scripts/config.mjs" load --cwd "$PWD"
global / project). Do not paste
both raw files unless asked.projectPresent is true and projectTrusted is false, label the project lanes untrusted.
They cannot dispatch until the user reviews and approves a project write.Discovery reports capability, never task fit. So ask one grounding question before proposing anything — one question, three options, not a wizard:
How should I pick the lanes? (1) Quick defaults — I decide, no questions. (2) Interview — about four questions on how you want work allocated. (3) Usage scan — I re-read your CLIs’ local session folders (counts and dates only, never the conversations) and let the numbers place your lanes — if one CLI dominates, expect one question about its role. Happy to do 2 and 3 together.
node "<skill-dir>/scripts/discover.mjs" --usage. Tell the user it is metadata
only before running it. Each discovered CLI gains usage: { sessions, lastUsed }; null means no
probe is wired — unknown, not unused.repo basis.That menu is also the consent surface — the option chosen sets how much of the map is yours to decide:
my opinion, say plainly that the map is your opinion, and keep it cheap to revise.model). Omitting is
always safe — every dial has a default the user already lives with, and a CLI’s configured default
is their standing choice, better evidence than your priors. Choosing which installed implementer
gets a lane is still yours — Basis my opinion — but a dial that raises spend is not: offer your
dial picks only as an addendum after the proposal, see
references/setup-dialogue.md.Delegation economics. The orchestrator reviews and lands every result — the review is the quality gate, so optimize total cost, not implementer prestige:
Question phrasings for the burn/spare and trust interview live in references/setup-dialogue.md.
Then propose the lanes. Name them after the work the user described; fall back to feature, tests,
ui, fast, complex. Installed implementers only.
Show:
| Lane | Implementer | Model | Effort / variant | Basis | Source (if updating) | | --- | --- | --- | --- | --- | --- | | feature | opencode | opencode/grok | variant: high | your answer + schema requirement | — | | tests | codex | — | — | usage data | — | | ui | claude | — | — | my opinion (implementer) | — |
Basis is mandatory on every lane: your answer / usage data / repo / my opinion /
schema requirement (a dial the schema forces is neither evidence nor opinion — say so). A lane you
picked from model-quality priors is my opinion — never present it as something the tooling
determined, and “installed and authenticated” is capability, not evidence of fit. When a lane’s
implementer and its dials come from different places, split the label — see
references/setup-dialogue.md.
Then the complete JSON (version: delegate-fleet.v1). One line of why per lane; flag auth or
model uncertainty.
Schema and dial table: references/schema.md.
global.global (say so).On explicit yes, write only the chosen scope (validate first). Build the payload from that
scope’s raw file (or an empty lanes object if new) — not from the effective merged load view,
or a project write will shadow global-only lanes and a global write will promote project-only ones.
Create a uniquely named file under the platform temporary directory ($TMPDIR, %TEMP%, or Node
os.tmpdir(); never hard-code /tmp, which breaks on native Windows), write the exact approved
JSON into it with the orchestrator's file-writing tool, and use that populated path as
<lanes-json> below. Never validate an empty temp file. Remove the temp file after the
validation/write attempt, whether it succeeds or fails.
node "<skill-dir>/scripts/config.mjs" validate "<lanes-json>"
node "<skill-dir>/scripts/config.mjs" write --scope global "<lanes-json>"
# or: write --scope project --cwd /path/to/repo "<lanes-json>"
Re-read with load, then confirm the path written and the active lane names. Project writes bind
approval to the exact config content; later changes fail closed until re-approved. On update, a short
before/after is enough.
Stop after confirming. Tell the user the map is ready. For later work: read the lane’s
implementer, load that *-delegate skill, and dispatch with --lane <name> (explicit
--model / --effort / --variant still win when passed). Do not start a delegate task
unless they ask.
Same flow. Show the effective current map, propose changes, approve, write one scope’s file. Reinstalling the skills package must not rewrite these files — they live outside the package.
scripts/) not included; see upstream for full runtime. Requires Node 18+.Adapted from amElnagdy/delegate-skills (MIT) — docs-only, runtime not bundled.
tools
Authorized security assessment of LLM applications and AI agents: prompt injection, tool abuse, RAG exposure, memory poisoning, system-prompt extraction, and agent-compliance engineering per OWASP LLM/ASI Top 10.
development
Builds two parameterized UI modes—流光溢彩白 (iridescent white) and 五彩斑斓黑 (colorful black)—with OKLCH, WebGL/CSS fallback, vision gating, screenshot QA, and total/per-color intensity reports. Use when a UI request names either mode or needs measured color parameters.
tools
Delegate coding tasks to the Kimi Code CLI (`kimi`) only when the user explicitly requests it, while the orchestrator retains review and landing responsibility.
development
Front-end JavaScript reverse engineering: locate signature chains, analyze encrypted request parameters, sample runtime behavior, and reproduce logic locally in Node for evidence-based output.