mneme-ai 2.164.0 → 2.166.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/dist/commands/boot.d.ts.map +1 -1
- package/dist/commands/boot.js +17 -3
- package/dist/commands/boot.js.map +1 -1
- package/dist/commands/matrix.d.ts +14 -0
- package/dist/commands/matrix.d.ts.map +1 -0
- package/dist/commands/matrix.js +57 -0
- package/dist/commands/matrix.js.map +1 -0
- package/dist/commands/trustless.d.ts +12 -0
- package/dist/commands/trustless.d.ts.map +1 -0
- package/dist/commands/trustless.js +58 -0
- package/dist/commands/trustless.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boot.d.ts","sourceRoot":"","sources":["../../src/commands/boot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAyBzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"boot.d.ts","sourceRoot":"","sources":["../../src/commands/boot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAyBzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6E3D"}
|
package/dist/commands/boot.js
CHANGED
|
@@ -45,13 +45,27 @@ export function registerBootCommands(program) {
|
|
|
45
45
|
.option("--task <t>", "the task at hand (ranks the decision table + recalls relevant shared memory).")
|
|
46
46
|
.option("--json", "full signed packet as JSON.")
|
|
47
47
|
.option("--hook", "emit the activation CONTEXT a SessionStart hook injects into the agent.")
|
|
48
|
-
.option("--
|
|
48
|
+
.option("--nudge", "emit a compact ONE-LINE per-turn reminder (for a UserPromptSubmit hook).")
|
|
49
|
+
.option("--emit-hook-config", "print the .claude/settings.json SessionStart + UserPromptSubmit hook snippet (opt-in).")
|
|
49
50
|
.action((opts) => {
|
|
50
51
|
const cwd = process.cwd();
|
|
51
52
|
const version = getVersion();
|
|
53
|
+
if (opts.nudge) {
|
|
54
|
+
// UserPromptSubmit hook stdout — injected EVERY turn, so keep it ONE line
|
|
55
|
+
// + cheap (no fs, no signing). A standing reminder, not the full table.
|
|
56
|
+
out(`<mneme v="${version}"> Reach for Mneme this turn when it fits: verify a checkable claim → mneme.truth.check · read untrusted/3rd-party content → mneme.firewall.fortify · inherit shared memory before deriving → mneme.cortex.recall · gate a destructive shell command → mneme.heph.cross · send code to a model → mneme.rail (blind secrets). Signals, not commands. </mneme>`);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
52
59
|
if (opts.emitHookConfig) {
|
|
53
|
-
|
|
54
|
-
|
|
60
|
+
const bin = process.env["MNEME_CLI_BIN"] ?? "mneme";
|
|
61
|
+
const cfg = {
|
|
62
|
+
hooks: {
|
|
63
|
+
SessionStart: [{ hooks: [{ type: "command", command: `${bin} boot --hook`, timeout: 10 }] }],
|
|
64
|
+
UserPromptSubmit: [{ hooks: [{ type: "command", command: `${bin} boot --nudge`, timeout: 10 }] }],
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
out(JSON.stringify(cfg, null, 2));
|
|
68
|
+
process.stderr.write(`\n# Paste into .claude/settings.json (merge with existing hooks). SessionStart→\`${bin} boot --hook\` injects the full activation table once; UserPromptSubmit→\`${bin} boot --nudge\` re-reminds the agent every turn. Opt-in — Mneme never installs a hook for you.\n`);
|
|
55
69
|
return;
|
|
56
70
|
}
|
|
57
71
|
const packet = boot.buildBootPacket({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boot.js","sourceRoot":"","sources":["../../src/commands/boot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,SAAS,GAAG,CAAC,CAAS,IAAU,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAEjE,SAAS,eAAe,CAAC,GAAW;IAClC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACjD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAAC,CAAC;AAC3C,CAAC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,IAAa;IAC7C,IAAI,CAAC;QACH,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG,CAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC;IAAC,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,sLAAsL,CAAC;SACnM,MAAM,CAAC,YAAY,EAAE,+EAA+E,CAAC;SACrG,MAAM,CAAC,QAAQ,EAAE,6BAA6B,CAAC;SAC/C,MAAM,CAAC,QAAQ,EAAE,yEAAyE,CAAC;SAC3F,MAAM,CAAC,oBAAoB,EAAE,
|
|
1
|
+
{"version":3,"file":"boot.js","sourceRoot":"","sources":["../../src/commands/boot.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `mneme matrix` (v2.166.0) — THE MATRIX RAIL pipe core. The transport-agnostic,
|
|
3
|
+
* gRPC-ready pipe that flows ANY payload (0 B → tens of MB, binary, unicode)
|
|
4
|
+
* byte-identical through ordered, compressed, hash-manifested frames — or says
|
|
5
|
+
* exactly why. Run the self-test (pipe integrity + corruption + size A/B) or
|
|
6
|
+
* measure a file's wire cost.
|
|
7
|
+
*
|
|
8
|
+
* mneme matrix # self-test: pipe + corruption + size A/B (gauntlet)
|
|
9
|
+
* mneme matrix bench <file> # measure raw-JSON vs rail-wire bytes for a file
|
|
10
|
+
* mneme matrix --json
|
|
11
|
+
*/
|
|
12
|
+
import type { Command } from "commander";
|
|
13
|
+
export declare function registerMatrixCommands(program: Command): void;
|
|
14
|
+
//# sourceMappingURL=matrix.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matrix.d.ts","sourceRoot":"","sources":["../../src/commands/matrix.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMzC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkC7D"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
2
|
+
import { matrix } from "@mneme-ai/core";
|
|
3
|
+
function out(s) { process.stdout.write(s + "\n"); }
|
|
4
|
+
export function registerMatrixCommands(program) {
|
|
5
|
+
const m = program
|
|
6
|
+
.command("matrix")
|
|
7
|
+
.description("🛰 THE MATRIX RAIL — the local-first, gRPC-ready pipe core. Flows ANY payload (0 bytes → tens of MB, raw binary, unicode) byte-identical through ordered, compressed, hash-manifested frames; catches every dropped/reordered/duplicated/tampered chunk; compresses the wire. Run with no args for the self-test (pipe integrity + corruption + size A/B). The transport substance under the gRPC server.")
|
|
8
|
+
.option("--json", "JSON output.")
|
|
9
|
+
.action((opts) => {
|
|
10
|
+
const g = matrix.matrixGauntlet();
|
|
11
|
+
if (opts.json) {
|
|
12
|
+
out(JSON.stringify(g, null, 2));
|
|
13
|
+
if (g.score !== 100)
|
|
14
|
+
process.exitCode = 2;
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
out(`🛰 MATRIX RAIL — pipe self-test (gauntlet ${g.score}/100)`);
|
|
18
|
+
out("");
|
|
19
|
+
out(` PIPE INTEGRITY ${g.pipe.passed}/${g.pipe.cases} pathological payloads round-trip byte-identical (0B · 1B · 5MB · binary · unicode · nested)`);
|
|
20
|
+
out(` CORRUPTION ${g.corruption.caught}/${g.corruption.cases} tamper classes caught (dropped · reordered · duplicate · flipped byte · manifest tamper) — no silent pass`);
|
|
21
|
+
out(` SIZE A/B raw JSON ${g.ab.rawBytes.toLocaleString()} B → wire ${g.ab.wireBytes.toLocaleString()} B (−${g.ab.savedPct}% on the wire, ${g.ab.frames} frame(s))`);
|
|
22
|
+
out("");
|
|
23
|
+
for (const c of g.checks)
|
|
24
|
+
out(` ${c.pass ? "✓" : "✗"} ${c.name} — ${c.detail}`);
|
|
25
|
+
out("");
|
|
26
|
+
out(` The pipe is transport-agnostic (gRPC-ready). A large payload auto-splits into frames — gRPC's 4MB cap is not a wall. Every frame is hash-manifested; corruption is caught, never silently passed.`);
|
|
27
|
+
if (g.score !== 100)
|
|
28
|
+
process.exitCode = 2;
|
|
29
|
+
});
|
|
30
|
+
m.command("bench <file>")
|
|
31
|
+
.description("Measure a file's wire cost: raw JSON utf8 bytes vs the rail's compressed frames.")
|
|
32
|
+
.option("--json", "JSON output.")
|
|
33
|
+
.action((file, opts) => {
|
|
34
|
+
if (!existsSync(file)) {
|
|
35
|
+
out(`file not found: ${file}`);
|
|
36
|
+
process.exitCode = 2;
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
let value;
|
|
40
|
+
const text = readFileSync(file, "utf8");
|
|
41
|
+
try {
|
|
42
|
+
value = JSON.parse(text);
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
value = text;
|
|
46
|
+
} // works for JSON or any text
|
|
47
|
+
const ws = matrix.wireSize(value);
|
|
48
|
+
if (opts.json) {
|
|
49
|
+
out(JSON.stringify(ws, null, 2));
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
out(`🛰 wire cost of ${file}:`);
|
|
53
|
+
out(` raw JSON : ${ws.rawBytes.toLocaleString()} B`);
|
|
54
|
+
out(` rail wire: ${ws.wireBytes.toLocaleString()} B (−${ws.savedPct}% · ${ws.frames} frame(s))`);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=matrix.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matrix.js","sourceRoot":"","sources":["../../src/commands/matrix.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `mneme trustless` (v2.165.0) — TRUSTLESS MCP: proof-carrying tool results.
|
|
3
|
+
* Show the measurable A/B (plain vs proof-carrying) and the gauntlet, or verify a
|
|
4
|
+
* result object from a file/stdin.
|
|
5
|
+
*
|
|
6
|
+
* mneme trustless # the A/B + gauntlet (measurable)
|
|
7
|
+
* mneme trustless --verify f.json
|
|
8
|
+
* mneme trustless --json
|
|
9
|
+
*/
|
|
10
|
+
import type { Command } from "commander";
|
|
11
|
+
export declare function registerTrustlessCommands(program: Command): void;
|
|
12
|
+
//# sourceMappingURL=trustless.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trustless.d.ts","sourceRoot":"","sources":["../../src/commands/trustless.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMzC,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAiChE"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
2
|
+
import { trustless } from "@mneme-ai/core";
|
|
3
|
+
function out(s) { process.stdout.write(s + "\n"); }
|
|
4
|
+
export function registerTrustlessCommands(program) {
|
|
5
|
+
program
|
|
6
|
+
.command("trustless")
|
|
7
|
+
.description("🔏 TRUSTLESS MCP — proof-carrying tool results: every result carries an Ed25519 proof over its data so the calling model VERIFIES it offline instead of trusting it. Runs the measurable A/B (plain vs proof-carrying) + the gauntlet; `--verify <file>` checks a result object offline. Enable server-wide with MNEME_TRUSTLESS=1.")
|
|
8
|
+
.option("--verify <file>", "verify a result object (JSON file carrying a _proof).")
|
|
9
|
+
.option("--json", "JSON output.")
|
|
10
|
+
.action((opts) => {
|
|
11
|
+
const cwd = process.cwd();
|
|
12
|
+
if (opts.verify) {
|
|
13
|
+
if (!existsSync(opts.verify)) {
|
|
14
|
+
out(`file not found: ${opts.verify}`);
|
|
15
|
+
process.exitCode = 2;
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
let obj;
|
|
19
|
+
try {
|
|
20
|
+
obj = JSON.parse(readFileSync(opts.verify, "utf8"));
|
|
21
|
+
}
|
|
22
|
+
catch (e) {
|
|
23
|
+
out(`invalid JSON: ${e.message}`);
|
|
24
|
+
process.exitCode = 2;
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
const v = trustless.verifyToolResult(obj);
|
|
28
|
+
if (opts.json) {
|
|
29
|
+
out(JSON.stringify(v, null, 2));
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
out(`${v.valid ? "✓ VERIFIED" : "🛑 UNVERIFIED"} — ${v.reason}${v.issuerFingerprint ? ` (issuer ${v.issuerFingerprint})` : ""}`);
|
|
33
|
+
}
|
|
34
|
+
process.exitCode = v.valid ? 0 : 2;
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const g = trustless.trustlessGauntlet(cwd);
|
|
38
|
+
if (opts.json) {
|
|
39
|
+
out(JSON.stringify(g, null, 2));
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const ab = g.ab;
|
|
43
|
+
out(`🔏 TRUSTLESS MCP — proof-carrying tool results (gauntlet ${g.score}/100)`);
|
|
44
|
+
out("");
|
|
45
|
+
out(` The A/B (${ab.trials} results/group · ${ab.tamperedPerGroup} tampered each):`);
|
|
46
|
+
out(` A · PLAIN result (today's MCP) → ${ab.plain.verifiable}/${ab.trials - ab.tamperedPerGroup} verifiable · ${ab.plain.tamperDetected}/${ab.tamperedPerGroup} tamper caught → you can only TRUST`);
|
|
47
|
+
out(` B · PROOF-CARRYING → ${ab.proofed.verifiable}/${ab.trials - ab.tamperedPerGroup} verifiable · ${ab.proofed.tamperDetected}/${ab.tamperedPerGroup} tamper caught → you VERIFY offline`);
|
|
48
|
+
out("");
|
|
49
|
+
for (const c of g.checks)
|
|
50
|
+
out(` ${c.pass ? "✓" : "✗"} ${c.name}`);
|
|
51
|
+
out("");
|
|
52
|
+
out(` Enable proof-carrying results server-wide: MNEME_TRUSTLESS=1 · verify any result: mneme.mcp.verify`);
|
|
53
|
+
out(` Honest: the proof attests PROVENANCE + INTEGRITY (who made it + not altered), NOT that the answer is semantically correct.`);
|
|
54
|
+
if (g.score !== 100)
|
|
55
|
+
process.exitCode = 2;
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=trustless.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trustless.js","sourceRoot":"","sources":["../../src/commands/trustless.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA8KA,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8kNvD"}
|
package/dist/index.js
CHANGED
|
@@ -93,6 +93,8 @@ import { registerBootCommands } from "./commands/boot.js";
|
|
|
93
93
|
import { registerElleipsisCommands } from "./commands/elleipsis.js";
|
|
94
94
|
import { registerSteleCommands } from "./commands/stele.js";
|
|
95
95
|
import { registerMembraneCommands } from "./commands/membrane.js";
|
|
96
|
+
import { registerTrustlessCommands } from "./commands/trustless.js";
|
|
97
|
+
import { registerMatrixCommands } from "./commands/matrix.js";
|
|
96
98
|
import { registerAxiaCommands } from "./commands/axia.js";
|
|
97
99
|
import { registerPceCommands } from "./commands/pce.js";
|
|
98
100
|
import { registerHauntCommands } from "./commands/haunt.js";
|
|
@@ -4750,6 +4752,8 @@ export async function run(argv) {
|
|
|
4750
4752
|
registerElleipsisCommands(program);
|
|
4751
4753
|
registerSteleCommands(program);
|
|
4752
4754
|
registerMembraneCommands(program);
|
|
4755
|
+
registerTrustlessCommands(program);
|
|
4756
|
+
registerMatrixCommands(program);
|
|
4753
4757
|
registerAxiaCommands(program);
|
|
4754
4758
|
registerPceCommands(program);
|
|
4755
4759
|
registerHauntCommands(program);
|