@coralai/sps-cli 0.52.3 → 0.53.1
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-CN.md +457 -131
- package/README.md +460 -131
- package/dist/commands/agentCommand.js +1 -1
- package/dist/commands/agentCommand.js.map +1 -1
- package/dist/commands/agentDaemon.d.ts.map +1 -1
- package/dist/commands/agentDaemon.js +3 -9
- package/dist/commands/agentDaemon.js.map +1 -1
- package/dist/commands/agentRenderer.d.ts +1 -1
- package/dist/commands/agentRenderer.d.ts.map +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +0 -4
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/skillCommand.js +14 -14
- package/dist/commands/skillCommand.js.map +1 -1
- package/dist/console/routes/chat.d.ts.map +1 -1
- package/dist/console/routes/chat.js +14 -18
- package/dist/console/routes/chat.js.map +1 -1
- package/dist/console/routes/fs.js +2 -2
- package/dist/console/routes/fs.js.map +1 -1
- package/dist/console-assets/assets/index-CoAkaUkW.css +10 -0
- package/dist/console-assets/assets/index-p6b8pcpR.js +557 -0
- package/dist/console-assets/index.html +2 -2
- package/dist/core/claudeJsonl.d.ts +43 -0
- package/dist/core/claudeJsonl.d.ts.map +1 -0
- package/dist/core/claudeJsonl.js +187 -0
- package/dist/core/claudeJsonl.js.map +1 -0
- package/dist/core/runtimeSnapshot.d.ts +1 -1
- package/dist/core/runtimeSnapshot.d.ts.map +1 -1
- package/dist/core/runtimeStore.d.ts +1 -1
- package/dist/core/runtimeStore.d.ts.map +1 -1
- package/dist/core/sessionContext.d.ts +1 -1
- package/dist/core/sessionContext.d.ts.map +1 -1
- package/dist/core/sessionLiveness.d.ts +1 -1
- package/dist/core/sessionLiveness.d.ts.map +1 -1
- package/dist/core/state.d.ts +1 -1
- package/dist/core/state.d.ts.map +1 -1
- package/dist/core/wiki/hot.js +2 -2
- package/dist/core/wiki/hot.js.map +1 -1
- package/dist/core/wiki/reader.js +4 -4
- package/dist/core/wiki/reader.js.map +1 -1
- package/dist/core/wiki/scaffold.js +1 -1
- package/dist/core/wiki/types.d.ts +50 -50
- package/dist/daemon/daemonClient.d.ts +2 -2
- package/dist/daemon/daemonClient.d.ts.map +1 -1
- package/dist/engines/MonitorEngine.js.map +1 -1
- package/dist/main.js +40 -40
- package/dist/main.js.map +1 -1
- package/dist/manager/worker-manager-impl.d.ts +1 -1
- package/dist/manager/worker-manager-impl.d.ts.map +1 -1
- package/dist/providers/ACPWorkerRuntime.d.ts +5 -5
- package/dist/providers/ACPWorkerRuntime.d.ts.map +1 -1
- package/dist/providers/ACPWorkerRuntime.js +1 -1
- package/dist/providers/ACPWorkerRuntime.js.map +1 -1
- package/dist/providers/MarkdownTaskBackend.d.ts +2 -6
- package/dist/providers/MarkdownTaskBackend.d.ts.map +1 -1
- package/dist/providers/MarkdownTaskBackend.js +20 -32
- package/dist/providers/MarkdownTaskBackend.js.map +1 -1
- package/dist/providers/registry.d.ts +1 -1
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/services/CardService.js +11 -11
- package/dist/services/CardService.js.map +1 -1
- package/dist/services/ChatService.d.ts +31 -1
- package/dist/services/ChatService.d.ts.map +1 -1
- package/dist/services/ChatService.js +149 -33
- package/dist/services/ChatService.js.map +1 -1
- package/dist/services/LogService.js +2 -2
- package/dist/services/LogService.js.map +1 -1
- package/dist/services/PipelineService.js +29 -29
- package/dist/services/PipelineService.js.map +1 -1
- package/dist/services/ProjectService.js +16 -16
- package/dist/services/ProjectService.js.map +1 -1
- package/dist/services/SkillService.js +9 -9
- package/dist/services/SkillService.js.map +1 -1
- package/dist/services/SystemService.js +9 -9
- package/dist/services/SystemService.js.map +1 -1
- package/dist/services/WorkerService.js +7 -7
- package/dist/services/WorkerService.js.map +1 -1
- package/dist/services/executors.d.ts +1 -0
- package/dist/services/executors.d.ts.map +1 -1
- package/dist/services/executors.js +7 -0
- package/dist/services/executors.js.map +1 -1
- package/dist/shared/runtimePaths.d.ts +8 -0
- package/dist/shared/runtimePaths.d.ts.map +1 -1
- package/dist/shared/runtimePaths.js +22 -0
- package/dist/shared/runtimePaths.js.map +1 -1
- package/dist/shared/runtimeSchemas.d.ts +14 -14
- package/package.json +7 -3
- package/skills/sps-memory/SKILL.md +1 -1
- package/skills/sps-pipeline/SKILL.md +19 -19
- package/LICENSE +0 -21
- package/dist/console-assets/assets/index-Bf8zeTg0.js +0 -566
- package/dist/console-assets/assets/index-j5Dtsmq0.css +0 -10
|
@@ -178,19 +178,19 @@ card pipelines; see `sample.yaml.example` for syntax.
|
|
|
178
178
|
## 4. Card state machine
|
|
179
179
|
|
|
180
180
|
```
|
|
181
|
-
|
|
181
|
+
v0.51.9 起:
|
|
182
182
|
|
|
183
183
|
Backlog → Todo → Inprogress → [QA / Review] → Done
|
|
184
184
|
↑↓
|
|
185
|
-
Planning
|
|
185
|
+
Planning(用户手动暂存;不自动派发)
|
|
186
186
|
↓ fail
|
|
187
187
|
NEEDS-FIX (halt)
|
|
188
188
|
```
|
|
189
189
|
|
|
190
190
|
Default states (configurable in YAML `pm.card_states`):
|
|
191
|
-
- **Planning** — v0.51.10
|
|
192
|
-
- **Backlog** — **`sps card add
|
|
193
|
-
- **Todo** — StageEngine
|
|
191
|
+
- **Planning** — v0.51.10+:人工暂存 / 草稿。**console "新卡片" 表单**默认入此状态;用户拖到 Backlog 才会跑。
|
|
192
|
+
- **Backlog** — **`sps card add`(CLI / agent)**默认入此状态;StageEngine 抢卡执行。
|
|
193
|
+
- **Todo** — StageEngine 已 prep(建分支 / worktree),下次 tick 派 worker
|
|
194
194
|
- **Inprogress** — worker active
|
|
195
195
|
- **QA** (or **Review**) — code complete, awaiting human/auto verification
|
|
196
196
|
- **Done** — finished
|
|
@@ -206,22 +206,22 @@ Stop hook reads this to detect which card the worker just finished.
|
|
|
206
206
|
|
|
207
207
|
### Where new cards land — depends on caller (v0.51.10+)
|
|
208
208
|
|
|
209
|
-
|
|
|
209
|
+
| 调用方 | 默认入场 state | 行为 |
|
|
210
210
|
|---|---|---|
|
|
211
|
-
| **`sps card add`** (CLI / Worker / agent) | **Backlog** |
|
|
212
|
-
| **Console "
|
|
213
|
-
| **`POST /api/projects/<p>/cards`**
|
|
211
|
+
| **`sps card add`** (CLI / Worker / agent) | **Backlog** | 下次 tick 立即被 StageEngine 抢卡跑 |
|
|
212
|
+
| **Console "新卡片" 表单** | **Planning** | 暂存;用户在看板拖到 Backlog 才会跑 |
|
|
213
|
+
| **`POST /api/projects/<p>/cards`** 直接调 API | **Planning** | 默认人工语义;body 传 `initialState: 'Backlog'` 立即跑 |
|
|
214
214
|
|
|
215
|
-
**Agent
|
|
215
|
+
**Agent 调 `sps card add` → 卡进 Backlog → 自动跑。** 这是 SPS 的主路径。Worker 在某个卡里需要"派生子任务"时用 `sps card add`,子任务会被下一个 tick 自动 pickup。
|
|
216
216
|
|
|
217
217
|
```bash
|
|
218
|
-
# Agent / Worker
|
|
218
|
+
# Agent / Worker 主路径 — 直接进 Backlog 自动跑
|
|
219
219
|
sps card add <project> "Title" "Description"
|
|
220
220
|
sps card add <project> "T" "D" --skills python,backend --labels feature
|
|
221
221
|
|
|
222
|
-
#
|
|
222
|
+
# 想暂存(让用户审核 / 自己稍后拖派发)
|
|
223
223
|
sps card add <project> "Title" "Description" --draft
|
|
224
|
-
# →
|
|
224
|
+
# → 卡进 Planning,等手动拖到 Backlog
|
|
225
225
|
```
|
|
226
226
|
|
|
227
227
|
### View
|
|
@@ -241,13 +241,13 @@ sps reset <p> --card 5,6,7 # reset specific seq
|
|
|
241
241
|
sps reset <p> --all # full reset incl. Done
|
|
242
242
|
```
|
|
243
243
|
|
|
244
|
-
|
|
244
|
+
注:`sps reset` 把卡退回 **Planning**(不是 Backlog) — 重置 = 退回人工控制,需手动拖回 Backlog 才会再跑。这是 v0.51.9 起的语义。
|
|
245
245
|
|
|
246
246
|
### Card label vocabulary
|
|
247
247
|
|
|
248
248
|
| Label | Meaning | Who sets |
|
|
249
249
|
|---|---|---|
|
|
250
|
-
| `AI-PIPELINE` |
|
|
250
|
+
| `AI-PIPELINE` | "SPS pipeline 卡" 的标记(v0.51.9+ 不再触发任何自动行为,仅识别) | `sps card add` 自动加 |
|
|
251
251
|
| `STARTED-<stage>` | ACK signal — Claude received the prompt | UserPromptSubmit hook |
|
|
252
252
|
| `COMPLETED-<stage>` | Worker finished a stage | Stop hook |
|
|
253
253
|
| `CLAIMED` | StageEngine reserved a worker slot | Engine |
|
|
@@ -278,7 +278,7 @@ sps doctor <project> # health check
|
|
|
278
278
|
sps doctor <project> --fix # auto-repair drift
|
|
279
279
|
|
|
280
280
|
# One-off ticks (each engine separately, useful for cron / debugging)
|
|
281
|
-
sps scheduler tick <p> #
|
|
281
|
+
sps scheduler tick <p> # v0.51.9 起为 no-op(dormant,保留接口)
|
|
282
282
|
sps pipeline tick <p> # full StageEngine pass
|
|
283
283
|
sps qa tick <p> # QA → Done finalization
|
|
284
284
|
sps monitor tick <p> # health probe (ACK timeout, stale runtime)
|
|
@@ -371,7 +371,7 @@ Live at `~/.coral/projects/<name>/conf` (shell `export VAR="value"` syntax).
|
|
|
371
371
|
| `GITLAB_PROJECT` | — | `user/repo` (optional, for GitLab API) |
|
|
372
372
|
| `GITLAB_MERGE_BRANCH` | `main` | Worker pushes here |
|
|
373
373
|
| `PM_TOOL` | `markdown` | **Only `markdown` supported as of v0.42.0**. Plane/Trello removed. Cards live in `~/.coral/projects/<n>/cards/<state>/<seq>.md` |
|
|
374
|
-
| `PIPELINE_LABEL` | `AI-PIPELINE` | Marker label auto-added by `sps card add` — identifies SPS-managed cards.
|
|
374
|
+
| `PIPELINE_LABEL` | `AI-PIPELINE` | Marker label auto-added by `sps card add` — identifies SPS-managed cards. v0.51.9+ 不再触发自动状态提升(卡按入场 state 决定是否跑) |
|
|
375
375
|
| `MR_MODE` | `none` | `none` (push direct) / `create` (open MR; needs `GITLAB_PROJECT_ID`) |
|
|
376
376
|
| `WORKER_TRANSPORT` | `acp-sdk` | Fixed; do not change |
|
|
377
377
|
| `MAX_CONCURRENT_WORKERS` | `1` | Slot count; cards still serial within a project |
|
|
@@ -407,7 +407,7 @@ Infrastructure (manager/, providers/, daemon/)
|
|
|
407
407
|
|
|
408
408
|
### Engines
|
|
409
409
|
|
|
410
|
-
- **SchedulerEngine** —
|
|
410
|
+
- **SchedulerEngine** — v0.51.9 起 dormant(卡 add 直接进 Backlog,无需提升)
|
|
411
411
|
- **StageEngine** — drives card through stages; builds prompt (skill + projectRules
|
|
412
412
|
+ memory + **wikiContext** + task description + **wikiUpdateReminder**); kicks
|
|
413
413
|
Worker via ACP
|
|
@@ -447,7 +447,7 @@ Common issues:
|
|
|
447
447
|
- **Worker not starting** — `sps worker ps`, then check `sps logs --err`. Often
|
|
448
448
|
Claude API key missing or `claude-agent-acp` adapter not installed (`sps setup`
|
|
449
449
|
reinstalls it).
|
|
450
|
-
- **Cards stuck in Planning (v0.51.9+)** — Planning
|
|
450
|
+
- **Cards stuck in Planning (v0.51.9+)** — Planning 是人工暂存。**Console 表单建卡默认到这里**,需手动拖到 Backlog 派发。Agent / `sps card add` 默认进 Backlog 自动跑(不会卡在 Planning)。
|
|
451
451
|
- **ACK timeout on every card** — Claude cold-start is slow with many skills/memory
|
|
452
452
|
files. Raise `WORKER_ACK_TIMEOUT_S` in conf (default 300s as of v0.50.24).
|
|
453
453
|
- **Console shows stale data** — SSE may have dropped; reload page; if persistent,
|
package/LICENSE
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 Coral AI
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|