Codebase audit and roadmap
Skill S3YED/appie-kit/skills/design/codebase-audit-and-roadmap
Build Your Own AI Employee. The complete starter kit for OpenClaw + Hermes Agent. 155 deduplicated skills, drag-and-drop workspace, case studies, install scripts.
npx -y skills add S3YED/appie-kit --skill codebase-audit-and-roadmapAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Audit a codebase from a user reference and produce a structured feature inventory, gap analysis, and build-plan PRD.
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
5.7 KB, as published. Nobody here has run it
Codebase Audit & Roadmap
When a user names a project and asks "what's in it" / "what's next" / "make a PRD" / "audit this" — this skill covers the full discovery-to-plan workflow.
When to Use
- User says "check this repo" or "audit this project"
- User names a project and asks for a feature summary or to "make a PRD"
- User asks for a gap analysis before a launch/rebuild
- User references a project you haven't encountered before and needs structured analysis
Workflow
Phase 1 — Locate the Project
- Ask / clarify what they mean — get a name, repo URL, or GitHub handle
- Search locally:
find ~ -maxdepth 4 -name ".git" -type d - Search GitHub: use web_search with
site:github.com <handle>patterns. Try known handles (S3YED, weblyfe, etc.) - Try multi-case variations — the exact case matters on GitHub. If user says "wai", search
S3YED/wai,s3yed/WAI, etc. - Clone private repos via SSH if SSH key is configured (
ssh -T [email protected]to verify) - Fallback: ask for the exact URL if web search fails
Phase 2 — Codebase Analysis (Systematic)
Read in this order, top to bottom:
- README.md — overall purpose, features, stack, setup
- AGENTS.md / CLAUDE.md / SKILL.md — project-specific instructions for agents
- package.json — dependencies, build scripts, test commands (run
npm ls 2>/dev/null | head) - Git log —
git log --oneline -10 --all— recent activity, branch structure - Project structure —
find src -maxdepth 2 -type d | sort, or list top-level files - Key feature files — read every component/API/hook file systematically:
api/*.ts— serverless endpoints (feature surface)components/*.tsx— UI screens (feature surface)utils/*.ts— shared logichooks/*.ts— custom hooksmigrations/*.sql— DB schema
- Types/interfaces — the data model tells you the domain
- Tests —
npm testorvitest run— test coverage is a health signal - Docs/ directory — PRDs, architecture docs, integration guides
- Existing PRDs (
docs/*PRD*.md,docs/*PLAN*.md) — read first to compare intent vs reality
Phase 3 — Deployment Audit (SaaS projects)
For Vercel-deployed apps:
cd <project> && vercel link --yesto link the local clone to Vercel- Read
.vercel/project.jsonfor projectId + orgId - Check deployments:
vercel list --prodorvercel list - Check env vars:
vercel env ls - If CLI is limited, use Vercel REST API:
(Write response to file, parse with python3 to avoid shell quoting issues)curl -s -H "Authorization: Bearer $VERCEL_TOKEN" \ "https://api.vercel.com/v1/projects/<projectId>/env?teamId=<orgId>"
For Supabase projects:
- Look for
SUPABASE_URLin env files or Vercel env - Check if
migrations/000_base_schema.sqlhas been run
Phase 4 — Feature Inventory + Gap Analysis
For every feature found, classify:
| Status | Meaning |
|---|---|
| ✅ Complete | Fully implemented, tested, wired |
| 🟡 Partial | Code exists but not wired (e.g. UI component with no trigger, API without route) |
| 🔴 Missing | Referenced in PRD/docs but no code found |
| ❌ Broken | Code exists but has known issues (e.g. always-[] state, in-memory-only) |
Build a table with: Feature | Status | File(s) | Notes
Phase 5 — Produce PRD / Build Plan
Structure the output PRD as a markdown document in docs/:
# [Project Name] — [Launch Name] Build Plan
## 1. Current State Assessment
[Feature table from Phase 4]
## 2. [Phase Name — e.g. P2: Voice Notes]
### What already exists
[Code that exists but may not be wired]
### What to build
[Items with file paths, clear deliverables]
## 3. Build Order
Use a priority system:
- **[Phase 1 — Launch-ready]**: P0 items that must work for go-live
- **[Phase 2 — Production Hardening]**: P1 items for reliability/security
- **[Phase 3 — Scale]**: P2 items for multi-tenant scale
- **[Phase 4 — Polish]**: P3 nice-to-haves
## 4. One-Command Vision
[If applicable: describe the ideal provisioning flow]
## 5. Decisions Needed
[Questions for the user/operator]
Save to docs/<PROJECT>-LAUNCH-PLAN.md and present a concise summary in the reply.
Pitfalls
- Don't assume features work just because the code exists. A component may be dead code (no import/trigger). An API may exist but the state that feeds it may never be populated. Always trace the data flow: where is the state set, where is it consumed.
- Demo-mode == broken, not working. If an app silently falls back to fake data when env vars are missing, call it a stability bug, not a feature.
- Rate limiting on serverless is always in-memory until proven otherwise. Vercel cold starts reset in-memory Maps.
- Feature-rich does not mean deployed. A project can have massive feature surface but zero deployments on Vercel.
- Private repos won't show in web search. Try cloning with
[email protected]:<handle>/<repo>.gitafter verifying SSH auth. - Shell quoting with env vars containing special chars is fragile. Write Python scripts to files for complex API calls; avoid interpolating env vars directly in shell commands.
- Verbal feature names may not match repo names. "WAI" = WhatsApp Intelligence, not a tool called "wai". Ask for clarification.===ME:codebase-audit-and-roadmap