Spec-driven development
Spec-driven development

Biến request thành contract, rồi mới thành code đã verify.

CafeKit đưa phần quan trọng ra khỏi chat. Assistant viết contract trước, implement một task packet đã approve, sau đó prove bằng evidence và sync state.

01
Request

Người dùng yêu cầu một thay đổi.

02
Spec

Scope C1/C2, plan và flat tasks thành file bền vững.

03
Develop

Assistant implement một task packet đã approve.

04
Verify

Command thật và runtime proof kiểm tra kết quả.

05
Review

Một pass riêng kiểm tra compliance và risk.

06
Sync

State chỉ được chuyển khi đã có evidence.

Bản đơn giản#

Spec là contract bền vững, không phải chat memory. New work lưu contract trong specs/<feature>/plan.md và flat task-NN-*.md.

Vòng lặp CafeKit muốn mọi feature đi theo
1. Specify

Viết rõ điều cần xảy ra trước khi sửa code.

2. Build hẹp

Chỉ implement đúng boundary của task đã approve.

3. Prove

Chạy command và ghi lại evidence chính xác.

4. Sync state

Update task Status và inline Receipt sau khi có proof.

Mỗi artifact trả lời gì#

Bên trong specs/<feature>/ có gì
plan.md

Scope C1/C2 đã duyệt, task index, ownership, dependencies và completion boundary.

task-NN-*.md

Một flat task gồm Outcome, Scope, Acceptance và Verification Plan.

inline Receipt

Exact command, exit, Base/Head hiện tại và current output không rỗng.

ArtifactCâu hỏi
plan.mdOutcome, scope, exclusions, acceptance, decisions và task map nào đã được duyệt?
task-NN-*.mdMột outcome nào executable, ai sở hữu và exact proof nào bắt buộc?
Final inline ## ReceiptCommand và current output nào chứng minh task pass?

Working rule#

  1. Chỉ brainstorm khi intent hoặc architecture chưa giải quyết.
  2. Specs mở C1, viết plan/tasks rồi trình C2 findings.
  3. Planning dừng; chỉ bắt đầu bằng invocation develop mới.
  4. Develop chạy một unblocked task; test và code review verify.
  5. Sync chỉ Status/proof đã quan sát; user quyết định completion tại C3.
Khác gì với prompt bình thường
Ad-hoc prompting
Chat là source of truth
Scope đổi âm thầm
Assistant đoán phần còn thiếu
Review chỉ nhìn diff cuối
CafeKit SDD
File trong repo là source of truth
Scope C1 bắt thay đổi phải explicit
Thiếu chi tiết thì quay lại plan
Review so code với contract

Dùng full path cho work đáng kể, risk cao, multi-file, runtime, data, auth, package hoặc cần handoff. Clear isolated routine change một-hai file có thể làm trực tiếp.

Đọc Workflow chínhVòng đời spec.