skills/probe/SKILL.md
Extract repository spec while detecting bugs, spec gaps, and consistency drift via dual-purpose documentation. OUTCOME.md-axis question-driven exploration with ephemeral output. Do NOT use for code review (use /audit or /polish), feature implementation (use /code), planning only (use /think), or single-bug fix (use /fix).
npx skillsauth add thkt/claude-config probeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Trace the repository aspect-by-aspect and surface friction points as issue candidates. The act of "trying to explain" exposes contradictions and gaps. Final output is Issues, no severity rating. Single-file output: findings.md.
No arguments. Target is the entire repository at current working directory. Scope auto-derived from .claude/OUTCOME.md.
| Input | Required | Source |
| ---------- | -------- | ------------------------------------------------------------------------------ |
| OUTCOME.md | Yes | .claude/OUTCOME.md (generate via rules/core/OUTCOME.md workflow if absent) |
| ADR | Optional | docs/decisions/ |
| Spec | Optional | .claude/workspace/planning/*/spec.md etc. |
File: /tmp/probe-{repo}-{YYYYMMDD}/findings.md (ephemeral)
Template: ${CLAUDE_SKILL_DIR}/templates/findings.md
Add each item under Behavior / Non-goals / Constraints in .claude/OUTCOME.md to the aspect list. If ADR exists, enumerate headings with status.
Sequential per aspect:
After each aspect pass, detect via grep.
| Target | Example | | ------------------- | ------------------------------------------------------------- | | Terminology drift | ADR/README term vs implementation symbol vs test assertion | | Concept overlap | Same name carrying different meaning across fields | | Logging hygiene | Redact wrapper vs raw value in log statements | | ADR Call Site Index | Function names listed in ADR still exist / line numbers drift |
Ask one question only when stuck. Mark as "unresolved" and proceed if no answer. Durably record in findings.md Open Questions.
Record skill behavior at the end of findings.md (question count, friction patterns, Positive issue presence, aspect pass breakage).
| Category | What | | ------------------ | ------------------------------------------------------------------- | | Bug candidate | Implementation flaw leading to misbehavior | | Spec gap | Expected by OUTCOME / Spec but not reflected in implementation | | Non-goals leakage | Implementation crossing OUTCOME.md Non-goals | | Constraints breach | OUTCOME.md Constraints not honored | | Inconsistency | Pattern divergence among same-responsibility code | | ADR drift | ADR Call Site Index / function names / numbers diverge from current | | Implicit knowledge | Exists in code but undocumented | | Positive | Dynamic verification that OUTCOME / ADR / implementation align |
tools
Internal helper for /think Step 11. Renders SOW.md + Spec.md as an integrated Astro view and returns a dev server URL.
development
Discover undocumented design decisions and challenge each candidate via critic-design before promotion. Rank by impact and reversibility, produce ADR promotion candidates. Treat each candidate as a position arguing for ADR status, not a fact to be filed. Pairs with audit-adr-drift, which scans existing ADRs for drift against code.
development
Scan ADR Decision sections against current code and report drift with modification direction and priority. Do NOT use for repos without ADRs (use audit-adr-gaps instead).
data-ai
Surface the current session's tentative reflection (realization / judgment / counterfactual) and optionally promote it to the durable knowledge store. Escape hatch for when Stop hook reflection extraction failed.