skill-dev-workflow

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Skill Development Workflow

Skill开发工作流

Orchestrate the full lifecycle of creating a skill for the CaldiaWorks marketplace. This skill is specific to the CaldiaWorks Skills repository.
为CaldiaWorks marketplace编排技能创建的完整生命周期。本技能专为CaldiaWorks Skills仓库设计。

Mandatory Execution Rule

强制执行规则

Each invoked skill defines its own internal steps. Every internal step of every invoked skill must be executed in order without exception. Do not skip, merge, or silently omit any step -- even if the step seems trivial or the answer seems obvious.
If a step requires user input or confirmation, ask. If a step produces output, present it. Violating this rule degrades quality and erodes user trust.
每个被调用的技能都定义了自己的内部步骤。所有被调用技能的每一个内部步骤都必须按顺序执行,不得例外。 请勿跳过、合并或悄悄省略任何步骤——即使步骤看似无关紧要或答案显而易见。
如果某一步需要用户输入或确认,请询问用户。如果某一步产生输出,请展示该输出。违反此规则会降低质量并损害用户信任。

Partial Workflow Entry

部分工作流切入

If the user already has artifacts from earlier steps, skip completed steps:
Existing ArtifactStart From
Idea documentStep 2: Issue Creation
Issue numberStep 3: Planning
Plan documentStep 4: Branch Creation
USDM requirements documentStep 6: Skill Implementation
Ask the user what artifacts they already have before starting.
如果用户已经拥有前期步骤生成的成果,可以跳过已完成的步骤:
已有成果从哪一步开始
构思文档步骤2:创建Issue
Issue编号步骤3:规划
规划文档步骤4:创建分支
USDM需求文档步骤6:技能实现
开始前请询问用户已拥有哪些成果。

Workflow Steps

工作流步骤

Execute these 9 steps in order. After each step completes, ask the user whether to proceed to the next step.
按顺序执行以下9个步骤。每一步完成后,询问用户是否继续下一步。

Step 1: Ideation

步骤1:构思

Invoke the
ideation
skill.
  • Input: User's rough idea or problem description
  • Output: Idea document at
    .docs/ideas/YYYY-MM-DD-<topic>.md
  • Pass the idea document path to Step 5 (USDM)
调用
ideation
技能。
  • 输入:用户的初步想法或问题描述
  • 输出:存储在
    .docs/ideas/YYYY-MM-DD-<topic>.md
    的构思文档
  • 将构思文档路径传递至步骤5(USDM)

Step 2: Issue Creation (Parent Issue)

步骤2:创建Issue(父Issue)

Invoke the
issue-create
skill in standalone mode.
  • Input: Summary from the idea document
  • Output: GitHub Issue number and URL
  • Pass the issue number to Step 3 (Planning)
以独立模式调用
issue-create
技能。
  • 输入:构思文档中的摘要
  • 输出:GitHub Issue编号和URL
  • 将Issue编号传递至步骤3(规划)

Step 3: Planning

步骤3:规划

Invoke the
planning
skill.
  • Input: The parent issue number from Step 2
  • Output: Plan document at
    .docs/plans/YYYY-MM-DD-<topic>.md
  • Pass the plan document and first work unit's issue numbers to Step 4
Update the plan document: set the first work unit's Status to
In Progress
.
调用
planning
技能。
  • 输入:步骤2中的父Issue编号
  • 输出:存储在
    .docs/plans/YYYY-MM-DD-<topic>.md
    的规划文档
  • 将规划文档和第一个工作单元的Issue编号传递至步骤4
更新规划文档:将第一个工作单元的状态设置为
In Progress
(进行中)。

Step 4: Branch Creation

步骤4:创建分支

Invoke the
branch-create
skill.
  • Input: Issue number and description from the plan's first work unit
  • Output: Feature branch name
Update the plan document: set the work unit's Branch to the created branch name.
调用
branch-create
技能。
  • 输入:规划中第一个工作单元的Issue编号和描述
  • 输出:功能分支名称
更新规划文档:将该工作单元的分支字段设置为创建的分支名称。

Step 5: Requirements Definition (USDM)

步骤5:需求定义(USDM)

Invoke the
usdm
skill.
  • Input: The idea document from Step 1
  • Output: USDM requirements document at
    .docs/REQ-DOC-*.md
After USDM completes, invoke the
issue-create
skill in USDM mode to create requirement sub-issues:
  • Input: USDM document path + parent issue number from Step 2
  • This creates all REQ issues as sub-issues with SPECs in the body
调用
usdm
技能。
  • 输入:步骤1中的构思文档
  • 输出:存储在
    .docs/REQ-DOC-*.md
    的USDM需求文档
USDM完成后,以USDM模式调用
issue-create
技能来创建需求子Issue:
  • 输入:USDM文档路径 + 步骤2中的父Issue编号
  • 此操作会创建所有REQ Issue作为父Issue的子Issue,并在Issue正文中包含SPEC内容

Step 6: Skill Implementation

步骤6:技能实现

Invoke the
skill-creator
skill.
  • Input: The USDM requirements document from Step 5
  • Output: Complete skill directory under
    skills/<skill-name>/
  • The skill must include
    SKILL.md
    with frontmatter and
    .claude-plugin/plugin.json
After
skill-creator
completes:
  1. Verify the new skill's
    .claude-plugin/plugin.json
    exists.
  2. Add the skill path to both
    .claude-plugin/plugin.json
    and
    .claude-plugin/marketplace.json
    .
  3. Bump the version in both manifest files to the same value.
调用
skill-creator
技能。
  • 输入:步骤5中的USDM需求文档
  • 输出:存储在
    skills/<skill-name>/
    下的完整技能目录
  • 技能必须包含带前置元数据的
    SKILL.md
    文件以及
    .claude-plugin/plugin.json
    文件
skill-creator
完成后:
  1. 验证新技能的
    .claude-plugin/plugin.json
    文件是否存在。
  2. 将技能路径添加至
    .claude-plugin/plugin.json
    .claude-plugin/marketplace.json
    两个文件中。
  3. 将这两个清单文件中的版本号更新为相同的值。

Step 7: Commit

步骤7:代码提交

Invoke the
commit
skill.
  • Input: All changes from Steps 4-6
  • Commits may be made multiple times during implementation for safety
调用
commit
技能。
  • 输入:步骤4至步骤6中的所有变更
  • 为了安全起见,在实现过程中可以多次提交代码

Step 8: Pull Request

步骤8:创建Pull Request

Invoke the
pull-request
skill.
  • Input: The feature branch with all commits
  • Output: PR number and URL
After the PR is merged or the user confirms completion, update the plan document: set the work unit's Status to
Done
.
调用
pull-request
技能。
  • 输入:包含所有提交的功能分支
  • 输出:PR编号和URL
PR合并或用户确认完成后,更新规划文档:将该工作单元的状态设置为
Done
(已完成)。

Step 9: Issue Cleanup

步骤9:Issue清理

After the PR is merged, close all remaining open sub-issues under the parent issue.
  1. List open sub-issues of the parent issue:
    gh sub-issue list <parent-issue-number>
  2. For each open sub-issue, recursively list and close its own sub-issues first (bottom-up).
  3. Close each open sub-issue with a comment referencing the merged PR.
This is necessary because
Resolves #N
in commit messages only auto-closes the directly referenced issues. Sub-issues created from USDM requirements (sub-REQs) are not auto-closed and must be closed explicitly.
PR合并后,关闭父Issue下所有剩余的未闭合子Issue。
  1. 列出父Issue下的未闭合子Issue:
    gh sub-issue list <parent-issue-number>
  2. 对于每个未闭合的子Issue,先递归列出并关闭其自身的子Issue(自底向上)。
  3. 关闭每个未闭合的子Issue,并在评论中引用已合并的PR。
这一步是必要的,因为提交消息中的
Resolves #N
只会自动关闭直接引用的Issue。从USDM需求创建的子Issue(子REQ)不会被自动关闭,必须手动显式关闭。

Plan Progress Tracking

规划进度跟踪

Throughout the workflow, keep the plan document up to date:
EventUpdate
Work unit beginsStatus:
Pending
->
In Progress
Branch createdBranch:
TBD
-> branch name
PR merged or user confirms completionStatus:
In Progress
->
Done
在整个工作流过程中,保持规划文档的更新:
事件更新内容
工作单元开始状态:
Pending
(待处理)→
In Progress
(进行中)
分支创建完成分支:
TBD
(待定)→ 分支名称
PR合并或用户确认完成状态:
In Progress
(进行中)→
Done
(已完成)

Before Finishing

结束前检查

After the workflow completes (or when the user stops at any step), verify nothing is left behind:
  • Open issues? Are there sub-issues under the parent issue that should be closed? Step 9 handles this after merge, but if the workflow is interrupted earlier, flag any open issues to the user.
  • Uncommitted changes? Run
    git status
    to check for changes that were not included in the final commit.
  • Plan up to date? Does the plan document reflect the actual state of all work units (Status and Branch columns)?
工作流完成后(或用户在任意步骤停止时),检查是否有遗漏事项:
  • 未闭合的Issue? 父Issue下是否有应该关闭的子Issue?步骤9会在合并后处理此问题,但如果工作流提前中断,请向用户标记所有未闭合的Issue。
  • 未提交的变更? 运行
    git status
    检查是否有未包含在最终提交中的变更。
  • 规划文档是否更新? 规划文档是否反映了所有工作单元的实际状态(状态和分支列)?

Constraints

约束条件

  • This skill is specific to the CaldiaWorks Skills repository.
  • Always follow the project's git workflow: feature branches, squash merge, no direct commits to main.
  • Do not skip marketplace registration after skill creation.
  • 本技能专为CaldiaWorks Skills仓库设计。
  • 始终遵循项目的Git工作流:功能分支、压缩合并、禁止直接提交至main分支。
  • 技能创建完成后请勿跳过市场注册步骤。