@monoes/monomindcli 2.11.12 → 2.13.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.
- package/.claude/skills/mastermind/SKILL.md +1 -15
- package/README.md +2 -2
- package/dist/src/commands/doctor-env-checks.d.ts +1 -1
- package/dist/src/commands/doctor-env-checks.d.ts.map +1 -1
- package/dist/src/commands/doctor-env-checks.js +20 -10
- package/dist/src/commands/doctor-env-checks.js.map +1 -1
- package/dist/src/commands/doctor-monoes-checks.d.ts +1 -0
- package/dist/src/commands/doctor-monoes-checks.d.ts.map +1 -1
- package/dist/src/commands/doctor-monoes-checks.js +96 -34
- package/dist/src/commands/doctor-monoes-checks.js.map +1 -1
- package/dist/src/commands/doctor-project-checks.d.ts +19 -0
- package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
- package/dist/src/commands/doctor-project-checks.js +54 -0
- package/dist/src/commands/doctor-project-checks.js.map +1 -1
- package/dist/src/commands/doctor.d.ts.map +1 -1
- package/dist/src/commands/doctor.js +11 -2
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/commands/init-upgrade.d.ts.map +1 -1
- package/dist/src/commands/init-upgrade.js +1 -1
- package/dist/src/commands/init-upgrade.js.map +1 -1
- package/dist/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +12 -0
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/org.d.ts.map +1 -1
- package/dist/src/commands/org.js +9 -2
- package/dist/src/commands/org.js.map +1 -1
- package/dist/src/commands/ui.d.ts.map +1 -1
- package/dist/src/commands/ui.js +4 -0
- package/dist/src/commands/ui.js.map +1 -1
- package/dist/src/init/claudemd-generator.d.ts +4 -0
- package/dist/src/init/claudemd-generator.d.ts.map +1 -1
- package/dist/src/init/claudemd-generator.js +81 -77
- package/dist/src/init/claudemd-generator.js.map +1 -1
- package/dist/src/init/copy-assets.d.ts.map +1 -1
- package/dist/src/init/copy-assets.js +56 -18
- package/dist/src/init/copy-assets.js.map +1 -1
- package/dist/src/init/executor.d.ts.map +1 -1
- package/dist/src/init/executor.js +9 -1
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/generated-counts.d.ts +8 -0
- package/dist/src/init/generated-counts.d.ts.map +1 -0
- package/dist/src/init/generated-counts.js +43 -0
- package/dist/src/init/generated-counts.js.map +1 -0
- package/dist/src/init/mcp-generator.d.ts.map +1 -1
- package/dist/src/init/mcp-generator.js +7 -5
- package/dist/src/init/mcp-generator.js.map +1 -1
- package/dist/src/init/never-commit.d.ts +39 -0
- package/dist/src/init/never-commit.d.ts.map +1 -0
- package/dist/src/init/never-commit.js +15 -0
- package/dist/src/init/never-commit.js.map +1 -0
- package/dist/src/init/shared.d.ts +108 -1
- package/dist/src/init/shared.d.ts.map +1 -1
- package/dist/src/init/shared.js +203 -2
- package/dist/src/init/shared.js.map +1 -1
- package/dist/src/init/types.d.ts +5 -0
- package/dist/src/init/types.d.ts.map +1 -1
- package/dist/src/init/upgrade.d.ts.map +1 -1
- package/dist/src/init/upgrade.js +62 -10
- package/dist/src/init/upgrade.js.map +1 -1
- package/dist/src/init/write-capabilities.d.ts.map +1 -1
- package/dist/src/init/write-capabilities.js +95 -61
- package/dist/src/init/write-capabilities.js.map +1 -1
- package/dist/src/init/write-kimicode.d.ts.map +1 -1
- package/dist/src/init/write-kimicode.js +13 -9
- package/dist/src/init/write-kimicode.js.map +1 -1
- package/dist/src/init/write-opencode.d.ts.map +1 -1
- package/dist/src/init/write-opencode.js +44 -2
- package/dist/src/init/write-opencode.js.map +1 -1
- package/dist/src/init/write-runtime-config.d.ts +2 -0
- package/dist/src/init/write-runtime-config.d.ts.map +1 -1
- package/dist/src/init/write-runtime-config.js +55 -38
- package/dist/src/init/write-runtime-config.js.map +1 -1
- package/dist/src/mastermind/manifest-data.d.ts.map +1 -1
- package/dist/src/mastermind/manifest-data.js +14 -0
- package/dist/src/mastermind/manifest-data.js.map +1 -1
- package/dist/src/mcp/monoes-mcp-entry.mjs +86 -0
- package/dist/src/mcp-tools/guidance-tools.js +1 -1
- package/dist/src/mcp-tools/guidance-tools.js.map +1 -1
- package/dist/src/mcp-tools/terminal-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/terminal-tools.js +52 -9
- package/dist/src/mcp-tools/terminal-tools.js.map +1 -1
- package/dist/src/memory/memory-bridge.d.ts +84 -3
- package/dist/src/memory/memory-bridge.d.ts.map +1 -1
- package/dist/src/memory/memory-bridge.js +215 -17
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/src/orgrt/agent-exec.d.ts.map +1 -1
- package/dist/src/orgrt/agent-exec.js +17 -0
- package/dist/src/orgrt/agent-exec.js.map +1 -1
- package/dist/src/orgrt/agent-runner.d.ts +18 -0
- package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
- package/dist/src/orgrt/agent-runner.js +20 -1
- package/dist/src/orgrt/agent-runner.js.map +1 -1
- package/dist/src/orgrt/antigravity-runner.d.ts.map +1 -1
- package/dist/src/orgrt/antigravity-runner.js +4 -1
- package/dist/src/orgrt/antigravity-runner.js.map +1 -1
- package/dist/src/orgrt/codex-runner.d.ts.map +1 -1
- package/dist/src/orgrt/codex-runner.js +4 -1
- package/dist/src/orgrt/codex-runner.js.map +1 -1
- package/dist/src/orgrt/copilot-runner.d.ts.map +1 -1
- package/dist/src/orgrt/copilot-runner.js +4 -1
- package/dist/src/orgrt/copilot-runner.js.map +1 -1
- package/dist/src/orgrt/crush-runner.d.ts.map +1 -1
- package/dist/src/orgrt/crush-runner.js +4 -1
- package/dist/src/orgrt/crush-runner.js.map +1 -1
- package/dist/src/orgrt/forwarder.d.ts.map +1 -1
- package/dist/src/orgrt/forwarder.js +5 -0
- package/dist/src/orgrt/forwarder.js.map +1 -1
- package/dist/src/orgrt/grok-runner.d.ts.map +1 -1
- package/dist/src/orgrt/grok-runner.js +4 -1
- package/dist/src/orgrt/grok-runner.js.map +1 -1
- package/dist/src/orgrt/hermes-runner.d.ts.map +1 -1
- package/dist/src/orgrt/hermes-runner.js +4 -1
- package/dist/src/orgrt/hermes-runner.js.map +1 -1
- package/dist/src/orgrt/kimicode-runner.d.ts.map +1 -1
- package/dist/src/orgrt/kimicode-runner.js +4 -1
- package/dist/src/orgrt/kimicode-runner.js.map +1 -1
- package/dist/src/orgrt/opencode-runner.d.ts.map +1 -1
- package/dist/src/orgrt/opencode-runner.js +5 -1
- package/dist/src/orgrt/opencode-runner.js.map +1 -1
- package/dist/src/orgrt/pi-rpc-runner.d.ts.map +1 -1
- package/dist/src/orgrt/pi-rpc-runner.js +9 -1
- package/dist/src/orgrt/pi-rpc-runner.js.map +1 -1
- package/dist/src/orgrt/pi-runner.d.ts.map +1 -1
- package/dist/src/orgrt/pi-runner.js +9 -1
- package/dist/src/orgrt/pi-runner.js.map +1 -1
- package/dist/src/orgrt/provider.d.ts +14 -0
- package/dist/src/orgrt/provider.d.ts.map +1 -1
- package/dist/src/orgrt/provider.js +54 -0
- package/dist/src/orgrt/provider.js.map +1 -1
- package/dist/src/orgrt/qwen-rpc-runner.d.ts.map +1 -1
- package/dist/src/orgrt/qwen-rpc-runner.js +4 -1
- package/dist/src/orgrt/qwen-rpc-runner.js.map +1 -1
- package/dist/src/orgrt/qwen-runner.d.ts.map +1 -1
- package/dist/src/orgrt/qwen-runner.js +4 -1
- package/dist/src/orgrt/qwen-runner.js.map +1 -1
- package/dist/src/orgrt/runner-registry.d.ts.map +1 -1
- package/dist/src/orgrt/runner-registry.js +7 -1
- package/dist/src/orgrt/runner-registry.js.map +1 -1
- package/dist/src/orgrt/tool-providers.d.ts.map +1 -1
- package/dist/src/orgrt/tool-providers.js +9 -4
- package/dist/src/orgrt/tool-providers.js.map +1 -1
- package/dist/src/platform-adapters/renderers/skills.d.ts +0 -6
- package/dist/src/platform-adapters/renderers/skills.d.ts.map +1 -1
- package/dist/src/platform-adapters/renderers/skills.js +12 -22
- package/dist/src/platform-adapters/renderers/skills.js.map +1 -1
- package/dist/src/ui/dashboard.html +7 -0
- package/dist/src/ui/orgs.html +7 -0
- package/dist/src/ui/routes-monoes.mjs +28 -3
- package/dist/src/ui/server.mjs +160 -14
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -8
|
@@ -18,23 +18,9 @@ Load only the workflow that matches the request:
|
|
|
18
18
|
- `mastermind-memory` for persistent knowledge.
|
|
19
19
|
|
|
20
20
|
**For build/feature work, the gates are mandatory and ordered:** idea → design → plan →
|
|
21
|
-
execute → review.
|
|
22
|
-
`.claude/commands/mastermind-master.md`; consult it before concluding that no workflow applies.
|
|
21
|
+
execute → review.
|
|
23
22
|
|
|
24
23
|
Use Monograph before broad repository search when the platform exposes the
|
|
25
24
|
Monomind MCP server. Without native skills, run
|
|
26
25
|
`monomind mastermind run <skill> --print` and follow the printed procedure.
|
|
27
26
|
Platform tool mappings are in [references/](references/).
|
|
28
|
-
# Mastermind
|
|
29
|
-
|
|
30
|
-
Load only the workflow that matches the current task:
|
|
31
|
-
- `mastermind` — Route a request to the relevant Mastermind workflow.
|
|
32
|
-
- `mastermind-plan` — Write a detailed implementation plan before changing code.
|
|
33
|
-
- `mastermind-review` — Review code, content, strategy, or security work.
|
|
34
|
-
- `mastermind-debug` — Investigate a failure or unexpected behavior before fixing it.
|
|
35
|
-
- `mastermind-research` — Research an open question before making a decision.
|
|
36
|
-
- `mastermind-execute` — Execute a written implementation plan step by step.
|
|
37
|
-
- `mastermind-org` — Create, run, inspect, and manage a Mastermind organization.
|
|
38
|
-
- `mastermind-memory` — Store, retrieve, and maintain persistent organization knowledge.
|
|
39
|
-
|
|
40
|
-
If skills cannot be loaded natively, run `monomind mastermind run <skill> --print`.
|
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<a href="https://www.npmjs.com/package/monomind"><img src="https://img.shields.io/npm/dm/monomind?color=%2310B981&style=flat-square" alt="downloads" /></a>
|
|
16
16
|
<a href="https://github.com/monoes/monomind/stargazers"><img src="https://img.shields.io/github/stars/monoes/monomind?color=%23F59E0B&style=flat-square" alt="stars" /></a>
|
|
17
17
|
<a href="https://github.com/monoes/monomind/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-Apache_2.0-%238B5CF6?style=flat-square" alt="license" /></a>
|
|
18
|
-
<a href="https://nodejs.org/"><img src="https://img.shields.io/badge/node-%3E%
|
|
18
|
+
<a href="https://nodejs.org/"><img src="https://img.shields.io/badge/node-%3E%3D22.12-339933?style=flat-square&logo=node.js&logoColor=white" alt="node >=22.12" /></a>
|
|
19
19
|
</p>
|
|
20
20
|
|
|
21
21
|
<p align="center">
|
|
@@ -96,7 +96,7 @@ Use `monomind init --target codex` (or `--codex`) to initialize only Codex. See
|
|
|
96
96
|
| Concern | Answer |
|
|
97
97
|
|---|---|
|
|
98
98
|
| **License** | [Apache 2.0](LICENSE) — use it however you want |
|
|
99
|
-
| **Data privacy** | Your code and memory store stay local. Monomind does make
|
|
99
|
+
| **Data privacy** | Your code and memory store stay local. Monomind does make a small number of outbound network calls. See [doc/privacy.md](doc/privacy.md) for the complete list of what's sent, when, and how to opt out of each. |
|
|
100
100
|
| **Dependencies** | Standard npm packages (tree-sitter, better-sqlite3, sql.js, zod). tree-sitter and better-sqlite3 are native (prebuilt) Node addons, not pure JS/WASM — sql.js is WASM. No post-install scripts that download code. |
|
|
101
101
|
| **Permissions** | Registers as an MCP server — Claude Code controls what tools are available and prompts you before executing anything sensitive. |
|
|
102
102
|
| **Source** | Fully open. Read every line at [github.com/monoes/monomind](https://github.com/monoes/monomind). |
|
|
@@ -15,7 +15,7 @@ export interface HealthCheck {
|
|
|
15
15
|
fix?: string;
|
|
16
16
|
}
|
|
17
17
|
export declare function runCommand(command: string, timeoutMs?: number): Promise<string>;
|
|
18
|
-
export declare function checkNodeVersion(): Promise<HealthCheck>;
|
|
18
|
+
export declare function checkNodeVersion(version?: string): Promise<HealthCheck>;
|
|
19
19
|
export declare function checkNpmVersion(): Promise<HealthCheck>;
|
|
20
20
|
export declare function checkGit(): Promise<HealthCheck>;
|
|
21
21
|
export declare function checkGitRepo(): Promise<HealthCheck>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-env-checks.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor-env-checks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,eAAO,MAAM,oBAAoB,QAAc,CAAC;AAChD,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AACxD,eAAO,MAAM,0BAA0B,QAAa,CAAC;AACrD,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,uBAAuB,QAAkB,CAAC;AACvD,eAAO,MAAM,+BAA+B,QAAY,CAAC;AAIzD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CASnF;AAED,wBAAsB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"doctor-env-checks.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor-env-checks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,eAAO,MAAM,oBAAoB,QAAc,CAAC;AAChD,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AACxD,eAAO,MAAM,0BAA0B,QAAa,CAAC;AACrD,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,uBAAuB,QAAkB,CAAC;AACvD,eAAO,MAAM,+BAA+B,QAAY,CAAC;AAIzD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CASnF;AAED,wBAAsB,gBAAgB,CAAC,OAAO,GAAE,MAAwB,GAAG,OAAO,CAAC,WAAW,CAAC,CAkC9F;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CAyC5D;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC,CAYrD;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC,CAYzD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CA+B3D;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CA6B5D;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,CAuFlE;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CAa5D;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,CAwBhE;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAY1D"}
|
|
@@ -26,30 +26,40 @@ export async function runCommand(command, timeoutMs = 5000) {
|
|
|
26
26
|
});
|
|
27
27
|
return stdout.trim();
|
|
28
28
|
}
|
|
29
|
-
export async function checkNodeVersion() {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
export async function checkNodeVersion(version = process.version) {
|
|
30
|
+
// i-090: the floor is 22.12.0, not just major 22 — a `major >= requiredMajor`
|
|
31
|
+
// compare would wrongly pass 22.0.0–22.11.x, which is the exact defect this
|
|
32
|
+
// check existed to report elsewhere in the fleet (P0-class: doctor said
|
|
33
|
+
// "pass" while `npm install` under engine-strict=true refused the package).
|
|
34
|
+
const requiredMajor = 22;
|
|
35
|
+
const requiredMinor = 12;
|
|
36
|
+
const requiredMajorMinor = `${requiredMajor}.${requiredMinor}`;
|
|
37
|
+
const requiredLabel = `${requiredMajorMinor}.0`;
|
|
38
|
+
const [major, minor] = version
|
|
39
|
+
.replace(/^v/, '')
|
|
40
|
+
.split('.')
|
|
41
|
+
.map((n) => parseInt(n, 10));
|
|
42
|
+
const meetsFloor = major > requiredMajor || (major === requiredMajor && minor >= requiredMinor);
|
|
43
|
+
if (meetsFloor) {
|
|
34
44
|
return {
|
|
35
45
|
name: 'Node.js Version',
|
|
36
46
|
status: 'pass',
|
|
37
|
-
message: `${version} (>= ${
|
|
47
|
+
message: `${version} (>= ${requiredLabel} required)`,
|
|
38
48
|
};
|
|
39
49
|
}
|
|
40
50
|
else if (major >= 18) {
|
|
41
51
|
return {
|
|
42
52
|
name: 'Node.js Version',
|
|
43
53
|
status: 'warn',
|
|
44
|
-
message: `${version} (>= ${
|
|
45
|
-
fix:
|
|
54
|
+
message: `${version} (>= ${requiredLabel} required)`,
|
|
55
|
+
fix: `nvm install ${requiredMajorMinor} && nvm use ${requiredMajorMinor}`,
|
|
46
56
|
};
|
|
47
57
|
}
|
|
48
58
|
return {
|
|
49
59
|
name: 'Node.js Version',
|
|
50
60
|
status: 'fail',
|
|
51
|
-
message: `${version} (>= ${
|
|
52
|
-
fix:
|
|
61
|
+
message: `${version} (>= ${requiredLabel} required)`,
|
|
62
|
+
fix: `nvm install ${requiredMajorMinor} && nvm use ${requiredMajorMinor}`,
|
|
53
63
|
};
|
|
54
64
|
}
|
|
55
65
|
export async function checkNpmVersion() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-env-checks.js","sourceRoot":"","sources":["../../../src/commands/doctor-env-checks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor-env-checks.js","sourceRoot":"","sources":["../../../src/commands/doctor-env-checks.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* issues discovered while installing them via /monoes:install.
|
|
8
8
|
*/
|
|
9
9
|
import type { HealthCheck } from './doctor-env-checks.js';
|
|
10
|
+
export declare const DASHBOARD_TOKEN_BURNED_NOTICE = "the value must be treated as burned \u2014 the historical blob remains in git history even after this file stops being tracked";
|
|
10
11
|
export declare function checkMonoesTools(): Promise<HealthCheck>;
|
|
11
12
|
/**
|
|
12
13
|
* i-066: verifies the monoes.me OAuth token isn't exposed to git — neither
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-monoes-checks.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor-monoes-checks.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"doctor-monoes-checks.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor-monoes-checks.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAqC1D,eAAO,MAAM,6BAA6B,mIACmF,CAAC;AA6I9H,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,WAAW,CAAC,CAuB7D;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,WAAW,CAAC,CA6IrE;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CA8BvD"}
|
|
@@ -27,6 +27,19 @@ import { runCommand } from './doctor-env-checks.js';
|
|
|
27
27
|
// git tracked/ignored status), so it can never truthfully claim that.
|
|
28
28
|
const REVOKE_LINE = 'Treat this token as compromised: revoke it at https://monoes.me (Settings -> Connected apps). If it reached git history, rewriting the file does not remove it.';
|
|
29
29
|
const DISCONNECT_LINE = 'Run `monomind ui`, then monoes.me -> Disconnect -> Connect.';
|
|
30
|
+
// i-052 commit 3 — a dashboard-token leak is a different credential from
|
|
31
|
+
// the monoes.me OAuth token above (REVOKE_LINE/DISCONNECT_LINE do not
|
|
32
|
+
// apply: there is nothing to revoke at monoes.me and no Disconnect flow
|
|
33
|
+
// for it), and its remedy is different in kind: `.gitignore` does nothing
|
|
34
|
+
// for an already-tracked file, so the only real fix is to untrack it.
|
|
35
|
+
// `DASHBOARD_TOKEN_BURNED_NOTICE` is exported so AC-5 clause (d) can assert
|
|
36
|
+
// by identity against the sentence the user actually sees, not a substring
|
|
37
|
+
// guess at it (i-050's AC-3 amendment pattern, applied here per plan §5b).
|
|
38
|
+
// Deliberately duplicated from mcp/monoes-mcp-entry.mjs's identical
|
|
39
|
+
// constant rather than imported — same "two call sites is not a shared
|
|
40
|
+
// abstraction" convention as hasLegacyMonoesBearerEntry() above.
|
|
41
|
+
export const DASHBOARD_TOKEN_BURNED_NOTICE = 'the value must be treated as burned — the historical blob remains in git history even after this file stops being tracked';
|
|
42
|
+
const DASHBOARD_TOKEN_REMEDIATION_LINE = `Untrack it: git rm --cached .monomind/dashboard-token. Then ${DASHBOARD_TOKEN_BURNED_NOTICE}.`;
|
|
30
43
|
/**
|
|
31
44
|
* True if `.mcp.json`'s raw text contains a literal bearer token, checked
|
|
32
45
|
* at the specific path this item's writers ever wrote one
|
|
@@ -200,12 +213,21 @@ export async function checkMonoesTokenExposure() {
|
|
|
200
213
|
// review finding 13, which caught the previous version of this function
|
|
201
214
|
// doing exactly that).
|
|
202
215
|
let hasConnectionFileIssue = false;
|
|
216
|
+
// i-052 commit 3: whether ANY monoes.me-credential issue fired (the mcp
|
|
217
|
+
// bearer token or the connection file) — distinct from
|
|
218
|
+
// hasDashboardTokenIssue below, because the two exposures are different
|
|
219
|
+
// credentials with different remedies (REVOKE_LINE's "revoke at
|
|
220
|
+
// monoes.me" is simply wrong advice for a dashboard-token leak, which
|
|
221
|
+
// has nothing to do with monoes.me).
|
|
222
|
+
let hasMonoesTokenIssue = false;
|
|
223
|
+
let hasDashboardTokenIssue = false;
|
|
203
224
|
const mcpJsonPath = join(cwd, '.mcp.json');
|
|
204
225
|
if (existsSync(mcpJsonPath)) {
|
|
205
226
|
try {
|
|
206
227
|
const raw = readFileSync(mcpJsonPath, 'utf8');
|
|
207
228
|
if (hasLegacyMonoesBearerEntry(raw)) {
|
|
208
229
|
issues.push('.mcp.json contains a literal bearer token');
|
|
230
|
+
hasMonoesTokenIssue = true;
|
|
209
231
|
}
|
|
210
232
|
}
|
|
211
233
|
catch {
|
|
@@ -214,13 +236,18 @@ export async function checkMonoesTokenExposure() {
|
|
|
214
236
|
}
|
|
215
237
|
const connectionRelPath = '.monomind/monoes-connection.json';
|
|
216
238
|
const connectionPath = join(cwd, connectionRelPath);
|
|
217
|
-
|
|
239
|
+
const dashboardTokenRelPath = '.monomind/dashboard-token';
|
|
240
|
+
const dashboardTokenPath = join(cwd, dashboardTokenRelPath);
|
|
241
|
+
if (existsSync(connectionPath) || existsSync(dashboardTokenPath)) {
|
|
218
242
|
// i-066 reviewer finding 5: outside a git work tree, `git check-ignore`
|
|
219
243
|
// and `git ls-files` both exit non-zero for reasons that have nothing
|
|
220
244
|
// to do with exposure (there is no git to leak through at all) — the
|
|
221
245
|
// old code read that as tracked=false, ignored=false and failed a
|
|
222
246
|
// zero-exposure user in a non-git project. Probe for a real work tree
|
|
223
|
-
// first; if there isn't one,
|
|
247
|
+
// first; if there isn't one, neither check below applies. Computed
|
|
248
|
+
// once and shared: it's the same probe regardless of which file it's
|
|
249
|
+
// gating (i-052 commit 3 reuses it for dashboard-token rather than
|
|
250
|
+
// re-running the same command a second time).
|
|
224
251
|
let insideWorkTree = false;
|
|
225
252
|
try {
|
|
226
253
|
await runCommand('git rev-parse --is-inside-work-tree');
|
|
@@ -230,29 +257,53 @@ export async function checkMonoesTokenExposure() {
|
|
|
230
257
|
insideWorkTree = false;
|
|
231
258
|
}
|
|
232
259
|
if (insideWorkTree) {
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
260
|
+
if (existsSync(connectionPath)) {
|
|
261
|
+
let ignored = false;
|
|
262
|
+
try {
|
|
263
|
+
await runCommand(`git check-ignore "${connectionRelPath}"`);
|
|
264
|
+
ignored = true;
|
|
265
|
+
}
|
|
266
|
+
catch {
|
|
267
|
+
ignored = false;
|
|
268
|
+
}
|
|
269
|
+
let tracked = false;
|
|
270
|
+
try {
|
|
271
|
+
await runCommand(`git ls-files --error-unmatch "${connectionRelPath}"`);
|
|
272
|
+
tracked = true;
|
|
273
|
+
}
|
|
274
|
+
catch {
|
|
275
|
+
tracked = false;
|
|
276
|
+
}
|
|
277
|
+
if (tracked) {
|
|
278
|
+
issues.push(`${connectionRelPath} is tracked by git — treat the token as compromised`);
|
|
279
|
+
hasConnectionFileIssue = true;
|
|
280
|
+
hasMonoesTokenIssue = true;
|
|
281
|
+
}
|
|
282
|
+
else if (!ignored) {
|
|
283
|
+
issues.push(`${connectionRelPath} exists but is not covered by .gitignore`);
|
|
284
|
+
hasConnectionFileIssue = true;
|
|
285
|
+
hasMonoesTokenIssue = true;
|
|
286
|
+
}
|
|
252
287
|
}
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
288
|
+
// i-052 commit 3 — the actual incident's shape: dashboard-token is
|
|
289
|
+
// gitignored by default since commits 1-2, but `.gitignore` does
|
|
290
|
+
// nothing once a path is already tracked. AC-7 (control): a file
|
|
291
|
+
// that exists but is untracked (whether ignored or not — being
|
|
292
|
+
// untracked is what matters here, not the ignore pattern) produces
|
|
293
|
+
// no warning, or this becomes noise that gets ignored.
|
|
294
|
+
if (existsSync(dashboardTokenPath)) {
|
|
295
|
+
let tracked = false;
|
|
296
|
+
try {
|
|
297
|
+
await runCommand(`git ls-files --error-unmatch "${dashboardTokenRelPath}"`);
|
|
298
|
+
tracked = true;
|
|
299
|
+
}
|
|
300
|
+
catch {
|
|
301
|
+
tracked = false;
|
|
302
|
+
}
|
|
303
|
+
if (tracked) {
|
|
304
|
+
issues.push(`${dashboardTokenRelPath} is tracked by git`);
|
|
305
|
+
hasDashboardTokenIssue = true;
|
|
306
|
+
}
|
|
256
307
|
}
|
|
257
308
|
}
|
|
258
309
|
}
|
|
@@ -265,19 +316,30 @@ export async function checkMonoesTokenExposure() {
|
|
|
265
316
|
}
|
|
266
317
|
// Fixed literals only, never interpolated — this message can reach a
|
|
267
318
|
// terminal or CI log, so it must never echo a caught error or a token
|
|
268
|
-
// value.
|
|
269
|
-
//
|
|
270
|
-
//
|
|
271
|
-
//
|
|
272
|
-
//
|
|
273
|
-
//
|
|
274
|
-
//
|
|
275
|
-
//
|
|
276
|
-
|
|
319
|
+
// value. Each remediation line is gated on the exposure it actually
|
|
320
|
+
// applies to (i-052 commit 3: previously REVOKE_LINE was unconditional
|
|
321
|
+
// whenever ANY issue fired — wrong once a dashboard-token-only exposure
|
|
322
|
+
// became possible, since that credential has nothing to do with
|
|
323
|
+
// monoes.me). REVOKE_LINE applies whenever a monoes.me credential issue
|
|
324
|
+
// fired: a literal bearer token in .mcp.json is a real credential
|
|
325
|
+
// exposure independent of whether THIS user ever connected (a
|
|
326
|
+
// teammate's commit, an older install, a pulled branch can all put it
|
|
327
|
+
// there) — a token you didn't create and can't rotate yourself is more
|
|
328
|
+
// urgent to escalate, not less. DISCONNECT_LINE is additive, only when
|
|
329
|
+
// an actual connection file was found and flagged by git — that's the
|
|
330
|
+
// only case where there's a live app connection to disconnect from at
|
|
331
|
+
// all.
|
|
332
|
+
const remediationParts = [];
|
|
333
|
+
if (hasMonoesTokenIssue) {
|
|
334
|
+
remediationParts.push(hasConnectionFileIssue ? `${REVOKE_LINE} ${DISCONNECT_LINE}` : REVOKE_LINE);
|
|
335
|
+
}
|
|
336
|
+
if (hasDashboardTokenIssue) {
|
|
337
|
+
remediationParts.push(DASHBOARD_TOKEN_REMEDIATION_LINE);
|
|
338
|
+
}
|
|
277
339
|
return {
|
|
278
340
|
name: 'monoes Token Exposure',
|
|
279
341
|
status: 'fail',
|
|
280
|
-
message: `${issues.join('; ')}. ${
|
|
342
|
+
message: `${issues.join('; ')}. ${remediationParts.join(' ')}`,
|
|
281
343
|
};
|
|
282
344
|
}
|
|
283
345
|
export async function fixMonoesTools() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-monoes-checks.js","sourceRoot":"","sources":["../../../src/commands/doctor-monoes-checks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"doctor-monoes-checks.js","sourceRoot":"","sources":["../../../src/commands/doctor-monoes-checks.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,25 @@
|
|
|
5
5
|
import type { HealthCheck } from './doctor-env-checks.js';
|
|
6
6
|
export type { HealthCheck };
|
|
7
7
|
export declare function checkConfigFile(): Promise<HealthCheck>;
|
|
8
|
+
/** o-16 (AC-6): the marker walk that resolves "this project" for the Memory
|
|
9
|
+
* & Knowledge store can silently adopt a wrong ancestor — the incident that
|
|
10
|
+
* motivated this check was a shared scratch parent's bare `.monomind`
|
|
11
|
+
* capturing an unrelated fixture, with no visible symptom until a search
|
|
12
|
+
* came back empty. Disclose the resolved root and why it was chosen, so a
|
|
13
|
+
* user can see which directory their brain is keyed to without reading code
|
|
14
|
+
* or debug logs. Always 'info': the resolution itself is never a health
|
|
15
|
+
* problem, only the failure to see it was.
|
|
16
|
+
*
|
|
17
|
+
* Named/scoped to "Memory Project Root", not a bare "Project Root" (o-16
|
|
18
|
+
* revision 1, reviewer MAJOR 2): `MONOMIND_PROJECT_ROOT` has a SECOND,
|
|
19
|
+
* independent consumer — `mcp-tools/guidance-tools.ts:findProjectRoot()`,
|
|
20
|
+
* which uses a different marker (`.claude`) and can legitimately resolve a
|
|
21
|
+
* different directory (see the divergence explained at
|
|
22
|
+
* `memory-bridge.ts`'s `getProjectRoot()` doc comment). A generic "Project
|
|
23
|
+
* Root" label would claim there is one true answer when this commit is
|
|
24
|
+
* what creates a state where two resolvers can disagree — this check must
|
|
25
|
+
* not be the thing that misleads about that. */
|
|
26
|
+
export declare function checkProjectRoot(): Promise<HealthCheck>;
|
|
8
27
|
export declare function checkMemoryDatabase(): Promise<HealthCheck>;
|
|
9
28
|
/** Memory knowledge graph (cognee port): entities/relations/rules distilled
|
|
10
29
|
* from sessions and org runs. Informational — an empty graph on a fresh
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-project-checks.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor-project-checks.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"doctor-project-checks.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor-project-checks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6BH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAS1D,YAAY,EAAE,WAAW,EAAE,CAAC;AAE5B,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CA4B5D;AAED;;;;;;;;;;;;;;;;;iDAiBiD;AACjD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,WAAW,CAAC,CA2B7D;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,CAkBhE;AAED;;2CAE2C;AAC3C,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,WAAW,CAAC,CAqDtE;AAeD;;;wEAGwE;AACxE,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,CAuElE;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC,CAiDzD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CAuC5D;AAwCD,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAe3D;AAmDD,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,WAAW,CAAC,CA4LpE;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CAkB9D;AAyHD,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAkBxD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CAuC9D;AAiFD,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoBnE;AAkDD,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CAqCnE;AA2BD;6EAC6E;AAC7E,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,CA2B7D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC,CA0D/D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoF/D;AAmBD;;;;;GAKG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoDlE;AAED;;GAEG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,WAAW,CAAC,CAwCvE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CA6BnE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,WAAW,CAAC,CAcrE;AAED;;sBAEsB;AACtB,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAyB7D;AAED,6EAA6E;AAC7E,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAW1D;AAiBD;;;;;yDAKyD;AACzD,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAoBtE"}
|
|
@@ -9,6 +9,7 @@ import { homedir } from 'node:os';
|
|
|
9
9
|
import { dirname, join } from 'node:path';
|
|
10
10
|
import { fileURLToPath } from 'node:url';
|
|
11
11
|
import { DOCTOR_TRACKED_HELPERS, OBSOLETE_HELPER_NAMES } from '../init/helpers-generator.js';
|
|
12
|
+
import { MONOMIND_NEVER_COMMIT } from '../init/never-commit.js';
|
|
12
13
|
import { classifyNativeModuleError, extractNativeModulePackageName, } from '../utils/native-error.js';
|
|
13
14
|
import { CONFIG_JSON_CANDIDATE_PATHS, CONFIG_YAML_CANDIDATE_PATHS, MEMORY_DB_CANDIDATE_PATHS, } from '../utils/paths.js';
|
|
14
15
|
import { MAX_DOCTOR_BUILD_LOG_SCAN_BYTES, MAX_DOCTOR_CONFIG_BYTES, MAX_DOCTOR_GITIGNORE_BYTES, MAX_DOCTOR_HELPER_BYTES, MAX_DOCTOR_PKG_BYTES, } from './doctor-env-checks.js';
|
|
@@ -42,6 +43,52 @@ export async function checkConfigFile() {
|
|
|
42
43
|
fix: 'monomind config init',
|
|
43
44
|
};
|
|
44
45
|
}
|
|
46
|
+
/** o-16 (AC-6): the marker walk that resolves "this project" for the Memory
|
|
47
|
+
* & Knowledge store can silently adopt a wrong ancestor — the incident that
|
|
48
|
+
* motivated this check was a shared scratch parent's bare `.monomind`
|
|
49
|
+
* capturing an unrelated fixture, with no visible symptom until a search
|
|
50
|
+
* came back empty. Disclose the resolved root and why it was chosen, so a
|
|
51
|
+
* user can see which directory their brain is keyed to without reading code
|
|
52
|
+
* or debug logs. Always 'info': the resolution itself is never a health
|
|
53
|
+
* problem, only the failure to see it was.
|
|
54
|
+
*
|
|
55
|
+
* Named/scoped to "Memory Project Root", not a bare "Project Root" (o-16
|
|
56
|
+
* revision 1, reviewer MAJOR 2): `MONOMIND_PROJECT_ROOT` has a SECOND,
|
|
57
|
+
* independent consumer — `mcp-tools/guidance-tools.ts:findProjectRoot()`,
|
|
58
|
+
* which uses a different marker (`.claude`) and can legitimately resolve a
|
|
59
|
+
* different directory (see the divergence explained at
|
|
60
|
+
* `memory-bridge.ts`'s `getProjectRoot()` doc comment). A generic "Project
|
|
61
|
+
* Root" label would claim there is one true answer when this commit is
|
|
62
|
+
* what creates a state where two resolvers can disagree — this check must
|
|
63
|
+
* not be the thing that misleads about that. */
|
|
64
|
+
export async function checkProjectRoot() {
|
|
65
|
+
const name = 'Memory Project Root';
|
|
66
|
+
const { getProjectRootResolution } = await import('../memory/memory-bridge.js');
|
|
67
|
+
const { root, reason, ignoredBareMonomind, invalidAnchor } = getProjectRootResolution();
|
|
68
|
+
const reasonText = {
|
|
69
|
+
'explicit-anchor': 'MONOMIND_PROJECT_ROOT anchor',
|
|
70
|
+
git: 'nearest .git ancestor',
|
|
71
|
+
'monomind-at-start': 'starting directory carries .monomind',
|
|
72
|
+
'monomind-with-marker': '.monomind ancestor confirmed by a project manifest',
|
|
73
|
+
'start-fallback': 'no adoptable marker found — using the current directory',
|
|
74
|
+
};
|
|
75
|
+
// o-16 revision 1 (dev-lead Addition 1): the anchor's own disclosure must
|
|
76
|
+
// cover the ambiguous case it exists to resolve — a SET-but-INVALID
|
|
77
|
+
// anchor — not just the happy path, or a typo'd MONOMIND_PROJECT_ROOT
|
|
78
|
+
// silently does nothing and the user has no way to find out why. Appended
|
|
79
|
+
// regardless of which `reason` the walk ultimately fell back to.
|
|
80
|
+
const invalidAnchorNote = invalidAnchor
|
|
81
|
+
? ` [MONOMIND_PROJECT_ROOT="${invalidAnchor.value}" ignored — ${invalidAnchor.problem}]`
|
|
82
|
+
: '';
|
|
83
|
+
if (reason === 'start-fallback' && ignoredBareMonomind) {
|
|
84
|
+
return {
|
|
85
|
+
name,
|
|
86
|
+
status: 'info',
|
|
87
|
+
message: `${root} (${reasonText[reason]}; ignored bare .monomind at ${ignoredBareMonomind} — add a project marker there, or set MONOMIND_PROJECT_ROOT, to adopt it)${invalidAnchorNote}`,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
return { name, status: 'info', message: `${root} (${reasonText[reason]})${invalidAnchorNote}` };
|
|
91
|
+
}
|
|
45
92
|
export async function checkMemoryDatabase() {
|
|
46
93
|
const dbPaths = MEMORY_DB_CANDIDATE_PATHS;
|
|
47
94
|
for (const dbPath of dbPaths) {
|
|
@@ -901,6 +948,12 @@ export async function checkMonoesIntegration() {
|
|
|
901
948
|
};
|
|
902
949
|
}
|
|
903
950
|
}
|
|
951
|
+
// i-052: derived from MONOMIND_NEVER_COMMIT (write-runtime-config.ts), the
|
|
952
|
+
// single source of truth for files that must never be committed — this was
|
|
953
|
+
// the THIRD independently-maintained list that omitted `dashboard-token`,
|
|
954
|
+
// and it is the one written specifically to catch gitignore gaps. Consuming
|
|
955
|
+
// the shared list here means `monomind doctor --fix` (fixGitignoreCoverage
|
|
956
|
+
// below) appends any missing entry for existing users for free.
|
|
904
957
|
const REQUIRED_GITIGNORE_PATTERNS = [
|
|
905
958
|
{ pattern: '.monomind/sessions/', reason: 'session files contain cwd and machine paths' },
|
|
906
959
|
{ pattern: '.monomind/data/', reason: 'intelligence data with edit file paths' },
|
|
@@ -915,6 +968,7 @@ const REQUIRED_GITIGNORE_PATTERNS = [
|
|
|
915
968
|
{ pattern: 'data/mastermind-*.jsonl', reason: 'mastermind event logs' },
|
|
916
969
|
{ pattern: '**/.claude-flow/', reason: 'claude-flow runtime data with paths' },
|
|
917
970
|
{ pattern: '.monomind/monoswarm/', reason: 'monoswarm state files' },
|
|
971
|
+
...MONOMIND_NEVER_COMMIT.map(({ file, reason }) => ({ pattern: `.monomind/${file}`, reason })),
|
|
918
972
|
];
|
|
919
973
|
/** Strip the parts that don't change what a pattern matches, so `**/.monomind/`,
|
|
920
974
|
* `.monomind/` and `.monomind` all compare equal. A gitignore pattern with no
|