@prestyj/cli 5.30.1 → 5.30.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.
Files changed (147) hide show
  1. package/README.md +54 -38
  2. package/dist/app-sidecar/auth-routes.js +4 -1
  3. package/dist/app-sidecar/auth-routes.js.map +1 -1
  4. package/dist/app-sidecar/autopilot-runner.js +2 -5
  5. package/dist/app-sidecar/autopilot-runner.js.map +1 -1
  6. package/dist/app-sidecar/repo-polls.d.ts +5 -2
  7. package/dist/app-sidecar/repo-polls.js +20 -0
  8. package/dist/app-sidecar/repo-polls.js.map +1 -1
  9. package/dist/app-sidecar/route-context.d.ts +2 -0
  10. package/dist/app-sidecar.js +35 -1
  11. package/dist/app-sidecar.js.map +1 -1
  12. package/dist/chat-agents/jiwa.js +2 -0
  13. package/dist/chat-agents/jiwa.js.map +1 -1
  14. package/dist/chat-agents/memory.js +2 -0
  15. package/dist/chat-agents/memory.js.map +1 -1
  16. package/dist/cli/auth.js +13 -9
  17. package/dist/cli/auth.js.map +1 -1
  18. package/dist/cli.js +8 -9
  19. package/dist/cli.js.map +1 -1
  20. package/dist/core/agent-session/verification-tracker.d.ts +5 -1
  21. package/dist/core/agent-session/verification-tracker.js +25 -6
  22. package/dist/core/agent-session/verification-tracker.js.map +1 -1
  23. package/dist/core/autopilot-cycle.d.ts +2 -0
  24. package/dist/core/autopilot-cycle.js +21 -2
  25. package/dist/core/autopilot-cycle.js.map +1 -1
  26. package/dist/core/checklist-prompt.d.ts +9 -2
  27. package/dist/core/checklist-prompt.js +26 -7
  28. package/dist/core/checklist-prompt.js.map +1 -1
  29. package/dist/core/checklist-snapshot.js +1 -1
  30. package/dist/core/checklist-snapshot.js.map +1 -1
  31. package/dist/core/checklist-store.d.ts +5 -1
  32. package/dist/core/checklist-store.js +35 -4
  33. package/dist/core/checklist-store.js.map +1 -1
  34. package/dist/core/event-bus.d.ts +1 -1
  35. package/dist/core/event-bus.js +39 -13
  36. package/dist/core/event-bus.js.map +1 -1
  37. package/dist/core/extensions/plugin-bundles.js +4 -2
  38. package/dist/core/extensions/plugin-bundles.js.map +1 -1
  39. package/dist/core/hashline.d.ts +10 -8
  40. package/dist/core/hashline.js.map +1 -1
  41. package/dist/core/mcp/client.js +2 -0
  42. package/dist/core/mcp/client.js.map +1 -1
  43. package/dist/core/mcp/loopback.d.ts +2 -2
  44. package/dist/core/mcp/loopback.js +2 -2
  45. package/dist/core/mcp/shared-pool.js +4 -3
  46. package/dist/core/mcp/shared-pool.js.map +1 -1
  47. package/dist/core/persistent-shell.js +2 -1
  48. package/dist/core/persistent-shell.js.map +1 -1
  49. package/dist/core/process-manager.js +9 -1
  50. package/dist/core/process-manager.js.map +1 -1
  51. package/dist/core/project-health-scan.d.ts +109 -0
  52. package/dist/core/project-health-scan.js +673 -0
  53. package/dist/core/project-health-scan.js.map +1 -0
  54. package/dist/core/project-health-score.d.ts +41 -0
  55. package/dist/core/project-health-score.js +257 -0
  56. package/dist/core/project-health-score.js.map +1 -0
  57. package/dist/core/prompt-commands.js +44 -6
  58. package/dist/core/prompt-commands.js.map +1 -1
  59. package/dist/core/session-manager.js.map +1 -1
  60. package/dist/core/session-storage.d.ts +1 -0
  61. package/dist/core/session-storage.js +1 -1
  62. package/dist/core/session-storage.js.map +1 -1
  63. package/dist/core/subagent-manager.js +11 -6
  64. package/dist/core/subagent-manager.js.map +1 -1
  65. package/dist/core/subagent-receipt.js +3 -4
  66. package/dist/core/subagent-receipt.js.map +1 -1
  67. package/dist/core/ui-adoption.js +2 -0
  68. package/dist/core/ui-adoption.js.map +1 -1
  69. package/dist/core/ui-registry.js +5 -4
  70. package/dist/core/ui-registry.js.map +1 -1
  71. package/dist/core/verification-evidence.d.ts +13 -2
  72. package/dist/core/verification-evidence.js +256 -3
  73. package/dist/core/verification-evidence.js.map +1 -1
  74. package/dist/core/verification-gate.js +4 -2
  75. package/dist/core/verification-gate.js.map +1 -1
  76. package/dist/core/verify-commands.js +2 -3
  77. package/dist/core/verify-commands.js.map +1 -1
  78. package/dist/modes/agent-home-mode.js +1 -4
  79. package/dist/modes/agent-home-mode.js.map +1 -1
  80. package/dist/modes/subagent-worker-mode.js +13 -8
  81. package/dist/modes/subagent-worker-mode.js.map +1 -1
  82. package/dist/system-prompt.js +20 -11
  83. package/dist/system-prompt.js.map +1 -1
  84. package/dist/tools/bash.d.ts +3 -1
  85. package/dist/tools/bash.js +8 -4
  86. package/dist/tools/bash.js.map +1 -1
  87. package/dist/tools/checklist.d.ts +5 -4
  88. package/dist/tools/checklist.js +17 -4
  89. package/dist/tools/checklist.js.map +1 -1
  90. package/dist/tools/edit.d.ts +1 -0
  91. package/dist/tools/edit.js +84 -1
  92. package/dist/tools/edit.js.map +1 -1
  93. package/dist/tools/grep.js +3 -2
  94. package/dist/tools/grep.js.map +1 -1
  95. package/dist/tools/index.js +10 -7
  96. package/dist/tools/index.js.map +1 -1
  97. package/dist/tools/read-only-bash.js +3 -0
  98. package/dist/tools/read-only-bash.js.map +1 -1
  99. package/dist/ui/App.js +20 -26
  100. package/dist/ui/App.js.map +1 -1
  101. package/dist/ui/components/InputArea.js +0 -2
  102. package/dist/ui/components/InputArea.js.map +1 -1
  103. package/dist/ui/components/ToolExecution.js +4 -3
  104. package/dist/ui/components/ToolExecution.js.map +1 -1
  105. package/dist/ui/hooks/useAgentLoop.js +7 -6
  106. package/dist/ui/hooks/useAgentLoop.js.map +1 -1
  107. package/dist/ui/sessions.js +1 -5
  108. package/dist/ui/sessions.js.map +1 -1
  109. package/dist/ui/utils/highlight.d.ts +0 -5
  110. package/dist/ui/utils/highlight.js +3 -49
  111. package/dist/ui/utils/highlight.js.map +1 -1
  112. package/dist/ui/utils/markdown-renderer.d.ts +6 -0
  113. package/dist/ui/utils/markdown-renderer.js +21 -5
  114. package/dist/ui/utils/markdown-renderer.js.map +1 -1
  115. package/dist/utils/process.js +3 -3
  116. package/dist/utils/process.js.map +1 -1
  117. package/package.json +5 -8
  118. package/dist/ui/activity-phrases.d.ts +0 -10
  119. package/dist/ui/activity-phrases.js +0 -184
  120. package/dist/ui/activity-phrases.js.map +0 -1
  121. package/dist/ui/components/PlanApproval.d.ts +0 -7
  122. package/dist/ui/components/PlanApproval.js +0 -60
  123. package/dist/ui/components/PlanApproval.js.map +0 -1
  124. package/dist/ui/components/PlanBanner.d.ts +0 -5
  125. package/dist/ui/components/PlanBanner.js +0 -31
  126. package/dist/ui/components/PlanBanner.js.map +0 -1
  127. package/dist/ui/components/PlanProgress.d.ts +0 -6
  128. package/dist/ui/components/PlanProgress.js +0 -30
  129. package/dist/ui/components/PlanProgress.js.map +0 -1
  130. package/dist/ui/hooks/useMinDisplayTime.d.ts +0 -10
  131. package/dist/ui/hooks/useMinDisplayTime.js +0 -34
  132. package/dist/ui/hooks/useMinDisplayTime.js.map +0 -1
  133. package/dist/ui/hooks/useSessionManager.d.ts +0 -12
  134. package/dist/ui/hooks/useSessionManager.js +0 -43
  135. package/dist/ui/hooks/useSessionManager.js.map +0 -1
  136. package/dist/ui/hooks/useSlashCommands.d.ts +0 -6
  137. package/dist/ui/hooks/useSlashCommands.js +0 -11
  138. package/dist/ui/hooks/useSlashCommands.js.map +0 -1
  139. package/dist/ui/terminal-history-spacing.d.ts +0 -1
  140. package/dist/ui/terminal-history-spacing.js +0 -2
  141. package/dist/ui/terminal-history-spacing.js.map +0 -1
  142. package/dist/ui/utils/markdown-cache.d.ts +0 -10
  143. package/dist/ui/utils/markdown-cache.js +0 -58
  144. package/dist/ui/utils/markdown-cache.js.map +0 -1
  145. package/dist/ui/utils/token-to-ansi.d.ts +0 -8
  146. package/dist/ui/utils/token-to-ansi.js +0 -323
  147. package/dist/ui/utils/token-to-ansi.js.map +0 -1
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  ![ezcoder](screenshots/ezcoder.png)
2
2
 
3
3
  <p align="center">
4
- <strong>The fast, lean coding agent. Eight providers. Zero bloat.</strong>
4
+ <strong>The fast, lean coding agent. Twelve providers plus local models. Zero bloat.</strong>
5
5
  </p>
6
6
 
7
7
  <p align="center">
@@ -12,13 +12,13 @@
12
12
  <a href="https://github.com/Gahroot"><img src="https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=github&logoColor=white" alt="GitHub"></a>
13
13
  </p>
14
14
 
15
- A coding agent that ships only what the model needs to work — a tiny system prompt, one carefully-chosen MCP, and a focused tool set. Switch between Anthropic, OpenAI, GLM, Moonshot, MiniMax, Xiaomi, DeepSeek, and OpenRouter mid-conversation. Run it on its own, or let [`@prestyj/boss`](../ezboss/README.md) drive a fleet of `ezcoder` workers across many projects from a single chat.
15
+ A coding agent that ships only what the model needs to work — a tiny system prompt, no bundled MCPs, and a focused tool set. Switch between Anthropic, OpenAI, Gemini, xAI, Moonshot, GLM, MiniMax, Xiaomi, DeepSeek, Sakana, OpenRouter, Hugging Face, and your own local models mid-conversation. Run it on its own, or let [`@prestyj/boss`](../ezboss/README.md) drive a fleet of `ezcoder` workers across many projects from a single chat.
16
16
 
17
17
  Built on [`@prestyj/ai`](../ai/README.md) and [`@prestyj/agent`](../agent/README.md). Part of the [EZCoder Framework](../../README.md) monorepo.
18
18
 
19
19
  ---
20
20
 
21
- ## 🚀 Run It
21
+ ## Run It
22
22
 
23
23
  ```bash
24
24
  npm i -g @prestyj/cli
@@ -27,11 +27,11 @@ ezcoder login # Pick provider, authenticate
27
27
  ezcoder # Start coding
28
28
  ```
29
29
 
30
- OAuth for Anthropic and OpenAI (log in once, auto-refresh, no key to leak). API keys for the rest. Up and running in seconds either way. Auth lives in `~/.ezcoder/auth.json` and is shared with `ezboss`.
30
+ OAuth for Anthropic, OpenAI, and Gemini; OAuth or an API key for xAI and Moonshot (log in once, auto-refresh, no key to leak). API keys for the rest. Up and running in seconds either way. Auth lives in `~/.ezcoder/auth.json` and is shared with `ezboss`.
31
31
 
32
32
  ---
33
33
 
34
- ## 🪶 The system prompt problem
34
+ ## The system prompt problem
35
35
 
36
36
  Every token in the system prompt gets processed on **every single turn**. It's not a one-time cost. It's a tax on every request.
37
37
 
@@ -51,37 +51,43 @@ EZ Coder sends only what the model needs: how to work, what tools it has, and yo
51
51
 
52
52
  ---
53
53
 
54
- ## 🧩 The MCP problem
54
+ ## The MCP problem
55
55
 
56
56
  Same philosophy applies to tools. People collect MCPs like Pokemon. Slack MCP, GitHub MCP, Notion MCP, five different file system MCPs. Every single one injects its tool descriptions into the context. The model now has to figure out which of 40+ tools to use for any given task.
57
57
 
58
58
  This doesn't help. It confuses the agent. More tool descriptions = more noise = worse tool selection. The model spends tokens reasoning about tools it will never call.
59
59
 
60
- EZ Coder ships with one MCP: [Grep](https://grep.dev). That's it. It lets the agent search across 1M+ public GitHub repos to verify implementations against real-world code. Correct API usage, library idioms, production patterns. One tool that actually makes the output better.
60
+ EZ Coder ships with no MCPs by default. Checking work against real-world code is a native tool instead: `steroids` finds production repos similar to yours so the agent can confirm API usage, library idioms, and patterns. It loads only when the agent asks for it, so it costs nothing until it's used. (On GLM, the Z.AI MCP servers that come with your key are connected automatically.)
61
61
 
62
- You can still add your own MCPs if you need them. But start with less. You'll get better results.
62
+ You can still add your own MCPs in `~/.ezcoder/mcp.json` or `.ezcoder/mcp.json`. But start with less. You'll get better results.
63
63
 
64
64
  ---
65
65
 
66
- ## 🎛 Eight providers, one agent
66
+ ## Twelve providers, one agent
67
67
 
68
68
  Switch mid-conversation with `/model`. Not locked to anyone.
69
69
 
70
- | Provider | Models | Auth |
71
- | ----------------- | ------------------------------------------------------------------ | ---------------- |
72
- | **Anthropic** | Claude Fable 5.1, Opus 5.5, Sonnet 5.5, Haiku 5.5 | OAuth |
73
- | **OpenAI** | GPT-6 Astra, GPT-6.1 Sol, GPT-6 Luna | OAuth |
74
- | **Moonshot** | Kimi K3, K2.8 Preview (Kimi sign-in), K2.7 Code | OAuth or API key |
75
- | **Z.AI (GLM)** | GLM-5.3, GLM-5.3-Flash (image) | API key |
76
- | **MiniMax** | MiniMax M3 (image + video) | API key |
77
- | **Xiaomi (MiMo)** | MiMo-V2.6-Pro, MiMo-V2.6-Flash, MiMo-V2.6-Pro-UltraSpeed | API key |
78
- | **DeepSeek** | DeepSeek V4 Pro, V4.1 Flash (image) | API key |
79
- | **Sakana (Fugu)** | Fugu, Fugu Max, Fugu Ultra (image) | API key |
80
- | **OpenRouter** | Qwen3.8 Max (image + video) + multi-provider gateway | API key |
70
+ | Provider | Models | Auth |
71
+ | ----------------- | ------------------------------------------------------------------------------------------- | ---------------- |
72
+ | **Anthropic** | Claude Fable 5.1, Opus 5.5, Sonnet 5.5, Haiku 5.5 | OAuth |
73
+ | **OpenAI** | GPT-6 Astra, GPT-6.1 Sol, GPT-6 Luna | OAuth |
74
+ | **Gemini** | Gemini 3.1 Pro (Preview), 3.8 Flash, 3.7 Flash, 3.5 Flash, 3.5 Flash Lite, 3.1 Flash Lite | OAuth |
75
+ | **xAI (Grok)** | Grok 4.7 | OAuth or API key |
76
+ | **Moonshot** | Kimi K3, K2.8 Preview (Kimi sign-in), K2.7 Code, K2.7 Code HighSpeed | OAuth or API key |
77
+ | **Z.AI (GLM)** | GLM-5.3, GLM-5.3-Flash | API key |
78
+ | **MiniMax** | MiniMax M3 | API key |
79
+ | **Xiaomi (MiMo)** | MiMo-V2.6-Pro, MiMo-V2.6-Flash, MiMo-V2.6-Pro-UltraSpeed | API key |
80
+ | **DeepSeek** | DeepSeek V4 Pro, V4.1 Flash | API key |
81
+ | **Sakana (Fugu)** | Fugu, Fugu Max, Fugu Ultra | API key |
82
+ | **OpenRouter** | Qwen3.8 Max | API key |
83
+ | **Hugging Face** | Kimi K2.7 Code, DeepSeek V4.1 Flash, GPT-OSS 120B (Inference Providers router) | API key |
84
+ | **Local** | Any model on an OpenAI-compatible server: Ollama, LM Studio, llama.cpp, vLLM | None |
85
+
86
+ Every hosted model above except GLM-5.3, DeepSeek V4 Pro, and GPT-OSS 120B accepts images.
81
87
 
82
88
  The same conversation, the same tools, the same project context — only the model changes. Use a strong reasoning model when you need it, swap to a fast cheap one for grunt work, never restart your session.
83
89
 
84
- **Attachments.** Drag, paste, or type a path to attach images and video in the chat input. Video is sent natively to models that support it (Gemini 3.x, Kimi K3/K2.8 Preview/K2.7 Code, MiniMax M3, MiMo-V2.6, Qwen3.8 Max); for other models the video is saved to a temp file and the model is told to inspect it with ffmpeg or its own tools.
90
+ **Attachments.** Drag, paste, or type a path to attach images and video in the chat input. Video is sent natively to models that support it (Gemini 3.x, every Moonshot Kimi model, MiniMax M3, MiMo-V2.6, Qwen3.8 Max); for other models the video is saved to a temp file and the model is told to inspect it with ffmpeg or its own tools.
85
91
 
86
92
  ---
87
93
 
@@ -117,7 +123,7 @@ Run `ezcoder` directly when you're heads-down on one project. Switch to `ezboss`
117
123
 
118
124
  ---
119
125
 
120
- ## 💬 Slash commands
126
+ ## Slash commands
121
127
 
122
128
  Everything runs through slash commands inside the session. Not CLI flags.
123
129
 
@@ -130,7 +136,8 @@ Everything runs through slash commands inside the session. Not CLI flags.
130
136
  | `/branch` (`/b`) | Branch the current conversation |
131
137
  | `/branches` | List branches of the current session |
132
138
  | `/rewind` | Restore files and/or conversation to an earlier checkpoint |
133
- | `/buddy` | Spin up a second model to review the current chat |
139
+ | `/add-dir` | Add another project folder to this workspace |
140
+ | `/remove-dir` | Remove an added project folder from this workspace |
134
141
  | `/settings` (`/config`) | Open settings |
135
142
  | `/help` (`/h`, `/?`) | Show all commands |
136
143
  | `/quit` (`/q`, `/exit`) | Exit |
@@ -141,28 +148,37 @@ Plus built-in workflows that ship with the binary:
141
148
  /expand # Compare against current alternatives and report gaps
142
149
  /raise-floor # Audit existing features and make them just work
143
150
  /bullet-proof # Run a defensive security review
144
- /init # Generate CLAUDE.md for your project
151
+ /init # Generate or update AGENTS.md / CLAUDE.md for your project
145
152
  /setup-commit # Generate a /commit command with quality checks
153
+ /setup-ci # Set up or harden CI for any stack
146
154
  /setup-skills # Audit and recommend reusable skills
155
+ /compare # Compare your code against real-world code
156
+ /steroids # Index real repos like this project
147
157
  ```
148
158
 
149
159
  ---
150
160
 
151
- ## 🛠 Tools
161
+ ## Tools
152
162
 
153
- EZ Coder comes with a focused set of tools. Each one is small, well-described, and earns its place in the prompt.
163
+ EZ Coder comes with a focused set of tools. Only six core tools — `read`, `write`, `edit`, `bash`, `grep`, and `skill` — plus `tool_search` send their full schemas on every request. Everything else is listed as a one-line hint and loads the first time the agent needs it, so rarely used tools cost almost nothing.
154
164
 
155
165
  | Tool | What it does |
156
166
  | --------------------------------- | ------------------------------------------------------------------------------------------------------ |
157
- | `bash` | Run shell commands |
167
+ | `bash` | Run shell commands, in the foreground or background (`task_output` / `task_send` / `task_stop`) |
158
168
  | `read` | Read file contents |
159
169
  | `write` | Write files |
160
170
  | `edit` | Surgical string replacements |
161
171
  | `grep` | Search file contents (regex) |
162
- | `find` | Find files by glob pattern |
163
- | `ls` | List directory contents |
164
- | `web_fetch` | Fetch URL content |
172
+ | `skill` | Load a skill's instructions |
173
+ | `tool_search` | Load an on-demand tool by capability |
174
+ | `find` / `ls` | Find files by glob pattern / list a directory |
175
+ | `code_search` / `code_nav` | Find code by meaning / jump to exact definitions and callers |
176
+ | `web_fetch` / `web_search` | Fetch a URL / search the web |
177
+ | `steroids` | Find real production repos similar to yours and read how they do it |
178
+ | `source_path` | Locate an installed dependency's source |
165
179
  | `screenshot` | Open a URL / dev server in a headless browser and capture a PNG so the agent can see the rendered page |
180
+ | `debug` | Drive the Node debugger |
181
+ | `enter_plan` / `exit_plan` | Plan before editing, then hand the plan back for approval |
166
182
  | `subagent` | Run one blocking, isolated child task (backward-compatible) |
167
183
  | `spawn_agent` / `wait_agent` | Launch persistent child turns concurrently and collect results |
168
184
  | `send_message` / `followup_task` | Steer a running child or reuse an idle child's context |
@@ -170,7 +186,7 @@ EZ Coder comes with a focused set of tools. Each one is small, well-described, a
170
186
 
171
187
  The `screenshot` tool needs the optional `playwright` dependency plus a one-time `npx playwright install chromium`. Without it the tool returns an install hint instead of failing the turn. Captured images render inline in graphics-capable terminals (kitty, Ghostty, WezTerm, iTerm2); other terminals show a text line.
172
188
 
173
- Plus the [Grep MCP](https://grep.dev) for searching across 1M+ public GitHub repos. Add your own MCPs in settings if you need more — but start lean.
189
+ Add your own MCPs in `~/.ezcoder/mcp.json` or `.ezcoder/mcp.json` if you need more — but start lean.
174
190
 
175
191
  ### Async subagent lifecycle
176
192
 
@@ -184,13 +200,13 @@ Parent cancellation interrupts active children. Session disposal shuts down ever
184
200
 
185
201
  ---
186
202
 
187
- ## 🪄 Custom commands
203
+ ## Custom commands
188
204
 
189
205
  Drop a markdown file in `.ezcoder/commands/` and it becomes a slash command. Your React app gets `/deploy` and `/storybook`. Your API gets `/migrate` and `/seed`. Different projects, different commands.
190
206
 
191
207
  ---
192
208
 
193
- ## ⏪ Checkpoints & `/rewind`
209
+ ## Checkpoints & `/rewind`
194
210
 
195
211
  Before every file the agent writes or edits, EZ Coder snapshots the prior on-disk content into a per-session checkpoint (stored under `~/.ezcoder/checkpoints/`, never in your repo). Run `/rewind` to pick an earlier checkpoint and restore **code only**, **conversation only**, or **both**.
196
212
 
@@ -198,7 +214,7 @@ Only edits made through ezcoder's `write`/`edit` tools are tracked — changes m
198
214
 
199
215
  ---
200
216
 
201
- ## 🎒 Skills
217
+ ## Skills
202
218
 
203
219
  Reusable behaviors across projects. Drop `.md` files in:
204
220
 
@@ -225,22 +241,22 @@ Eleven ship built in, and route themselves when the work matches:
225
241
 
226
242
  ---
227
243
 
228
- ## 📋 Project guidelines
244
+ ## Project guidelines
229
245
 
230
- Drop a `CLAUDE.md` or `AGENTS.md` in your repo root (or any parent directory). EZ Coder picks it up automatically.
246
+ Drop an `AGENTS.md` or `CLAUDE.md` in your repo root (or any parent directory). EZ Coder picks it up automatically. One file per directory is loaded, first match wins: `AGENTS.override.md` > `AGENTS.md` > `CLAUDE.md` > `.cursorrules` > `CONVENTIONS.md`.
231
247
 
232
248
  Your rules. Your conventions. The agent follows them.
233
249
 
234
250
  ---
235
251
 
236
- ## 👥 Community
252
+ ## Community
237
253
 
238
254
  - [Prestyj website](https://prestyj.com) — tutorials and updates
239
255
  - [GitHub @Gahroot](https://github.com/Gahroot)
240
256
 
241
257
  ---
242
258
 
243
- ## 📄 License
259
+ ## License
244
260
 
245
261
  MIT
246
262
 
@@ -115,8 +115,11 @@ export function handleAuthRoutes(ctx, req, res, url, method) {
115
115
  else if (provider === "moonshot" || provider === "xai") {
116
116
  // Subscription OAuth (Kimi plan / SuperGrok-X Premium) stores under
117
117
  // a distinct key so it can coexist with the provider's API key.
118
+ const dual = dualAuthProvider(provider);
119
+ if (!dual)
120
+ throw new Error(`No subscription storage key for ${provider}`);
118
121
  creds = provider === "moonshot" ? await loginKimi(cb) : await loginXai(cb);
119
- storageKey = dualAuthProvider(provider).oauthKey;
122
+ storageKey = dual.oauthKey;
120
123
  }
121
124
  else {
122
125
  throw new Error(`OAuth not implemented for ${provider}`);
@@ -1 +1 @@
1
- {"version":3,"file":"auth-routes.js","sourceRoot":"","sources":["../../src/app-sidecar/auth-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-routes.js","sourceRoot":"","sources":["../../src/app-sidecar/auth-routes.ts"],"names":[],"mappings":"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"}
@@ -111,11 +111,8 @@ export function createAutopilotRunner(ctx) {
111
111
  async function runAutopilotCycle(originalRequest) {
112
112
  if (!ctx.autopilot || ctx.autopilotCancelled)
113
113
  return;
114
- // Unverified work skips a work review silently. A pending plan still enters
115
- // the cycle so driveAutopilotCycle says WHY Nolan stepped aside
116
- // (autopilot_human) before the plan is handed to the user.
117
- if (ctx.pendingPlanPath === null && ctx.session.getVerificationProblem())
118
- return;
114
+ // Unchecked work enters the cycle too: driveAutopilotCycle asks for the
115
+ // checks once before Nolan reviews, and hands back only if still unchecked.
119
116
  const generation = ctx.runLifecycle.begin(ctx.abortOwnedWork).generation;
120
117
  ctx.pendingCancelDrain = null;
121
118
  ctx.autopilotActive = true;
@@ -1 +1 @@
1
- {"version":3,"file":"autopilot-runner.js","sourceRoot":"","sources":["../../src/app-sidecar/autopilot-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autopilot-runner.js","sourceRoot":"","sources":["../../src/app-sidecar/autopilot-runner.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,18 @@
1
+ import { type ProjectHealthScan } from "../core/project-health-scan.js";
1
2
  import { type GitHubOpenCounts } from "../utils/github.js";
2
3
  import { type GitHubCI } from "../utils/github-ci.js";
3
4
  import { type SharedPolls } from "../utils/shared-poll.js";
4
5
  /**
5
6
  * Daemon-wide repo pollers, shared by every window on the same repo so
6
7
  * opening a project twice doesn't double the git/`gh` processes.
7
- * Keys: `dirtyFiles` and `gitHubCI` by resolved cwd (a worktree has its own
8
- * files and HEAD); `gitHubCounts` by `owner/repo` (counts are repo-wide).
8
+ * Keys: `dirtyFiles`, `gitHubCI` and `projectHealth` by resolved cwd (a
9
+ * worktree has its own files and HEAD); `gitHubCounts` by `owner/repo`
10
+ * (counts are repo-wide).
9
11
  */
10
12
  export interface RepoPolls {
11
13
  readonly dirtyFiles: SharedPolls<number>;
12
14
  readonly gitHubCounts: SharedPolls<GitHubOpenCounts>;
13
15
  readonly gitHubCI: SharedPolls<GitHubCI | null>;
16
+ readonly projectHealth: SharedPolls<ProjectHealthScan>;
14
17
  }
15
18
  export declare function createRepoPolls(): RepoPolls;
@@ -1,3 +1,4 @@
1
+ import { createProjectHealthScanner } from "../core/project-health-scan.js";
1
2
  import { getGitDirtyFileCount } from "../utils/git.js";
2
3
  import { getGitHubOpenCounts } from "../utils/github.js";
3
4
  import { startGitHubCIPoll } from "../utils/github-ci.js";
@@ -20,6 +21,25 @@ export function createRepoPolls() {
20
21
  intervalMs: 60_000,
21
22
  })),
22
23
  gitHubCI: createSharedPolls((cwd, publish) => startGitHubCIPoll(cwd, publish)),
24
+ // Reads every source file on the first pass; later passes only stat
25
+ // unchanged files (the scanner caches by mtime + size). Runs also refresh it.
26
+ projectHealth: createSharedPolls((cwd, publish) => {
27
+ const scanner = createProjectHealthScanner();
28
+ const controller = new AbortController();
29
+ const poller = startIntervalPoll({
30
+ fetch: () => scanner.scan(cwd, new Date(), controller.signal),
31
+ publish,
32
+ firstDelayMs: 3000,
33
+ intervalMs: 120_000,
34
+ });
35
+ return {
36
+ refresh: poller.refresh,
37
+ stop() {
38
+ controller.abort();
39
+ poller.stop();
40
+ },
41
+ };
42
+ }),
23
43
  };
24
44
  }
25
45
  //# sourceMappingURL=repo-polls.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"repo-polls.js","sourceRoot":"","sources":["../../src/app-sidecar/repo-polls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAyB,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAiB,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAoB,MAAM,yBAAyB,CAAC;AAcjG,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,mEAAmE;QACnE,UAAU,EAAE,iBAAiB,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAC7C,iBAAiB,CAAC;YAChB,KAAK,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC;YACtC,OAAO;YACP,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,IAAI;SACjB,CAAC,CACH;QACD,2EAA2E;QAC3E,yDAAyD;QACzD,YAAY,EAAE,iBAAiB,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAChD,iBAAiB,CAAC;YAChB,KAAK,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;YACtC,OAAO;YACP,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,MAAM;SACnB,CAAC,CACH;QACD,QAAQ,EAAE,iBAAiB,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;KAC/E,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"repo-polls.js","sourceRoot":"","sources":["../../src/app-sidecar/repo-polls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAA0B,MAAM,gCAAgC,CAAC;AACpG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAyB,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAiB,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAoB,MAAM,yBAAyB,CAAC;AAgBjG,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,mEAAmE;QACnE,UAAU,EAAE,iBAAiB,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAC7C,iBAAiB,CAAC;YAChB,KAAK,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC;YACtC,OAAO;YACP,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,IAAI;SACjB,CAAC,CACH;QACD,2EAA2E;QAC3E,yDAAyD;QACzD,YAAY,EAAE,iBAAiB,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAChD,iBAAiB,CAAC;YAChB,KAAK,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;YACtC,OAAO;YACP,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,MAAM;SACnB,CAAC,CACH;QACD,QAAQ,EAAE,iBAAiB,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9E,oEAAoE;QACpE,8EAA8E;QAC9E,aAAa,EAAE,iBAAiB,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;YAChD,MAAM,OAAO,GAAG,0BAA0B,EAAE,CAAC;YAC7C,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,iBAAiB,CAAC;gBAC/B,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,UAAU,CAAC,MAAM,CAAC;gBAC7D,OAAO;gBACP,YAAY,EAAE,IAAI;gBAClB,UAAU,EAAE,OAAO;aACpB,CAAC,CAAC;YACH,OAAO;gBACL,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,IAAI;oBACF,UAAU,CAAC,KAAK,EAAE,CAAC;oBACnB,MAAM,CAAC,IAAI,EAAE,CAAC;gBAChB,CAAC;aACF,CAAC;QACJ,CAAC,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -12,6 +12,7 @@ import type { RunLifecycle } from "../core/run-lifecycle.js";
12
12
  import type { HfSearchRow } from "../hf-pull.js";
13
13
  import type { ServeController } from "../modes/serve-mode.js";
14
14
  import type { GitHubCI } from "../utils/github-ci.js";
15
+ import type { ProjectHealth } from "../core/project-health-score.js";
15
16
  import type { ProgressManager } from "./progress-manager.js";
16
17
  import type { HfPullState, SseClient, WorkspaceMode } from "./session-types.js";
17
18
  import type { Provider } from "@prestyj/ai";
@@ -36,6 +37,7 @@ export interface SessionRouteContext {
36
37
  gitHubPRs: number | null;
37
38
  gitHubRepoUrl: string | null;
38
39
  gitHubCI: GitHubCI | null;
40
+ projectHealth: ProjectHealth | null;
39
41
  tasks: BackgroundProcess[];
40
42
  additionalRoots: string[];
41
43
  };
@@ -43,6 +43,7 @@ import { getModel, getDefaultThinkingLevel, getContextWindow, clearRuntimeModels
43
43
  import { resolveStartOrFallback } from "./core/resolve-start.js";
44
44
  import { getGitBranch, getGitDirtyFileCount, isGitRepo } from "./utils/git.js";
45
45
  import { getGitHubRepoSlug } from "./utils/github.js";
46
+ import { scoreProjectHealth } from "./core/project-health-score.js";
46
47
  import { createRepoPolls } from "./app-sidecar/repo-polls.js";
47
48
  import { extractPlanSteps } from "./utils/plan-steps.js";
48
49
  import { getSupportedThinkingLevels, isThinkingLevelSupported } from "./core/thinking-level.js";
@@ -815,6 +816,23 @@ async function createSession(deps, opts) {
815
816
  let gitHubIssues = null;
816
817
  let gitHubPRs = null;
817
818
  let gitHubCI = null;
819
+ // Latest Project Health scan (code mode only); scored with the live CI result.
820
+ let projectHealthScan = null;
821
+ // Footer extras go out on every git/CI/task change; score only when the scan
822
+ // or CI result actually changed.
823
+ let scoredHealth = null;
824
+ function currentProjectHealth() {
825
+ if (!projectHealthScan)
826
+ return null;
827
+ if (scoredHealth?.scan !== projectHealthScan || scoredHealth.ci !== gitHubCI) {
828
+ scoredHealth = {
829
+ scan: projectHealthScan,
830
+ ci: gitHubCI,
831
+ health: scoreProjectHealth(projectHealthScan, gitHubCI),
832
+ };
833
+ }
834
+ return scoredHealth.health;
835
+ }
818
836
  function currentContextWindow() {
819
837
  const st = session.getState();
820
838
  return getContextWindow(st.model, { provider: st.provider, accountId: st.accountId });
@@ -831,6 +849,7 @@ async function createSession(deps, opts) {
831
849
  gitHubPRs,
832
850
  gitHubCI,
833
851
  gitHubRepoUrl: gitHubSlug ? `https://github.com/${gitHubSlug}` : null,
852
+ projectHealth: currentProjectHealth(),
834
853
  tasks: session.listBackgroundProcesses(),
835
854
  // Roots added with /add-dir — the header shows a badge when non-empty.
836
855
  additionalRoots: session.getAdditionalRoots(),
@@ -1404,7 +1423,11 @@ async function createSession(deps, opts) {
1404
1423
  }
1405
1424
  finally {
1406
1425
  const cancelled = runLifecycle.isCancellationRequested(generation);
1407
- const verificationProblem = cancelled ? null : session.getVerificationProblem();
1426
+ // A plain reply has no real end (the user keeps building), so checks are
1427
+ // left to the commit and unchecked edits are not "Unverified". Only an
1428
+ // Autopilot cycle, which does end, reports unchecked work. A check that
1429
+ // ran and failed still shows as failed (from the evidence).
1430
+ const verificationProblem = cancelled || !autopilotActive ? null : session.getVerificationProblem();
1408
1431
  if (runSucceeded && verificationProblem && ownsGeneration) {
1409
1432
  // Expected control outcome: run_end and the journal already carry Unverified.
1410
1433
  // Do not format it as a crash or persist a misleading error marker.
@@ -1429,6 +1452,7 @@ async function createSession(deps, opts) {
1429
1452
  // teardown isn't delayed by the network. Broadcasts itself on change.
1430
1453
  gitHubCountsPoll?.refresh();
1431
1454
  ciPoll.refresh();
1455
+ healthPoll?.refresh();
1432
1456
  // Serialize behind any marker/tool-triggered refresh so the terminal
1433
1457
  // progress snapshot uses the live plan file. Once every canonical step
1434
1458
  // is complete, remove the approved plan from future system prompts and
@@ -1795,6 +1819,15 @@ async function createSession(deps, opts) {
1795
1819
  gitHubCI = next;
1796
1820
  broadcast("extras", footerExtras());
1797
1821
  });
1822
+ // Project Health is a code-workspace signal; chat and motion windows skip the scan.
1823
+ const healthPoll = mode === "code"
1824
+ ? repoPolls.projectHealth.subscribe(repoKey, (next) => {
1825
+ if (JSON.stringify(next) === JSON.stringify(projectHealthScan))
1826
+ return;
1827
+ projectHealthScan = next;
1828
+ broadcast("extras", footerExtras());
1829
+ })
1830
+ : null;
1798
1831
  const routeCtx = {
1799
1832
  get session() {
1800
1833
  return session;
@@ -2032,6 +2065,7 @@ async function createSession(deps, opts) {
2032
2065
  dirtyFilesPoll.unsubscribe();
2033
2066
  gitHubCountsPoll?.unsubscribe();
2034
2067
  ciPoll.unsubscribe();
2068
+ healthPoll?.unsubscribe();
2035
2069
  // Stop the Telegram serve loop + dispose its per-chat sessions.
2036
2070
  if (serveController)
2037
2071
  await serveController.stop().catch(() => { });