@hegel-dev/companion 1.0.8 → 1.0.10
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 +15 -2
- package/dist/commands/cleanup.d.ts +3 -0
- package/dist/commands/cleanup.d.ts.map +1 -0
- package/dist/commands/cleanup.js +51 -0
- package/dist/commands/cleanup.js.map +1 -0
- package/dist/commands/init.d.ts +3 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +142 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/types.d.ts +22 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/types.js +23 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/commands/update.d.ts +3 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +90 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/config.d.ts +0 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +0 -1
- package/dist/config.js.map +1 -1
- package/dist/hook.d.ts +0 -17
- package/dist/hook.d.ts.map +1 -1
- package/dist/hook.js +3 -26
- package/dist/hook.js.map +1 -1
- package/dist/hooks-generator.d.ts +0 -4
- package/dist/hooks-generator.d.ts.map +1 -1
- package/dist/hooks-generator.js +2 -7
- package/dist/hooks-generator.js.map +1 -1
- package/dist/prompts.d.ts +2 -2
- package/dist/prompts.d.ts.map +1 -1
- package/dist/prompts.js +4 -24
- package/dist/prompts.js.map +1 -1
- package/dist/setup.d.ts +9 -90
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +24 -548
- package/dist/setup.js.map +1 -1
- package/dist/utils/install.d.ts +13 -0
- package/dist/utils/install.d.ts.map +1 -0
- package/dist/utils/install.js +112 -0
- package/dist/utils/install.js.map +1 -0
- package/dist/utils/package-manager.d.ts +11 -0
- package/dist/utils/package-manager.d.ts.map +1 -0
- package/dist/utils/package-manager.js +44 -0
- package/dist/utils/package-manager.js.map +1 -0
- package/dist/utils/path.d.ts +15 -0
- package/dist/utils/path.d.ts.map +1 -0
- package/dist/utils/path.js +20 -0
- package/dist/utils/path.js.map +1 -0
- package/dist/utils/workspace.d.ts +13 -0
- package/dist/utils/workspace.d.ts.map +1 -0
- package/dist/utils/workspace.js +79 -0
- package/dist/utils/workspace.js.map +1 -0
- package/hegel-vscode/hegel-companion-1.0.10.vsix +0 -0
- package/hegel.config.schema.json +0 -5
- package/package.json +7 -7
- package/hegel-vscode/hegel-companion-1.0.8.vsix +0 -0
package/README.md
CHANGED
|
@@ -22,6 +22,7 @@ Runs in milliseconds, zero cost. Always active.
|
|
|
22
22
|
### Layer 2: LLM Deep Analysis (prompt hooks)
|
|
23
23
|
Uses your Cursor subscription models. Optional, configurable.
|
|
24
24
|
|
|
25
|
+
- **Important Limitation:** Because of how Cursor currently implements `type: "prompt"` hooks, Layer 2 LLM evaluations are only presented as ephemeral blocking UI popups in the chat. They are *not* recorded in the session history and do not appear in the Hegel dashboard or MCP tools.
|
|
25
26
|
- When you pick a concrete model in settings (anything other than `auto`), setup regenerates `.cursor/hooks.json` so Layer 2 hooks request that routing ID explicitly.
|
|
26
27
|
- Nuanced prompt quality evaluation beyond pattern matching
|
|
27
28
|
- Contextual assessment of whether a prompt has enough detail for its intent
|
|
@@ -30,9 +31,11 @@ Uses your Cursor subscription models. Optional, configurable.
|
|
|
30
31
|
|
|
31
32
|
## Setup
|
|
32
33
|
|
|
33
|
-
###
|
|
34
|
+
### Installation
|
|
34
35
|
|
|
35
|
-
Install the package and run the setup CLI from your Cursor project root
|
|
36
|
+
Install the package and run the setup CLI from your Cursor project root. Hegel automatically detects and supports `npm`, `pnpm`, `yarn`, and `bun` based on your project lockfiles.
|
|
37
|
+
|
|
38
|
+
Using npm as an example:
|
|
36
39
|
|
|
37
40
|
```bash
|
|
38
41
|
npm install --save-dev @hegel-dev/companion
|
|
@@ -47,6 +50,8 @@ npx @hegel-dev/companion init .
|
|
|
47
50
|
|
|
48
51
|
> **Note:** This package was previously published as `hegel-companion`. That name is now deprecated — use `@hegel-dev/companion` for new installs. The CLI command (`hegel-companion`) is unchanged.
|
|
49
52
|
|
|
53
|
+
The bundled sidebar VSIX declares **`engines.vscode` ^1.105.0** with **`@types/vscode` ~1.105.0**, aligned with Cursor builds that report VS Code **1.105.x** (see `hegel-vscode/package.json`).
|
|
54
|
+
|
|
50
55
|
This single command will:
|
|
51
56
|
1. Generate `.cursor/hooks.json` to wire up the analysis layers.
|
|
52
57
|
2. Scaffold a default `hegel.config.json` in your project root.
|
|
@@ -67,6 +72,14 @@ If an older local install does not recognize `update`, run the same two commands
|
|
|
67
72
|
above. The first command upgrades the CLI; the second refreshes hooks, MCP, and
|
|
68
73
|
the bundled sidebar extension.
|
|
69
74
|
|
|
75
|
+
### Clean Up Old Sessions
|
|
76
|
+
|
|
77
|
+
To recompute session states and prune stale concerns or bugs from older versions, run:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
npx hegel-companion cleanup .
|
|
81
|
+
```
|
|
82
|
+
|
|
70
83
|
### Configure
|
|
71
84
|
|
|
72
85
|
The easiest way to configure Hegel is through the **Cursor Settings UI**:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,wBAAsB,UAAU,CAC9B,IAAI,GAAE,MAAM,EAAiB,EAC7B,IAAI,GAAE,SAAuB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAwDjB"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { resolve, join } from "node:path";
|
|
2
|
+
import { defaultDeps } from "./types.js";
|
|
3
|
+
export async function runCleanup(argv = process.argv, deps = defaultDeps) {
|
|
4
|
+
const rest = argv.slice(2);
|
|
5
|
+
const positional = rest.filter((a) => !a.startsWith("--"));
|
|
6
|
+
const targetDir = positional[1] ?? ".";
|
|
7
|
+
const projectPath = resolve(targetDir);
|
|
8
|
+
const stateDir = join(projectPath, ".hegel-state");
|
|
9
|
+
try {
|
|
10
|
+
await deps.access(stateDir);
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
deps.log(`No .hegel-state directory found in ${projectPath}`);
|
|
14
|
+
return 0;
|
|
15
|
+
}
|
|
16
|
+
const { pruneSupersededConcernsFromState, analyzeSession } = await import("../analyzers/session-analyzer.js");
|
|
17
|
+
deps.log(`Cleaning up session state in ${stateDir}...`);
|
|
18
|
+
let cleanedCount = 0;
|
|
19
|
+
const files = await deps.readdir(stateDir);
|
|
20
|
+
for (const file of files) {
|
|
21
|
+
if (!file.endsWith(".json"))
|
|
22
|
+
continue;
|
|
23
|
+
const filePath = join(stateDir, file);
|
|
24
|
+
try {
|
|
25
|
+
const content = await deps.readFile(filePath, "utf-8");
|
|
26
|
+
const state = JSON.parse(content);
|
|
27
|
+
if (!state.conversationId || !Array.isArray(state.concerns))
|
|
28
|
+
continue;
|
|
29
|
+
// 1. Remove all old session-level concerns to recompute them cleanly
|
|
30
|
+
state.concerns = state.concerns.filter((c) => c.sourceType !== "session");
|
|
31
|
+
// 2. Remove context-drift bug where sourceText contains "Hegel Session Review"
|
|
32
|
+
state.concerns = state.concerns.filter((c) => !(c.category === "context-drift" && c.sourceText && c.sourceText.includes("Hegel Session Review")));
|
|
33
|
+
// 3. Prune superseded response concerns (untested-changes, missing-verification)
|
|
34
|
+
pruneSupersededConcernsFromState(state, null);
|
|
35
|
+
// 4. Recompute session-level concerns
|
|
36
|
+
const { concerns: newSessionConcerns } = analyzeSession(state, null);
|
|
37
|
+
for (const c of newSessionConcerns) {
|
|
38
|
+
c.sourceType = "session";
|
|
39
|
+
state.concerns.push(c);
|
|
40
|
+
}
|
|
41
|
+
await deps.writeFile(filePath, JSON.stringify(state, null, 2), "utf-8");
|
|
42
|
+
cleanedCount++;
|
|
43
|
+
}
|
|
44
|
+
catch (err) {
|
|
45
|
+
deps.log(` Failed to process ${file}: ${err instanceof Error ? err.message : String(err)}`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
deps.log(`✅ Cleaned up ${cleanedCount} session files.`);
|
|
49
|
+
return 0;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=cleanup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,wBAAsB,OAAO,CAC3B,IAAI,GAAE,MAAM,EAAiB,EAC7B,IAAI,GAAE,SAAuB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAmJjB"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { resolve, join } from "node:path";
|
|
2
|
+
import { configHash } from "../hooks-generator.js";
|
|
3
|
+
import { findAncestorHegelInstall, COMPANION_RULE } from "../utils/workspace.js";
|
|
4
|
+
import { installVsCodeExtension } from "../utils/install.js";
|
|
5
|
+
import { defaultDeps } from "./types.js";
|
|
6
|
+
export async function runInit(argv = process.argv, deps = defaultDeps) {
|
|
7
|
+
const rest = argv.slice(2);
|
|
8
|
+
const forceFlag = rest.includes("--force");
|
|
9
|
+
const positional = rest.filter((a) => !a.startsWith("--"));
|
|
10
|
+
let targetDir = positional[0];
|
|
11
|
+
if (targetDir === "init" && positional[1]) {
|
|
12
|
+
targetDir = positional[1];
|
|
13
|
+
}
|
|
14
|
+
const projectPath = resolve(targetDir);
|
|
15
|
+
// Refuse to nest a Hegel install inside another one.
|
|
16
|
+
const ancestor = await findAncestorHegelInstall(projectPath, deps.access);
|
|
17
|
+
if (ancestor && !forceFlag) {
|
|
18
|
+
deps.error(`Error: ${ancestor} already has a Hegel install.`);
|
|
19
|
+
deps.error(` Refusing to scaffold a nested install at ${projectPath}.`);
|
|
20
|
+
deps.error(` If this is intentional, rerun with --force.`);
|
|
21
|
+
return 1;
|
|
22
|
+
}
|
|
23
|
+
const config = await deps.loadConfig(projectPath);
|
|
24
|
+
const hooksFile = join(projectPath, ".cursor", "hooks.json");
|
|
25
|
+
const hegelRoot = deps.resolveHegelRoot();
|
|
26
|
+
const isSourceRepo = resolve(projectPath) === resolve(hegelRoot);
|
|
27
|
+
const existingHooks = await deps.readFile(hooksFile, "utf-8").catch(() => null);
|
|
28
|
+
if (existingHooks) {
|
|
29
|
+
deps.log(`Existing Hegel install detected at ${projectPath}.`);
|
|
30
|
+
if (isSourceRepo) {
|
|
31
|
+
deps.log(" (running against the Hegel source repo — will use local dist/ paths)");
|
|
32
|
+
}
|
|
33
|
+
if (!forceFlag) {
|
|
34
|
+
deps.log(" hooks.json will be rewritten only if the config hash differs.");
|
|
35
|
+
deps.log(" Pass --force to rewrite unconditionally.");
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
const hooksWritten = await deps.writeHooksFile(projectPath, config, forceFlag);
|
|
39
|
+
if (!hooksWritten && existingHooks) {
|
|
40
|
+
deps.log(`hooks.json is already up to date (config hash ${configHash(config)})`);
|
|
41
|
+
}
|
|
42
|
+
// Write the Hegel Companion rule
|
|
43
|
+
const rulesDir = join(projectPath, ".cursor", "rules");
|
|
44
|
+
await deps.mkdir(rulesDir, { recursive: true });
|
|
45
|
+
await deps.writeFile(join(rulesDir, "hegel-companion.mdc"), COMPANION_RULE, "utf-8");
|
|
46
|
+
// Scaffold hegel.config.json if it doesn't exist
|
|
47
|
+
const configPath = join(projectPath, "hegel.config.json");
|
|
48
|
+
try {
|
|
49
|
+
const existingConfig = await deps.readFile(configPath, "utf-8").catch(() => null);
|
|
50
|
+
if (!existingConfig) {
|
|
51
|
+
const defaultConfig = {
|
|
52
|
+
"$schema": isSourceRepo
|
|
53
|
+
? "./hegel.config.schema.json"
|
|
54
|
+
: "./node_modules/@hegel-dev/companion/hegel.config.schema.json",
|
|
55
|
+
"model": "auto",
|
|
56
|
+
"enableLlmAnalysis": true,
|
|
57
|
+
"timeoutSeconds": 15,
|
|
58
|
+
"strictness": "balanced"
|
|
59
|
+
};
|
|
60
|
+
await deps.writeFile(configPath, JSON.stringify(defaultConfig, null, 2) + "\n", "utf-8");
|
|
61
|
+
deps.log(`✅ Default hegel.config.json created`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
// Ignore
|
|
66
|
+
}
|
|
67
|
+
// Register MCP server in .cursor/mcp.json
|
|
68
|
+
const mcpConfigPath = join(projectPath, ".cursor", "mcp.json");
|
|
69
|
+
try {
|
|
70
|
+
let mcpConfig = { mcpServers: {} };
|
|
71
|
+
const existingMcp = await deps.readFile(mcpConfigPath, "utf-8").catch(() => null);
|
|
72
|
+
if (existingMcp) {
|
|
73
|
+
mcpConfig = JSON.parse(existingMcp);
|
|
74
|
+
if (!mcpConfig.mcpServers)
|
|
75
|
+
mcpConfig.mcpServers = {};
|
|
76
|
+
}
|
|
77
|
+
const mcpArgs = isSourceRepo
|
|
78
|
+
? [join(hegelRoot, "dist", "mcp.js").replace(/\\/g, "/")]
|
|
79
|
+
: ["node_modules/@hegel-dev/companion/dist/mcp.js"];
|
|
80
|
+
mcpConfig.mcpServers["hegel-mcp"] = {
|
|
81
|
+
command: "node",
|
|
82
|
+
args: mcpArgs,
|
|
83
|
+
env: {
|
|
84
|
+
"HEGEL_WORKSPACE_ROOT": projectPath
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
await deps.writeFile(mcpConfigPath, JSON.stringify(mcpConfig, null, 2) + "\n", "utf-8");
|
|
88
|
+
deps.log(`✅ MCP server registered in .cursor/mcp.json`);
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
deps.log("Failed to register MCP server in .cursor/mcp.json");
|
|
92
|
+
}
|
|
93
|
+
// Install the VS Code extension
|
|
94
|
+
const vscodeDir = join(hegelRoot, "hegel-vscode");
|
|
95
|
+
const extensionResult = await installVsCodeExtension(vscodeDir, deps);
|
|
96
|
+
const model = config.model === "auto" ? "Cursor default" : config.model;
|
|
97
|
+
const mode = "active (will block on concerns)";
|
|
98
|
+
deps.log("");
|
|
99
|
+
deps.log(`✅ Hegel hooks written to ${hooksFile}`);
|
|
100
|
+
deps.log(`✅ Hegel Companion Rule written to ${join(rulesDir, "hegel-companion.mdc")}`);
|
|
101
|
+
deps.log(` Config hash: ${configHash(config)}`);
|
|
102
|
+
deps.log("");
|
|
103
|
+
deps.log(`Mode: ${mode}`);
|
|
104
|
+
deps.log("");
|
|
105
|
+
deps.log("Layers:");
|
|
106
|
+
deps.log(` Layer 1: Rule-based analysis (command hooks) — blocks on warning+`);
|
|
107
|
+
if (config.enableLlmAnalysis) {
|
|
108
|
+
deps.log(` Layer 2: LLM deep analysis (prompt hooks) — model: ${model} — blocks on concern`);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
deps.log(" Layer 2: LLM deep analysis — disabled (enableLlmAnalysis=false)");
|
|
112
|
+
}
|
|
113
|
+
deps.log("");
|
|
114
|
+
deps.log("Hot-reload: config changes are auto-detected on the next prompt.");
|
|
115
|
+
deps.log(" Change hegel.config.json → hooks.json is regenerated on the next");
|
|
116
|
+
deps.log(" beforeSubmitPrompt hook. Model changes on Layer 2 prompt hooks");
|
|
117
|
+
deps.log(" usually require a full Cursor restart to take effect.");
|
|
118
|
+
if (extensionResult.status !== "installed") {
|
|
119
|
+
deps.log("");
|
|
120
|
+
deps.log("⚠️ VS Code extension was NOT installed automatically.");
|
|
121
|
+
if (extensionResult.status === "vsix-not-found") {
|
|
122
|
+
deps.log(` Reason: ${extensionResult.reason}`);
|
|
123
|
+
deps.log(" The Hegel sidebar won't appear until a VSIX is built/installed.");
|
|
124
|
+
}
|
|
125
|
+
else if (extensionResult.status === "cursor-cli-missing") {
|
|
126
|
+
deps.log(` Reason: ${extensionResult.reason ?? "'cursor' CLI not found on PATH"}`);
|
|
127
|
+
deps.log(" Run this from a shell where the 'cursor' command is available");
|
|
128
|
+
deps.log(" (e.g. Cursor's built-in terminal, or with Cursor on your PATH):");
|
|
129
|
+
deps.log(` cursor --install-extension "${extensionResult.vsixPath}"`);
|
|
130
|
+
deps.log(" Then fully quit and reopen Cursor (not just Reload Window — the");
|
|
131
|
+
deps.log(" extension manifest is cached in the extension-host process).");
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
deps.log(` Reason: ${extensionResult.reason ?? "unknown"}`);
|
|
135
|
+
deps.log(" You can retry manually:");
|
|
136
|
+
deps.log(` cursor --install-extension "${extensionResult.vsixPath}"`);
|
|
137
|
+
deps.log(" Then fully quit and reopen Cursor (not just Reload Window).");
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
return 0;
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { mkdir, writeFile, readdir, readFile, access, rm } from "node:fs/promises";
|
|
2
|
+
import { execFileSync } from "node:child_process";
|
|
3
|
+
import { writeHooksFile } from "../hooks-generator.js";
|
|
4
|
+
import type { HegelConfig } from "../config.js";
|
|
5
|
+
export interface SetupDeps {
|
|
6
|
+
loadConfig: (workspaceRoot?: string) => Promise<HegelConfig>;
|
|
7
|
+
writeHooksFile: typeof writeHooksFile;
|
|
8
|
+
mkdir: typeof mkdir;
|
|
9
|
+
writeFile: typeof writeFile;
|
|
10
|
+
readdir: typeof readdir;
|
|
11
|
+
readFile: typeof readFile;
|
|
12
|
+
access: typeof access;
|
|
13
|
+
rm: typeof rm;
|
|
14
|
+
execFileSync: typeof execFileSync;
|
|
15
|
+
log: (message: string) => void;
|
|
16
|
+
error: (message: string) => void;
|
|
17
|
+
resolveHegelRoot: () => string;
|
|
18
|
+
platform?: NodeJS.Platform;
|
|
19
|
+
env?: NodeJS.ProcessEnv;
|
|
20
|
+
}
|
|
21
|
+
export declare const defaultDeps: SetupDeps;
|
|
22
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/commands/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIlD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,CAAC,aAAa,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7D,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,SAAS,EAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,EAAE,EAAE,OAAO,EAAE,CAAC;IACd,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,gBAAgB,EAAE,MAAM,MAAM,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB;AAED,eAAO,MAAM,WAAW,EAAE,SAezB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { mkdir, writeFile, readdir, readFile, access, rm } from "node:fs/promises";
|
|
2
|
+
import { execFileSync } from "node:child_process";
|
|
3
|
+
import { resolve, join, dirname } from "node:path";
|
|
4
|
+
import { fileURLToPath } from "node:url";
|
|
5
|
+
import { loadConfig } from "../config.js";
|
|
6
|
+
import { writeHooksFile } from "../hooks-generator.js";
|
|
7
|
+
export const defaultDeps = {
|
|
8
|
+
loadConfig,
|
|
9
|
+
writeHooksFile,
|
|
10
|
+
mkdir,
|
|
11
|
+
writeFile,
|
|
12
|
+
readdir,
|
|
13
|
+
readFile,
|
|
14
|
+
access,
|
|
15
|
+
rm,
|
|
16
|
+
execFileSync,
|
|
17
|
+
log: console.log,
|
|
18
|
+
error: console.error,
|
|
19
|
+
resolveHegelRoot: () => resolve(join(dirname(fileURLToPath(import.meta.url)), "..", "..")),
|
|
20
|
+
platform: process.platform,
|
|
21
|
+
env: process.env,
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/commands/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAoBvD,MAAM,CAAC,MAAM,WAAW,GAAc;IACpC,UAAU;IACV,cAAc;IACd,KAAK;IACL,SAAS;IACT,OAAO;IACP,QAAQ;IACR,MAAM;IACN,EAAE;IACF,YAAY;IACZ,GAAG,EAAE,OAAO,CAAC,GAAG;IAChB,KAAK,EAAE,OAAO,CAAC,KAAK;IACpB,gBAAgB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1F,QAAQ,EAAE,OAAO,CAAC,QAAQ;IAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;CACjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,wBAAsB,SAAS,CAC7B,IAAI,GAAE,MAAM,EAAiB,EAC7B,IAAI,GAAE,SAAuB,GAC5B,OAAO,CAAC,MAAM,CAAC,CA0FjB"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { resolve, join } from "node:path";
|
|
2
|
+
import { readInstalledCompanionVersion, detectPackageManager } from "../utils/package-manager.js";
|
|
3
|
+
import { pruneOrphanInstalls } from "../utils/workspace.js";
|
|
4
|
+
import { execCommandSync } from "../utils/install.js";
|
|
5
|
+
import { runInit } from "./init.js";
|
|
6
|
+
import { defaultDeps } from "./types.js";
|
|
7
|
+
export async function runUpdate(argv = process.argv, deps = defaultDeps) {
|
|
8
|
+
const rest = argv.slice(2);
|
|
9
|
+
const positional = rest.filter((a) => !a.startsWith("--"));
|
|
10
|
+
const targetDir = positional[1] ?? ".";
|
|
11
|
+
const skipNpm = rest.includes("--skip-npm");
|
|
12
|
+
const projectPath = resolve(targetDir);
|
|
13
|
+
const hasConfig = await deps.access(join(projectPath, "hegel.config.json")).then(() => true).catch(() => false);
|
|
14
|
+
const hasHooks = await deps.access(join(projectPath, ".cursor", "hooks.json")).then(() => true).catch(() => false);
|
|
15
|
+
if (!hasConfig && !hasHooks) {
|
|
16
|
+
deps.error(`Error: no Hegel install detected at ${projectPath}.`);
|
|
17
|
+
deps.error(` Run 'npx hegel-companion init ${targetDir}' first.`);
|
|
18
|
+
return 1;
|
|
19
|
+
}
|
|
20
|
+
deps.log(`Updating Hegel install at ${projectPath}`);
|
|
21
|
+
deps.log("");
|
|
22
|
+
const hegelRoot = deps.resolveHegelRoot();
|
|
23
|
+
const isSourceRepo = resolve(projectPath) === resolve(hegelRoot);
|
|
24
|
+
const beforeVersion = await readInstalledCompanionVersion(projectPath, deps.readFile);
|
|
25
|
+
if (isSourceRepo) {
|
|
26
|
+
deps.log("Source-repo mode detected — skipping package manager upgrade.");
|
|
27
|
+
deps.log("");
|
|
28
|
+
}
|
|
29
|
+
else if (skipNpm) {
|
|
30
|
+
deps.log("--skip-npm passed — skipping dependency upgrade.");
|
|
31
|
+
deps.log("");
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
const pm = await detectPackageManager(projectPath, deps.access);
|
|
35
|
+
const installArgs = pm === "npm" ? ["install", "@hegel-dev/companion@latest"] : ["add", "-D", "@hegel-dev/companion@latest"];
|
|
36
|
+
deps.log(`Running: ${pm} ${installArgs.join(" ")}`);
|
|
37
|
+
try {
|
|
38
|
+
execCommandSync(pm, installArgs, deps, { stdio: "inherit", cwd: projectPath });
|
|
39
|
+
}
|
|
40
|
+
catch (err) {
|
|
41
|
+
const errno = err?.code;
|
|
42
|
+
if (errno === "ENOENT") {
|
|
43
|
+
deps.error(`Error: '${pm}' not found on PATH.`);
|
|
44
|
+
deps.error(` Install Node.js/package manager and rerun, or pass --skip-npm`);
|
|
45
|
+
deps.error(" to refresh hooks/VSIX without touching dependencies.");
|
|
46
|
+
return 1;
|
|
47
|
+
}
|
|
48
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
49
|
+
deps.error(`Error: ${pm} install failed: ${message}`);
|
|
50
|
+
return 1;
|
|
51
|
+
}
|
|
52
|
+
deps.log("");
|
|
53
|
+
}
|
|
54
|
+
const setupArgv = ["node", argv[1] ?? "setup.js", projectPath, "--force"];
|
|
55
|
+
const setupExit = await runInit(setupArgv, deps);
|
|
56
|
+
if (setupExit !== 0) {
|
|
57
|
+
deps.error(`Error: setup re-run failed with exit code ${setupExit}.`);
|
|
58
|
+
return setupExit;
|
|
59
|
+
}
|
|
60
|
+
deps.log("");
|
|
61
|
+
deps.log("Checking for orphan Hegel directories...");
|
|
62
|
+
const prune = await pruneOrphanInstalls(projectPath, deps);
|
|
63
|
+
if (prune.pruned.length === 0 && prune.skipped.length === 0) {
|
|
64
|
+
deps.log(" No orphans found.");
|
|
65
|
+
}
|
|
66
|
+
deps.log("");
|
|
67
|
+
const afterVersion = await readInstalledCompanionVersion(projectPath, deps.readFile);
|
|
68
|
+
if (afterVersion) {
|
|
69
|
+
if (beforeVersion && beforeVersion !== afterVersion) {
|
|
70
|
+
deps.log(`✅ Updated @hegel-dev/companion: ${beforeVersion} → ${afterVersion}`);
|
|
71
|
+
}
|
|
72
|
+
else if (beforeVersion === afterVersion) {
|
|
73
|
+
deps.log(`✅ @hegel-dev/companion ${afterVersion} (already at latest — refreshed hooks + VSIX)`);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
deps.log(`✅ @hegel-dev/companion ${afterVersion} installed.`);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
else if (isSourceRepo) {
|
|
80
|
+
deps.log("✅ Source-repo update complete (no node_modules version to report).");
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
deps.log("✅ Update complete (could not read installed version from node_modules).");
|
|
84
|
+
}
|
|
85
|
+
deps.log("");
|
|
86
|
+
deps.log("Reminder: fully quit and reopen Cursor (not just Reload Window) so the");
|
|
87
|
+
deps.log(" updated VSIX manifest is picked up by the extension host.");
|
|
88
|
+
return 0;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -3,8 +3,6 @@ export interface HegelConfig {
|
|
|
3
3
|
enableLlmAnalysis: boolean;
|
|
4
4
|
timeoutSeconds: number;
|
|
5
5
|
strictness: "relaxed" | "balanced" | "strict";
|
|
6
|
-
/** When true, both layers still run full analysis and collect stats, but the user never sees intervention in the chat (no blocking, no user_message). */
|
|
7
|
-
observeOnly: boolean;
|
|
8
6
|
}
|
|
9
7
|
export declare function configPath(workspaceRoot?: string): string;
|
|
10
8
|
export declare function loadConfig(workspaceRoot?: string): Promise<HegelConfig>;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,OAAO,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,OAAO,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;CAC/C;AAaD,wBAAgB,UAAU,CAAC,aAAa,GAAE,MAAsB,GAAG,MAAM,CAExE;AAED,wBAAsB,UAAU,CAAC,aAAa,GAAE,MAAsB,GAAG,OAAO,CAAC,WAAW,CAAC,CAQ5F"}
|
package/dist/config.js
CHANGED
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AASzC,MAAM,QAAQ,GAAgB;IAC5B,KAAK,EAAE,MAAM;IACb,iBAAiB,EAAE,IAAI;IACvB,cAAc,EAAE,EAAE;IAClB,UAAU,EAAE,UAAU;CACvB,CAAC;AAEF,SAAS,SAAS;IAChB,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,gBAAwB,OAAO,CAAC,GAAG,EAAE;IAC9D,OAAO,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,gBAAwB,OAAO,CAAC,GAAG,EAAE;IACpE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAC;QACvD,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,QAAQ,EAAE,CAAC;IACzB,CAAC;AACH,CAAC"}
|
package/dist/hook.d.ts
CHANGED
|
@@ -1,23 +1,6 @@
|
|
|
1
1
|
import type { HookBaseInput } from "./types.js";
|
|
2
2
|
type OutputWriter = (obj: Record<string, unknown>) => void;
|
|
3
3
|
type InputReader = () => Promise<string>;
|
|
4
|
-
/**
|
|
5
|
-
* Normalize a Cursor-supplied workspace path to a platform-native format.
|
|
6
|
-
*
|
|
7
|
-
* On Windows, Cursor passes Unix-style paths like "/c:/Projects/Foo" in the
|
|
8
|
-
* hook payload's `workspace_roots`. When these flow into Node fs APIs
|
|
9
|
-
* (especially `mkdir`), the leading "/" is interpreted as "root of the
|
|
10
|
-
* current drive", producing malformed paths like "C:\c:\Projects\Foo"
|
|
11
|
-
* (double drive letter) which then fail with ENOENT.
|
|
12
|
-
*
|
|
13
|
-
* Readily reproducible in 1.0.1 — see the CopybarasCircle migration notes
|
|
14
|
-
* for the full `hot-reload:error` log chain that surfaced this.
|
|
15
|
-
*
|
|
16
|
-
* Strip the leading "/" when the path matches `/<letter>:/...`. Non-Windows
|
|
17
|
-
* platforms and paths that aren't in this specific shape pass through
|
|
18
|
-
* unchanged.
|
|
19
|
-
*/
|
|
20
|
-
export declare function normalizeWorkspacePath(p: string): string;
|
|
21
4
|
export declare function processHookInput(input: HookBaseInput, output?: OutputWriter): Promise<void>;
|
|
22
5
|
export declare function processHookJson(raw: string, output?: OutputWriter): Promise<void>;
|
|
23
6
|
export declare function runHook(readInput?: InputReader, output?: OutputWriter): Promise<void>;
|
package/dist/hook.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EACV,aAAa,EAOd,MAAM,YAAY,CAAC;AAEpB,KAAK,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;AAC3D,KAAK,WAAW,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;AAkUzC,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,aAAa,EACpB,MAAM,GAAE,YAA0B,GACjC,OAAO,CAAC,IAAI,CAAC,CAsCf;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,YAA0B,GACjC,OAAO,CAAC,IAAI,CAAC,CAWf;AAED,wBAAsB,OAAO,CAC3B,SAAS,GAAE,WAAuB,EAClC,MAAM,GAAE,YAA0B,GACjC,OAAO,CAAC,IAAI,CAAC,CAGf"}
|
package/dist/hook.js
CHANGED
|
@@ -10,6 +10,7 @@ import { analyzeSession, pruneSupersededConcernsFromState, } from "./analyzers/s
|
|
|
10
10
|
import { loadTranscript } from "./transcript.js";
|
|
11
11
|
import { formatBlockMessage } from "./format.js";
|
|
12
12
|
import { writeHooksFile } from "./hooks-generator.js";
|
|
13
|
+
import { normalizeWorkspacePath } from "./utils/path.js";
|
|
13
14
|
async function readStdin() {
|
|
14
15
|
const chunks = [];
|
|
15
16
|
for await (const chunk of stdin) {
|
|
@@ -21,28 +22,6 @@ async function readStdin() {
|
|
|
21
22
|
}
|
|
22
23
|
const LOG_DIR = ".hegel-state";
|
|
23
24
|
const LOG_FILE = `${LOG_DIR}/hegel.log`;
|
|
24
|
-
/**
|
|
25
|
-
* Normalize a Cursor-supplied workspace path to a platform-native format.
|
|
26
|
-
*
|
|
27
|
-
* On Windows, Cursor passes Unix-style paths like "/c:/Projects/Foo" in the
|
|
28
|
-
* hook payload's `workspace_roots`. When these flow into Node fs APIs
|
|
29
|
-
* (especially `mkdir`), the leading "/" is interpreted as "root of the
|
|
30
|
-
* current drive", producing malformed paths like "C:\c:\Projects\Foo"
|
|
31
|
-
* (double drive letter) which then fail with ENOENT.
|
|
32
|
-
*
|
|
33
|
-
* Readily reproducible in 1.0.1 — see the CopybarasCircle migration notes
|
|
34
|
-
* for the full `hot-reload:error` log chain that surfaced this.
|
|
35
|
-
*
|
|
36
|
-
* Strip the leading "/" when the path matches `/<letter>:/...`. Non-Windows
|
|
37
|
-
* platforms and paths that aren't in this specific shape pass through
|
|
38
|
-
* unchanged.
|
|
39
|
-
*/
|
|
40
|
-
export function normalizeWorkspacePath(p) {
|
|
41
|
-
if (process.platform === "win32" && /^\/[a-zA-Z]:/.test(p)) {
|
|
42
|
-
return p.substring(1);
|
|
43
|
-
}
|
|
44
|
-
return p;
|
|
45
|
-
}
|
|
46
25
|
/**
|
|
47
26
|
* Returns a copy of `workspace_roots` with every entry normalized. Callers
|
|
48
27
|
* should always use this before passing Cursor-supplied roots to fs APIs.
|
|
@@ -69,8 +48,6 @@ async function isSelfProject(input) {
|
|
|
69
48
|
return false;
|
|
70
49
|
}
|
|
71
50
|
async function shouldBypass(input, config) {
|
|
72
|
-
if (config.observeOnly)
|
|
73
|
-
return true;
|
|
74
51
|
return isSelfProject(input);
|
|
75
52
|
}
|
|
76
53
|
async function log(level, event, message) {
|
|
@@ -289,8 +266,8 @@ async function handleSessionStart(input, output) {
|
|
|
289
266
|
const workspaceRoots = normalizedWorkspaceRoots(input);
|
|
290
267
|
const config = await loadConfig(workspaceRoots[0] || process.cwd());
|
|
291
268
|
const bypass = await shouldBypass(input, config);
|
|
292
|
-
const mode = bypass ? "
|
|
293
|
-
await log("info", "sessionStart", `Mode: ${mode} (
|
|
269
|
+
const mode = bypass ? "silent" : "active";
|
|
270
|
+
await log("info", "sessionStart", `Mode: ${mode} (selfProject=${await isSelfProject(input)})`);
|
|
294
271
|
// Hot-reload: regenerate hooks.json if config has changed since last setup.
|
|
295
272
|
// This path fires on extension/hook-runtime init; the same check also runs
|
|
296
273
|
// from `beforeSubmitPrompt` so per-chat UI changes propagate without an
|
package/dist/hook.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
|