mcpField
C
charted-scaffold

charted-scaffold

github.com/marmicode开发1359 次安装5 周前更新
代码仓库

关于 charted-scaffold

charted-scaffold 是一项开发技能,可根据设计文档生成 WIP 实现代码,并可限定到指定 PR。它保留现有行为,将未完成的新增内容标记为已弃用的 WIP,而不实现新行为。

主要功能

  1. 01根据设计文档生成 WIP 代码
  2. 02可限定 PR 范围
  3. 03将新增内容标记为已弃用的 WIP
  4. 04保留现有行为
  5. 05按设计步骤创建待办测试

适用场景

  1. 01根据设计文档搭建实现框架
  2. 02将搭建工作限定到某个 PR
  3. 03把设计测试步骤记录为待办测试

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/marmicode/skills --skill charted-scaffold

安装后在 Claude Code 中输入/charted-scaffold确认已加载。

详细介绍

上下文

  • designDocPath:$ARGUMENTS[0]
  • prNumber:$ARGUMENTS[1]

任务

根据以下设计文档 ${designDocPath},编写用于实现设计文档中所述内容的 WIP 代码。

  • 如果提供了 PR #${prNumber},则只关注该 PR。
  • 如果添加新类、函数或方法,请让其抛出 "🚧 work in progress" 错误,并在其 jsdoc 中添加 "@deprecated 🚧 work in progress" 标签。
  • 如果添加新组件,请在其 jsdoc 中添加 "@deprecated 🚧 work in progress" 标签,但不要实现模板或方法。
  • 不要添加任何新行为。
    • 例如,不要在组件中添加子组件。
  • 不要更改任何现有行为:
    • 如果以向后兼容的方式更改函数或方法签名,不要让其抛出 "🚧 work in progress" 错误。
    • 如果函数或方法新增了一个可选参数,请在设置该参数时让其抛出 "🚧 work in progress" 错误。
    • 即使 PR 的目标是更改现有函数或方法的行为,也不要让其抛出 "🚧 work in progress" 错误。保留现有行为。
  • 对于 WIP 测试,请将设计文档中的测试步骤原样放在 "it.todo" 测试主体内的注释中。

示例

WIP 类示例
/**
 * @deprecated 🚧 work in progress
 */
class Greetings {
  hello() {
    throw new Error(`🚧 work in progress`);
  }
}
WIP 方法示例
class Greetings {
  /**
   * @deprecated 🚧 work in progress
   */
  hello() {
    throw new Error(`🚧 work in progress`);
  }
}
WIP 组件
/**
 * @deprecated 🚧 work in progress
 */
@Component({
  changeDetection: ChangeDetectionStrategy.OnPush,
  selector: "wm-rules",
  template: `Rules - 🚧 work in progress`,
})
class Rules {
  rules = input.required<Rule[]>();
  ruleSelect = output<Rule>();
}
WIP 测试示例

注意:测试名称以小写字母开头(例如 "search rules ...")。

import { describe, it } from "vitest";

describe(RuleSearch.name, () => {
  it.todo("search rules without filtering", () => {
    // mount RuleSearch
    // click on first rule
    // assert output was triggered once
  });

  it.todo("...", () => {
    // ...
  });
});

评论

支持 Markdown