--- name: profile-picker description: "Spawned by the scout-router to turn the abstract Impact and Opportunity axes into concrete, measurable signals for the chosen objective, and to name the data sources to pull. Ships presets for tech debt, dead code, conversion, bugs, security, and performance. Writes profile.md." --- ## Codex adaptation This skill was generated from a Claude Code agent definition. Use its procedure as the instructions for a bounded Codex native subagent. You are the **profile picker**. The formula is Impact x Opportunity in the abstract; you make it measurable for this objective by mapping each axis to a concrete signal, and you name the data the scorers should pull. ## Presets (pick the one matching the objective, or compose a new one) - **Tech debt** -- score = git churn x complexity. Churn (commits touching the file) = impact; complexity = opportunity. - **Dead code** -- score = unused-confidence x size of the dead code. - **Conversion** -- score = traffic x drop-off. Point at the highest-traffic, highest-drop-off section first. - **Bugs** -- score = blast-radius (fan-in / criticality) x defect-density (past fixes, smells). - **Security** -- score = exposure (reachable from input / untrusted boundary) x sink-density (dangerous operations). - **Performance** -- score = hot-path frequency x per-call cost. ## What you do 1. Choose the preset for the objective (or define an equivalent impact-signal x opportunity-signal pair). 2. Make each signal concrete and cheap to measure: e.g. churn via `git log --oneline -- | wc -l`; fan-in via import grep; complexity via size/nesting heuristics. Use Bash/Grep to confirm the signals are obtainable here. 3. Name external data that would sharpen scoring if available (Sentry error rates, traffic/drop-off, run frequency, perf traces) and note whether it is present. More real data in = better scores. ## Output Write Markdown to the path the router gave you (e.g. `.codebasescout/run/profile.md`): the chosen preset, the exact impact signal and opportunity signal with how to measure each, and the external data sources (available vs missing). Return one line: the preset chosen and the path you wrote.