@loom-framework/core 0.1.0-alpha.176 → 0.1.0-alpha.178

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.
Files changed (57) hide show
  1. package/builtin-skills/app-skill/references/model.md +124 -0
  2. package/builtin-skills/app-skill/references/process-builder.md +4 -1
  3. package/builtin-skills/app-skill/references/process.md +9 -0
  4. package/dist/backend/lifecycle/manager.d.ts +14 -1
  5. package/dist/backend/lifecycle/manager.d.ts.map +1 -1
  6. package/dist/backend/lifecycle/manager.js +133 -8
  7. package/dist/backend/lifecycle/manager.js.map +1 -1
  8. package/dist/backend/process/engine.d.ts +1 -1
  9. package/dist/backend/process/engine.d.ts.map +1 -1
  10. package/dist/backend/process/engine.js +1 -3
  11. package/dist/backend/process/engine.js.map +1 -1
  12. package/dist/backend/process/registry.d.ts +1 -1
  13. package/dist/backend/process/registry.d.ts.map +1 -1
  14. package/dist/backend/process/registry.js.map +1 -1
  15. package/dist/backend/routes/ai-config.d.ts +5 -2
  16. package/dist/backend/routes/ai-config.d.ts.map +1 -1
  17. package/dist/backend/routes/ai-config.js +164 -40
  18. package/dist/backend/routes/ai-config.js.map +1 -1
  19. package/dist/backend/routes/process-routes.d.ts.map +1 -1
  20. package/dist/backend/routes/process-routes.js +3 -2
  21. package/dist/backend/routes/process-routes.js.map +1 -1
  22. package/dist/cli/commands/model.d.ts +9 -0
  23. package/dist/cli/commands/model.d.ts.map +1 -0
  24. package/dist/cli/commands/model.js +218 -0
  25. package/dist/cli/commands/model.js.map +1 -0
  26. package/dist/cli/commands/process.d.ts.map +1 -1
  27. package/dist/cli/commands/process.js +6 -0
  28. package/dist/cli/commands/process.js.map +1 -1
  29. package/dist/cli/index.d.ts.map +1 -1
  30. package/dist/cli/index.js +2 -0
  31. package/dist/cli/index.js.map +1 -1
  32. package/dist/cli/templates/login-page.d.ts +1 -1
  33. package/dist/cli/templates/login-page.js +1 -1
  34. package/dist/cli/templates/model-management-page.d.ts +1 -1
  35. package/dist/cli/templates/model-management-page.d.ts.map +1 -1
  36. package/dist/cli/templates/model-management-page.js +105 -36
  37. package/dist/cli/templates/model-management-page.js.map +1 -1
  38. package/dist/cli/templates/notification-center-page.d.ts +1 -1
  39. package/dist/cli/templates/notification-center-page.js +1 -1
  40. package/dist/cli/templates/notification-detail-page.d.ts +1 -1
  41. package/dist/cli/templates/notification-detail-page.js +1 -1
  42. package/dist/cli/templates/process-management-page.d.ts +1 -1
  43. package/dist/cli/templates/process-management-page.js +1 -1
  44. package/dist/cli/templates/skill-management-page.d.ts +1 -1
  45. package/dist/cli/templates/skill-management-page.js +1 -1
  46. package/dist/cli/templates/user-management-page.d.ts +1 -1
  47. package/dist/cli/templates/user-management-page.js +1 -1
  48. package/dist/config.d.ts +26 -8
  49. package/dist/config.d.ts.map +1 -1
  50. package/dist/config.js +2 -0
  51. package/dist/config.js.map +1 -1
  52. package/dist/dashboard-config.d.ts +6 -6
  53. package/dist/types/ai.d.ts +4 -0
  54. package/dist/types/ai.d.ts.map +1 -1
  55. package/dist/types/process.d.ts +2 -0
  56. package/dist/types/process.d.ts.map +1 -1
  57. package/package.json +1 -1
@@ -0,0 +1,124 @@
1
+ # Model CLI Reference
2
+
3
+ ## Overview
4
+
5
+ Model management commands configure AI models used by the Loom platform — for chat, Process execution, and AI-assisted features.
6
+
7
+ ## Commands
8
+
9
+ ### `loom model list`
10
+
11
+ List all configured AI models with their capability tier, tags, and default status.
12
+
13
+ ```bash
14
+ loom model list
15
+ ```
16
+
17
+ Output shows each model's name, capability tier (`[fast]`, `[standard]`, `[max]`), default marker, base URL, auth status, and tags.
18
+
19
+ ### `loom model add <name>`
20
+
21
+ Add a new AI model configuration.
22
+
23
+ ```bash
24
+ loom model add "claude-sonnet-4-6" \
25
+ --base-url "https://api.anthropic.com" \
26
+ --auth-token "sk-ant-..." \
27
+ --default \
28
+ --tier standard \
29
+ --tags "创作模型,多模态"
30
+ ```
31
+
32
+ **Options:**
33
+ | Flag | Required | Description |
34
+ |------|----------|-------------|
35
+ | `--base-url` | Yes | API base URL |
36
+ | `--auth-token` | No | Authentication token |
37
+ | `--default` | No | Set as default model (first model is auto-default) |
38
+ | `--tier` | No | Capability tier: `fast`, `standard`, or `max` |
39
+ | `--tags` | No | Comma-separated classification tags |
40
+ | `--token` | No | Auth token (or set LOOM_TOKEN) |
41
+ | `--server` | No | Server URL (or set LOOM_SERVER, default: http://localhost:3000) |
42
+
43
+ ### `loom model update <name>`
44
+
45
+ Update an existing model configuration.
46
+
47
+ ```bash
48
+ # Change capability tier
49
+ loom model update "claude-sonnet-4-6" --tier fast
50
+
51
+ # Set as default
52
+ loom model update "claude-opus-4-7" --default
53
+
54
+ # Update tags
55
+ loom model update "claude-sonnet-4-6" --tags "创作模型,多模态,代码"
56
+
57
+ # Clear capability tier
58
+ loom model update "claude-sonnet-4-6" --tier none
59
+
60
+ # Clear tags
61
+ loom model update "claude-sonnet-4-6" --tags ""
62
+ ```
63
+
64
+ **Options:**
65
+ | Flag | Required | Description |
66
+ |------|----------|-------------|
67
+ | `--base-url` | No | Update API base URL |
68
+ | `--auth-token` | No | Update authentication token |
69
+ | `--default` | No | Set as default model |
70
+ | `--tier` | No | Update capability tier (`fast`/`standard`/`max`, or `none` to clear) |
71
+ | `--tags` | No | Update tags (comma-separated, or `""` to clear) |
72
+ | `--token` | No | Auth token (or set LOOM_TOKEN) |
73
+ | `--server` | No | Server URL (or set LOOM_SERVER, default: http://localhost:3000) |
74
+
75
+ ### `loom model remove <name>`
76
+
77
+ Remove a model configuration. If the removed model was the default, the first remaining model becomes the new default.
78
+
79
+ ```bash
80
+ loom model remove "old-model"
81
+ ```
82
+
83
+ ## Capability Tiers
84
+
85
+ Capability tiers are informational labels for model capability:
86
+
87
+ | Tier | Meaning | Use Case |
88
+ |------|---------|----------|
89
+ | `fast` | Lightweight, quick responses | Simple data aggregation, formatting |
90
+ | `standard` | Balanced performance | General-purpose tasks |
91
+ | `max` | Strongest reasoning | Complex analysis, multi-step reasoning |
92
+
93
+ Capability tiers appear as colored tags in the AI Sidecar and ChatDrawer model selectors, and in Process overview when a model is bound.
94
+
95
+ ## Process Model Binding
96
+
97
+ When creating a Process, you can specify which model it uses:
98
+
99
+ ```bash
100
+ # Use a specific model for complex reasoning
101
+ loom process add --name "daily-analysis" \
102
+ --cron "0 2 * * *" \
103
+ --prompt "Analyze daily data and generate insights" \
104
+ --owner admin \
105
+ --model "claude-opus-4-7"
106
+
107
+ # Use a fast model for simple aggregation
108
+ loom process add --name "quick-summary" \
109
+ --cron "*/30 * * * *" \
110
+ --prompt "Summarize key metrics" \
111
+ --owner admin \
112
+ --model "claude-sonnet-4-6"
113
+ ```
114
+
115
+ If `--model` is omitted, the Process uses the global default model.
116
+
117
+ ## HTTP API Equivalents
118
+
119
+ | CLI Command | HTTP Endpoint |
120
+ |------------|---------------|
121
+ | `loom model list` | `GET /api/v1/ai/models` |
122
+ | `loom model add` | `POST /api/v1/ai/models` |
123
+ | `loom model update` | `PUT /api/v1/ai/models/:name` |
124
+ | `loom model remove` | `DELETE /api/v1/ai/models/:name` |
@@ -26,6 +26,7 @@ Identify:
26
26
  - **What** the process should do
27
27
  - **When** it should run (schedule or event trigger)
28
28
  - **Who** owns it (username for service token)
29
+ - **Which model** should run it (use `loom model list` to see available models; fast for simple tasks, max for complex reasoning; omit to use global default)
29
30
  - **Complexity** (lightweight vs full)
30
31
 
31
32
  ### 2. Choose Trigger
@@ -45,7 +46,8 @@ For lightweight:
45
46
  loom process add --name "task-summary" \
46
47
  --cron "0 9 * * *" \
47
48
  --prompt "Read all tasks created yesterday, summarize key themes, and post a digest" \
48
- --owner admin
49
+ --owner admin \
50
+ --model "claude-sonnet-4-6"
49
51
  ```
50
52
 
51
53
  For full:
@@ -170,6 +172,7 @@ _Only create the `references/` directory and add files when needed._
170
172
  - Use `loom data` commands for data operations, not direct file I/O
171
173
  - Include error handling in Decision Points
172
174
  - Add a notification step at the end of Flow to send execution results to yourself: `loom notification send --userId <owner> --type success --title "Process completed" --description "Summary of results" --token $LOOM_TOKEN`
175
+ - If your process needs strong reasoning, specify a max-level model via `--model` when creating it. Fast models are best for simple data aggregations.
173
176
 
174
177
  ## Metrics Definition
175
178
 
@@ -37,6 +37,13 @@ loom process add --name "health-check" \
37
37
  --prompt "Check system health" \
38
38
  --metrics-config ./metrics-config.json \
39
39
  --owner bot
40
+
41
+ # With a specific model
42
+ loom process add --name "complex-analysis" \
43
+ --cron "0 2 * * *" \
44
+ --prompt "Analyze daily data and generate insights" \
45
+ --owner admin \
46
+ --model "claude-opus-4-7"
40
47
  ```
41
48
 
42
49
  **Options:**
@@ -55,6 +62,7 @@ loom process add --name "health-check" \
55
62
  | `--owner-token` | No | Direct JWT token (bypasses runtime resolution) |
56
63
  | `--metrics-config` | No | Path to metrics DashboardWidget config JSON |
57
64
  | `--source` | No | Feeder script command (auto-registers lifecycle script + event subscription) |
65
+ | `--model` | No | AI model name for this process (must exist in model management; use `loom model list` to see available models) |
58
66
  | `--token` | No | Auth token (or set LOOM_TOKEN) |
59
67
  | `--server` | No | Server URL (or set LOOM_SERVER, default: http://localhost:3000) |
60
68
 
@@ -121,6 +129,7 @@ loom process update daily-summary --description "Updated description" --cron "0
121
129
  | `--event-debounce` | No | Update debounce window in ms |
122
130
  | `--prompt` | No | Update inline prompt |
123
131
  | `--description` | No | Update description |
132
+ | `--model` | No | Update AI model name (pass empty string to remove model binding) |
124
133
  | `--token` | No | Auth token (or set LOOM_TOKEN) |
125
134
  | `--server` | No | Server URL (or set LOOM_SERVER, default: http://localhost:3000) |
126
135
 
@@ -11,8 +11,9 @@ export declare class LifecycleManager {
11
11
  private projectRoot;
12
12
  private serverPort;
13
13
  private processes;
14
+ private pidDir;
14
15
  constructor(config: LifecycleConfig, eventBus: EventBus | undefined, projectRoot: string, serverPort?: number);
15
- /** Start all enabled lifecycle scripts. */
16
+ /** Start all enabled lifecycle scripts. Cleans up orphan processes from previous runs first. */
16
17
  startAll(): Promise<void>;
17
18
  /** Stop all running lifecycle scripts in parallel. */
18
19
  stopAll(): Promise<void>;
@@ -45,6 +46,18 @@ export declare class LifecycleManager {
45
46
  private clearTimers;
46
47
  private clearBackoff;
47
48
  private clearMemoryCheck;
49
+ /** Mark a process as stopped and clear start-time metadata. */
50
+ private markStopped;
51
+ /** Write PID file so we can clean up orphans after server restart. */
52
+ private writePidFile;
53
+ /** Remove PID file on clean stop/exit. */
54
+ private removePidFile;
55
+ /**
56
+ * Kill orphan processes from a previous server run.
57
+ * Reads PID files from .loom/.pids/, verifies the process still exists,
58
+ * and kills the entire process group before spawning new ones.
59
+ */
60
+ private cleanOrphanProcesses;
48
61
  private toScriptInfo;
49
62
  }
50
63
  //# sourceMappingURL=manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/backend/lifecycle/manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EAEf,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAwCvD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAA0C;gBAE/C,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;IAwB7G,2CAA2C;IACrC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAY/B,sDAAsD;IAChD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B,8CAA8C;IACxC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxC,6CAA6C;IACvC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvC,uCAAuC;IACjC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS1C,kDAAkD;IAClD,UAAU,IAAI,mBAAmB,EAAE;IAQnC,8CAA8C;IAC9C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS;IAMxD,2CAA2C;IAC3C,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAgBxC;;;;;OAKG;IACH,uBAAuB,CAAC,SAAS,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAsB7D,0DAA0D;IACpD,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB/C,OAAO,CAAC,YAAY;IAsHpB,OAAO,CAAC,WAAW;YAoEL,WAAW;IA4EzB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,WAAW;IAiEnB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,YAAY;CAarB"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/backend/lifecycle/manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EAEf,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAyCvD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;IAyB7G,gGAAgG;IAC1F,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAc/B,sDAAsD;IAChD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B,8CAA8C;IACxC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxC,6CAA6C;IACvC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvC,uCAAuC;IACjC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS1C,kDAAkD;IAClD,UAAU,IAAI,mBAAmB,EAAE;IAQnC,8CAA8C;IAC9C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS;IAMxD,2CAA2C;IAC3C,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAgBxC;;;;;OAKG;IACH,uBAAuB,CAAC,SAAS,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAsB7D,0DAA0D;IACpD,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB/C,OAAO,CAAC,YAAY;IA6HpB,OAAO,CAAC,WAAW;YAoEL,WAAW;IA6EzB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,WAAW;IAoEnB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,gBAAgB;IAOxB,+DAA+D;IAC/D,OAAO,CAAC,WAAW;IASnB,sEAAsE;YACxD,YAAY;IAS1B,0CAA0C;YAC5B,aAAa;IAQ3B;;;;OAIG;YACW,oBAAoB;IAyElC,OAAO,CAAC,YAAY;CAarB"}
@@ -4,6 +4,8 @@
4
4
  */
5
5
  import { spawn } from 'node:child_process';
6
6
  import { execSync } from 'node:child_process';
7
+ import fs from 'fs/promises';
8
+ import path from 'path';
7
9
  // ---------------------------------------------------------------------------
8
10
  // Defaults
9
11
  // ---------------------------------------------------------------------------
@@ -17,6 +19,7 @@ const DEFAULT_BACKOFF_MULTIPLIER = 2.0;
17
19
  const DEFAULT_MEMORY_LIMIT_MB = 512;
18
20
  const DEFAULT_ENABLED = true;
19
21
  const MEMORY_CHECK_INTERVAL_MS = 5_000;
22
+ const PID_DIR = '.loom/.pids';
20
23
  // ---------------------------------------------------------------------------
21
24
  // LifecycleManager
22
25
  // ---------------------------------------------------------------------------
@@ -26,11 +29,13 @@ export class LifecycleManager {
26
29
  projectRoot;
27
30
  serverPort;
28
31
  processes = new Map();
32
+ pidDir;
29
33
  constructor(config, eventBus, projectRoot, serverPort) {
30
34
  this.config = config;
31
35
  this.eventBus = eventBus;
32
36
  this.projectRoot = projectRoot;
33
37
  this.serverPort = serverPort ?? Number(process.env.LOOM_SERVER_PORT ?? 3000);
38
+ this.pidDir = path.join(projectRoot, PID_DIR);
34
39
  // Initialize managed processes from config
35
40
  for (const script of config.onReady) {
36
41
  this.processes.set(script.name, {
@@ -47,8 +52,9 @@ export class LifecycleManager {
47
52
  // -----------------------------------------------------------------------
48
53
  // Public API
49
54
  // -----------------------------------------------------------------------
50
- /** Start all enabled lifecycle scripts. */
55
+ /** Start all enabled lifecycle scripts. Cleans up orphan processes from previous runs first. */
51
56
  async startAll() {
57
+ await this.cleanOrphanProcesses();
52
58
  for (const script of this.config.onReady) {
53
59
  if (script.enabled === false) {
54
60
  continue;
@@ -226,6 +232,8 @@ export class LifecycleManager {
226
232
  proc.status = 'running';
227
233
  proc.startedAt = new Date().toISOString();
228
234
  proc.pid = child.pid;
235
+ proc.lastError = undefined;
236
+ this.writePidFile(proc.name, child.pid);
229
237
  this.eventBus?.emit(`lifecycle:started:${proc.name}`, {
230
238
  name: proc.name,
231
239
  pid: child.pid,
@@ -238,6 +246,10 @@ export class LifecycleManager {
238
246
  proc.status = 'running';
239
247
  proc.startedAt = new Date().toISOString();
240
248
  proc.pid = child.pid ?? undefined;
249
+ proc.lastError = undefined;
250
+ if (child.pid) {
251
+ this.writePidFile(proc.name, child.pid);
252
+ }
241
253
  this.eventBus?.emit(`lifecycle:started:${proc.name}`, {
242
254
  name: proc.name,
243
255
  pid: child.pid,
@@ -248,10 +260,11 @@ export class LifecycleManager {
248
260
  // Handle exit
249
261
  child.on('exit', (code, signal) => {
250
262
  this.clearTimers(proc);
263
+ this.removePidFile(proc.name);
251
264
  proc.pid = undefined;
252
265
  if (proc.status === 'stopping') {
253
- // We initiated the stop
254
- proc.status = 'stopped';
266
+ // We initiated the stop — do not restart
267
+ this.markStopped(proc);
255
268
  this.eventBus?.emit(`lifecycle:stopped:${proc.name}`, {
256
269
  name: proc.name,
257
270
  code,
@@ -260,8 +273,8 @@ export class LifecycleManager {
260
273
  return;
261
274
  }
262
275
  if (code === 0) {
263
- // Normal exit — do not restart
264
- proc.status = 'stopped';
276
+ // Normal exit (e.g. script finished on its own) — do not restart
277
+ this.markStopped(proc);
265
278
  this.eventBus?.emit(`lifecycle:stopped:${proc.name}`, {
266
279
  name: proc.name,
267
280
  code,
@@ -269,7 +282,7 @@ export class LifecycleManager {
269
282
  });
270
283
  }
271
284
  else {
272
- // Abnormal exit — handle as crash
285
+ // Abnormal exit (non-zero code or killed by signal) — handle as crash (may restart)
273
286
  this.handleCrash(proc, code, signal);
274
287
  }
275
288
  });
@@ -334,8 +347,9 @@ export class LifecycleManager {
334
347
  // -----------------------------------------------------------------------
335
348
  async stopProcess(proc) {
336
349
  this.clearTimers(proc);
350
+ this.removePidFile(proc.name);
337
351
  if (!proc.childProcess || proc.childProcess.killed) {
338
- proc.status = 'stopped';
352
+ this.markStopped(proc);
339
353
  proc.childProcess = null;
340
354
  return;
341
355
  }
@@ -351,7 +365,7 @@ export class LifecycleManager {
351
365
  const done = () => {
352
366
  if (!resolved) {
353
367
  resolved = true;
354
- proc.status = 'stopped';
368
+ this.markStopped(proc);
355
369
  proc.childProcess = null;
356
370
  resolve();
357
371
  }
@@ -429,6 +443,8 @@ export class LifecycleManager {
429
443
  rssMb: Math.round(rssKb / 1024),
430
444
  limitMb,
431
445
  });
446
+ // Mark as stopping so the exit handler doesn't treat this as a crash
447
+ proc.status = 'stopping';
432
448
  // Graceful kill: SIGTERM then SIGKILL after timeout
433
449
  const shutdownMs = proc.config.shutdownTimeoutMs ?? DEFAULT_SHUTDOWN_TIMEOUT_MS;
434
450
  try {
@@ -482,6 +498,115 @@ export class LifecycleManager {
482
498
  proc.memoryCheckTimer = undefined;
483
499
  }
484
500
  }
501
+ /** Mark a process as stopped and clear start-time metadata. */
502
+ markStopped(proc) {
503
+ proc.status = 'stopped';
504
+ proc.startedAt = undefined;
505
+ }
506
+ // -----------------------------------------------------------------------
507
+ // PID file management & orphan cleanup
508
+ // -----------------------------------------------------------------------
509
+ /** Write PID file so we can clean up orphans after server restart. */
510
+ async writePidFile(name, pid) {
511
+ try {
512
+ await fs.mkdir(this.pidDir, { recursive: true });
513
+ await fs.writeFile(path.join(this.pidDir, `${name}.pid`), String(pid), 'utf-8');
514
+ }
515
+ catch {
516
+ // Non-critical — best effort
517
+ }
518
+ }
519
+ /** Remove PID file on clean stop/exit. */
520
+ async removePidFile(name) {
521
+ try {
522
+ await fs.unlink(path.join(this.pidDir, `${name}.pid`)).catch(() => { });
523
+ }
524
+ catch {
525
+ // Non-critical
526
+ }
527
+ }
528
+ /**
529
+ * Kill orphan processes from a previous server run.
530
+ * Reads PID files from .loom/.pids/, verifies the process still exists,
531
+ * and kills the entire process group before spawning new ones.
532
+ */
533
+ async cleanOrphanProcesses() {
534
+ try {
535
+ const entries = await fs.readdir(this.pidDir).catch(() => []);
536
+ const pidFiles = entries.filter(f => f.endsWith('.pid'));
537
+ for (const pidFile of pidFiles) {
538
+ const filePath = path.join(this.pidDir, pidFile);
539
+ try {
540
+ const pidStr = await fs.readFile(filePath, 'utf-8');
541
+ const pid = parseInt(pidStr.trim(), 10);
542
+ if (isNaN(pid)) {
543
+ await fs.unlink(filePath).catch(() => { });
544
+ continue;
545
+ }
546
+ // Check if the process still exists
547
+ try {
548
+ process.kill(pid, 0); // signal 0 = existence check
549
+ }
550
+ catch {
551
+ // Process doesn't exist anymore — just clean up the PID file
552
+ await fs.unlink(filePath).catch(() => { });
553
+ continue;
554
+ }
555
+ // Process is still alive — kill the entire process group
556
+ console.log(`[lifecycle] Cleaning up orphan process: ${pidFile.replace('.pid', '')} (PID ${pid}, PGID ${pid})`);
557
+ try {
558
+ process.kill(-pid, 'SIGTERM');
559
+ }
560
+ catch {
561
+ // Process group may not exist, try killing just the process
562
+ try {
563
+ process.kill(pid, 'SIGTERM');
564
+ }
565
+ catch {
566
+ // Already dead
567
+ }
568
+ }
569
+ // Give it a moment, then force kill if still alive
570
+ await new Promise((resolve) => {
571
+ const forceTimer = setTimeout(() => {
572
+ try {
573
+ process.kill(-pid, 'SIGKILL');
574
+ }
575
+ catch { /* already dead */ }
576
+ try {
577
+ process.kill(pid, 'SIGKILL');
578
+ }
579
+ catch { /* already dead */ }
580
+ resolve();
581
+ }, 3_000);
582
+ // Poll for process exit
583
+ const checkInterval = setInterval(() => {
584
+ try {
585
+ process.kill(pid, 0);
586
+ }
587
+ catch {
588
+ // Process is gone
589
+ clearInterval(checkInterval);
590
+ clearTimeout(forceTimer);
591
+ resolve();
592
+ }
593
+ }, 200);
594
+ });
595
+ await fs.unlink(filePath).catch(() => { });
596
+ }
597
+ catch (err) {
598
+ console.error(`[lifecycle] Error cleaning up orphan ${pidFile}:`, err instanceof Error ? err.message : String(err));
599
+ }
600
+ }
601
+ if (pidFiles.length > 0) {
602
+ // Ensure PID directory exists for new runs
603
+ await fs.mkdir(this.pidDir, { recursive: true });
604
+ }
605
+ }
606
+ catch {
607
+ // Non-critical — best effort
608
+ }
609
+ }
485
610
  toScriptInfo(proc) {
486
611
  return {
487
612
  name: proc.name,
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/backend/lifecycle/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/backend/lifecycle/manager.ts"],"names":[],"mappings":"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"}
@@ -49,7 +49,7 @@ export declare class ProcessEngine {
49
49
  removeProcess(name: string): Promise<boolean>;
50
50
  pauseProcess(name: string): Promise<void>;
51
51
  resumeProcess(name: string): Promise<void>;
52
- updateProcess(name: string, updates: Partial<Pick<ProcessDefinition, 'description' | 'cron' | 'cronTimezone' | 'onEvent' | 'eventFilter' | 'eventDebounceMs' | 'prompt' | 'paused' | 'metricsConfig' | 'source'>>): Promise<ProcessDefinition | undefined>;
52
+ updateProcess(name: string, updates: Partial<Pick<ProcessDefinition, 'description' | 'cron' | 'cronTimezone' | 'onEvent' | 'eventFilter' | 'eventDebounceMs' | 'prompt' | 'paused' | 'metricsConfig' | 'source' | 'model'>>): Promise<ProcessDefinition | undefined>;
53
53
  runProcess(name: string, triggerType: 'cron' | 'event' | 'manual', eventPayload?: Record<string, unknown>): Promise<string>;
54
54
  /** Build AI prompt from process definition */
55
55
  buildProcessPrompt(definition: ProcessDefinition, runId: string, triggerType: 'cron' | 'event' | 'manual', eventPayload?: Record<string, unknown>): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/backend/process/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/backend/process/engine.ts"],"names":[],"mappings":"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"}
@@ -437,15 +437,13 @@ Instructions:
437
437
  try {
438
438
  const options = {
439
439
  sessionId,
440
- // Each process execution creates a fresh session, so claudeSessionId is always
441
- // undefined on the first run. Subsequent runs of the same process still start
442
- // fresh sessions. This is by design: process executions are isolated.
443
440
  resumeSessionId: session.claudeSessionId,
444
441
  userToken,
445
442
  timeout,
446
443
  serverUrl: this.serverUrl,
447
444
  processName: definition.name,
448
445
  runId: entry.runId,
446
+ model: definition.model,
449
447
  };
450
448
  if (files && files.length > 0) {
451
449
  options.files = files;