@seanyao/roll 3.621.1 → 3.624.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/CHANGELOG.md +94 -0
- package/README.md +4 -1
- package/dist/roll.mjs +18773 -15313
- package/lib/__pycache__/changelog_audit.cpython-314.pyc +0 -0
- package/lib/__pycache__/changelog_generate.cpython-314.pyc +0 -0
- package/lib/__pycache__/github_sync.cpython-314.pyc +0 -0
- package/lib/__pycache__/loop-fmt.cpython-314.pyc +0 -0
- package/lib/__pycache__/loop_result_eval.cpython-314.pyc +0 -0
- package/lib/__pycache__/loop_unstick.cpython-314.pyc +0 -0
- package/lib/__pycache__/model_prices.cpython-314.pyc +0 -0
- package/lib/__pycache__/prices_fetcher.cpython-314.pyc +0 -0
- package/lib/__pycache__/roll-home.cpython-314.pyc +0 -0
- package/lib/__pycache__/roll-loop-status.cpython-314.pyc +0 -0
- package/lib/__pycache__/roll_git.cpython-314.pyc +0 -0
- package/lib/__pycache__/roll_render.cpython-314.pyc +0 -0
- package/lib/__pycache__/slides-render.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/__init__.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/gemini.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/kimi.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/openai.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/pi.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/pi_emit.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/qwen.cpython-314.pyc +0 -0
- package/package.json +1 -1
- package/skills/roll-doctor/SKILL.md +0 -2
- package/skills/roll-loop/references/full-contract.md +1 -1
- package/skills/roll-onboard/SKILL.md +4 -4
- package/skills/roll-peer/references/full-contract.md +14 -24
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -66,7 +66,7 @@ denied operations and the cycle will idle-exit.
|
|
|
66
66
|
```yaml
|
|
67
67
|
# ~/.roll/config.yaml
|
|
68
68
|
loop:
|
|
69
|
-
primary_agent: claude # claude |
|
|
69
|
+
primary_agent: claude # claude | kimi | pi | codex | ...
|
|
70
70
|
max_items_per_run: 1 # one story per cycle — atomic delivery, predictable cycle time
|
|
71
71
|
brief_on_feature_complete: true
|
|
72
72
|
retry_backoff: [2, 4, 8, 16] # seconds, exponential
|
|
@@ -141,7 +141,7 @@ Present these in chat. **Aim for total time ≤ 3 minutes.** Group 1 confirms yo
|
|
|
141
141
|
**Group 3 — Privacy & next steps**
|
|
142
142
|
|
|
143
143
|
7. Add `.roll/` to `.gitignore`? (yes = keep project management private; no = commit it like Roll itself does)
|
|
144
|
-
8. Sync Roll conventions to which AI tools? Multi-select from detected agents (claude /
|
|
144
|
+
8. Sync Roll conventions to which AI tools? Multi-select from detected agents (claude / kimi / codex / pi / agy / reasonix)
|
|
145
145
|
9. Enable `roll loop` autonomous execution after init?
|
|
146
146
|
|
|
147
147
|
### Step 4 — Write plan file
|
|
@@ -169,13 +169,13 @@ include_existing:
|
|
|
169
169
|
privacy:
|
|
170
170
|
gitignore_dot_roll: true # user's Q7
|
|
171
171
|
|
|
172
|
-
sync_targets: [claude,
|
|
172
|
+
sync_targets: [claude, pi] # user's Q8
|
|
173
173
|
enable_loop: false # user's Q9
|
|
174
174
|
agent_routes_template: default # user's Q10 — agent routing preset
|
|
175
175
|
# one of: default / minimal / heavy / skip
|
|
176
|
-
# default = pi/
|
|
176
|
+
# default = pi/claude + history (US-AGENT-002)
|
|
177
177
|
# minimal = single agent (pi), no history
|
|
178
|
-
# heavy = pi/
|
|
178
|
+
# heavy = pi/claude/kimi + larger window
|
|
179
179
|
# skip = don't seed .roll/agent-routes.yaml
|
|
180
180
|
|
|
181
181
|
# ── US-ONBOARD-016: Phase 2 analysis sections (optional, but emit all three) ──
|
|
@@ -191,11 +191,11 @@ Rules:
|
|
|
191
191
|
```yaml
|
|
192
192
|
peer:
|
|
193
193
|
capability_map:
|
|
194
|
-
architecture: [claude,
|
|
195
|
-
security: [claude,
|
|
196
|
-
test: [codex, kimi,
|
|
197
|
-
refactor: [
|
|
198
|
-
default: [
|
|
194
|
+
architecture: [claude, kimi, pi, reasonix]
|
|
195
|
+
security: [claude, pi, kimi, reasonix]
|
|
196
|
+
test: [codex, kimi, claude, pi]
|
|
197
|
+
refactor: [kimi, claude, pi, reasonix]
|
|
198
|
+
default: [kimi, claude, pi, codex]
|
|
199
199
|
```
|
|
200
200
|
|
|
201
201
|
### Adaptive Adjustment
|
|
@@ -211,29 +211,20 @@ If `streak` for a peer pair reaches the configured threshold (default: 3 consecu
|
|
|
211
211
|
|
|
212
212
|
The bridge script detects installed peers via `command -v <tool>`. Only installed tools are considered. The current running tool is excluded (`exclude_self: true`).
|
|
213
213
|
|
|
214
|
-
For `deepseek`, also check if serve mode is available as a more reliable alternative:
|
|
215
|
-
```bash
|
|
216
|
-
command -v deepseek && { deepseek serve --help 2>/dev/null; true; } | grep -q "\-\-http" && echo "serve_mode"
|
|
217
|
-
```
|
|
218
|
-
If serve mode is available, prefer HTTP transport over direct CLI invocation.
|
|
219
|
-
|
|
220
214
|
### Peer Invocation Reference
|
|
221
215
|
|
|
222
216
|
| Peer | Non-interactive command | Reliability | Notes |
|
|
223
217
|
|------|------------------------|-------------|-------|
|
|
224
218
|
| `claude` | `claude -p "<prompt>"` | ✅ Verified | Native, stable |
|
|
225
|
-
| `deepseek` | `deepseek "<prompt>"` | ✅ Verified | No TTY dependency |
|
|
226
|
-
| `deepseek` (serve) | `curl localhost:<port>/v1/...` | ✅ High | Start with `deepseek serve --http`; preferred over direct CLI |
|
|
227
219
|
| `kimi` | `kimi --quiet -p "<prompt>"` | ✅ Verified | `--quiet` is alias for `--print --output-format text --final-message-only`; prompt via `-p` |
|
|
228
220
|
| `pi` | `pi -p "<prompt>"` | ✅ Verified | Clean non-interactive output |
|
|
229
|
-
| `opencode` | `opencode run "<prompt>"` | ✅ Verified | Works non-interactively |
|
|
230
221
|
| `codex` | `codex exec "<prompt>"` | ⚠️ Auth required | Token must be valid; re-login with `codex login` if expired |
|
|
231
222
|
|
|
232
|
-
**CLI vs. API Key**: `claude`, `
|
|
223
|
+
**CLI vs. API Key**: `claude`, `kimi`, `codex` CLIs authenticate via existing subscription accounts — no separate API key required. This is the primary advantage of CLI transport over the MCP/HTTP approach.
|
|
233
224
|
|
|
234
225
|
## Inline Display Mode (Manual Triggers)
|
|
235
226
|
|
|
236
|
-
When peer review is manually triggered by a human (via `/peer`, "叫上 peer", etc.), the executing agent **must display each round inline in the current conversation**. This applies regardless of which agent is executing — Claude,
|
|
227
|
+
When peer review is manually triggered by a human (via `/peer`, "叫上 peer", etc.), the executing agent **must display each round inline in the current conversation**. This applies regardless of which agent is executing — Claude, Kimi, PI, Codex, or any other.
|
|
237
228
|
|
|
238
229
|
**Per-round display format:**
|
|
239
230
|
|
|
@@ -303,11 +294,11 @@ peer:
|
|
|
303
294
|
call_timeout: 180 # seconds per round; configure based on your API latency
|
|
304
295
|
fallback: file_mailbox # direct_cli | file_mailbox | auto
|
|
305
296
|
capability_map:
|
|
306
|
-
architecture: [claude,
|
|
307
|
-
security: [claude,
|
|
308
|
-
test: [codex, kimi,
|
|
309
|
-
refactor: [
|
|
310
|
-
default: [
|
|
297
|
+
architecture: [claude, kimi, pi, reasonix]
|
|
298
|
+
security: [claude, pi, kimi, reasonix]
|
|
299
|
+
test: [codex, kimi, claude, pi]
|
|
300
|
+
refactor: [kimi, claude, pi, reasonix]
|
|
301
|
+
default: [kimi, claude, pi, codex]
|
|
311
302
|
adaptive:
|
|
312
303
|
streak_threshold: 3
|
|
313
304
|
min_samples: 3
|
|
@@ -316,8 +307,7 @@ peer:
|
|
|
316
307
|
## Limitations
|
|
317
308
|
|
|
318
309
|
1. **Reverse link reliability**: Direct CLI calls are preferred. Reliability varies by tool — see Peer Invocation Reference table. If a peer fails consistently, the adaptive streak tracker marks it `abandoned` and falls back to the next candidate. File mailbox (`<project>/.roll/peer/mailbox/`) is the last-resort fallback.
|
|
319
|
-
- `deepseek serve --http` is the most reliable option when available — prefer it over direct `deepseek` CLI invocation.
|
|
320
310
|
- `codex exec` has known TTY/Ink issues in non-interactive environments; treat as low-priority fallback.
|
|
321
|
-
2. **Cost**: Every peer review consumes tokens on both sides. Only trigger for tasks where the cost of a wrong decision exceeds the cost of peer review.
|
|
311
|
+
2. **Cost**: Every peer review consumes tokens on both sides. Only trigger for tasks where the cost of a wrong decision exceeds the cost of peer review.
|
|
322
312
|
3. **Context window**: Large project handoff cards may consume significant context. Keep file pointers concise.
|
|
323
|
-
4. **Tool differences**: Claude,
|
|
313
|
+
4. **Tool differences**: Claude, Kimi, Codex, and Pi interpret skills and AGENTS.md differently. The peer may apply the protocol slightly differently. This is expected and acceptable — the protocol is designed to tolerate variation.
|