/context-check
Optional manual drift audit — report stale provenance-tracked docs (via _provenancelib drift detection across .codearbiter/.provenance/), then per stale doc offer re-scout / re-baseline / defer. Not the daily loop; commit-gate auto-heal owns routine maintenance.
$ npx -y skills add arbiterForge/codeArbiter --skill context-check --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/context-check
Context preview
The summary Claude sees to decide when to auto-load this skill.
Optional manual drift audit — report stale provenance-tracked docs (via _provenancelib drift detection across .codearbiter/.provenance/), then per stale doc offer re-scout / re-baseline / defer. Not the daily loop; commit-gate auto-heal owns routine maintenance.
SKILL.md
context-check.SKILL.mdname: context-check
description: Optional manual drift audit — report stale provenance-tracked docs (via _provenancelib drift detection across .codearbiter/.provenance/), then per stale doc offer re-scout / re-baseline / defer. Not the daily loop; commit-gate auto-heal owns routine maintenance.
context-check
An optional, on-demand drift audit for bypass cases: a merge or an external edit drifted a tracked source file you are not about to commit, so commit-gate's Phase 5.5 auto-heal did not fire. This skill reports stale docs and lets you act on each one individually.
This skill is NOT in the daily loop. Commit-gate auto-heal (Phase 5.5, `heal_worklist`) owns the routine maintenance path. Invoke this only when drift was introduced outside a commit (e.g. a direct push, a merge you did not author, a manual file edit).
Pre-flight
Read these before computing drift:
1. `.codearbiter/.provenance/` — the per-doc provenance records. Load all records via `load_provenance_dir` from `{{PLUGIN_ROOT}}/hooks/_provenancelib.py`. 2. `.codearbiter/code-map.md` — coarse concern map; read to orient on which modules the stale docs govern.
Flow
Step 1 — Compute drift
Use `_provenancelib` helpers in this order:
1. `load_provenance_dir(root + "/.codearbiter/.provenance/")` — returns the provenance map `{doc: record}`. 2. Collect all `drift_trigger: true` paths across all records. 3. `batch_hash(paths, runner)` — hash every existing path in one git call. 4. `compute_drift(provenance_map, current_hashes)` — returns a drift report `{doc: [{path, kind}]}` for docs that have stale sources.
Alternatively reuse the same logic as `startup_drift_line` by calling it for a human-readable summary, then inspecting `compute_drift` directly for detail.
If the drift report is empty: report "no stale docs — provenance is fresh" and exit. No further action required.
Step 2 — Report stale docs
For each doc in the drift report, call `changed_scope(doc_provenance, drift)` to list its drifted paths. Present a concise report before offering actions:
Stale docs (N):
<doc>: <path1>, <path2> (changed | missing)
...
Step 3 — Per-doc action loop
For each stale doc, present three choices and wait for the user to select one:
**re-scout** — dispatch an incremental re-scout of the drifted paths for this doc, scoped to those paths only (like commit-gate Phase 5.5 heal but manually invoked). The scout re-reads the changed paths and reports whether claims still hold. If claims still hold: silently re-baseline the hashes via `rebaseline`. If claims changed: surface the proposed doc edits for the user to accept before re-baselining.
**re-baseline** — acknowledge the drift without re-scouting: call `rebaseline(provenance, current_hashes)` to update the stored hashes silently. Use this when the source change is cosmetic (formatting, comments, whitespace) and the derived doc claims are still accurate.
**defer** — do nothing for this doc now. The drift line will reappear at the next SessionStart. Use when the change is in-progress and the doc update should wait for a later commit.
After processing all stale docs, summarize which docs were re-scouted, re-baselined, or deferred.
Hard rule
This skill MUST NOT commit. If re-scout or re-baseline produces updated `.codearbiter/.provenance/` records, those file changes ride the next user-initiated commit through commit-gate normally. No staging, no commits here.
Read more
name: context-check description: Optional manual drift audit — report stale provenance-tracked docs (via _provenancelib drift detection across .codearbiter/.provenance/), then per stale doc offer re-scout / re-baseline / defer. Not the daily loop; commit-gate auto-heal owns routine maintenance.
context-check
An optional, on-demand drift audit for bypass cases: a merge or an external edit drifted a tracked source file you are not about to commit, so commit-gate's Phase 5.5 auto-heal did not fire. This skill reports stale docs and lets you act on each one individually.
This skill is NOT in the daily loop. Commit-gate auto-heal (Phase 5.5, `heal_worklist`) owns the routine maintenance path. Invoke this only when drift was introduced outside a commit (e.g. a direct push, a merge you did not author, a manual file edit).
Pre-flight
Read these before computing drift:
1. `.codearbiter/.provenance/` — the per-doc provenance records. Load all records via `load_provenance_dir` from `{{PLUGIN_ROOT}}/hooks/_provenancelib.py`. 2. `.codearbiter/code-map.md` — coarse concern map; read to orient on which modules the stale docs govern.
Flow
Step 1 — Compute drift
Use `_provenancelib` helpers in this order:
1. `load_provenance_dir(root + "/.codearbiter/.provenance/")` — returns the provenance map `{doc: record}`. 2. Collect all `drift_trigger: true` paths across all records. 3. `batch_hash(paths, runner)` — hash every existing path in one git call. 4. `compute_drift(provenance_map, current_hashes)` — returns a drift report `{doc: [{path, kind}]}` for docs that have stale sources.
Alternatively reuse the same logic as `startup_drift_line` by calling it for a human-readable summary, then inspecting `compute_drift` directly for detail.
If the drift report is empty: report "no stale docs — provenance is fresh" and exit. No further action required.
Step 2 — Report stale docs
For each doc in the drift report, call `changed_scope(doc_provenance, drift)` to list its drifted paths. Present a concise report before offering actions:
Stale docs (N): <doc>: <path1>, <path2> (changed | missing) ...
Step 3 — Per-doc action loop
For each stale doc, present three choices and wait for the user to select one:
**re-scout** — dispatch an incremental re-scout of the drifted paths for this doc, scoped to those paths only (like commit-gate Phase 5.5 heal but manually invoked). The scout re-reads the changed paths and reports whether claims still hold. If claims still hold: silently re-baseline the hashes via `rebaseline`. If claims changed: surface the proposed doc edits for the user to accept before re-baselining.
**re-baseline** — acknowledge the drift without re-scouting: call `rebaseline(provenance, current_hashes)` to update the stored hashes silently. Use this when the source change is cosmetic (formatting, comments, whitespace) and the derived doc claims are still accurate.
**defer** — do nothing for this doc now. The drift line will reappear at the next SessionStart. Use when the change is in-progress and the doc update should wait for a later commit.
After processing all stale docs, summarize which docs were re-scouted, re-baselined, or deferred.
Hard rule
This skill MUST NOT commit. If re-scout or re-baseline produces updated `.codearbiter/.provenance/` records, those file changes ride the next user-initiated commit through commit-gate normally. No staging, no commits here.
When you can't trust yourself with your code base, trust Arbiter.
Repo: arbiterForge/codeArbiter
Other skills on codearbiter.
- /brainstorming
The Socratic spec-refinement front of /feature, and the planning front of /sprint. Routed to BEFORE any code — it takes a one-line idea and drives it to an approved, concrete spec with testable acceptance criteria. Four gated phases — frame, refine, write, approve. No
Open skill - /commit-gate
The only path to a commit. Routed to when the user invokes /commit or otherwise instructs codeArbiter to persist staged changes. Nine gated phases — permission, branch, classification, verification (test/lint/secrets), behavioral proof, diff review, selective stage, message,
Open skill - /context-creation
The brownfield back-fill. Routed to by /create-context, and by startup when .codearbiter/CONTEXT.md lacks the <!--INITIALIZED--> body marker but source code exists. Six gated phases — pre-flight, scout dispatch, synthesis, gap interview, write, lock. Reads the existing codebase
Open skill - /crypto-compliance
The banned-primitive gate. Routed to when changed code hashes, signs, encrypts, derives keys, generates security-relevant randomness, configures TLS, or imports a crypto library. Rejects broken primitives, disabled TLS verification, and home-rolled crypto; the approved-primitive
Open skill - /debug
Investigate-then-decide root-cause analysis for a defect whose cause is unknown (distinct from /fix, which assumes a known bug). Five gated phases: capture, hypothesize, gather, decide, hand off. Investigation only, no code changes; exits to /fix, /adr, or a no-action close.
Open skill - /decision-lifecycle
Author and track Architecture Decision Records. Routed to when the user invokes /adr to record a new decision or /adr-status to list ADR health. Authors numbered, dated, user-attributed ADRs under .codearbiter/decisions/, maintains supersede chains, and reports status read-only.
Open skill

