跳到正文
cccskills
免费在 GitHub 公开

factory-spec

Turn a ready-to-spec queue item into an approved plan through explicit human gates. Use when an item needs scope decided before code exists, when planning a feature, or before starting a migration. Runs interactively - not for unattended routines.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md4.8 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Factory spec

This skill exists because the cheapest place to fix a decision is before any code encodes it. Once a model has written a thousand lines, changing direction is expensive and every instinct is to patch instead.

This skill is interactive. It stops and waits for a human. Do not run it inside an unattended routine; a routine that approves its own spec has no gates at all.

Read docs/factory/CONTRACT.md and docs/factory/CHARTER.md before gate 1.

Gates

Four, in order. Stop at each one. Never merge two gates into a single pass. Never proceed on an inferred approval: "looks good" on gate 1 is not approval of gate 2.

Write each gate's output into docs/factory/specs/FQ-<n>/ as its own file, and track approvals in docs/factory/specs/FQ-<n>/00-status.md.

Gate 1 - Product (01-product.md)

No technical content whatsoever. If you find yourself naming a file or a function, you are in the wrong gate.

  • The user problem, stated as a person's problem
  • What success looks like, measurably
  • A short announcement written as if the change already shipped
  • Plain HTML mockups for any screen involved, in mockups/
  • What we are deliberately not doing

That last item is the one people skip and the one that saves the most time. It is also where the kill decision lives: if the honest answer to "should this exist" is no, this gate is where that is cheap to say.

STOP. Ask for approval.

Gate 2 - Architecture (02-architecture.md)

  • Which existing systems and modules this touches
  • New endpoints, data structures, and their shapes
  • The end-to-end call flow, in order
  • External dependencies, and whether each is genuinely required
  • Which LOAD_BEARING paths are involved
  • What could break elsewhere

STOP. Ask for approval. For anything touching a load-bearing path, also run the factory-critic subagent against this document before asking, and include its output.

Gate 3 - Program design (03-design.md)

  • Exact file paths, new and modified
  • Type signatures and function contracts, no implementations
  • The call stack for the main flow
  • The test list: what will be tested and what each test proves
  • The three decisions you are least confident about

That last section is the highest-value part of this gate. It is where a reviewer can intervene before the uncertainty is buried under working code.

STOP. Ask for approval.

Gate 4 - Slices (04-slices.md)

Decompose into vertical slices. Each slice must be independently shippable, independently testable, and small enough to review in one sitting.

  • Slice 0 is a tracer bullet: end to end, mostly mocked, proving the shape works.
  • Each later slice replaces one mock with real behavior.
  • Each slice gets its own queue entry with its own done_when.

Once approved, create or update one GitHub issue per slice and apply factory:ready-to-implement. Create or update its factory-handoff:v1 comment with the approved done_when, expected files, gate level, and confidence. Also write each slice into the QUEUE.md snapshot. The issue label and comment are the handoff back to the unattended part of the factory.

STOP. Ask for approval before writing the queue entries.

After the approved handoff, write a unique spec run record under docs/factory/runs/.

Status file

00-status.md tracks state so the spec survives a context reset or a week away:

item: FQ-<n>
gate_1_product: approved 2026-08-16 | pending | rejected
gate_2_architecture: pending
gate_3_design: not-started
gate_4_slices: not-started
slices_completed: 0 / ?
open_questions:
  - <anything blocking, with who owns the answer>

For migrations specifically

If this spec covers a migration, gate 2 must answer one question before anything else:

What is the oracle?

An old or unlaunched project usually has the thinnest test coverage in the portfolio, which means a migration can compile, typecheck, pass every existing test, and still behave differently. Green does not mean equivalent.

So the first slices are not migration slices:

  1. Make it build on the current stack
  2. Make it typecheck
  3. Pin current behavior with characterization tests and golden-master snapshots
  4. Only then migrate, wide and fast, against the oracle you just built

This inverts the usual reading of back-pressure. Instead of accepting the verification budget you have and limiting autonomy to match, you go build a bigger budget first and claim the autonomy it buys. Each of those four steps is itself a clean factory job.

If gate 2 cannot name the oracle, the migration is not ready and no amount of agent throughput fixes that.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Claim and implement one ready GitHub issue, run fail-closed gates, obtain independent verification, and open a draft pull request.

中文简介正在准备中。当前显示原文说明。

addyosmani/factory2852026年8月22日 更新

Claim one live GitHub queue item, implement it end to end, run fail-closed gates and independent verification, then open a draft PR. Use for one ready-to-implement issue or the implementation routine.

中文简介正在准备中。当前显示原文说明。

addyosmani/factory2852026年8月22日 更新

Scheduled health sweep that closes the factory loop - reads CI failures, recent commits, dependency and security advisories, and live queue labels, then files issues and writes an immutable run record. Use for the nightly or weekly monitor routine.

中文简介正在准备中。当前显示原文说明。

addyosmani/factory2852026年8月22日 更新

Inspect factory health, stale work, CI, security advisories, and recent run evidence without implementing fixes.

中文简介正在准备中。当前显示原文说明。

addyosmani/factory2852026年8月22日 更新

Turn an ambiguous factory issue into human-approved product, behavior, design, and implementation slices. Use interactively before implementation.

中文简介正在准备中。当前显示原文说明。

addyosmani/factory2852026年8月22日 更新

Show the factory control room from live GitHub labels, open PRs, recent run records, gate health, and charter limits.

中文简介正在准备中。当前显示原文说明。

addyosmani/factory2852026年8月22日 更新

查看 addyosmani 的全部技能

报告此技能的问题