aicodeman 1.18.0 → 1.18.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 +4 -3
- package/README.zh-CN.md +3 -3
- package/dist/web/http-range.d.ts +44 -0
- package/dist/web/http-range.d.ts.map +1 -0
- package/dist/web/http-range.js +76 -0
- package/dist/web/http-range.js.map +1 -0
- package/dist/web/public/admin-ui.js.gz +0 -0
- package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
- package/dist/web/public/{app.a13ac13b.js → app.445f1584.js} +4 -6
- package/dist/web/public/app.445f1584.js.br +0 -0
- package/dist/web/public/app.445f1584.js.gz +0 -0
- package/dist/web/public/approvals-ui.js.gz +0 -0
- package/dist/web/public/{constants.42b8bbc9.js → constants.822a486d.js} +132 -35
- package/dist/web/public/constants.822a486d.js.br +0 -0
- package/dist/web/public/constants.822a486d.js.gz +0 -0
- package/dist/web/public/cron-ui.js.gz +0 -0
- package/dist/web/public/entrance-animations.js.gz +0 -0
- package/dist/web/public/home-sessions.js.gz +0 -0
- package/dist/web/public/i18n.86757605.js.gz +0 -0
- package/dist/web/public/image-input.ee16ad88.js.gz +0 -0
- package/dist/web/public/index.html +13 -8
- package/dist/web/public/index.html.br +0 -0
- package/dist/web/public/index.html.gz +0 -0
- package/dist/web/public/input-cjk.63794d0b.js.gz +0 -0
- package/dist/web/public/keyboard-accessory.0454a3e9.js.gz +0 -0
- package/dist/web/public/{mobile-handlers.32fdd57f.js → mobile-handlers.bc45f976.js} +55 -9
- package/dist/web/public/mobile-handlers.bc45f976.js.br +0 -0
- package/dist/web/public/mobile-handlers.bc45f976.js.gz +0 -0
- package/dist/web/public/mobile-overview.js.gz +0 -0
- package/dist/web/public/mobile.1eef31fe.css.gz +0 -0
- package/dist/web/public/notification-manager.5d229063.js.gz +0 -0
- package/dist/web/public/orchestrator-panel.js.gz +0 -0
- package/dist/web/public/{panels-ui.4255e1bc.js → panels-ui.1e4cb4b2.js} +1 -1
- package/dist/web/public/panels-ui.1e4cb4b2.js.br +0 -0
- package/dist/web/public/panels-ui.1e4cb4b2.js.gz +0 -0
- package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
- package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
- package/dist/web/public/readmymind-ui.js.gz +0 -0
- package/dist/web/public/respawn-ui.ff0dae4c.js.gz +0 -0
- package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
- package/dist/web/public/session-lineage.js +3 -1
- package/dist/web/public/session-lineage.js.br +0 -0
- package/dist/web/public/session-lineage.js.gz +0 -0
- package/dist/web/public/session-ui.20be58fa.js.gz +0 -0
- package/dist/web/public/settings-ui.eacb4f92.js.gz +0 -0
- package/dist/web/public/styles.70bf9c2a.css +1 -0
- package/dist/web/public/styles.70bf9c2a.css.br +0 -0
- package/dist/web/public/styles.70bf9c2a.css.gz +0 -0
- package/dist/web/public/subagent-windows.2a192c3e.js.gz +0 -0
- package/dist/web/public/sw.js.gz +0 -0
- package/dist/web/public/{terminal-ui.5046620b.js → terminal-ui.c182a68d.js} +1 -1
- package/dist/web/public/{terminal-ui.5046620b.js.br → terminal-ui.c182a68d.js.br} +0 -0
- package/dist/web/public/{terminal-ui.5046620b.js.gz → terminal-ui.c182a68d.js.gz} +0 -0
- package/dist/web/public/ultracode-panel.js.gz +0 -0
- package/dist/web/public/ultracode-windows.js.gz +0 -0
- package/dist/web/public/upload.html.gz +0 -0
- package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
- package/dist/web/public/vendor/marked.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-predictive-echo.6cec0fba.js.gz +0 -0
- package/dist/web/public/vendor/xterm-zerolag-input.137ad9f0.js.gz +0 -0
- package/dist/web/public/vendor/xterm.css.gz +0 -0
- package/dist/web/public/vendor/xterm.min.js.gz +0 -0
- package/dist/web/public/voice-input.4ec670b0.js.gz +0 -0
- package/dist/web/public/voice-pcm-worklet.js.gz +0 -0
- package/dist/web/public/webview-tabs.js.gz +0 -0
- package/dist/web/routes/file-routes.d.ts.map +1 -1
- package/dist/web/routes/file-routes.js +51 -18
- package/dist/web/routes/file-routes.js.map +1 -1
- package/dist/web/routes/session-routes.d.ts.map +1 -1
- package/dist/web/routes/session-routes.js +16 -0
- package/dist/web/routes/session-routes.js.map +1 -1
- package/package.json +1 -1
- package/skills/codeman/SKILL.md +251 -717
- package/skills/codeman/reference/endpoints.md +1 -1
- package/skills/codeman/reference/recipes.md +24 -11
- package/skills/codeman/reference/verbs.md +665 -0
- package/dist/web/public/app.a13ac13b.js.br +0 -0
- package/dist/web/public/app.a13ac13b.js.gz +0 -0
- package/dist/web/public/constants.42b8bbc9.js.br +0 -0
- package/dist/web/public/constants.42b8bbc9.js.gz +0 -0
- package/dist/web/public/mobile-handlers.32fdd57f.js.br +0 -0
- package/dist/web/public/mobile-handlers.32fdd57f.js.gz +0 -0
- package/dist/web/public/panels-ui.4255e1bc.js.br +0 -0
- package/dist/web/public/panels-ui.4255e1bc.js.gz +0 -0
- package/dist/web/public/styles.b6e8b4ae.css +0 -1
- package/dist/web/public/styles.b6e8b4ae.css.br +0 -0
- package/dist/web/public/styles.b6e8b4ae.css.gz +0 -0
|
@@ -666,7 +666,7 @@ whose turn already ended just times out, with or without `fresh`, verified live)
|
|
|
666
666
|
Register the waiter before the event can happen: send-and-wait does exactly that,
|
|
667
667
|
and `wait-output` markers with `from=buffer` are latched by construction. Never
|
|
668
668
|
fire-and-forget N prompts and then gather signal-waits worker by worker; every
|
|
669
|
-
worker that finishes before its gather is unobservable (see recipes.md Flow
|
|
669
|
+
worker that finishes before its gather is unobservable (see recipes.md Flow 4).
|
|
670
670
|
|
|
671
671
|
#### `GET /api/v1/sessions/:id/wait`
|
|
672
672
|
|
|
@@ -1,16 +1,27 @@
|
|
|
1
1
|
# Worked orchestration flows
|
|
2
2
|
|
|
3
3
|
Loaded on demand from the `codeman` skill. Every flow assumes the SKILL.md preamble is
|
|
4
|
-
in scope (`$API`, `$SELF`, `$CID`, `"${CURL[@]}"`, `delete_session
|
|
4
|
+
in scope (`$API`, `$SELF`, `$CID`, `"${CURL[@]}"`, `delete_session`, plus the fast-path
|
|
5
|
+
verbs `spawn_worker` / `spawn_workers` / `sendwait` / `last_text`); see
|
|
5
6
|
[SKILL.md §0](../SKILL.md#0-guard-and-bootstrap) for it and
|
|
6
7
|
[the safety rules](../SKILL.md#4-safety-rules) for what you may call unprompted.
|
|
7
8
|
|
|
9
|
+
⚠️ **These flows are the long way round, and most jobs do not need them.** If the job is
|
|
10
|
+
"spawn N claude workers, task them, collect the answers", [SKILL.md
|
|
11
|
+
§1](../SKILL.md#1-the-fast-path-n-workers-one-bash-call) already is that job in one Bash
|
|
12
|
+
call, measured at about 10 s for two cold workers end to end. Come here when you need a
|
|
13
|
+
mechanism §1 does not cover: shell or otherwise hook-less workers (Flows 2, 3), a worker
|
|
14
|
+
stuck on a permission dialog (Flow 5), messaging (Flow 6), or real work in git worktrees
|
|
15
|
+
(Flow 7). The flows below spell each step out because they are teaching the mechanism;
|
|
16
|
+
spelling them out again when §1 would have done is the most common way an agent turns a
|
|
17
|
+
ten-second run into a multi-minute one.
|
|
18
|
+
|
|
8
19
|
⚠️ **Shell state does not survive between tool calls**, so every Bash call below opens
|
|
9
20
|
by sourcing the preamble file the §0 bootstrap wrote, and checking its version stamp:
|
|
10
21
|
|
|
11
22
|
```bash
|
|
12
23
|
. "${XDG_CACHE_HOME:-$HOME/.cache}/codeman-agent-$CODEMAN_SESSION_ID.sh" 2>/dev/null
|
|
13
|
-
[ "${CODEMAN_PREAMBLE:-}" = 1.
|
|
24
|
+
[ "${CODEMAN_PREAMBLE:-}" = 1.18.2 ] || { echo "preamble missing or stale; re-run the §0 bootstrap"; exit 1; }
|
|
14
25
|
```
|
|
15
26
|
|
|
16
27
|
Do **not** re-paste the preamble body into each call. Sourcing it is what retires the
|
|
@@ -272,16 +283,18 @@ live (and one anti-pattern, measured failing, replaced by B):
|
|
|
272
283
|
**A. Background the send-and-waits** (simplest; each resolved on `stop` while the
|
|
273
284
|
other was still running). Each send costs its worker one billed turn:
|
|
274
285
|
|
|
286
|
+
`sendwait <sid> <prompt> [seq]` is a preamble function ([SKILL.md
|
|
287
|
+
§0](../SKILL.md#0-guard-and-bootstrap)); it applies the `\r` and a per-worker `clientId`,
|
|
288
|
+
and picks a fresh `seq` (the current epoch second) per call, so do not redefine it here
|
|
289
|
+
and pass `seq` yourself only to resend an identical frame as a deliberate duplicate.
|
|
290
|
+
Background one call per worker and `wait`:
|
|
291
|
+
|
|
275
292
|
```bash
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
}
|
|
282
|
-
( sendwait "$SID1" 'refactor module A and reply DONE' 2 & \
|
|
283
|
-
sendwait "$SID2" 'write tests for module B and reply DONE' 2 & wait )
|
|
284
|
-
jq -c '.data.wait | {signal, waitedMs}' /tmp/fan-"$SID1".json /tmp/fan-"$SID2".json
|
|
293
|
+
D=$(mktemp -d) # a function's stdout is per-worker, so collect it in files, not a var
|
|
294
|
+
sendwait "$SID1" 'refactor module A and reply DONE' > "$D/1" &
|
|
295
|
+
sendwait "$SID2" 'write tests for module B and reply DONE' > "$D/2" &
|
|
296
|
+
wait
|
|
297
|
+
jq -c '.data.wait | {signal, waitedMs}' "$D/1" "$D/2"; rm -rf "$D"
|
|
285
298
|
```
|
|
286
299
|
|
|
287
300
|
One in-flight wait per worker keeps you far from the 16-per-session waiter cap.
|