
Pathfinder
FreeStreamline codebase architecture with flowcharts and duplication reports.
Free · Opens the source repo
What Pathfinder does
Pathfinder is a specialized tool designed to analyze and reorganize your codebase into clear, feature-grouped flowcharts. It helps developers and architects identify duplicated concerns across different features and proposes a unified architecture for easier maintenance and scalability. By providing a structured approach to understanding complex systems, Pathfinder allows teams to visualize their codebase, making it easier to spot redundancies and inefficiencies.
The skill operates through a systematic orchestration model, where it utilizes subagents for discovery and extraction tasks while maintaining synthesis at the orchestrator level. This means that the tool can effectively read through your codebase, trace data flows, and generate detailed reports and diagrams based on concrete evidence from the source code. Each phase of the process is meticulously designed to ensure that all findings are backed by specific file paths and line numbers, promoting a data-driven approach to architectural decisions.
Pathfinder is particularly beneficial for teams preparing for a significant refactor or those looking to consolidate their codebase. It provides outputs such as feature inventories, flowcharts for each feature, duplication reports that highlight cross-cutting concerns, and a proposed unified architecture. Additionally, it generates handoff prompts that can be directly used to implement the proposed changes, ensuring a smooth transition from analysis to action.
This skill is ideal for developers, software architects, and teams involved in large-scale projects where clarity and efficiency are paramount. By using Pathfinder, you can streamline your codebase and enhance collaboration among team members, ultimately leading to a more maintainable and scalable system.
When to use it
Use Pathfinder when you need to audit your architecture, find ideal paths for unification, or prepare for a refactor.
When not to use it
This skill is not suitable for small projects or when immediate implementation of code is required, as it focuses on analysis rather than direct coding.
What you can build with it
Preparing for a Major Refactor
Before embarking on a significant refactor, use Pathfinder to map out the existing architecture and identify areas of duplication.
Auditing Code for Clarity
Utilize Pathfinder to audit your codebase, ensuring that feature boundaries are clear and that duplicated concerns are addressed.
Streamlining Team Collaboration
Employ Pathfinder to create visual representations of the codebase, facilitating better communication and understanding among team members.
How to install Pathfinder
View source1. Install with the skills CLI
npx skills add thedotmack/claude-mem/pathfinder --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by thedotmackPathfinder
You are an ORCHESTRATOR. Map the codebase into feature-grouped flowcharts, identify duplicated concerns, propose the simplest unified architecture, and hand off per-system plans to /make-plan.
You do not write implementation code. You produce diagrams, a duplication report, a proposed unified flowchart, and handoff prompts.
Delegation Model
Use subagents for discovery and extraction (file reading, flow tracing, grep, diagramming). Keep synthesis (deciding feature boundaries, picking unification strategies, final flowchart) with the orchestrator. Reject subagent reports that lack source citations and redeploy.
Subagent Reporting Contract (MANDATORY)
Each subagent response must include:
- Sources consulted — exact file paths and line ranges read
- Concrete findings — exact function names, call sites, data flow
- Mermaid diagram(s) with nodes labeled by
file:line - Confidence note + known gaps
Output Artifacts
All artifacts go in PATHFINDER-<YYYY-MM-DD>/ at repo root:
00-features.md— feature inventory with boundaries01-flowcharts/<feature>.md— one Mermaid flowchart per feature02-duplication-report.md— cross-cutting duplicated concerns with evidence03-unified-proposal.md— proposed unified architecture + Mermaid04-handoff-prompts.md— copy-pasteable/make-planprompts per unified system
Phases
Phase 0: Feature Discovery (ALWAYS FIRST)
Deploy ONE "Feature Discovery" subagent to:
- Walk the source tree (not built artifacts) and read top-level README / CLAUDE.md
- Propose feature boundaries based on directory structure, import graph, and naming
- Return a flat list of features with: name, entry points (file:line), core files, brief purpose
Orchestrator reviews the proposal, adjusts boundaries if needed, writes 00-features.md. Do NOT fan out until feature boundaries are approved.
Phase 1: Per-Feature Flowcharts (FAN OUT)
Deploy ONE "Flowchart" subagent per feature in parallel. Each receives only its feature's scope. Each must:
- Trace the feature's primary happy path from entry point to terminal state
- Identify side effects (DB writes, HTTP calls, file I/O, process spawns)
- Note error and fallback branches but do not let them dominate the diagram
- Produce a Mermaid
flowchart TDwith every node labeledName<br/>file:line - List external dependencies (other features it calls into) at the bottom
Orchestrator writes each flowchart to 01-flowcharts/<feature>.md. Reject any diagram missing file:line labels.
Phase 2: Duplication Hunt
Deploy TWO subagents in parallel:
"Within-Feature Duplication" subagent:
- For each feature, find repeated code/logic patterns inside the feature only
- Report only duplications worth consolidating (ignore trivial repetition)
"Cross-Feature Duplication" subagent:
- Compare flowcharts across features for concerns that appear in multiple places
- Examples of what to look for: multiple capture paths, parallel queue implementations, duplicated storage/migration code, repeated agent scaffolding, parallel parsing layers
- For each duplication, report: (a) the concern, (b) every location with
file:line, (c) why they diverged, (d) whether the divergence is legitimate specialization or accidental
Orchestrator synthesizes both into 02-duplication-report.md. Every duplication claim must cite ≥2 file:line locations.
Phase 3: Unified Proposal (ORCHESTRATOR)
The orchestrator writes 03-unified-proposal.md itself — do not delegate synthesis.
For each duplicated concern from Phase 2 that is NOT legitimate specialization:
- Propose the simplest unified design (one path, one store, one handler — whatever applies)
- Name the consolidated component and its single entry point
- Show what each old call site becomes
- Call out any loss of capability and whether it's acceptable
End the document with ONE combined Mermaid flowchart showing the proposed unified system. Nodes still labeled with target file:line (new or existing) where knowable.
Anti-patterns to reject in your own proposal:
- Adding a new abstraction layer "for flexibility"
- Keeping both old paths behind a feature flag
- Introducing a registry/factory when a switch statement suffices
- Preserving divergent behavior "just in case"
Phase 4: Per-System Handoff Prompts
For each unified system in the proposal, write a ready-to-run /make-plan prompt to 04-handoff-prompts.md. Each prompt must:
- State the target unified component and its single entry point
- List the exact call sites to rewrite (from Phase 2 evidence)
- Cite the relevant flowchart file from
01-flowcharts/ - Include anti-pattern guards specific to this system
Format each as a fenced code block the user can copy directly into /make-plan.
Key Principles
- Evidence over intuition — every diagram node and duplication claim cites
file:line - Current state before ideal state — Phases 0–2 describe what IS; Phase 3 describes what SHOULD BE
- Simplest unification wins — prefer deletion over abstraction; prefer one path over configurable paths
- Specialization is not duplication — two components serving different trust models or data sources are legitimate even if their code looks similar
- Handoff, don't implement — Pathfinder ends at plan prompts;
/make-planand/dotake it from there
Failure Modes to Prevent
- Drawing flowcharts from memory instead of source — redeploy subagent with grep evidence requirement
- Proposing unification of legitimately specialized components — re-examine trust/data-source divergence
- Handoff prompts that lack concrete call sites — rewrite with Phase 2 evidence
- Skipping Phase 0 boundary review — fanning out on bad feature boundaries wastes all of Phase 1
Frequently asked questions about Pathfinder
Similar skills
React Composition Patterns
Streamline your React component architecture with proven patterns.
Pester Should Migration
Easily convert Pester v5 assertions to v6 syntax.
Radix to Base UI Migration
Seamlessly migrate React components from Radix UI to Base UI.
Migrate Next.js to Vinext
Seamlessly transition your Next.js projects to Vinext.
WinUI 3 Migration Guide
Streamline your UWP to WinUI 3 migration process.
Refactor
Enhance code maintainability without altering behavior.
