AgentSkillsCN

task-metadata

为 Ralph 的并行执行生成并验证任务元数据。当您创建 tasks.yaml v1 文件、验证任务依赖关系,或检查互斥锁的使用情况时,可选用此技能。触发条件包括:创建任务元数据、验证 tasks yaml、检查任务依赖关系。

SKILL.md
--- frontmatter
name: task-metadata
description: "Generate and validate task metadata for Ralph parallel execution. Use when creating tasks.yaml v1 files, validating task dependencies, or checking mutex usage. Triggers on: create task metadata, validate tasks yaml, check task dependencies."

Task Metadata Generator

Create and validate task metadata for parallel-safe execution in Ralph.


The Job

  1. Generate or validate tasks.yaml v1 metadata
  2. Ensure unique task IDs
  3. Validate dependencies exist
  4. Check mutex against catalog
  5. Output clear errors for invalid metadata

Do NOT: schedule tasks, merge branches, or review design.


tasks.yaml v1 Format

yaml
version: 1
tasks:
  - id: US-001
    title: "Short descriptive title"
    completed: false
    dependsOn: []           # Array of task IDs that must complete first
    mutex: []               # Array of mutex names from catalog
    touches: []             # Optional: paths/globs this task modifies
    contracts:              # Optional: interface contracts
      produces: []
      consumes: []
    mergeNotes: ""          # Optional: hints for conflict resolution
    verify: []              # Optional: verification commands

Required Fields

FieldTypeDescription
idstringUnique identifier (e.g., US-001, TASK-1)
titlestringHuman-readable task name
completedbooleanTask completion status
dependsOnarrayTask IDs that must complete before this one
mutexarrayMutex names from the catalog

Mutex Catalog

Valid mutex names (check mutex-catalog.json):

  • db-migrations - Database schema changes
  • lockfile - Package lock files (package-lock.json, yarn.lock, etc.)
  • router - Route configuration files
  • global-config - Global configuration files
  • contract:* - Interface contracts (e.g., contract:auth-api)

Validation Checklist

When validating tasks.yaml:

  • version: 1 is present
  • Every task has id, title, completed, dependsOn, mutex
  • All id values are unique
  • All dependsOn references exist as task IDs
  • No circular dependencies
  • All mutex values exist in catalog

Output Format

Valid Metadata

code
✓ tasks.yaml v1 valid
  - 5 tasks
  - 3 unique mutex
  - 2 dependency chains

Invalid Metadata

code
✗ tasks.yaml validation failed:
  - Line 12: Duplicate id "US-001"
  - Line 25: dependsOn "US-999" not found
  - Line 30: Unknown mutex "invalid-mutex"
  - Cycle detected: US-002 → US-003 → US-002

Example

Input request: "Create metadata for a user auth feature"

Output:

yaml
version: 1
tasks:
  - id: AUTH-001
    title: Add users table migration
    completed: false
    dependsOn: []
    mutex: ["db-migrations"]
    touches: ["db/migrations/**"]
    
  - id: AUTH-002
    title: Create auth middleware
    completed: false
    dependsOn: ["AUTH-001"]
    mutex: ["contract:auth-api"]
    touches: ["src/auth/**"]
    contracts:
      produces: ["contract:auth-api"]
      consumes: []