Back to list
cuioss

workflow-extension-api

by cuioss

An orchestration layer for AI coding assistants (currently Claude Code) that enforces consistency, reliability, and more predictable outputs.

0🍴 0📅 Jan 17, 2026

SKILL.md


name: workflow-extension-api description: Defines extension points for domain-specific workflow customization. Covers profile overrides (implementation, testing) and extensions (outline, triage). allowed-tools: Read

Workflow Extension API

Role: Defines the extension points that allow domain bundles to customize workflow behavior. This skill documents what domains CAN customize vs what remains system-controlled.

Key Insight: Phase skills are self-documenting (their SKILL.md IS the contract). This API focuses on the extension mechanisms that phase skills use.

4-Layer Workflow Architecture

┌─────────────────────────────────────────────────────────────────┐
│                    WORKFLOW ARCHITECTURE                         │
├─────────────────────────────────────────────────────────────────┤
│                                                                  │
│  LAYER 1: PHASE SKILLS (System only - NO domain override)       │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │ phase-1-init → phase-2-outline → phase-3-plan               │ │
│  │      → phase-4-execute (coordinator) → phase-5-finalize     │ │
│  │                                                              │ │
│  │ Self-documenting: SKILL.md IS the contract                  │ │
│  └─────────────────────────────────────────────────────────────┘ │
│                            │                                     │
│                            │ delegates to                        │
│                            ▼                                     │
│  LAYER 2: PROFILE SKILLS (System default, domain CAN override)  │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │ task-implementation (profile=implementation)                 │ │
│  │ task-module_testing (profile=module_testing)                │ │
│  │                                                              │ │
│  │ Contract: standards/profiles/                                │ │
│  │ Override: resolve-workflow-skill --domain X --phase Y        │ │
│  └─────────────────────────────────────────────────────────────┘ │
│                            │                                     │
│                            │ loads                               │
│                            ▼                                     │
│  LAYER 3: EXTENSIONS (Domain provides, loaded BY system skills) │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │ outline-ext: Codebase analysis, deliverable patterns         │ │
│  │   → Loaded by phase-2-outline                                │ │
│  │                                                              │ │
│  │ triage-ext: Suppression syntax, severity guidelines          │ │
│  │   → Loaded by phase-5-finalize                               │ │
│  │                                                              │ │
│  │ Contract: standards/extensions/                              │ │
│  │ Discovery: provides_triage(), provides_outline() in ext.py   │ │
│  └─────────────────────────────────────────────────────────────┘ │
│                            │                                     │
│                            │ loads                               │
│                            ▼                                     │
│  LAYER 4: DOMAIN SKILLS (Loaded from task.skills at execution)  │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │ java-core, java-cdi, junit-core, cui-javascript, etc.        │ │
│  │                                                              │ │
│  │ Selected during 2-outline (from module.skills_by_profile)    │ │
│  │ Propagated to tasks, loaded during 4-execute                 │ │
│  └─────────────────────────────────────────────────────────────┘ │
│                                                                  │
└─────────────────────────────────────────────────────────────────┘

Extension Points Summary

LayerExtension PointOverride ModelContract Location
Phase SkillsNoneSystem only, no overridePhase SKILL.md files
Profile Skillsworkflow_skills in marshal.jsonDomain can replace defaultprofiles/
Extensionsprovides_*() in extension.pyAdditive (domain provides)extensions/
Domain Skillsskills_by_profile in module analysisSelected per deliverableDomain bundle SKILL.md

Phase Skills (Layer 1)

Phase skills are system-only - domains cannot override them. Each phase skill is self-documenting; its SKILL.md IS the authoritative contract.

PhaseSkillResponsibility
1-initpm-workflow:phase-1-initCreate plan, config, status
2-outlinepm-workflow:phase-2-outlineCreate solution outline with deliverables
3-planpm-workflow:phase-3-planTransform deliverables into tasks
4-executepm-workflow:phase-4-executeCoordinate task execution
5-finalizepm-workflow:phase-5-finalizeVerify, triage, commit, PR

Key Pattern: Phase skills delegate to profile skills (Layer 2) for actual work and load extensions (Layer 3) for domain-specific knowledge.


Profile Skills (Layer 2)

Profile skills handle the actual implementation/testing work. Domains CAN override these via workflow_skills in marshal.json.

ProfileSystem DefaultOverride Example
implementationpm-workflow:task-implementationpm-dev-java:java-implementation
module_testingpm-workflow:task-module_testingpm-dev-java:java-module-testing

Resolution Mechanism

python3 .plan/execute-script.py plan-marshall:manage-plan-marshall-config:plan-marshall-config \
  resolve-workflow-skill --domain java --phase implementation

Result (domain override exists):

status: success
workflow_skill: pm-dev-java:java-implementation
fallback: false

Result (no override, system fallback):

status: success
workflow_skill: pm-workflow:task-implementation
fallback: true

Profile Contracts

Profile skills must conform to the contracts defined in:

ProfileContract
implementationprofiles/implementation.md
module_testingprofiles/module_testing.md

Extensions (Layer 3)

Extensions are additive - domains provide additional knowledge that system skills load and use. They don't replace system behavior; they augment it.

Extension TypePurposeLoaded ByContract
outline-extCodebase patterns, deliverable templatesphase-2-outlineextensions/outline-extension.md
triage-extSuppression syntax, severity rulesphase-5-finalizeextensions/triage-extension.md

Extension Discovery

Domains register extensions via provides_*() methods in their extension.py:

class Extension(ExtensionBase):
    def provides_triage(self) -> str | None:
        return "pm-dev-java:ext-triage-java"

    def provides_outline(self) -> str | None:
        return None  # No outline extension

Extension Resolution

python3 .plan/execute-script.py plan-marshall:manage-plan-marshall-config:plan-marshall-config \
  resolve-workflow-skill-extension --domain java --type triage

Domain Skills (Layer 4)

Domain skills contain the actual coding standards and patterns. They are:

  1. Selected during phase-2-outline based on module.skills_by_profile
  2. Stored in deliverables and propagated to tasks
  3. Loaded during phase-4-execute from task.skills array

Domain skills are NOT extensions of the workflow - they are knowledge loaded by profile skills during execution.


Standards Documents

DocumentPurpose
architecture.mdHigh-level workflow overview
extensions/extension-mechanism.mdHow extensions work
extensions/outline-extension.mdOutline extension contract
extensions/triage-extension.mdTriage extension contract
profiles/implementation.mdImplementation profile contract
profiles/module_testing.mdModule testing profile contract
profiles/profile-mechanism.mdHow profile overrides work
protocols/user-review.mdUser approval gate protocol

Integration

Phase Skills (self-documenting):

  • pm-workflow:phase-1-init - Initializes plan
  • pm-workflow:phase-2-outline - Creates solution outline, loads outline extensions
  • pm-workflow:phase-3-plan - Creates tasks from deliverables
  • pm-workflow:phase-4-execute - Coordinates execution, delegates to profile skills
  • pm-workflow:phase-5-finalize - Verifies, loads triage extensions, commits

Profile Resolution:

  • plan-marshall:manage-plan-marshall-config resolve-workflow-skill - Resolves profile skill with fallback

Extension Discovery:

  • plan-marshall:extension-api - ExtensionBase with provides_*() methods
  • plan-marshall:manage-plan-marshall-config resolve-workflow-skill-extension - Resolves extensions

Visual Overview:

Score

Total Score

70/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon