mindweave 2.3.1 → 2.4.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 (121) hide show
  1. package/README.md +26 -43
  2. package/dist/alternator/chassis/lsp.js +67 -0
  3. package/dist/alternator/chassis/lsp.js.map +1 -1
  4. package/dist/cli/App.js +1175 -99
  5. package/dist/cli/App.js.map +1 -1
  6. package/dist/cli/altScreen.js +80 -10
  7. package/dist/cli/altScreen.js.map +1 -1
  8. package/dist/cli/appIdentity.js +54 -0
  9. package/dist/cli/appIdentity.js.map +1 -0
  10. package/dist/cli/attachments.js +27 -3
  11. package/dist/cli/attachments.js.map +1 -1
  12. package/dist/cli/blockHeights.js +58 -0
  13. package/dist/cli/blockHeights.js.map +1 -0
  14. package/dist/cli/caretPark.js +94 -0
  15. package/dist/cli/caretPark.js.map +1 -0
  16. package/dist/cli/clipboard.js +68 -0
  17. package/dist/cli/clipboard.js.map +1 -0
  18. package/dist/cli/commandLabel.js +19 -2
  19. package/dist/cli/commandLabel.js.map +1 -1
  20. package/dist/cli/commands.js +1 -0
  21. package/dist/cli/commands.js.map +1 -1
  22. package/dist/cli/components/BlockView.js +1 -1
  23. package/dist/cli/components/BlockView.js.map +1 -1
  24. package/dist/cli/components/KeyManager.js +11 -5
  25. package/dist/cli/components/KeyManager.js.map +1 -1
  26. package/dist/cli/components/Picker.js +18 -3
  27. package/dist/cli/components/Picker.js.map +1 -1
  28. package/dist/cli/components/PromptInput.js +300 -74
  29. package/dist/cli/components/PromptInput.js.map +1 -1
  30. package/dist/cli/components/TipLine.js +33 -0
  31. package/dist/cli/components/TipLine.js.map +1 -0
  32. package/dist/cli/components/ToolLine.js +30 -3
  33. package/dist/cli/components/ToolLine.js.map +1 -1
  34. package/dist/cli/dropHandles.js +76 -0
  35. package/dist/cli/dropHandles.js.map +1 -0
  36. package/dist/cli/exitCursor.js +56 -0
  37. package/dist/cli/exitCursor.js.map +1 -0
  38. package/dist/cli/framebuffer/overlay.js +42 -0
  39. package/dist/cli/framebuffer/overlay.js.map +1 -0
  40. package/dist/cli/framebuffer/paint.js +8 -1
  41. package/dist/cli/framebuffer/paint.js.map +1 -1
  42. package/dist/cli/framebuffer/parse.js +54 -4
  43. package/dist/cli/framebuffer/parse.js.map +1 -1
  44. package/dist/cli/framebuffer/writer.js +357 -6
  45. package/dist/cli/framebuffer/writer.js.map +1 -1
  46. package/dist/cli/groupReveal.js +29 -3
  47. package/dist/cli/groupReveal.js.map +1 -1
  48. package/dist/cli/inputView.js +45 -0
  49. package/dist/cli/inputView.js.map +1 -1
  50. package/dist/cli/livePad.js +53 -0
  51. package/dist/cli/livePad.js.map +1 -0
  52. package/dist/cli/memoryTuning.js +31 -0
  53. package/dist/cli/memoryTuning.js.map +1 -0
  54. package/dist/cli/messageQueue.js +76 -7
  55. package/dist/cli/messageQueue.js.map +1 -1
  56. package/dist/cli/mouse.js +40 -7
  57. package/dist/cli/mouse.js.map +1 -1
  58. package/dist/cli/quietConsole.js +50 -0
  59. package/dist/cli/quietConsole.js.map +1 -0
  60. package/dist/cli/screenMode.js +118 -0
  61. package/dist/cli/screenMode.js.map +1 -0
  62. package/dist/cli/screenShell.js +67 -0
  63. package/dist/cli/screenShell.js.map +1 -0
  64. package/dist/cli/screenStore.js +46 -0
  65. package/dist/cli/screenStore.js.map +1 -0
  66. package/dist/cli/scrollPill.js +101 -0
  67. package/dist/cli/scrollPill.js.map +1 -0
  68. package/dist/cli/selection.js +130 -0
  69. package/dist/cli/selection.js.map +1 -0
  70. package/dist/cli/startupFill.js +48 -0
  71. package/dist/cli/startupFill.js.map +1 -0
  72. package/dist/cli/terminalRestore.js +1 -1
  73. package/dist/cli/terminalRestore.js.map +1 -1
  74. package/dist/cli/toolDisplay.js +11 -2
  75. package/dist/cli/toolDisplay.js.map +1 -1
  76. package/dist/cli/toolItems.js +1 -0
  77. package/dist/cli/toolItems.js.map +1 -1
  78. package/dist/cli/transcript.js +54 -3
  79. package/dist/cli/transcript.js.map +1 -1
  80. package/dist/cli/wordEdit.js +95 -0
  81. package/dist/cli/wordEdit.js.map +1 -0
  82. package/dist/drivers/openai/manifest.js +4 -1
  83. package/dist/drivers/openai/manifest.js.map +1 -1
  84. package/dist/dynamo/engine.js +126 -20
  85. package/dist/dynamo/engine.js.map +1 -1
  86. package/dist/index.js +42 -3
  87. package/dist/index.js.map +1 -1
  88. package/dist/memory/pastedText.js +37 -0
  89. package/dist/memory/pastedText.js.map +1 -0
  90. package/dist/memory/presence.js +47 -0
  91. package/dist/memory/presence.js.map +1 -1
  92. package/dist/memory/session.js +78 -4
  93. package/dist/memory/session.js.map +1 -1
  94. package/dist/memory/store.js +22 -1
  95. package/dist/memory/store.js.map +1 -1
  96. package/dist/memory/types.js.map +1 -1
  97. package/dist/tools/backgroundShells.js +105 -18
  98. package/dist/tools/backgroundShells.js.map +1 -1
  99. package/dist/tools/commandOutput.js +207 -0
  100. package/dist/tools/commandOutput.js.map +1 -0
  101. package/dist/tools/detail.js +2 -2
  102. package/dist/tools/detail.js.map +1 -1
  103. package/dist/tools/openDefault.js +150 -0
  104. package/dist/tools/openDefault.js.map +1 -0
  105. package/dist/tools/outputShape.js +31 -6
  106. package/dist/tools/outputShape.js.map +1 -1
  107. package/dist/tools/pathList.js +32 -0
  108. package/dist/tools/pathList.js.map +1 -0
  109. package/dist/tools/readFile.js +3 -15
  110. package/dist/tools/readFile.js.map +1 -1
  111. package/dist/tools/registry.js +3 -1
  112. package/dist/tools/registry.js.map +1 -1
  113. package/dist/tools/runCommand.js +154 -58
  114. package/dist/tools/runCommand.js.map +1 -1
  115. package/dist/tools/screenshot.js +35 -3
  116. package/dist/tools/screenshot.js.map +1 -1
  117. package/dist/tools/viewImage.js +88 -0
  118. package/dist/tools/viewImage.js.map +1 -0
  119. package/dist/tools/writeFile.js +9 -1
  120. package/dist/tools/writeFile.js.map +1 -1
  121. package/package.json +74 -74
package/README.md CHANGED
@@ -32,7 +32,7 @@ Questions are welcome at zallinimann@gmail.com.
32
32
  Mindweave 1 is out, tagged `mindweave-1`. It is on npm, and the website is up. Install
33
33
  with the steps below.
34
34
 
35
- What landed in it is in the [changelog](CHANGELOG.md): thirteen model providers, a
35
+ What landed in it is in the [changelog](CHANGELOG.md): fourteen model providers, a
36
36
  rebuilt terminal interface, reworked prompt caching and token accounting, project notes
37
37
  the agent maintains across sessions, and a long list of things that were quietly wrong.
38
38
 
@@ -41,8 +41,6 @@ the agent maintains across sessions, and a long list of things that were quietly
41
41
  Requires **Windows** and **Node.js 20+**. macOS and Linux are not supported yet, and the
42
42
  reason is written down in [KNOWN-ISSUES.md](KNOWN-ISSUES.md) rather than glossed over.
43
43
 
44
- Big features coming out soon!
45
-
46
44
  ```bash
47
45
  npm install -g mindweave
48
46
  ```
@@ -71,46 +69,31 @@ else is configured inside a session.
71
69
 
72
70
  ## What it can do
73
71
 
74
- **14 providers, 53 models, one key.** DeepSeek, Anthropic, OpenAI, Gemini, xAI, Mistral,
75
- Groq, Cerebras, Qwen, Kimi, GLM, Meta, MiniMax and Tencent. Each family gets its own driver so it
76
- runs at its best without bloating the shared core, and only the driver you are using is
77
- ever loaded. Switch with `/provider` and `/model`; the choice is remembered per project.
78
- Full list: [PROVIDERS.md](src/drivers/PROVIDERS.md).
79
-
80
- **Deterministic code intelligence.** A background lane indexes your repo with tree-sitter
81
- and language servers, costing no tokens, so the agent understands your codebase rather
82
- than just the file you opened.
83
-
84
- **Real tools.** File read and edit, multi-file edits, ripgrep search, a shell with
85
- background jobs, and sub-agents. Every edit comes back with the language server's own
86
- errors for that file, so a mistake surfaces where it was made. Read-before-edit is enforced, and
87
- `/undo` is a real net rather than a hope.
88
-
89
- **Session memory.** Long sessions stay sharp through automatic compaction plus a running
90
- state summary that survives it. The agent can read its own earlier sessions in a project,
91
- so "what did we do last time" gets a real answer instead of a guess.
92
-
93
- **MCP servers.** Connect external tool servers (GitHub, Postgres, your own) with
94
- `/mcp add` or by asking in plain words. They start with your session, and their output is
95
- treated as untrusted by default. Full guide: [docs/MCP.md](docs/MCP.md).
96
-
97
- **Images and web search.** Drag a screenshot into the prompt or write `@shot.png`; a model
98
- that can see gets the image, and one that cannot says so plainly. Ask about a recent
99
- release and the agent looks it up instead of guessing, through your own provider, with no
100
- second account to manage.
101
-
102
- **Seeing your app.** It can capture one window and look at it, which is how you tell an
103
- app that started from an app that works. One window, never the whole screen, and it asks
104
- first, naming the window it is about to capture.
105
-
106
- **Project notes that carry across sessions.** MINDWEAVE.md is loaded every session and
107
- maintained by the agent, so a new conversation continues rather than starts over. Split
108
- it with `@./path` imports, keep machine-wide notes in `~/.mindweave/MINDWEAVE.md`, and
109
- put a MINDWEAVE.md inside a folder for conventions that are true only there — that one
110
- is loaded only while the agent works in it. `/init` writes the first one.
111
-
112
- **Per-project governor.** Give a project standing rules, reusable skills, and forbidden
113
- paths or commands the agent has to respect.
72
+ Short version, one line each. The depth is in the linked pages.
73
+
74
+ - **14 providers, 54 models, one key** — DeepSeek, Anthropic, OpenAI, Gemini, xAI,
75
+ Mistral, Groq, Cerebras, Qwen, Kimi, GLM, Meta, MiniMax, Tencent. Only the driver you
76
+ use is loaded. Switch with `/provider` and `/model`; remembered per project.
77
+ [PROVIDERS.md](src/drivers/PROVIDERS.md)
78
+ - **Real tools** — read and edit files, multi-file edits, ripgrep search, a shell with
79
+ background jobs, and sub-agents. Every edit comes back with the language server's own
80
+ errors for that file. Read-before-edit is enforced, and `/undo` is a real net.
81
+ - **Deterministic code intelligence** — a background lane indexes your repo with
82
+ tree-sitter and language servers, costing no tokens, so the agent understands the
83
+ codebase, not just the open file.
84
+ - **Session memory** — automatic compaction plus a running state summary that survives
85
+ it, and the agent can read its own earlier sessions in a project.
86
+ - **Project notes** — MINDWEAVE.md is loaded every session and maintained by the agent;
87
+ `@./path` imports split it, a per-folder one applies only there, and `~/.mindweave/`
88
+ holds machine-wide notes. `/init` writes the first one.
89
+ - **MCP servers** — connect external tool servers with `/mcp add` or in plain words;
90
+ their output is untrusted by default. [docs/MCP.md](docs/MCP.md)
91
+ - **Images and web search** — drop a screenshot or write `@shot.png`; ask about a recent
92
+ release and it looks it up, through your own provider.
93
+ - **Seeing your app** — it can capture one named window (never the whole screen, and it
94
+ asks first) to tell an app that started from one that works.
95
+ - **Per-project governor** — standing rules, reusable skills, and forbidden paths or
96
+ commands the agent must respect.
114
97
 
115
98
  ## Using it
116
99
 
@@ -8,6 +8,27 @@ const INIT_TIMEOUT = 15_000;
8
8
  const REQUEST_TIMEOUT = 10_000;
9
9
  /** How long to wait for a server's `shutdown` reply before killing it anyway. */
10
10
  const SHUTDOWN_TIMEOUT = 2_000;
11
+ /**
12
+ * How long a language server may sit idle before it is shut down to reclaim its memory.
13
+ *
14
+ * A pyright or tsserver is spawned on the first symbol query and, without this, lived for
15
+ * the rest of the session holding its whole index — hundreds of megabytes each, resident
16
+ * the entire time whether or not another query ever came. Most of a session is reading,
17
+ * writing and running commands, not looking symbols up, so that memory sat unused far
18
+ * more often than it was needed. A server is lazy (see `session`), so shutting an idle
19
+ * one down costs only a cold respawn the next time code intelligence is actually asked
20
+ * for — the same cost the first query already pays.
21
+ *
22
+ * Two minutes because a respawn re-indexes the project, which is the expensive part: long
23
+ * enough that a burst of related lookups never pays it twice, short enough that the memory
24
+ * is back soon after the model moves on to other work. The check runs on a coarser timer
25
+ * so an idle session is not woken four times a minute to look at a clock.
26
+ */
27
+ function lspIdleMs() {
28
+ const raw = Number(process.env["MINDWEAVE_LSP_IDLE_MS"]);
29
+ return Number.isFinite(raw) && raw >= 0 ? raw : 120_000;
30
+ }
31
+ const LSP_IDLE_CHECK_MS = 30_000;
11
32
  /**
12
33
  * Ceiling on documents held open in ONE server, across the whole session.
13
34
  *
@@ -47,8 +68,48 @@ export class LspManager {
47
68
  diagnosticsByFile = new Map();
48
69
  /** didChange version counter per file. */
49
70
  versions = new Map();
71
+ /** When a query last touched a server, for the idle shutdown below. */
72
+ lastActivity = Date.now();
73
+ /** The idle-watch timer, unref'd so it never keeps the process alive. */
74
+ idleTimer;
50
75
  constructor(root) {
51
76
  this.root = root;
77
+ // Watch for idleness from the start. Unref'd, so a session with servers that have
78
+ // already been shut down (or were never started) does not hold the event loop open.
79
+ this.idleTimer = setInterval(() => this.reapIfIdle(), LSP_IDLE_CHECK_MS);
80
+ this.idleTimer.unref?.();
81
+ }
82
+ /**
83
+ * Shut idle servers down, keeping the manager usable.
84
+ *
85
+ * Everything a killed server held — its `opened` documents, its index — dies with it,
86
+ * so this only clears the manager's own handles: the sessions map (so the next query
87
+ * relaunches), the process list, and the diagnostics/versions those servers produced,
88
+ * which a fresh server will republish from scratch. `languages` and `files` stay: they
89
+ * are what a respawn is rebuilt from, and they cost nothing.
90
+ *
91
+ * Public so the idle threshold can be driven from a test without waiting on the timer;
92
+ * it is safe to call at any time because it does nothing unless a server is genuinely
93
+ * idle past the threshold.
94
+ */
95
+ reapIfIdle() {
96
+ if (this.disposed || this.procs.length === 0)
97
+ return;
98
+ if (Date.now() - this.lastActivity < lspIdleMs())
99
+ return;
100
+ for (const { proc } of this.procs) {
101
+ try {
102
+ killTreeSync(proc.pid);
103
+ proc.kill();
104
+ }
105
+ catch {
106
+ /* already gone */
107
+ }
108
+ }
109
+ this.procs = [];
110
+ this.sessions.clear();
111
+ this.diagnosticsByFile.clear();
112
+ this.versions.clear();
52
113
  }
53
114
  /** Record that the project contains this file (so we know which servers to
54
115
  * consult, and so we can open the project before a workspace query). */
@@ -259,6 +320,10 @@ export class LspManager {
259
320
  */
260
321
  dispose() {
261
322
  this.disposed = true;
323
+ if (this.idleTimer) {
324
+ clearInterval(this.idleTimer);
325
+ this.idleTimer = undefined;
326
+ }
262
327
  for (const { proc } of this.procs) {
263
328
  try {
264
329
  killTreeSync(proc.pid);
@@ -295,6 +360,8 @@ export class LspManager {
295
360
  session(spec) {
296
361
  if (this.disposed)
297
362
  return Promise.resolve(null);
363
+ // A query, so the idle clock restarts — a server in active use is never reaped.
364
+ this.lastActivity = Date.now();
298
365
  let existing = this.sessions.get(spec.key);
299
366
  if (!existing) {
300
367
  existing = this.launch(spec).catch(() => null);
@@ -1 +1 @@
1
- {"version":3,"file":"lsp.js","sourceRoot":"","sources":["../../../src/alternator/chassis/lsp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lsp.js","sourceRoot":"","sources":["../../../src/alternator/chassis/lsp.ts"],"names":[],"mappings":"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"}