- Nx 22.7 monorepo (pnpm 11.1, TypeScript 5.9, Node 24) - apps/api: NestJS 11 (CJS conforme CODING-RULES.md PGD-DB-004) - apps/web: React 19 + Vite 8 (ESM) - libs/shared/api-interface: Zod contract base - Docker Compose dev: Postgres 18, Valkey 8, MinIO, Mailpit - WDS artifacts: - design-artifacts/A-Product-Brief/ (5 docs canônicos + 16 dialogs) - design-artifacts/B-Trigger-Map/ (hub + 4 personas + feature impact) - Stack canon: STACK.md v2.2 + CODING-RULES.md v2.0 + brand.md - AGENTS.md + README.md como entrada para devs/agentes Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
66 lines
2.9 KiB
Markdown
66 lines
2.9 KiB
Markdown
---
|
|
name: reverse-engineering
|
|
description: Analyze any software or website to extract specifications and design patterns
|
|
---
|
|
|
|
# [R] Reverse Engineering — Any Software/Site → Specs & Extraction
|
|
|
|
**Goal:** Analyze existing software or public websites to extract page specifications, design systems, and architectural understanding.
|
|
|
|
**When to use:** Need to understand an existing product (yours or public). Want to create WDS specifications from existing software. Competitive analysis through design extraction. Migrating or rebuilding an existing product.
|
|
|
|
**Two modes:**
|
|
- **Internal:** Analyze your own codebase (source code access)
|
|
- **External:** Analyze any public website (browser-based, no source needed)
|
|
|
|
---
|
|
|
|
## CORE PRINCIPLES
|
|
|
|
- **Observe first, then extract** — Do not start generating specs from the first page you see. Explore the full scope of the target first, then systematically extract patterns. Premature extraction leads to incomplete and inconsistent results.
|
|
- **Respect intellectual property** — Reverse engineering is for learning and specification, not for copying proprietary code. Extract patterns, structures, and design tokens. Do not copy proprietary assets, fonts, or copyrighted content.
|
|
- **Focus on patterns, not pixel-perfect copy** — The goal is to understand the design system and page structures well enough to build something equivalent or better. Capture the rules and relationships, not individual pixel values.
|
|
|
|
---
|
|
|
|
## INITIALIZATION
|
|
|
|
### Design Log
|
|
Read `{output_folder}/_progress/00-design-log.md`. Check Current and Backlog for context.
|
|
|
|
### Essential Guides
|
|
|
|
- **[Execution Principles](data/guides/EXECUTION-PRINCIPLES.md)** — Document before acting, plan-then-execute
|
|
- **[Session Protocol](data/guides/SESSION-PROTOCOL.md)** — Read dialog, verify plan, present status
|
|
|
|
---
|
|
|
|
## STEPS
|
|
|
|
Execute steps in `./steps-r/`:
|
|
|
|
| Step | File | Purpose |
|
|
|------|------|---------|
|
|
| 01 | step-01-identify-target.md | Define target, access method, extraction goals |
|
|
| 02 | step-02-explore-and-capture.md | Explore structure, capture patterns and inventory |
|
|
| 03 | step-03-generate-specs.md | Generate WDS-format page specifications |
|
|
| 04 | step-04-extract-design-system.md | Extract design tokens and component catalog |
|
|
|
|
**Flow:** 01 → 02 → 03 → 04
|
|
|
|
### Critical Rules
|
|
|
|
- **ALWAYS** explore the full target before extracting — do not start with the first page
|
|
- **ALWAYS** document observations before generating specs
|
|
- **ALWAYS** generate output in `document_output_language`
|
|
- **ALWAYS** produce WDS-compatible artifacts that can feed into prototyping
|
|
- **NEVER** copy proprietary code, assets, or copyrighted content
|
|
|
|
---
|
|
|
|
## AFTER COMPLETION
|
|
|
|
1. Append a progress entry to `{output_folder}/_progress/00-design-log.md` under `## Progress`:
|
|
`### [date] — Reverse Engineering: [what was extracted]`
|
|
2. Suggest next action: feed specs into prototyping, analyze further, or start development
|