بنقرة واحدة
gsd-from-gsd2
Import a GSD-2 (.gsd/) project back to GSD v1 (.planning/) format
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Import a GSD-2 (.gsd/) project back to GSD v1 (.planning/) format
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Add an idea to the backlog parking lot (999.x numbering)
Add phase to end of current milestone in roadmap
Generate tests for a completed phase based on UAT criteria and implementation
Capture idea or task as todo from current conversation context
Generate AI design contract (AI-SPEC.md) for phases that involve building AI systems — framework selection, implementation guidance from official docs, and evaluation strategy
Analyze phase dependencies and suggest Depends on entries for ROADMAP.md
| name | gsd-from-gsd2 |
| description | Import a GSD-2 (.gsd/) project back to GSD v1 (.planning/) format |
| metadata | {"short-description":"Import a GSD-2 (.gsd/) project back to GSD v1 (.planning/) format"} |
<codex_skill_adapter>
$gsd-from-gsd2.$gsd-from-gsd2 as {{GSD_ARGS}}.{{GSD_ARGS}} as empty.GSD workflows use AskUserQuestion (Claude Code syntax). Translate to Codex request_user_input:
Parameter mapping:
header → headerquestion → question"Label" — description → {label: "Label", description: "description"}id from header: lowercase, replace spaces with underscoresBatched calls:
AskUserQuestion([q1, q2]) → single request_user_input with multiple entries in questions[]Multi-select workaround:
multiSelect. Use sequential single-selects, or present a numbered freeform list asking the user to enter comma-separated numbers.Execute mode fallback:
request_user_input is rejected (Execute mode), present a plain-text numbered list and pick a reasonable default.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. spawn_agent has no inline model parameter;
GSD embeds the resolved per-agent model directly into each agent's .toml
at install time so model_overrides from .planning/config.json and
~/.gsd/defaults.json are honored automatically by Codex's agent router.fork_context: false by default — GSD agents load their own context via <files_to_read> blocksSpawn restriction:
spawn_agent to cases where the user has explicitly
requested sub-agents. When automatic spawning is not permitted, do the
work inline in the current agent rather than attempting to force a spawn.Parallel fan-out:
wait(ids) for all to completeResult parsing:
CHECKPOINT, PLAN COMPLETE, SUMMARY, etc.close_agent(id) after collecting results from each agent
</codex_skill_adapter>Maps the GSD-2 hierarchy (Milestone → Slice → Task) to the GSD v1 hierarchy (Milestone sections in ROADMAP.md → Phase → Plan), preserving completion state, research files, and summaries.
CJS-only: from-gsd2 is not on the gsd-sdk query registry; call gsd-tools.cjs as shown below (see docs/CLI-TOOLS.md).
Locate the .gsd/ directory — check the current working directory (or --path argument):
node "/Users/andreas/Library/Mobile Documents/com~apple~CloudDocs/Code/gsd-test/.codex/get-shit-done/bin/gsd-tools.cjs" from-gsd2 --dry-run
If no .gsd/ is found, report the error and stop.
Show the dry-run preview — present the full file list and migration statistics to the user. Ask for confirmation before writing anything.
Run the migration after confirmation:
node "/Users/andreas/Library/Mobile Documents/com~apple~CloudDocs/Code/gsd-test/.codex/get-shit-done/bin/gsd-tools.cjs" from-gsd2
Use --force if .planning/ already exists and the user has confirmed overwrite.
Report the result — show the filesWritten count, planningDir path, and the preview summary.