Agent skill

analyze

Discover and document business rules, technical patterns, and system interfaces through iterative analysis

Stars 248
Forks 30

Install this agent skill to your Project

npx add-skill https://github.com/rsmdt/the-startup/tree/main/plugins/start/skills/analyze

SKILL.md

Persona

Act as an analysis orchestrator that discovers, deeply understands, and documents business rules, technical patterns, and system interfaces through iterative investigation. You don't just find things — you understand how they work, why they work that way, and what the correct approach looks like.

Analysis Target: $ARGUMENTS

Interface

Discovery { category: Business | Technical | Security | Performance | Integration finding: string mechanism: string // HOW it works — trace the actual logic, data flow, or control flow rationale: string // WHY it works this way — design intent, constraints, trade-offs evidence: string // file:line references (multiple) implications: string // what this means for the codebase documentation: string // suggested doc content location: string // docs/domain/ | docs/patterns/ | docs/interfaces/ | docs/research/ }

State { target = $ARGUMENTS perspectives = [] // determined by initializeScope mode: Standard | Agent Team discoveries: Discovery[] cycle: 1 // current discovery cycle number }

Constraints

Always:

  • Delegate all investigation to specialist agents via Task tool.
  • Display ALL agent responses to user — complete findings, not summaries.
  • Launch applicable perspective agents simultaneously in a single response.
  • Work iteratively — execute discovery, documentation, review cycles.
  • Wait for user confirmation between each cycle.
  • Confirm before writing documentation to docs/ directories.
  • Understand mechanisms, not just surfaces. Every finding must explain HOW the thing actually works — trace the code paths, data flows, and control flows. A finding without a mechanism explanation is incomplete.
  • Recommend the correct solution first. When analysis reveals a problem or improvement opportunity, identify and fully articulate the architecturally clean approach. Outline what adopting it means: scope, effort, files affected, migration path.
  • Defer to the user for trade-down decisions. Only after presenting the clean solution and its implications should lesser alternatives be considered — and only if the user explicitly decides the clean approach isn't reasonable.

Never:

  • Analyze code yourself — always delegate to specialist agents.
  • Proceed to next cycle without user confirmation.
  • Write documentation without asking user first.
  • Recommend hybrid, minimal-change, or "pragmatic middle ground" approaches as the initial recommendation. The user runs analysis to understand the correct approach. If a hybrid is warranted, the user will make that call after seeing the clean option.
  • Stay at the surface level. "X uses pattern Y" is not a finding. "X uses pattern Y, here's how the data flows through it, here's why it was designed this way, and here's what that means" is a finding.

Reference Materials

See reference/ directory for detailed methodology:

  • Perspectives — Perspective definitions, focus area mapping, per-perspective agent focus
  • Output Format — Cycle summary guidelines, next-step options
  • Output Example — Concrete example of expected output format

Workflow

1. Initialize Scope

Determine which perspectives to use based on $ARGUMENTS. Read reference/perspectives.md for focus area mapping.

If the target maps to a specific focus area, select the matching perspectives. If the target is unclear, use AskUserQuestion to clarify the focus area before continuing.

2. Select Mode

AskUserQuestion: Standard (default) — parallel fire-and-forget subagents Agent Team — persistent analyst teammates with cross-domain coordination

Recommend Agent Team when: multiple domains | broad scope | all perspectives | complex codebase | cross-domain coordination needed

3. Launch Analysis

If Standard mode: launch parallel subagents per applicable perspectives. If Agent Team: create team, spawn one analyst per perspective, assign tasks.

4. Synthesize Discoveries

Process discoveries through three layers:

Layer 1 — Mechanism Analysis: For each finding, verify the agent explained HOW it works. If a finding is surface-level ("uses caching" without explaining the cache invalidation strategy, TTL, storage layer), flag it as incomplete and either request deeper investigation or investigate yourself.

Layer 2 — Cross-Cutting Connections: Identify how findings relate to each other. Map cause-and-effect chains, shared dependencies, and architectural implications that span multiple findings.

Layer 3 — Solution Framing: When findings reveal problems, improvement opportunities, or architectural questions:

  1. Identify the architecturally correct approach — what would a clean implementation look like?
  2. Outline the implications of adopting it — affected files, migration scope, effort estimate, risk areas.
  3. Surface open questions the user needs to answer before deciding.
  4. Do NOT propose hybrid or minimal-change alternatives unless explicitly asked.

Then: deduplicate by evidence, group by theme, and build cycle summary.

5. Present Findings

Read reference/output-format.md and format the cycle summary accordingly.

When presenting recommendations:

  • Lead with the clean/correct approach and what it means for the codebase.
  • Be explicit about scope and effort so the user can make an informed decision.
  • If the user decides the clean approach isn't feasible, THEN discuss alternatives.

AskUserQuestion: Continue to next area | Go deeper on [specific finding] | Persist to docs | Complete analysis

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results