loki-mode 8.6.0 → 8.6.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/SKILL.md +2 -2
- package/VERSION +1 -1
- package/autonomy/loki +1 -0
- package/autonomy/run.sh +11 -0
- package/dashboard/__init__.py +1 -1
- package/docs/STRATEGY-2026-2028.md +124 -0
- package/docs/adoption-baseline-2026-07-31.md +84 -0
- package/loki-ts/dist/loki.js +313 -308
- package/mcp/__init__.py +1 -1
- package/package.json +1 -1
- package/plugins/loki-mode/.claude-plugin/plugin.json +1 -1
package/SKILL.md
CHANGED
|
@@ -3,7 +3,7 @@ name: loki-mode
|
|
|
3
3
|
description: Autonomous spec-driven build system with a built-in trust layer. It does not call work done until it is verified (RARV-C closure loop, 8 quality gates, completion council, verified-completion evidence gate). Triggers on "Loki Mode". Takes a spec (PRD, GitHub issue, OpenAPI doc, etc.) to deployed product with minimal human intervention. Provider-agnostic. Requires --dangerously-skip-permissions flag.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Loki Mode v8.6.
|
|
6
|
+
# Loki Mode v8.6.1
|
|
7
7
|
|
|
8
8
|
**You are an autonomous agent. You make decisions. You do not ask questions. You do not stop.**
|
|
9
9
|
|
|
@@ -469,4 +469,4 @@ See `CHANGELOG.md` entries [7.5.7], [7.5.8], [7.5.13] for the per-fix list and r
|
|
|
469
469
|
|
|
470
470
|
---
|
|
471
471
|
|
|
472
|
-
**v8.6.
|
|
472
|
+
**v8.6.1 | [Autonomi](https://www.autonomi.dev/) flagship product | ~410 lines core**
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
8.6.
|
|
1
|
+
8.6.1
|
package/autonomy/loki
CHANGED
|
@@ -1017,6 +1017,7 @@ show_help() {
|
|
|
1017
1017
|
echo "Cost controls (budget, iteration and wall-clock caps): docs/cost-controls.md"
|
|
1018
1018
|
echo "Already have a codebase? Start read-only: docs/brownfield.md"
|
|
1019
1019
|
echo "No egress allowed? What runs disconnected: docs/air-gapped.md"
|
|
1020
|
+
echo "Where this is going: docs/STRATEGY-2026-2028.md"
|
|
1020
1021
|
echo ""
|
|
1021
1022
|
echo "Scripting Loki? Exit codes for every command are documented in"
|
|
1022
1023
|
echo "docs/exit-codes.md. Severity rises with the code, and 'loki start'"
|
package/autonomy/run.sh
CHANGED
|
@@ -13321,6 +13321,17 @@ ${dependency_context}"
|
|
|
13321
13321
|
"diff_bytes=$_review_diff_bytes" \
|
|
13322
13322
|
"limit_bytes=$_review_max_bytes" \
|
|
13323
13323
|
"iteration=${ITERATION_COUNT:-0}" 2>/dev/null || true
|
|
13324
|
+
# Classify this as INFRASTRUCTURE, not a finding. The discriminator is
|
|
13325
|
+
# otherwise set at :14912, which this early return never reaches, so the
|
|
13326
|
+
# variable stayed "" from the reset at :12959 and the consumer at :22126
|
|
13327
|
+
# read a file-size condition as "Critical/High findings" -- escalating to
|
|
13328
|
+
# PAUSE over a diff that was merely too large to send.
|
|
13329
|
+
#
|
|
13330
|
+
# Still fail-closed: the review did NOT pass, and nothing here converts a
|
|
13331
|
+
# skipped review into a green one. It only records WHY it could not run,
|
|
13332
|
+
# which is the difference between "your code is bad" and "we could not
|
|
13333
|
+
# look at it".
|
|
13334
|
+
_LOKI_REVIEW_FAILURE_KIND="infrastructure_inconclusive"
|
|
13324
13335
|
return 1
|
|
13325
13336
|
fi
|
|
13326
13337
|
|
package/dashboard/__init__.py
CHANGED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# Two-year adoption strategy
|
|
2
|
+
|
|
3
|
+
Written 2026-07-31 from measured inputs: registry download data, competitor
|
|
4
|
+
documentation fetched the same day, and benchmark results from this repository.
|
|
5
|
+
Where a claim is inference rather than measurement, it says so.
|
|
6
|
+
|
|
7
|
+
## The one number that matters
|
|
8
|
+
|
|
9
|
+
**Floor: ~94 downloads/day. Peak: 1,263.** The 13x swing tracks our own
|
|
10
|
+
release activity -- eight releases landed on 07-30. A curve that rises when we
|
|
11
|
+
publish and falls when we stop is CI and mirrors, not word of mouth.
|
|
12
|
+
|
|
13
|
+
Organic growth is a **rising floor**. Everything below is judged against that
|
|
14
|
+
single number, measured on days we ship nothing.
|
|
15
|
+
|
|
16
|
+
Two years from now the question is not "how many releases did we cut." It is
|
|
17
|
+
"what is the floor, and does it rise when we are quiet."
|
|
18
|
+
|
|
19
|
+
## What we actually sell, stated so it survives a demo
|
|
20
|
+
|
|
21
|
+
Competitor documentation, fetched 2026-07-31:
|
|
22
|
+
|
|
23
|
+
- **Lovable** runs a security scan on every publish and admins can block the
|
|
24
|
+
publish outright.
|
|
25
|
+
- **Claude Code** has a review step that checks findings against actual code
|
|
26
|
+
behavior.
|
|
27
|
+
- **Replit** says its agent tests its own work.
|
|
28
|
+
|
|
29
|
+
So **"we verify and they don't" is false**, and a founder demo against Lovable
|
|
30
|
+
would expose it. That framing is retired.
|
|
31
|
+
|
|
32
|
+
What is true and unoccupied across all seven competitors: **nobody ships a
|
|
33
|
+
persisted, portable, diff-bound artifact.** Theirs live in a dashboard --
|
|
34
|
+
Lovable's is a findings count in a dialog, Claude Code's check run is
|
|
35
|
+
deliberately non-blocking. Ours is a file: bound to a diff by `diff_sha256`,
|
|
36
|
+
recording what was NOT proven as prominently as what was, verifiable by someone
|
|
37
|
+
who never installed us.
|
|
38
|
+
|
|
39
|
+
That is the sentence. Portable, diff-bound, honest about gaps.
|
|
40
|
+
|
|
41
|
+
## The second thing we sell, now measured
|
|
42
|
+
|
|
43
|
+
**The harness carries quality, not the model.** On `hard-2-ledger`, a task
|
|
44
|
+
authored so a bare model fails it:
|
|
45
|
+
|
|
46
|
+
| arm | result | cost |
|
|
47
|
+
|---|---|---|
|
|
48
|
+
| haiku, harness off | 1/4 passed | $0.86 |
|
|
49
|
+
| haiku, harness on | 1/1 passed | $0.54 |
|
|
50
|
+
|
|
51
|
+
Same model. Same prompt. The harness is the only variable. A correct
|
|
52
|
+
implementation cost **less** than the failing ones, because a cheap failure is
|
|
53
|
+
not cheap.
|
|
54
|
+
|
|
55
|
+
Caveat, stated because it will be checked: n is small and trials are still
|
|
56
|
+
accumulating. This demonstrates the mechanism. The rate needs more trials, and
|
|
57
|
+
those are now worth buying -- before this task existed, the baseline passed
|
|
58
|
+
everything and more trials bought precision around a ceiling.
|
|
59
|
+
|
|
60
|
+
## Where we win, and where we should not fight
|
|
61
|
+
|
|
62
|
+
**Do not fight on:** hosted preview URLs, visual editing, zero-install browser
|
|
63
|
+
onboarding, managed backend primitives. Those are structural properties of a
|
|
64
|
+
hosted product. Lovable publishes to `[name].lovable.app` free at zero credit
|
|
65
|
+
balance; we cannot and should not try.
|
|
66
|
+
|
|
67
|
+
**Win on the three axes competitors structurally cannot occupy:**
|
|
68
|
+
|
|
69
|
+
1. **Air-gapped operation.** Measured with egress severed: `version`, `doctor`,
|
|
70
|
+
`plan --json`, `proof verify`, `heal --assess` all return real results. No
|
|
71
|
+
competitor can do this -- "Devin's brain always resides within Cognition's
|
|
72
|
+
Cloud." For defence, government, and regulated banking this is winnable on
|
|
73
|
+
this axis alone. One required egress (model inference), disclosed.
|
|
74
|
+
|
|
75
|
+
2. **In-place brownfield.** Lovable **cannot import an existing repository at
|
|
76
|
+
all**. Replit and Cursor import into *their* environment. For a private
|
|
77
|
+
monorepo with internal dependencies, that is frequently not permitted. We
|
|
78
|
+
run where the code already lives.
|
|
79
|
+
|
|
80
|
+
3. **Cost per correct result.** Haiku-plus-harness beat opus-baseline in the
|
|
81
|
+
aggregate at roughly an eighth the cost. If that holds under more trials, it
|
|
82
|
+
is a procurement argument, not a benchmark curiosity.
|
|
83
|
+
|
|
84
|
+
## The two-year sequence
|
|
85
|
+
|
|
86
|
+
**Year 1, first half -- earn the floor.** Every item judged by whether a first
|
|
87
|
+
run reaches a result. Ship `first_run_blocked` (done, v8.6.0), read what it
|
|
88
|
+
says, fix the top blocker, repeat. The floor is the scoreboard.
|
|
89
|
+
|
|
90
|
+
Concretely already done and testable: 43 of 112 commands were unreachable from
|
|
91
|
+
`loki help` including `loki proof`; a first-run dead end on provider-less hosts;
|
|
92
|
+
`loki proof md` so the receipt travels into a PR or Slack.
|
|
93
|
+
|
|
94
|
+
**Year 1, second half -- make the receipt the artefact people forward.** A
|
|
95
|
+
receipt in a PR is a person showing a colleague. That is the only word-of-mouth
|
|
96
|
+
mechanic available to a CLI, and it costs no infrastructure.
|
|
97
|
+
|
|
98
|
+
**Year 2 -- enterprise pull, not push.** Air-gapped + in-place brownfield +
|
|
99
|
+
signed provenance is a procurement story no competitor can match today. It sells
|
|
100
|
+
to the buyer who cannot use the others at all, and those buyers talk to each
|
|
101
|
+
other.
|
|
102
|
+
|
|
103
|
+
## What would falsify this
|
|
104
|
+
|
|
105
|
+
Stated so it is checkable rather than reassuring:
|
|
106
|
+
|
|
107
|
+
- **The floor does not rise** over the next quarter despite first-run fixes ->
|
|
108
|
+
the bottleneck is not discoverability, and this plan is wrong.
|
|
109
|
+
- **`first_run_blocked` shows trials dying on something we did not predict** ->
|
|
110
|
+
follow the data, not this document.
|
|
111
|
+
- **The harness lift does not survive more trials** -> the cost argument
|
|
112
|
+
collapses and the differentiator narrows to portability alone.
|
|
113
|
+
- **A competitor ships a portable signed receipt** -> the wedge is gone and we
|
|
114
|
+
compete on cost and air-gap only.
|
|
115
|
+
|
|
116
|
+
## What is deliberately not here
|
|
117
|
+
|
|
118
|
+
No 80-item backlog. The items that exist are the ones with a measured
|
|
119
|
+
mechanism. Padding this list to look comprehensive would be the fabrication
|
|
120
|
+
this project has already paid for once.
|
|
121
|
+
|
|
122
|
+
Release cadence is explicitly **not** a growth lever: eight releases in one day
|
|
123
|
+
produced a 1,263 spike and a 94 floor. If the floor is the goal, cadence is
|
|
124
|
+
noise.
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Adoption baseline, 2026-07-31
|
|
2
|
+
|
|
3
|
+
The first numbers in this project taken from the registry rather than from
|
|
4
|
+
intuition. Recorded so the next measurement has something to compare against.
|
|
5
|
+
|
|
6
|
+
## What we actually have
|
|
7
|
+
|
|
8
|
+
**4,456 npm downloads in the last 7 days.** Daily:
|
|
9
|
+
|
|
10
|
+
| Day | Downloads |
|
|
11
|
+
|---|---|
|
|
12
|
+
| 07-24 | 863 |
|
|
13
|
+
| 07-25 | 1,160 |
|
|
14
|
+
| 07-26 | 196 |
|
|
15
|
+
| 07-27 | 94 |
|
|
16
|
+
| 07-28 | 386 |
|
|
17
|
+
| 07-29 | 494 |
|
|
18
|
+
| 07-30 | 1,263 |
|
|
19
|
+
|
|
20
|
+
Two things follow, and the second matters more than the first.
|
|
21
|
+
|
|
22
|
+
**1. We have users.** Roughly 4.5k downloads a week is not a project nobody
|
|
23
|
+
has heard of. Every strategy discussion in this repo has proceeded as though
|
|
24
|
+
adoption were hypothetical. It is not.
|
|
25
|
+
|
|
26
|
+
**2. The shape is release-driven, not organic.** The 13x swing between 07-27
|
|
27
|
+
(94) and 07-30 (1,263) tracks publishing activity -- eight releases landed on
|
|
28
|
+
07-30 alone. A curve that rises when we publish and falls when we stop is
|
|
29
|
+
mirrors and CI, not word of mouth. Organic growth would show a floor that
|
|
30
|
+
rises over time; this shows a floor near 94.
|
|
31
|
+
|
|
32
|
+
**Do not read 4,456 as 4,456 humans.** npm counts mirrors, CI, and Docker
|
|
33
|
+
layer pulls. The honest statement is that the ceiling is real and the floor is
|
|
34
|
+
what needs to move.
|
|
35
|
+
|
|
36
|
+
## Why the floor is the metric
|
|
37
|
+
|
|
38
|
+
The founder's goal is word-of-mouth growth over two years. The number that
|
|
39
|
+
measures it is the **trough**, not the peak: how many installs happen on a day
|
|
40
|
+
we publish nothing. Today that is ~94.
|
|
41
|
+
|
|
42
|
+
Peaks are bought with releases. Floors are earned by people telling other
|
|
43
|
+
people. Every adoption item should be judged against whether it moves the
|
|
44
|
+
floor.
|
|
45
|
+
|
|
46
|
+
## What we still cannot see, and what changed today
|
|
47
|
+
|
|
48
|
+
Until v8.6.0 shipped this morning, we could see that a first run was ATTEMPTED
|
|
49
|
+
and nothing about whether it succeeded. `first_run_blocked` (v8.6.0) now names
|
|
50
|
+
the class of dependency that stops a first run -- enum-clamped, once per
|
|
51
|
+
install, strict opt-in.
|
|
52
|
+
|
|
53
|
+
That data does not exist yet: the release is hours old and the telemetry is
|
|
54
|
+
off by default behind a second opt-in. It will accumulate slowly and from a
|
|
55
|
+
minority of users, which is the correct trade for not exfiltrating anyone's
|
|
56
|
+
environment.
|
|
57
|
+
|
|
58
|
+
So the sequence is: floor today ~94/day -> ship things that plausibly move it
|
|
59
|
+
-> watch the floor, not the peak.
|
|
60
|
+
|
|
61
|
+
## The three things measured this session that plausibly move it
|
|
62
|
+
|
|
63
|
+
Ranked by how directly they affect someone's first ten minutes:
|
|
64
|
+
|
|
65
|
+
1. **43 of 112 commands were unreachable from `loki help`**, including
|
|
66
|
+
`loki proof` -- the Evidence Receipt, the thing the product argues on. Fixed
|
|
67
|
+
and gated. A user who cannot find the differentiator does not repeat it to
|
|
68
|
+
anyone.
|
|
69
|
+
2. **A first-run dead end on hosts with no provider CLI.** One route named the
|
|
70
|
+
blockers and pointed at `loki tour` (no provider, no key, no spend); the
|
|
71
|
+
other said "some required prerequisites are missing" and stopped. That is
|
|
72
|
+
the exact moment an evaluator decides whether to continue.
|
|
73
|
+
3. **`loki proof md`** puts the receipt in a form a person can paste into a PR
|
|
74
|
+
or a Slack message. Competitors' verification output lives in their
|
|
75
|
+
dashboard; a file is the only artifact that travels.
|
|
76
|
+
|
|
77
|
+
None of these is proven to move the floor. They are the candidates with a
|
|
78
|
+
plausible mechanism, and the floor is now being watched.
|
|
79
|
+
|
|
80
|
+
## Reproduce
|
|
81
|
+
|
|
82
|
+
```sh
|
|
83
|
+
curl -s "https://api.npmjs.org/downloads/range/last-week/loki-mode"
|
|
84
|
+
```
|