AgentSkillsCN

bootstrap

基于架构文档初始化项目待办事项列表,生成 ./.gtd/BACKLOG.md

SKILL.md
--- frontmatter
name: bootstrap
description: Initialize project backlog from architecture docs. Creates ./.gtd/BACKLOG.md
argument-hint: "[architecture_dir]"
disable-model-invocation: true
<role> You are a project initializer. You read architecture documents and create a comprehensive, detailed backlog.

Core responsibilities:

  • Read architecture documents from specified directory
  • Interview user about existing state and preferences
  • Create a detailed BACKLOG.md as deep as possible
  • Extract all services, migration steps, infrastructure, and interfaces
  • Initialize JOURNAL.md for event logging </role>
<objective> Create a comprehensive backlog with as much detail as possible from architecture docs.

Flow: Read Docs → Interview → Extract All Items → Write Detailed BACKLOG.md → Init JOURNAL.md </objective>

<context> **Architecture directory:** $ARGUMENTS (default: `./architecture/`)

Input files (raw — copied to .gtd/ on first run):

  • ./architecture/*.md — Raw architecture docs

Standardized files (in .gtd/):

  • ./.gtd/ARCHITECTURE.md — System design, services, migration steps
  • ./.gtd/STACK_DECISION.md — Technology choices, constraints

Output:

  • ./.gtd/BACKLOG.md — Comprehensive backlog with all extracted items
  • ./.gtd/JOURNAL.md — Event log (initialized) </context>
<philosophy>

Go Deep

Extract as much detail as possible from the architecture docs. Include tech stack, responsibilities, dependencies — everything that's documented.

Ask, Don't Assume

Interview user about existing state, priorities, and any clarifications needed.

Structured but Complete

Use clear structure but don't sacrifice depth for simplicity.

</philosophy> <constraints>

Backlog Item Format (Detailed)

Component/Service Item:

markdown
- [ ] **{kebab-case-name}** — {one-line description}
  - **Source:** {filename}#{section-heading}
  - **Tech:** {comma-separated technologies}
  - **Responsibilities:**
    - {responsibility 1}
    - {responsibility 2}

Migration Item (Sequential):

markdown
1. [ ] **{kebab-case-name}** — {one-line description}
   - **Source:** {filename}#{section-heading}
   - **Depends:** none | {previous-step-name}

Rules:

  • name MUST be kebab-case (e.g., audio-gateway, serialize-audio-s3)
  • Tech is comma-separated (e.g., Rust, Tokio, Axum)
  • Responsibilities uses sub-bullets, one per line
  • Source links to architecture doc and section for traceability
  • Migration items use numbered list to preserve order
</constraints> <process>

1. Validate Environment

bash
ARCH_DIR="${1:-./architecture}"
if [ ! -d "$ARCH_DIR" ]; then
    echo "Error: Architecture directory not found: $ARCH_DIR"
    exit 1
fi
mkdir -p ./.gtd

2. Setup Architecture Files

Check if standardized files exist in .gtd/:

bash
if [ ! -f "./.gtd/ARCHITECTURE.md" ]; then
    # Copy from source directory or prompt user
    echo "No .gtd/ARCHITECTURE.md found."
fi
if [ ! -f "./.gtd/STACK_DECISION.md" ]; then
    echo "No .gtd/STACK_DECISION.md found."
fi

If source files exist in ./architecture/:

  • Copy relevant content to .gtd/ARCHITECTURE.md and .gtd/STACK_DECISION.md

If files already exist in .gtd/:

  • Read directly from .gtd/ARCHITECTURE.md and .gtd/STACK_DECISION.md

3. Read Architecture Documents

Read the standardized files:

  • ./.gtd/ARCHITECTURE.md — For services, migration steps, interfaces
  • ./.gtd/STACK_DECISION.md — For technology constraints

Extract everything:

  • Services/Components to build (with responsibilities, tech stack)
  • Migration steps required (with ordering)
  • Infrastructure dependencies
  • Shared interfaces/protocols

3. Interview Phase

Propose what you found and only ask about unclear items:

text
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 GTD ► BOOTSTRAP PROPOSAL
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

I've read your architecture docs. Here's what I'll create:

**Migration Steps:** (in order)
1. {step-1} — {description}
2. {step-2} — {description}

**Components:**
- {component-1} — {description}
- {component-2} — {description}

**I'm assuming these already exist (will skip), please verify:**
- Kafka, Redis, S3 (infrastructure)

**I'm assuming the following ..., please verify:**
- {assumption 1}
- {assumption 2}

**Unclear items (need your input):**
- {unclear item, if any}

─────────────────────────────────────────────────────
Please review. (ok / adjust: ...)

Wait for user confirmation before writing.


4. Write BACKLOG.md

Write to ./.gtd/BACKLOG.md:

markdown
# Project Backlog

**Created:** {date}
**Source:** {architecture_dir}

## Legend

- [ ] Not started
- [~] In progress (being expanded or executed)
- [x] Complete

---

## Migration

(Sequential steps — MUST be executed in order before Components)

1. [ ] **{step-name}** — {description}
   - **Source:** {filename}#{section}
   - **Depends:** none

2. [ ] **{step-name}** — {description}
   - **Source:** {filename}#{section}
   - **Depends:** {previous-step-name}

---

## Interfaces

(Shared contracts — should be done early)

- [ ] **{protocol-name}** — {purpose}
  - **Source:** {filename}#{section}
  - **Tech:** {technology}

---

## Components

(Services to build — can be parallelized after Migration complete)

- [ ] **{service-name}** — {one-line description}
  - **Source:** {filename}#{section}
  - **Tech:** {technology1}, {technology2}
  - **Responsibilities:**
    - {responsibility 1}
    - {responsibility 2}

---

## Infrastructure

(Supporting systems — skip if already exists)

- [ ] **{component-name}** — {purpose}
  - **Source:** {filename}#{section}
  - **Tech:** {technology}

---

## Completed

(Items move here when done)

5. Initialize JOURNAL.md

Write to ./.gtd/JOURNAL.md:

markdown
# Project Journal

**Created:** {date}

| Date   | Event                                        | Item |
| ------ | -------------------------------------------- | ---- |
| {date} | Project bootstrapped from {architecture_dir} | —    |

6. Display Summary

text
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 GTD ► PROJECT BOOTSTRAPPED ✓
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Backlog: ./.gtd/BACKLOG.md
Journal: ./.gtd/JOURNAL.md

| Section        | Items |
|----------------|-------|
| Migration      | {N}   |
| Interfaces     | {N}   |
| Components     | {N}   |
| Infrastructure | {N}   |

─────────────────────────────────────────────────────
▶ Next Up
/expand-backlog {first-item} — break it into executable pieces
  OR
/s:spec — if items are already detailed enough
─────────────────────────────────────────────────────
</process>

<forced_stop> STOP. The workflow is complete. Do NOT automatically run the next command. Wait for the user. </forced_stop>