loki-mode 11.72.5 → 11.74.0
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/SKILL.md +2 -2
- package/VERSION +1 -1
- package/autonomy/company-seats.json +82 -0
- package/autonomy/loki +14 -4
- package/autonomy/trigger-schedule.py +414 -6
- package/completions/loki.bash +5 -0
- package/dashboard/__init__.py +1 -1
- package/docs/CLI-REFERENCE.md +1 -1
- package/docs/INSTALLATION.md +1 -1
- package/docs/v10/OPERATING-MODEL.md +20 -8
- package/docs/v10/RETRO-2026.md +650 -0
- package/loki-ts/dist/loki.js +2 -2
- package/mcp/__init__.py +1 -1
- package/package.json +2 -2
- package/plugins/loki-mode/.claude-plugin/plugin.json +1 -1
- package/tools/cockpit/SPEC.md +275 -0
- package/tools/cockpit/index.html +146 -0
- package/tools/cockpit/roi-basis.json +33 -0
- package/tools/cockpit/server.py +946 -0
- package/web-app/dist/assets/{AdminPage-Dm_5zuet.js → AdminPage-tOzodPzi.js} +1 -1
- package/web-app/dist/assets/{Avatar-BvqpB-F4.js → Avatar-gnHOTpn7.js} +1 -1
- package/web-app/dist/assets/{Badge-cA69Pepr.js → Badge-D-zPIsIE.js} +1 -1
- package/web-app/dist/assets/{Button-CDmFgrwq.js → Button-Ba3teZuX.js} +1 -1
- package/web-app/dist/assets/{CockpitPage-Iqjcnh-c.js → CockpitPage-DnB6jCFt.js} +1 -1
- package/web-app/dist/assets/{ComparePage-D8RAxAOR.js → ComparePage-Dv5VR5dI.js} +1 -1
- package/web-app/dist/assets/{ErrorBoundary-GijzDi6f.js → ErrorBoundary-D3PxG1EY.js} +1 -1
- package/web-app/dist/assets/{EvidenceReceiptPanel-Bqw8-22j.js → EvidenceReceiptPanel-CrpPxnCl.js} +1 -1
- package/web-app/dist/assets/{GitHubIssuesPanel-Bzf04hzj.js → GitHubIssuesPanel-F7xTGZKO.js} +1 -1
- package/web-app/dist/assets/{GitHubPRsPanel-DGgDjMUo.js → GitHubPRsPanel-BYXG9iC7.js} +1 -1
- package/web-app/dist/assets/{HomePage-DkYbylcL.js → HomePage-CO9c8oIn.js} +2 -2
- package/web-app/dist/assets/{LoginPage-DcKcxe5E.js → LoginPage-CmN5NyRe.js} +1 -1
- package/web-app/dist/assets/{MagicPage-DhJvyXuv.js → MagicPage-BPUMtPt8.js} +1 -1
- package/web-app/dist/assets/{MetricsPage-XuL_5vIR.js → MetricsPage-Dm3GHAsm.js} +1 -1
- package/web-app/dist/assets/{NotFoundPage-DJ_xp0Pk.js → NotFoundPage-Boe4TCcQ.js} +1 -1
- package/web-app/dist/assets/{ProjectPage-tQud0wez.js → ProjectPage-BFc_Uj5w.js} +3 -3
- package/web-app/dist/assets/{ProjectsPage-DH0qu3Pr.js → ProjectsPage-DMQ5nIgH.js} +1 -1
- package/web-app/dist/assets/{SettingsPage-C6awIK-D.js → SettingsPage-DDSWgjSO.js} +1 -1
- package/web-app/dist/assets/{ShowcasePage-BZmouaYY.js → ShowcasePage-C1zCzPa1.js} +1 -1
- package/web-app/dist/assets/{SystemSettingsPage-DlzkIHxb.js → SystemSettingsPage-D0CAotwF.js} +1 -1
- package/web-app/dist/assets/{TeamsPage-BE9A2S7z.js → TeamsPage-CPYm4yhm.js} +1 -1
- package/web-app/dist/assets/{TemplatesPage-C6xj7zEx.js → TemplatesPage-BdoBMm29.js} +1 -1
- package/web-app/dist/assets/{TerminalOutput-s7aXRB6h.js → TerminalOutput-CuKnS9oh.js} +1 -1
- package/web-app/dist/assets/{activity-DFWHHxU2.js → activity-Cs5LdWlh.js} +1 -1
- package/web-app/dist/assets/{bell-Bvmj6_8N.js → bell-IueQl5bE.js} +1 -1
- package/web-app/dist/assets/{bot-CccLnU-x.js → bot-Cpzd92QS.js} +1 -1
- package/web-app/dist/assets/{check-CZhlpbNc.js → check-xIB1DeBr.js} +1 -1
- package/web-app/dist/assets/{chevron-left-0jhI7cBO.js → chevron-left-B5b17KZc.js} +1 -1
- package/web-app/dist/assets/{circle-alert-D1L0kBVz.js → circle-alert-BfWbFPEh.js} +1 -1
- package/web-app/dist/assets/{clock-DGWLNKjf.js → clock-By9_QIi9.js} +1 -1
- package/web-app/dist/assets/{cloud-a1MQAGdL.js → cloud-DIoOyUKF.js} +1 -1
- package/web-app/dist/assets/{code-xml-DxVV6byE.js → code-xml-DpKRt91V.js} +1 -1
- package/web-app/dist/assets/{database-D3924vBP.js → database-pPFHh_ki.js} +1 -1
- package/web-app/dist/assets/{dollar-sign-C8x-FGop.js → dollar-sign-Cpg8N8aR.js} +1 -1
- package/web-app/dist/assets/{file-code-corner-CnlvfUOb.js → file-code-corner-B6KJxWC_.js} +1 -1
- package/web-app/dist/assets/{file-plus--tA113s3.js → file-plus-C2KqIxgl.js} +1 -1
- package/web-app/dist/assets/{globe-0CjDC5UM.js → globe-Dfp84gVc.js} +1 -1
- package/web-app/dist/assets/{hammer-CbqEYcGU.js → hammer-8Y1MYrke.js} +1 -1
- package/web-app/dist/assets/{index-CLoaV7sW.js → index-Diz9R0Ad.js} +3 -3
- package/web-app/dist/assets/{layers-9yjLnKlC.js → layers-Bl1-P7Mb.js} +1 -1
- package/web-app/dist/assets/{loader-circle-Ca13l3wn.js → loader-circle-BBLKWE-I.js} +1 -1
- package/web-app/dist/assets/{lock-B4iSBE00.js → lock-CjVUTsEb.js} +1 -1
- package/web-app/dist/assets/{package-C0yE2f0g.js → package-D80urViP.js} +1 -1
- package/web-app/dist/assets/{plus-CdRL6Oo5.js → plus-EBsGo-WE.js} +1 -1
- package/web-app/dist/assets/{refresh-cw-BlIOCuip.js → refresh-cw-Cj4D7iA7.js} +1 -1
- package/web-app/dist/assets/{rotate-ccw-CGjJ0OjA.js → rotate-ccw-D4fUvKp7.js} +1 -1
- package/web-app/dist/assets/{scroll-text-BWKkwBJS.js → scroll-text-KPjNlar2.js} +1 -1
- package/web-app/dist/assets/{server-D6NDFit1.js → server-BxSS3qLC.js} +1 -1
- package/web-app/dist/assets/{shield-alert-CA9E0ro3.js → shield-alert-kmsOLKh_.js} +1 -1
- package/web-app/dist/assets/{thumbs-up-pGSCT8yq.js → thumbs-up-BFA68HSV.js} +1 -1
- package/web-app/dist/assets/{trash-2--Vr-M4Ty.js → trash-2-DPSwmDYc.js} +1 -1
- package/web-app/dist/assets/{trending-down-Ci4vIc_h.js → trending-down-C8cVBNwP.js} +1 -1
- package/web-app/dist/assets/{trending-up-BGiZ0e9c.js → trending-up-BazAYgbt.js} +1 -1
- package/web-app/dist/assets/{upload-BAVIKX0b.js → upload-B14dm_MM.js} +1 -1
- package/web-app/dist/assets/{usePolling-COCviyJj.js → usePolling-ELsOlZfz.js} +1 -1
- package/web-app/dist/assets/{user-BASUHaOe.js → user-4bTC0Fne.js} +1 -1
- package/web-app/dist/index.html +1 -1
|
@@ -3,15 +3,21 @@
|
|
|
3
3
|
The CEO is Lokesh Mure (Loki), the founder. Everyone else is an agent. The company ships Loki Mode v10 per docs/V10-VISION.md. Order when goals conflict: moat > Seal accuracy > delivered accuracy > cost > speed. Velocity target: 30-60 releases per day.
|
|
4
4
|
|
|
5
5
|
## Roles and models (pin every agent's model explicitly, D13)
|
|
6
|
-
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
6
|
+
Ten standing seats. Each file holds the seat's mandate, metrics, decision rights, inputs, outputs, escalation rule and the RETRO-2026.md root causes it owns. Each seat writes .loki/company/status/<slug>.json every turn; the cockpit (tools/cockpit/SPEC.md) reads them.
|
|
7
|
+
- chief-of-staff (opus, the main session; .claude/agents/chief-of-staff.md): operating rhythm, BOARD.md dispatch, CEO digest, founder queue, ROI ledger; holds the PM duty; escalates only to Loki; never writes product code. RC6, RC9, RC1.
|
|
8
|
+
- cto (opus; .claude/agents/cto.md): architecture and quality calls; approves any change to the moat, gates or release policy; acts as Architect for large tasks (designs the slices, never implements them); rules review round 3. RC4, RC7, RC3.
|
|
9
|
+
- release-reliability-lead (sonnet, exactly one; .claude/agents/release-reliability-lead.md): the Release Manager, the only role that pushes main, bumps VERSION, tags or publishes; owns channel truth and the post-publish first-run gate. RC5, RC7, RC4.
|
|
10
|
+
- verification-scientist (opus; .claude/agents/verification-scientist.md): claims registry, Seal and verdict accuracy, guard mutation; veto on uncited claims. RC2, RC1, RC3.
|
|
11
|
+
- research-outcomes-scientist (opus; .claude/agents/research-outcomes-scientist.md): nightly Loki versus raw claude -p scoreboard, the only source for outcome claims. RC1, RC9, RC5.
|
|
12
|
+
- research-harness-scientist (opus; .claude/agents/research-harness-scientist.md): ablation, model-tier pinning, SDK freshness, frontier scan. RC9, RC1, RC10.
|
|
13
|
+
- product-growth-lead (sonnet; .claude/agents/product-growth-lead.md): the Product Owner; strategy page, backlog ranking, slice cards (60 lines max), funnel, competitor matrix. RC10, RC4, RC1.
|
|
14
|
+
- developer-experience-lead (sonnet; .claude/agents/developer-experience-lead.md): install, loki start, preview, dashboard, docs from code, platforms. RC5, RC10, RC2.
|
|
15
|
+
- security-lead (sonnet; .claude/agents/security-lead.md): secrets, deny-by-default env, auth boundaries; dispatches the HIGH security reviewers. RC3, RC5, RC8.
|
|
16
|
+
- platform-lead (sonnet; .claude/agents/platform-lead.md): process safety, guards as mechanisms, CI speed, structured stores, the cockpit build. RC8, RC3, RC7.
|
|
17
|
+
Spawned per slice, not standing seats:
|
|
18
|
+
- Software Engineers (sonnet): one slice each, worktree isolation, single writer, red-then-green tests.
|
|
11
19
|
- Tech Leads (sonnet): LOW and MEDIUM reviews, unanimous (D12).
|
|
12
20
|
- Reviewers for HIGH-tier work (opus): moat, verifier, Seal, auth, security. Unanimous; a reproduced blocking finding always blocks (D12).
|
|
13
|
-
- Software Engineers (sonnet): one slice each, worktree isolation, single writer, red-then-green tests.
|
|
14
|
-
- Release Manager (sonnet, exactly one): the only role that pushes main, bumps VERSION, tags or publishes.
|
|
15
21
|
|
|
16
22
|
## Leadership lock (one company per repo)
|
|
17
23
|
- The leader holds .loki/v10-leader (PID and start time). A session becomes leader only if that file is missing or its PID is dead (kill -0 fails).
|
|
@@ -20,7 +26,7 @@ The CEO is Lokesh Mure (Loki), the founder. Everyone else is an agent. The compa
|
|
|
20
26
|
## Nobody sits idle
|
|
21
27
|
- Ready queue >= 30 specced slices (features, enhancements, fixes evenly; D91). Seat cap 20 (D103: founder ruled cost irrelevant on the Max plan; load and memory are the limit).
|
|
22
28
|
- The Chief of Staff keeps 8-16 engineers busy whenever ready slices exist. When anyone finishes, the next slice is assigned in the same turn.
|
|
23
|
-
- The ready queue never drops below 2x the number of engineers;
|
|
29
|
+
- The ready queue never drops below 2x the number of engineers; the chief-of-staff and the product-growth-lead refill it.
|
|
24
30
|
- Idle seats while work exists, or an empty ready queue, is a P0 violation.
|
|
25
31
|
|
|
26
32
|
## Time limits (anything slower gets redesigned, not waited on)
|
|
@@ -46,3 +52,9 @@ The CEO is Lokesh Mure (Loki), the founder. Everyone else is an agent. The compa
|
|
|
46
52
|
- Every incident becomes a guard with a test (docs/v10/GUARDS.md, D26).
|
|
47
53
|
- The pulse block (scripts/v10-pulse.sh) is injected every turn. Act on the top VIOLATION first.
|
|
48
54
|
- Never kill by name or pattern, force-push, git add -A, or bypass branch protection.
|
|
55
|
+
|
|
56
|
+
## Always-on seats (headless)
|
|
57
|
+
- `loki trigger install` seeds one `seat <name>` schedule per .claude/agents/*.md (autonomy/company-seats.json) and installs the LaunchAgent dev.autonomi.loki-company, which runs `loki trigger daemon --loop`. `loki trigger uninstall` removes it. Linux prints a systemd user unit.
|
|
58
|
+
- A tick is `claude -p --agent <name> --dangerously-skip-permissions --output-format json` in the repo root, 20 min cap (LOKI_SEAT_TIMEOUT_SECS). The seat writes .loki/company/<name>/last.json and log.jsonl.
|
|
59
|
+
- Skips: .loki/company/PAUSE, 1-min load above 28, usage governor max engineers 0, a live PID in .loki/v10-leader (chief-of-staff and release-reliability-lead only), or a live per-seat lock. Only the tick's own process group is ever stopped.
|
|
60
|
+
- `loki trigger uninstall` does not stop ticks already running; `touch .loki/company/PAUSE` stops all seats.
|