@memnexus-ai/cli 1.7.76 → 1.7.77
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/hook.d.ts.map +1 -1
- package/dist/commands/hook.js +12 -1
- package/dist/commands/hook.js.map +1 -1
- package/dist/lib/commit-context/enrich.d.ts +19 -0
- package/dist/lib/commit-context/enrich.d.ts.map +1 -0
- package/dist/lib/commit-context/enrich.js +139 -0
- package/dist/lib/commit-context/enrich.js.map +1 -0
- package/dist/lib/commit-context/index.d.ts +1 -0
- package/dist/lib/commit-context/index.d.ts.map +1 -1
- package/dist/lib/commit-context/index.js +4 -1
- package/dist/lib/commit-context/index.js.map +1 -1
- package/dist/lib/config.d.ts +1 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +9 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBpC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwB3D"}
|
package/dist/commands/hook.js
CHANGED
|
@@ -49,6 +49,7 @@ function registerHookCommands(program) {
|
|
|
49
49
|
.option('--dry-run', 'Print output without saving')
|
|
50
50
|
.option('--no-sync', 'Skip API sync (cache only)')
|
|
51
51
|
.option('--summarizer <type>', 'Summarizer: llm (default) or heuristic', 'llm')
|
|
52
|
+
.option('--no-enrich', 'Skip commit message enrichment')
|
|
52
53
|
.action(async (options) => {
|
|
53
54
|
try {
|
|
54
55
|
await handlePostCommit(options);
|
|
@@ -65,6 +66,10 @@ function registerHookCommands(program) {
|
|
|
65
66
|
});
|
|
66
67
|
}
|
|
67
68
|
async function handlePostCommit(options) {
|
|
69
|
+
// Prevent infinite recursion: enrichment amends the commit, which re-triggers the hook
|
|
70
|
+
if (process.env.MX_ENRICHING) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
68
73
|
const cwd = options.cwd;
|
|
69
74
|
const dryRun = options.dryRun || false;
|
|
70
75
|
const shouldSync = options.sync !== false; // default true
|
|
@@ -166,8 +171,11 @@ async function handlePostCommit(options) {
|
|
|
166
171
|
memoryId: serverMemoryId,
|
|
167
172
|
};
|
|
168
173
|
(0, commit_context_1.writeCache)(projectRoot, cacheEntry);
|
|
169
|
-
// 10. If server already created the memory, we're done
|
|
174
|
+
// 10. If server already created the memory, enrich and we're done
|
|
170
175
|
if (serverMemoryId) {
|
|
176
|
+
if (config_1.config.getEnrichCommitMessages() && options.enrich !== false) {
|
|
177
|
+
(0, commit_context_1.enrichCommitMessage)(cwd, git.sha, git.message, data.content, serverMemoryId);
|
|
178
|
+
}
|
|
171
179
|
console.log(`[CommitContext] ${git.shortSha} captured and synced (server)`);
|
|
172
180
|
return;
|
|
173
181
|
}
|
|
@@ -186,6 +194,9 @@ async function handlePostCommit(options) {
|
|
|
186
194
|
if (memoryId) {
|
|
187
195
|
(0, commit_context_1.markSynced)(projectRoot, git.shortSha, memoryId);
|
|
188
196
|
}
|
|
197
|
+
if (config_1.config.getEnrichCommitMessages() && options.enrich !== false) {
|
|
198
|
+
(0, commit_context_1.enrichCommitMessage)(cwd, git.sha, git.message, data.content, memoryId);
|
|
199
|
+
}
|
|
189
200
|
console.log(`[CommitContext] ${git.shortSha} captured and synced`);
|
|
190
201
|
}
|
|
191
202
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enrich a commit message with distilled context from MemNexus.
|
|
3
|
+
*
|
|
4
|
+
* 1. Saves the original message to git notes
|
|
5
|
+
* 2. Builds an enriched message (original subject + condensed body + footer)
|
|
6
|
+
* 3. Amends the commit with the enriched message
|
|
7
|
+
*
|
|
8
|
+
* Failures are silently caught — enrichment never breaks the hook.
|
|
9
|
+
*/
|
|
10
|
+
export declare function enrichCommitMessage(cwd: string, sha: string, originalMessage: string, distilledContent: string, memoryId?: string): void;
|
|
11
|
+
/**
|
|
12
|
+
* Condense the five-section distilled content into commit-message-friendly prose.
|
|
13
|
+
*
|
|
14
|
+
* Extracts "What changed" and "Key decisions" as body paragraphs,
|
|
15
|
+
* appends any "Gotchas" as a one-liner. Skips "Debugging path" and
|
|
16
|
+
* "Patterns used" (too verbose for a commit message).
|
|
17
|
+
*/
|
|
18
|
+
export declare function condenseSections(content: string): string;
|
|
19
|
+
//# sourceMappingURL=enrich.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enrich.d.ts","sourceRoot":"","sources":["../../../src/lib/commit-context/enrich.ts"],"names":[],"mappings":"AAQA;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,eAAe,EAAE,MAAM,EACvB,gBAAgB,EAAE,MAAM,EACxB,QAAQ,CAAC,EAAE,MAAM,GAChB,IAAI,CAsBN;AAoCD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAwBxD"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.enrichCommitMessage = enrichCommitMessage;
|
|
4
|
+
exports.condenseSections = condenseSections;
|
|
5
|
+
/**
|
|
6
|
+
* Commit message enrichment — writes distilled context back into the git commit message.
|
|
7
|
+
*
|
|
8
|
+
* Preserves the original message in git notes, then amends the commit with
|
|
9
|
+
* a condensed version of the server-distilled content.
|
|
10
|
+
*/
|
|
11
|
+
const child_process_1 = require("child_process");
|
|
12
|
+
/**
|
|
13
|
+
* Enrich a commit message with distilled context from MemNexus.
|
|
14
|
+
*
|
|
15
|
+
* 1. Saves the original message to git notes
|
|
16
|
+
* 2. Builds an enriched message (original subject + condensed body + footer)
|
|
17
|
+
* 3. Amends the commit with the enriched message
|
|
18
|
+
*
|
|
19
|
+
* Failures are silently caught — enrichment never breaks the hook.
|
|
20
|
+
*/
|
|
21
|
+
function enrichCommitMessage(cwd, sha, originalMessage, distilledContent, memoryId) {
|
|
22
|
+
try {
|
|
23
|
+
// 1. Save original message to git notes
|
|
24
|
+
(0, child_process_1.execSync)(`git notes add -f -m ${shellEscape(originalMessage)} ${sha}`, {
|
|
25
|
+
cwd,
|
|
26
|
+
stdio: 'ignore',
|
|
27
|
+
});
|
|
28
|
+
// 2. Build enriched message
|
|
29
|
+
const enriched = buildEnrichedMessage(originalMessage, distilledContent, memoryId);
|
|
30
|
+
// 3. Amend the commit with MX_ENRICHING=1 to prevent infinite recursion
|
|
31
|
+
(0, child_process_1.execSync)(`git commit --amend -m ${shellEscape(enriched)} --no-verify`, {
|
|
32
|
+
cwd,
|
|
33
|
+
stdio: 'ignore',
|
|
34
|
+
env: { ...process.env, MX_ENRICHING: '1' },
|
|
35
|
+
});
|
|
36
|
+
console.log(`[CommitContext] ${sha.slice(0, 7)} commit message enriched`);
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
// Never break the hook — enrichment is best-effort
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Build the enriched commit message from original + distilled content.
|
|
44
|
+
*
|
|
45
|
+
* Format:
|
|
46
|
+
* <original subject line>
|
|
47
|
+
*
|
|
48
|
+
* <condensed body from distilled content>
|
|
49
|
+
*
|
|
50
|
+
* [CommitContext] Original message in git notes. Memory: <id>
|
|
51
|
+
*/
|
|
52
|
+
function buildEnrichedMessage(originalMessage, distilledContent, memoryId) {
|
|
53
|
+
const lines = originalMessage.split('\n');
|
|
54
|
+
const subject = lines[0];
|
|
55
|
+
const condensed = condenseSections(distilledContent);
|
|
56
|
+
const parts = [subject];
|
|
57
|
+
if (condensed) {
|
|
58
|
+
parts.push('', condensed);
|
|
59
|
+
}
|
|
60
|
+
const footer = memoryId
|
|
61
|
+
? `[CommitContext] Original message in git notes. Memory: ${memoryId}`
|
|
62
|
+
: '[CommitContext] Original message in git notes.';
|
|
63
|
+
parts.push('', footer);
|
|
64
|
+
return parts.join('\n');
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Condense the five-section distilled content into commit-message-friendly prose.
|
|
68
|
+
*
|
|
69
|
+
* Extracts "What changed" and "Key decisions" as body paragraphs,
|
|
70
|
+
* appends any "Gotchas" as a one-liner. Skips "Debugging path" and
|
|
71
|
+
* "Patterns used" (too verbose for a commit message).
|
|
72
|
+
*/
|
|
73
|
+
function condenseSections(content) {
|
|
74
|
+
const sections = parseSections(content);
|
|
75
|
+
const parts = [];
|
|
76
|
+
const whatChanged = sections['what changed'];
|
|
77
|
+
if (whatChanged) {
|
|
78
|
+
parts.push(cleanSectionText(whatChanged));
|
|
79
|
+
}
|
|
80
|
+
const keyDecisions = sections['key decisions'];
|
|
81
|
+
if (keyDecisions) {
|
|
82
|
+
parts.push(cleanSectionText(keyDecisions));
|
|
83
|
+
}
|
|
84
|
+
const gotchas = sections['gotchas'];
|
|
85
|
+
if (gotchas) {
|
|
86
|
+
const cleaned = cleanSectionText(gotchas);
|
|
87
|
+
if (cleaned) {
|
|
88
|
+
parts.push(`Gotcha: ${cleaned}`);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return parts.join('\n\n');
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Parse markdown content into sections keyed by lowercase header name.
|
|
95
|
+
* Supports both ### and ## headers.
|
|
96
|
+
*/
|
|
97
|
+
function parseSections(content) {
|
|
98
|
+
const sections = {};
|
|
99
|
+
const lines = content.split('\n');
|
|
100
|
+
let currentHeader = '';
|
|
101
|
+
let currentBody = [];
|
|
102
|
+
for (const line of lines) {
|
|
103
|
+
const headerMatch = line.match(/^#{2,3}\s+(.+)/);
|
|
104
|
+
if (headerMatch) {
|
|
105
|
+
if (currentHeader) {
|
|
106
|
+
sections[currentHeader] = currentBody.join('\n').trim();
|
|
107
|
+
}
|
|
108
|
+
currentHeader = headerMatch[1].toLowerCase().trim();
|
|
109
|
+
currentBody = [];
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
currentBody.push(line);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
if (currentHeader) {
|
|
116
|
+
sections[currentHeader] = currentBody.join('\n').trim();
|
|
117
|
+
}
|
|
118
|
+
return sections;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Clean section text: strip markdown bullets/formatting, collapse whitespace.
|
|
122
|
+
*/
|
|
123
|
+
function cleanSectionText(text) {
|
|
124
|
+
return text
|
|
125
|
+
.split('\n')
|
|
126
|
+
.map((line) => line.replace(/^[-*]\s+/, '').trim())
|
|
127
|
+
.filter((line) => line.length > 0)
|
|
128
|
+
.join(' ')
|
|
129
|
+
.replace(/\s{2,}/g, ' ')
|
|
130
|
+
.trim();
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Shell-escape a string for use in execSync commands.
|
|
134
|
+
* Uses single quotes with proper escaping.
|
|
135
|
+
*/
|
|
136
|
+
function shellEscape(str) {
|
|
137
|
+
return "'" + str.replace(/'/g, "'\\''") + "'";
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=enrich.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enrich.js","sourceRoot":"","sources":["../../../src/lib/commit-context/enrich.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ export { readSessionContext, findClaudeProjectDir, findLatestSession, parseSessi
|
|
|
9
9
|
export { summarizeCommit, isTrivialCommit } from './heuristic-summarizer';
|
|
10
10
|
export { sanitize } from './privacy-filter';
|
|
11
11
|
export { writeCache, readCache, listCache, markSynced, markSyncError, getCacheDir, findProjectRoot, } from './local-cache';
|
|
12
|
+
export { enrichCommitMessage, condenseSections } from './enrich';
|
|
12
13
|
export { installHook, isHookInstalled, removeHook } from './hook-installer';
|
|
13
14
|
export type { HookInstallResult, HookRemoveResult, HookManagerName } from './hook-installer';
|
|
14
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/commit-context/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EACL,UAAU,EACV,SAAS,EACT,SAAS,EACT,UAAU,EACV,aAAa,EACb,WAAW,EACX,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC5E,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/commit-context/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EACL,UAAU,EACV,SAAS,EACT,SAAS,EACT,UAAU,EACV,aAAa,EACb,WAAW,EACX,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC5E,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.removeHook = exports.isHookInstalled = exports.installHook = exports.findProjectRoot = exports.getCacheDir = exports.markSyncError = exports.markSynced = exports.listCache = exports.readCache = exports.writeCache = exports.sanitize = exports.isTrivialCommit = exports.summarizeCommit = exports.getRawTranscript = exports.getTranscriptExcerpt = exports.deriveProjectDirName = exports.parseSessionTail = exports.findLatestSession = exports.findClaudeProjectDir = exports.readSessionContext = exports.readDiffContent = exports.parseShortStat = exports.readGitContext = void 0;
|
|
17
|
+
exports.removeHook = exports.isHookInstalled = exports.installHook = exports.condenseSections = exports.enrichCommitMessage = exports.findProjectRoot = exports.getCacheDir = exports.markSyncError = exports.markSynced = exports.listCache = exports.readCache = exports.writeCache = exports.sanitize = exports.isTrivialCommit = exports.summarizeCommit = exports.getRawTranscript = exports.getTranscriptExcerpt = exports.deriveProjectDirName = exports.parseSessionTail = exports.findLatestSession = exports.findClaudeProjectDir = exports.readSessionContext = exports.readDiffContent = exports.parseShortStat = exports.readGitContext = void 0;
|
|
18
18
|
/**
|
|
19
19
|
* CommitContext — automatic commit context capture.
|
|
20
20
|
*
|
|
@@ -46,6 +46,9 @@ Object.defineProperty(exports, "markSynced", { enumerable: true, get: function (
|
|
|
46
46
|
Object.defineProperty(exports, "markSyncError", { enumerable: true, get: function () { return local_cache_1.markSyncError; } });
|
|
47
47
|
Object.defineProperty(exports, "getCacheDir", { enumerable: true, get: function () { return local_cache_1.getCacheDir; } });
|
|
48
48
|
Object.defineProperty(exports, "findProjectRoot", { enumerable: true, get: function () { return local_cache_1.findProjectRoot; } });
|
|
49
|
+
var enrich_1 = require("./enrich");
|
|
50
|
+
Object.defineProperty(exports, "enrichCommitMessage", { enumerable: true, get: function () { return enrich_1.enrichCommitMessage; } });
|
|
51
|
+
Object.defineProperty(exports, "condenseSections", { enumerable: true, get: function () { return enrich_1.condenseSections; } });
|
|
49
52
|
var hook_installer_1 = require("./hook-installer");
|
|
50
53
|
Object.defineProperty(exports, "installHook", { enumerable: true, get: function () { return hook_installer_1.installHook; } });
|
|
51
54
|
Object.defineProperty(exports, "isHookInstalled", { enumerable: true, get: function () { return hook_installer_1.isHookInstalled; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/commit-context/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH,0CAAwB;AACxB,2CAA+E;AAAtE,4GAAA,cAAc,OAAA;AAAE,4GAAA,cAAc,OAAA;AAAE,6GAAA,eAAe,OAAA;AACxD,mDAQ0B;AAPxB,oHAAA,kBAAkB,OAAA;AAClB,sHAAA,oBAAoB,OAAA;AACpB,mHAAA,iBAAiB,OAAA;AACjB,kHAAA,gBAAgB,OAAA;AAChB,sHAAA,oBAAoB,OAAA;AACpB,sHAAA,oBAAoB,OAAA;AACpB,kHAAA,gBAAgB,OAAA;AAElB,+DAA0E;AAAjE,uHAAA,eAAe,OAAA;AAAE,uHAAA,eAAe,OAAA;AACzC,mDAA4C;AAAnC,0GAAA,QAAQ,OAAA;AACjB,6CAQuB;AAPrB,yGAAA,UAAU,OAAA;AACV,wGAAA,SAAS,OAAA;AACT,wGAAA,SAAS,OAAA;AACT,yGAAA,UAAU,OAAA;AACV,4GAAA,aAAa,OAAA;AACb,0GAAA,WAAW,OAAA;AACX,8GAAA,eAAe,OAAA;AAEjB,mDAA4E;AAAnE,6GAAA,WAAW,OAAA;AAAE,iHAAA,eAAe,OAAA;AAAE,4GAAA,UAAU,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/commit-context/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH,0CAAwB;AACxB,2CAA+E;AAAtE,4GAAA,cAAc,OAAA;AAAE,4GAAA,cAAc,OAAA;AAAE,6GAAA,eAAe,OAAA;AACxD,mDAQ0B;AAPxB,oHAAA,kBAAkB,OAAA;AAClB,sHAAA,oBAAoB,OAAA;AACpB,mHAAA,iBAAiB,OAAA;AACjB,kHAAA,gBAAgB,OAAA;AAChB,sHAAA,oBAAoB,OAAA;AACpB,sHAAA,oBAAoB,OAAA;AACpB,kHAAA,gBAAgB,OAAA;AAElB,+DAA0E;AAAjE,uHAAA,eAAe,OAAA;AAAE,uHAAA,eAAe,OAAA;AACzC,mDAA4C;AAAnC,0GAAA,QAAQ,OAAA;AACjB,6CAQuB;AAPrB,yGAAA,UAAU,OAAA;AACV,wGAAA,SAAS,OAAA;AACT,wGAAA,SAAS,OAAA;AACT,yGAAA,UAAU,OAAA;AACV,4GAAA,aAAa,OAAA;AACb,0GAAA,WAAW,OAAA;AACX,8GAAA,eAAe,OAAA;AAEjB,mCAAiE;AAAxD,6GAAA,mBAAmB,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAC9C,mDAA4E;AAAnE,6GAAA,WAAW,OAAA;AAAE,iHAAA,eAAe,OAAA;AAAE,4GAAA,UAAU,OAAA"}
|
package/dist/lib/config.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ declare class ConfigManager {
|
|
|
21
21
|
setApiKey(apiKey: string): void;
|
|
22
22
|
hasApiKey(): boolean;
|
|
23
23
|
getUpdateNotifications(): boolean;
|
|
24
|
+
getEnrichCommitMessages(): boolean;
|
|
24
25
|
/**
|
|
25
26
|
* Detect if running inside an AI agent environment.
|
|
26
27
|
* Checks for known environment variables set by AI coding assistants.
|
package/dist/lib/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAe,mBAAmB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAe,mBAAmB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAiClG,cAAM,aAAa;IACjB,OAAO,CAAC,KAAK,CAAc;;IAO3B;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAQrB,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;IAOnE,GAAG,CAAC,GAAG,EAAE,MAAM,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI;IAIjE,MAAM,CAAC,GAAG,EAAE,MAAM,SAAS,GAAG,IAAI;IAIlC,KAAK,IAAI,IAAI;IAIb,KAAK,IAAI,IAAI;IAIb,SAAS,IAAI,MAAM;IAInB,SAAS,IAAI,MAAM,GAAG,SAAS;IAI/B,SAAS,IAAI,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS;IAQ1D,eAAe,IAAI,MAAM;IAazB,cAAc,IAAI,OAAO;IAiBzB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK/B,SAAS,IAAI,OAAO;IAIpB,sBAAsB,IAAI,OAAO;IAKjC,uBAAuB,IAAI,OAAO;IASlC;;;OAGG;IACH,aAAa,IAAI,WAAW;IAiB5B;;;;;OAKG;IACH,gBAAgB,IAAI,OAAO;IAQ3B;;;OAGG;IACH,UAAU,IAAI,IAAI,GAAG,SAAS;IAU9B;;;OAGG;IACH,iBAAiB,IAAI,MAAM;IAmB3B;;;OAGG;IACH,mBAAmB,IAAI,MAAM;IAiB7B;;;OAGG;IACH,kBAAkB,IAAI,YAAY;IAiBlC;;;OAGG;IACH,uBAAuB,IAAI,OAAO;IAkBlC;;;OAGG;IACH,sBAAsB,IAAI,mBAAmB;IAI7C;;OAEG;IACH,oBAAoB,IAAI,mBAAmB;CAQ5C;AAED,eAAO,MAAM,MAAM,eAAsB,CAAC;AAC1C,eAAO,MAAM,SAAS,QAAO,SAAsC,CAAC"}
|
package/dist/lib/config.js
CHANGED
|
@@ -12,6 +12,7 @@ const DEFAULT_CONFIG = {
|
|
|
12
12
|
defaultPageSize: 20,
|
|
13
13
|
defaultPreviewLength: 200,
|
|
14
14
|
updateNotifications: true,
|
|
15
|
+
enrichCommitMessages: true,
|
|
15
16
|
};
|
|
16
17
|
// AI-optimized defaults when running inside an AI agent environment
|
|
17
18
|
const AI_OPTIMIZED_CONFIG = {
|
|
@@ -115,6 +116,14 @@ class ConfigManager {
|
|
|
115
116
|
const value = this.store.get('updateNotifications');
|
|
116
117
|
return value !== false; // Default to true if not set
|
|
117
118
|
}
|
|
119
|
+
getEnrichCommitMessages() {
|
|
120
|
+
const envVal = process.env.MX_ENRICH_COMMITS;
|
|
121
|
+
if (envVal !== undefined) {
|
|
122
|
+
return envVal !== 'false' && envVal !== '0';
|
|
123
|
+
}
|
|
124
|
+
const value = this.store.get('enrichCommitMessages');
|
|
125
|
+
return value !== false; // Default to true if not set
|
|
126
|
+
}
|
|
118
127
|
/**
|
|
119
128
|
* Detect if running inside an AI agent environment.
|
|
120
129
|
* Checks for known environment variables set by AI coding assistants.
|
package/dist/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAsC;AAEtC,sEAA6C;AAE7C,MAAM,cAAc,GAA4B;IAC9C,MAAM,EAAE,6BAA6B;IACrC,aAAa,EAAE,OAAO;IACtB,eAAe,EAAE,EAAE;IACnB,oBAAoB,EAAE,GAAG;IACzB,mBAAmB,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export interface CLIConfig {
|
|
|
5
5
|
defaultFormat: 'json' | 'table' | 'yaml' | 'llm' | 'compact';
|
|
6
6
|
defaultPageSize: number;
|
|
7
7
|
updateNotifications?: boolean;
|
|
8
|
+
enrichCommitMessages?: boolean;
|
|
8
9
|
}
|
|
9
10
|
export type AIAgentType = 'claude-code' | 'cursor' | 'aider' | 'copilot' | 'cody' | 'unknown';
|
|
10
11
|
export interface AIAgentInfo {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,mBAAmB,6BAA6B,CAAC;AAGjD,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;IAC7D,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,mBAAmB,6BAA6B,CAAC;AAGjD,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;IAC7D,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAGD,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAE9F,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memnexus-ai/cli",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.77",
|
|
4
4
|
"description": "Command-line interface for MemNexus Core API",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"node": ">=18.0.0"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@memnexus-ai/typescript-sdk": "^1.48.
|
|
36
|
+
"@memnexus-ai/typescript-sdk": "^1.48.4",
|
|
37
37
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
38
38
|
"axios": "^1.13.5",
|
|
39
39
|
"chalk": "^5.3.0",
|