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/dotclaude 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 /outcome 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 |
documentation
Generates and updates .claude/OUTCOME.md interactively. When the file is absent or empty (no Behavior / all sections TBD), collects content via AskUserQuestion and writes the stub; when present, shows the current state and applies updates.
development
Judge a SKILL.md against craft axes (single responsibility, description distinctiveness, imperative voice, verifiable completion, calibration, progressive disclosure) and apply the fixes the audit surfaces. Do not use for format-presence-only checks (use reviewer-prompt) or reproducibility loops (use /tuning).
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.