@songsid/agend 2.1.1-beta.2 → 2.1.1-beta.21

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 (156) hide show
  1. package/README.md +1 -0
  2. package/README.zh-TW.md +1 -0
  3. package/dist/access-path.js +15 -6
  4. package/dist/access-path.js.map +1 -1
  5. package/dist/agent-cli-instructions.md +9 -0
  6. package/dist/backend/antigravity.d.ts +4 -1
  7. package/dist/backend/antigravity.js +24 -13
  8. package/dist/backend/antigravity.js.map +1 -1
  9. package/dist/backend/claude-code.d.ts +37 -0
  10. package/dist/backend/claude-code.js +47 -8
  11. package/dist/backend/claude-code.js.map +1 -1
  12. package/dist/backend/codex.d.ts +17 -0
  13. package/dist/backend/codex.js +279 -62
  14. package/dist/backend/codex.js.map +1 -1
  15. package/dist/backend/gemini-cli.js +4 -7
  16. package/dist/backend/gemini-cli.js.map +1 -1
  17. package/dist/backend/grok.d.ts +24 -0
  18. package/dist/backend/grok.js +57 -8
  19. package/dist/backend/grok.js.map +1 -1
  20. package/dist/backend/kiro.d.ts +27 -0
  21. package/dist/backend/kiro.js +96 -15
  22. package/dist/backend/kiro.js.map +1 -1
  23. package/dist/backend/opencode.js +4 -7
  24. package/dist/backend/opencode.js.map +1 -1
  25. package/dist/backend/types.d.ts +44 -0
  26. package/dist/backend/types.js +3 -3
  27. package/dist/backend/types.js.map +1 -1
  28. package/dist/channel/adapters/discord.d.ts +15 -0
  29. package/dist/channel/adapters/discord.js +94 -6
  30. package/dist/channel/adapters/discord.js.map +1 -1
  31. package/dist/channel/adapters/telegram.d.ts +21 -0
  32. package/dist/channel/adapters/telegram.js +132 -15
  33. package/dist/channel/adapters/telegram.js.map +1 -1
  34. package/dist/channel/ipc-bridge.d.ts +17 -1
  35. package/dist/channel/ipc-bridge.js +53 -17
  36. package/dist/channel/ipc-bridge.js.map +1 -1
  37. package/dist/channel/ipc-timeouts.d.ts +40 -0
  38. package/dist/channel/ipc-timeouts.js +58 -0
  39. package/dist/channel/ipc-timeouts.js.map +1 -0
  40. package/dist/channel/mcp-server.js +30 -14
  41. package/dist/channel/mcp-server.js.map +1 -1
  42. package/dist/channel/mcp-tools.js +28 -1
  43. package/dist/channel/mcp-tools.js.map +1 -1
  44. package/dist/channel/message-queue.d.ts +1 -0
  45. package/dist/channel/message-queue.js +49 -17
  46. package/dist/channel/message-queue.js.map +1 -1
  47. package/dist/channel/reconnect-backoff.d.ts +17 -0
  48. package/dist/channel/reconnect-backoff.js +21 -0
  49. package/dist/channel/reconnect-backoff.js.map +1 -0
  50. package/dist/channel/types.d.ts +29 -0
  51. package/dist/classic-channel-manager.js +1 -5
  52. package/dist/classic-channel-manager.js.map +1 -1
  53. package/dist/cli.js +148 -60
  54. package/dist/cli.js.map +1 -1
  55. package/dist/completion.d.ts +27 -0
  56. package/dist/completion.js +121 -0
  57. package/dist/completion.js.map +1 -0
  58. package/dist/config-validator.js +27 -0
  59. package/dist/config-validator.js.map +1 -1
  60. package/dist/config.js +6 -0
  61. package/dist/config.js.map +1 -1
  62. package/dist/cost-guard.d.ts +3 -1
  63. package/dist/cost-guard.js +3 -1
  64. package/dist/cost-guard.js.map +1 -1
  65. package/dist/daemon.d.ts +230 -13
  66. package/dist/daemon.js +975 -335
  67. package/dist/daemon.js.map +1 -1
  68. package/dist/event-log.d.ts +31 -0
  69. package/dist/event-log.js +96 -0
  70. package/dist/event-log.js.map +1 -1
  71. package/dist/fleet-context.d.ts +2 -0
  72. package/dist/fleet-manager.d.ts +209 -4
  73. package/dist/fleet-manager.js +813 -84
  74. package/dist/fleet-manager.js.map +1 -1
  75. package/dist/general-knowledge/skills/cross-instance-messaging/SKILL.md +22 -0
  76. package/dist/general-knowledge/skills/model-discovery/SKILL.md +14 -23
  77. package/dist/general-knowledge/skills/session-management/SKILL.md +15 -34
  78. package/dist/hang-detector.d.ts +19 -13
  79. package/dist/hang-detector.js +19 -49
  80. package/dist/hang-detector.js.map +1 -1
  81. package/dist/instance-lifecycle.d.ts +21 -1
  82. package/dist/instance-lifecycle.js +141 -7
  83. package/dist/instance-lifecycle.js.map +1 -1
  84. package/dist/instructions.d.ts +5 -0
  85. package/dist/instructions.js +10 -5
  86. package/dist/instructions.js.map +1 -1
  87. package/dist/locale.js +3 -0
  88. package/dist/locale.js.map +1 -1
  89. package/dist/logger.js +14 -0
  90. package/dist/logger.js.map +1 -1
  91. package/dist/mcp-liveness.d.ts +21 -0
  92. package/dist/mcp-liveness.js +27 -0
  93. package/dist/mcp-liveness.js.map +1 -0
  94. package/dist/outbound-handlers.d.ts +16 -0
  95. package/dist/outbound-handlers.js +121 -27
  96. package/dist/outbound-handlers.js.map +1 -1
  97. package/dist/outbound-schemas.d.ts +7 -2
  98. package/dist/outbound-schemas.js +13 -2
  99. package/dist/outbound-schemas.js.map +1 -1
  100. package/dist/pane-write-lock.d.ts +48 -0
  101. package/dist/pane-write-lock.js +73 -0
  102. package/dist/pane-write-lock.js.map +1 -0
  103. package/dist/process-memory.d.ts +31 -0
  104. package/dist/process-memory.js +79 -0
  105. package/dist/process-memory.js.map +1 -0
  106. package/dist/quickstart.js +17 -16
  107. package/dist/quickstart.js.map +1 -1
  108. package/dist/scheduler/db.js +3 -0
  109. package/dist/scheduler/db.js.map +1 -1
  110. package/dist/sd-notify.d.ts +45 -0
  111. package/dist/sd-notify.js +74 -3
  112. package/dist/sd-notify.js.map +1 -1
  113. package/dist/secret-file.d.ts +33 -0
  114. package/dist/secret-file.js +36 -0
  115. package/dist/secret-file.js.map +1 -0
  116. package/dist/setup-wizard.js +9 -7
  117. package/dist/setup-wizard.js.map +1 -1
  118. package/dist/tmux-control.d.ts +58 -5
  119. package/dist/tmux-control.js +107 -13
  120. package/dist/tmux-control.js.map +1 -1
  121. package/dist/tmux-manager.d.ts +47 -2
  122. package/dist/tmux-manager.js +103 -8
  123. package/dist/tmux-manager.js.map +1 -1
  124. package/dist/topic-commands.d.ts +43 -1
  125. package/dist/topic-commands.js +196 -66
  126. package/dist/topic-commands.js.map +1 -1
  127. package/dist/tui-glyphs.d.ts +25 -0
  128. package/dist/tui-glyphs.js +26 -0
  129. package/dist/tui-glyphs.js.map +1 -0
  130. package/dist/types.d.ts +19 -0
  131. package/dist/ui/view.html +291 -33
  132. package/dist/update-check.d.ts +22 -0
  133. package/dist/update-check.js +44 -0
  134. package/dist/update-check.js.map +1 -0
  135. package/dist/usage/providers.d.ts +50 -0
  136. package/dist/usage/providers.js +611 -0
  137. package/dist/usage/providers.js.map +1 -0
  138. package/dist/usage/usage-api.d.ts +50 -0
  139. package/dist/usage/usage-api.js +111 -0
  140. package/dist/usage/usage-api.js.map +1 -0
  141. package/dist/view-api.d.ts +10 -0
  142. package/dist/view-api.js +67 -14
  143. package/dist/view-api.js.map +1 -1
  144. package/dist/web-api.js +5 -2
  145. package/dist/web-api.js.map +1 -1
  146. package/package.json +4 -1
  147. package/templates/systemd.service.ejs +9 -1
  148. package/dist/channel/tool-tracker.d.ts +0 -13
  149. package/dist/channel/tool-tracker.js +0 -58
  150. package/dist/channel/tool-tracker.js.map +0 -1
  151. package/dist/daemon-entry.d.ts +0 -1
  152. package/dist/daemon-entry.js +0 -30
  153. package/dist/daemon-entry.js.map +0 -1
  154. package/dist/fleet-system-prompt.d.ts +0 -11
  155. package/dist/fleet-system-prompt.js +0 -61
  156. package/dist/fleet-system-prompt.js.map +0 -1
@@ -1,58 +0,0 @@
1
- export class ToolTracker {
2
- adapter;
3
- chatId;
4
- threadId;
5
- statusMessageId = null;
6
- lines = [];
7
- constructor(adapter, chatId, threadId) {
8
- this.adapter = adapter;
9
- this.chatId = chatId;
10
- this.threadId = threadId;
11
- }
12
- async onToolUse(toolName, input) {
13
- const summary = this.summarizeTool(toolName, input);
14
- this.lines.push(`🔧 ${summary}`);
15
- if (!this.statusMessageId) {
16
- // First tool — send new message
17
- const sent = await this.adapter.sendText(this.chatId, this.lines.join("\n"), { threadId: this.threadId });
18
- this.statusMessageId = sent.messageId;
19
- }
20
- else {
21
- // Subsequent — edit existing
22
- await this.adapter.editMessage(this.chatId, this.statusMessageId, this.lines.join("\n"), this.threadId);
23
- }
24
- }
25
- async onToolResult(toolName, _output) {
26
- // Find the last line matching this tool and mark it done
27
- for (let i = this.lines.length - 1; i >= 0; i--) {
28
- if (this.lines[i].includes(toolName) && this.lines[i].startsWith("🔧")) {
29
- this.lines[i] = this.lines[i].replace("🔧", "✅");
30
- break;
31
- }
32
- }
33
- if (this.statusMessageId) {
34
- await this.adapter.editMessage(this.chatId, this.statusMessageId, this.lines.join("\n"), this.threadId);
35
- }
36
- }
37
- reset() {
38
- this.statusMessageId = null;
39
- this.lines = [];
40
- }
41
- summarizeTool(name, input) {
42
- const inp = input;
43
- if (name === "Read")
44
- return `Read: ${inp.file_path ?? ""}`;
45
- if (name === "Edit")
46
- return `Edit: ${inp.file_path ?? ""}`;
47
- if (name === "Write")
48
- return `Write: ${inp.file_path ?? ""}`;
49
- if (name === "Bash")
50
- return `Bash: ${String(inp.command ?? "").slice(0, 60)}`;
51
- if (name === "Glob")
52
- return `Glob: ${inp.pattern ?? ""}`;
53
- if (name === "Grep")
54
- return `Grep: ${inp.pattern ?? ""}`;
55
- return name;
56
- }
57
- }
58
- //# sourceMappingURL=tool-tracker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool-tracker.js","sourceRoot":"","sources":["../../src/channel/tool-tracker.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,WAAW;IAKZ;IACA;IACA;IANF,eAAe,GAAkB,IAAI,CAAC;IACtC,KAAK,GAAa,EAAE,CAAC;IAE7B,YACU,OAAuB,EACvB,MAAc,EACd,QAAiB;QAFjB,YAAO,GAAP,OAAO,CAAgB;QACvB,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAS;IACxB,CAAC;IAEJ,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,KAAc;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,OAAO,EAAE,CAAC,CAAC;QAEjC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,gCAAgC;YAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1G,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,6BAA6B;YAC7B,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1G,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE,OAAgB;QACnD,yDAAyD;QACzD,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACjD,MAAM;YACR,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1G,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;IAEO,aAAa,CAAC,IAAY,EAAE,KAAc;QAChD,MAAM,GAAG,GAAG,KAAgC,CAAC;QAC7C,IAAI,IAAI,KAAK,MAAM;YAAE,OAAO,SAAS,GAAG,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,MAAM;YAAE,OAAO,SAAS,GAAG,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,UAAU,GAAG,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QAC7D,IAAI,IAAI,KAAK,MAAM;YAAE,OAAO,SAAS,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QAC9E,IAAI,IAAI,KAAK,MAAM;YAAE,OAAO,SAAS,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACzD,IAAI,IAAI,KAAK,MAAM;YAAE,OAAO,SAAS,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,30 +0,0 @@
1
- import { Daemon } from "./daemon.js";
2
- import { createLogger } from "./logger.js";
3
- const args = process.argv.slice(2);
4
- function getArg(name) {
5
- const idx = args.indexOf(name);
6
- return idx !== -1 ? args[idx + 1] : "";
7
- }
8
- const name = getArg("--instance");
9
- const instanceDir = getArg("--instance-dir");
10
- let config;
11
- try {
12
- config = JSON.parse(getArg("--config"));
13
- }
14
- catch (err) {
15
- console.error(`Failed to parse --config JSON: ${err.message}`);
16
- process.exit(1);
17
- }
18
- const topicMode = args.includes("--topic-mode");
19
- const daemon = new Daemon(name, config, instanceDir, topicMode, undefined, undefined, createLogger(config.log_level));
20
- daemon.start().catch((err) => {
21
- console.error("Daemon failed:", err);
22
- process.exit(1);
23
- });
24
- const shutdown = async () => {
25
- await daemon.stop();
26
- process.exit(0);
27
- };
28
- process.on("SIGTERM", shutdown);
29
- process.on("SIGINT", shutdown);
30
- //# sourceMappingURL=daemon-entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"daemon-entry.js","sourceRoot":"","sources":["../src/daemon-entry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAEnC,SAAS,MAAM,CAAC,IAAY;IAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACzC,CAAC;AAED,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AAClC,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC7C,IAAI,MAAsB,CAAC;AAC3B,IAAI,CAAC;IACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAC1C,CAAC;AAAC,OAAO,GAAG,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,kCAAmC,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AAChD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;AAEtH,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IAC3B,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;IAC1B,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC;AACF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAChC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Generates fleet context system prompt for AgEnD instances.
3
- *
4
- * This prompt is injected into every instance so the agent understands
5
- * its role in the fleet and knows how to communicate via MCP tools.
6
- */
7
- export interface FleetPromptParams {
8
- instanceName: string;
9
- workingDirectory: string;
10
- }
11
- export declare function generateFleetSystemPrompt(params: FleetPromptParams): string;
@@ -1,61 +0,0 @@
1
- /**
2
- * Generates fleet context system prompt for AgEnD instances.
3
- *
4
- * This prompt is injected into every instance so the agent understands
5
- * its role in the fleet and knows how to communicate via MCP tools.
6
- */
7
- export function generateFleetSystemPrompt(params) {
8
- const { instanceName, workingDirectory } = params;
9
- return `# AgEnD Fleet Context
10
-
11
- You are **${instanceName}**, an instance in a AgEnD (Agent Engineering Daemon) fleet.
12
- Your working directory is \`${workingDirectory}\`.
13
-
14
- ## Message Format
15
-
16
- User messages arrive as text in your prompt with a prefix:
17
- - \`[user:name]\` — message from a Telegram/Discord user. Reply using the \`reply\` tool.
18
- - \`[from:instance-name]\` — message from another fleet instance. Reply using \`send_to_instance\`.
19
-
20
- **Always use the \`reply\` tool for ALL responses to users.** Do not respond directly in the terminal.
21
-
22
- ## Available Fleet Tools
23
-
24
- ### Communication
25
- | Tool | Purpose |
26
- |------|---------|
27
- | \`reply\` | Send a response back to the user (Telegram/Discord) |
28
- | \`send_to_instance\` | Send a message to another instance |
29
- | \`request_information\` | Ask another instance a question |
30
- | \`delegate_task\` | Assign work to another instance |
31
- | \`report_result\` | Return results to a requester |
32
-
33
- ### Fleet Management
34
- | Tool | Purpose |
35
- |------|---------|
36
- | \`list_instances\` | Discover instances with status, description, tags |
37
- | \`describe_instance\` | Get detailed info about a specific instance |
38
- | \`start_instance\` | Start a stopped instance |
39
- | \`create_instance\` | Create a new instance in the fleet |
40
- | \`delete_instance\` | Remove an instance from the fleet |
41
- | \`replace_instance\` | Replace an instance with a fresh one (handover + delete + create) |
42
-
43
- ### Scheduling
44
- | Tool | Purpose |
45
- |------|---------|
46
- | \`create_schedule\` | Create a recurring cron or one-shot scheduled task |
47
- | \`list_schedules\` | List all schedules |
48
- | \`update_schedule\` | Update a schedule |
49
- | \`delete_schedule\` | Delete a schedule |
50
-
51
- ## Collaboration Rules
52
-
53
- 1. **Use fleet tools for cross-instance communication.** Never assume you can directly access another instance's files.
54
-
55
- 2. **Cross-instance messages appear as \`[from:instance-name]\`.** Reply using \`send_to_instance\` or \`report_result\`, NOT the \`reply\` tool.
56
-
57
- 3. **Discovery before assumption.** Use \`list_instances\` to find available instances before sending messages.
58
-
59
- 4. **Scope awareness.** You only have direct access to files under your own working directory.`;
60
- }
61
- //# sourceMappingURL=fleet-system-prompt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fleet-system-prompt.js","sourceRoot":"","sources":["../src/fleet-system-prompt.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,UAAU,yBAAyB,CAAC,MAAyB;IACjE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAAC;IAElD,OAAO;;YAEG,YAAY;8BACM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+FA+CiD,CAAC;AAChG,CAAC"}