@yagr/agent 0.2.6 → 0.2.8

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 (87) hide show
  1. package/README.md +35 -18
  2. package/dist/agent.d.ts +15 -1
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +35 -4
  5. package/dist/agent.js.map +1 -1
  6. package/dist/cli.js +194 -36
  7. package/dist/cli.js.map +1 -1
  8. package/dist/config/gateway-daemon.d.ts +10 -0
  9. package/dist/config/gateway-daemon.d.ts.map +1 -0
  10. package/dist/config/gateway-daemon.js +42 -0
  11. package/dist/config/gateway-daemon.js.map +1 -0
  12. package/dist/config/init-yagr-home.js +5 -4
  13. package/dist/config/init-yagr-home.js.map +1 -1
  14. package/dist/config/local-state.js +2 -2
  15. package/dist/config/local-state.js.map +1 -1
  16. package/dist/config/n8n-config-service.d.ts +8 -0
  17. package/dist/config/n8n-config-service.d.ts.map +1 -1
  18. package/dist/config/n8n-config-service.js +21 -2
  19. package/dist/config/n8n-config-service.js.map +1 -1
  20. package/dist/config/yagr-home.d.ts +4 -0
  21. package/dist/config/yagr-home.d.ts.map +1 -1
  22. package/dist/config/yagr-home.js +12 -4
  23. package/dist/config/yagr-home.js.map +1 -1
  24. package/dist/gateway/format-message.d.ts +25 -0
  25. package/dist/gateway/format-message.d.ts.map +1 -0
  26. package/dist/gateway/format-message.js +166 -0
  27. package/dist/gateway/format-message.js.map +1 -0
  28. package/dist/gateway/interactive-ui.d.ts.map +1 -1
  29. package/dist/gateway/interactive-ui.js +127 -15
  30. package/dist/gateway/interactive-ui.js.map +1 -1
  31. package/dist/gateway/manager.d.ts +7 -0
  32. package/dist/gateway/manager.d.ts.map +1 -1
  33. package/dist/gateway/manager.js +76 -0
  34. package/dist/gateway/manager.js.map +1 -1
  35. package/dist/gateway/telegram.d.ts.map +1 -1
  36. package/dist/gateway/telegram.js +70 -13
  37. package/dist/gateway/telegram.js.map +1 -1
  38. package/dist/gateway/webui.d.ts.map +1 -1
  39. package/dist/gateway/webui.js +23 -7
  40. package/dist/gateway/webui.js.map +1 -1
  41. package/dist/prompt/build-system-prompt.d.ts +11 -0
  42. package/dist/prompt/build-system-prompt.d.ts.map +1 -1
  43. package/dist/prompt/build-system-prompt.js +112 -57
  44. package/dist/prompt/build-system-prompt.js.map +1 -1
  45. package/dist/runtime/completion-gate.js +1 -1
  46. package/dist/runtime/completion-gate.js.map +1 -1
  47. package/dist/runtime/context-compaction.d.ts.map +1 -1
  48. package/dist/runtime/context-compaction.js +2 -7
  49. package/dist/runtime/context-compaction.js.map +1 -1
  50. package/dist/runtime/policy-hooks.d.ts.map +1 -1
  51. package/dist/runtime/policy-hooks.js +9 -1
  52. package/dist/runtime/policy-hooks.js.map +1 -1
  53. package/dist/runtime/run-engine.d.ts +12 -1
  54. package/dist/runtime/run-engine.d.ts.map +1 -1
  55. package/dist/runtime/run-engine.js +108 -61
  56. package/dist/runtime/run-engine.js.map +1 -1
  57. package/dist/setup/setup-wizard.d.ts +1 -1
  58. package/dist/setup/setup-wizard.d.ts.map +1 -1
  59. package/dist/setup/setup-wizard.js +40 -5
  60. package/dist/setup/setup-wizard.js.map +1 -1
  61. package/dist/setup/start-launcher.d.ts +2 -21
  62. package/dist/setup/start-launcher.d.ts.map +1 -1
  63. package/dist/setup/start-launcher.js +14 -63
  64. package/dist/setup/start-launcher.js.map +1 -1
  65. package/dist/setup.d.ts +1 -0
  66. package/dist/setup.d.ts.map +1 -1
  67. package/dist/setup.js +31 -7
  68. package/dist/setup.js.map +1 -1
  69. package/dist/tools/build-tools.d.ts +9 -3
  70. package/dist/tools/build-tools.d.ts.map +1 -1
  71. package/dist/tools/n8nac.d.ts +5 -3
  72. package/dist/tools/n8nac.d.ts.map +1 -1
  73. package/dist/tools/n8nac.js +7 -5
  74. package/dist/tools/n8nac.js.map +1 -1
  75. package/dist/tools/present-workflow-result.d.ts +4 -0
  76. package/dist/tools/present-workflow-result.d.ts.map +1 -1
  77. package/dist/tools/present-workflow-result.js +3 -3
  78. package/dist/tools/present-workflow-result.js.map +1 -1
  79. package/dist/tools/workspace-utils.js +2 -2
  80. package/dist/tools/workspace-utils.js.map +1 -1
  81. package/dist/types.d.ts +2 -0
  82. package/dist/types.d.ts.map +1 -1
  83. package/dist/webui/app.js +6 -3
  84. package/dist/webui/app.js.map +2 -2
  85. package/dist/webui/styles.css +34 -24
  86. package/dist/webui/styles.css.map +2 -2
  87. package/package.json +2 -2
package/README.md CHANGED
@@ -53,24 +53,21 @@ This connects three things:
53
53
 
54
54
  - your execution orchestrator connection, which is n8n today
55
55
  - your default model
56
- - your optional messaging integrations
56
+ - your optional messaging integrations, including Telegram
57
57
 
58
- ### 3. Start the agent
58
+ After onboarding, Yagr is ready. If you configured Telegram during onboarding, anyone who messages your bot will receive an automatic link to connect their chat — no extra step needed.
59
59
 
60
- ```bash
61
- yagr start
62
- ```
63
-
64
- `yagr start` now lets you choose whether to open the Web UI or the TUI. If you want to skip the prompt, use `yagr start webui` or `yagr start tui`.
65
-
66
- After setup, the day-to-day loop is:
60
+ ### Day-to-day commands
67
61
 
68
62
  ```bash
69
- yagr start
70
- yagr gateway status
71
- yagr telegram onboarding
63
+ yagr start # start gateways in the background (Telegram, etc.)
64
+ yagr tui # open a terminal chat session
65
+ yagr webui # open the local web interface
66
+ yagr stop # stop the background gateway
72
67
  ```
73
68
 
69
+ `yagr start` launches messaging gateways as a background daemon and returns to your shell. Use `yagr tui` or `yagr webui` at any time to open an interactive session directly.
70
+
74
71
  ### Inspect Or Reset Local State
75
72
 
76
73
  ```bash
@@ -98,6 +95,12 @@ npm uninstall -g @yagr/agent
98
95
  > </tr>
99
96
  > </table>
100
97
 
98
+ ---
99
+
100
+ > **⚠ n8n version compatibility** — The node schema bundled with n8n-as-code is built against the **latest stable release of n8n**. For best results, keep your n8n instance up to date. Using an outdated instance may cause generated workflows to reference node type-versions not yet supported by your instance, which n8n renders as broken nodes in the canvas.
101
+
102
+ ---
103
+
101
104
  Read next if you want more than the fast path:
102
105
 
103
106
  - [Yagr getting started](https://yagr.dev/docs/getting-started/)
@@ -240,14 +243,28 @@ Yagr stores that state in its own home so the product does not depend on whateve
240
243
 
241
244
  ---
242
245
 
243
- ## Products In This Repository
246
+ ### Troubleshooting
247
+
248
+ If gateways are not responding or something feels stuck:
244
249
 
245
- | Product | Role | Where to go |
246
- |---|---|---|
247
- | **Yagr** | Autonomous automation agent | [Yagr docs](https://yagr.dev/) |
248
- | **n8n-as-code** | Workflow GitOps, AI skill, schema grounding, VS Code extension, TypeScript workflows | [n8n-as-code page](https://n8nascode.dev/n8n-as-code/) |
250
+ ```bash
251
+ yagr stop # stop the background gateway daemon
252
+ yagr gateway status # check whether a daemon is currently running
253
+ yagr start # restart it
254
+ ```
255
+
256
+ If you need to re-share the Telegram onboarding link (for example when linking a second chat):
257
+
258
+ ```bash
259
+ yagr telegram onboarding
260
+ ```
261
+
262
+ To reset everything and start over:
249
263
 
250
- The previous root README for `n8n-as-code` is preserved as a dedicated product README in [products/n8n-as-code/README.md](products/n8n-as-code/README.md).
264
+ ```bash
265
+ yagr reset --dry-run
266
+ yagr reset --scope full --yes
267
+ ```
251
268
 
252
269
  ---
253
270
 
package/dist/agent.d.ts CHANGED
@@ -1,9 +1,19 @@
1
1
  import type { Engine } from './engine/engine.js';
2
+ import type { CoreMessage } from 'ai';
3
+ import { type SystemPromptSnapshot } from './prompt/build-system-prompt.js';
4
+ import { YagrRunEngine } from './runtime/run-engine.js';
2
5
  import type { DeployedWorkflow, GeneratedWorkflow, YagrRunOptions, YagrRunResult, WorkflowSpec, WorkflowValidationResult } from './types.js';
6
+ type YagrRunEngineLike = Pick<YagrRunEngine, 'execute'>;
7
+ interface YagrAgentDependencies {
8
+ buildPromptSnapshot?: (engine: Engine) => SystemPromptSnapshot;
9
+ createRunner?: (engine: Engine, history: readonly CoreMessage[], systemPrompt: string) => YagrRunEngineLike;
10
+ }
3
11
  export declare class YagrAgent {
4
12
  private readonly engine;
13
+ private readonly dependencies;
5
14
  private readonly history;
6
- constructor(engine: Engine);
15
+ private promptSnapshot;
16
+ constructor(engine: Engine, dependencies?: YagrAgentDependencies);
7
17
  plan(spec: WorkflowSpec): Promise<GeneratedWorkflow>;
8
18
  validate(generatedWorkflow: GeneratedWorkflow): Promise<WorkflowValidationResult>;
9
19
  create(spec: WorkflowSpec): Promise<{
@@ -17,5 +27,9 @@ export declare class YagrAgent {
17
27
  delete(id: string): Promise<void>;
18
28
  run(prompt: string, options?: YagrRunOptions): Promise<YagrRunResult>;
19
29
  clearConversation(): void;
30
+ private createPromptSnapshot;
31
+ private createRunner;
32
+ private syncPromptSnapshotBeforeRun;
20
33
  }
34
+ export {};
21
35
  //# sourceMappingURL=agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,YAAY,EACZ,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAEpB,qBAAa,SAAS;IAGR,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;gBAEhB,MAAM,EAAE,MAAM;IAErC,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIpD,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAIjF,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,iBAAiB,CAAC;QAAC,UAAU,EAAE,wBAAwB,CAAC;QAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;KAAE,CAAC;IAYvI,IAAI,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAInC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAInC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAW/E,iBAAiB,IAAI,IAAI;CAG1B"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AACtC,OAAO,EAA6B,KAAK,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvG,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,YAAY,EACZ,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAEpB,KAAK,iBAAiB,GAAG,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;AAExD,UAAU,qBAAqB;IAC7B,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,oBAAoB,CAAC;IAC/D,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,WAAW,EAAE,EAAE,YAAY,EAAE,MAAM,KAAK,iBAAiB,CAAC;CAC7G;AAED,qBAAa,SAAS;IAKlB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAL/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,cAAc,CAAuB;gBAG1B,MAAM,EAAE,MAAM,EACd,YAAY,GAAE,qBAA0B;IAKrD,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIpD,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAIjF,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,iBAAiB,CAAC;QAAC,UAAU,EAAE,wBAAwB,CAAC;QAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;KAAE,CAAC;IAYvI,IAAI,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAInC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAInC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IA0B/E,iBAAiB,IAAI,IAAI;IAKzB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,2BAA2B;CASpC"}
package/dist/agent.js CHANGED
@@ -1,9 +1,14 @@
1
+ import { buildSystemPromptSnapshot } from './prompt/build-system-prompt.js';
1
2
  import { YagrRunEngine } from './runtime/run-engine.js';
2
3
  export class YagrAgent {
3
4
  engine;
5
+ dependencies;
4
6
  history = [];
5
- constructor(engine) {
7
+ promptSnapshot;
8
+ constructor(engine, dependencies = {}) {
6
9
  this.engine = engine;
10
+ this.dependencies = dependencies;
11
+ this.promptSnapshot = this.createPromptSnapshot();
7
12
  }
8
13
  async plan(spec) {
9
14
  return this.engine.generateWorkflow(spec);
@@ -33,15 +38,41 @@ export class YagrAgent {
33
38
  return this.engine.deleteWorkflow(id);
34
39
  }
35
40
  async run(prompt, options = {}) {
36
- const runner = new YagrRunEngine(this.engine, this.history);
37
- const { result, persistedMessages } = await runner.execute(prompt, options);
38
- if (options.rememberConversation !== false) {
41
+ this.syncPromptSnapshotBeforeRun();
42
+ const runner = this.createRunner();
43
+ const { result, persistedMessages, workspaceInstructionsMayHaveChanged } = await runner.execute(prompt, options);
44
+ if (workspaceInstructionsMayHaveChanged) {
45
+ const nextSnapshot = this.createPromptSnapshot();
46
+ const promptChanged = nextSnapshot.systemPrompt !== this.promptSnapshot.systemPrompt;
47
+ this.promptSnapshot = nextSnapshot;
48
+ if (promptChanged) {
49
+ this.history.length = 0;
50
+ result.sessionInvalidated = true;
51
+ result.sessionInvalidationReason = 'Workspace instructions changed during the run. Conversation history was cleared and future runs will use the refreshed instruction set.';
52
+ }
53
+ }
54
+ if (options.rememberConversation !== false && !result.sessionInvalidated) {
39
55
  this.history.push(...persistedMessages);
40
56
  }
41
57
  return result;
42
58
  }
43
59
  clearConversation() {
44
60
  this.history.length = 0;
61
+ this.promptSnapshot = this.createPromptSnapshot();
62
+ }
63
+ createPromptSnapshot() {
64
+ return (this.dependencies.buildPromptSnapshot ?? buildSystemPromptSnapshot)(this.engine);
65
+ }
66
+ createRunner() {
67
+ return (this.dependencies.createRunner ?? ((engine, history, systemPrompt) => new YagrRunEngine(engine, history, systemPrompt)))(this.engine, this.history, this.promptSnapshot.systemPrompt);
68
+ }
69
+ syncPromptSnapshotBeforeRun() {
70
+ const nextSnapshot = this.createPromptSnapshot();
71
+ if (nextSnapshot.systemPrompt === this.promptSnapshot.systemPrompt) {
72
+ return;
73
+ }
74
+ this.history.length = 0;
75
+ this.promptSnapshot = nextSnapshot;
45
76
  }
46
77
  }
47
78
  //# sourceMappingURL=agent.js.map
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAUxD,MAAM,OAAO,SAAS;IAGS;IAFZ,OAAO,GAAkB,EAAE,CAAC;IAE7C,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE/C,KAAK,CAAC,IAAI,CAAC,IAAkB;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,iBAAoC;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAkB;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEjD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;QAClC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,EAAU;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAU;QACzB,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,UAA0B,EAAE;QACpD,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAE5E,IAAI,OAAO,CAAC,oBAAoB,KAAK,KAAK,EAAE,CAAC;YAC3C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1B,CAAC;CACF"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -1,14 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import './config/init-yagr-home.js';
3
3
  import os from 'node:os';
4
+ import { readFileSync } from 'node:fs';
5
+ import { fileURLToPath } from 'node:url';
4
6
  import { createN8nEngineFromWorkspace } from './config/load-n8n-engine-config.js';
5
7
  import { buildYagrCleanupPlan, resetYagrLocalState } from './config/local-state.js';
6
8
  import { YagrConfigService } from './config/yagr-config-service.js';
7
- import { getGatewaySupervisorStatus, runGatewaySupervisor, runGatewaySurfaces } from './gateway/manager.js';
9
+ import { getGatewaySupervisorStatus, getGatewayRunningBanner, runGatewaySupervisor, runGatewaySurfaces } from './gateway/manager.js';
8
10
  import { getTelegramGatewayStatus, resetTelegramGateway, runTelegramGateway, showTelegramOnboarding, setupTelegramGateway, } from './gateway/telegram.js';
9
11
  import { YagrAgent } from './agent.js';
10
- import { getYagrSetupStatus, runYagrSetup } from './setup.js';
11
- import { promptForStartAction } from './setup/start-launcher.js';
12
+ import { getYagrSetupStatus, refreshN8nWorkspaceInstructionsFromSavedConfig, runYagrSetup } from './setup.js';
12
13
  const VALID_PROVIDERS = [
13
14
  'anthropic',
14
15
  'openai',
@@ -25,6 +26,18 @@ function parseArgs(argv) {
25
26
  yes: false,
26
27
  dryRun: false,
27
28
  };
29
+ if (argv.length === 0) {
30
+ parsed.command = 'help';
31
+ return parsed;
32
+ }
33
+ if (argv[0] === '--help' || argv[0] === '-h') {
34
+ parsed.command = 'help';
35
+ return parsed;
36
+ }
37
+ if (argv[0] === '--version' || argv[0] === '-v' || argv[0] === '-V') {
38
+ parsed.command = 'version';
39
+ return parsed;
40
+ }
28
41
  let startIndex = 0;
29
42
  if (argv[0] === 'config' && argv[1] === 'show') {
30
43
  parsed.command = 'config-show';
@@ -46,6 +59,18 @@ function parseArgs(argv) {
46
59
  parsed.command = 'uninstall';
47
60
  startIndex = 1;
48
61
  }
62
+ if (argv[0] === 'stop') {
63
+ parsed.command = 'stop';
64
+ return parsed;
65
+ }
66
+ if (argv[0] === 'tui') {
67
+ parsed.command = 'tui';
68
+ return parsed;
69
+ }
70
+ if (argv[0] === 'webui') {
71
+ parsed.command = 'webui';
72
+ return parsed;
73
+ }
49
74
  if (argv[0] === 'setup' || argv[0] === 'onboard') {
50
75
  parsed.command = 'setup';
51
76
  startIndex = 1;
@@ -160,30 +185,63 @@ function parseArgs(argv) {
160
185
  }
161
186
  return parsed;
162
187
  }
163
- async function promptForStartActionWithFallback() {
164
- if (!process.stdin.isTTY || !process.stdout.isTTY) {
165
- return 'webui';
188
+ async function spawnGatewayDaemon(args) {
189
+ const { spawn } = await import('node:child_process');
190
+ const { writeGatewayPid } = await import('./config/gateway-daemon.js');
191
+ const extraArgs = [];
192
+ if (args.provider)
193
+ extraArgs.push('--provider', args.provider);
194
+ if (args.model)
195
+ extraArgs.push('--model', args.model);
196
+ if (args.maxSteps)
197
+ extraArgs.push('--max-steps', String(args.maxSteps));
198
+ const child = spawn(process.execPath, [process.argv[1], 'gateway', 'start', ...extraArgs], {
199
+ detached: true,
200
+ stdio: 'ignore',
201
+ env: { ...process.env },
202
+ });
203
+ child.unref();
204
+ if (!child.pid) {
205
+ throw new Error('Failed to spawn gateway daemon.');
166
206
  }
167
- return promptForStartAction();
207
+ writeGatewayPid(child.pid);
208
+ return child.pid;
168
209
  }
169
- async function resolveStartTarget(args, configService) {
170
- if (args.startTarget) {
171
- return args.startTarget;
172
- }
173
- for (;;) {
174
- const action = await promptForStartActionWithFallback();
175
- if (action === 'cancel') {
176
- return undefined;
177
- }
178
- if (action === 'onboard') {
179
- const completed = await runYagrSetup(configService);
180
- if (!completed) {
181
- return undefined;
182
- }
183
- continue;
184
- }
185
- return action;
210
+ async function runGatewayOrFallback(args, configService) {
211
+ await refreshN8nWorkspaceInstructionsAtLaunch();
212
+ const supervisorStatus = getGatewaySupervisorStatus(configService);
213
+ if (supervisorStatus.startableSurfaces.length === 0) {
214
+ process.stdout.write([
215
+ '',
216
+ 'Yagr is configured.',
217
+ 'No messaging gateways are enabled yet.',
218
+ ' \u00b7 Run `yagr tui` to open a terminal chat session.',
219
+ ' \u00b7 Run `yagr webui` to open the web interface.',
220
+ ' \u00b7 Run `yagr setup` to configure Telegram or other gateways.',
221
+ '',
222
+ ].join('\n'));
223
+ return;
224
+ }
225
+ const { isGatewayRunning, getGatewayLogPath } = await import('./config/gateway-daemon.js');
226
+ const running = isGatewayRunning();
227
+ if (running.running) {
228
+ process.stdout.write(`Gateway already running (PID ${running.pid}).\n`);
229
+ process.stdout.write(getGatewayRunningBanner(configService, running.pid));
230
+ return;
231
+ }
232
+ process.stdout.write('Starting Yagr gateway...\n');
233
+ const pid = await spawnGatewayDaemon(args);
234
+ // Give the daemon time to connect and fail fast if broken
235
+ await new Promise((resolve) => setTimeout(resolve, 2000));
236
+ try {
237
+ process.kill(pid, 0);
238
+ }
239
+ catch {
240
+ const { clearGatewayPid } = await import('./config/gateway-daemon.js');
241
+ clearGatewayPid();
242
+ throw new Error(`Gateway daemon failed to start. Check logs: ${getGatewayLogPath()}`);
186
243
  }
244
+ process.stdout.write(getGatewayRunningBanner(configService, pid));
187
245
  }
188
246
  async function runTui(args) {
189
247
  const engine = await createN8nEngineFromWorkspace();
@@ -208,8 +266,72 @@ async function runWebUi(args, configService) {
208
266
  maxSteps: args.maxSteps,
209
267
  }, configService);
210
268
  }
269
+ async function refreshN8nWorkspaceInstructionsAtLaunch() {
270
+ try {
271
+ await refreshN8nWorkspaceInstructionsFromSavedConfig();
272
+ }
273
+ catch (error) {
274
+ process.stderr.write(`Warning: n8n workspace instructions refresh failed during launch: ${error instanceof Error ? error.message : String(error)}\n`);
275
+ }
276
+ }
277
+ function getVersion() {
278
+ const pkgPath = fileURLToPath(new URL('../package.json', import.meta.url));
279
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
280
+ return pkg.version;
281
+ }
282
+ function printHelp() {
283
+ const help = `
284
+ Usage: yagr <command> [options]
285
+ yagr [prompt] Run agent with a one-shot prompt
286
+
287
+ Commands:
288
+ setup Run the setup wizard
289
+ start [tui|webui] Start configured gateway(s), or a specific UI
290
+ tui Open an interactive terminal chat session
291
+ webui Open the web interface
292
+ stop Stop the running gateway daemon
293
+
294
+ gateway start Start the gateway supervisor in the foreground
295
+ gateway status Show gateway status (JSON)
296
+
297
+ telegram setup Configure the Telegram gateway
298
+ telegram start Start the Telegram gateway in the foreground
299
+ telegram status Show Telegram gateway status (JSON)
300
+ telegram onboarding Show the Telegram onboarding/link URL
301
+ telegram reset Remove Telegram gateway configuration
302
+
303
+ config show Show current configuration (JSON)
304
+ config reset Clear all configuration and stored credentials
305
+ paths Show Yagr data paths (JSON)
306
+ reset Reset local state (requires --yes)
307
+ uninstall Remove all local data (requires --yes)
308
+
309
+ Agent options (for \`yagr [prompt]\` and most commands):
310
+ --provider <name> AI provider: ${VALID_PROVIDERS.join(', ')}
311
+ --model <name> Model name to use
312
+ --max-steps <n> Maximum number of agent steps
313
+ --interactive, -i Keep the session open after the prompt
314
+ --hide-thinking Hide agent thinking output
315
+ --hide-execution Hide tool execution output
316
+ --yes Auto-confirm destructive operations
317
+ --dry-run Preview without making changes
318
+
319
+ Info:
320
+ --version, -v Print version
321
+ --help, -h Show this help
322
+ `;
323
+ process.stdout.write(help);
324
+ }
211
325
  async function main() {
212
326
  const args = parseArgs(process.argv.slice(2));
327
+ if (args.command === 'version') {
328
+ process.stdout.write(`${getVersion()}\n`);
329
+ return;
330
+ }
331
+ if (args.command === 'help') {
332
+ printHelp();
333
+ return;
334
+ }
213
335
  const configService = new YagrConfigService();
214
336
  if (args.command) {
215
337
  if (args.command === 'paths') {
@@ -282,15 +404,7 @@ async function main() {
282
404
  if (!completed) {
283
405
  return;
284
406
  }
285
- const startTarget = await resolveStartTarget(args, configService);
286
- if (!startTarget) {
287
- return;
288
- }
289
- if (startTarget === 'webui') {
290
- await runWebUi(args, configService);
291
- return;
292
- }
293
- await runTui(args);
407
+ await runGatewayOrFallback(args, configService);
294
408
  return;
295
409
  }
296
410
  if (args.command === 'gateway-status') {
@@ -313,7 +427,22 @@ async function main() {
313
427
  return;
314
428
  }
315
429
  }
430
+ if (args.command === 'stop') {
431
+ const { isGatewayRunning, clearGatewayPid } = await import('./config/gateway-daemon.js');
432
+ const running = isGatewayRunning();
433
+ if (!running.running || !running.pid) {
434
+ process.stdout.write('No gateway is currently running.\n');
435
+ return;
436
+ }
437
+ process.kill(running.pid, 'SIGTERM');
438
+ // Give the process a moment to clean up, then ensure PID file is gone
439
+ await new Promise((resolve) => setTimeout(resolve, 500));
440
+ clearGatewayPid();
441
+ process.stdout.write(`Gateway stopped (PID ${running.pid}).\n`);
442
+ return;
443
+ }
316
444
  if (args.command === 'gateway-start') {
445
+ await refreshN8nWorkspaceInstructionsAtLaunch();
317
446
  await runGatewaySupervisor(async () => await createN8nEngineFromWorkspace(), {
318
447
  provider: args.provider,
319
448
  model: args.model,
@@ -329,18 +458,46 @@ async function main() {
329
458
  return;
330
459
  }
331
460
  }
332
- const startTarget = await resolveStartTarget(args, configService);
333
- if (!startTarget) {
461
+ if (args.startTarget === 'tui') {
462
+ await refreshN8nWorkspaceInstructionsAtLaunch();
463
+ await runTui(args);
334
464
  return;
335
465
  }
336
- if (startTarget === 'webui') {
466
+ if (args.startTarget === 'webui') {
467
+ await refreshN8nWorkspaceInstructionsAtLaunch();
337
468
  await runWebUi(args, configService);
338
469
  return;
339
470
  }
471
+ // No explicit target — start all configured gateways
472
+ await runGatewayOrFallback(args, configService);
473
+ return;
474
+ }
475
+ if (args.command === 'tui') {
476
+ const status = getYagrSetupStatus(configService);
477
+ if (!status.ready) {
478
+ const completed = await runYagrSetup(configService);
479
+ if (!completed) {
480
+ return;
481
+ }
482
+ }
483
+ await refreshN8nWorkspaceInstructionsAtLaunch();
340
484
  await runTui(args);
341
485
  return;
342
486
  }
487
+ if (args.command === 'webui') {
488
+ const status = getYagrSetupStatus(configService);
489
+ if (!status.ready) {
490
+ const completed = await runYagrSetup(configService);
491
+ if (!completed) {
492
+ return;
493
+ }
494
+ }
495
+ await refreshN8nWorkspaceInstructionsAtLaunch();
496
+ await runWebUi(args, configService);
497
+ return;
498
+ }
343
499
  if (args.command === 'telegram-start') {
500
+ await refreshN8nWorkspaceInstructionsAtLaunch();
344
501
  await runTelegramGateway(async () => await createN8nEngineFromWorkspace(), {
345
502
  provider: args.provider,
346
503
  model: args.model,
@@ -348,6 +505,7 @@ async function main() {
348
505
  }, configService);
349
506
  return;
350
507
  }
508
+ await refreshN8nWorkspaceInstructionsAtLaunch();
351
509
  const engine = await createN8nEngineFromWorkspace();
352
510
  const agent = new YagrAgent(engine);
353
511
  const { runCliGateway } = await import('./gateway/cli.js');
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAuB,MAAM,yBAAyB,CAAC;AACzG,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC5G,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAA0B,MAAM,2BAA2B,CAAC;AAEzF,MAAM,eAAe,GAAwB;IAC3C,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,SAAS;IACT,YAAY;CACb,CAAC;AAiBF,SAAS,SAAS,CAAC,IAAc;IAC/B,MAAM,MAAM,GAAe;QACzB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,IAAI;QACnB,GAAG,EAAE,KAAK;QACV,MAAM,EAAE,KAAK;KACd,CAAC;IAEF,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QAC/C,MAAM,CAAC,OAAO,GAAG,aAAa,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAChD,MAAM,CAAC,OAAO,GAAG,cAAc,CAAC;QAChC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACxB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACxB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,UAAU,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;QAC5B,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC;QAC7B,UAAU,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QACjD,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,UAAU,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACxB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,UAAU,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACjD,MAAM,CAAC,OAAO,GAAG,eAAe,CAAC;QACjC,UAAU,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAClD,MAAM,CAAC,OAAO,GAAG,gBAAgB,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAClD,MAAM,CAAC,OAAO,GAAG,gBAAgB,CAAC;QAClC,UAAU,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAClD,MAAM,CAAC,OAAO,GAAG,gBAAgB,CAAC;QAClC,UAAU,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QACnD,MAAM,CAAC,OAAO,GAAG,iBAAiB,CAAC;QACnC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC;QAC/E,MAAM,CAAC,OAAO,GAAG,qBAAqB,CAAC;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAClD,MAAM,CAAC,OAAO,GAAG,gBAAgB,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,IAAI,KAAK,GAAG,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC7D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAExB,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,IAAI,CAAC,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,KAAK,CAAC,EAAE,CAAC;YACrE,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC;YACzB,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,eAAe,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC5C,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;YAC1B,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAC9B,IAAI,KAAK,IAAI,eAAe,CAAC,QAAQ,CAAC,KAA0B,CAAC,EAAE,CAAC;gBAClE,MAAM,CAAC,QAAQ,GAAG,KAA0B,CAAC;gBAC7C,KAAK,IAAI,CAAC,CAAC;gBACX,SAAS;YACX,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9F,CAAC;QAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAC/B,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;YAC5E,CAAC;YACD,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;YACxB,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,iBAAiB,EAAE,CAAC;YAC9B,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC;YAC5B,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,uBAAuB,EAAE,CAAC;YACpC,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC;YAC5B,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,YAAY,IAAI,GAAG,KAAK,kBAAkB,EAAE,CAAC;YACvD,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC;YAC7B,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,2BAA2B,EAAE,CAAC;YACxC,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC;YAC7B,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC;YAClB,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;YACxB,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;YACrB,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAC9B,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gBACvE,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;gBAC1B,KAAK,IAAI,CAAC,CAAC;gBACX,SAAS;YACX,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC;YACpB,SAAS;QACX,CAAC;QAED,MAAM,CAAC,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;IAC5C,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,gCAAgC;IAC7C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,oBAAoB,EAAE,CAAC;AAChC,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,IAAgB,EAAE,aAAgC;IAClF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,SAAS,CAAC;QACR,MAAM,MAAM,GAAG,MAAM,gCAAgC,EAAE,CAAC;QAExD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,aAAa,CAAC,CAAC;YACpD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,SAAS;QACX,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,IAAgB;IACpC,MAAM,MAAM,GAAG,MAAM,4BAA4B,EAAE,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAE3D,MAAM,aAAa,CAAC,KAAK,EAAE;QACzB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,OAAO,EAAE;YACP,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC;KACF,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,IAAgB,EAAE,aAAgC;IACxE,MAAM,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,4BAA4B,EAAE,EAAE;QACpF,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,EAAE,aAAa,CAAC,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAE9C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG;gBACd,SAAS,EAAE,WAAW,CAAC,KAAK,CAAC,SAAS;gBACtC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO;gBAClC,EAAE,EAAE,OAAO,CAAC,QAAQ;gBACpB,KAAK,EAAE;oBACL,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,cAAc;oBAC5C,eAAe,EAAE,WAAW,CAAC,KAAK,CAAC,mBAAmB;oBACtD,SAAS,EAAE,WAAW,CAAC,KAAK,CAAC,aAAa;oBAC1C,cAAc,EAAE,WAAW,CAAC,KAAK,CAAC,kBAAkB;iBACrD;gBACD,MAAM,EAAE;oBACN,eAAe,EAAE,WAAW,CAAC,KAAK,CAAC,yBAAyB;oBAC5D,cAAc,EAAE,WAAW,CAAC,KAAK,CAAC,wBAAwB;iBAC3D;gBACD,SAAS,EAAE;oBACT,OAAO,EAAE,WAAW,CAAC,cAAc;oBACnC,iBAAiB,EAAE,WAAW,CAAC,uBAAuB;iBACvD;aACF,CAAC;YAEF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,cAAc,CAAC,CAAC;YAC1F,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,0FAA0F,CAAC,CAAC;YAC9G,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACzE,MAAM,OAAO,GAAG;gBACd,KAAK;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW;gBACpC,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,uBAAuB;aAC7D,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;gBACjC,MAAM,kBAAkB,GAAG,EAAE,CAAC,QAAQ,EAAE,KAAK,OAAO;oBAClD,CAAC,CAAC,8BAA8B;oBAChC,CAAC,CAAC,8BAA8B,CAAC;gBACnC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6DAA6D,kBAAkB,IAAI,CAAC,CAAC;YAC5G,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC;YACnD,MAAM,WAAW,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;YACtD,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACnD,QAAQ;gBACR,YAAY,EAAE,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC;aAChD,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAE1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YAC9F,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,cAAc,EAAE,CAAC;YACpC,aAAa,CAAC,gBAAgB,EAAE,CAAC;YACjC,aAAa,CAAC,eAAe,EAAE,CAAC;YAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACtC,MAAM,oBAAoB,CAAC,aAAa,CAAC,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,aAAa,CAAC,CAAC;YACpD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO;YACT,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;YAClE,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO;YACT,CAAC;YAED,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;gBAC5B,MAAM,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBACpC,OAAO;YACT,CAAC;YAED,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YACnB,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,0BAA0B,CAAC,aAAa,CAAC,CAAC;YACzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;YACvD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,qBAAqB,EAAE,CAAC;YAC3C,sBAAsB,CAAC,aAAa,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACtC,oBAAoB,CAAC,aAAa,CAAC,CAAC;YACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACtD,OAAO;QACT,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;QACrC,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,4BAA4B,EAAE,EAAE;YAC3E,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,EAAE,aAAa,CAAC,CAAC;QAClB,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,aAAa,CAAC,CAAC;YACpD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAClE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QAED,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;QACtC,MAAM,kBAAkB,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,4BAA4B,EAAE,EAAE;YACzE,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,EAAE,aAAa,CAAC,CAAC;QAClB,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,4BAA4B,EAAE,CAAC;IAEpD,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAE3D,MAAM,aAAa,CAAC,KAAK,EAAE;QACzB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,OAAO,EAAE;YACP,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC;KACF,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,OAAO,IAAI,CAAC,CAAC;IACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export declare function getGatewayPidPath(): string;
2
+ export declare function getGatewayLogPath(): string;
3
+ export declare function writeGatewayPid(pid: number): void;
4
+ export declare function readGatewayPid(): number | undefined;
5
+ export declare function clearGatewayPid(): void;
6
+ export declare function isGatewayRunning(): {
7
+ running: boolean;
8
+ pid?: number;
9
+ };
10
+ //# sourceMappingURL=gateway-daemon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gateway-daemon.d.ts","sourceRoot":"","sources":["../../src/config/gateway-daemon.ts"],"names":[],"mappings":"AAIA,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEjD;AAED,wBAAgB,cAAc,IAAI,MAAM,GAAG,SAAS,CAQnD;AAED,wBAAgB,eAAe,IAAI,IAAI,CAItC;AAED,wBAAgB,gBAAgB,IAAI;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAWrE"}
@@ -0,0 +1,42 @@
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import { getYagrHomeDir } from './yagr-home.js';
4
+ export function getGatewayPidPath() {
5
+ return path.join(getYagrHomeDir(), 'gateway.pid');
6
+ }
7
+ export function getGatewayLogPath() {
8
+ return path.join(getYagrHomeDir(), 'gateway.log');
9
+ }
10
+ export function writeGatewayPid(pid) {
11
+ fs.writeFileSync(getGatewayPidPath(), String(pid), 'utf8');
12
+ }
13
+ export function readGatewayPid() {
14
+ try {
15
+ const raw = fs.readFileSync(getGatewayPidPath(), 'utf8').trim();
16
+ const pid = parseInt(raw, 10);
17
+ return Number.isNaN(pid) ? undefined : pid;
18
+ }
19
+ catch {
20
+ return undefined;
21
+ }
22
+ }
23
+ export function clearGatewayPid() {
24
+ try {
25
+ fs.unlinkSync(getGatewayPidPath());
26
+ }
27
+ catch { /* already gone */ }
28
+ }
29
+ export function isGatewayRunning() {
30
+ const pid = readGatewayPid();
31
+ if (pid === undefined)
32
+ return { running: false };
33
+ try {
34
+ process.kill(pid, 0);
35
+ return { running: true, pid };
36
+ }
37
+ catch {
38
+ clearGatewayPid();
39
+ return { running: false };
40
+ }
41
+ }
42
+ //# sourceMappingURL=gateway-daemon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gateway-daemon.js","sourceRoot":"","sources":["../../src/config/gateway-daemon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,aAAa,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,aAAa,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QAChE,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC9B,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,MAAM,GAAG,GAAG,cAAc,EAAE,CAAC;IAC7B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAEjD,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,eAAe,EAAE,CAAC;QAClB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC"}
@@ -1,6 +1,7 @@
1
- import { ensureYagrHomeDir } from './yagr-home.js';
2
- const homeDir = ensureYagrHomeDir();
3
- if (process.cwd() !== homeDir) {
4
- process.chdir(homeDir);
1
+ import { ensureYagrHomeDir, getYagrN8nWorkspaceDir } from './yagr-home.js';
2
+ ensureYagrHomeDir();
3
+ const workspaceDir = getYagrN8nWorkspaceDir();
4
+ if (process.cwd() !== workspaceDir) {
5
+ process.chdir(workspaceDir);
5
6
  }
6
7
  //# sourceMappingURL=init-yagr-home.js.map