skills/investigate/SKILL.md
Use for open-ended exploration and investigation of unfamiliar codebases, systems, or problems. Complements systematic-debugging (which is for known errors). Use investigate when: "how does X work", "understand this codebase", "map this system". Triggers: "investigate", "explore", "understand how", "map the codebase".
npx skillsauth add Wilder1222/superomni investigateInstall 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.
Status protocol — end every session with one of: DONE (evidence provided) · DONE_WITH_CONCERNS (list each) · BLOCKED (state what blocks you) · NEEDS_CONTEXT (state what you need).
Auto-advance — pipeline: THINK → PLAN → REVIEW → BUILD → VERIFY → RELEASE. Only human gate is spec approval at THINK. On DONE at other stages, print [STAGE] DONE -> advancing to [NEXT-STAGE] and invoke the next skill. On any non-DONE status at any stage, STOP.
Output directory — all artifacts go in docs/superomni/<kind>/<kind>-[branch]-[session]-[date].md. See CLAUDE.md for the full directory map.
TACIT-DENSE — before high-tacit decisions, classify D1 (domain expertise) · D2 (user-facing UX) · D3 (team culture) · D4 (novel pattern). On hit, output TACIT-DENSE [D#]: [question] — My default: [recommendation]. See reference for actions.
Anti-sycophancy — take a position on every significant question. Name flaws directly. No filler ("that's interesting", "you might consider", "that could work").
Telemetry (local only) — at session end, log bin/analytics-log. Nothing leaves the machine.
See preamble-ref.md for detailed protocols.
Goal: Build a shared, accurate mental model of an unfamiliar system, codebase, or problem space.
Distinction from systematic-debugging:
investigate → you don't have a specific error; you're building understandingsystematic-debugging → you have a specific error and need to find root causeStart by understanding the big picture before any details.
# Project structure overview
find . -type f -name "*.md" | head -20 # documentation
ls -la # top-level files
cat README.md 2>/dev/null | head -50 # quick overview
cat package.json 2>/dev/null # or Makefile, go.mod, etc.
# Technology stack
ls -la *.json *.yaml *.toml *.rb *.py *.go 2>/dev/null | head -20
# Size estimate
find . -type f | grep -v ".git\|node_modules\|dist\|build" | wc -l
Output: "System overview: ..." — 3-5 sentence description of what this system is.
Find where the system starts and where users/callers interact with it:
# Find main entry points
grep -rn "main()\|app.listen\|server.listen\|createApp\|bootstrap" . \
--include="*.js" --include="*.ts" --include="*.py" --include="*.go" \
-l | head -10
# Find API routes
grep -rn "router\.\|app\.get\|app\.post\|@route\|@app\.route" . \
--include="*.js" --include="*.ts" --include="*.py" -l | head -10
# Find CLI commands
grep -rn "commander\|yargs\|argparse\|click\|cobra" . \
--include="*.js" --include="*.ts" --include="*.py" --include="*.go" \
-l | head -10
Pick ONE representative flow (the most common user action) and trace it end to end:
# Trace a specific function through the codebase
FUNCTION_NAME="handleRequest"
grep -rn "${FUNCTION_NAME}" . --include="*.js" --include="*.ts" -A 3 | head -30
Map the key components and their responsibilities:
SYSTEM MAP
════════════════════════════════════════
Entry points: [list]
Core modules: [list with 1-line descriptions]
Data stores: [DBs, caches, files]
External deps: [APIs, services, libraries]
Test coverage: [rough %]
════════════════════════════════════════
# Most-changed files (hotspots)
git log --oneline | wc -l # commit count
git log --pretty=format: --name-only | sort | uniq -c | sort -rn | head -20
# Largest files (complexity hotspots)
find . -name "*.js" -o -name "*.ts" -o -name "*.py" | \
xargs wc -l 2>/dev/null | sort -rn | head -10
# Files with most TODOs
grep -rn "TODO\|FIXME\|HACK\|XXX" . \
--include="*.js" --include="*.ts" --include="*.py" | wc -l
Write a brief investigation summary:
INVESTIGATION REPORT
════════════════════════════════════════
Subject: [what was investigated]
Time spent: [~N minutes]
Overview:
[3-5 sentences describing the system]
Key findings:
- [finding 1]
- [finding 2]
- [finding 3]
Hotspots/risks:
- [file/area]: [why it's risky]
Unknown/unclear:
- [thing that wasn't resolved]
Recommended next steps:
1. [action based on findings]
2. [action based on findings]
Status: DONE | NEEDS_CONTEXT
════════════════════════════════════════
# Count lines of code by file type
find . -name "*.js" | xargs wc -l | tail -1 # JavaScript
find . -name "*.py" | xargs wc -l | tail -1 # Python
# Find all configuration files
find . -name "*.env*" -o -name "*.config.*" -o -name "*.yaml" -o -name "*.toml" | \
grep -v "node_modules\|.git" | head -20
# Find database schema
find . -name "*.sql" -o -name "schema.*" -o -name "*migration*" | \
grep -v "node_modules\|.git" | head -10
# Understand test coverage
find . -name "*.test.*" -o -name "*.spec.*" -o -name "test_*.py" | \
grep -v "node_modules" | wc -l
development
Systematic, behavior-preserving code refactoring with safety gates. Dispatches refactoring-agent. Triggers: "refactor", "clean up code", "reduce tech debt", "extract method", "rename". NOT for reactive PR feedback — use code-review for that.
development
Meta-skill: create, install, list, and manage skills and agents within the superomni framework. Merges writing-skills + agent-management into one unified workflow. Triggers: "create skill", "write a skill", "install skill", "list skills", "create agent", "write an agent", "install agent", "list agents", "new skill", "new agent", "add skill", "add agent", "manage framework".
testing
Dependency security, license, and freshness audit. Dispatches dependency-auditor agent to scan all package managers. Triggers: "dependency audit", "check dependencies", "npm audit", "security scan", "check for vulnerabilities", "outdated packages", "license check".
development
Meta-skill: use when creating a new skill for the superomni framework. Guides through the process of designing and writing a well-structured skill. Triggers: "create a new skill", "write a skill for", "add a skill that".