Not in the top 1,000 by GitHub stars
Redtropig/harness-anchor
A warn-only runtime layer for Claude Code agents. Keeps feature state, scope and handoffs on disk so they survive compaction, and requires an evidence path before a done claim. Never blocks a tool call. Companion to superpowers; bash + git, no MCP.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/anti-hallucination-gates/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/capturing-golden-rules/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/context-budget-discipline/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/cpp-build-systems/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/cpp-formatting/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/cpp-sanitizers/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/cpp-static-analysis/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/docs-lookup/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/feature-state-keeper/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/init-verification/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/project-indexing/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/self-correction-loop/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/test-coverage-design/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 2664c77b1388
No earlier version was observed for comparison.
skills/using-harness-anchor/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
2664c77b1388 → 2664c77b1388
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 2664c77b1388
No earlier version was observed for comparison.
Verified commit 2664c77b1388efbc59aca14602ba7de1a2b96935
git clone --filter=blob:none --no-checkout https://github.com/Redtropig/harness-anchor.git .hotskills/redtropig-harness-anchor && git -C .hotskills/redtropig-harness-anchor checkout --detach 2664c77b1388efbc59aca14602ba7de1a2b96935
# Copy each selected skill directory from .hotskills/redtropig-harness-anchor into .claude/skills/<skill-name>/git clone --filter=blob:none --no-checkout https://github.com/Redtropig/harness-anchor.git .hotskills/redtropig-harness-anchor && git -C .hotskills/redtropig-harness-anchor checkout --detach 2664c77b1388efbc59aca14602ba7de1a2b96935
# Copy each selected skill directory from .hotskills/redtropig-harness-anchor into .agents/skills/<skill-name>/Heat
0.3- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- anti-hallucination-gates
skills/anti-hallucination-gates - capturing-golden-rules
skills/capturing-golden-rules - context-budget-discipline
skills/context-budget-discipline - cpp-build-systems
skills/cpp-build-systems - cpp-formatting
skills/cpp-formatting - cpp-sanitizers
skills/cpp-sanitizers - cpp-static-analysis
skills/cpp-static-analysis - docs-lookup
skills/docs-lookup - feature-state-keeper
skills/feature-state-keeper - init-verification
skills/init-verification - project-indexing
skills/project-indexing - self-correction-loop
skills/self-correction-loop - test-coverage-design
skills/test-coverage-design - using-harness-anchor
skills/using-harness-anchor
How it works
anti-hallucination-gates
When your agent uses it
Use before claiming done/fixed/passing — or before asserting something is absent: not installed, not available, no such function, couldn't find it. Default-FAIL runs both ways — every claim needs an evidence path. A negative claim must carry its search scope and observation date; state calibrated uncertainty when evidence is missing.
What it loads into context
Frontmatter
76 tokensAlways available to the agent
SKILL.md
2,530 tokensWhen the skill is activated
Reference documents
1,293 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The Iron Rule
- The Iron Rule runs both ways
- Default-FAIL Evaluation Contract
- Calibrated Uncertainty (2026 consensus)
- Anti-patterns
- The "should" detector
- Pre-claim checklist
- When to invoke
- Looking up evidence commands for unfamiliar frameworks
- Related
Scripts executed separately
../../scripts/cpp-tool-discovery.sh../../scripts/cpp-tool-discovery.sh../../scripts/cpp-tool-discovery.sh../../scripts/cpp-tool-discovery.sh
Files
../../.claude-plugin/marketplace.jsonasset663 bytes../../.claude-plugin/plugin.jsonasset628 bytes../../hooks/hooks.jsonasset1,256 bytes../../scripts/cpp-tool-discovery.shruns7,411 bytes../../scripts/cpp-tool-discovery.shruns7,411 bytes../../scripts/cpp-tool-discovery.shruns7,411 bytes../../scripts/cpp-tool-discovery.shruns7,411 bytesSKILL.mdcore10,668 bytesSKILL.mdcore10,668 bytesSKILL.mdcore10,668 bytesevidence-checklist.mddoc4,205 bytes
Read SKILL.md
# Anti-Hallucination Gates
The most common agent failure is **declaring victory too early**. This skill is the gate between "I think it works" and "evidence proves it works".
## The Iron Rule
> No claim of "done" / "fixed" / "passing" without a concrete artifact path proving it.
A claim like *"I fixed the bug"* is incomplete. The proper form:
> "Fixed by commit `abc123`. Test `tests/foo.test.ts::handles-edge-case` now passes (output captured in `.harness-anchor/test-2026-05-28.log`). Build still passes (`.build/last-build.log` exit 0)."
## The Iron Rule runs both ways
View the complete source on GitHubcapturing-golden-rules
When your agent uses it
Use when the same mistake or bad pattern recurs, when a code-review comment is really a convention worth enforcing, or when you catch AI-generated drift/slop and want it to never happen again. Encodes the lesson as a durable rule in golden-rules.md — the feedback-flywheel / harness-layer-learning ratchet — instead of a one-off fix. Generic (language-agnostic).
What it loads into context
Frontmatter
90 tokensAlways available to the agent
SKILL.md
1,532 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to capture
- When to write — the same turn, not session end
- Route the signal to its right home (don't dump everything here)
- How to capture
- The flywheel
- Prune — entropy applies to the rules too
- Anti-patterns
- Related
Files
SKILL.mdcore6,247 bytes
Read SKILL.md
# Capturing Golden Rules
A one-off fix repairs today's symptom. A **golden rule** repairs the whole class — it makes the
harness learn so the same mistake can't recur. This skill is the **ratchet**: turn a recurring
failure into a durable, checkable rule in `golden-rules.md`.
> Hashimoto's principle: *"Anytime an agent makes a mistake, engineer a solution so it never makes
> that mistake again."* The fix is a guardrail, not a scolding — **blame the process, not the agent**.
> You're improving the environment, not the model.
## When to capture
Capture when the signal is **recurring**, not a one-off:
View the complete source on GitHubcontext-budget-discipline
When your agent uses it
Use when sessions run long, adding subagents, fetching large files, or planning context-heavy work. SELECT/WRITE/COMPRESS/ISOLATE discipline.
What it loads into context
Frontmatter
41 tokensAlways available to the agent
SKILL.md
1,347 tokensWhen the skill is activated
Reference documents
880 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The Four Operations
- Token Budget Reference
- State-file budgets
- When to invoke this skill
- Practical moves
- Calibrated estimates
- Looking up context engineering research
- Related
Scripts executed separately
../../scripts/measure-context.sh
Files
../../scripts/measure-context.shruns5,434 bytesSKILL.mdcore5,595 bytescontext-budget-template.mddoc3,401 bytes
Read SKILL.md
# Context Budget Discipline
Context is a finite resource. Every token competes for the model's attention. The "lost-in-the-middle" phenomenon is real — content buried in 50% of the window position is least attended.
This skill applies four operations to keep the budget sane.
## The Four Operations
```
SELECT load context just-in-time, not all-at-once
WRITE persist to disk; let the filesystem remember, not chat
COMPRESS summarize older turns when window fills
ISOLATE delegate so child work doesn't pollute parent context
```View the complete source on GitHubcpp-build-systems
When your agent uses it
Use in C/C++ projects for build configure/errors, compile_commands.json generation, or selecting CMake/Meson/Make/Bazel commands.
What it loads into context
Frontmatter
37 tokensAlways available to the agent
SKILL.md
1,239 tokensWhen the skill is activated
Reference documents
1,586 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The compile_commands.json invariant
- Per-build-system commands
- Build failure triage (you fix common ones, escalate the rest)
- Multi-config builds (Debug + Release + Sanitizer)
- When the user has NO build system yet
- Detection helper
- References
- When NOT to invoke this skill
- Calibrated uncertainty
- Looking up tool errors
Scripts executed separately
../../scripts/cpp-detect.sh../../scripts/cpp-detect.sh../../scripts/cpp-detect.sh../../scripts/cpp-detect.sh
Files
../../scripts/cpp-detect.shruns3,640 bytes../../scripts/cpp-detect.shruns3,640 bytes../../scripts/cpp-detect.shruns3,640 bytes../../scripts/cpp-detect.shruns3,640 bytesSKILL.mdcore5,154 bytesSKILL.mdcore5,154 bytesSKILL.mdcore5,154 bytesSKILL.mdcore5,154 bytesSKILL.mdcore5,154 bytesSKILL.mdcore5,154 bytesSKILL.mdcore5,154 bytesSKILL.mdcore5,154 bytesSKILL.mdcore5,154 bytescmake-reference.mddoc2,231 bytescompile-commands-guide.mddoc2,591 bytesmeson-reference.mddoc1,285 bytes
Read SKILL.md
# C/C++ Build Systems
The build system is the single most important piece of C/C++ tooling — it determines how every other tool (clang-tidy, IWYU, language servers, debuggers) understands your code.
## The compile_commands.json invariant
> **Every C/C++ project must export `compile_commands.json`.**
It's a JSON database of compiler invocations per file. Without it, clang-tidy/IWYU/clangd can't parse your code correctly (they need to know macros, includes, standard, flags). The `cpp-static-analysis` skill enforces this prerequisite.
## Per-build-system commands
### CMake
View the complete source on GitHubcpp-formatting
When your agent uses it
Use in C/C++ projects for clang-format. Changed-lines-only; never reformat unchanged code mid-feature. .clang-format from root or LLVM baseline.
What it loads into context
Frontmatter
39 tokensAlways available to the agent
SKILL.md
855 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Prerequisites
- Format changed lines only (preferred)
- Is clang-format actually here?
- Format a whole file
- Verify (CI-friendly)
- Common .clang-format settings
- When NOT to run clang-format
- Hook integration
- Sanity check after format
- Looking up clang-format options
Scripts executed separately
../../scripts/cpp-tool-discovery.sh
Files
../../scripts/cpp-tool-discovery.shruns7,411 bytesSKILL.mdcore3,569 bytesSKILL.mdcore3,569 bytesSKILL.mdcore3,569 bytesSKILL.mdcore3,569 bytesSKILL.mdcore3,569 bytesSKILL.mdcore3,569 bytesSKILL.mdcore3,569 bytesSKILL.mdcore3,569 bytes
Read SKILL.md
# C/C++ Formatting (clang-format)
`clang-format` is the de-facto C/C++ formatter. Like Prettier or rustfmt, it's deterministic and removes formatting debates.
## Prerequisites
- `clang-format` reachable — see "Is clang-format actually here?" below before concluding
it's missing; only then `brew install clang-format` / `apt install clang-format`.
- `.clang-format` config at project root (use `templates/cpp/.clang-format.tpl` if not present — `/cpp-init` drops it for you)
## Format changed lines only (preferred)
```bash
git diff -U0 --no-color HEAD | clang-format-diff -p1 -iView the complete source on GitHubcpp-sanitizers
When your agent uses it
Use in C/C++ projects for crashes, hangs, UB, data races, memory errors. ASan/UBSan/TSan runtime checks. Build sanitizer config separately.
What it loads into context
Frontmatter
44 tokensAlways available to the agent
SKILL.md
1,837 tokensWhen the skill is activated
Reference documents
882 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The `/sanitize` command
- Prerequisites
- Standard build setup
- Platform notes (Windows)
- Reading sanitizer output
- Suppressions
- Anti-patterns
- When to invoke
- See `ub-failure-patterns.md` for common UBSan signatures and their fixes — it doubles as the **C/C++ arm** of `test-coverage-design`'s risk-construct checklist.
- Looking up unfamiliar signatures
Files
SKILL.mdcore6,815 bytesSKILL.mdcore6,815 bytesSKILL.mdcore6,815 bytesSKILL.mdcore6,815 bytesSKILL.mdcore6,815 bytesSKILL.mdcore6,815 bytesSKILL.mdcore6,815 bytesplatform/windows.mddoc1,070 bytesub-failure-patterns.mddoc2,205 bytes
Read SKILL.md
# C/C++ Sanitizers — Runtime Bug Catchers
Sanitizers are compiler-instrumented runtime checks. They catch what static analysis can't (path-sensitive errors, race conditions, memory errors discovered at runtime). They run your normal tests under instrumentation; failures abort with a precise report.
| Sanitizer | What it catches | Slowdown |
|---|---|---|
| **ASan** (Address) | Use-after-free, heap/stack overflow, leaks (leaks: Linux only) | 2-3x |
| **UBSan** (UB) | Signed overflow, null deref, misaligned, OOB shift, ... (MSVC: unavailable — see Platform notes) | ~1.1x |
| **TSan** (Thread) | Data races, deadlocks (not available on Windows — see Platform notes) | 5-10x |
| **MSan** (Memory) | Use of uninitialized memory | 3x (Linux only, Clang only) |
Note: ASan + UBSan are combinable. TSan is **mutually exclusive** with ASan/MSan.
## The `/sanitize` commandView the complete source on GitHubcpp-static-analysis
When your agent uses it
Use in C/C++ projects when reviewing changes or hunting bugs. Runs clang-tidy/cppcheck/IWYU. Needs compile_commands.json. Changed lines only.
What it loads into context
Frontmatter
41 tokensAlways available to the agent
SKILL.md
2,256 tokensWhen the skill is activated
Reference documents
562 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Prerequisites (hard)
- clang-tidy — daily-driver
- cppcheck — second opinion
- IWYU — keep includes honest
- Clang Static Analyzer — you're already running it
- GCC -fanalyzer (C only)
- Warn-only philosophy
- When to defer
- Looking up unfamiliar checks
- Templates
- Windows notes
Scripts executed separately
../../scripts/cpp-tool-discovery.sh
Files
../../scripts/cpp-tool-discovery.shruns7,411 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytesSKILL.mdcore8,758 bytestool-comparison.mddoc2,127 bytes
Read SKILL.md
# C/C++ Static Analysis
Static analysis catches an enormous class of bugs at zero runtime cost: null derefs, leaks, dangling refs, integer overflow, missing initializers, unused includes, banned APIs.
Three core tools cover most needs:
| Tool | What it catches | Cost |
|---|---|---|
| **clang-tidy** | Style + correctness + modernize + bugprone | Heavy (uses full AST) |
| **cppcheck** | Quick correctness, leaks, off-by-one | Light (own parser) |
| **IWYU** | Missing/superfluous `#include` | Heavy (compile-driven) |
## Prerequisites (hard)
View the complete source on GitHubdocs-lookup
When your agent uses it
Use when looking up unfamiliar tools, APIs, errors, library behavior. Context7 → WebSearch → calibrated uncertainty fallback chain. Don't guess.
What it loads into context
Frontmatter
36 tokensAlways available to the agent
SKILL.md
1,632 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Step 1: Structured docs MCP — Context7, or a first-party MCP for its ecosystem
- Step 2: WebSearch (fallback)
- Step 3: Calibrated uncertainty (terminal fallback)
- Reporting what you looked up
- When NOT to invoke docs-lookup
- Related
Files
SKILL.mdcore6,852 bytes
Read SKILL.md
# Docs Lookup (with fallback)
When you need authoritative information about an unfamiliar **tool / API / error message / library behavior**, follow this fallback chain. Each step has explicit success and failure criteria so the agent never silently degrades to guessing.
```
Step 1: Structured docs MCP (Context7; or Microsoft Learn for .NET/Azure/Windows/MSVC)
↓ (unavailable / no match / wrong content / tool error)
Step 2: WebSearch (broader web, recent ecosystem changes)
↓ (unavailable / no useful results / paywalled)
Step 3: Calibrated uncertainty (tell user what you tried + what's needed)
```
**You do not skip steps.** If Step 1 fails, you go to Step 2. If Step 2 fails, you go to Step 3. You do NOT retry Step 1 with the same query hoping for a different answer.
View the complete source on GitHubfeature-state-keeper
When your agent uses it
Use when starting, advancing, finishing, or blocking a feature. Manages feature_list.json + progress.md + session-handoff.md. Default-FAIL enforced.
What it loads into context
Frontmatter
41 tokensAlways available to the agent
SKILL.md
2,845 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Altitude — feature ledger vs superpowers' execution records
- When to use
- Reading order
- Active-feature rule
- Feature id uniqueness
- Default-FAIL evidence contract
- Updating progress.md
- Updating session-handoff.md
- Schema validation
- Ordering — actionable-first (applied by /session-end)
- Looking up JSON Schema constraints
- Related
- Committing as features advance
Scripts executed separately
../../scripts/feature-list-sort.mjs../../scripts/feature-list-validate.mjs../../scripts/feature-list-validate.mjs../../scripts/feature-list-validate.mjs../../scripts/progress-prepend.mjs../../scripts/progress-prepend.mjs
Files
../../scripts/feature-list-sort.mjsruns2,943 bytes../../scripts/feature-list-validate.mjsruns5,347 bytes../../scripts/feature-list-validate.mjsruns5,347 bytes../../scripts/feature-list-validate.mjsruns5,347 bytes../../scripts/progress-prepend.mjsruns2,657 bytes../../scripts/progress-prepend.mjsruns2,657 bytesSKILL.mdcore11,977 bytesSKILL.mdcore11,977 bytesSKILL.mdcore11,977 bytesSKILL.mdcore11,977 bytesfeature-list.schema.jsonasset3,471 bytes
Read SKILL.md
# Feature State Keeper
You maintain the **machine-readable scope record** of this project. Three files form the state trio:
| File | Role |
|---|---|
| `feature_list.json` | Scope boundary + done criteria + evidence |
| `progress.md` | Append-only session history |
| `session-handoff.md` | Single-page "what's the state right now" |
## Altitude — feature ledger vs superpowers' execution records
When `superpowers` is also active, **two record systems coexist by altitude — keep them from drifting:**
View the complete source on GitHubinit-verification
When your agent uses it
Use at start of work, after env changes (deps/branch/OS), or when something stops working. Runs init.sh health check; treats failures as blocking.
What it loads into context
Frontmatter
41 tokensAlways available to the agent
SKILL.md
1,546 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to invoke
- Procedure
- What init.sh should check (project-specific)
- Calibrated reporting
- Anti-patterns
- When NOT to run
- Worktree setup (superpowers:using-git-worktrees)
- Looking up toolchain errors
- Related
Scripts executed separately
../../scripts/cpp-tool-discovery.sh
Files
../../scripts/cpp-tool-discovery.shruns7,411 bytesSKILL.mdcore6,456 bytesSKILL.mdcore6,456 bytesSKILL.mdcore6,456 bytesSKILL.mdcore6,456 bytesSKILL.mdcore6,456 bytesSKILL.mdcore6,456 bytesSKILL.mdcore6,456 bytes
Read SKILL.md
# Init Verification
Before writing any code, **prove the environment is healthy**. Anthropic's Nov 2025 harness guidance: *the initializer agent runs init.sh, then the coding agent picks up — health is verified BEFORE work begins*.
## When to invoke
- First action of every fresh session
- After `git checkout` to a different branch
- After dependency changes (package.json / Cargo.toml / etc. modified)
- After OS / toolchain updates
- When a previously-working command suddenly fails
- Before claiming a feature done (re-verify in case of drift)
## ProcedureView the complete source on GitHubproject-indexing
When your agent uses it
Use when locating files or understanding structure. Consults PROJECT-TOC.md (one-line index per file). Staleness via git commit anchor.
What it loads into context
Frontmatter
38 tokensAlways available to the agent
SKILL.md
1,003 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to use
- Reading flow
- When NOT to rely on TOC
- Rebuilding
- TOC format expectations
- Token economy
- Looking up indexing techniques
- Related
Scripts executed separately
../../scripts/index-builder.mjs
Files
../../scripts/index-builder.mjsruns9,319 bytesSKILL.mdcore4,048 bytesSKILL.mdcore4,048 bytes
Read SKILL.md
# Project Indexing
`PROJECT-TOC.md` is the project's **machine-friendly index** — one line per file, ≤80 chars summary. Reading it is dramatically cheaper than `Glob`-ing the whole tree.
## When to use
- "Where is X defined?"
- "Find the file that handles Y"
- Before any `Glob '**/*.ext'` against more than a small directory
- When starting work in an unfamiliar codebase
## Reading flow
1. **Check `PROJECT-TOC.md` exists.** If missing, the project is un-indexed. Suggest `/index-project` and fall back to Glob for the current question.View the complete source on GitHubself-correction-loop
When your agent uses it
Use when a hook/tool returns a warning, lint/type/build error, or test failure after your edit. Iterate evidence-first; stop when verification passes.
What it loads into context
Frontmatter
39 tokensAlways available to the agent
SKILL.md
1,608 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Trigger signals
- The Loop (RED → diagnose → minimal-fix → GREEN)
- Loop budget
- What "fixed" looks like
- Anti-patterns
- How this interacts with hooks
- When this skill is NOT applicable
- Triaging fresh-context sensor findings
- Related
Files
SKILL.mdcore6,936 bytes
Read SKILL.md
# Self-Correction Loop
When your edit produces a warning/error signal, you're in a **correction loop**. This skill is the discipline that keeps the loop productive instead of thrashing.
## Trigger signals
You should engage this loop when ANY of these happen after your edit:
- `PostToolUse` hook injected `clang-tidy warnings:` / `lint warnings:` / similar
- A `Bash` command you ran returned non-zero exit
- A test runner reports failures
- A type-checker reports errors
- The user says "that broke X" / "it's failing now"
View the complete source on GitHubtest-coverage-design
When your agent uses it
Use when deciding what to test, reviewing whether a feature is adequately covered before calling it done, or when tests pass but you're unsure they exercise the real risks. Derives coverage obligations from code + spec, finds gaps (including paths outside the test runner's scope), and designs a minimal, edge-case-first test set. Dispatches the coverage-analyst subagent. Generic (language-agnostic).
What it loads into context
Frontmatter
90 tokensAlways available to the agent
SKILL.md
1,307 tokensWhen the skill is activated
Reference documents
1,449 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Altitude — where this sits vs. superpowers TDD
- Two failure modes this prevents
- Method (gray-box, post-implementation)
- Reliability — because code AND tests are both LLM-generated
- Dispatch the coverage-analyst (fresh context)
- The gate
- Related
Files
SKILL.mdcore5,575 bytescoverage-reference.mddoc6,174 bytes
Read SKILL.md
# Test Coverage Design
A passing test suite proves only that *the tests you wrote* pass — not that they exercise what the
feature actually requires or where the code is actually risky. This skill is the **post-implementation**
discipline for closing that gap: derive what *must* be tested, check it against what the suite runs, and
design the smallest test set that covers it.
## Altitude — where this sits vs. superpowers TDD
| Phase | Owner | What |
|---|---|---|
| **Pre-implementation** (spec-driven, test-first) | superpowers `test-driven-development` | Red-green-refactor; write the failing test *before* the code. Deliberately **code-blind**. |
| **Post-implementation** (code-aware) | **this skill + `coverage-analyst`** | Read the actual code for risk; confirm the spec's obligations are met **and actually run**. |
View the complete source on GitHubusing-harness-anchor
When your agent uses it
Use whenever working in a project. Establishes state/scope/verification discipline. Auto-loaded at session start. Complements superpowers.
What it loads into context
Frontmatter
36 tokensAlways available to the agent
SKILL.md
1,374 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Priority Order
- Project Navigation (read these BEFORE acting)
- Sibling Skills (load when triggered)
- Hard Rules
- Commands — recommend them at the right moment
- When to NOT use this
Files
SKILL.mdcore5,609 bytesSKILL.mdcore5,609 bytes
Read SKILL.md
# Using harness-anchor
You have the **harness-anchor** runtime layer, companion to `superpowers` (process methodology): it anchors **state persistence, scope boundaries, verification gates, and C/C++ engineering**.
<!-- os-windows-start -->
**Windows session (Git-Bash):** plugin scripts already handle path and JSON-engine portability — do not hand-"fix" MSYS paths or shell out to PowerShell. C/C++ caveat: TSan/LSan are unavailable on this platform; read the `cpp-sanitizers` skill's Windows platform notes before trusting sanitizer coverage.
<!-- os-windows-end -->
## Priority Order
1. **User's explicit instructions** (CLAUDE.md, direct requests) — highest
2. **superpowers skills** (process)
3. **harness-anchor skills** (state/scope/verification/cpp)
4. Default system prompt — lowestView the complete source on GitHubSkills included
- anti-hallucination-gates
- capturing-golden-rules
- context-budget-discipline
- cpp-build-systems
- cpp-formatting
- cpp-sanitizers
- cpp-static-analysis
- docs-lookup
- feature-state-keeper
- init-verification
- project-indexing
- self-correction-loop
- test-coverage-design
- using-harness-anchor
Repository facts
- License
- MIT
- Created
- May 28, 2026
- Last pushed
- Jul 31, 2026
- Forks
- 0
- Open issues
- 0
- Project activity
- Slowing
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 6, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 53 notes
scripts/cpp-tool-discovery.sh:1Analysis incomplete: Referenced executable target unavailable; not analyzedscripts/cpp-tool-discovery.sh:1Analysis incomplete: Referenced executable target unavailable; not analyzedscripts/cpp-tool-discovery.sh:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/anti-hallucination-gates/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/anti-hallucination-gates/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedscripts/cpp-detect.sh:1Analysis incomplete: Referenced executable target unavailable; not analyzedscripts/cpp-detect.sh:1Analysis incomplete: Referenced executable target unavailable; not analyzedscripts/cpp-detect.sh:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-build-systems/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-build-systems/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-build-systems/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-build-systems/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-build-systems/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-build-systems/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-build-systems/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-build-systems/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-formatting/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-formatting/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-formatting/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/cpp-formatting/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- 2 dangerous shell commandsin 2 files: scripts/measure-context.sh:49 cpp-build-systems/compile-commands-guide.md:42
- 11 network referencesin 6 files: cpp-build-systems/SKILL.md:40 cpp-build-systems/cmake-reference.md:38 feature-state-keeper/feature-list.schema.json:1 and 3 more
- No hidden or obfuscated text
- No instruction overrides
- 19 executable scriptsin 7 files: scripts/cpp-tool-discovery.sh:1 scripts/cpp-detect.sh:1 scripts/feature-list-validate.mjs:1 and 4 more
- No access to secrets
- No requests to vote in Hot
Show all 32 signals by file
scripts/cpp-detect.sh
scripts/cpp-tool-discovery.sh
- Executable scriptline 1
#!/usr/bin/env bash - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
#!/usr/bin/env bash - Executable scriptline 1
#!/usr/bin/env bash - Executable scriptline 1
#!/usr/bin/env bash
scripts/feature-list-sort.mjs
- Executable scriptline 1
#!/usr/bin/env node
scripts/feature-list-validate.mjs
scripts/index-builder.mjs
- Executable scriptline 1
#!/usr/bin/env node
scripts/measure-context.sh
scripts/progress-prepend.mjs
skills/anti-hallucination-gates/SKILL.md
- Network accessline 77
Adapted from [Anthropic's Code with Claude 2026 reference impl](https://github.com/anthropics/cwc-long-running-agents):
skills/context-budget-discipline/SKILL.md
- Network accessline 40
When context usage > 70% of model window, mid-session compaction can help. But per [Anthropic Nov 2025](https://www.anthropic.com/engineering/effective-harnesses-for-long-running-agents):
skills/cpp-build-systems/SKILL.md
- Network accessline 40
Pure Makefile projects don't generate compile_commands.json natively. Use [`bear`](https://github.com/rizsotto/Bear): - Network accessline 46
Or [`compiledb`](https://github.com/nickdiego/compiledb): - Network accessline 59
Bazel requires the [`hedron_compile_commands`](https://github.com/hedronvision/bazel-compile-commands-extractor) rule. If not configured, suggest the user add it; do NOT try to hand-edit BUILD files.
skills/cpp-build-systems/cmake-reference.md
- Network accessline 38
include(FetchContent) FetchContent_Declare(googletest URL https://github.com/google/googletest/archive/v1.14.0.tar.gz) - Network accessline 39
FetchContent_Declare(googletest URL https://github.com/google/googletest/archive/v1.14.0.tar.gz) FetchContent_MakeAvailable(googletest) - Network accessline 40
URL https://github.com/google/googletest/archive/v1.14.0.tar.gz)
skills/cpp-build-systems/compile-commands-guide.md
- Dangerous shell operationline 42
The file points to `.build/CMakeFiles/...` for object files. If you `rm -rf .build` but keep compile_commands.json, the directory references are stale but the *compile flags* are still valid for static analysis tools. So static analysis oft
skills/cpp-static-analysis/SKILL.md
- Network accessline 61
For changed lines only (large existing codebases), use [`clang-tidy-diff.py`](https://github.com/llvm/llvm-project/blob/main/clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py):
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Signal confidence: 30 facts
- Executable script in code of a file that runsscripts/cpp-detect.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-detect.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-detect.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-detect.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-tool-discovery.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-tool-discovery.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-tool-discovery.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-tool-discovery.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-tool-discovery.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-tool-discovery.sh:1High confidence
- Executable script in code of a file that runsscripts/cpp-tool-discovery.sh:1High confidence
- Executable script in code of a file that runsscripts/feature-list-sort.mjs:1High confidence
- Executable script in code of a file that runsscripts/feature-list-validate.mjs:1High confidence
- Executable script in code of a file that runsscripts/feature-list-validate.mjs:1High confidence
- Executable script in code of a file that runsscripts/feature-list-validate.mjs:1High confidence
- Executable script in code of a file that runsscripts/index-builder.mjs:1High confidence
- Executable script in code of a file that runsscripts/measure-context.sh:1High confidence
- Dangerous shell operation in code of a file that runsscripts/measure-context.sh:49High confidence
- Executable script in code of a file that runsscripts/progress-prepend.mjs:1High confidence
- Executable script in code of a file that runsscripts/progress-prepend.mjs:1High confidence
- Network access in prose of the SKILL.mdanti-hallucination-gates/SKILL.md:77Low confidence
- Network access in prose of the SKILL.mdcontext-budget-discipline/SKILL.md:40Low confidence
- Network access in prose of the SKILL.mdcpp-build-systems/SKILL.md:40Low confidence
- Network access in prose of the SKILL.mdcpp-build-systems/SKILL.md:46Low confidence
- Network access in prose of the SKILL.mdcpp-build-systems/SKILL.md:59Low confidence
- Network access in code of documentationcpp-build-systems/cmake-reference.md:38Low confidence
- Network access in code of documentationcpp-build-systems/cmake-reference.md:39Low confidence
- Network access in code of documentationcpp-build-systems/cmake-reference.md:40Low confidence
- Dangerous shell operation in prose of documentationcpp-build-systems/compile-commands-guide.md:42Low confidence
- Network access in prose of the SKILL.mdcpp-static-analysis/SKILL.md:61Low confidence
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Native | Manifest tests/e2e-cpp-fixture/AGENTS.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/anti-hallucination-gates/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/anti-hallucination-gates/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/anti-hallucination-gates/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/anti-hallucination-gates/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.