maxsimcli 2.5.6 → 3.0.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/README.md +4 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/adapters/base.d.ts +34 -0
- package/dist/adapters/base.d.ts.map +1 -0
- package/dist/adapters/base.js +116 -0
- package/dist/adapters/base.js.map +1 -0
- package/dist/adapters/claude.d.ts +21 -0
- package/dist/adapters/claude.d.ts.map +1 -0
- package/dist/adapters/claude.js +104 -0
- package/dist/adapters/claude.js.map +1 -0
- package/dist/adapters/codex.d.ts +19 -0
- package/dist/adapters/codex.d.ts.map +1 -0
- package/dist/adapters/codex.js +94 -0
- package/dist/adapters/codex.js.map +1 -0
- package/dist/adapters/gemini.d.ts +19 -0
- package/dist/adapters/gemini.d.ts.map +1 -0
- package/dist/adapters/gemini.js +96 -0
- package/dist/adapters/gemini.js.map +1 -0
- package/dist/adapters/index.d.ts +20 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +56 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/opencode.d.ts +17 -0
- package/dist/adapters/opencode.d.ts.map +1 -0
- package/dist/adapters/opencode.js +111 -0
- package/dist/adapters/opencode.js.map +1 -0
- package/dist/adapters/transforms/content.d.ts +39 -0
- package/dist/adapters/transforms/content.d.ts.map +1 -0
- package/dist/adapters/transforms/content.js +125 -0
- package/dist/adapters/transforms/content.js.map +1 -0
- package/dist/adapters/transforms/frontmatter.d.ts +42 -0
- package/dist/adapters/transforms/frontmatter.d.ts.map +1 -0
- package/dist/adapters/transforms/frontmatter.js +204 -0
- package/dist/adapters/transforms/frontmatter.js.map +1 -0
- package/dist/adapters/transforms/tool-maps.d.ts +20 -0
- package/dist/adapters/transforms/tool-maps.d.ts.map +1 -0
- package/dist/adapters/transforms/tool-maps.js +64 -0
- package/dist/adapters/transforms/tool-maps.js.map +1 -0
- package/dist/adapters/types.d.ts +10 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +6 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/assets/CHANGELOG.md +19 -0
- package/dist/assets/dashboard/server.js +27728 -12013
- package/dist/assets/hooks/maxsim-check-update.cjs +2 -2
- package/dist/assets/hooks/maxsim-check-update.cjs.map +1 -0
- package/dist/assets/hooks/maxsim-context-monitor.cjs +2 -2
- package/dist/assets/hooks/maxsim-context-monitor.cjs.map +1 -0
- package/dist/assets/hooks/maxsim-statusline.cjs +2 -2
- package/dist/assets/hooks/maxsim-statusline.cjs.map +1 -0
- package/dist/cli.cjs +15316 -5348
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.d.ts +0 -6
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +282 -443
- package/dist/cli.js.map +1 -1
- package/dist/core/commands.d.ts +19 -0
- package/dist/core/commands.d.ts.map +1 -0
- package/dist/core/commands.js +560 -0
- package/dist/core/commands.js.map +1 -0
- package/dist/core/config.d.ts +9 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +147 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/core.d.ts +39 -0
- package/dist/core/core.d.ts.map +1 -0
- package/dist/core/core.js +411 -0
- package/dist/core/core.js.map +1 -0
- package/dist/core/frontmatter.d.ts +33 -0
- package/dist/core/frontmatter.d.ts.map +1 -0
- package/dist/core/frontmatter.js +192 -0
- package/dist/core/frontmatter.js.map +1 -0
- package/dist/core/index.d.ts +20 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +126 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/init.d.ts +252 -0
- package/dist/core/init.d.ts.map +1 -0
- package/dist/core/init.js +578 -0
- package/dist/core/init.js.map +1 -0
- package/dist/core/milestone.d.ts +9 -0
- package/dist/core/milestone.d.ts.map +1 -0
- package/dist/core/milestone.js +191 -0
- package/dist/core/milestone.js.map +1 -0
- package/dist/core/phase.d.ts +17 -0
- package/dist/core/phase.d.ts.map +1 -0
- package/dist/core/phase.js +610 -0
- package/dist/core/phase.js.map +1 -0
- package/dist/core/roadmap.d.ts +9 -0
- package/dist/core/roadmap.d.ts.map +1 -0
- package/dist/core/roadmap.js +228 -0
- package/dist/core/roadmap.js.map +1 -0
- package/dist/core/state.d.ts +21 -0
- package/dist/core/state.d.ts.map +1 -0
- package/dist/core/state.js +507 -0
- package/dist/core/state.js.map +1 -0
- package/dist/core/template.d.ts +30 -0
- package/dist/core/template.d.ts.map +1 -0
- package/dist/core/template.js +225 -0
- package/dist/core/template.js.map +1 -0
- package/dist/core/types.d.ts +374 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +53 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/verify.d.ts +127 -0
- package/dist/core/verify.d.ts.map +1 -0
- package/dist/core/verify.js +783 -0
- package/dist/core/verify.js.map +1 -0
- package/dist/hooks/index.d.ts +11 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +18 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/maxsim-check-update.d.ts +17 -0
- package/dist/hooks/maxsim-check-update.d.ts.map +1 -0
- package/dist/hooks/maxsim-check-update.js +101 -0
- package/dist/hooks/maxsim-check-update.js.map +1 -0
- package/dist/hooks/maxsim-context-monitor.d.ts +21 -0
- package/dist/hooks/maxsim-context-monitor.d.ts.map +1 -0
- package/dist/hooks/maxsim-context-monitor.js +131 -0
- package/dist/hooks/maxsim-context-monitor.js.map +1 -0
- package/dist/hooks/maxsim-statusline.d.ts +19 -0
- package/dist/hooks/maxsim-statusline.d.ts.map +1 -0
- package/dist/hooks/maxsim-statusline.js +146 -0
- package/dist/hooks/maxsim-statusline.js.map +1 -0
- package/dist/hooks/shared.d.ts +11 -0
- package/dist/hooks/shared.d.ts.map +1 -0
- package/dist/hooks/shared.js +29 -0
- package/dist/hooks/shared.js.map +1 -0
- package/dist/install.cjs +2807 -1211
- package/dist/install.cjs.map +1 -1
- package/dist/install.js +34 -85
- package/dist/install.js.map +1 -1
- package/package.json +10 -7
- package/dist/assets/hooks/index.cjs +0 -239
- package/dist/assets/templates/CLAUDE.md +0 -22
- package/dist/assets/templates/package.json +0 -5
- package/dist/assets/templates/project.json +0 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../src/core/verify.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @maxsim/hooks — Re-exports for unit testing.
|
|
3
|
+
* Do NOT import this module at runtime; hooks run as standalone CJS bundles.
|
|
4
|
+
*/
|
|
5
|
+
export { checkForUpdate } from './maxsim-check-update';
|
|
6
|
+
export type { UpdateCheckResult, CheckForUpdateOptions } from './maxsim-check-update';
|
|
7
|
+
export { processContextMonitor, WARNING_THRESHOLD, CRITICAL_THRESHOLD, STALE_SECONDS, DEBOUNCE_CALLS } from './maxsim-context-monitor';
|
|
8
|
+
export type { ContextMonitorInput, ContextMonitorOutput } from './maxsim-context-monitor';
|
|
9
|
+
export { formatStatusline } from './maxsim-statusline';
|
|
10
|
+
export type { StatuslineInput } from './maxsim-statusline';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEtF,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACvI,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAE1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @maxsim/hooks — Re-exports for unit testing.
|
|
4
|
+
* Do NOT import this module at runtime; hooks run as standalone CJS bundles.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.formatStatusline = exports.DEBOUNCE_CALLS = exports.STALE_SECONDS = exports.CRITICAL_THRESHOLD = exports.WARNING_THRESHOLD = exports.processContextMonitor = exports.checkForUpdate = void 0;
|
|
8
|
+
var maxsim_check_update_1 = require("./maxsim-check-update");
|
|
9
|
+
Object.defineProperty(exports, "checkForUpdate", { enumerable: true, get: function () { return maxsim_check_update_1.checkForUpdate; } });
|
|
10
|
+
var maxsim_context_monitor_1 = require("./maxsim-context-monitor");
|
|
11
|
+
Object.defineProperty(exports, "processContextMonitor", { enumerable: true, get: function () { return maxsim_context_monitor_1.processContextMonitor; } });
|
|
12
|
+
Object.defineProperty(exports, "WARNING_THRESHOLD", { enumerable: true, get: function () { return maxsim_context_monitor_1.WARNING_THRESHOLD; } });
|
|
13
|
+
Object.defineProperty(exports, "CRITICAL_THRESHOLD", { enumerable: true, get: function () { return maxsim_context_monitor_1.CRITICAL_THRESHOLD; } });
|
|
14
|
+
Object.defineProperty(exports, "STALE_SECONDS", { enumerable: true, get: function () { return maxsim_context_monitor_1.STALE_SECONDS; } });
|
|
15
|
+
Object.defineProperty(exports, "DEBOUNCE_CALLS", { enumerable: true, get: function () { return maxsim_context_monitor_1.DEBOUNCE_CALLS; } });
|
|
16
|
+
var maxsim_statusline_1 = require("./maxsim-statusline");
|
|
17
|
+
Object.defineProperty(exports, "formatStatusline", { enumerable: true, get: function () { return maxsim_statusline_1.formatStatusline; } });
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,6DAAuD;AAA9C,qHAAA,cAAc,OAAA;AAGvB,mEAAuI;AAA9H,+HAAA,qBAAqB,OAAA;AAAE,2HAAA,iBAAiB,OAAA;AAAE,4HAAA,kBAAkB,OAAA;AAAE,uHAAA,aAAa,OAAA;AAAE,wHAAA,cAAc,OAAA;AAGpG,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Check for MAXSIM updates in background, write result to cache.
|
|
4
|
+
* Called by SessionStart hook - runs once per session.
|
|
5
|
+
*/
|
|
6
|
+
export interface UpdateCheckResult {
|
|
7
|
+
update_available: boolean;
|
|
8
|
+
installed: string;
|
|
9
|
+
latest: string;
|
|
10
|
+
checked: number;
|
|
11
|
+
}
|
|
12
|
+
export interface CheckForUpdateOptions {
|
|
13
|
+
homeDir: string;
|
|
14
|
+
cwd: string;
|
|
15
|
+
}
|
|
16
|
+
export declare function checkForUpdate(options: CheckForUpdateOptions): void;
|
|
17
|
+
//# sourceMappingURL=maxsim-check-update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maxsim-check-update.d.ts","sourceRoot":"","sources":["../../src/hooks/maxsim-check-update.ts"],"names":[],"mappings":";AACA;;;GAGG;AAQH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAqDnE"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
/**
|
|
4
|
+
* Check for MAXSIM updates in background, write result to cache.
|
|
5
|
+
* Called by SessionStart hook - runs once per session.
|
|
6
|
+
*/
|
|
7
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
+
if (k2 === undefined) k2 = k;
|
|
9
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
+
}
|
|
13
|
+
Object.defineProperty(o, k2, desc);
|
|
14
|
+
}) : (function(o, m, k, k2) {
|
|
15
|
+
if (k2 === undefined) k2 = k;
|
|
16
|
+
o[k2] = m[k];
|
|
17
|
+
}));
|
|
18
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
19
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
20
|
+
}) : function(o, v) {
|
|
21
|
+
o["default"] = v;
|
|
22
|
+
});
|
|
23
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
24
|
+
var ownKeys = function(o) {
|
|
25
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
26
|
+
var ar = [];
|
|
27
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
28
|
+
return ar;
|
|
29
|
+
};
|
|
30
|
+
return ownKeys(o);
|
|
31
|
+
};
|
|
32
|
+
return function (mod) {
|
|
33
|
+
if (mod && mod.__esModule) return mod;
|
|
34
|
+
var result = {};
|
|
35
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
36
|
+
__setModuleDefault(result, mod);
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
})();
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.checkForUpdate = checkForUpdate;
|
|
42
|
+
const fs = __importStar(require("node:fs"));
|
|
43
|
+
const path = __importStar(require("node:path"));
|
|
44
|
+
const os = __importStar(require("node:os"));
|
|
45
|
+
const node_child_process_1 = require("node:child_process");
|
|
46
|
+
const shared_1 = require("./shared");
|
|
47
|
+
function checkForUpdate(options) {
|
|
48
|
+
const { homeDir, cwd } = options;
|
|
49
|
+
const cacheDir = path.join(homeDir, shared_1.CLAUDE_DIR, 'cache');
|
|
50
|
+
const cacheFile = path.join(cacheDir, 'maxsim-update-check.json');
|
|
51
|
+
// VERSION file locations (check project first, then global)
|
|
52
|
+
const projectVersionFile = path.join(cwd, shared_1.CLAUDE_DIR, 'maxsim', 'VERSION');
|
|
53
|
+
const globalVersionFile = path.join(homeDir, shared_1.CLAUDE_DIR, 'maxsim', 'VERSION');
|
|
54
|
+
// Ensure cache directory exists
|
|
55
|
+
if (!fs.existsSync(cacheDir)) {
|
|
56
|
+
fs.mkdirSync(cacheDir, { recursive: true });
|
|
57
|
+
}
|
|
58
|
+
// Run check in background (spawn background process, windowsHide prevents console flash)
|
|
59
|
+
const child = (0, node_child_process_1.spawn)(process.execPath, ['-e', `
|
|
60
|
+
const fs = require('fs');
|
|
61
|
+
const { execSync } = require('child_process');
|
|
62
|
+
|
|
63
|
+
const cacheFile = ${JSON.stringify(cacheFile)};
|
|
64
|
+
const projectVersionFile = ${JSON.stringify(projectVersionFile)};
|
|
65
|
+
const globalVersionFile = ${JSON.stringify(globalVersionFile)};
|
|
66
|
+
|
|
67
|
+
// Check project directory first (local install), then global
|
|
68
|
+
let installed = '0.0.0';
|
|
69
|
+
try {
|
|
70
|
+
if (fs.existsSync(projectVersionFile)) {
|
|
71
|
+
installed = fs.readFileSync(projectVersionFile, 'utf8').trim();
|
|
72
|
+
} else if (fs.existsSync(globalVersionFile)) {
|
|
73
|
+
installed = fs.readFileSync(globalVersionFile, 'utf8').trim();
|
|
74
|
+
}
|
|
75
|
+
} catch (e) {}
|
|
76
|
+
|
|
77
|
+
let latest = null;
|
|
78
|
+
try {
|
|
79
|
+
latest = execSync('npm view maxsimcli version', { encoding: 'utf8', timeout: 10000, windowsHide: true }).trim();
|
|
80
|
+
} catch (e) {}
|
|
81
|
+
|
|
82
|
+
const result = {
|
|
83
|
+
update_available: latest && installed !== latest,
|
|
84
|
+
installed,
|
|
85
|
+
latest: latest || 'unknown',
|
|
86
|
+
checked: Math.floor(Date.now() / 1000)
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
fs.writeFileSync(cacheFile, JSON.stringify(result));
|
|
90
|
+
`], {
|
|
91
|
+
stdio: 'ignore',
|
|
92
|
+
windowsHide: true,
|
|
93
|
+
detached: true,
|
|
94
|
+
});
|
|
95
|
+
child.unref();
|
|
96
|
+
}
|
|
97
|
+
// Standalone entry
|
|
98
|
+
if (require.main === module) {
|
|
99
|
+
checkForUpdate({ homeDir: os.homedir(), cwd: process.cwd() });
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=maxsim-check-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maxsim-check-update.js","sourceRoot":"","sources":["../../src/hooks/maxsim-check-update.ts"],"names":[],"mappings":";;AACA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBH,wCAqDC;AAvED,4CAA8B;AAC9B,gDAAkC;AAClC,4CAA8B;AAC9B,2DAA2C;AAC3C,qCAAsC;AActC,SAAgB,cAAc,CAAC,OAA8B;IAC3D,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAU,EAAE,OAAO,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CAAC;IAElE,4DAA4D;IAC5D,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC3E,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE9E,gCAAgC;IAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,yFAAyF;IACzF,MAAM,KAAK,GAAG,IAAA,0BAAK,EAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE;;;;sBAIzB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;+BAChB,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;8BACnC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;CAyB9D,CAAC,EAAE;QACA,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IAEH,KAAK,CAAC,KAAK,EAAE,CAAC;AAChB,CAAC;AAED,mBAAmB;AACnB,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAChE,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Context Monitor - PostToolUse hook
|
|
4
|
+
* Reads context metrics from the statusline bridge file and injects
|
|
5
|
+
* warnings when context usage is high.
|
|
6
|
+
*/
|
|
7
|
+
export declare const WARNING_THRESHOLD = 35;
|
|
8
|
+
export declare const CRITICAL_THRESHOLD = 25;
|
|
9
|
+
export declare const STALE_SECONDS = 60;
|
|
10
|
+
export declare const DEBOUNCE_CALLS = 5;
|
|
11
|
+
export interface ContextMonitorInput {
|
|
12
|
+
session_id?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface ContextMonitorOutput {
|
|
15
|
+
hookSpecificOutput: {
|
|
16
|
+
hookEventName: string;
|
|
17
|
+
additionalContext: string;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export declare function processContextMonitor(data: ContextMonitorInput): ContextMonitorOutput | null;
|
|
21
|
+
//# sourceMappingURL=maxsim-context-monitor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maxsim-context-monitor.d.ts","sourceRoot":"","sources":["../../src/hooks/maxsim-context-monitor.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAOH,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,kBAAkB,EAAE;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH;AAcD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,GAAG,oBAAoB,GAAG,IAAI,CAkF5F"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
/**
|
|
4
|
+
* Context Monitor - PostToolUse hook
|
|
5
|
+
* Reads context metrics from the statusline bridge file and injects
|
|
6
|
+
* warnings when context usage is high.
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.DEBOUNCE_CALLS = exports.STALE_SECONDS = exports.CRITICAL_THRESHOLD = exports.WARNING_THRESHOLD = void 0;
|
|
43
|
+
exports.processContextMonitor = processContextMonitor;
|
|
44
|
+
const fs = __importStar(require("node:fs"));
|
|
45
|
+
const os = __importStar(require("node:os"));
|
|
46
|
+
const path = __importStar(require("node:path"));
|
|
47
|
+
const shared_1 = require("./shared");
|
|
48
|
+
exports.WARNING_THRESHOLD = 35; // remaining_percentage <= 35%
|
|
49
|
+
exports.CRITICAL_THRESHOLD = 25; // remaining_percentage <= 25%
|
|
50
|
+
exports.STALE_SECONDS = 60; // ignore metrics older than 60s
|
|
51
|
+
exports.DEBOUNCE_CALLS = 5; // min tool uses between warnings
|
|
52
|
+
function processContextMonitor(data) {
|
|
53
|
+
const sessionId = data.session_id;
|
|
54
|
+
if (!sessionId) {
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
const tmpDir = os.tmpdir();
|
|
58
|
+
const metricsPath = path.join(tmpDir, `claude-ctx-${sessionId}.json`);
|
|
59
|
+
// If no metrics file, this is a subagent or fresh session -- exit silently
|
|
60
|
+
if (!fs.existsSync(metricsPath)) {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
const metrics = JSON.parse(fs.readFileSync(metricsPath, 'utf8'));
|
|
64
|
+
const now = Math.floor(Date.now() / 1000);
|
|
65
|
+
// Ignore stale metrics
|
|
66
|
+
if (metrics.timestamp && (now - metrics.timestamp) > exports.STALE_SECONDS) {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
const remaining = metrics.remaining_percentage;
|
|
70
|
+
const usedPct = metrics.used_pct;
|
|
71
|
+
// No warning needed
|
|
72
|
+
if (remaining > exports.WARNING_THRESHOLD) {
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
// Debounce: check if we warned recently
|
|
76
|
+
const warnPath = path.join(tmpDir, `claude-ctx-${sessionId}-warned.json`);
|
|
77
|
+
let warnData = { callsSinceWarn: 0, lastLevel: null };
|
|
78
|
+
let firstWarn = true;
|
|
79
|
+
if (fs.existsSync(warnPath)) {
|
|
80
|
+
try {
|
|
81
|
+
warnData = JSON.parse(fs.readFileSync(warnPath, 'utf8'));
|
|
82
|
+
firstWarn = false;
|
|
83
|
+
}
|
|
84
|
+
catch {
|
|
85
|
+
// Corrupted file, reset
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
warnData.callsSinceWarn = (warnData.callsSinceWarn || 0) + 1;
|
|
89
|
+
const isCritical = remaining <= exports.CRITICAL_THRESHOLD;
|
|
90
|
+
const currentLevel = isCritical ? 'critical' : 'warning';
|
|
91
|
+
// Emit immediately on first warning, then debounce subsequent ones
|
|
92
|
+
// Severity escalation (WARNING -> CRITICAL) bypasses debounce
|
|
93
|
+
const severityEscalated = currentLevel === 'critical' && warnData.lastLevel === 'warning';
|
|
94
|
+
if (!firstWarn && warnData.callsSinceWarn < exports.DEBOUNCE_CALLS && !severityEscalated) {
|
|
95
|
+
// Update counter and exit without warning
|
|
96
|
+
fs.writeFileSync(warnPath, JSON.stringify(warnData));
|
|
97
|
+
return null;
|
|
98
|
+
}
|
|
99
|
+
// Reset debounce counter
|
|
100
|
+
warnData.callsSinceWarn = 0;
|
|
101
|
+
warnData.lastLevel = currentLevel;
|
|
102
|
+
fs.writeFileSync(warnPath, JSON.stringify(warnData));
|
|
103
|
+
// Build warning message
|
|
104
|
+
let message;
|
|
105
|
+
if (isCritical) {
|
|
106
|
+
message = `CONTEXT MONITOR CRITICAL: Usage at ${usedPct}%. Remaining: ${remaining}%. ` +
|
|
107
|
+
'STOP new work immediately. Save state NOW and inform the user that context is nearly exhausted. ' +
|
|
108
|
+
'If using MAXSIM, run /maxsim:pause-work to save execution state.';
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
message = `CONTEXT MONITOR WARNING: Usage at ${usedPct}%. Remaining: ${remaining}%. ` +
|
|
112
|
+
'Begin wrapping up current task. Do not start new complex work. ' +
|
|
113
|
+
'If using MAXSIM, consider /maxsim:pause-work to save state.';
|
|
114
|
+
}
|
|
115
|
+
return {
|
|
116
|
+
hookSpecificOutput: {
|
|
117
|
+
hookEventName: 'PostToolUse',
|
|
118
|
+
additionalContext: message,
|
|
119
|
+
},
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
// Standalone entry
|
|
123
|
+
if (require.main === module) {
|
|
124
|
+
(0, shared_1.readStdinJson)((data) => {
|
|
125
|
+
const result = processContextMonitor(data);
|
|
126
|
+
if (result) {
|
|
127
|
+
process.stdout.write(JSON.stringify(result));
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=maxsim-context-monitor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maxsim-context-monitor.js","sourceRoot":"","sources":["../../src/hooks/maxsim-context-monitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Claude Code Statusline - MAXSIM Edition
|
|
4
|
+
* Shows: model | current task | directory | context usage
|
|
5
|
+
*/
|
|
6
|
+
export interface StatuslineInput {
|
|
7
|
+
model?: {
|
|
8
|
+
display_name?: string;
|
|
9
|
+
};
|
|
10
|
+
workspace?: {
|
|
11
|
+
current_dir?: string;
|
|
12
|
+
};
|
|
13
|
+
session_id?: string;
|
|
14
|
+
context_window?: {
|
|
15
|
+
remaining_percentage?: number;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export declare function formatStatusline(data: StatuslineInput): string;
|
|
19
|
+
//# sourceMappingURL=maxsim-statusline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maxsim-statusline.d.ts","sourceRoot":"","sources":["../../src/hooks/maxsim-statusline.ts"],"names":[],"mappings":";AACA;;;GAGG;AAOH,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,SAAS,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACpD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CA4F9D"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
/**
|
|
4
|
+
* Claude Code Statusline - MAXSIM Edition
|
|
5
|
+
* Shows: model | current task | directory | context usage
|
|
6
|
+
*/
|
|
7
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
+
if (k2 === undefined) k2 = k;
|
|
9
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
+
}
|
|
13
|
+
Object.defineProperty(o, k2, desc);
|
|
14
|
+
}) : (function(o, m, k, k2) {
|
|
15
|
+
if (k2 === undefined) k2 = k;
|
|
16
|
+
o[k2] = m[k];
|
|
17
|
+
}));
|
|
18
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
19
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
20
|
+
}) : function(o, v) {
|
|
21
|
+
o["default"] = v;
|
|
22
|
+
});
|
|
23
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
24
|
+
var ownKeys = function(o) {
|
|
25
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
26
|
+
var ar = [];
|
|
27
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
28
|
+
return ar;
|
|
29
|
+
};
|
|
30
|
+
return ownKeys(o);
|
|
31
|
+
};
|
|
32
|
+
return function (mod) {
|
|
33
|
+
if (mod && mod.__esModule) return mod;
|
|
34
|
+
var result = {};
|
|
35
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
36
|
+
__setModuleDefault(result, mod);
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
})();
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.formatStatusline = formatStatusline;
|
|
42
|
+
const fs = __importStar(require("node:fs"));
|
|
43
|
+
const path = __importStar(require("node:path"));
|
|
44
|
+
const os = __importStar(require("node:os"));
|
|
45
|
+
const shared_1 = require("./shared");
|
|
46
|
+
function formatStatusline(data) {
|
|
47
|
+
const model = data.model?.display_name || 'Claude';
|
|
48
|
+
const dir = data.workspace?.current_dir || process.cwd();
|
|
49
|
+
const session = data.session_id || '';
|
|
50
|
+
const remaining = data.context_window?.remaining_percentage;
|
|
51
|
+
// Context window display (shows USED percentage scaled to 80% limit)
|
|
52
|
+
let ctx = '';
|
|
53
|
+
if (remaining != null) {
|
|
54
|
+
const rem = Math.round(remaining);
|
|
55
|
+
const rawUsed = Math.max(0, Math.min(100, 100 - rem));
|
|
56
|
+
// Scale: 80% real usage = 100% displayed
|
|
57
|
+
const used = Math.min(100, Math.round((rawUsed / 80) * 100));
|
|
58
|
+
// Write context metrics to bridge file for the context-monitor PostToolUse hook.
|
|
59
|
+
if (session) {
|
|
60
|
+
try {
|
|
61
|
+
const bridgePath = path.join(os.tmpdir(), `claude-ctx-${session}.json`);
|
|
62
|
+
const bridgeData = JSON.stringify({
|
|
63
|
+
session_id: session,
|
|
64
|
+
remaining_percentage: remaining,
|
|
65
|
+
used_pct: used,
|
|
66
|
+
timestamp: Math.floor(Date.now() / 1000),
|
|
67
|
+
});
|
|
68
|
+
fs.writeFileSync(bridgePath, bridgeData);
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
// Silent fail -- bridge is best-effort, don't break statusline
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
// Build progress bar (10 segments)
|
|
75
|
+
const filled = Math.floor(used / 10);
|
|
76
|
+
const bar = '\u2588'.repeat(filled) + '\u2591'.repeat(10 - filled);
|
|
77
|
+
// Color based on scaled usage
|
|
78
|
+
if (used < 63) {
|
|
79
|
+
ctx = ` \x1b[32m${bar} ${used}%\x1b[0m`;
|
|
80
|
+
}
|
|
81
|
+
else if (used < 81) {
|
|
82
|
+
ctx = ` \x1b[33m${bar} ${used}%\x1b[0m`;
|
|
83
|
+
}
|
|
84
|
+
else if (used < 95) {
|
|
85
|
+
ctx = ` \x1b[38;5;208m${bar} ${used}%\x1b[0m`;
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
ctx = ` \x1b[5;31m\uD83D\uDC80 ${bar} ${used}%\x1b[0m`;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
// Current task from todos
|
|
92
|
+
let task = '';
|
|
93
|
+
const homeDir = os.homedir();
|
|
94
|
+
const todosDir = path.join(homeDir, shared_1.CLAUDE_DIR, 'todos');
|
|
95
|
+
if (session && fs.existsSync(todosDir)) {
|
|
96
|
+
try {
|
|
97
|
+
const files = fs.readdirSync(todosDir)
|
|
98
|
+
.filter((f) => f.startsWith(session) && f.includes('-agent-') && f.endsWith('.json'))
|
|
99
|
+
.map((f) => ({ name: f, mtime: fs.statSync(path.join(todosDir, f)).mtime }))
|
|
100
|
+
.sort((a, b) => b.mtime.getTime() - a.mtime.getTime());
|
|
101
|
+
if (files.length > 0) {
|
|
102
|
+
try {
|
|
103
|
+
const todos = JSON.parse(fs.readFileSync(path.join(todosDir, files[0].name), 'utf8'));
|
|
104
|
+
const inProgress = todos.find((t) => t.status === 'in_progress');
|
|
105
|
+
if (inProgress)
|
|
106
|
+
task = inProgress.activeForm || '';
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
// ignore
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
// Silently fail on file system errors - don't break statusline
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
// MAXSIM update available?
|
|
118
|
+
let maxsimUpdate = '';
|
|
119
|
+
const cacheFile = path.join(homeDir, shared_1.CLAUDE_DIR, 'cache', 'maxsim-update-check.json');
|
|
120
|
+
if (fs.existsSync(cacheFile)) {
|
|
121
|
+
try {
|
|
122
|
+
const cache = JSON.parse(fs.readFileSync(cacheFile, 'utf8'));
|
|
123
|
+
if (cache.update_available) {
|
|
124
|
+
maxsimUpdate = '\x1b[33m\u2B06 /maxsim:update\x1b[0m \u2502 ';
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
catch {
|
|
128
|
+
// ignore
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
// Output
|
|
132
|
+
const dirname = path.basename(dir);
|
|
133
|
+
if (task) {
|
|
134
|
+
return `${maxsimUpdate}\x1b[2m${model}\x1b[0m \u2502 \x1b[1m${task}\x1b[0m \u2502 \x1b[2m${dirname}\x1b[0m${ctx}`;
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
return `${maxsimUpdate}\x1b[2m${model}\x1b[0m \u2502 \x1b[2m${dirname}\x1b[0m${ctx}`;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
// Standalone entry
|
|
141
|
+
if (require.main === module) {
|
|
142
|
+
(0, shared_1.readStdinJson)((data) => {
|
|
143
|
+
process.stdout.write(formatStatusline(data));
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=maxsim-statusline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maxsim-statusline.js","sourceRoot":"","sources":["../../src/hooks/maxsim-statusline.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared utilities for MAXSIM hooks.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Read all stdin as a string, then invoke callback with parsed JSON.
|
|
6
|
+
* Used by context-monitor and statusline hooks.
|
|
7
|
+
*/
|
|
8
|
+
export declare function readStdinJson<T>(callback: (data: T) => void): void;
|
|
9
|
+
/** The '.claude' path segment -- template marker replaced during install. */
|
|
10
|
+
export declare const CLAUDE_DIR = ".claude";
|
|
11
|
+
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/hooks/shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI,CAalE;AAED,6EAA6E;AAC7E,eAAO,MAAM,UAAU,YAAY,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Shared utilities for MAXSIM hooks.
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.CLAUDE_DIR = void 0;
|
|
7
|
+
exports.readStdinJson = readStdinJson;
|
|
8
|
+
/**
|
|
9
|
+
* Read all stdin as a string, then invoke callback with parsed JSON.
|
|
10
|
+
* Used by context-monitor and statusline hooks.
|
|
11
|
+
*/
|
|
12
|
+
function readStdinJson(callback) {
|
|
13
|
+
let input = '';
|
|
14
|
+
process.stdin.setEncoding('utf8');
|
|
15
|
+
process.stdin.on('data', (chunk) => (input += chunk));
|
|
16
|
+
process.stdin.on('end', () => {
|
|
17
|
+
try {
|
|
18
|
+
const data = JSON.parse(input);
|
|
19
|
+
callback(data);
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
// Silent fail -- never block hook execution
|
|
23
|
+
process.exit(0);
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
/** The '.claude' path segment -- template marker replaced during install. */
|
|
28
|
+
exports.CLAUDE_DIR = '.claude';
|
|
29
|
+
//# sourceMappingURL=shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/hooks/shared.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAMH,sCAaC;AAjBD;;;GAGG;AACH,SAAgB,aAAa,CAAI,QAA2B;IAC1D,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;QAC3B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAM,CAAC;YACpC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,4CAA4C;YAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,6EAA6E;AAChE,QAAA,UAAU,GAAG,SAAS,CAAC"}
|