skills/tad-generator/SKILL.md
Generate a Technical Architecture Document (TAD) from a PRD. Use when asked to design the architecture, create a TAD, or define how a product is built. Creates/updates tad.md and reports GitHub links. Skip PRD authoring, sprint-tasks, or code implementation.
npx skillsauth add luongnv89/skills tad-generatorInstall 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.
Generate comprehensive Technical Architecture Documents with modular design for startups.
This skill uses parallel research agents with upfront content extraction. Pattern: D (Research+Synthesis) + E (Staged Pipeline).
| Agent | Role | Parallelization | |-------|------|-----------------| | prd-reader | Read PRD + supporting docs, return structured extraction | Sequential (only once) | | tech-researcher | Handle one research round (spawned 5x in parallel) | Parallel (5 instances) | | tad-writer | Generate complete tad.md from all inputs | Sequential (after all research) |
Result: All 5 rounds complete concurrently, tad-writer synthesizes outputs into unified TAD.
Before executing:
Before creating/updating/deleting files in an existing repository, sync the current branch with remote:
branch="$(git rev-parse --abbrev-ref HEAD)"
git fetch origin
git pull --rebase origin "$branch"
If the working tree is not clean, stash first, sync, then restore:
git stash push -u -m "pre-sync"
branch="$(git rev-parse --abbrev-ref HEAD)"
git fetch origin && git pull --rebase origin "$branch"
git stash pop
If origin is missing, pull is unavailable, or rebase/stash conflicts occur, stop and ask the user before continuing.
Project folder path in $ARGUMENTS containing:
prd.md - Product requirements (required)idea.md, validate.md - Additional context (optional)prd.md existstad.md if presentFrom PRD extract:
Ask user (if not clear):
| Decision | Options | |----------|---------| | Deployment | Vercel/Netlify (recommended), AWS, GCP, Self-hosted | | Database | PostgreSQL, MongoDB, Supabase/Firebase, Multiple | | Auth | Social (OAuth), Email/password, Magic links, Enterprise SSO | | Budget | Free tier, <$50/mo, <$200/mo, Flexible |
Conduct 5 research rounds:
Create tad.md with sections:
See references/tad-template.md for full template structure.
After writing tad.md, if the project folder is inside an ideas repo, update the repo README ideas table:
cd to repo root and run python3 scripts/update_readme_ideas_index.py (if it exists)README.md manually (ensure TAD status becomes ✅ for that idea)git push origin <branch>
branch="$(git rev-parse --abbrev-ref HEAD)"; git fetch origin && git rebase "origin/$branch" && git push.tad.md to project folderWhen reporting completion, include:
tad.mdREADME.md when it was updatedLink format (derive <owner>/<repo> from git remote get-url origin):
https://github.com/<owner>/<repo>/blob/main/<relative-path>After completing each major step, output a status report in this format:
◆ [Step Name] ([step N of M] — [context])
··································································
[Check 1]: √ pass
[Check 2]: √ pass (note if relevant)
[Check 3]: × fail — [reason]
[Check 4]: √ pass
[Criteria]: √ N/M met
____________________________
Result: PASS | FAIL | PARTIAL
Adapt the check names to match what the step actually validates. Use √ for pass, × for fail, and — to add brief context. The "Criteria" line summarizes how many acceptance criteria were met. The "Result" line gives the overall verdict.
Phase 1 — Setup
◆ Setup (step 1 of 8 — environment validation)
··································································
PRD found: √ pass
Context extracted: √ pass (product + features + NFRs read)
Architecture questions answered: √ pass (deployment, DB, auth, budget confirmed)
____________________________
Result: PASS | FAIL | PARTIAL
Phase 4 — Research
◆ Research (step 4 of 8 — validation rounds)
··································································
5 parallel rounds completed: √ pass
Best practices gathered: √ pass (tech, infra, security, risk, holistic)
Patterns validated: √ pass (OWASP, vendor lock-in, startup feasibility)
____________________________
Result: PASS | FAIL | PARTIAL
Phase 5 — Generation
◆ Generation (step 5 of 8 — TAD authoring)
··································································
11 sections written: √ pass
tad.md created: √ pass
Diagrams included: √ pass (mermaid architecture + flow diagrams)
____________________________
Result: PASS | FAIL | PARTIAL
Phase 8 — Output
◆ Output (step 8 of 8 — delivery)
··································································
Summary presented: √ pass (architecture decisions highlighted)
README updated: √ pass (TAD status ✅)
Committed and pushed: √ pass (commit hash: ...)
____________________________
Result: PASS | FAIL | PARTIAL
The skill is considered successful when the following are all true. Verify each before reporting completion.
tad.md exists at the project root and contains all 11 required sections (System Overview, Architecture Diagram, Technology Stack, System Components, Data Architecture, Infrastructure, Security, Performance, Development, Risks, Appendix).```mermaid fenced block that parses (no graph typos, balanced braces).Node.js 20 LTS, PostgreSQL 16) — no bare "latest" without a date.Mitigation: line (assert one mitigation per risk row).~$45/mo).tad.md, the commit hash, and (if updated) the README link.git status returns "nothing to commit, working tree clean".Example final agent report:
◆ TAD Generation Complete (8 of 8 — delivery)
··································································
tad.md written: √ pass (11 sections, 2 mermaid diagrams)
Versions specified: √ pass (Node 20 LTS, Postgres 16)
Risks mitigated: √ pass (6/6 risks have mitigation)
Cost estimates: √ pass (~$45/mo MVP, ~$220/mo scale)
Committed and pushed: √ pass (commit a1b2c3d)
____________________________
Result: PASS
GitHub links:
- tad.md: https://github.com/acme/my-idea/blob/main/projects/foo/tad.md
- README.md: https://github.com/acme/my-idea/blob/main/README.md
- Commit: a1b2c3d
Expected tad.md Architecture Diagram excerpt:
## 2. Architecture Diagram
```mermaid
graph TD
U[User] --> CDN[Vercel CDN]
CDN --> APP[Next.js App]
APP --> API[Node API]
API --> DB[(PostgreSQL 16)]
API --> CACHE[(Redis 7)]
## Edge Cases
- **Missing `prd.md`**: stop and ask the user to run `/prd-generator` first; do not invent requirements.
- **PRD too thin (<200 words)**: warn the user, ask for clarifications on user flows and NFRs before proceeding to Phase 4.
- **Conflicting stack hints in PRD**: surface the conflict in Phase 3 clarifying questions; never silently pick one.
- **No git remote `origin`**: skip Phase 7 push, write `tad.md` locally, and tell the user how to add the remote.
- **Existing `tad.md` already up to date**: enter Modification Mode rather than overwriting; preserve revision history.
- **Non-`ideas` repo layout**: skip Phase 6 README index update; do not create a `scripts/update_readme_ideas_index.py` if absent.
- **Mermaid render fails locally**: validate syntax with `mmdc -i tad.md -o /tmp/check.svg` (or visual inspection) before commit.
## Modification Mode
For existing TAD changes:
1. Create timestamped backup
2. Ask what to modify (stack, infrastructure, security, data, scaling)
3. Apply changes preserving structure
4. Update revision history
## Guidelines
- **Practical**: Implementable solutions for startups
- **Cost-conscious**: Consider budget implications
- **Modular**: Emphasize separation of concerns
- **Specific**: Concrete technology choices
- **Visual**: Include mermaid diagrams
documentation
Manage software releases end-to-end: bump version, generate changelog, tag, push, GitHub release, publish to PyPI/npm. Use when user asks to ship, cut a release, tag a version, or list changes since last tag. Skip routine commits and marketplace publishing.
development
Review UI for usability issues using Steve Krug's principles and produce a scannable report. Use when asked for a usability audit, UX review, or UI feedback on screenshots, URLs, or code. Don't use for visual/brand design critique, accessibility (WCAG) audits, or backend/API review.
development
Validate app/startup ideas with market, feasibility, commercial, and open-source competitor analysis. Use when asked to evaluate, validate, or score a product idea. Don't use for PRDs, go-to-market plans, or investor decks.
testing
Install local-first security hardening: pre-commit secret detection, offline dependency scans, static analysis, reports, and gated free CI. Use when hardening repos or adding security hooks. Don't use for incident response or cloud security reviews.