@oevery/rsp 1.2.0 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +99 -43
- package/README.zh-CN.md +99 -49
- package/dist/cli.mjs +1341 -926
- package/package.json +8 -5
- package/rules/rsp-rules.md +80 -82
- package/skills/rsp/SKILL.md +138 -0
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
English | [简体中文](./README.zh-CN.md)
|
|
4
4
|
|
|
5
|
-
RSP = **Rules, Specs, Plans**. A lightweight AI-assisted workflow for project
|
|
5
|
+
RSP = **Rules, Specs, Plans**. A lightweight AI-assisted workflow for durable project knowledge and single-file change tracking.
|
|
6
6
|
|
|
7
7
|
## Quick start
|
|
8
8
|
|
|
@@ -15,7 +15,7 @@ Recommended bootstrap flow:
|
|
|
15
15
|
|
|
16
16
|
```bash
|
|
17
17
|
npx -y @oevery/rsp init --with-project-setup
|
|
18
|
-
# fill .rsp/
|
|
18
|
+
# fill .rsp/changes/project-setup.md
|
|
19
19
|
# fill .rsp/specs/design.md
|
|
20
20
|
npx -y @oevery/rsp doctor
|
|
21
21
|
```
|
|
@@ -23,9 +23,9 @@ npx -y @oevery/rsp doctor
|
|
|
23
23
|
## Core idea
|
|
24
24
|
|
|
25
25
|
- `rules/` stores durable constraints.
|
|
26
|
-
- `specs/` stores project-level
|
|
27
|
-
- `
|
|
28
|
-
- `
|
|
26
|
+
- `specs/` stores project-level source-of-truth docs.
|
|
27
|
+
- `changes/` stores open work in a single-file format.
|
|
28
|
+
- `focus.d/` mirrors current focused changes with empty marker files.
|
|
29
29
|
- `archives/` stores completed work.
|
|
30
30
|
|
|
31
31
|
```text
|
|
@@ -36,22 +36,31 @@ npx -y @oevery/rsp doctor
|
|
|
36
36
|
├── specs/
|
|
37
37
|
│ ├── INDEX.md # auto-generated
|
|
38
38
|
│ └── design.md
|
|
39
|
-
├──
|
|
39
|
+
├── changes/
|
|
40
40
|
│ └── <name>.md
|
|
41
|
-
├──
|
|
41
|
+
├── focus.d/
|
|
42
42
|
│ └── <name>
|
|
43
43
|
└── archives/
|
|
44
44
|
└── INDEX.md # auto-generated
|
|
45
45
|
```
|
|
46
46
|
|
|
47
|
+
## Concepts
|
|
48
|
+
|
|
49
|
+
- `specs/` describes durable project facts and current agreed design.
|
|
50
|
+
- `changes/` captures open work, including features, fixes, refactors, docs, ops, and research.
|
|
51
|
+
- A change is always a single Markdown file with explicit sections for proposal, spec, design, tasks, verification, and blockers.
|
|
52
|
+
- Completed changes move to `archives/`, while durable outcomes should be reflected in `specs/` or `rules/` before archiving.
|
|
53
|
+
- Durable outcomes mean stable facts only. Do not promote task history, debugging notes, or one-off implementation context into `specs/` or `rules/`.
|
|
54
|
+
|
|
47
55
|
## File ownership
|
|
48
56
|
|
|
49
57
|
- `AGENTS.md`: only the `<!-- rsp:begin --> ... <!-- rsp:end -->` block is managed by RSP.
|
|
50
|
-
- `.rsp/specs/INDEX.md`: auto-generated. Rebuild with `rsp
|
|
51
|
-
- `.rsp/archives/INDEX.md`: auto-generated. Rebuild with `rsp
|
|
58
|
+
- `.rsp/specs/INDEX.md`: auto-generated index of additional spec files beyond `design.md`. Rebuild with `rsp update`.
|
|
59
|
+
- `.rsp/archives/INDEX.md`: auto-generated. Rebuild with `rsp update`.
|
|
52
60
|
- `.rsp/specs/design.md`: created by `rsp init`, then owned by the project.
|
|
53
61
|
- `.rsp/rules/project-rules.md`: optional; create only when the project has durable local rules.
|
|
54
62
|
- Keep durable architecture, boundaries, and cross-cutting technical constraints in `.rsp/specs/design.md`.
|
|
63
|
+
- Treat `.rsp/specs/INDEX.md` as a directory for additional spec files; it does not list `design.md`.
|
|
55
64
|
- Keep stable workflow rules, validation expectations, and local operating constraints in `.rsp/rules/project-rules.md`.
|
|
56
65
|
|
|
57
66
|
## AGENTS integration
|
|
@@ -63,47 +72,101 @@ Managed block example:
|
|
|
63
72
|
## RSP Entry
|
|
64
73
|
|
|
65
74
|
Read in order:
|
|
66
|
-
1. .rsp/rules
|
|
67
|
-
2. .rsp/
|
|
68
|
-
3. .rsp/
|
|
69
|
-
4. .rsp/
|
|
75
|
+
1. .rsp/rules/rsp-rules.md
|
|
76
|
+
2. .rsp/focus.d/
|
|
77
|
+
3. matching .rsp/changes/*.md for the focused entries
|
|
78
|
+
4. .rsp/specs/design.md
|
|
79
|
+
5. .rsp/specs/INDEX.md
|
|
80
|
+
6. only the relevant additional .rsp/rules/*.md and .rsp/specs/*.md files
|
|
70
81
|
<!-- rsp:end -->
|
|
71
82
|
```
|
|
72
83
|
|
|
73
84
|
`rsp init --agents-mode <mode>`:
|
|
74
85
|
|
|
75
|
-
- `managed`: insert/update the managed block
|
|
76
|
-
- `
|
|
77
|
-
- `print`: scaffold `.rsp/` and print the managed block.
|
|
86
|
+
- `managed`: create `AGENTS.md` when needed and insert/update the managed block.
|
|
87
|
+
- `print`: initialize normally and also print the resulting `AGENTS.md` content.
|
|
78
88
|
|
|
79
89
|
## Skill
|
|
80
90
|
|
|
81
91
|
Use `skills/rsp/SKILL.md` for step-by-step setup, workflow, and auditing guidance. It is intended for on-demand loading rather than always-on core rules.
|
|
82
92
|
|
|
93
|
+
Reading guidance:
|
|
94
|
+
|
|
95
|
+
- `README.md`: human-oriented overview and examples
|
|
96
|
+
- `.rsp/rules/rsp-rules.md`: canonical rules source
|
|
97
|
+
- `skills/rsp/SKILL.md`: operational guide for applying those rules with an agent
|
|
98
|
+
|
|
99
|
+
Surface matrix:
|
|
100
|
+
|
|
101
|
+
| Surface | Primary audience | Role |
|
|
102
|
+
|---|---|---|
|
|
103
|
+
| `README.md` | Humans | Overview, onboarding, examples |
|
|
104
|
+
| `.rsp/rules/rsp-rules.md` | Agents | Canonical normative rules source |
|
|
105
|
+
| `skills/rsp/SKILL.md` | Agents | Operational guide for applying the rules |
|
|
106
|
+
| `AGENTS.md` | Humans and agents | Navigation entrypoint into the right files |
|
|
107
|
+
|
|
108
|
+
Humans should usually start with `README.md`; agents should treat `.rsp/rules/rsp-rules.md` as normative.
|
|
109
|
+
|
|
110
|
+
When this README shows `rsp <command>`, it assumes the command is already available in your environment. Otherwise use `npx -y @oevery/rsp <command>`.
|
|
111
|
+
|
|
83
112
|
Example optional installation flow:
|
|
84
113
|
|
|
85
114
|
```bash
|
|
86
|
-
npx skills add oevery/rsp
|
|
115
|
+
npx skills add oevery/rsp
|
|
87
116
|
```
|
|
88
117
|
|
|
89
118
|
This repository publishes a skill named `rsp` under `skills/rsp/`.
|
|
90
119
|
|
|
91
|
-
|
|
120
|
+
`rsp update` refreshes project-local RSP files only. If you use the published RSP skill, refresh it separately after upgrading:
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
npx skills add oevery/rsp
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Work Model
|
|
127
|
+
|
|
128
|
+
```text
|
|
129
|
+
open → archived
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
Directory roles are intentionally single-purpose:
|
|
133
|
+
|
|
134
|
+
- `changes/`: open changes
|
|
135
|
+
- `focus.d/`: currently focused changes
|
|
136
|
+
- `archives/`: completed history
|
|
137
|
+
|
|
138
|
+
Inside `open`, typical work includes:
|
|
139
|
+
|
|
140
|
+
- `create`: create and scope a change.
|
|
141
|
+
- `focus` / `unfocus`: decide which open change is currently foregrounded.
|
|
142
|
+
- Edit the change file directly — fill sections, mark tasks, write design decisions.
|
|
143
|
+
- Review whether durable updates are needed before archive.
|
|
144
|
+
|
|
145
|
+
`archive` moves completed work into history. Archive never blocks — it warns but leaves the final decision to the agent or human.
|
|
146
|
+
|
|
147
|
+
Agents should treat only entries in `focus.d/` as current work. Unfocused files in `changes/` are still open, but should not be treated as the current target unless the user explicitly asks for them or they are re-focused.
|
|
148
|
+
|
|
149
|
+
The durable update decision (whether the change produced knowledge that belongs in `.rsp/specs/` or `.rsp/rules/`) is a semantic choice made by the RSP skill or a human reviewer.
|
|
92
150
|
|
|
93
151
|
## Recommended workflow
|
|
94
152
|
|
|
95
153
|
New project:
|
|
96
154
|
|
|
97
155
|
1. `npx -y @oevery/rsp init`
|
|
98
|
-
2. Prefer `npx -y @oevery/rsp init --with-project-setup`, or run `rsp
|
|
156
|
+
2. Prefer `npx -y @oevery/rsp init --with-project-setup`, or run `rsp create project-setup` manually
|
|
99
157
|
3. Fill `.rsp/specs/design.md`
|
|
100
158
|
4. Use `rsp add spec <name>` only when a new durable project doc is needed
|
|
101
159
|
5. Use `rsp add rules project-rules` only when the project has stable local rules
|
|
102
|
-
6. Start work with `rsp
|
|
160
|
+
6. Start work with `rsp create <name>`
|
|
161
|
+
7. If you want an existing open change to become current work, use `rsp focus <name>`
|
|
162
|
+
8. Use `rsp unfocus <name>` when you want to remove a change from the current focus set
|
|
163
|
+
9. Edit the change file directly to implement the work and mark tasks complete
|
|
164
|
+
10. Use the RSP skill or a human review to decide whether durable updates are needed
|
|
165
|
+
11. Finish with `rsp archive <name>`
|
|
103
166
|
|
|
104
167
|
Existing project with a rich `AGENTS.md`:
|
|
105
168
|
|
|
106
|
-
1. `npx -y @oevery/rsp init
|
|
169
|
+
1. `npx -y @oevery/rsp init`
|
|
107
170
|
2. Keep the managed block thin
|
|
108
171
|
3. Move durable design into `.rsp/specs/design.md`
|
|
109
172
|
4. Use `rsp add spec <name>` or `rsp add rules <name>` only when needed
|
|
@@ -111,38 +174,31 @@ Existing project with a rich `AGENTS.md`:
|
|
|
111
174
|
AI-assisted setup:
|
|
112
175
|
|
|
113
176
|
1. `npx -y @oevery/rsp init --agents-mode print --with-project-setup`
|
|
114
|
-
2.
|
|
115
|
-
3. Have the AI review and fill `.rsp/
|
|
177
|
+
2. Keep the managed block as generated and adapt only the surrounding human-owned content if needed
|
|
178
|
+
3. Have the AI review and fill `.rsp/changes/project-setup.md`
|
|
116
179
|
4. Have the AI fill `.rsp/specs/design.md`
|
|
117
180
|
5. Run `rsp doctor`
|
|
118
181
|
|
|
119
182
|
## CLI
|
|
120
183
|
|
|
121
184
|
```text
|
|
122
|
-
rsp init --agents-mode <mode> Scaffold .rsp/
|
|
123
|
-
rsp init --with-project-setup Also create .rsp/
|
|
185
|
+
rsp init --agents-mode <mode> Scaffold .rsp/ and ensure AGENTS.md contains the RSP entry block
|
|
186
|
+
rsp init --with-project-setup Also create .rsp/changes/project-setup.md
|
|
187
|
+
rsp update Refresh rules, repair the AGENTS block, and rebuild indices after upgrade
|
|
124
188
|
rsp add rules <name> Create .rsp/rules/<name>.md
|
|
125
189
|
rsp add spec <name> Create .rsp/specs/<name>.md and rebuild specs index
|
|
126
|
-
rsp
|
|
127
|
-
rsp
|
|
128
|
-
rsp
|
|
129
|
-
|
|
130
|
-
rsp
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
rsp doctor
|
|
134
|
-
|
|
135
|
-
rsp archive-index Rebuild archives INDEX.md
|
|
190
|
+
rsp create <name> [summary] Create .rsp/changes/<name>.md
|
|
191
|
+
rsp focus <name> Mark an open change as currently focused
|
|
192
|
+
rsp unfocus <name> Remove an open change from the current focus set
|
|
193
|
+
rsp archive <name> Archive to .rsp/archives/ + update archive index
|
|
194
|
+
rsp status [--focused|--blocked|--stale <days>] [--json] [--verbose]
|
|
195
|
+
Show project status summary with focus-aware filters
|
|
196
|
+
rsp check [--json] [--verbose] Validate change files and lightly lint scenario structure
|
|
197
|
+
rsp doctor [--json] [--verbose]
|
|
198
|
+
Check setup health and common issues
|
|
136
199
|
```
|
|
137
200
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
`rsp doctor` is read-only.
|
|
141
|
-
|
|
142
|
-
- Checks `.rsp/`, `rules/rsp-rules.md`, `specs/design.md`, `specs/INDEX.md`, `archives/INDEX.md`, and the managed `AGENTS.md` block.
|
|
143
|
-
- Verifies generated index signatures.
|
|
144
|
-
- Verifies `active.d` markers and `features/` are in sync.
|
|
145
|
-
- Exits non-zero when issues are found.
|
|
201
|
+
For exact rules, use `.rsp/rules/rsp-rules.md`. For operational durable-decision guidance, use `skills/rsp/SKILL.md`.
|
|
146
202
|
|
|
147
203
|
## Platform-agnostic
|
|
148
204
|
|
package/README.zh-CN.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[English](./README.md) | 简体中文
|
|
4
4
|
|
|
5
|
-
RSP = **Rules
|
|
5
|
+
RSP = **Rules、Specs、Plans**。这是一个面向长期项目知识与单文件 change 跟踪的轻量级 AI 协作工作流。
|
|
6
6
|
|
|
7
7
|
## 快速开始
|
|
8
8
|
|
|
@@ -15,17 +15,17 @@ npx -y @oevery/rsp doctor
|
|
|
15
15
|
|
|
16
16
|
```bash
|
|
17
17
|
npx -y @oevery/rsp init --with-project-setup
|
|
18
|
-
# 填写 .rsp/
|
|
18
|
+
# 填写 .rsp/changes/project-setup.md
|
|
19
19
|
# 填写 .rsp/specs/design.md
|
|
20
20
|
npx -y @oevery/rsp doctor
|
|
21
21
|
```
|
|
22
22
|
|
|
23
|
-
##
|
|
23
|
+
## 核心思路
|
|
24
24
|
|
|
25
25
|
- `rules/` 存放长期稳定的约束。
|
|
26
|
-
- `specs/`
|
|
27
|
-
- `
|
|
28
|
-
- `
|
|
26
|
+
- `specs/` 存放项目级 source-of-truth 文档。
|
|
27
|
+
- `changes/` 以单文件格式存放 open work。
|
|
28
|
+
- `focus.d/` 用空标记文件镜像当前聚焦的 changes。
|
|
29
29
|
- `archives/` 存放已完成工作。
|
|
30
30
|
|
|
31
31
|
```text
|
|
@@ -36,22 +36,31 @@ npx -y @oevery/rsp doctor
|
|
|
36
36
|
├── specs/
|
|
37
37
|
│ ├── INDEX.md # 自动生成
|
|
38
38
|
│ └── design.md
|
|
39
|
-
├──
|
|
39
|
+
├── changes/
|
|
40
40
|
│ └── <name>.md
|
|
41
|
-
├──
|
|
41
|
+
├── focus.d/
|
|
42
42
|
│ └── <name>
|
|
43
43
|
└── archives/
|
|
44
44
|
└── INDEX.md # 自动生成
|
|
45
45
|
```
|
|
46
46
|
|
|
47
|
+
## 概念
|
|
48
|
+
|
|
49
|
+
- `specs/` 描述长期稳定的项目事实和当前认可的设计。
|
|
50
|
+
- `changes/` 描述 open work,包括 feature、fix、refactor、docs、ops 和 research。
|
|
51
|
+
- 每个 change 始终是单个 Markdown 文件,并包含 proposal、spec、design、tasks、verification 与 blockers 等明确 section。
|
|
52
|
+
- 完成后的 change 会移动到 `archives/`;若变更产出了长期知识,应在归档前同步写入 `specs/` 或 `rules/`。
|
|
53
|
+
- 所谓长期知识,只应包含稳定事实;不要把任务历史、排障笔记或一次性实现上下文提升到 `specs/` 或 `rules/`。
|
|
54
|
+
|
|
47
55
|
## 文件所有权
|
|
48
56
|
|
|
49
57
|
- `AGENTS.md`:只有 `<!-- rsp:begin --> ... <!-- rsp:end -->` 受管块由 RSP 维护。
|
|
50
|
-
- `.rsp/specs/INDEX.md
|
|
51
|
-
- `.rsp/archives/INDEX.md`:自动生成,使用 `rsp
|
|
58
|
+
- `.rsp/specs/INDEX.md`:自动生成,用于索引 `design.md` 之外的附加 spec 文件;使用 `rsp update` 重建。
|
|
59
|
+
- `.rsp/archives/INDEX.md`:自动生成,使用 `rsp update` 重建。
|
|
52
60
|
- `.rsp/specs/design.md`:由 `rsp init` 创建,之后由项目维护。
|
|
53
61
|
- `.rsp/rules/project-rules.md`:可选,仅在项目确有长期本地规则时创建。
|
|
54
62
|
- 将长期架构、边界和跨模块技术约束放在 `.rsp/specs/design.md`。
|
|
63
|
+
- 将 `.rsp/specs/INDEX.md` 视为附加 spec 的目录;它不列出 `design.md`。
|
|
55
64
|
- 将稳定的工作流规则、验证要求和本地运行约束放在 `.rsp/rules/project-rules.md`。
|
|
56
65
|
|
|
57
66
|
## AGENTS 接入
|
|
@@ -63,86 +72,127 @@ npx -y @oevery/rsp doctor
|
|
|
63
72
|
## RSP Entry
|
|
64
73
|
|
|
65
74
|
Read in order:
|
|
66
|
-
1. .rsp/rules
|
|
67
|
-
2. .rsp/
|
|
68
|
-
3. .rsp/
|
|
69
|
-
4. .rsp/
|
|
75
|
+
1. .rsp/rules/rsp-rules.md
|
|
76
|
+
2. .rsp/focus.d/
|
|
77
|
+
3. matching .rsp/changes/*.md for the focused entries
|
|
78
|
+
4. .rsp/specs/design.md
|
|
79
|
+
5. .rsp/specs/INDEX.md
|
|
80
|
+
6. only the relevant additional .rsp/rules/*.md and .rsp/specs/*.md files
|
|
70
81
|
<!-- rsp:end -->
|
|
71
82
|
```
|
|
72
83
|
|
|
73
84
|
`rsp init --agents-mode <mode>`:
|
|
74
85
|
|
|
75
|
-
- `managed
|
|
76
|
-
- `
|
|
77
|
-
- `print`:搭建 `.rsp/` 并打印受管块。
|
|
86
|
+
- `managed`:在需要时创建 `AGENTS.md`,并插入或更新受管块。
|
|
87
|
+
- `print`:正常初始化,并额外打印最终的 `AGENTS.md` 内容。
|
|
78
88
|
|
|
79
89
|
## Skill
|
|
80
90
|
|
|
81
|
-
|
|
91
|
+
使用 `skills/rsp/SKILL.md` 获取逐步的 setup、workflow 和审查指导。它适合按需加载,而不是默认常驻。
|
|
92
|
+
|
|
93
|
+
文档分层矩阵:
|
|
94
|
+
|
|
95
|
+
| Surface | 主要受众 | 职责 |
|
|
96
|
+
|---|---|---|
|
|
97
|
+
| `README.md` | 人类 | 概览、入门、示例 |
|
|
98
|
+
| `.rsp/rules/rsp-rules.md` | agent | 规范性的规则真相源 |
|
|
99
|
+
| `skills/rsp/SKILL.md` | agent | 应用这些规则的操作指南 |
|
|
100
|
+
| `AGENTS.md` | 人类与 agent | 帮助找到正确文件的导航入口 |
|
|
101
|
+
|
|
102
|
+
通常应由人先读 `README.md`,而 agent 应把 `.rsp/rules/rsp-rules.md` 当作规范真相源。
|
|
103
|
+
|
|
104
|
+
如果文档中写的是 `rsp <command>`,默认前提是你的环境里已经能直接运行 `rsp`;否则请使用 `npx -y @oevery/rsp <command>`。
|
|
82
105
|
|
|
83
106
|
可选安装示例:
|
|
84
107
|
|
|
85
108
|
```bash
|
|
86
|
-
npx skills add oevery/rsp
|
|
109
|
+
npx skills add oevery/rsp
|
|
87
110
|
```
|
|
88
111
|
|
|
89
|
-
|
|
112
|
+
本仓库发布了一个名为 `rsp` 的 skill,位于 `skills/rsp/`。
|
|
90
113
|
|
|
91
|
-
|
|
114
|
+
`rsp update` 只会刷新项目内的 RSP 文件。如果你在使用发布出来的 RSP skill,升级后还需要单独刷新一次:
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
npx skills add oevery/rsp
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## 工作模型
|
|
121
|
+
|
|
122
|
+
```text
|
|
123
|
+
open → archived
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
各目录职责应保持单一且明确:
|
|
127
|
+
|
|
128
|
+
- `changes/`:open changes
|
|
129
|
+
- `focus.d/`:当前聚焦的 changes
|
|
130
|
+
- `archives/`:完成后的历史
|
|
131
|
+
|
|
132
|
+
在 `open` 阶段,常见活动包括:
|
|
133
|
+
|
|
134
|
+
- `create`:创建并界定一个 change。
|
|
135
|
+
- `focus` / `unfocus`:调整当前聚焦的 open change。
|
|
136
|
+
- 直接编辑 change 文件,填写 section、勾选 tasks、记录设计决策。
|
|
137
|
+
- 在归档前判断是否需要 durable updates。
|
|
138
|
+
|
|
139
|
+
`archive` 会把已完成的工作归档到历史。`archive` 不会阻塞,只会给出 warning,最终判断留给 agent 或人工。
|
|
140
|
+
|
|
141
|
+
agent 应只把 `focus.d/` 中列出的 change 视为当前工作。`changes/` 中未聚焦的文件仍然是 open,但除非用户明确要求或重新 `focus`,否则不应被当作当前目标。
|
|
142
|
+
|
|
143
|
+
关于 durable update 的决定,也就是某次变更是否产出了应该写入 `.rsp/specs/` 或 `.rsp/rules/` 的知识,本质上是语义判断,应由 RSP skill 或人工 reviewer 完成。
|
|
92
144
|
|
|
93
145
|
## 推荐工作流
|
|
94
146
|
|
|
95
147
|
新项目:
|
|
96
148
|
|
|
97
149
|
1. `npx -y @oevery/rsp init`
|
|
98
|
-
2. 优先使用 `npx -y @oevery/rsp init --with-project-setup`,或手动执行 `rsp
|
|
150
|
+
2. 优先使用 `npx -y @oevery/rsp init --with-project-setup`,或手动执行 `rsp create project-setup`
|
|
99
151
|
3. 填写 `.rsp/specs/design.md`
|
|
100
|
-
4.
|
|
101
|
-
5.
|
|
102
|
-
6. 使用 `rsp
|
|
152
|
+
4. 仅在需要新的长期项目文档时使用 `rsp add spec <name>`
|
|
153
|
+
5. 仅在项目存在稳定本地规则时使用 `rsp add rules project-rules`
|
|
154
|
+
6. 使用 `rsp create <name>` 开始工作
|
|
155
|
+
7. 如果要让某个已有 open change 成为当前工作,使用 `rsp focus <name>`
|
|
156
|
+
8. 如果要将某个 change 移出当前焦点集合,使用 `rsp unfocus <name>`
|
|
157
|
+
9. 直接编辑 change 文件并完成实现、勾选 tasks
|
|
158
|
+
10. 使用 RSP skill 或人工 review 判断是否需要 durable updates
|
|
159
|
+
11. 使用 `rsp archive <name>` 收尾
|
|
103
160
|
|
|
104
161
|
已有复杂 `AGENTS.md` 的项目:
|
|
105
162
|
|
|
106
|
-
1. `npx -y @oevery/rsp init
|
|
163
|
+
1. `npx -y @oevery/rsp init`
|
|
107
164
|
2. 保持受管块尽量薄
|
|
108
165
|
3. 将长期设计收敛到 `.rsp/specs/design.md`
|
|
109
|
-
4.
|
|
166
|
+
4. 需要时再使用 `rsp add spec <name>` 或 `rsp add rules <name>`
|
|
110
167
|
|
|
111
168
|
AI 协助接入:
|
|
112
169
|
|
|
113
170
|
1. `npx -y @oevery/rsp init --agents-mode print --with-project-setup`
|
|
114
|
-
2.
|
|
115
|
-
3. 让 AI 审阅并填写 `.rsp/
|
|
171
|
+
2. 保持受管块原样,只在需要时调整周围由人维护的内容
|
|
172
|
+
3. 让 AI 审阅并填写 `.rsp/changes/project-setup.md`
|
|
116
173
|
4. 让 AI 填写 `.rsp/specs/design.md`
|
|
117
174
|
5. 运行 `rsp doctor`
|
|
118
175
|
|
|
119
176
|
## CLI
|
|
120
177
|
|
|
121
178
|
```text
|
|
122
|
-
rsp init --agents-mode <mode> 搭建 .rsp
|
|
123
|
-
rsp init --with-project-setup 同时创建 .rsp/
|
|
179
|
+
rsp init --agents-mode <mode> 搭建 .rsp/,并确保 AGENTS.md 含有 RSP 入口块
|
|
180
|
+
rsp init --with-project-setup 同时创建 .rsp/changes/project-setup.md
|
|
181
|
+
rsp update 升级后刷新 rules、修复 AGENTS 受管块并重建各类索引
|
|
124
182
|
rsp add rules <name> 创建 .rsp/rules/<name>.md
|
|
125
183
|
rsp add spec <name> 创建 .rsp/specs/<name>.md 并重建 specs 索引
|
|
126
|
-
rsp
|
|
127
|
-
rsp
|
|
128
|
-
rsp
|
|
129
|
-
|
|
130
|
-
rsp
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
rsp doctor
|
|
134
|
-
|
|
135
|
-
rsp archive-index 重新生成 archives 索引
|
|
184
|
+
rsp create <name> [summary] 创建 .rsp/changes/<name>.md
|
|
185
|
+
rsp focus <name> 将一个 open change 标记为当前聚焦
|
|
186
|
+
rsp unfocus <name> 将一个 open change 移出当前聚焦集合
|
|
187
|
+
rsp archive <name> 归档到 .rsp/archives/ 并更新 archive index
|
|
188
|
+
rsp status [--focused|--blocked|--stale <days>] [--json] [--verbose]
|
|
189
|
+
查看带有当前聚焦信息的项目状态摘要,并支持轻量筛选
|
|
190
|
+
rsp check [--json] [--verbose] 校验 change 文件,并对 scenario 结构做轻量 lint
|
|
191
|
+
rsp doctor [--json] [--verbose]
|
|
192
|
+
检查接入健康和常见问题
|
|
136
193
|
```
|
|
137
194
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
`rsp doctor` 是只读命令。
|
|
141
|
-
|
|
142
|
-
- 检查 `.rsp/`、`rules/rsp-rules.md`、`specs/design.md`、`specs/INDEX.md`、`archives/INDEX.md` 以及 `AGENTS.md` 受管块。
|
|
143
|
-
- 检查自动索引签名。
|
|
144
|
-
- 检查 `active.d` 标记与 `features/` 是否一致。
|
|
145
|
-
- 发现问题会以非零退出码结束。
|
|
195
|
+
精确规则以 `.rsp/rules/rsp-rules.md` 为准;durable decision 的操作指导以 `skills/rsp/SKILL.md` 为准。
|
|
146
196
|
|
|
147
197
|
## 工具无关
|
|
148
198
|
|