@llmtune/cli 0.1.8 → 0.2.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.
Files changed (194) hide show
  1. package/README.md +206 -181
  2. package/dist/agent/conversation.d.ts.map +1 -0
  3. package/dist/agent/conversation.js.map +1 -0
  4. package/dist/agent/loop.d.ts.map +1 -0
  5. package/dist/agent/loop.js +45 -11
  6. package/dist/agent/loop.js.map +1 -0
  7. package/dist/agent/planner.d.ts.map +1 -0
  8. package/dist/agent/planner.js.map +1 -0
  9. package/dist/auth/client.d.ts.map +1 -0
  10. package/dist/auth/client.js.map +1 -0
  11. package/dist/auth/config.d.ts.map +1 -0
  12. package/dist/auth/config.js.map +1 -0
  13. package/dist/commands/balance.d.ts +2 -0
  14. package/dist/commands/balance.d.ts.map +1 -0
  15. package/dist/commands/balance.js +65 -0
  16. package/dist/commands/balance.js.map +1 -0
  17. package/dist/commands/chat.d.ts.map +1 -0
  18. package/dist/commands/chat.js +15 -11
  19. package/dist/commands/chat.js.map +1 -0
  20. package/dist/commands/config.d.ts.map +1 -0
  21. package/dist/commands/config.js.map +1 -0
  22. package/dist/commands/doctor.d.ts +2 -0
  23. package/dist/commands/doctor.d.ts.map +1 -0
  24. package/dist/commands/doctor.js +212 -0
  25. package/dist/commands/doctor.js.map +1 -0
  26. package/dist/commands/login.d.ts.map +1 -0
  27. package/dist/commands/login.js +3 -1
  28. package/dist/commands/login.js.map +1 -0
  29. package/dist/commands/marketplace.d.ts.map +1 -0
  30. package/dist/commands/marketplace.js.map +1 -0
  31. package/dist/commands/models.d.ts.map +1 -0
  32. package/dist/commands/models.js +9 -15
  33. package/dist/commands/models.js.map +1 -0
  34. package/dist/commands/update.d.ts +6 -0
  35. package/dist/commands/update.d.ts.map +1 -0
  36. package/dist/commands/update.js +115 -0
  37. package/dist/commands/update.js.map +1 -0
  38. package/dist/compact/auto-compact.d.ts.map +1 -0
  39. package/dist/compact/auto-compact.js.map +1 -0
  40. package/dist/compact/budget.d.ts.map +1 -0
  41. package/dist/compact/budget.js +18 -0
  42. package/dist/compact/budget.js.map +1 -0
  43. package/dist/compact/history-store.d.ts.map +1 -0
  44. package/dist/compact/history-store.js.map +1 -0
  45. package/dist/compact/microcompact.d.ts.map +1 -0
  46. package/dist/compact/microcompact.js.map +1 -0
  47. package/dist/compact/service.d.ts.map +1 -0
  48. package/dist/compact/service.js.map +1 -0
  49. package/dist/context/agent-identity.d.ts.map +1 -0
  50. package/dist/context/agent-identity.js +19 -0
  51. package/dist/context/agent-identity.js.map +1 -0
  52. package/dist/context/analyzer.d.ts.map +1 -0
  53. package/dist/context/analyzer.js.map +1 -0
  54. package/dist/context/builder.d.ts.map +1 -0
  55. package/dist/context/builder.js +7 -0
  56. package/dist/context/builder.js.map +1 -0
  57. package/dist/context/cache.d.ts.map +1 -0
  58. package/dist/context/cache.js +110 -0
  59. package/dist/context/cache.js.map +1 -0
  60. package/dist/context/git-context.d.ts.map +1 -0
  61. package/dist/context/git-context.js.map +1 -0
  62. package/dist/context/llmtune-md.d.ts.map +1 -0
  63. package/dist/context/llmtune-md.js.map +1 -0
  64. package/dist/context/project-detect.d.ts +26 -0
  65. package/dist/context/project-detect.d.ts.map +1 -0
  66. package/dist/context/project-detect.js +213 -0
  67. package/dist/context/project-detect.js.map +1 -0
  68. package/dist/context/workspace.d.ts.map +1 -0
  69. package/dist/context/workspace.js +2 -1
  70. package/dist/context/workspace.js.map +1 -0
  71. package/dist/index.d.ts.map +1 -0
  72. package/dist/index.js +57 -5
  73. package/dist/index.js.map +1 -0
  74. package/dist/marketplace/client.d.ts.map +1 -0
  75. package/dist/marketplace/client.js.map +1 -0
  76. package/dist/memory/files.d.ts.map +1 -0
  77. package/dist/memory/files.js.map +1 -0
  78. package/dist/memory/service.d.ts +2 -1
  79. package/dist/memory/service.d.ts.map +1 -0
  80. package/dist/memory/service.js +1 -0
  81. package/dist/memory/service.js.map +1 -0
  82. package/dist/repl/auto-save.d.ts +14 -0
  83. package/dist/repl/auto-save.d.ts.map +1 -0
  84. package/dist/repl/auto-save.js +101 -0
  85. package/dist/repl/auto-save.js.map +1 -0
  86. package/dist/repl/repl.d.ts +1 -0
  87. package/dist/repl/repl.d.ts.map +1 -0
  88. package/dist/repl/repl.js +296 -34
  89. package/dist/repl/repl.js.map +1 -0
  90. package/dist/skills/args.d.ts.map +1 -0
  91. package/dist/skills/args.js.map +1 -0
  92. package/dist/skills/frontmatter.d.ts.map +1 -0
  93. package/dist/skills/frontmatter.js.map +1 -0
  94. package/dist/skills/loader.d.ts.map +1 -0
  95. package/dist/skills/loader.js.map +1 -0
  96. package/dist/skills/registry.d.ts.map +1 -0
  97. package/dist/skills/registry.js.map +1 -0
  98. package/dist/skills/signing/signer.d.ts.map +1 -0
  99. package/dist/skills/signing/signer.js.map +1 -0
  100. package/dist/skills/trust.d.ts.map +1 -0
  101. package/dist/skills/trust.js.map +1 -0
  102. package/dist/telemetry/logger.d.ts.map +1 -0
  103. package/dist/telemetry/logger.js.map +1 -0
  104. package/dist/tools/permissions.d.ts +2 -0
  105. package/dist/tools/permissions.d.ts.map +1 -0
  106. package/dist/tools/permissions.js +9 -0
  107. package/dist/tools/permissions.js.map +1 -0
  108. package/dist/tools/protocol.d.ts.map +1 -0
  109. package/dist/tools/protocol.js.map +1 -0
  110. package/dist/tools/registry.d.ts.map +1 -0
  111. package/dist/tools/registry.js.map +1 -0
  112. package/dist/tools/sandbox/docker.d.ts.map +1 -0
  113. package/dist/tools/sandbox/docker.js.map +1 -0
  114. package/dist/tools/sandbox/index.d.ts.map +1 -0
  115. package/dist/tools/sandbox/index.js.map +1 -0
  116. package/dist/tools/sanitize.d.ts +10 -0
  117. package/dist/tools/sanitize.d.ts.map +1 -0
  118. package/dist/tools/sanitize.js +87 -0
  119. package/dist/tools/sanitize.js.map +1 -0
  120. package/dist/tools/tools/ask-user.d.ts.map +1 -0
  121. package/dist/tools/tools/ask-user.js.map +1 -0
  122. package/dist/tools/tools/bash.d.ts.map +1 -0
  123. package/dist/tools/tools/bash.js +52 -1
  124. package/dist/tools/tools/bash.js.map +1 -0
  125. package/dist/tools/tools/edit.d.ts.map +1 -0
  126. package/dist/tools/tools/edit.js +9 -2
  127. package/dist/tools/tools/edit.js.map +1 -0
  128. package/dist/tools/tools/glob.d.ts.map +1 -0
  129. package/dist/tools/tools/glob.js.map +1 -0
  130. package/dist/tools/tools/grep.d.ts.map +1 -0
  131. package/dist/tools/tools/grep.js +6 -8
  132. package/dist/tools/tools/grep.js.map +1 -0
  133. package/dist/tools/tools/read.d.ts.map +1 -0
  134. package/dist/tools/tools/read.js +7 -4
  135. package/dist/tools/tools/read.js.map +1 -0
  136. package/dist/tools/tools/web-fetch.d.ts.map +1 -0
  137. package/dist/tools/tools/web-fetch.js +74 -99
  138. package/dist/tools/tools/web-fetch.js.map +1 -0
  139. package/dist/tools/tools/write.d.ts.map +1 -0
  140. package/dist/tools/tools/write.js +13 -7
  141. package/dist/tools/tools/write.js.map +1 -0
  142. package/dist/tools/validation.d.ts.map +1 -0
  143. package/dist/tools/validation.js.map +1 -0
  144. package/dist/ui/banner.d.ts +2 -0
  145. package/dist/ui/banner.d.ts.map +1 -0
  146. package/dist/ui/banner.js +29 -0
  147. package/dist/ui/banner.js.map +1 -0
  148. package/dist/utils/diff.d.ts +38 -0
  149. package/dist/utils/diff.d.ts.map +1 -0
  150. package/dist/utils/diff.js +184 -0
  151. package/dist/utils/diff.js.map +1 -0
  152. package/dist/utils/errors.d.ts +32 -0
  153. package/dist/utils/errors.d.ts.map +1 -0
  154. package/dist/utils/errors.js +72 -0
  155. package/dist/utils/errors.js.map +1 -0
  156. package/dist/utils/ignore.d.ts +22 -0
  157. package/dist/utils/ignore.d.ts.map +1 -0
  158. package/dist/utils/ignore.js +205 -0
  159. package/dist/utils/ignore.js.map +1 -0
  160. package/dist/utils/input-history.d.ts +37 -0
  161. package/dist/utils/input-history.d.ts.map +1 -0
  162. package/dist/utils/input-history.js +142 -0
  163. package/dist/utils/input-history.js.map +1 -0
  164. package/dist/utils/markdown.d.ts.map +1 -0
  165. package/dist/utils/markdown.js.map +1 -0
  166. package/dist/utils/rate-limit.d.ts +36 -0
  167. package/dist/utils/rate-limit.d.ts.map +1 -0
  168. package/dist/utils/rate-limit.js +71 -0
  169. package/dist/utils/rate-limit.js.map +1 -0
  170. package/dist/utils/retry.d.ts +26 -0
  171. package/dist/utils/retry.d.ts.map +1 -0
  172. package/dist/utils/retry.js +96 -0
  173. package/dist/utils/retry.js.map +1 -0
  174. package/dist/utils/spinner.d.ts +12 -0
  175. package/dist/utils/spinner.d.ts.map +1 -0
  176. package/dist/utils/spinner.js +51 -0
  177. package/dist/utils/spinner.js.map +1 -0
  178. package/dist/utils/stats.d.ts +29 -0
  179. package/dist/utils/stats.d.ts.map +1 -0
  180. package/dist/utils/stats.js +95 -0
  181. package/dist/utils/stats.js.map +1 -0
  182. package/dist/utils/streaming.d.ts +6 -3
  183. package/dist/utils/streaming.d.ts.map +1 -0
  184. package/dist/utils/streaming.js +14 -19
  185. package/dist/utils/streaming.js.map +1 -0
  186. package/dist/utils/tokens.d.ts.map +1 -0
  187. package/dist/utils/tokens.js.map +1 -0
  188. package/dist/utils/undo-tracker.d.ts +37 -0
  189. package/dist/utils/undo-tracker.d.ts.map +1 -0
  190. package/dist/utils/undo-tracker.js +118 -0
  191. package/dist/utils/undo-tracker.js.map +1 -0
  192. package/dist/version.d.ts.map +1 -0
  193. package/dist/version.js.map +1 -0
  194. package/package.json +61 -45
package/dist/index.js CHANGED
@@ -43,11 +43,22 @@ const config_1 = require("./auth/config");
43
43
  const client_1 = require("./auth/client");
44
44
  const repl_1 = require("./repl/repl");
45
45
  const version_1 = require("./version");
46
+ const banner_1 = require("./ui/banner");
46
47
  const program = new commander_1.Command();
47
48
  program
48
49
  .name("llmtune")
49
50
  .description("AI CLI Agent powered by llmtune.io")
50
51
  .version(version_1.CLI_VERSION);
52
+ // Default action: show banner + help when no subcommand
53
+ program.action(() => {
54
+ console.log((0, banner_1.renderBanner)());
55
+ console.log(chalk_1.default.dim(" Quick start:"));
56
+ console.log(chalk_1.default.dim(` ${chalk_1.default.bold("llmtune login")} Configure your API key`));
57
+ console.log(chalk_1.default.dim(` ${chalk_1.default.bold("llmtune chat")} Start an interactive session`));
58
+ console.log(chalk_1.default.dim(` ${chalk_1.default.bold("llmtune doctor")} Diagnose your setup`));
59
+ console.log("");
60
+ program.outputHelp();
61
+ });
51
62
  program
52
63
  .command("login")
53
64
  .description("Configure API key and settings")
@@ -60,6 +71,7 @@ program
60
71
  .description("Start interactive coding session")
61
72
  .option("-m, --model <model>", "Model to use")
62
73
  .option("--no-stream", "Disable streaming")
74
+ .option("--resume", "Resume most recent session")
63
75
  .action(async (options) => {
64
76
  if (!(0, config_1.isLoggedIn)()) {
65
77
  console.log(chalk_1.default.red('Not logged in. Run "llmtune login" first.'));
@@ -69,11 +81,23 @@ program
69
81
  const client = (0, client_1.createClient)();
70
82
  const model = options.model ?? config.defaultModel ?? "z-ai/GLM-5.1";
71
83
  const apiBase = config.apiBase ?? "https://api.llmtune.io/api/agent/v1";
72
- console.log(chalk_1.default.cyan("\nLLMTune CLI"));
73
- console.log(chalk_1.default.dim(`Connected to ${apiBase}`));
74
- console.log(chalk_1.default.dim(`Model: ${model}`));
75
- console.log(chalk_1.default.dim("Type /help for commands, /exit to quit\n"));
76
- await (0, repl_1.startRepl)({ client, model, stream: options.stream !== false });
84
+ // Render the LLMTune ASCII art banner
85
+ console.log((0, banner_1.renderBanner)());
86
+ // Connection info — only here, not duplicated in startRepl
87
+ console.log(chalk_1.default.dim(` Connected to ${apiBase}`));
88
+ console.log(chalk_1.default.dim(` Model: ${model}`));
89
+ console.log(chalk_1.default.dim(` Type /help for commands, /exit to quit`));
90
+ console.log("");
91
+ // Quietly check for updates on startup
92
+ try {
93
+ const { checkForUpdate } = await Promise.resolve().then(() => __importStar(require("./commands/update")));
94
+ const latest = checkForUpdate();
95
+ if (latest) {
96
+ console.log(chalk_1.default.dim(` 📦 Update available: v${version_1.CLI_VERSION} → v${latest}. Run: llmtune update\n`));
97
+ }
98
+ }
99
+ catch { /* non-critical */ }
100
+ await (0, repl_1.startRepl)({ client, model, stream: options.stream !== false, resume: options.resume });
77
101
  });
78
102
  program
79
103
  .command("models")
@@ -89,6 +113,34 @@ program
89
113
  const { showConfig } = await Promise.resolve().then(() => __importStar(require("./commands/config")));
90
114
  showConfig();
91
115
  });
116
+ program
117
+ .command("balance")
118
+ .description("Show account balance and usage")
119
+ .action(async () => {
120
+ const { balanceCommand } = await Promise.resolve().then(() => __importStar(require("./commands/balance")));
121
+ await balanceCommand();
122
+ });
123
+ program
124
+ .command("doctor")
125
+ .description("Diagnose CLI setup and configuration")
126
+ .action(async () => {
127
+ const { doctorCommand } = await Promise.resolve().then(() => __importStar(require("./commands/doctor")));
128
+ await doctorCommand();
129
+ });
130
+ program
131
+ .command("update")
132
+ .description("Check for and install CLI updates")
133
+ .action(async () => {
134
+ const { updateCommand } = await Promise.resolve().then(() => __importStar(require("./commands/update")));
135
+ await updateCommand();
136
+ });
137
+ program
138
+ .command("logout")
139
+ .description("Remove saved API key")
140
+ .action(() => {
141
+ (0, config_1.logout)();
142
+ console.log(chalk_1.default.green("✓ Logged out successfully."));
143
+ });
92
144
  // Skills marketplace commands
93
145
  const skillsCmd = program.command("skills").description("Manage skills (list, install, publish, sign)");
94
146
  skillsCmd
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/marketplace/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAA;IACzD,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AAkBD;;GAEG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACzE,OAAO,CAAC,YAAY,CAAC,CA6BvB;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAWhG;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAgBnF;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,GACxG,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAepD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/marketplace/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/memory/files.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,eAAO,MAAM,iBAAiB,EAAE,cAAc,EAK7C,CAAA;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,eAAe,IAAI,IAAI,CAWtC;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAS9C;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAM9D;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAG5D;AAED,wBAAgB,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOtD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAa1C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/memory/files.ts"],"names":[],"mappings":"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"}
@@ -5,12 +5,13 @@ declare const MEMORY_FILES: {
5
5
  readonly architecture: "architecture.md";
6
6
  readonly "active-task": "active-task.md";
7
7
  };
8
- type MemoryCategory = keyof typeof MEMORY_FILES;
8
+ export type MemoryCategory = keyof typeof MEMORY_FILES;
9
9
  export interface MemoryEntry {
10
10
  category: MemoryCategory;
11
11
  content: string;
12
12
  path: string;
13
13
  }
14
+ export declare function getMemoryPath(category: MemoryCategory): string;
14
15
  export declare function readMemory(category: MemoryCategory): string;
15
16
  export declare function writeMemory(category: MemoryCategory, content: string): void;
16
17
  export declare function appendMemory(category: MemoryCategory, line: string): void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/memory/service.ts"],"names":[],"mappings":"AAMA,QAAA,MAAM,YAAY;;;;;;CAMR,CAAA;AAEV,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,YAAY,CAAA;AAEtD,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,cAAc,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;CACb;AAQD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAE9D;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAO3D;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAI3E;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAKzE;AAED,wBAAgB,aAAa,IAAI,WAAW,EAAE,CAc7C;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAU1C;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED,wBAAgB,aAAa,IAAI,MAAM,CAItC;AAED,wBAAgB,WAAW,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,IAAI,CAiB3D;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,eAAe,IAAI,IAAI,CAqBtC"}
@@ -33,6 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.getMemoryPath = getMemoryPath;
36
37
  exports.readMemory = readMemory;
37
38
  exports.writeMemory = writeMemory;
38
39
  exports.appendMemory = appendMemory;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/memory/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Session auto-save — periodically saves conversation state so the user
3
+ * doesn't lose their session if the process crashes or is killed.
4
+ */
5
+ import { Conversation } from "../agent/conversation";
6
+ export declare class SessionAutoSave {
7
+ private timer;
8
+ private conversation;
9
+ private lastSaveHash;
10
+ start(conversation: Conversation): void;
11
+ stop(): void;
12
+ private save;
13
+ }
14
+ //# sourceMappingURL=auto-save.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-save.d.ts","sourceRoot":"","sources":["../../src/repl/auto-save.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAKpD,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAA8C;IAC3D,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,YAAY,CAAa;IAEjC,KAAK,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;IAiBvC,IAAI,IAAI,IAAI;IASZ,OAAO,CAAC,IAAI;CA8Bb"}
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ /**
3
+ * Session auto-save — periodically saves conversation state so the user
4
+ * doesn't lose their session if the process crashes or is killed.
5
+ */
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || (function () {
23
+ var ownKeys = function(o) {
24
+ ownKeys = Object.getOwnPropertyNames || function (o) {
25
+ var ar = [];
26
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
27
+ return ar;
28
+ };
29
+ return ownKeys(o);
30
+ };
31
+ return function (mod) {
32
+ if (mod && mod.__esModule) return mod;
33
+ var result = {};
34
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
35
+ __setModuleDefault(result, mod);
36
+ return result;
37
+ };
38
+ })();
39
+ Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.SessionAutoSave = void 0;
41
+ const fs = __importStar(require("fs"));
42
+ const path = __importStar(require("path"));
43
+ const os = __importStar(require("os"));
44
+ const AUTO_SAVE_DIR = path.join(os.homedir(), ".llmtune", "sessions");
45
+ const AUTO_SAVE_INTERVAL_MS = 30_000; // Save every 30 seconds
46
+ class SessionAutoSave {
47
+ timer = null;
48
+ conversation = null;
49
+ lastSaveHash = "";
50
+ start(conversation) {
51
+ this.conversation = conversation;
52
+ // Ensure directory exists
53
+ if (!fs.existsSync(AUTO_SAVE_DIR)) {
54
+ fs.mkdirSync(AUTO_SAVE_DIR, { recursive: true });
55
+ }
56
+ // Auto-save periodically
57
+ this.timer = setInterval(() => {
58
+ this.save();
59
+ }, AUTO_SAVE_INTERVAL_MS);
60
+ // Also save on process exit
61
+ process.on("beforeExit", () => this.save());
62
+ }
63
+ stop() {
64
+ if (this.timer) {
65
+ clearInterval(this.timer);
66
+ this.timer = null;
67
+ }
68
+ // Final save
69
+ this.save();
70
+ }
71
+ save() {
72
+ if (!this.conversation)
73
+ return;
74
+ try {
75
+ const messages = this.conversation.getApiMessages();
76
+ const hash = JSON.stringify(messages).length.toString();
77
+ // Skip save if nothing changed
78
+ if (hash === this.lastSaveHash)
79
+ return;
80
+ this.lastSaveHash = hash;
81
+ const sessionId = `autosave-${new Date().toISOString().slice(0, 10)}`;
82
+ const filePath = path.join(AUTO_SAVE_DIR, `${sessionId}.json`);
83
+ const data = {
84
+ meta: {
85
+ sessionId,
86
+ createdAt: new Date().toISOString(),
87
+ updatedAt: new Date().toISOString(),
88
+ messageCount: messages.length,
89
+ autosave: true,
90
+ },
91
+ messages,
92
+ };
93
+ fs.writeFileSync(filePath, JSON.stringify(data, null, 2), "utf-8");
94
+ }
95
+ catch {
96
+ // Silent fail — auto-save is non-critical
97
+ }
98
+ }
99
+ }
100
+ exports.SessionAutoSave = SessionAutoSave;
101
+ //# sourceMappingURL=auto-save.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-save.js","sourceRoot":"","sources":["../../src/repl/auto-save.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAwB;AACxB,2CAA4B;AAC5B,uCAAwB;AAGxB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,CAAA;AACrE,MAAM,qBAAqB,GAAG,MAAM,CAAA,CAAC,wBAAwB;AAE7D,MAAa,eAAe;IAClB,KAAK,GAA0C,IAAI,CAAA;IACnD,YAAY,GAAwB,IAAI,CAAA;IACxC,YAAY,GAAW,EAAE,CAAA;IAEjC,KAAK,CAAC,YAA0B;QAC9B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAEhC,0BAA0B;QAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAClD,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,IAAI,EAAE,CAAA;QACb,CAAC,EAAE,qBAAqB,CAAC,CAAA;QAEzB,4BAA4B;QAC5B,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACnB,CAAC;QACD,aAAa;QACb,IAAI,CAAC,IAAI,EAAE,CAAA;IACb,CAAC;IAEO,IAAI;QACV,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAM;QAE9B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAA;YACnD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;YAEvD,+BAA+B;YAC/B,IAAI,IAAI,KAAK,IAAI,CAAC,YAAY;gBAAE,OAAM;YACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;YAExB,MAAM,SAAS,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAA;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,SAAS,OAAO,CAAC,CAAA;YAE9D,MAAM,IAAI,GAAG;gBACX,IAAI,EAAE;oBACJ,SAAS;oBACT,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,YAAY,EAAE,QAAQ,CAAC,MAAM;oBAC7B,QAAQ,EAAE,IAAI;iBACf;gBACD,QAAQ;aACT,CAAA;YAED,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;QACpE,CAAC;QAAC,MAAM,CAAC;YACP,0CAA0C;QAC5C,CAAC;IACH,CAAC;CACF;AA7DD,0CA6DC"}
@@ -3,6 +3,7 @@ export interface ReplOptions {
3
3
  client: OpenAI;
4
4
  model: string;
5
5
  stream: boolean;
6
+ resume?: boolean;
6
7
  }
7
8
  export declare function startRepl(options: ReplOptions): Promise<void>;
8
9
  //# sourceMappingURL=repl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../../src/repl/repl.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAsC3B,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAqCD,wBAAsB,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA0OnE"}