--- name: "gsd-extract_learnings" description: "Extract decisions, lessons, patterns, and surprises from completed phase artifacts" metadata: short-description: "Extract decisions, lessons, patterns, and surprises from completed phase artifacts" --- ## A. Skill Invocation - This skill is invoked by mentioning `$gsd-extract_learnings`. - Treat all user text after `$gsd-extract_learnings` as `{{GSD_ARGS}}`. - If no arguments are present, treat `{{GSD_ARGS}}` as empty. ## B. AskUserQuestion → request_user_input Mapping GSD workflows use `AskUserQuestion` (Claude Code syntax). Translate to Codex `request_user_input`: Parameter mapping: - `header` → `header` - `question` → `question` - Options formatted as `"Label" — description` → `{label: "Label", description: "description"}` - Generate `id` from header: lowercase, replace spaces with underscores Batched calls: - `AskUserQuestion([q1, q2])` → single `request_user_input` with multiple entries in `questions[]` Multi-select workaround: - Codex has no `multiSelect`. Use sequential single-selects, or present a numbered freeform list asking the user to enter comma-separated numbers. Execute mode fallback: - When `request_user_input` is rejected (Execute mode), present a plain-text numbered list and pick a reasonable default. ## C. Task() → spawn_agent Mapping GSD workflows use `Task(...)` (Claude Code syntax). Translate to Codex collaboration tools: Direct mapping: - `Task(subagent_type="X", prompt="Y")` → `spawn_agent(agent_type="X", message="Y")` - `Task(model="...")` → omit (Codex uses per-role config, not inline model selection) - `fork_context: false` by default — GSD agents load their own context via `` blocks Parallel fan-out: - Spawn multiple agents → collect agent IDs → `wait(ids)` for all to complete Result parsing: - Look for structured markers in agent output: `CHECKPOINT`, `PLAN COMPLETE`, `SUMMARY`, etc. - `close_agent(id)` after collecting results from each agent Extract structured learnings from completed phase artifacts (PLAN.md, SUMMARY.md, VERIFICATION.md, UAT.md, STATE.md) into a LEARNINGS.md file that captures decisions, lessons learned, patterns discovered, and surprises encountered. @E:/NER/.codex/get-shit-done/workflows/extract_learnings.md Execute the extract-learnings workflow from @E:/NER/.codex/get-shit-done/workflows/extract_learnings.md end-to-end.