loki-mode 11.3.8 → 11.4.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 +34 -18
- package/SKILL.md +3 -3
- package/VERSION +1 -1
- package/agents/custom_agents.py +280 -0
- package/autonomy/council-v2.sh +22 -1
- package/autonomy/edit.sh +242 -0
- package/autonomy/lib/chat.sh +312 -0
- package/autonomy/lib/help-core.sh +164 -0
- package/autonomy/lib/json-output.sh +38 -0
- package/autonomy/lib/run-summary.sh +96 -0
- package/autonomy/loki +105 -10
- package/autonomy/route.sh +270 -0
- package/autonomy/run.sh +6 -0
- package/autonomy/setup-wizard.sh +161 -0
- package/autonomy/verify.sh +22 -2
- package/bin/loki +73 -18
- package/completions/_loki +55 -0
- package/completions/loki.bash +49 -3
- package/dashboard/__init__.py +1 -1
- package/docs/CLI-CORE-VERBS.md +112 -0
- package/docs/CLI-REFERENCE.md +7 -1
- package/docs/COMPARE-OPENCODE.md +94 -0
- package/docs/COMPONENTS.md +1 -0
- package/docs/INSTALLATION.md +56 -12
- package/docs/KNOWN-ISSUES.md +2 -12
- package/docs/QUICKSTART.md +108 -0
- package/docs/environment-variables.md +9 -2
- package/docs/exit-codes.md +29 -12
- package/docs/v10/CLI-MODERN.md +10 -4
- package/docs/v10/FAILURE-CLASSES.md +2 -2
- package/docs/v10/GUIDE.md +270 -44
- package/docs/v10/METRICS.md +6 -0
- package/docs/v10/OPENCODE-PARITY-PLAN.md +84 -0
- package/docs/v10/PROGRESS.md +7 -0
- package/loki-ts/dist/loki.js +968 -933
- package/mcp/__init__.py +1 -1
- package/package.json +2 -2
- package/packages/control-plane/dist/server.js +198 -86
- package/plugins/loki-mode/.claude-plugin/plugin.json +1 -1
- package/providers/claude.sh +16 -2
- package/providers/model_route_exec.sh +22 -0
- package/providers/model_routes.sh +188 -0
- package/skills/providers.md +13 -0
- package/templates/agents/planner.md +10 -0
- package/templates/agents/reviewer.md +10 -0
- package/templates/agents/tester.md +10 -0
- package/web-app/dist/assets/{AdminPage-D1jlQGeE.js → AdminPage-CYJ2BWRC.js} +1 -1
- package/web-app/dist/assets/{Avatar-QUX_aJfQ.js → Avatar-DdK4wynI.js} +1 -1
- package/web-app/dist/assets/{Badge-pysXUR6J.js → Badge-CrX3MI7J.js} +1 -1
- package/web-app/dist/assets/{Button-CWzlTw9P.js → Button-709-wwGM.js} +1 -1
- package/web-app/dist/assets/{CockpitPage-DLCoLdyF.js → CockpitPage-BapdTInO.js} +1 -1
- package/web-app/dist/assets/{ComparePage-CCENGIti.js → ComparePage-DT99pGvA.js} +1 -1
- package/web-app/dist/assets/{ErrorBoundary-BssCcbgv.js → ErrorBoundary-B0uJSys8.js} +1 -1
- package/web-app/dist/assets/{EvidenceReceiptPanel-CwmAqJ90.js → EvidenceReceiptPanel-BtMFgElP.js} +1 -1
- package/web-app/dist/assets/{GitHubIssuesPanel-DuSw8shb.js → GitHubIssuesPanel-DjJuU941.js} +1 -1
- package/web-app/dist/assets/{GitHubPRsPanel-CGvLbDjh.js → GitHubPRsPanel-HXfEX1BC.js} +1 -1
- package/web-app/dist/assets/{HomePage-BrBX5Gn2.js → HomePage-Cqyves-S.js} +2 -2
- package/web-app/dist/assets/{LoginPage-DPjr7QHU.js → LoginPage-jUbtC7_Y.js} +1 -1
- package/web-app/dist/assets/{MagicPage-Dxd7FWF2.js → MagicPage-DHRsqjgR.js} +1 -1
- package/web-app/dist/assets/{MetricsPage-BP47Urni.js → MetricsPage-B-pED05R.js} +1 -1
- package/web-app/dist/assets/{NotFoundPage-D7_07YoB.js → NotFoundPage-CsbUs21R.js} +1 -1
- package/web-app/dist/assets/{ProjectPage-SQ183efy.js → ProjectPage-BtlLEQwB.js} +3 -3
- package/web-app/dist/assets/{ProjectsPage-Cgr1K2Ae.js → ProjectsPage-DaRbRjSp.js} +1 -1
- package/web-app/dist/assets/{SettingsPage-kyYOSDt0.js → SettingsPage-DALrtP3F.js} +1 -1
- package/web-app/dist/assets/{ShowcasePage-CRd-H1A4.js → ShowcasePage-CoPHSNP0.js} +1 -1
- package/web-app/dist/assets/{SystemSettingsPage-BHBdGXod.js → SystemSettingsPage-kOuSN50O.js} +1 -1
- package/web-app/dist/assets/{TeamsPage-CI3Wdbjw.js → TeamsPage-DGWK0LMp.js} +1 -1
- package/web-app/dist/assets/{TemplatesPage-DfhCgP6i.js → TemplatesPage-C-_10CwA.js} +1 -1
- package/web-app/dist/assets/{TerminalOutput-Cs87YXLJ.js → TerminalOutput-Cz_vPbXL.js} +1 -1
- package/web-app/dist/assets/{activity-CrQx5SbK.js → activity-icIsXJVa.js} +1 -1
- package/web-app/dist/assets/{bell-Dde5IbnI.js → bell-DbPR2_4r.js} +1 -1
- package/web-app/dist/assets/{bot-trRuIJT6.js → bot-DvjP3Yh5.js} +1 -1
- package/web-app/dist/assets/{check-DmsthR-3.js → check-D1OBxHeU.js} +1 -1
- package/web-app/dist/assets/{chevron-left-C5wZb7mg.js → chevron-left-D09jDZ29.js} +1 -1
- package/web-app/dist/assets/{circle-alert-BCb173fK.js → circle-alert-DyZMLOcC.js} +1 -1
- package/web-app/dist/assets/{clock-CvcqL3Ma.js → clock-CdpdJTId.js} +1 -1
- package/web-app/dist/assets/{cloud-CW1r3-AN.js → cloud-CoLTlmoj.js} +1 -1
- package/web-app/dist/assets/{code-xml-uxBTXAfZ.js → code-xml-DrkE2ZZY.js} +1 -1
- package/web-app/dist/assets/{database-DBrvW0o1.js → database-CMQQuM2R.js} +1 -1
- package/web-app/dist/assets/{dollar-sign-WrOyoDcN.js → dollar-sign-CuioDaOG.js} +1 -1
- package/web-app/dist/assets/{file-code-corner-8JC8TI2_.js → file-code-corner-Cx9j9K1S.js} +1 -1
- package/web-app/dist/assets/{file-plus-CgUdOr2u.js → file-plus-CYD2zaaI.js} +1 -1
- package/web-app/dist/assets/{globe-w-0x46nt.js → globe-6w-hnQkL.js} +1 -1
- package/web-app/dist/assets/{hammer-Civ6_wQq.js → hammer-BpqtautL.js} +1 -1
- package/web-app/dist/assets/{index-wvGJotyF.js → index-Dzs-9EgJ.js} +3 -3
- package/web-app/dist/assets/{layers-Cc3wLG39.js → layers-D5hd7jb7.js} +1 -1
- package/web-app/dist/assets/{loader-circle-BedHqfS4.js → loader-circle-C6Y9x_7H.js} +1 -1
- package/web-app/dist/assets/{lock-CRyzk3QG.js → lock-D51L7rYh.js} +1 -1
- package/web-app/dist/assets/{package-DCT1v7W2.js → package-BJF8hkP8.js} +1 -1
- package/web-app/dist/assets/{plus-C7eerOb_.js → plus-D5kUQ79n.js} +1 -1
- package/web-app/dist/assets/{refresh-cw-DO753Y_B.js → refresh-cw-BKdlCa7F.js} +1 -1
- package/web-app/dist/assets/{rotate-ccw-ptlyGV4I.js → rotate-ccw-_bd_YI1e.js} +1 -1
- package/web-app/dist/assets/{scroll-text-CqPwk4yI.js → scroll-text-DbkegIxF.js} +1 -1
- package/web-app/dist/assets/{server-BP_VvY9m.js → server-DAwqFIsq.js} +1 -1
- package/web-app/dist/assets/{shield-alert-Bf0waB0a.js → shield-alert-BuR1tPHu.js} +1 -1
- package/web-app/dist/assets/{thumbs-up-p1roSIsw.js → thumbs-up-BF6p3mRd.js} +1 -1
- package/web-app/dist/assets/{trash-2-BrMaXAxl.js → trash-2-BVpnkqqz.js} +1 -1
- package/web-app/dist/assets/{trending-down-DaGcCn2W.js → trending-down-DpsDvRwW.js} +1 -1
- package/web-app/dist/assets/{trending-up-CKPupOSE.js → trending-up-mFogTjt3.js} +1 -1
- package/web-app/dist/assets/{upload-CR0gzibW.js → upload-4T8zpBsi.js} +1 -1
- package/web-app/dist/assets/{usePolling-kKzJRjFw.js → usePolling-DPXQv8WO.js} +1 -1
- package/web-app/dist/assets/{user-CPOXPTtD.js → user-BYGIFaTm.js} +1 -1
- package/web-app/dist/index.html +1 -1
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# v11.4.0 plan: beat opencode by 1-2 points in every category
|
|
2
|
+
|
|
3
|
+
Founder directive (2026-10-15): close every gap an outside assessment found
|
|
4
|
+
against opencode. Keep Loki autonomous. Keep the harness and internals
|
|
5
|
+
(RARV-C, receipts, Seal, council) as they are, and keep Claude Code as the
|
|
6
|
+
primary provider. Ship all of it as one MINOR release, v11.4.0, built in
|
|
7
|
+
parallel. Under the founder's standing waiver nothing is tested.
|
|
8
|
+
|
|
9
|
+
Founder clarification (2026-10-15): `loki start` is always the primary
|
|
10
|
+
path. `loki chat` is an alternative surface. Every improvement in this
|
|
11
|
+
release (model routes, local models, providers, agents, routing, exit codes,
|
|
12
|
+
run summary, onboarding) must work through `loki start` first. Chat must hand
|
|
13
|
+
off to and from `loki start` without friction: `/run` in chat starts the same
|
|
14
|
+
run with the same model, provider and agents, and chat can attach to a
|
|
15
|
+
running or finished `loki start` session (status, steer, diff, verify).
|
|
16
|
+
|
|
17
|
+
## Scorecard target
|
|
18
|
+
|
|
19
|
+
| Category | Was (Loki / opencode) | Target | Slices |
|
|
20
|
+
|---|---|---|---|
|
|
21
|
+
| Everyday user experience | 6 / 8 | 10 | OC-CHAT, OC-OUTPUT |
|
|
22
|
+
| Installation and onboarding | 6 / 8 | 10 | OC-ONBOARD, OC-DOCS |
|
|
23
|
+
| Learning curve | 5 / 8 | 10 | OC-ROUTE, OC-HELP |
|
|
24
|
+
| Interactive coding and exploration | 6 / 9 | 10 | OC-CHAT |
|
|
25
|
+
| Small, targeted changes | 7 / 8 | 10 | OC-EDIT |
|
|
26
|
+
| Model/provider flexibility | 5 / 9 | 10 | OC-MODELS, OC-OPENCODE-E10 |
|
|
27
|
+
| Local-model setup | 5 / 8 | 10 | OC-MODELS |
|
|
28
|
+
| Multi-agent workflow design | 7 / 8 | 10 | OC-AGENTS |
|
|
29
|
+
| Documentation consistency | 4 / 7 | 10 | OC-DOCS |
|
|
30
|
+
| Predictability across commands/upgrades | 5 / 6 | 10 | OC-ROUTE, OC-EXIT, OC-PARITY-COST, OC-PARITY-ENFORCE |
|
|
31
|
+
|
|
32
|
+
## Todo (one slice each, parallel, own branch `slice-OC-<KEY>`)
|
|
33
|
+
|
|
34
|
+
- [x] OC-CHAT: `loki chat` opens an interactive session (the first cut
|
|
35
|
+
also opened it from bare `loki` on a TTY; that was reverted, and bare `loki`
|
|
36
|
+
stays unchanged). Plan mode is read-only and Build mode edits; `/plan`
|
|
37
|
+
and `/build` switch between them. Slash commands: /run, /quick, /edit,
|
|
38
|
+
/verify, /receipt, /model, /provider, /cost, /diff, /undo, /help, /exit.
|
|
39
|
+
`loki chat --tui` launches Claude Code's own TUI.
|
|
40
|
+
- [x] OC-ROUTE: one predictable execution path. Flag-first calls, PRD files
|
|
41
|
+
and one-word starts reach the same engine as the positional form. The
|
|
42
|
+
legacy engine runs only on an explicit `--engine legacy` or
|
|
43
|
+
`LOKI_ENGINE=legacy`. `loki route <args>` prints the engine and why.
|
|
44
|
+
- [x] OC-EXIT: close the three `loki verify` exit-code gaps and use one
|
|
45
|
+
exit-code contract for verify, run, quick and edit. Update
|
|
46
|
+
docs/exit-codes.md and remove the KNOWN-ISSUES entry.
|
|
47
|
+
- [x] OC-MODELS: model routes over the Claude harness, so every Tier-1
|
|
48
|
+
control still works. Routes: `--model openrouter/<id>`, `ollama/<id>`,
|
|
49
|
+
`lmstudio/<id>`, `llamacpp/<id>`, `vllm/<id>`, and any
|
|
50
|
+
Anthropic-compatible base URL. `loki models` lists routes;
|
|
51
|
+
`loki models --local` discovers local runtimes.
|
|
52
|
+
- [x] OC-PARITY-COST: engine10 measures cost for Codex, Cline and Aider.
|
|
53
|
+
- [x] OC-PARITY-ENFORCE: engine10 enforces the budget kill, a post-iteration
|
|
54
|
+
guard scan and native sandbox flags for Codex, Cline, Aider and opencode.
|
|
55
|
+
Receipts still list `kill blocking not enforced` because the scan is post-hoc.
|
|
56
|
+
- [x] OC-OPENCODE-E10: opencode becomes a supported engine10 provider.
|
|
57
|
+
- [x] OC-AGENTS: configurable child agents in `.loki/agents/*.md` (model,
|
|
58
|
+
provider, tools, permissions, prompt), managed with
|
|
59
|
+
`loki agents list|new|show`. Councils and reviewers use them when present,
|
|
60
|
+
and they export to Claude Code subagents.
|
|
61
|
+
- [x] OC-EDIT: `loki edit "<change>"` makes a fast single-pass edit with no
|
|
62
|
+
PR, plan or council. It shows the diff; `--verify` and `--receipt` are
|
|
63
|
+
opt-in.
|
|
64
|
+
- [x] OC-ONBOARD: `loki setup` wizard and `loki doctor --fix`. Claude Code
|
|
65
|
+
first, with required and optional prerequisites stated plainly.
|
|
66
|
+
- [x] OC-HELP: `loki help` shows the core verbs, `loki help all` shows the
|
|
67
|
+
full surface, and `loki help <topic>` covers topics. Mistyped commands get
|
|
68
|
+
"did you mean" suggestions, and `--json` works the same everywhere.
|
|
69
|
+
- [x] OC-OUTPUT: one run summary across engines (result, cost, time,
|
|
70
|
+
receipt, next step), with `--quiet` and NO_COLOR honored.
|
|
71
|
+
- [ ] OC-START-INTEGRATION (after merge): wire every feature above into
|
|
72
|
+
`loki start` (`--model <route>`, `--provider`, configured agents, unified
|
|
73
|
+
summary, exit codes, explain-route). Bare `loki` keeps its current
|
|
74
|
+
behavior and does not open chat. Seamless chat handoff: `/run` reuses the
|
|
75
|
+
chat's model, provider and agents; `loki chat --attach` joins the current
|
|
76
|
+
or last `loki start` session; the run summary's next step names
|
|
77
|
+
`loki chat --attach`.
|
|
78
|
+
- [x] OC-DOCS (after merge; README, INSTALLATION, GUIDE, QUICKSTART and
|
|
79
|
+
COMPARE-OPENCODE written): README, INSTALLATION, GUIDE and a new QUICKSTART
|
|
80
|
+
agree with the code on prerequisites, the spend cap, routing and providers.
|
|
81
|
+
Add docs/COMPARE-OPENCODE.md.
|
|
82
|
+
- [ ] Release: merge onto train-v11.4.0, rebuild loki-ts dist, write a full
|
|
83
|
+
CHANGELOG v11.4.0 section, run `scripts/release.sh minor --bump-only`,
|
|
84
|
+
push main, and confirm the release run.
|
package/docs/v10/PROGRESS.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Progress
|
|
2
2
|
|
|
3
|
+
## 2026-10-09T02:45Z: v11.3.8 shipped, nightly root cause, 5 slices dispatched (CoS)
|
|
4
|
+
- v11.3.8 (WF-2MIN-3): push 80989fdf0, release 37875150528 success on all jobs, npm next 11.3.8, GH release not draft (body 1180 chars). Dispatch to publish 1m43s; registry lag ~4m29s. Steering smoke PASS.
|
|
5
|
+
- Nightly schedule vs dispatch: no trigger-dependent code path besides dedupe. The 10-08 14:12Z scheduled red (37790534786) tested a0d599d0c, before FC-53 0c0069df3 / NR-DOCTOR 0620ecd0e / NR-PIPE 0a66fe634; dispatch 37780519439 on the same SHA failed identically. Current main passes both tests 5/5 locally.
|
|
6
|
+
- BACKSTOP-TRIGGER built at 65446060c (pytest 68 passed, ci-cache-scope 13 passed, 6 mutations red); TL review running.
|
|
7
|
+
- WF-2MIN-4 TL BLOCK (M2/M3/M4 mutations survive; draft delete reachable on a transient gh error); fix engineer running.
|
|
8
|
+
- Dispatched: CPE24-P2a, CPE24-P4a, FC-01b, FC-09r.
|
|
9
|
+
|
|
3
10
|
## 2026-10-09T02:10Z: v11.3.7 train (AUTO-REAP) pushing (CoS)
|
|
4
11
|
- AUTO-REAP 0024b137e merged (TL APPROVE delta); guards: 19 rows, sigpipe red 1748>1742 fixed by here-strings in test-worktree-reap.sh, rerun 4/0 and 38/0.
|
|
5
12
|
- In flight: WF-2MIN-3 TL review, WF-2MIN-4 built (ed92048b8), ENV-INTAKE r1fix, CANARY-SHAPE.
|