@ashlr/hub 2.2.0 → 3.0.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.
Files changed (177) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/README.md +59 -2
  3. package/dist/api/plugin.d.ts +1 -0
  4. package/dist/cli/backlog.js +2 -0
  5. package/dist/cli/backlog.js.map +1 -1
  6. package/dist/cli/digest.d.ts +6 -0
  7. package/dist/cli/digest.js +127 -2
  8. package/dist/cli/digest.js.map +1 -1
  9. package/dist/cli/eval-fixtures.d.ts +18 -0
  10. package/dist/cli/eval-fixtures.js +38 -0
  11. package/dist/cli/eval-fixtures.js.map +1 -0
  12. package/dist/cli/eval.d.ts +56 -0
  13. package/dist/cli/eval.js +283 -0
  14. package/dist/cli/eval.js.map +1 -0
  15. package/dist/cli/fleet.d.ts +27 -0
  16. package/dist/cli/fleet.js +222 -0
  17. package/dist/cli/fleet.js.map +1 -0
  18. package/dist/cli/goal.d.ts +15 -0
  19. package/dist/cli/goal.js +91 -0
  20. package/dist/cli/goal.js.map +1 -0
  21. package/dist/cli/help.js +10 -3
  22. package/dist/cli/help.js.map +1 -1
  23. package/dist/cli/inbox.d.ts +6 -0
  24. package/dist/cli/inbox.js +183 -8
  25. package/dist/cli/inbox.js.map +1 -1
  26. package/dist/cli/index.js +42 -0
  27. package/dist/cli/index.js.map +1 -1
  28. package/dist/cli/loop.d.ts +16 -0
  29. package/dist/cli/loop.js +66 -0
  30. package/dist/cli/loop.js.map +1 -0
  31. package/dist/cli/mcp.d.ts +12 -0
  32. package/dist/cli/mcp.js +148 -0
  33. package/dist/cli/mcp.js.map +1 -1
  34. package/dist/cli/onboard.d.ts +16 -0
  35. package/dist/cli/onboard.js +71 -0
  36. package/dist/cli/onboard.js.map +1 -1
  37. package/dist/cli/plugins.js +9 -8
  38. package/dist/cli/plugins.js.map +1 -1
  39. package/dist/cli/pulse.d.ts +10 -0
  40. package/dist/cli/pulse.js +261 -0
  41. package/dist/cli/pulse.js.map +1 -1
  42. package/dist/cli/run.js +21 -3
  43. package/dist/cli/run.js.map +1 -1
  44. package/dist/cli/stack.d.ts +34 -0
  45. package/dist/cli/stack.js +221 -0
  46. package/dist/cli/stack.js.map +1 -0
  47. package/dist/cli/update.js +12 -5
  48. package/dist/cli/update.js.map +1 -1
  49. package/dist/core/daemon/loop.d.ts +10 -5
  50. package/dist/core/daemon/loop.js +167 -37
  51. package/dist/core/daemon/loop.js.map +1 -1
  52. package/dist/core/env-bridge.js +3 -2
  53. package/dist/core/env-bridge.js.map +1 -1
  54. package/dist/core/fleet/automerge-pass.d.ts +33 -0
  55. package/dist/core/fleet/automerge-pass.js +61 -0
  56. package/dist/core/fleet/automerge-pass.js.map +1 -0
  57. package/dist/core/fleet/quota.d.ts +70 -0
  58. package/dist/core/fleet/quota.js +198 -0
  59. package/dist/core/fleet/quota.js.map +1 -0
  60. package/dist/core/fleet/router.d.ts +46 -0
  61. package/dist/core/fleet/router.js +121 -0
  62. package/dist/core/fleet/router.js.map +1 -0
  63. package/dist/core/fleet/self.d.ts +58 -0
  64. package/dist/core/fleet/self.js +187 -0
  65. package/dist/core/fleet/self.js.map +1 -0
  66. package/dist/core/fleet/status.d.ts +54 -0
  67. package/dist/core/fleet/status.js +157 -0
  68. package/dist/core/fleet/status.js.map +1 -0
  69. package/dist/core/foundry/provenance.d.ts +78 -0
  70. package/dist/core/foundry/provenance.js +172 -0
  71. package/dist/core/foundry/provenance.js.map +1 -0
  72. package/dist/core/git.d.ts +13 -0
  73. package/dist/core/git.js +26 -0
  74. package/dist/core/git.js.map +1 -1
  75. package/dist/core/inbox/merge.d.ts +151 -0
  76. package/dist/core/inbox/merge.js +858 -0
  77. package/dist/core/inbox/merge.js.map +1 -0
  78. package/dist/core/inbox/store.js +10 -1
  79. package/dist/core/inbox/store.js.map +1 -1
  80. package/dist/core/integrations/markdown.d.ts +66 -0
  81. package/dist/core/integrations/markdown.js +132 -0
  82. package/dist/core/integrations/markdown.js.map +1 -0
  83. package/dist/core/integrations/secrets.d.ts +37 -0
  84. package/dist/core/integrations/secrets.js +67 -0
  85. package/dist/core/integrations/secrets.js.map +1 -0
  86. package/dist/core/integrations/stack.d.ts +47 -0
  87. package/dist/core/integrations/stack.js +107 -0
  88. package/dist/core/integrations/stack.js.map +1 -0
  89. package/dist/core/mcp-native-engineer.d.ts +123 -0
  90. package/dist/core/mcp-native-engineer.js +936 -0
  91. package/dist/core/mcp-native-engineer.js.map +1 -0
  92. package/dist/core/mcp-native.js +20 -42
  93. package/dist/core/mcp-native.js.map +1 -1
  94. package/dist/core/mcp-registry.js +2 -0
  95. package/dist/core/mcp-registry.js.map +1 -1
  96. package/dist/core/observability/codex-source.d.ts +53 -0
  97. package/dist/core/observability/codex-source.js +390 -0
  98. package/dist/core/observability/codex-source.js.map +1 -0
  99. package/dist/core/observability/estimate.d.ts +12 -0
  100. package/dist/core/observability/estimate.js +26 -0
  101. package/dist/core/observability/estimate.js.map +1 -1
  102. package/dist/core/observability/limits.d.ts +52 -0
  103. package/dist/core/observability/limits.js +316 -0
  104. package/dist/core/observability/limits.js.map +1 -0
  105. package/dist/core/observability/usage-source.js +3 -1
  106. package/dist/core/observability/usage-source.js.map +1 -1
  107. package/dist/core/portfolio/scanners.d.ts +1 -0
  108. package/dist/core/portfolio/scanners.js +40 -1
  109. package/dist/core/portfolio/scanners.js.map +1 -1
  110. package/dist/core/providers.js +4 -0
  111. package/dist/core/providers.js.map +1 -1
  112. package/dist/core/quality/health.js +1 -0
  113. package/dist/core/quality/health.js.map +1 -1
  114. package/dist/core/run/agent-loop.d.ts +8 -0
  115. package/dist/core/run/agent-loop.js +24 -14
  116. package/dist/core/run/agent-loop.js.map +1 -1
  117. package/dist/core/run/engine-registry.d.ts +48 -0
  118. package/dist/core/run/engine-registry.js +190 -0
  119. package/dist/core/run/engine-registry.js.map +1 -0
  120. package/dist/core/run/engines.d.ts +17 -3
  121. package/dist/core/run/engines.js +63 -44
  122. package/dist/core/run/engines.js.map +1 -1
  123. package/dist/core/run/learned-router.d.ts +121 -0
  124. package/dist/core/run/learned-router.js +374 -0
  125. package/dist/core/run/learned-router.js.map +1 -0
  126. package/dist/core/run/model-manager.js +3 -3
  127. package/dist/core/run/model-manager.js.map +1 -1
  128. package/dist/core/run/model-profile.d.ts +67 -0
  129. package/dist/core/run/model-profile.js +132 -0
  130. package/dist/core/run/model-profile.js.map +1 -0
  131. package/dist/core/run/orchestrator.d.ts +1 -1
  132. package/dist/core/run/orchestrator.js +642 -510
  133. package/dist/core/run/orchestrator.js.map +1 -1
  134. package/dist/core/run/prompts/budget.d.ts +25 -0
  135. package/dist/core/run/prompts/budget.js +51 -0
  136. package/dist/core/run/prompts/budget.js.map +1 -0
  137. package/dist/core/run/prompts/index.d.ts +14 -0
  138. package/dist/core/run/prompts/index.js +59 -0
  139. package/dist/core/run/prompts/index.js.map +1 -0
  140. package/dist/core/run/prompts/layers.d.ts +26 -0
  141. package/dist/core/run/prompts/layers.js +73 -0
  142. package/dist/core/run/prompts/layers.js.map +1 -0
  143. package/dist/core/run/prompts/roles.d.ts +23 -0
  144. package/dist/core/run/prompts/roles.js +48 -0
  145. package/dist/core/run/prompts/roles.js.map +1 -0
  146. package/dist/core/run/prompts/types.d.ts +38 -0
  147. package/dist/core/run/prompts/types.js +5 -0
  148. package/dist/core/run/prompts/types.js.map +1 -0
  149. package/dist/core/run/provider-client.d.ts +6 -24
  150. package/dist/core/run/provider-client.js +125 -61
  151. package/dist/core/run/provider-client.js.map +1 -1
  152. package/dist/core/run/router.js +8 -0
  153. package/dist/core/run/router.js.map +1 -1
  154. package/dist/core/run/sandboxed-engine.d.ts +66 -0
  155. package/dist/core/run/sandboxed-engine.js +262 -0
  156. package/dist/core/run/sandboxed-engine.js.map +1 -0
  157. package/dist/core/run/verify-commands.d.ts +83 -0
  158. package/dist/core/run/verify-commands.js +234 -0
  159. package/dist/core/run/verify-commands.js.map +1 -0
  160. package/dist/core/run/verify.d.ts +31 -1
  161. package/dist/core/run/verify.js +48 -0
  162. package/dist/core/run/verify.js.map +1 -1
  163. package/dist/core/sandbox/audit.d.ts +27 -0
  164. package/dist/core/sandbox/audit.js +34 -0
  165. package/dist/core/sandbox/audit.js.map +1 -1
  166. package/dist/core/sandbox/confine.d.ts +134 -0
  167. package/dist/core/sandbox/confine.js +370 -0
  168. package/dist/core/sandbox/confine.js.map +1 -0
  169. package/dist/core/types.d.ts +227 -5
  170. package/dist/core/web/api.js +77 -28
  171. package/dist/core/web/api.js.map +1 -1
  172. package/dist/core/web/control.d.ts +116 -0
  173. package/dist/core/web/control.js +307 -0
  174. package/dist/core/web/control.js.map +1 -0
  175. package/dist/core/web/public/app.js +512 -6
  176. package/dist/core/web/public/styles.css +468 -0
  177. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -9,6 +9,61 @@ hub (M1–M20). Entries below detail each milestone; dates are merge dates into
9
9
 
10
10
  ---
11
11
 
12
+ ## [Unreleased]
13
+
14
+ - **v3 gate opened — Team Command Center spec.** `docs/SPEC-V3-TEAM.md`: the
15
+ hand-written end-state spec for the team / multi-machine backbone (one team
16
+ memory, shared approval inbox with owner-apply routing, coordinated
17
+ daemons, team visibility) riding api.ashlr.ai under `/hub/v1/*`.
18
+ Milestones M34–M40, thirteen new team safety invariants, registered as a
19
+ living ashlr goal. ROADMAP and contracts README updated to point at it.
20
+
21
+ ## [3.0.0] — 2026-06-17 — v3-Weapon · v4-Foundry · v5-Open-Fleet (M41–M60)
22
+
23
+ A major leap: local models became an engineering weapon, then a fleet of
24
+ backends that builds and maintains the ecosystem autonomously — proposal-only,
25
+ trust-gated, contained. Same safety floor; zero new runtime deps.
26
+
27
+ ### v3-Weapon (M41–M44)
28
+ - Adaptive, model-sized prompts; the sandboxed engineering tool surface
29
+ (write/edit/bash confined to a worktree, diffs → inbox, never the live tree);
30
+ the verify→repair loop; and `ashlr eval` proving the local uplift.
31
+
32
+ ### v4-Foundry (M45–M49)
33
+ - `runEngineSandboxed`: run an external agent CLI inside a throwaway git
34
+ worktree, sever git push, capture ONLY the scrubbed diff as a PENDING
35
+ proposal, trust-tagged `{engineModel, engineTier}`.
36
+ - Backend router + rate/quota scheduler; the tiered-trust merge-to-`main` gate
37
+ with HMAC-signed provenance (M47.1); the 24/7 fleet supervisor; the fleet
38
+ control plane (`ashlr fleet status/pause/resume` + `#fleet` web view).
39
+
40
+ ### v5-Open-Fleet (M50–M60)
41
+ - **M50** declarative engine registry (adding a backend is config-only) + a real
42
+ OpenAI-compatible API client (Hermes, OpenCode, NVIDIA NIMs, Kimi K2.7 …);
43
+ existing engines reproduce byte-identical argv.
44
+ - **M51** tri-tier trust (`local | mid | frontier`); authority never leaks
45
+ upward (`frontier→main`, `mid→branch`, `local→proposal-only`).
46
+ - **M52** OS-level confinement (macOS `sandbox-exec` read-jail + egress gate)
47
+ closing v4's read-residual.
48
+ - **M53** fleet intelligence — learned routing, budget-breach tier cascade,
49
+ per-run cost-anomaly holds (all proposal-only).
50
+ - **M54** self-improving fleet — a never-weaken guard (refuses any diff that
51
+ deletes/weakens a safety test) + a green-flag-off-AND-on self-eval harness.
52
+ - **M55** the conductor — `ashlr goal` + `ashlr loop` + Claude Code `/goal`
53
+ `/loop`.
54
+ - **M56** `mid→branch` auto-apply (verified mid-tier opens a PR, never `main`),
55
+ behind a separate default-off `midToBranch` flag.
56
+ - **M57** `cfg.foundry` example + `docs/FOUNDRY-CONFIG.md`.
57
+ - **M58/M60** two reference plugins (scanner + template) seeding the ecosystem.
58
+ - **M59** `ashlr fleet init` (config bootstrap) + typed `cfg.foundry.intelligence`.
59
+
60
+ ### Safety
61
+ Everything can reach `main` — but only a frontier merge-authority model, fully
62
+ verified, with valid HMAC provenance. Auto-merge (main and mid→branch) is
63
+ DEFAULT OFF. Kill-switch (`~/.ashlr/KILL`) halts every backend.
64
+
65
+ ---
66
+
12
67
  ## [2.2.0] — 2026-06-12 — v2.2 "Agent-Native Ecosystem" (M31–M33)
13
68
 
14
69
  Makes ashlr's intelligence first-class INSIDE agent sessions — CLI-first, with
package/README.md CHANGED
@@ -580,6 +580,7 @@ Self-heal is always bounded (never loops), opt-out (`ASHLR_NO_HEAL=1`), and neve
580
580
  | **Portfolio intelligence (v2)** | `ashlr knowledge build/impact/graph` · `ashlr ask` · `ashlr reflect` · `ashlr health` · `ashlr digest` |
581
581
  | **Cloud-ready seams (v2)** | `ashlr seams` |
582
582
  | **Harden & prove (v2.1)** | `ashlr verify-safety` · `ashlr sandbox gc` · `ashlr audit` · `ashlr preflight` · `ashlr onboard` · `ashlr demo` |
583
+ | **Local Weapon (v3)** | `ashlr run --engineer [--bash]` · `ashlr eval` · adaptive prompts (`models.adaptivePrompts`) |
583
584
  | **Maintain** | `ashlr update` |
584
585
 
585
586
  It is **local-first by design**. Index, config, runs, rollups, and memory all live under `~/.ashlr/`. Agent runs default to local models and refuse to touch a cloud endpoint unless you explicitly opt in. Telemetry is metadata-only; secrets flow through Phantom, never through the hub.
@@ -643,7 +644,7 @@ Runs stream progress live to stderr (task starts, model deltas, tool calls, retr
643
644
  | `ashlr run show <id>` | Print the full `RunState` for a past run. |
644
645
  | `ashlr runs [--json]` | List all past runs, newest first. |
645
646
 
646
- Key flags: `--budget N` · `--max-steps N` · `--parallel N` · `--engine builtin|ashlrcode|aw|claude` · `--stream / --no-stream` · `--allow-cloud` · `--no-memory` · `--no-capture` · `--resume <id>`.
647
+ Key flags: `--budget N` · `--max-steps N` · `--parallel N` · `--engine builtin|ashlrcode|aw|claude` · `--engineer [--bash]` (sandboxed engineering tools → inbox; see [Local Weapon](#local-weapon-v3--make-local-models-genuinely-capable)) · `--stream / --no-stream` · `--allow-cloud` · `--no-memory` · `--no-capture` · `--resume <id>`.
647
648
 
648
649
  ```sh
649
650
  ashlr run "Summarize the last 5 commits and flag risky changes"
@@ -693,6 +694,61 @@ ashlr models start # best-effort start of an installed-but-idle Ollam
693
694
  Local savings (est): $0.42 | Cloud would-have-been: $0.47 | Projected 30d: $0.18
694
695
  ```
695
696
 
697
+ ### Local Weapon (v3) — make local models genuinely capable
698
+
699
+ v3 is a focused push to close the quality gap between local models (Ollama / LM Studio) and the cloud, without ever leaving your machine. Four shipped pieces — all opt-in, all bounded.
700
+
701
+ #### Adaptive prompts (M41)
702
+
703
+ A model-adaptive, layered system-prompt suite. ashlr auto-detects a per-model profile from the model name (size band + coder/general/small) and tunes **prompt verbosity, ReAct step cap, and sampling temperature** to fit the model actually serving the task — a 1.5B chat model and a 32B coder get very different scaffolding. Off by default; opt-in.
704
+
705
+ ```sh
706
+ ashlr config set models.adaptivePrompts true # config opt-in (default: false)
707
+ ASHLR_ADAPTIVE_PROMPTS=1 ashlr run "<goal>" # env opt-in (overrides config)
708
+ ```
709
+
710
+ With the flag off the harness uses its legacy prompts and step cap unchanged — the whole suite is additive and gated.
711
+
712
+ #### Engineering tool surface (M42)
713
+
714
+ Give the local agent **real, sandboxed engineering tools** — read / glob / grep / write / edit — confined to a throwaway git worktree. The agent never touches your live working tree: the resulting diff is routed to the Approval Inbox as a PENDING proposal, exactly like every other outward action.
715
+
716
+ ```sh
717
+ ashlr run "<goal>" --engineer # sandboxed read/glob/grep/write/edit → inbox
718
+ ashlr run "<goal>" --engineer --bash # also allow sandboxed command/test execution
719
+ ashlr inbox # review the proposed diff; nothing applies until you approve
720
+ ```
721
+
722
+ Requires the repo to be **enrolled** (`ashlr enroll add <repo>`) and the kill switch off. Off by default.
723
+
724
+ **Security posture** (structurally enforced):
725
+
726
+ - **Kill-switch gated** — every mutating tool is REFUSED when `~/.ashlr/KILL` is set; checked first, cannot be bypassed.
727
+ - **Workspace-boundary + enrollment enforced** — writes resolve only inside the sandbox worktree of an enrolled repo; paths outside the boundary are refused.
728
+ - **Secret-scrubbed output** — tool output is secret-scrubbed before it reaches the model or any store.
729
+ - **Diffs to inbox, never the live tree** — `write`/`edit` produce a proposal; approval is human-only via `ashlr inbox approve` (there is no agent-reachable apply path).
730
+ - **Double opt-in for bash** — `--bash` is local code execution and requires `--engineer` **and** `--bash` together; it too is kill-switch gated and confined to the sandbox.
731
+
732
+ #### Verify→repair loop (M43)
733
+
734
+ After each task the agent runs the repo's detected typecheck / test / lint commands and feeds any failures back into a bounded repair pass. This generalizes the prior single retry into a loop — bounded by `--max-steps` and the run budget, so it can never spin without limit. Tune the headroom via the run budget flags (`--budget` / `--max-steps`).
735
+
736
+ #### Eval harness (M44)
737
+
738
+ Measure the local-model uplift on your own machine. `ashlr eval` runs a fixed fixture set through the agent loop twice per fixture — adaptive prompts **OFF** then **ON** — and reports steps-to-done, done count, and tokens for each.
739
+
740
+ ```sh
741
+ ashlr eval # full fixture set, table output
742
+ ashlr eval --limit 3 # only the first 3 fixtures
743
+ ashlr eval --budget 8000 --json # per-run token budget; machine-readable output
744
+ ```
745
+
746
+ Needs a local model running (Ollama / LM Studio). When none is reachable it **skips gracefully** — prints a hint and exits 0, never an error.
747
+
748
+ #### Cross-platform
749
+
750
+ ashlr runs on **macOS, Linux, and Windows**. The engineering tools resolve the platform shell at runtime (e.g. `cmd.exe` on Windows, so `npm.cmd` / `npx.cmd` shims resolve via `PATHEXT`), and the local-model providers (Ollama / LM Studio) are plain HTTP, so no platform-specific runtime is required.
751
+
696
752
  ### Observe
697
753
 
698
754
  ```sh
@@ -803,7 +859,8 @@ ashlr telemetry test # emit a synthetic test span; reports ok/fail
803
859
 
804
860
  ## Requirements
805
861
 
806
- - **macOS** · **Node.js 22+** · `~/.local/bin` on your `PATH`
862
+ - **macOS, Linux, or Windows** · **Node.js 22+** · `~/.local/bin` on your `PATH` (POSIX)
863
+ - The engineering tools (M42) resolve the platform shell at runtime (`cmd.exe` on Windows); the local-model providers are HTTP-based, so no platform-specific runtime is required.
807
864
  - Optional: [Ollama](https://ollama.com) or [LM Studio](https://lmstudio.ai) for local agent runs; [`phantom`](https://github.com/nicholasgasior/phantom) for secrets management; [Raycast](https://raycast.com) for the extension.
808
865
 
809
866
  ---
@@ -10,3 +10,4 @@
10
10
  */
11
11
  export { PLUGIN_API_VERSION, definePlugin, } from '../core/plugins/types.js';
12
12
  export type { PluginCapability, PluginManifest, PluginHost, PluginScanner, PluginProviderSpec, PluginCommandSpec, PluginContributions, AshlrPlugin, } from '../core/plugins/types.js';
13
+ export type { WorkItem, WorkSource, ProjectTemplate, TemplateFile } from '../core/types.js';
@@ -51,6 +51,7 @@ const SOURCE_LABELS = {
51
51
  doc: 'doc',
52
52
  security: 'security',
53
53
  plugin: 'plugin', // M33
54
+ self: 'self', // M54
54
55
  };
55
56
  const SOURCE_COLORS = {
56
57
  issue: 'blue',
@@ -58,6 +59,7 @@ const SOURCE_COLORS = {
58
59
  test: 'red',
59
60
  dep: 'magenta',
60
61
  doc: 'cyan',
62
+ self: 'green', // M54
61
63
  security: 'red',
62
64
  plugin: 'cyan', // M33
63
65
  };
@@ -1 +1 @@
1
- {"version":3,"file":"backlog.js","sourceRoot":"","sources":["../../src/cli/backlog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backlog.js","sourceRoot":"","sources":["../../src/cli/backlog.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,12 @@
33
33
  *
34
34
  * Exit codes: 0 success, 1 runtime error, 2 bad usage.
35
35
  */
36
+ import type { DigestReport } from '../core/types.js';
37
+ /**
38
+ * Build a Markdown body for a DigestReport suitable for ashlr-md.
39
+ * Pure function — no side effects, safe to unit-test directly.
40
+ */
41
+ export declare function buildDigestMarkdown(report: DigestReport): string;
36
42
  /**
37
43
  * `ashlr digest [--window <7d|30d>] [--json] [--notify] [--allow-cloud]`
38
44
  *
@@ -34,6 +34,106 @@
34
34
  * Exit codes: 0 success, 1 runtime error, 2 bad usage.
35
35
  */
36
36
  import { makeColors, isTty, pad } from './ui.js';
37
+ let _presentMarkdownDigest;
38
+ async function loadMarkdownModule() {
39
+ if (_presentMarkdownDigest === undefined) {
40
+ try {
41
+ const mod = await import('../core/integrations/markdown.js');
42
+ _presentMarkdownDigest = mod.presentMarkdown;
43
+ }
44
+ catch {
45
+ _presentMarkdownDigest = null;
46
+ }
47
+ }
48
+ return _presentMarkdownDigest ?? null;
49
+ }
50
+ /**
51
+ * Build a Markdown body for a DigestReport suitable for ashlr-md.
52
+ * Pure function — no side effects, safe to unit-test directly.
53
+ */
54
+ export function buildDigestMarkdown(report) {
55
+ const lines = [];
56
+ const p = report.portfolio;
57
+ lines.push(`> ${report.date} · window: ${report.window}`);
58
+ lines.push(``);
59
+ lines.push(`## Headline\n`);
60
+ lines.push(report.headline || '_No activity to report._');
61
+ lines.push(``);
62
+ lines.push(`## Overview\n`);
63
+ lines.push(`| Metric | Value |`);
64
+ lines.push(`|--------|-------|`);
65
+ lines.push(`| Repos | ${report.repos.total} total · ${report.repos.dirty} dirty · ${report.repos.stale} stale |`);
66
+ lines.push(`| Pending proposals | ${report.pendingProposals} |`);
67
+ lines.push(`| Cost (${p.cost.window}) | $${p.cost.spentUsd.toFixed(4)} · ~$${p.cost.projectedMonthlyUsd.toFixed(2)}/mo |`);
68
+ lines.push(`| Local savings | $${p.cost.localSavingsUsd.toFixed(4)} |`);
69
+ if (report.daemon) {
70
+ lines.push(`| Operator | ${report.daemon.running ? 'running' : 'stopped'} · $${report.daemon.todaySpentUsd.toFixed(4)} today |`);
71
+ }
72
+ lines.push(``);
73
+ if (p.health.reposScored > 0) {
74
+ lines.push(`## Health\n`);
75
+ lines.push(`Average: **${p.health.averageScore}/100** (${p.health.averageGrade}) across ${p.health.reposScored} repo(s)\n`);
76
+ if (p.health.worstRepos.length > 0) {
77
+ lines.push(`| Repo | Score | Grade |`);
78
+ lines.push(`|------|-------|-------|`);
79
+ for (const r of p.health.worstRepos) {
80
+ const label = r.repo ? r.repo.split('/').filter(Boolean).slice(-1)[0] ?? r.repo : '—';
81
+ lines.push(`| ${label} | ${r.score}/100 | **${r.grade}** |`);
82
+ }
83
+ }
84
+ lines.push(``);
85
+ }
86
+ if (p.goalsInFlight.length > 0) {
87
+ lines.push(`## Goals In Flight\n`);
88
+ for (const g of p.goalsInFlight) {
89
+ const pct = Math.round(g.fractionDone * 100);
90
+ const next = g.nextActionable ? ` → _${g.nextActionable}_` : '';
91
+ lines.push(`- **${pct}%** ${g.objective}${next}`);
92
+ }
93
+ lines.push(``);
94
+ }
95
+ if (p.backlogTop.length > 0) {
96
+ lines.push(`## Top Backlog\n`);
97
+ for (const item of p.backlogTop) {
98
+ const where = item.repo ? ` _(${item.repo.split('/').filter(Boolean).slice(-1)[0] ?? item.repo})_` : '';
99
+ lines.push(`- [${item.score}] ${item.title}${where}`);
100
+ }
101
+ lines.push(``);
102
+ }
103
+ if (p.effectiveness) {
104
+ lines.push(`## Effectiveness\n`);
105
+ lines.push(p.effectiveness.headline);
106
+ lines.push(``);
107
+ }
108
+ const t = p.today;
109
+ if (t.previousAt) {
110
+ lines.push(`## Day-over-Day (vs ${t.previousAt})\n`);
111
+ lines.push(`| Metric | Delta |`);
112
+ lines.push(`|--------|-------|`);
113
+ const fmt = (n, d = 0) => {
114
+ if (n === null)
115
+ return '—';
116
+ const v = d > 0 ? Number(n.toFixed(d)) : Math.round(n);
117
+ if (v > 0)
118
+ return `▲ +${d > 0 ? v.toFixed(d) : v}`;
119
+ if (v < 0)
120
+ return `▼ ${d > 0 ? v.toFixed(d) : v}`;
121
+ return '· 0';
122
+ };
123
+ lines.push(`| Pending proposals | ${fmt(t.pendingProposalsDelta)} |`);
124
+ lines.push(`| Dirty repos | ${fmt(t.dirtyReposDelta)} |`);
125
+ lines.push(`| Spend | ${fmt(t.spendUsdDelta, 4)} |`);
126
+ lines.push(`| Health score | ${fmt(t.healthScoreDelta)} |`);
127
+ lines.push(`| Goals in flight | ${fmt(t.goalsInFlightDelta)} |`);
128
+ lines.push(``);
129
+ }
130
+ if (report.narrative) {
131
+ lines.push(`## Summary${report.narrativeLocal ? ' _(local model)_' : ''}\n`);
132
+ lines.push(report.narrative);
133
+ lines.push(``);
134
+ }
135
+ return lines.join('\n');
136
+ }
37
137
  let _core = undefined;
38
138
  async function importCore() {
39
139
  if (_core === undefined) {
@@ -63,6 +163,7 @@ function parseDigestArgs(args) {
63
163
  let allowCloud = false;
64
164
  let window = '7d';
65
165
  let help = false;
166
+ let open = false;
66
167
  let error;
67
168
  for (let i = 0; i < args.length; i++) {
68
169
  const a = args[i];
@@ -83,6 +184,10 @@ function parseDigestArgs(args) {
83
184
  else if (a === '--allow-cloud') {
84
185
  allowCloud = true;
85
186
  }
187
+ else if (a === '--open' || a === '--md') {
188
+ // M70: open the digest in the ashlr-md viewer
189
+ open = true;
190
+ }
86
191
  else if (a === '--window') {
87
192
  const v = args[i + 1];
88
193
  if (v === '7d' || v === '30d') {
@@ -103,7 +208,7 @@ function parseDigestArgs(args) {
103
208
  break;
104
209
  }
105
210
  }
106
- return { json, notify, narrative, allowCloud, window, help, error };
211
+ return { json, notify, narrative, allowCloud, window, help, open, error };
107
212
  }
108
213
  // ─── Help ─────────────────────────────────────────────────────────────────────
109
214
  function printHelp() {
@@ -114,7 +219,7 @@ function printHelp() {
114
219
  out(bold(' ashlr digest') + dim(' — org-level daily portfolio digest (read-only; local by default)'));
115
220
  out('');
116
221
  out(' ' + bold('Usage:'));
117
- out(` ${cyan('ashlr digest')} [--window <7d|30d>] [--json] [--notify] [--narrative] [--allow-cloud]`);
222
+ out(` ${cyan('ashlr digest')} [--window <7d|30d>] [--json] [--notify] [--narrative] [--allow-cloud] [--open]`);
118
223
  out('');
119
224
  out(' ' + bold('Options:'));
120
225
  const opts = [
@@ -123,6 +228,7 @@ function printHelp() {
123
228
  ['--notify', 'ALSO send the digest via a configured Slack/Discord webhook (OPT-IN; the only outward path).'],
124
229
  ['--narrative', 'Attempt an OPTIONAL LLM narrative (local-first). Off by default (deterministic-only).'],
125
230
  ['--allow-cloud', 'With --narrative, permit a CLOUD model. Off by default (local-only). No effect without --narrative.'],
231
+ ['--open', 'Open the digest in the ashlr-md viewer (--md is an alias). Falls back to terminal when ashlr-md is not installed.'],
126
232
  ['--help', 'Show this help.'],
127
233
  ];
128
234
  const w = Math.max(...opts.map(([f]) => f.length));
@@ -318,6 +424,25 @@ export async function cmdDigest(args) {
318
424
  if (parsed.json) {
319
425
  process.stdout.write(JSON.stringify(report) + '\n');
320
426
  }
427
+ else if (parsed.open) {
428
+ // M70: open in ashlr-md when --open / --md is set.
429
+ // Try the viewer first; fall back to terminal if absent or if the write fails.
430
+ let openedInViewer = false;
431
+ const presentFn = await loadMarkdownModule();
432
+ if (presentFn) {
433
+ const mdBody = buildDigestMarkdown(report);
434
+ const mdTitle = `ashlr digest — ${report.date} (${report.window})`;
435
+ const mdResult = presentFn(mdTitle, mdBody);
436
+ if (mdResult.rendered && mdResult.path) {
437
+ process.stdout.write(cyan(' opened in ashlr-md: ') + mdResult.path + '\n');
438
+ openedInViewer = true;
439
+ }
440
+ }
441
+ if (!openedInViewer) {
442
+ // ashlr-md not installed or write failed — terminal fallback (unchanged)
443
+ printDigestHuman(report);
444
+ }
445
+ }
321
446
  else {
322
447
  printDigestHuman(report);
323
448
  }
@@ -1 +1 @@
1
- {"version":3,"file":"digest.js","sourceRoot":"","sources":["../../src/cli/digest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"digest.js","sourceRoot":"","sources":["../../src/cli/digest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * M44 — fixed eval fixtures.
3
+ *
4
+ * A small, deterministic set of SHORT, self-contained coding/reasoning goals a
5
+ * 7B-class local model can attempt without any engineer tools. Used by the
6
+ * `ashlr eval` harness to compare the agent loop with adaptive prompts OFF vs
7
+ * ON and prove the M41–M43 uplift.
8
+ *
9
+ * Keep these tool-free-friendly (no file I/O, no repo context) so a run can
10
+ * complete on a bare local provider with `{ tools: false }`.
11
+ */
12
+ export interface EvalFixture {
13
+ /** Stable, unique id used as the table row key. */
14
+ id: string;
15
+ /** The self-contained goal handed to runGoal(). */
16
+ goal: string;
17
+ }
18
+ export declare const EVAL_FIXTURES: EvalFixture[];
@@ -0,0 +1,38 @@
1
+ /**
2
+ * M44 — fixed eval fixtures.
3
+ *
4
+ * A small, deterministic set of SHORT, self-contained coding/reasoning goals a
5
+ * 7B-class local model can attempt without any engineer tools. Used by the
6
+ * `ashlr eval` harness to compare the agent loop with adaptive prompts OFF vs
7
+ * ON and prove the M41–M43 uplift.
8
+ *
9
+ * Keep these tool-free-friendly (no file I/O, no repo context) so a run can
10
+ * complete on a bare local provider with `{ tools: false }`.
11
+ */
12
+ export const EVAL_FIXTURES = [
13
+ {
14
+ id: 'palindrome',
15
+ goal: 'Write a TypeScript function `isPalindrome(s: string): boolean` and show its code.',
16
+ },
17
+ {
18
+ id: 'debounce-explain',
19
+ goal: 'Explain in exactly 3 bullet points what a debounce function does.',
20
+ },
21
+ {
22
+ id: 'fizzbuzz',
23
+ goal: 'Write a JavaScript function that prints FizzBuzz for numbers 1 to 15. Show the code.',
24
+ },
25
+ {
26
+ id: 'reverse-words',
27
+ goal: 'Write a Python function `reverse_words(s: str) -> str` that reverses the order of words in a sentence. Show the code.',
28
+ },
29
+ {
30
+ id: 'http-vs-https',
31
+ goal: 'In 2 sentences, explain the difference between HTTP and HTTPS.',
32
+ },
33
+ {
34
+ id: 'sum-array',
35
+ goal: 'Write a one-line TypeScript expression that sums an array of numbers named `xs`.',
36
+ },
37
+ ];
38
+ //# sourceMappingURL=eval-fixtures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eval-fixtures.js","sourceRoot":"","sources":["../../src/cli/eval-fixtures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AASH,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C;QACE,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,mFAAmF;KAC1F;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,mEAAmE;KAC1E;IACD;QACE,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,sFAAsF;KAC7F;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,uHAAuH;KAC9H;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,gEAAgE;KACvE;IACD;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,kFAAkF;KACzF;CACF,CAAC"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * `ashlr eval` — M44 local-agent eval harness.
3
+ *
4
+ * Runs a fixed set of small coding/reasoning goals (see eval-fixtures.ts)
5
+ * through the hub's own agent loop TWICE per fixture — once with adaptive
6
+ * prompts OFF, once ON — and reports per-fixture metrics (steps-to-done,
7
+ * status, tokens). This is the "proof" milestone for the M41–M43 uplift.
8
+ *
9
+ * Adaptive prompts are toggled via the ASHLR_ADAPTIVE_PROMPTS env var, which
10
+ * adaptivePromptsEnabled(cfg) reads FIRST (before cfg.models.adaptivePrompts).
11
+ *
12
+ * ashlr eval [--budget N] [--limit N] [--json]
13
+ *
14
+ * Exit codes:
15
+ * 0 always (even when no local model — prints a clear hint and returns 0)
16
+ */
17
+ /** Per-fixture result after running OFF then ON. */
18
+ export interface EvalRow {
19
+ id: string;
20
+ goal: string;
21
+ /** Steps taken with adaptive prompts OFF. */
22
+ stepsOff: number;
23
+ /** Steps taken with adaptive prompts ON. */
24
+ stepsOn: number;
25
+ /** Whether the OFF run reached status 'done'. */
26
+ doneOff: boolean;
27
+ /** Whether the ON run reached status 'done'. */
28
+ doneOn: boolean;
29
+ /** Total tokens (in+out) for the OFF run. */
30
+ tokensOff: number;
31
+ /** Total tokens (in+out) for the ON run. */
32
+ tokensOn: number;
33
+ /** Set when the fixture failed to run at all (caught error). */
34
+ error?: string;
35
+ }
36
+ /** Aggregate over all rows. */
37
+ export interface EvalSummary {
38
+ fixtures: number;
39
+ totalStepsOff: number;
40
+ totalStepsOn: number;
41
+ doneOff: number;
42
+ doneOn: number;
43
+ totalTokensOff: number;
44
+ totalTokensOn: number;
45
+ errors: number;
46
+ }
47
+ /** Aggregate EvalRows into a summary. Pure. */
48
+ export declare function summarize(rows: EvalRow[]): EvalSummary;
49
+ /**
50
+ * Render a plain (no-color) eval table + summary as a string. Pure — does no
51
+ * I/O, takes no color dependencies, so it's deterministic and unit-testable.
52
+ *
53
+ * Columns: id | off(done/steps/tokens) | on(done/steps/tokens).
54
+ */
55
+ export declare function formatEvalTable(rows: EvalRow[]): string;
56
+ export declare function cmdEval(args: string[]): Promise<number>;