Use this skill when the user asks you to delegate with CCB, or when project
memory says to use CCB ask for collaboration.
Decision Card
Before every ask, decide:
- Need delegation? If no, answer directly.
- Result intent:
--silence: publish/execute task; success result not needed. Failures, blockers, risks, or required next actions still surface.--compact: result wanted, but only distilled findings/status/risks/blockers/next actions.+ --artifact-reply: consultation/analysis/report where full text should be preserved.- plain
ask: short question or short handoff where inline text is enough. --chain: active CCB parent job + child result required to finish. Combine with--compactor--artifact-replyas needed. Submit, then stop for continuation.
- Request fidelity:
+ --artifact-request: exact transient input (logs/output/diffs/copied contents/config/JSON/YAML/table/structured text). Prefer repo paths when the target can read files directly.--artifact-io: request and reply both need artifacts.
Guardrails
- Do not probe
--chain; if unsure there is an active parent job, use plainask. - If CCB says
ask --chain requires an active parent job, retry once with plainaskfor user-requested delegation. --chainand--silenceusually conflict; avoid mixing unless explicit.- Avoid
--silence --artifact-reply; silence means no caller result needed; artifact-reply preserves one. - Artifact flags are orthogonal to
--chain,--silence, and--compact. They preserve content, not dependency shape. - Automatic spill for text over 4 KiB is a fallback, not the primary rule.
--artifact-*modes are CCB/daemon managed; targets do not write artifact reply files.- Plain nested
askfrom an active CCB task is rejected; use--chainor--silence. - In
A --silence -> B, B still runs an active job. B-to-C depends on whether B needs C's result. - In task chains, each needed-result hop uses
--chain; CCB then propagates continuations. - If the current task is a CCB result-chain continuation, answer the current task
directly with the final result. Do not use
ask,--chain, or--silenceto send that final result to the original caller; CCB routes the continuation completion upstream. ask get,pend,watch, andpingare diagnostics-only commands for explicit debugging requests, not normal ask workflow tools.- Do not manually append output-policy text;
askinjects reply guidance.
Kimi Receipt Contract
For implementation, review, inventory, or verification work, return one final receipt in this exact shape:
status:
inspected:
exact_files:
findings:
reject_cases:
required_tests:
no_open:
blockers:
Use status: complete, status: partial, or status: blocked.
Process updates are invalid receipts: do not answer with "I am reading",
"I will test", or "completed" without the evidence fields above. If you cannot
finish within the current turn, use status: partial or status: blocked and
name the exact files inspected, remaining command, and blocker. Keep the reply
short. Your output is candidate evidence; the caller owns diff review,
verification, final lifecycle judgment, and commits.
Always send MESSAGE through the <<'EOF' ... EOF heredoc below. No other form
is allowed. Use no flags or insert selected flags before "$TARGET":
command ask "$TARGET" <<'EOF'
$MESSAGE
EOF
command ask --chain --artifact-reply "$TARGET" <<'EOF'
$MESSAGE
EOF
After the command returns, end the turn. Do not wait for a reply,
do not run ask get / pend / ping / watch, do not poll.
For --chain, report only that delegation was submitted.