본문으로 건너뛰기
cccskills
무료GitHub에 공개

workflow-state

Internal skill for managing workflow lifecycle state in sdd/workflows/. Provides session-independent, resumable workflow tracking.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(6)

  • SKILL.md6.2 KB
  • resources/internal-api.md10.9 KB
  • resources/recovery.md3.2 KB
  • resources/workflow-yaml-schema.md3.7 KB
  • schemas/input.schema.json2.0 KB
  • schemas/output.schema.json1.3 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Workflow State Skill

Purpose

Manages sdd/workflows/<id>-<name>/ state - tracking where each item is in the solicitation → review → approval → implementation lifecycle.

This is process state management, not project task management.

Core Principle: Zero Session Context

ALL workflow state is persisted in sdd/ files. A new session must be able to resume with ZERO knowledge of what happened before:

  • No conversation history
  • No in-memory state
  • No assumptions

Read the files, know the state. This enables aggressive context compaction and allows users to clear sessions freely.

Directory Structure

sdd/
├── sdd-settings.yaml
├── archive/
│   ├── external-specs/         # External specs archived here (read-only)
│   │   └── 20260205-1430-feature-spec.md  # yyyymmdd-HHmm-lowercased-filename.md
│   ├── revised-specs/          # Specs removed during decomposition revision
│   │   └── 20260205-1430-a1b2c3-user-auth-03-password-reset/
│   │       └── SPEC.md
│   └── workflow-regressions/   # Work archived during phase regression
│       └── 20260205-1430-user-auth-1-impl/
│           ├── changes.patch   # Git patch for committed changes
│           ├── stash.patch     # Git stash for uncommitted changes
│           ├── src/            # Implementation files
│           └── metadata.yaml   # Regression context
└── workflows/                  # Multiple concurrent workflows supported
    ├── a1b2c3-user-auth/       # One workflow (user A, branch feature-x)
    │   ├── workflow.yaml       # This workflow's state
    │   └── drafts/
    │       ├── 01-user-management/
    │       │   ├── context.md
    │       │   ├── 01-api-contracts/
    │       │   │   └── context.md
    │       │   └── 02-auth-service/
    │       │       └── context.md
    │       └── 02-notifications/
    │           └── context.md
    └── x7y8z9-notifications/   # Another workflow (user B, branch feature-y)
        ├── workflow.yaml
        └── drafts/...

Status Progression (Four-Field Model)

The workflow uses four separate status fields for granular tracking:

Spec Phase

  1. spec_status: pending → in_progress → ready_for_review → approved

Plan Phase (only after ALL specs approved)

  1. plan_status: pending → in_progress → approved

Implementation Phase (only after ALL plans approved)

  1. impl_status: pending → in_progress → complete

Review Phase (after implementation)

  1. review_status: pending → ready_for_review → approved

Key Difference from Previous Design:

The old design had a single status field with immediate spec_approved → plan_review transition. The new design:

  1. spec_status: approved IS a resting state - Phase gating requires ALL specs approved before ANY planning starts
  2. Plan phase is separate - Only begins after checkpoint "All specs approved"
  3. Review phase is explicit - User must approve implementation, not just verify tests pass

Phase Gating Rules

GateCondition
Start planningALL items have spec_status: approved
Start implementingALL items have plan_status: approved
Complete workflowALL items have review_status: approved
Approve specNo OPEN questions in Requirements Discovery section
Approve specNo dependencies with spec_status: needs_rereview

Resource Files

For detailed guidance, read these on-demand:

Input

Schema: schemas/input.schema.json

Accepts operation type and operation-specific parameters for workflow lifecycle management.

Output

Schema: schemas/output.schema.json

Returns workflow ID, current phase, and progress tracking.

Workflow ID Generation

Workflow IDs are short, unique identifiers:

  1. Generate 6 random alphanumeric characters (a-z, 0-9)
  2. Check for collision with existing workflows
  3. If collision, regenerate
  4. Format: a1b2c3, x7y8z9, etc.

Change ID Format

Change IDs are derived from the workflow name:

  • Format: <name>-<seq> (e.g., user-auth-1, user-auth-2)
  • name: The workflow's user-chosen name
  • seq: Sequence number within workflow (1, 2, 3, ...)
  • Unique across concurrent workflows (different workflows = different name prefix)

Epic Handling

  • Each epic is an item with type: epic and children array
  • Children are features within the epic
  • Epic status tracks overall progress:
    • pending until first child starts
    • complete when all children complete
  • Epic itself doesn't get a change_id - only leaf features get change_ids
  • Epic folder in changes/ contains child change folders

Cleanup Behavior

  • When item moves from drafts/ to changes/:
    • Keep context.md in drafts for reference
    • Delete solicitation-workflow.yaml
  • When item is marked complete:
    • Remove from workflow.yaml items array
  • When all items complete:
    • Delete entire sdd/workflows/<id>-<name>/ directory including workflow.yaml
  • Completed items remain in changes/ permanently (that's the source of truth)

INDEX.md Handling

  • changes/INDEX.md is updated when items move to changes/ directory
  • No separate INDEX.md in sdd/workflows/ - workflow.yaml is the source of truth
  • workflow_state.ready_for_review() updates changes/INDEX.md with new entry

Consumers

  • /sdd orchestrator — creates workflows and manages lifecycle
  • spec-solicitation skill — reads context, saves specs
  • change-creation skill — saves plans
  • external-spec-integration skill — creates workflows and items from decomposition

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Standards for authoring SDD plugin agents — frontmatter, self-containment, skill references, and no-user-interaction rules.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

LiorCohen/sdd432026년 2월 24일 업데이트

Scaffolds Node.js/TypeScript backend components with CMDO architecture, driven by component settings.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

LiorCohen/sdd432026년 2월 24일 업데이트

CMDO architecture standards for Node.js/TypeScript backends with strict layer separation.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

LiorCohen/sdd432026년 2월 24일 업데이트

Intent-to-command mappings for fullstack-typescript tech pack features.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

LiorCohen/sdd432026년 2월 24일 업데이트

Create change specification and implementation plan with dynamic phase generation. Supports feature, bugfix, refactor, and epic types.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

LiorCohen/sdd432026년 2월 24일 업데이트

Orchestrates the full change lifecycle — routes actions to phase-specific sub-files.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

LiorCohen/sdd432026년 2월 24일 업데이트

LiorCohen의 스킬 모두 보기

이 스킬의 문제 신고