context-mode 0.8.0 → 0.9.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/start.mjs ADDED
@@ -0,0 +1,41 @@
1
+ #!/usr/bin/env node
2
+ import { execSync } from "node:child_process";
3
+ import { existsSync } from "node:fs";
4
+ import { dirname, resolve } from "node:path";
5
+ import { fileURLToPath } from "node:url";
6
+
7
+ const __dirname = dirname(fileURLToPath(import.meta.url));
8
+ process.chdir(__dirname);
9
+
10
+ if (!process.env.CLAUDE_PROJECT_DIR) {
11
+ process.env.CLAUDE_PROJECT_DIR = process.cwd();
12
+ }
13
+
14
+ // Ensure native module is available
15
+ if (!existsSync(resolve(__dirname, "node_modules", "better-sqlite3"))) {
16
+ try {
17
+ execSync("npm install better-sqlite3 --no-package-lock --no-save --silent", {
18
+ cwd: __dirname,
19
+ stdio: "pipe",
20
+ timeout: 60000,
21
+ });
22
+ } catch { /* best effort */ }
23
+ }
24
+
25
+ // Bundle exists (CI-built) — start instantly
26
+ if (existsSync(resolve(__dirname, "server.bundle.mjs"))) {
27
+ await import("./server.bundle.mjs");
28
+ } else {
29
+ // Dev or npm install — full build
30
+ if (!existsSync(resolve(__dirname, "node_modules"))) {
31
+ try {
32
+ execSync("npm install --silent", { cwd: __dirname, stdio: "pipe", timeout: 60000 });
33
+ } catch { /* best effort */ }
34
+ }
35
+ if (!existsSync(resolve(__dirname, "build", "server.js"))) {
36
+ try {
37
+ execSync("npx tsc --silent", { cwd: __dirname, stdio: "pipe", timeout: 30000 });
38
+ } catch { /* best effort */ }
39
+ }
40
+ await import("./build/server.js");
41
+ }
package/start.sh DELETED
@@ -1,15 +0,0 @@
1
- #!/bin/sh
2
- CLAUDE_PROJECT_DIR="${CLAUDE_PROJECT_DIR:-$(pwd)}"
3
- DIR="$(cd "$(dirname "$0")" && pwd)"
4
- cd "$DIR"
5
-
6
- # Bundle exists (CI-built) — start instantly, install native module in background
7
- if [ -f server.bundle.mjs ]; then
8
- [ -d node_modules/better-sqlite3 ] || npm install better-sqlite3 --no-package-lock --no-save --silent 2>/dev/null &
9
- CLAUDE_PROJECT_DIR="$CLAUDE_PROJECT_DIR" exec node server.bundle.mjs
10
- fi
11
-
12
- # Fallback: no bundle (dev or npm install) — full build
13
- [ -d node_modules ] || npm install --silent 2>/dev/null
14
- [ -f build/server.js ] || npx tsc --silent 2>/dev/null
15
- CLAUDE_PROJECT_DIR="$CLAUDE_PROJECT_DIR" exec node build/server.js