mneme-ai 0.8.3
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/README.md +45 -0
- package/bin/mneme.js +2 -0
- package/dist/commands/adapt.d.ts +6 -0
- package/dist/commands/adapt.d.ts.map +1 -0
- package/dist/commands/adapt.js +219 -0
- package/dist/commands/adapt.js.map +1 -0
- package/dist/commands/ask.d.ts +8 -0
- package/dist/commands/ask.d.ts.map +1 -0
- package/dist/commands/ask.js +76 -0
- package/dist/commands/ask.js.map +1 -0
- package/dist/commands/blast.d.ts +8 -0
- package/dist/commands/blast.d.ts.map +1 -0
- package/dist/commands/blast.js +132 -0
- package/dist/commands/blast.js.map +1 -0
- package/dist/commands/clones.d.ts +19 -0
- package/dist/commands/clones.d.ts.map +1 -0
- package/dist/commands/clones.js +155 -0
- package/dist/commands/clones.js.map +1 -0
- package/dist/commands/conscience.d.ts +15 -0
- package/dist/commands/conscience.d.ts.map +1 -0
- package/dist/commands/conscience.js +202 -0
- package/dist/commands/conscience.js.map +1 -0
- package/dist/commands/correlate.d.ts +18 -0
- package/dist/commands/correlate.d.ts.map +1 -0
- package/dist/commands/correlate.js +173 -0
- package/dist/commands/correlate.js.map +1 -0
- package/dist/commands/echo.d.ts +16 -0
- package/dist/commands/echo.d.ts.map +1 -0
- package/dist/commands/echo.js +175 -0
- package/dist/commands/echo.js.map +1 -0
- package/dist/commands/genius.d.ts +13 -0
- package/dist/commands/genius.d.ts.map +1 -0
- package/dist/commands/genius.js +213 -0
- package/dist/commands/genius.js.map +1 -0
- package/dist/commands/heal.d.ts +22 -0
- package/dist/commands/heal.d.ts.map +1 -0
- package/dist/commands/heal.js +160 -0
- package/dist/commands/heal.js.map +1 -0
- package/dist/commands/index-cmd.d.ts +9 -0
- package/dist/commands/index-cmd.d.ts.map +1 -0
- package/dist/commands/index-cmd.js +74 -0
- package/dist/commands/index-cmd.js.map +1 -0
- package/dist/commands/init.d.ts +6 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +34 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/mcp.d.ts +4 -0
- package/dist/commands/mcp.d.ts.map +1 -0
- package/dist/commands/mcp.js +10 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/palimpsest.d.ts +22 -0
- package/dist/commands/palimpsest.d.ts.map +1 -0
- package/dist/commands/palimpsest.js +164 -0
- package/dist/commands/palimpsest.js.map +1 -0
- package/dist/commands/status.d.ts +4 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +49 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/teach.d.ts +16 -0
- package/dist/commands/teach.d.ts.map +1 -0
- package/dist/commands/teach.js +237 -0
- package/dist/commands/teach.js.map +1 -0
- package/dist/commands/teach.test.d.ts +2 -0
- package/dist/commands/teach.test.d.ts.map +1 -0
- package/dist/commands/teach.test.js +44 -0
- package/dist/commands/teach.test.js.map +1 -0
- package/dist/commands/why.d.ts +12 -0
- package/dist/commands/why.d.ts.map +1 -0
- package/dist/commands/why.js +85 -0
- package/dist/commands/why.js.map +1 -0
- package/dist/commands/wild-features.d.ts +42 -0
- package/dist/commands/wild-features.d.ts.map +1 -0
- package/dist/commands/wild-features.js +483 -0
- package/dist/commands/wild-features.js.map +1 -0
- package/dist/commands/wild-stubs.d.ts +6 -0
- package/dist/commands/wild-stubs.d.ts.map +1 -0
- package/dist/commands/wild-stubs.js +112 -0
- package/dist/commands/wild-stubs.js.map +1 -0
- package/dist/commands/wisdom.d.ts +13 -0
- package/dist/commands/wisdom.d.ts.map +1 -0
- package/dist/commands/wisdom.js +94 -0
- package/dist/commands/wisdom.js.map +1 -0
- package/dist/config.d.ts +26 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +28 -0
- package/dist/config.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +371 -0
- package/dist/index.js.map +1 -0
- package/dist/meditations.d.ts +24 -0
- package/dist/meditations.d.ts.map +1 -0
- package/dist/meditations.js +120 -0
- package/dist/meditations.js.map +1 -0
- package/dist/meditations.test.d.ts +2 -0
- package/dist/meditations.test.d.ts.map +1 -0
- package/dist/meditations.test.js +70 -0
- package/dist/meditations.test.js.map +1 -0
- package/dist/paths.d.ts +7 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +14 -0
- package/dist/paths.js.map +1 -0
- package/dist/ui.d.ts +12 -0
- package/dist/ui.d.ts.map +1 -0
- package/dist/ui.js +30 -0
- package/dist/ui.js.map +1 -0
- package/package.json +46 -0
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import kleur from "kleur";
|
|
2
|
+
import { ui } from "../ui.js";
|
|
3
|
+
import { MEDITATIONS, meditationByIndex, meditationOfTheDay, } from "../meditations.js";
|
|
4
|
+
export async function wisdomCommand(opts) {
|
|
5
|
+
if (opts.all) {
|
|
6
|
+
if (opts.json) {
|
|
7
|
+
process.stdout.write(JSON.stringify(MEDITATIONS, null, 2) + "\n");
|
|
8
|
+
return 0;
|
|
9
|
+
}
|
|
10
|
+
for (let i = 0; i < MEDITATIONS.length; i++) {
|
|
11
|
+
printMeditation(MEDITATIONS[i], i + 1);
|
|
12
|
+
process.stdout.write("\n");
|
|
13
|
+
}
|
|
14
|
+
return 0;
|
|
15
|
+
}
|
|
16
|
+
let chosen;
|
|
17
|
+
if (opts.index !== undefined) {
|
|
18
|
+
const m = meditationByIndex(opts.index);
|
|
19
|
+
if (!m) {
|
|
20
|
+
ui.error(`No meditation #${opts.index}. Range is 1..${MEDITATIONS.length}.`);
|
|
21
|
+
return 1;
|
|
22
|
+
}
|
|
23
|
+
chosen = m;
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
chosen = meditationOfTheDay();
|
|
27
|
+
}
|
|
28
|
+
if (opts.json) {
|
|
29
|
+
process.stdout.write(JSON.stringify(chosen, null, 2) + "\n");
|
|
30
|
+
return 0;
|
|
31
|
+
}
|
|
32
|
+
const idx = MEDITATIONS.findIndex((m) => m.id === chosen.id) + 1;
|
|
33
|
+
printMeditation(chosen, idx);
|
|
34
|
+
process.stdout.write("\n" +
|
|
35
|
+
kleur.gray(` see also: mneme wisdom --all · mneme wisdom -n <1..${MEDITATIONS.length}> · mneme manifesto`) +
|
|
36
|
+
"\n");
|
|
37
|
+
return 0;
|
|
38
|
+
}
|
|
39
|
+
function printMeditation(m, n) {
|
|
40
|
+
const total = MEDITATIONS.length;
|
|
41
|
+
const lines = [];
|
|
42
|
+
lines.push("");
|
|
43
|
+
lines.push(kleur.magenta(" ╭───────────────────────────────────────────╮"));
|
|
44
|
+
lines.push(kleur.magenta(" │ ") +
|
|
45
|
+
kleur.gray(`meditation ${n} of ${total}`).padEnd(50, " ") +
|
|
46
|
+
kleur.magenta("│"));
|
|
47
|
+
lines.push(kleur.magenta(" ╰───────────────────────────────────────────╯"));
|
|
48
|
+
lines.push("");
|
|
49
|
+
lines.push(kleur.bold().cyan(` ${m.title}`));
|
|
50
|
+
lines.push("");
|
|
51
|
+
for (const para of m.body.split("\n")) {
|
|
52
|
+
lines.push(` ${kleur.white(wrap(para, 68, " "))}`);
|
|
53
|
+
}
|
|
54
|
+
lines.push("");
|
|
55
|
+
lines.push(kleur.italic().yellow(` — ${m.aphorism}`));
|
|
56
|
+
process.stdout.write(lines.join("\n") + "\n");
|
|
57
|
+
}
|
|
58
|
+
function wrap(s, width, indent) {
|
|
59
|
+
if (s.length <= width)
|
|
60
|
+
return s;
|
|
61
|
+
const words = s.split(" ");
|
|
62
|
+
const out = [];
|
|
63
|
+
let line = "";
|
|
64
|
+
for (const w of words) {
|
|
65
|
+
if ((line + " " + w).trimStart().length > width) {
|
|
66
|
+
out.push(line.trimStart());
|
|
67
|
+
line = indent + w;
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
line += (line ? " " : "") + w;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (line.trim())
|
|
74
|
+
out.push(line.trimStart());
|
|
75
|
+
return out.join("\n ");
|
|
76
|
+
}
|
|
77
|
+
export async function manifestoCommand(opts) {
|
|
78
|
+
if (opts.json) {
|
|
79
|
+
process.stdout.write(JSON.stringify({ meditations: MEDITATIONS }, null, 2) + "\n");
|
|
80
|
+
return 0;
|
|
81
|
+
}
|
|
82
|
+
ui.banner();
|
|
83
|
+
process.stdout.write(kleur.bold().cyan(" Mneme — A Manifesto in Meditations") + "\n");
|
|
84
|
+
process.stdout.write(kleur.gray(" μνήμη was the Greek personification of memory, mother of the muses.\n" +
|
|
85
|
+
" These are the principles that shape the tool that bears her name.\n") + "\n");
|
|
86
|
+
for (let i = 0; i < MEDITATIONS.length; i++) {
|
|
87
|
+
printMeditation(MEDITATIONS[i], i + 1);
|
|
88
|
+
process.stdout.write("\n");
|
|
89
|
+
}
|
|
90
|
+
process.stdout.write(kleur.gray(" ──\n") +
|
|
91
|
+
kleur.italic().gray(" Read more in MEDITATIONS.md, or ask a single one with `mneme wisdom`.\n"));
|
|
92
|
+
return 0;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=wisdom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wisdom.js","sourceRoot":"","sources":["../../src/commands/wisdom.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface MnemeConfig {
|
|
2
|
+
schemaVersion: number;
|
|
3
|
+
embeddings: {
|
|
4
|
+
provider: "auto" | "ollama" | "openai" | "hash";
|
|
5
|
+
model?: string;
|
|
6
|
+
baseUrl?: string;
|
|
7
|
+
};
|
|
8
|
+
index: {
|
|
9
|
+
since?: string;
|
|
10
|
+
maxCount?: number;
|
|
11
|
+
};
|
|
12
|
+
incidents?: {
|
|
13
|
+
sentry?: {
|
|
14
|
+
orgSlug: string;
|
|
15
|
+
projectId: string;
|
|
16
|
+
};
|
|
17
|
+
datadog?: {
|
|
18
|
+
site: string;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
webPort?: number;
|
|
22
|
+
}
|
|
23
|
+
export declare const DEFAULT_CONFIG: MnemeConfig;
|
|
24
|
+
export declare function readConfig(repoRoot: string): MnemeConfig;
|
|
25
|
+
export declare function writeConfig(repoRoot: string, cfg: MnemeConfig): void;
|
|
26
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE;QACV,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;QAChD,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,SAAS,CAAC,EAAE;QACV,MAAM,CAAC,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC;QAChD,OAAO,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KAC5B,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,cAAc,EAAE,WAK5B,CAAC;AAEF,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CASxD;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,CAKpE"}
|
package/dist/config.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { existsSync, readFileSync, writeFileSync, mkdirSync } from "node:fs";
|
|
2
|
+
import { dirname } from "node:path";
|
|
3
|
+
import { configPath, mnemeDir } from "./paths.js";
|
|
4
|
+
export const DEFAULT_CONFIG = {
|
|
5
|
+
schemaVersion: 1,
|
|
6
|
+
embeddings: { provider: "auto" },
|
|
7
|
+
index: { maxCount: 5000 },
|
|
8
|
+
webPort: 4711,
|
|
9
|
+
};
|
|
10
|
+
export function readConfig(repoRoot) {
|
|
11
|
+
const path = configPath(repoRoot);
|
|
12
|
+
if (!existsSync(path))
|
|
13
|
+
return DEFAULT_CONFIG;
|
|
14
|
+
try {
|
|
15
|
+
const raw = readFileSync(path, "utf8");
|
|
16
|
+
return { ...DEFAULT_CONFIG, ...JSON.parse(raw) };
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return DEFAULT_CONFIG;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export function writeConfig(repoRoot, cfg) {
|
|
23
|
+
const path = configPath(repoRoot);
|
|
24
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
25
|
+
mkdirSync(mnemeDir(repoRoot), { recursive: true });
|
|
26
|
+
writeFileSync(path, JSON.stringify(cfg, null, 2), "utf8");
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAoBlD,MAAM,CAAC,MAAM,cAAc,GAAgB;IACzC,aAAa,EAAE,CAAC;IAChB,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;IAChC,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IACzB,OAAO,EAAE,IAAI;CACd,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,QAAgB;IACzC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,cAAc,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACvC,OAAO,EAAE,GAAG,cAAc,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,cAAc,CAAC;IACxB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAgB,EAAE,GAAgB;IAC5D,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAiCA,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyZvD"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { initCommand } from "./commands/init.js";
|
|
3
|
+
import { indexCommand } from "./commands/index-cmd.js";
|
|
4
|
+
import { askCommand } from "./commands/ask.js";
|
|
5
|
+
import { whyCommand } from "./commands/why.js";
|
|
6
|
+
import { statusCommand } from "./commands/status.js";
|
|
7
|
+
import { correlateCommand } from "./commands/correlate.js";
|
|
8
|
+
import { mcpCommand } from "./commands/mcp.js";
|
|
9
|
+
import { wisdomCommand, manifestoCommand } from "./commands/wisdom.js";
|
|
10
|
+
import { entitiesCommand, clonesCommand } from "./commands/clones.js";
|
|
11
|
+
import { healCommand } from "./commands/heal.js";
|
|
12
|
+
import { echoCommand } from "./commands/echo.js";
|
|
13
|
+
import { palimpsestCommand } from "./commands/palimpsest.js";
|
|
14
|
+
import { runawayCommand, mirrorCommand, rumorCommand, fossilCommand, ledgerCommand, } from "./commands/wild-features.js";
|
|
15
|
+
import { oracleCommand, genomeCommand, dialogueCommand, tributeCommand, } from "./commands/wild-stubs.js";
|
|
16
|
+
import { conscienceCommand } from "./commands/conscience.js";
|
|
17
|
+
import { teachCommand } from "./commands/teach.js";
|
|
18
|
+
import { blastCommand } from "./commands/blast.js";
|
|
19
|
+
import { adaptCommand } from "./commands/adapt.js";
|
|
20
|
+
import { geniusCommand } from "./commands/genius.js";
|
|
21
|
+
import { ui } from "./ui.js";
|
|
22
|
+
export async function run(argv) {
|
|
23
|
+
const program = new Command()
|
|
24
|
+
.name("mneme")
|
|
25
|
+
.description("μνήμη — the memory layer of your codebase. Knows the WHY, the WHAT, the WHERE-IT-BREAKS.")
|
|
26
|
+
.version("0.8.3");
|
|
27
|
+
program
|
|
28
|
+
.command("init")
|
|
29
|
+
.description("Initialize Mneme in the current repo")
|
|
30
|
+
.option("--force", "overwrite existing config", false)
|
|
31
|
+
.action(async (opts) => {
|
|
32
|
+
process.exit(await initCommand({ cwd: process.cwd(), force: opts.force }));
|
|
33
|
+
});
|
|
34
|
+
program
|
|
35
|
+
.command("index")
|
|
36
|
+
.description("Index commits, PRs, and embeddings")
|
|
37
|
+
.option("--since <date>", "only index commits since this date (e.g. 2024-01-01)")
|
|
38
|
+
.option("--max <n>", "maximum number of commits", (v) => Number(v))
|
|
39
|
+
.option("--embedder <kind>", "auto | ollama | openai | hash", "auto")
|
|
40
|
+
.option("--model <name>", "embedding model name override")
|
|
41
|
+
.action(async (opts) => {
|
|
42
|
+
process.exit(await indexCommand({
|
|
43
|
+
cwd: process.cwd(),
|
|
44
|
+
since: opts.since,
|
|
45
|
+
maxCount: opts.max,
|
|
46
|
+
embedder: opts.embedder,
|
|
47
|
+
model: opts.model,
|
|
48
|
+
}));
|
|
49
|
+
});
|
|
50
|
+
program
|
|
51
|
+
.command("ask <question...>")
|
|
52
|
+
.description("Ask the memory: \"why does payment.ts use try/catch?\"")
|
|
53
|
+
.option("-k, --top-k <n>", "number of results", (v) => Number(v), 8)
|
|
54
|
+
.option("--json", "machine-readable JSON output", false)
|
|
55
|
+
.action(async (qParts, opts) => {
|
|
56
|
+
process.exit(await askCommand({
|
|
57
|
+
cwd: process.cwd(),
|
|
58
|
+
question: qParts.join(" "),
|
|
59
|
+
topK: opts.topK,
|
|
60
|
+
json: opts.json,
|
|
61
|
+
}));
|
|
62
|
+
});
|
|
63
|
+
program
|
|
64
|
+
.command("why <target>")
|
|
65
|
+
.description("Why does this exist? Pass file:line, file:start-end, or just file")
|
|
66
|
+
.option("-k, --top-k <n>", "related commits to fetch", (v) => Number(v), 5)
|
|
67
|
+
.action(async (target, opts) => {
|
|
68
|
+
process.exit(await whyCommand({ cwd: process.cwd(), target, topK: opts.topK }));
|
|
69
|
+
});
|
|
70
|
+
program
|
|
71
|
+
.command("status")
|
|
72
|
+
.description("Show memory + repo status")
|
|
73
|
+
.action(async () => {
|
|
74
|
+
process.exit(await statusCommand({ cwd: process.cwd() }));
|
|
75
|
+
});
|
|
76
|
+
program
|
|
77
|
+
.command("correlate")
|
|
78
|
+
.description("Correlate incidents with commits (pager / manual JSON)")
|
|
79
|
+
.option("--source <kind>", "incident source: pager | manual")
|
|
80
|
+
.option("--org <slug>", "org slug (with --source pager)")
|
|
81
|
+
.option("--project <slug>", "project slug (with --source pager)")
|
|
82
|
+
.option("--base-url <url>", "base URL for self-hosted observability")
|
|
83
|
+
.option("--file <path>", "JSON file path (with --source manual)")
|
|
84
|
+
.option("--since <iso>", "only incidents/commits since this date")
|
|
85
|
+
.option("--until <iso>", "only incidents/commits until this date")
|
|
86
|
+
.option("--window-days <n>", "correlation window in days", (v) => Number(v), 7)
|
|
87
|
+
.option("--threshold <n>", "minimum confidence (0..1)", (v) => Number(v), 0.3)
|
|
88
|
+
.option("--top <n>", "top-N rows", (v) => Number(v), 20)
|
|
89
|
+
.option("--json", "machine-readable output", false)
|
|
90
|
+
.action(async (opts) => {
|
|
91
|
+
process.exit(await correlateCommand({
|
|
92
|
+
cwd: process.cwd(),
|
|
93
|
+
source: opts.source,
|
|
94
|
+
org: opts.org,
|
|
95
|
+
project: opts.project,
|
|
96
|
+
baseUrl: opts.baseUrl,
|
|
97
|
+
file: opts.file,
|
|
98
|
+
since: opts.since,
|
|
99
|
+
until: opts.until,
|
|
100
|
+
windowDays: opts.windowDays,
|
|
101
|
+
threshold: opts.threshold,
|
|
102
|
+
topN: opts.top,
|
|
103
|
+
json: opts.json,
|
|
104
|
+
}));
|
|
105
|
+
});
|
|
106
|
+
program
|
|
107
|
+
.command("mcp")
|
|
108
|
+
.description("Run as an MCP server (for Claude Code, Cursor, Continue, etc.)")
|
|
109
|
+
.action(async () => {
|
|
110
|
+
process.exit(await mcpCommand({ cwd: process.cwd() }));
|
|
111
|
+
});
|
|
112
|
+
program
|
|
113
|
+
.command("entities")
|
|
114
|
+
.description("Phase 2 — parse and embed every function/class/type in tracked TS/JS files")
|
|
115
|
+
.action(async () => {
|
|
116
|
+
process.exit(await entitiesCommand({ cwd: process.cwd() }));
|
|
117
|
+
});
|
|
118
|
+
program
|
|
119
|
+
.command("clones")
|
|
120
|
+
.description("Phase 2 — find semantic clones (functions doing the same thing)")
|
|
121
|
+
.option("-t, --threshold <n>", "cosine threshold (0..1), default 0.85", (v) => Number(v))
|
|
122
|
+
.option("-N, --top <n>", "show top-N clusters, default 20", (v) => Number(v), 20)
|
|
123
|
+
.option("--json", "machine-readable JSON output", false)
|
|
124
|
+
.action(async (opts) => {
|
|
125
|
+
process.exit(await clonesCommand({
|
|
126
|
+
cwd: process.cwd(),
|
|
127
|
+
threshold: opts.threshold,
|
|
128
|
+
topN: opts.top,
|
|
129
|
+
json: opts.json,
|
|
130
|
+
}));
|
|
131
|
+
});
|
|
132
|
+
program
|
|
133
|
+
.command("heal")
|
|
134
|
+
.description("Synthesize WHY notes for commits with poor messages (turns bad history into searchable memory)")
|
|
135
|
+
.option("--max <n>", "max commits to heal in this run", (v) => Number(v), 100)
|
|
136
|
+
.option("--subject-min-len <n>", "subjects shorter than this are candidates", (v) => Number(v), 20)
|
|
137
|
+
.option("--dry-run", "list candidates without calling the LLM", false)
|
|
138
|
+
.option("--provider <kind>", "auto | ollama | openai", "auto")
|
|
139
|
+
.option("--model <name>", "override model name (e.g. llama3.2:1b, gpt-4o-mini)")
|
|
140
|
+
.option("--force", "re-heal commits that already have a synthesized note", false)
|
|
141
|
+
.action(async (opts) => {
|
|
142
|
+
process.exit(await healCommand({
|
|
143
|
+
cwd: process.cwd(),
|
|
144
|
+
max: opts.max,
|
|
145
|
+
subjectMinLen: opts.subjectMinLen,
|
|
146
|
+
dryRun: opts.dryRun,
|
|
147
|
+
provider: opts.provider,
|
|
148
|
+
model: opts.model,
|
|
149
|
+
force: opts.force,
|
|
150
|
+
}));
|
|
151
|
+
});
|
|
152
|
+
program
|
|
153
|
+
.command("wisdom")
|
|
154
|
+
.description("Print a meditation from the Mneme manifesto (rotates daily)")
|
|
155
|
+
.option("-n, --num <n>", "show a specific meditation by number (1..13)", (v) => Number(v))
|
|
156
|
+
.option("--all", "print every meditation", false)
|
|
157
|
+
.option("--json", "machine-readable JSON output", false)
|
|
158
|
+
.action(async (opts) => {
|
|
159
|
+
process.exit(await wisdomCommand({ index: opts.num, all: opts.all, json: opts.json }));
|
|
160
|
+
});
|
|
161
|
+
program
|
|
162
|
+
.command("manifesto")
|
|
163
|
+
.description("Print the full Mneme manifesto — every meditation, in order")
|
|
164
|
+
.option("--json", "machine-readable JSON output", false)
|
|
165
|
+
.action(async (opts) => {
|
|
166
|
+
process.exit(await manifestoCommand(opts));
|
|
167
|
+
});
|
|
168
|
+
// ─── WILD ideas — see WILD_IDEAS.md ───
|
|
169
|
+
program
|
|
170
|
+
.command("echo")
|
|
171
|
+
.description("WILD #2 — find past incidents that resemble the current one")
|
|
172
|
+
.option("--id <id>", "stored incident id (e.g. \"sentry:12345\")")
|
|
173
|
+
.option("--query <text>", "freeform incident description")
|
|
174
|
+
.option("--top <n>", "top-N most similar", (v) => Number(v), 5)
|
|
175
|
+
.option("--json", "machine-readable output", false)
|
|
176
|
+
.action(async (opts) => {
|
|
177
|
+
process.exit(await echoCommand({
|
|
178
|
+
cwd: process.cwd(),
|
|
179
|
+
id: opts.id,
|
|
180
|
+
query: opts.query,
|
|
181
|
+
topK: opts.top,
|
|
182
|
+
json: opts.json,
|
|
183
|
+
}));
|
|
184
|
+
});
|
|
185
|
+
program
|
|
186
|
+
.command("palimpsest <target>")
|
|
187
|
+
.description("WILD #5 — render the causal chain of a single line of code")
|
|
188
|
+
.option("--max-depth <n>", "how deep to walk the chain", (v) => Number(v), 8)
|
|
189
|
+
.option("--json", "machine-readable output", false)
|
|
190
|
+
.action(async (target, opts) => {
|
|
191
|
+
process.exit(await palimpsestCommand({
|
|
192
|
+
cwd: process.cwd(),
|
|
193
|
+
target,
|
|
194
|
+
maxDepth: opts.maxDepth,
|
|
195
|
+
json: opts.json,
|
|
196
|
+
}));
|
|
197
|
+
});
|
|
198
|
+
program
|
|
199
|
+
.command("runaway")
|
|
200
|
+
.description("WILD #14 — files that have grown silently across many commits")
|
|
201
|
+
.option("--top <n>", "show top-N", (v) => Number(v), 15)
|
|
202
|
+
.option("--json", "machine-readable output", false)
|
|
203
|
+
.action(async (opts) => {
|
|
204
|
+
process.exit(await runawayCommand({ cwd: process.cwd(), topN: opts.top, json: opts.json }));
|
|
205
|
+
});
|
|
206
|
+
program
|
|
207
|
+
.command("mirror")
|
|
208
|
+
.description("WILD #13 — onboarding dossier (5 PRs, 3 people, 2 incidents)")
|
|
209
|
+
.option("--top-prs <n>", "top PRs", (v) => Number(v), 5)
|
|
210
|
+
.option("--top-people <n>", "top contributors", (v) => Number(v), 3)
|
|
211
|
+
.option("--top-incidents <n>", "top incidents", (v) => Number(v), 2)
|
|
212
|
+
.option("--json", "machine-readable output", false)
|
|
213
|
+
.action(async (opts) => {
|
|
214
|
+
process.exit(await mirrorCommand({
|
|
215
|
+
cwd: process.cwd(),
|
|
216
|
+
topPrs: opts.topPrs,
|
|
217
|
+
topPeople: opts.topPeople,
|
|
218
|
+
topIncidents: opts.topIncidents,
|
|
219
|
+
json: opts.json,
|
|
220
|
+
}));
|
|
221
|
+
});
|
|
222
|
+
program
|
|
223
|
+
.command("rumor")
|
|
224
|
+
.description("WILD #12 — tribal phrases mentioned in commits but no doc explains")
|
|
225
|
+
.option("--min-mentions <n>", "phrase must appear in this many commits", (v) => Number(v), 4)
|
|
226
|
+
.option("--json", "machine-readable output", false)
|
|
227
|
+
.action(async (opts) => {
|
|
228
|
+
process.exit(await rumorCommand({
|
|
229
|
+
cwd: process.cwd(),
|
|
230
|
+
minMentions: opts.minMentions,
|
|
231
|
+
json: opts.json,
|
|
232
|
+
}));
|
|
233
|
+
});
|
|
234
|
+
program
|
|
235
|
+
.command("fossil")
|
|
236
|
+
.description("WILD #10 — files deleted from HEAD but still alive in git history")
|
|
237
|
+
.option("--top <n>", "show top-N", (v) => Number(v), 20)
|
|
238
|
+
.option("--json", "machine-readable output", false)
|
|
239
|
+
.action(async (opts) => {
|
|
240
|
+
process.exit(await fossilCommand({ cwd: process.cwd(), topN: opts.top, json: opts.json }));
|
|
241
|
+
});
|
|
242
|
+
program
|
|
243
|
+
.command("ledger")
|
|
244
|
+
.description("WILD #3 — tamper-evident audit log for compliance (SOX/SOC2)")
|
|
245
|
+
.option("--since <iso>", "start date")
|
|
246
|
+
.option("--until <iso>", "end date")
|
|
247
|
+
.option("--format <kind>", "json | csv", "json")
|
|
248
|
+
.option("--out <path>", "write to file instead of stdout")
|
|
249
|
+
.action(async (opts) => {
|
|
250
|
+
process.exit(await ledgerCommand({
|
|
251
|
+
cwd: process.cwd(),
|
|
252
|
+
since: opts.since,
|
|
253
|
+
until: opts.until,
|
|
254
|
+
format: opts.format,
|
|
255
|
+
out: opts.out,
|
|
256
|
+
}));
|
|
257
|
+
});
|
|
258
|
+
// ─── Stubs (planned features — print design when invoked) ───
|
|
259
|
+
program
|
|
260
|
+
.command("oracle")
|
|
261
|
+
.description("WILD #4 — historical risk analysis on a snippet (planned)")
|
|
262
|
+
.action(async () => {
|
|
263
|
+
process.exit(await oracleCommand());
|
|
264
|
+
});
|
|
265
|
+
program
|
|
266
|
+
.command("conscience [files...]")
|
|
267
|
+
.description("WILD #6 — review co-pilot: risk-score a PR against your repo's own history")
|
|
268
|
+
.option("--diff-file <path>", "read a unified diff from this file")
|
|
269
|
+
.option("--stdin", "read a unified diff from stdin", false)
|
|
270
|
+
.option("--recency-days <n>", "consider commits within this window", (v) => Number(v), 365)
|
|
271
|
+
.option("--top <n>", "top-N similar past commits", (v) => Number(v), 8)
|
|
272
|
+
.option("--json", "machine-readable output", false)
|
|
273
|
+
.action(async (files, opts) => {
|
|
274
|
+
process.exit(await conscienceCommand({
|
|
275
|
+
cwd: process.cwd(),
|
|
276
|
+
files,
|
|
277
|
+
diffFile: opts.diffFile,
|
|
278
|
+
stdin: opts.stdin,
|
|
279
|
+
recencyDays: opts.recencyDays,
|
|
280
|
+
topN: opts.top,
|
|
281
|
+
json: opts.json,
|
|
282
|
+
}));
|
|
283
|
+
});
|
|
284
|
+
program
|
|
285
|
+
.command("blast <commit>")
|
|
286
|
+
.description("Predict incidents likely to follow shipping <commit> (blast radius)")
|
|
287
|
+
.option("--window-hours <n>", "post-deploy window for base rate", (v) => Number(v), 48)
|
|
288
|
+
.option("--json", "machine-readable output", false)
|
|
289
|
+
.action(async (commit, opts) => {
|
|
290
|
+
process.exit(await blastCommand({
|
|
291
|
+
cwd: process.cwd(),
|
|
292
|
+
commit,
|
|
293
|
+
windowHours: opts.windowHours,
|
|
294
|
+
json: opts.json,
|
|
295
|
+
}));
|
|
296
|
+
});
|
|
297
|
+
program
|
|
298
|
+
.command("adapt")
|
|
299
|
+
.description("Mutant mode — inspect this repo and recommend the next 1-3 commands")
|
|
300
|
+
.option("--json", "machine-readable output", false)
|
|
301
|
+
.action(async (opts) => {
|
|
302
|
+
process.exit(await adaptCommand({ cwd: process.cwd(), json: opts.json }));
|
|
303
|
+
});
|
|
304
|
+
program
|
|
305
|
+
.command("genius <question...>")
|
|
306
|
+
.description("AI agent — plans and runs multi-step Mneme workflows to answer hard questions")
|
|
307
|
+
.option("--max-steps <n>", "cap on tool steps in the plan", (v) => Number(v), 4)
|
|
308
|
+
.option("--provider <kind>", "auto | ollama | openai", "auto")
|
|
309
|
+
.option("--model <name>", "override LLM model name")
|
|
310
|
+
.option("--trace", "print raw tool outputs while running", false)
|
|
311
|
+
.option("--json", "machine-readable output", false)
|
|
312
|
+
.action(async (qParts, opts) => {
|
|
313
|
+
process.exit(await geniusCommand({
|
|
314
|
+
cwd: process.cwd(),
|
|
315
|
+
question: qParts.join(" "),
|
|
316
|
+
maxSteps: opts.maxSteps,
|
|
317
|
+
provider: opts.provider,
|
|
318
|
+
model: opts.model,
|
|
319
|
+
trace: opts.trace,
|
|
320
|
+
json: opts.json,
|
|
321
|
+
}));
|
|
322
|
+
});
|
|
323
|
+
program
|
|
324
|
+
.command("teach <target>")
|
|
325
|
+
.description("Explain a folder or file in plain language (layer classification + LLM summary)")
|
|
326
|
+
.option("--provider <kind>", "auto | ollama | openai", "auto")
|
|
327
|
+
.option("--model <name>", "override model name")
|
|
328
|
+
.option("--json", "machine-readable output", false)
|
|
329
|
+
.action(async (target, opts) => {
|
|
330
|
+
process.exit(await teachCommand({
|
|
331
|
+
cwd: process.cwd(),
|
|
332
|
+
target,
|
|
333
|
+
provider: opts.provider,
|
|
334
|
+
model: opts.model,
|
|
335
|
+
json: opts.json,
|
|
336
|
+
}));
|
|
337
|
+
});
|
|
338
|
+
program
|
|
339
|
+
.command("genome")
|
|
340
|
+
.description("WILD #9 — codebase fingerprint + ancestry (planned)")
|
|
341
|
+
.action(async () => {
|
|
342
|
+
process.exit(await genomeCommand());
|
|
343
|
+
});
|
|
344
|
+
program
|
|
345
|
+
.command("dialogue")
|
|
346
|
+
.description("WILD #11 — conversational chat over your repo (planned)")
|
|
347
|
+
.action(async () => {
|
|
348
|
+
process.exit(await dialogueCommand());
|
|
349
|
+
});
|
|
350
|
+
program
|
|
351
|
+
.command("tribute")
|
|
352
|
+
.description("WILD #15 — your codebase as a 60-sec movie (planned)")
|
|
353
|
+
.action(async () => {
|
|
354
|
+
process.exit(await tributeCommand());
|
|
355
|
+
});
|
|
356
|
+
program.exitOverride((err) => {
|
|
357
|
+
if (err.code === "commander.help" || err.code === "commander.helpDisplayed")
|
|
358
|
+
process.exit(0);
|
|
359
|
+
if (err.code === "commander.version")
|
|
360
|
+
process.exit(0);
|
|
361
|
+
process.exit(err.exitCode ?? 1);
|
|
362
|
+
});
|
|
363
|
+
try {
|
|
364
|
+
await program.parseAsync(argv);
|
|
365
|
+
}
|
|
366
|
+
catch (err) {
|
|
367
|
+
ui.error(err.message);
|
|
368
|
+
process.exit(1);
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Meditations — short, quotable teachings about codebase memory.
|
|
3
|
+
*
|
|
4
|
+
* Each meditation has three parts:
|
|
5
|
+
* - title: one short phrase (the koan)
|
|
6
|
+
* - body: 2-4 sentences of context
|
|
7
|
+
* - aphorism: a single tweetable line (the takeaway)
|
|
8
|
+
*
|
|
9
|
+
* Meditations are addressed by index for `mneme wisdom --n <N>` and selected
|
|
10
|
+
* deterministically by date for `mneme wisdom` (one-per-day rhythm — different
|
|
11
|
+
* teaching each day, same teaching all day).
|
|
12
|
+
*/
|
|
13
|
+
export interface Meditation {
|
|
14
|
+
id: string;
|
|
15
|
+
title: string;
|
|
16
|
+
body: string;
|
|
17
|
+
aphorism: string;
|
|
18
|
+
}
|
|
19
|
+
export declare const MEDITATIONS: Meditation[];
|
|
20
|
+
/** Pick a meditation deterministically — same teaching all day, new one tomorrow. */
|
|
21
|
+
export declare function meditationOfTheDay(now?: Date): Meditation;
|
|
22
|
+
export declare function meditationByIndex(n: number): Meditation | undefined;
|
|
23
|
+
export declare function meditationById(id: string): Meditation | undefined;
|
|
24
|
+
//# sourceMappingURL=meditations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meditations.d.ts","sourceRoot":"","sources":["../src/meditations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,WAAW,EAAE,UAAU,EAyGnC,CAAC;AAEF,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,IAAiB,GAAG,UAAU,CAIrE;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAGnE;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAEjE"}
|