--- name: 'step-01-identify-target' description: 'Define what to reverse engineer, how to access it, and what to extract' # File References nextStepFile: './step-02-explore-and-capture.md' --- # Step 1: Identify Target ## STEP GOAL: Define what to reverse engineer, how to access it, and what to extract. ## MANDATORY EXECUTION RULES (READ FIRST): ### Universal Rules: - 🛑 NEVER generate content without user input - 📖 CRITICAL: Read the complete step file before taking any action - 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read - 📋 YOU ARE A FACILITATOR, not a content generator - ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}` ### Role Reinforcement: - ✅ You are an Implementation Partner guiding structured development activities - ✅ If you already have been given a name, communication_style and persona, continue to use those while playing this new role - ✅ We engage in collaborative dialogue, not command-response - ✅ You bring software development methodology expertise, user brings domain knowledge and codebase familiarity - ✅ Maintain clear and structured tone throughout ### Step-Specific Rules: - 🎯 Focus only on defining the target, determining access method, defining extraction goals, and documenting the target overview - 🚫 FORBIDDEN to begin exploring or capturing the target — that is the next step - 💬 Approach: Help user clearly define what they want to reverse engineer and what they need from it - 📋 Access method must be verified before proceeding ## EXECUTION PROTOCOLS: - 🎯 Clear target definition with access method and extraction goals - 💾 Document target overview in dialog file - 📖 Reference the target type table and extraction goals checklist - 🚫 Do not begin exploring or capturing any content ## CONTEXT BOUNDARIES: - Available context: User's initial request or target description - Focus: Target identification — what, how, and what to extract - Limits: No exploration, no capturing - Dependencies: None — this is the first step ## Sequence of Instructions (Do not deviate, skip, or optimize) ### 1. Define the Target Identify what you are reverse engineering: | Target Type | Examples | |-------------|----------| | **Website** | Public marketing site, SaaS application, e-commerce store | | **Web application** | Dashboard, admin panel, booking system | | **Component library** | Design system documentation site, Storybook instance | | **Mobile app** | iOS/Android app (via screenshots or simulator) | | **Source code** | Your own codebase, open source project | Write a clear target description: ``` Target: [Name / URL / Project] Type: [Website / Web app / Component library / Mobile app / Source code] Owner: [Own product / Client product / Public / Competitor] ``` ### 2. Determine Access Method How will you explore the target? | Access Method | When to Use | Tools | |---------------|-------------|-------| | **URL (browser)** | Public websites, web apps with demo | Puppeteer, browser DevTools | | **Source code** | Own codebase, open source | File reading, code analysis | | **Screenshots** | No live access, mobile apps, provided by client | Image analysis | | **Combination** | Source code + live URL | Both code and browser | Note any access limitations (login required, rate limits, geo-restrictions). ### 3. Define Extraction Goals What do you need to extract? Check all that apply: - [ ] **Page specifications** — Layout, structure, content for each page - [ ] **Design system** — Colors, typography, spacing, shadows, tokens - [ ] **Component inventory** — Reusable UI components, variants, states - [ ] **Content strategy** — Copy patterns, tone, content hierarchy - [ ] **Architecture** — Tech stack, routing, data flow (requires source access) - [ ] **User flows** — Multi-page journeys, interaction patterns - [ ] **All of the above** — Full extraction for rebuild or migration ### 4. Document Target Overview Create a brief overview to guide the exploration: ``` Target Overview: - Name: [Name] - URL: [URL or "source code at /path/"] - Access: [Browser / Source / Screenshots] - Goals: [What to extract] - Output language: [Language for generated specs] - Pages estimated: [Rough count if known] - Notes: [Login required? Special states? Known complexity?] ``` ### 5. Verify Checklist - [ ] Target clearly identified with name and type - [ ] Access method determined and verified (URL loads, source exists, screenshots provided) - [ ] Extraction goals defined - [ ] Target overview documented ### 6. Present MENU OPTIONS Display: "**Select an Option:** [C] Continue to Step 2: Explore and Capture" #### Menu Handling Logic: - IF C: Update design log, then load, read entire file, then execute {nextStepFile} - IF Any other comments or queries: help user respond then [Redisplay Menu Options] #### EXECUTION RULES: - ALWAYS halt and wait for user input after presenting menu - ONLY proceed to next step when user selects 'C' - User can chat or ask questions - always respond and then redisplay menu options ## CRITICAL STEP COMPLETION NOTE ONLY WHEN the target is defined with access method verified and extraction goals documented will you then load and read fully `{nextStepFile}` to execute. --- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS ### ✅ SUCCESS: - Target clearly identified with name and type - Access method determined and verified - Extraction goals defined - Target overview documented ### ❌ SYSTEM FAILURE: - Beginning exploration before target is fully defined - Not verifying access method - Not defining extraction goals - Skipping target documentation **Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.