Vercel Composition Patterns
supabase/supabase
React composition patterns that scale. An agent skill from supabase/supabase.
Scaffold a staged spike with golden fixtures per WORKFLOW.md §14, for cases where the spec is clear but the technique is uncertain across multiple plausible approaches.
$ npx skills add CorridorTech/PoseCap --skill ad-spike -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install CorridorTech/PoseCap ad-spike --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/CorridorTech/PoseCap.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/ad-spike .claude/skills/ad-spike && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "ad-spike" agent skill from https://github.com/CorridorTech/PoseCap/tree/main/.claude/skills/ad-spike into .claude/skills/ad-spike/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ad-spike", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/CorridorTech/PoseCap/tree/main/.claude/skills/ad-spikeType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add CorridorTech/PoseCap --skill ad-spike -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install CorridorTech/PoseCap ad-spike --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/CorridorTech/PoseCap.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/ad-spike .agents/skills/ad-spike && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ad-spike" agent skill from https://github.com/CorridorTech/PoseCap/tree/main/.claude/skills/ad-spike into .agents/skills/ad-spike/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ad-spike", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add CorridorTech/PoseCap --skill ad-spike -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install CorridorTech/PoseCap ad-spike --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/CorridorTech/PoseCap.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/ad-spike .cursor/skills/ad-spike && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "ad-spike" agent skill from https://github.com/CorridorTech/PoseCap/tree/main/.claude/skills/ad-spike into .cursor/skills/ad-spike/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ad-spike", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/CorridorTech/PoseCap.git --path .claude/skills/ad-spike--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add CorridorTech/PoseCap --skill ad-spike -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install CorridorTech/PoseCap ad-spike --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/CorridorTech/PoseCap.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/ad-spike .gemini/skills/ad-spike && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "ad-spike" agent skill from https://github.com/CorridorTech/PoseCap/tree/main/.claude/skills/ad-spike into .gemini/skills/ad-spike/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ad-spike", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install CorridorTech/PoseCap ad-spikeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add CorridorTech/PoseCap --skill ad-spike -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/CorridorTech/PoseCap.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/ad-spike .github/skills/ad-spike && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "ad-spike" agent skill from https://github.com/CorridorTech/PoseCap/tree/main/.claude/skills/ad-spike into .github/skills/ad-spike/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ad-spike", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add CorridorTech/PoseCap --skill ad-spike -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install CorridorTech/PoseCap ad-spike --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/CorridorTech/PoseCap.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/ad-spike .opencode/skills/ad-spike && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "ad-spike" agent skill from https://github.com/CorridorTech/PoseCap/tree/main/.claude/skills/ad-spike into .opencode/skills/ad-spike/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ad-spike", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
ad-spikeScaffold a staged spike with golden fixtures per WORKFLOW.md §14, for cases where the spec is clear but the technique is uncertain across multiple plausible approaches.
Ad Spike is an agent skill from CorridorTech/PoseCap. Scaffold a staged spike with golden fixtures per WORKFLOW.md §14, for cases where the spec is clear but the technique is uncertain across multiple plausible approaches. Four stages — discovery, golden fixture, pipeline with gates, two-layer evaluation. Use when the unknown is how, not what. Triggers on "spike", "uncertain technique", "which library", "CV pipeline", "evaluate approaches", "ground truth", "golden fixture", "staged pipeline", "debug per stage". Routes to ad-ground if the how is routine and a single…
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development. The licence is Apache-2.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 626701b. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadWriteGlobGrepBashWebFetchWebSearchFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Ad Spike loads about 2.7k tokens when it runs. Until then it costs about 165 tokens; SKILL.md has 1,009 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Write, Glob, Grep, Bash, WebFetch, WebSearchAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from CorridorTech/PoseCap at commit 626701b, republished under its Apache-2.0 licence (© CorridorTech). 1,009 words, ~2,718 tokens.
.claude/skills/ad-spike/SKILL.md (or your agent's skills folder).Implements WORKFLOW.md §14 (Staged Spikes With Golden Fixtures) end-to-end. The skill is for cases where the spec is clear but the technique is uncertain across multiple plausible approaches — library choice, CV approach, multi-stage transformation. WORKFLOW §9 (TDG) assumes the path is known and validates end-to-end; §14 assumes the path is unknown and validates per stage. Different uncertainty regimes; this skill is for the unknown one.
The skill creates a working directory under spikes/NNNN-<slug>/ and fills it stage-by-stage. The directory is throwaway by design — when the spike concludes, an ADR records the decision (/ad-adr) and the spike directory is deleted. See ADR-0017 for the promote-or-delete lifecycle rationale.
The skill is for unknown technique across multiple plausible approaches, not for non-trivial work in general. If a single happy path is obvious, do not start a spike. If the how is knowable from official docs / implementation references / in-repo patterns / git history, route to ad-ground and stop.
Concrete tests to run before starting:
ad-ground's four-source research surface a single happy path with a defensible deviation gate? If yes, run that instead.ad-task + ad-philosophy Goal-Driven Execution territory, not a spike.If the spike is warranted, confirm with the user the recortte (the specific surface where uncertainty sits — not the whole feature) and proceed.
List canonical approaches grounded in official docs and real examples. Pick one (or a small set, ≤3) by an explicit criterion.
Candidate-listing process:
<source>:<locator> — <repo>:<path>:<line-range> for repos, <URL> for Stack Overflow / blog / gist — and fetch via tools; never paraphrase from training memory.<file>:<line> or "no analog found".<commit-sha> or "no prior attempt".Output format:
## Discovery — <recortte>
### Candidate techniques
1. **<name>** — <one-line description>. Source: <URL or repo:path>. Trade-offs: <pros / cons>.
2. **<name>** — ...
3. **<name>** — ...
### Selection criterion
<one-line criterion: latency / accuracy / readability / dependencies / etc>
### Picked
<technique X>, picked by criterion <Y>. Alternatives held in reserve: <list>.The output of this step is information, not code. No spike directory is created yet. The user reviews the candidate list and confirms the picked approach (or revises) before Step 2.
Curate inputs with rich expected outputs. The fixture is the ground truth the staged pipeline validates against; richer fixtures catch more failure modes.
Create the spike directory:
mkdir -p spikes/NNNN-<slug>/{fixtures,debug,eval}Where NNNN is the next available 4-digit number (mirrors ADR / task / spec numbering). List spikes/ and pick the next slot.
The fixture format is JSON keyed by input path (recommended) or whatever shape the domain demands. For computer vision: bounding boxes, sizes, lighting condition, difficulty tag, edge case markers. For multi-stage transformations: intermediate states. For library choice: representative inputs covering typical and edge cases.
Example fixture file (spikes/0001-detect-circles/fixtures/golden.json):
{
"inputs/easy-01.jpg": {
"expected": [
{ "bbox": [120, 80, 240, 200], "label": "circle", "size": "large", "lighting": "even" }
],
"difficulty": "easy",
"edge_cases": []
},
"inputs/hard-01.jpg": {
"expected": [
{ "bbox": [50, 60, 90, 100], "label": "circle", "size": "small", "lighting": "low" },
{ "bbox": [200, 80, 260, 140], "label": "circle", "size": "medium", "lighting": "even", "occluded": true }
],
"difficulty": "hard",
"edge_cases": ["low-light", "partial-occlusion", "multiple-objects"]
}
}Curation principles:
The fixture is the contract the pipeline validates against. Treat it like spec text — it should not change once the spike runs unless ground truth itself changes.
One technique per stage. Each stage emits a debug artifact that makes its output inspectable.
Pipeline structure:
spikes/NNNN-<slug>/
├── README.md # spike framing (Step 1 output)
├── fixtures/ # golden inputs + expected outputs
│ └── golden.json
├── pipeline/ # one file per stage
│ ├── 01-preprocess.<ext>
│ ├── 02-detect.<ext>
│ └── 03-postprocess.<ext>
├── debug/ # per-stage debug artifacts
│ ├── 01-preprocess/
│ ├── 02-detect/
│ └── 03-postprocess/
└── eval/ # evaluation results (Step 4)Each stage's debug artifact format depends on the domain:
debug/NN-<stage>/<input-name>.png showing the stage's output.debug/NN-<stage>/<input-name>.json.debug/NN-<stage>/log.csv.The discipline: each stage's output must be inspectable independently. End-to-end output alone tells you that it failed; per-stage debug tells you where.
Implementation pattern (any language):
debug/NN-<stage>/.Run the pipeline against the fixture and emit two layers of results:
Output to spikes/NNNN-<slug>/eval/results.json:
{
"fixture": "fixtures/golden.json",
"pipeline_version": "<commit-sha or timestamp>",
"end_to_end": {
"total": 10,
"passed": 7,
"failed": 3
},
"per_stage": {
"01-preprocess": { "passed": 10, "failed": 0 },
"02-detect": { "passed": 8, "failed": 2 },
"03-postprocess": { "passed": 7, "failed": 1 }
},
"failures": [
{
"input": "inputs/hard-02.jpg",
"diverged_at": "02-detect",
"expected": [...],
"actual": [...],
"debug_artifact": "debug/02-detect/hard-02.png"
}
]
}The per-stage layer is what makes the spike actionable. End-to-end says that it failed; per-stage + debug artifact says where and why.
When the spike concludes — either the picked technique works or it does not — record the outcome via /ad-adr and delete the spike directory. The ADR is the persistent artifact; the spike code is throwaway.
ADR template for spike outcomes:
# ADR-NNNN: We will use technique X for <recortte>
## Context
<why the spike was needed — what was uncertain>
## Decision
We will use technique X. The spike at `spikes/NNNN-<slug>/` (now deleted) showed:
- End-to-end pass rate: <%>
- Failures concentrated at stage <NN>, root cause <Y>
- Mitigation: <Z>
Alternatives held in reserve and rejected:
- Technique A: rejected because <reason from spike eval>
- Technique B: rejected because <reason from spike eval>
## Consequences
<follow-on work this decision unblocks; rails to maintain>Then:
rm -rf spikes/NNNN-<slug>/
git add doc/adr/NNNN-<slug>.md
git commit -m "feat: adopt technique X for <recortte> per spike NNNN"Spikes that conclude inconclusively get an ADR too — Decision: defer; the spike at NNNN inconclusive because Y — and the directory is deleted. Inconclusive spikes are real signal; preserving the framing in an ADR prevents re-litigation.
A spike directory at spikes/NNNN-<short-slug>/ with the four-stage layout above (discovery README, fixtures, pipeline, debug per stage, eval results). The directory is throwaway by design — promote-or-delete lifecycle' ' No Status: shipped lifecycle; spikes do not "ship" — they conclude with an ADR.
When the host exposes AskUserQuestion, use it for the Step 1 selection criterion confirmation and the Step 5 promote/delete decision.
ad-ground)./ad-adr to record the outcome, then delete the spike directory./ad-task for the work units to apply the spike's findings to production code (Spec ref the original spec if applicable; cite the ADR in the task Notes).© CorridorTech, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/ad-spike of CorridorTech/PoseCap.
Open the folder on GitHubat commit 626701b
Ad Spike next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Ad Spike this skillCorridorTech/PoseCap | 224 | — | ~2.7k | Automated safety check: Notes | Apache-2.0 | |
| Vercel Composition Patternssupabase/supabase | 111k | 59 repos | ~726 | Automated safety check: Pass | MIT | |
| Finishing a Development Branchobra/superpowers | 296k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Typescript Advanced Typesrolling-scopes/rsschool-app | 10k | 25 repos | ~4.2k | Automated safety check: Pass | MPL-2.0 | |
| PR Babysitteropeninterpreter/openinterpreter | 69k | 3 repos | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| Code Review ChecklistshareAI-lab/learn-claude-code | 78k | 5 repos | ~1.1k | Automated safety check: Pass | MIT |
supabase/supabase
React composition patterns that scale. An agent skill from supabase/supabase.
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
rolling-scopes/rsschool-app
Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.
openinterpreter/openinterpreter
Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.
shareAI-lab/learn-claude-code
Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.
onyx-dot-app/onyx
Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.
CorridorTech/PoseCap
Draft a new ADR (Architecture Decision Record) at doc/adr/NNNN-<short-title.md, using Michael Nygard's Context/Decision/Consequences/Alternatives pattern.
CorridorTech/PoseCap
Generate ARCHITECTURE.md at the repo root by scanning the code first, pre-filling layers/patterns/observability/deployment from observed signals, then asking only the genuine gaps.
CorridorTech/PoseCap
Hard-delete completed plan files (tasks Status:done, specs Status:shipped, PRDs Status:superseded, ADRs Status:superseded or deprecated) via git rm, leaving git history as the only ledger.
CorridorTech/PoseCap
Read-only drift audit — compare AGENTS.md, ARCHITECTURE.md, ADR statuses, feature specs in doc/specs/, and documentation discipline against what the code actually does.
CorridorTech/PoseCap
Scaffold deterministic quality gates per WORKFLOW.md §11 — pre-commit (lint, format, secret-scan), pre-push (build, unit, integration).
CorridorTech/PoseCap
Survey the project's state across the six-layer artifact stack and recommend prioritized next actions, modeled on flutter doctor.
Categories
Scaffold a staged spike with golden fixtures per WORKFLOW.md §14, for cases where the spec is clear but the technique is uncertain across multiple plausible approaches. Ad Spike is an agent skill from CorridorTech/PoseCap.md §14, for cases where the spec is clear but the technique is uncertain across multiple plausible approaches.
Ad Spike fits situations like: the unknown is how; uncertain technique; evaluate approaches; staged pipeline.
Run `npx skills add CorridorTech/PoseCap --skill ad-spike -a claude-code`. Or copy the skill folder (.claude/skills/ad-spike in CorridorTech/PoseCap) into .claude/skills/ad-spike in your project. Claude Code loads it when a task matches its description.
Run `npx skills add CorridorTech/PoseCap --skill ad-spike -a codex`. Or copy the skill folder (.claude/skills/ad-spike in CorridorTech/PoseCap) into .agents/skills/ad-spike in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add CorridorTech/PoseCap --skill ad-spike -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ad-spike, .gemini/skills/ad-spike, .github/skills/ad-spike and .opencode/skills/ad-spike in your project.
Going by SKILL.md and its folder, Ad Spike needs the command-line tools its instructions call (git). Its frontmatter pre-approves these tools: Read, Write, Glob, Grep, Bash, WebFetch, WebSearch.
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Ad Spike is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Ad Spike: Vercel Composition Patterns (supabase/supabase, 111k stars), Finishing a Development Branch (obra/superpowers, 296k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars) and PR Babysitter (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
CorridorTech (a GitHub organization) maintains it in CorridorTech/PoseCap, which has 224 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on October 7, 2026.
Source: CorridorTech/PoseCap on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.