arbiterforge/ca-spike
Exploratory spike on a throwaway branch — answer a named question with disposable code. Never merges; exits to a findings note or $ca-feature.
npx skills add https://github.com/arbiterForge/codeArbiter --skill ca-spike
The sanctioned lane for "I need to write code to find out." Spike code is disposable by contract:
it never merges, never PRs, and never becomes the implementation. What survives a spike is the
*answer*, written down — the code is burned.
$ARGUMENTS as the question the spike answers and the timebox (default: one session). STOP for
the user's confirmation.
spike/<slug> from the current branch. All spike work stays on it.tdd, no plan, no review fleet. Two rules survive even here: no secret leavesthe approved store, and no irreversible operation (prod data, destructive migration) runs from a
spike.
<project-root>/.codearbiter/spikes/<slug>.md(the question, what was tried, the answer, what it implies), then delete the branch. If the
answer warrants building, hand the findings to $ca-feature — the spike file seeds
brainstorming; the spike code is reference material, never the implementation.
MUST NOT merge or PR a spike/* branch — its only exits are a findings file and deletion. MUST NOT
copy spike code into an implementation branch wholesale; implementation re-enters through
$ca-feature and tdd. Secret-handling and irreversibility rules hold even in a spike. Commits on
a spike/* branch are exempt from commit-gate — the exemption is safe precisely because nothing
on the branch can ever land.
$ca-feature.$ca-debug (investigation with a structured exit).$ca-btw.Take arbiterforge/ca-spike from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.