@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.
- package/README.md +206 -181
- package/dist/agent/conversation.d.ts.map +1 -0
- package/dist/agent/conversation.js.map +1 -0
- package/dist/agent/loop.d.ts.map +1 -0
- package/dist/agent/loop.js +45 -11
- package/dist/agent/loop.js.map +1 -0
- package/dist/agent/planner.d.ts.map +1 -0
- package/dist/agent/planner.js.map +1 -0
- package/dist/auth/client.d.ts.map +1 -0
- package/dist/auth/client.js.map +1 -0
- package/dist/auth/config.d.ts.map +1 -0
- package/dist/auth/config.js.map +1 -0
- package/dist/commands/balance.d.ts +2 -0
- package/dist/commands/balance.d.ts.map +1 -0
- package/dist/commands/balance.js +65 -0
- package/dist/commands/balance.js.map +1 -0
- package/dist/commands/chat.d.ts.map +1 -0
- package/dist/commands/chat.js +15 -11
- package/dist/commands/chat.js.map +1 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/doctor.d.ts +2 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +212 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/login.d.ts.map +1 -0
- package/dist/commands/login.js +3 -1
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/marketplace.d.ts.map +1 -0
- package/dist/commands/marketplace.js.map +1 -0
- package/dist/commands/models.d.ts.map +1 -0
- package/dist/commands/models.js +9 -15
- package/dist/commands/models.js.map +1 -0
- package/dist/commands/update.d.ts +6 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +115 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/compact/auto-compact.d.ts.map +1 -0
- package/dist/compact/auto-compact.js.map +1 -0
- package/dist/compact/budget.d.ts.map +1 -0
- package/dist/compact/budget.js +18 -0
- package/dist/compact/budget.js.map +1 -0
- package/dist/compact/history-store.d.ts.map +1 -0
- package/dist/compact/history-store.js.map +1 -0
- package/dist/compact/microcompact.d.ts.map +1 -0
- package/dist/compact/microcompact.js.map +1 -0
- package/dist/compact/service.d.ts.map +1 -0
- package/dist/compact/service.js.map +1 -0
- package/dist/context/agent-identity.d.ts.map +1 -0
- package/dist/context/agent-identity.js +19 -0
- package/dist/context/agent-identity.js.map +1 -0
- package/dist/context/analyzer.d.ts.map +1 -0
- package/dist/context/analyzer.js.map +1 -0
- package/dist/context/builder.d.ts.map +1 -0
- package/dist/context/builder.js +7 -0
- package/dist/context/builder.js.map +1 -0
- package/dist/context/cache.d.ts.map +1 -0
- package/dist/context/cache.js +110 -0
- package/dist/context/cache.js.map +1 -0
- package/dist/context/git-context.d.ts.map +1 -0
- package/dist/context/git-context.js.map +1 -0
- package/dist/context/llmtune-md.d.ts.map +1 -0
- package/dist/context/llmtune-md.js.map +1 -0
- package/dist/context/project-detect.d.ts +26 -0
- package/dist/context/project-detect.d.ts.map +1 -0
- package/dist/context/project-detect.js +213 -0
- package/dist/context/project-detect.js.map +1 -0
- package/dist/context/workspace.d.ts.map +1 -0
- package/dist/context/workspace.js +2 -1
- package/dist/context/workspace.js.map +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +57 -5
- package/dist/index.js.map +1 -0
- package/dist/marketplace/client.d.ts.map +1 -0
- package/dist/marketplace/client.js.map +1 -0
- package/dist/memory/files.d.ts.map +1 -0
- package/dist/memory/files.js.map +1 -0
- package/dist/memory/service.d.ts +2 -1
- package/dist/memory/service.d.ts.map +1 -0
- package/dist/memory/service.js +1 -0
- package/dist/memory/service.js.map +1 -0
- package/dist/repl/auto-save.d.ts +14 -0
- package/dist/repl/auto-save.d.ts.map +1 -0
- package/dist/repl/auto-save.js +101 -0
- package/dist/repl/auto-save.js.map +1 -0
- package/dist/repl/repl.d.ts +1 -0
- package/dist/repl/repl.d.ts.map +1 -0
- package/dist/repl/repl.js +296 -34
- package/dist/repl/repl.js.map +1 -0
- package/dist/skills/args.d.ts.map +1 -0
- package/dist/skills/args.js.map +1 -0
- package/dist/skills/frontmatter.d.ts.map +1 -0
- package/dist/skills/frontmatter.js.map +1 -0
- package/dist/skills/loader.d.ts.map +1 -0
- package/dist/skills/loader.js.map +1 -0
- package/dist/skills/registry.d.ts.map +1 -0
- package/dist/skills/registry.js.map +1 -0
- package/dist/skills/signing/signer.d.ts.map +1 -0
- package/dist/skills/signing/signer.js.map +1 -0
- package/dist/skills/trust.d.ts.map +1 -0
- package/dist/skills/trust.js.map +1 -0
- package/dist/telemetry/logger.d.ts.map +1 -0
- package/dist/telemetry/logger.js.map +1 -0
- package/dist/tools/permissions.d.ts +2 -0
- package/dist/tools/permissions.d.ts.map +1 -0
- package/dist/tools/permissions.js +9 -0
- package/dist/tools/permissions.js.map +1 -0
- package/dist/tools/protocol.d.ts.map +1 -0
- package/dist/tools/protocol.js.map +1 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/sandbox/docker.d.ts.map +1 -0
- package/dist/tools/sandbox/docker.js.map +1 -0
- package/dist/tools/sandbox/index.d.ts.map +1 -0
- package/dist/tools/sandbox/index.js.map +1 -0
- package/dist/tools/sanitize.d.ts +10 -0
- package/dist/tools/sanitize.d.ts.map +1 -0
- package/dist/tools/sanitize.js +87 -0
- package/dist/tools/sanitize.js.map +1 -0
- package/dist/tools/tools/ask-user.d.ts.map +1 -0
- package/dist/tools/tools/ask-user.js.map +1 -0
- package/dist/tools/tools/bash.d.ts.map +1 -0
- package/dist/tools/tools/bash.js +52 -1
- package/dist/tools/tools/bash.js.map +1 -0
- package/dist/tools/tools/edit.d.ts.map +1 -0
- package/dist/tools/tools/edit.js +9 -2
- package/dist/tools/tools/edit.js.map +1 -0
- package/dist/tools/tools/glob.d.ts.map +1 -0
- package/dist/tools/tools/glob.js.map +1 -0
- package/dist/tools/tools/grep.d.ts.map +1 -0
- package/dist/tools/tools/grep.js +6 -8
- package/dist/tools/tools/grep.js.map +1 -0
- package/dist/tools/tools/read.d.ts.map +1 -0
- package/dist/tools/tools/read.js +7 -4
- package/dist/tools/tools/read.js.map +1 -0
- package/dist/tools/tools/web-fetch.d.ts.map +1 -0
- package/dist/tools/tools/web-fetch.js +74 -99
- package/dist/tools/tools/web-fetch.js.map +1 -0
- package/dist/tools/tools/write.d.ts.map +1 -0
- package/dist/tools/tools/write.js +13 -7
- package/dist/tools/tools/write.js.map +1 -0
- package/dist/tools/validation.d.ts.map +1 -0
- package/dist/tools/validation.js.map +1 -0
- package/dist/ui/banner.d.ts +2 -0
- package/dist/ui/banner.d.ts.map +1 -0
- package/dist/ui/banner.js +29 -0
- package/dist/ui/banner.js.map +1 -0
- package/dist/utils/diff.d.ts +38 -0
- package/dist/utils/diff.d.ts.map +1 -0
- package/dist/utils/diff.js +184 -0
- package/dist/utils/diff.js.map +1 -0
- package/dist/utils/errors.d.ts +32 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +72 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/ignore.d.ts +22 -0
- package/dist/utils/ignore.d.ts.map +1 -0
- package/dist/utils/ignore.js +205 -0
- package/dist/utils/ignore.js.map +1 -0
- package/dist/utils/input-history.d.ts +37 -0
- package/dist/utils/input-history.d.ts.map +1 -0
- package/dist/utils/input-history.js +142 -0
- package/dist/utils/input-history.js.map +1 -0
- package/dist/utils/markdown.d.ts.map +1 -0
- package/dist/utils/markdown.js.map +1 -0
- package/dist/utils/rate-limit.d.ts +36 -0
- package/dist/utils/rate-limit.d.ts.map +1 -0
- package/dist/utils/rate-limit.js +71 -0
- package/dist/utils/rate-limit.js.map +1 -0
- package/dist/utils/retry.d.ts +26 -0
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +96 -0
- package/dist/utils/retry.js.map +1 -0
- package/dist/utils/spinner.d.ts +12 -0
- package/dist/utils/spinner.d.ts.map +1 -0
- package/dist/utils/spinner.js +51 -0
- package/dist/utils/spinner.js.map +1 -0
- package/dist/utils/stats.d.ts +29 -0
- package/dist/utils/stats.d.ts.map +1 -0
- package/dist/utils/stats.js +95 -0
- package/dist/utils/stats.js.map +1 -0
- package/dist/utils/streaming.d.ts +6 -3
- package/dist/utils/streaming.d.ts.map +1 -0
- package/dist/utils/streaming.js +14 -19
- package/dist/utils/streaming.js.map +1 -0
- package/dist/utils/tokens.d.ts.map +1 -0
- package/dist/utils/tokens.js.map +1 -0
- package/dist/utils/undo-tracker.d.ts +37 -0
- package/dist/utils/undo-tracker.d.ts.map +1 -0
- package/dist/utils/undo-tracker.js +118 -0
- package/dist/utils/undo-tracker.js.map +1 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js.map +1 -0
- package/package.json +61 -45
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.balanceCommand = balanceCommand;
|
|
7
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
+
const config_1 = require("../auth/config");
|
|
9
|
+
async function balanceCommand() {
|
|
10
|
+
const apiKey = (0, config_1.getApiKey)();
|
|
11
|
+
if (!apiKey) {
|
|
12
|
+
console.log(chalk_1.default.red('Not authenticated. Run "llmtune login" first.'));
|
|
13
|
+
process.exit(1);
|
|
14
|
+
}
|
|
15
|
+
const config = (0, config_1.loadConfig)();
|
|
16
|
+
const apiBase = config.apiBase || "https://api.llmtune.io/api/agent/v1";
|
|
17
|
+
// Derive the base URL (strip /api/agent/v1 → root)
|
|
18
|
+
const baseUrl = apiBase.replace(/\/api\/agent\/v1\/?$/, "");
|
|
19
|
+
const url = `${baseUrl}/api/usage/balance-bar`;
|
|
20
|
+
try {
|
|
21
|
+
const res = await fetch(url, {
|
|
22
|
+
headers: {
|
|
23
|
+
Authorization: `Bearer ${apiKey}`,
|
|
24
|
+
"Content-Type": "application/json",
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
if (!res.ok) {
|
|
28
|
+
const text = await res.text();
|
|
29
|
+
console.log(chalk_1.default.red(`Failed to fetch balance (${res.status}): ${text}`));
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
const data = (await res.json());
|
|
33
|
+
console.log("");
|
|
34
|
+
console.log(chalk_1.default.bold(" Account Balance"));
|
|
35
|
+
console.log("");
|
|
36
|
+
// Balance display
|
|
37
|
+
const balance = data.balanceUsd;
|
|
38
|
+
const balanceStr = balance < 0
|
|
39
|
+
? chalk_1.default.red(`-$${Math.abs(balance).toFixed(2)}`)
|
|
40
|
+
: balance < 1
|
|
41
|
+
? chalk_1.default.yellow(`$${balance.toFixed(4)}`)
|
|
42
|
+
: chalk_1.default.green(`$${balance.toFixed(2)}`);
|
|
43
|
+
console.log(` Balance: ${balanceStr}`);
|
|
44
|
+
// Token usage (30d)
|
|
45
|
+
if (data.totalTokens !== undefined) {
|
|
46
|
+
const tokens = data.totalTokens;
|
|
47
|
+
const formatted = tokens >= 1_000_000
|
|
48
|
+
? `${(tokens / 1_000_000).toFixed(1)}M`
|
|
49
|
+
: tokens >= 1_000
|
|
50
|
+
? `${(tokens / 1_000).toFixed(1)}K`
|
|
51
|
+
: `${tokens}`;
|
|
52
|
+
console.log(` Usage (30d): ${chalk_1.default.dim(formatted + " tokens")}`);
|
|
53
|
+
}
|
|
54
|
+
console.log("");
|
|
55
|
+
// Low balance warning
|
|
56
|
+
if (balance > 0 && balance < 0.50) {
|
|
57
|
+
console.log(chalk_1.default.yellow(" ⚠ Low balance — consider topping up at llmtune.io"));
|
|
58
|
+
console.log("");
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
catch (err) {
|
|
62
|
+
console.log(chalk_1.default.red(`Error: ${err instanceof Error ? err.message : String(err)}`));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=balance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"balance.js","sourceRoot":"","sources":["../../src/commands/balance.ts"],"names":[],"mappings":";;;;;AASA,wCAmEC;AA5ED,kDAAyB;AACzB,2CAAkE;AAQ3D,KAAK,UAAU,cAAc;IAClC,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAA;IAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC,CAAA;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAA;IAC3B,MAAM,OAAO,GAAI,MAAM,CAAC,OAAkB,IAAI,qCAAqC,CAAA;IAEnF,mDAAmD;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAA;IAC3D,MAAM,GAAG,GAAG,GAAG,OAAO,wBAAwB,CAAA;IAE9C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,MAAM,EAAE;gBACjC,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;YAC7B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,4BAA4B,GAAG,CAAC,MAAM,MAAM,IAAI,EAAE,CAAC,CAAC,CAAA;YAC1E,OAAM;QACR,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAoB,CAAA;QAElD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAA;QAC5C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAEf,kBAAkB;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAA;QAC/B,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC;YAC5B,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,CAAC,CAAC,OAAO,GAAG,CAAC;gBACX,CAAC,CAAC,eAAK,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAE3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,UAAU,EAAE,CAAC,CAAA;QAE1C,oBAAoB;QACpB,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAA;YAC/B,MAAM,SAAS,GAAG,MAAM,IAAI,SAAS;gBACnC,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBACvC,CAAC,CAAC,MAAM,IAAI,KAAK;oBACf,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;oBACnC,CAAC,CAAC,GAAG,MAAM,EAAE,CAAA;YACjB,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC,EAAE,CAAC,CAAA;QACnE,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAEf,sBAAsB;QACtB,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,IAAI,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,qDAAqD,CAAC,CAAC,CAAA;YAChF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CACxE,CAAA;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"AAMA,wBAAsB,WAAW,CAAC,OAAO,EAAE;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,iBAuBA"}
|
package/dist/commands/chat.js
CHANGED
|
@@ -5,23 +5,27 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.chatCommand = chatCommand;
|
|
7
7
|
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
8
|
+
const config_1 = require("../auth/config");
|
|
9
|
+
const client_1 = require("../auth/client");
|
|
10
|
+
const repl_1 = require("../repl/repl");
|
|
11
|
+
const banner_1 = require("../ui/banner");
|
|
11
12
|
async function chatCommand(options) {
|
|
12
|
-
const config = (0,
|
|
13
|
+
const config = (0, config_1.loadConfig)();
|
|
13
14
|
if (!config.apiKey) {
|
|
14
15
|
console.log(chalk_1.default.red('No API key configured. Run "llmtune login" first.'));
|
|
15
16
|
process.exit(1);
|
|
16
17
|
}
|
|
17
|
-
const client = (0,
|
|
18
|
+
const client = (0, client_1.createClient)();
|
|
18
19
|
const model = options.model || config.defaultModel || "z-ai/GLM-5.1";
|
|
19
20
|
const stream = options.stream !== false;
|
|
20
|
-
|
|
21
|
-
console.log(
|
|
22
|
-
|
|
23
|
-
console.log(chalk_1.default.dim(`
|
|
24
|
-
console.log(chalk_1.default.dim(`
|
|
25
|
-
|
|
21
|
+
// Render the LLMTune ASCII art banner
|
|
22
|
+
console.log((0, banner_1.renderBanner)());
|
|
23
|
+
// Connection info
|
|
24
|
+
console.log(chalk_1.default.dim(` Connected to ${(0, config_1.getApiBase)()}`));
|
|
25
|
+
console.log(chalk_1.default.dim(` Model: ${model}`));
|
|
26
|
+
console.log(chalk_1.default.dim(` Stream: ${stream}`));
|
|
27
|
+
console.log(chalk_1.default.dim(` Type /help for commands, /exit to quit`));
|
|
28
|
+
console.log("");
|
|
29
|
+
await (0, repl_1.startRepl)({ client, model, stream });
|
|
26
30
|
}
|
|
27
31
|
//# sourceMappingURL=chat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":";;;;;AAMA,kCA0BC;AAhCD,kDAAyB;AACzB,2CAAuD;AACvD,2CAA6C;AAC7C,uCAAwC;AACxC,yCAA2C;AAEpC,KAAK,UAAU,WAAW,CAAC,OAGjC;IACC,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;IAE5B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,qBAAY,GAAE,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAK,MAAM,CAAC,YAAuB,IAAI,cAAc,CAAC;IACjF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC;IAExC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,IAAA,qBAAY,GAAE,CAAC,CAAC;IAE5B,kBAAkB;IAClB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,kBAAkB,IAAA,mBAAU,GAAE,EAAE,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,YAAY,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,IAAA,gBAAS,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAGA,wBAAgB,UAAU,IAAI,IAAI,CAgCjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":";;;;;AAGA,gCAgCC;AAnCD,kDAA0B;AAC1B,2CAA2D;AAE3D,SAAgB,UAAU;IACxB,MAAM,UAAU,GAAG,IAAA,sBAAa,GAAE,CAAC;IAEnC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,CAAC,MAA4B,CAAA;QAClD,MAAM,OAAO,GAAG,MAAM,CAAC,OAA6B,CAAA;QACpD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAkC,CAAA;QAC9D,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,IAAI,CAAC,OAAO,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;QACpE,OAAO,CAAC,GAAG,CAAC,oBAAoB,eAAK,CAAC,IAAI,CAAC,YAAY,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;QAE3E,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,MAAM,GACV,MAAM,CAAC,MAAM,GAAG,EAAE;gBAChB,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC/C,CAAC,CAAC,OAAO,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,GAAG,CAAC,WAAW,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC,CAC/E,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,0BAA0B,UAAU,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,GAAG,CAAC,SAAS,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,CACpE,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAeA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAsKnD"}
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.doctorCommand = doctorCommand;
|
|
40
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
41
|
+
const fs = __importStar(require("fs"));
|
|
42
|
+
const os = __importStar(require("os"));
|
|
43
|
+
const path = __importStar(require("path"));
|
|
44
|
+
const child_process_1 = require("child_process");
|
|
45
|
+
const config_1 = require("../auth/config");
|
|
46
|
+
const version_1 = require("../version");
|
|
47
|
+
async function doctorCommand() {
|
|
48
|
+
const checks = [];
|
|
49
|
+
console.log(chalk_1.default.bold("\n🩺 LLMTune CLI Doctor\n"));
|
|
50
|
+
// 1. Node.js version
|
|
51
|
+
const nodeVersion = process.version;
|
|
52
|
+
const major = parseInt(nodeVersion.slice(1).split(".")[0], 10);
|
|
53
|
+
if (major >= 18) {
|
|
54
|
+
checks.push({ name: "Node.js", status: "pass", message: `v${nodeVersion.slice(1)}` });
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
checks.push({
|
|
58
|
+
name: "Node.js",
|
|
59
|
+
status: "fail",
|
|
60
|
+
message: `v${nodeVersion.slice(1)} — requires >= 18.0.0`,
|
|
61
|
+
fix: "Upgrade Node.js: https://nodejs.org/",
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
// 2. CLI version
|
|
65
|
+
checks.push({ name: "CLI version", status: "pass", message: `v${version_1.CLI_VERSION}` });
|
|
66
|
+
// 3. Config file
|
|
67
|
+
const configPath = (0, config_1.getConfigPath)();
|
|
68
|
+
if (fs.existsSync(configPath)) {
|
|
69
|
+
checks.push({ name: "Config file", status: "pass", message: configPath });
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
checks.push({
|
|
73
|
+
name: "Config file",
|
|
74
|
+
status: "warn",
|
|
75
|
+
message: "Not found",
|
|
76
|
+
fix: "Run: llmtune login",
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
// 4. API key
|
|
80
|
+
if ((0, config_1.isLoggedIn)()) {
|
|
81
|
+
const config = (0, config_1.loadConfig)();
|
|
82
|
+
const key = config.apiKey;
|
|
83
|
+
const masked = key && key.length > 12
|
|
84
|
+
? `${key.slice(0, 6)}...${key.slice(-4)}`
|
|
85
|
+
: key ? "(set)" : "(not set)";
|
|
86
|
+
checks.push({ name: "API key", status: "pass", message: masked });
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
checks.push({
|
|
90
|
+
name: "API key",
|
|
91
|
+
status: "fail",
|
|
92
|
+
message: "Not configured",
|
|
93
|
+
fix: "Run: llmtune login",
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
// 5. API connectivity — use native fetch instead of curl (Windows compatible)
|
|
97
|
+
if ((0, config_1.isLoggedIn)()) {
|
|
98
|
+
try {
|
|
99
|
+
const config = (0, config_1.loadConfig)();
|
|
100
|
+
const apiBase = config.apiBase || "https://api.llmtune.io/api/agent/v1";
|
|
101
|
+
const apiKey = config.apiKey;
|
|
102
|
+
const controller = new AbortController();
|
|
103
|
+
const timeout = setTimeout(() => controller.abort(), 10000);
|
|
104
|
+
const response = await fetch(`${apiBase}/models`, {
|
|
105
|
+
headers: { Authorization: `Bearer ${apiKey}` },
|
|
106
|
+
signal: controller.signal,
|
|
107
|
+
});
|
|
108
|
+
clearTimeout(timeout);
|
|
109
|
+
if (response.ok) {
|
|
110
|
+
checks.push({ name: "API connection", status: "pass", message: `${apiBase} (HTTP ${response.status})` });
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
checks.push({ name: "API connection", status: "warn", message: `${apiBase} (HTTP ${response.status})` });
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
catch (err) {
|
|
117
|
+
checks.push({
|
|
118
|
+
name: "API connection",
|
|
119
|
+
status: "fail",
|
|
120
|
+
message: "Cannot reach API",
|
|
121
|
+
fix: "Check your network connection and API base URL",
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
// 6. Config dir
|
|
126
|
+
const configDir = path.join(os.homedir(), ".llmtune");
|
|
127
|
+
if (fs.existsSync(configDir)) {
|
|
128
|
+
checks.push({ name: "Config dir", status: "pass", message: configDir });
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
checks.push({
|
|
132
|
+
name: "Config dir",
|
|
133
|
+
status: "warn",
|
|
134
|
+
message: "Not created yet",
|
|
135
|
+
fix: "Will be created on first login",
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
// 7. Git
|
|
139
|
+
try {
|
|
140
|
+
const gitVersion = (0, child_process_1.execSync)("git --version", { encoding: "utf-8", timeout: 5000 }).trim();
|
|
141
|
+
checks.push({ name: "Git", status: "pass", message: gitVersion });
|
|
142
|
+
}
|
|
143
|
+
catch {
|
|
144
|
+
checks.push({
|
|
145
|
+
name: "Git",
|
|
146
|
+
status: "warn",
|
|
147
|
+
message: "Not found",
|
|
148
|
+
fix: "Install Git for full workspace context features",
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
// 8. Docker (optional)
|
|
152
|
+
try {
|
|
153
|
+
const dockerVersion = (0, child_process_1.execSync)("docker --version", { encoding: "utf-8", timeout: 5000 }).trim();
|
|
154
|
+
checks.push({ name: "Docker", status: "pass", message: `${dockerVersion} (sandbox available)` });
|
|
155
|
+
}
|
|
156
|
+
catch {
|
|
157
|
+
checks.push({ name: "Docker", status: "warn", message: "Not found (sandbox mode unavailable)" });
|
|
158
|
+
}
|
|
159
|
+
// 9. Memory dir
|
|
160
|
+
const memoryDir = path.join(os.homedir(), ".llmtune", "memory");
|
|
161
|
+
if (fs.existsSync(memoryDir)) {
|
|
162
|
+
const files = fs.readdirSync(memoryDir).filter(f => f.endsWith(".md"));
|
|
163
|
+
checks.push({ name: "Memory", status: "pass", message: `${files.length} memory files` });
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
checks.push({ name: "Memory", status: "warn", message: "Not initialized" });
|
|
167
|
+
}
|
|
168
|
+
// 10. Check for updates
|
|
169
|
+
try {
|
|
170
|
+
const latest = (0, child_process_1.execSync)("npm view @llmtune/cli version", {
|
|
171
|
+
encoding: "utf-8",
|
|
172
|
+
timeout: 10000,
|
|
173
|
+
}).trim();
|
|
174
|
+
if (latest === version_1.CLI_VERSION) {
|
|
175
|
+
checks.push({ name: "Update", status: "pass", message: "Up to date" });
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
checks.push({
|
|
179
|
+
name: "Update",
|
|
180
|
+
status: "warn",
|
|
181
|
+
message: `Latest: v${latest} (you have v${version_1.CLI_VERSION})`,
|
|
182
|
+
fix: "Run: npm update -g @llmtune/cli",
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
catch {
|
|
187
|
+
checks.push({ name: "Update", status: "pass", message: "Could not check (offline?)" });
|
|
188
|
+
}
|
|
189
|
+
// Print results
|
|
190
|
+
for (const check of checks) {
|
|
191
|
+
const icon = check.status === "pass" ? chalk_1.default.green("✓")
|
|
192
|
+
: check.status === "warn" ? chalk_1.default.yellow("⚠")
|
|
193
|
+
: chalk_1.default.red("✗");
|
|
194
|
+
const label = chalk_1.default.bold(check.name.padEnd(16));
|
|
195
|
+
console.log(` ${icon} ${label} ${chalk_1.default.dim(check.message)}`);
|
|
196
|
+
if (check.fix && check.status !== "pass") {
|
|
197
|
+
console.log(`${" ".repeat(22)}${chalk_1.default.dim("→ " + check.fix)}`);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
const fails = checks.filter(c => c.status === "fail").length;
|
|
201
|
+
const warns = checks.filter(c => c.status === "warn").length;
|
|
202
|
+
const passes = checks.filter(c => c.status === "pass").length;
|
|
203
|
+
console.log("");
|
|
204
|
+
if (fails === 0) {
|
|
205
|
+
console.log(chalk_1.default.green(` ${passes} passed, ${warns} warnings`));
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
console.log(chalk_1.default.red(` ${passes} passed, ${warns} warnings, ${fails} failed`));
|
|
209
|
+
}
|
|
210
|
+
console.log("");
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=doctor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AA8BA,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAkClD"}
|
package/dist/commands/login.js
CHANGED
|
@@ -79,12 +79,14 @@ async function loginCommand() {
|
|
|
79
79
|
}
|
|
80
80
|
const apiBase = await ask("API base URL", existingUrl);
|
|
81
81
|
const model = await ask("Default model (leave empty for auto)", existingModel || undefined);
|
|
82
|
+
// FIX: Merge with existing config to preserve other keys (providers, preferences, etc.)
|
|
82
83
|
(0, config_1.saveConfig)({
|
|
84
|
+
...existing,
|
|
83
85
|
apiKey: key,
|
|
84
86
|
apiBase: apiBase.replace(/\/$/, ""),
|
|
85
87
|
defaultModel: model || undefined,
|
|
86
88
|
});
|
|
87
|
-
console.log(chalk_1.default.green("\
|
|
89
|
+
console.log(chalk_1.default.green("\n✓ Configuration saved!"));
|
|
88
90
|
console.log(` API key: ${maskKey(key)}`);
|
|
89
91
|
console.log(` API base: ${apiBase}`);
|
|
90
92
|
console.log(` Model: ${model || "auto"}`);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketplace.d.ts","sourceRoot":"","sources":["../../src/commands/marketplace.ts"],"names":[],"mappings":"AAMA,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsCtF;AA6HD,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEvD;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAErE;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpE;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQjE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketplace.js","sourceRoot":"","sources":["../../src/commands/marketplace.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/commands/models.ts"],"names":[],"mappings":"AAIA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAuDnD"}
|
package/dist/commands/models.js
CHANGED
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.modelsCommand = modelsCommand;
|
|
7
7
|
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
-
const
|
|
8
|
+
const markdown_1 = require("../utils/markdown");
|
|
9
9
|
const config_1 = require("../auth/config");
|
|
10
10
|
async function modelsCommand() {
|
|
11
11
|
const apiKey = (0, config_1.getApiKey)();
|
|
@@ -28,22 +28,16 @@ async function modelsCommand() {
|
|
|
28
28
|
process.exit(1);
|
|
29
29
|
}
|
|
30
30
|
const data = (await response.json());
|
|
31
|
+
console.log("");
|
|
31
32
|
if (data.subscription) {
|
|
32
|
-
console.log(chalk_1.default.cyan(
|
|
33
|
-
console.log(chalk_1.default.dim(`Daily quota: ${data.subscription.quotaDaily} requests
|
|
33
|
+
console.log(chalk_1.default.cyan(` Subscription: ${data.subscription.planName}`));
|
|
34
|
+
console.log(chalk_1.default.dim(` Daily quota: ${data.subscription.quotaDaily} requests`));
|
|
35
|
+
console.log("");
|
|
34
36
|
}
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
],
|
|
40
|
-
colWidths: [50, 20],
|
|
41
|
-
});
|
|
42
|
-
for (const model of data.data) {
|
|
43
|
-
table.push([model.id, model.owned_by]);
|
|
44
|
-
}
|
|
45
|
-
console.log(table.toString());
|
|
46
|
-
console.log(chalk_1.default.dim(`\n${data.data.length} models available`));
|
|
37
|
+
const headers = ["Model ID", "Provider"];
|
|
38
|
+
const rows = data.data.map((model) => [model.id, model.owned_by]);
|
|
39
|
+
console.log((0, markdown_1.renderTable)(headers, rows));
|
|
40
|
+
console.log(chalk_1.default.dim(`\n ${data.data.length} models available\n`));
|
|
47
41
|
}
|
|
48
42
|
catch (err) {
|
|
49
43
|
console.log(chalk_1.default.red(`Error: ${err instanceof Error ? err.message : String(err)}`));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/commands/models.ts"],"names":[],"mappings":";;;;;AAIA,sCAuDC;AA3DD,kDAAyB;AACzB,gDAA+C;AAC/C,2CAAsD;AAE/C,KAAK,UAAU,aAAa;IACjC,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAA;IAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC,CAAA;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,mBAAU,GAAE,CAAA;IAE5B,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,SAAS,CAAA;QACxD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE;YACtC,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,MAAM,EAAE;aAClC;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YAClC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,2BAA2B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;YACpE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;YAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAYlC,CAAA;QAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;YACxE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,YAAY,CAAC,UAAU,WAAW,CAAC,CAAC,CAAA;YACjF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACjB,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;QACjE,OAAO,CAAC,GAAG,CAAC,IAAA,sBAAW,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;QACvC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,qBAAqB,CAAC,CAAC,CAAA;IACtE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CACxE,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAUA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CA6BnD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CA2B9C"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.updateCommand = updateCommand;
|
|
40
|
+
exports.checkForUpdate = checkForUpdate;
|
|
41
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
42
|
+
const child_process_1 = require("child_process");
|
|
43
|
+
const fs = __importStar(require("fs"));
|
|
44
|
+
const path = __importStar(require("path"));
|
|
45
|
+
const os = __importStar(require("os"));
|
|
46
|
+
const version_1 = require("../version");
|
|
47
|
+
const CACHE_FILE = path.join(os.homedir(), ".llmtune", "cache", "update-check.json");
|
|
48
|
+
const CHECK_INTERVAL_MS = 24 * 60 * 60 * 1000; // Once per day
|
|
49
|
+
async function updateCommand() {
|
|
50
|
+
console.log(chalk_1.default.dim("Checking for updates..."));
|
|
51
|
+
const current = version_1.CLI_VERSION;
|
|
52
|
+
const latest = fetchLatestVersion();
|
|
53
|
+
if (!latest) {
|
|
54
|
+
console.log(chalk_1.default.yellow("Could not check for updates. Are you online?"));
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
if (latest === current) {
|
|
58
|
+
console.log(chalk_1.default.green(`\n Already on the latest version (v${current})\n`));
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
console.log(chalk_1.default.yellow(`\n Update available: v${current} → v${latest}`));
|
|
62
|
+
console.log(chalk_1.default.dim(" Installing..."));
|
|
63
|
+
try {
|
|
64
|
+
(0, child_process_1.execSync)("npm install -g @llmtune/cli@latest", {
|
|
65
|
+
stdio: "inherit",
|
|
66
|
+
timeout: 120_000,
|
|
67
|
+
});
|
|
68
|
+
console.log(chalk_1.default.green(`\n Updated to v${latest}\n`));
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
console.log(chalk_1.default.red("\n Update failed. Try manually:"));
|
|
72
|
+
console.log(chalk_1.default.bold(" npm install -g @llmtune/cli@latest\n"));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Check for updates (cached, runs once per day). Returns latest version or null.
|
|
77
|
+
*/
|
|
78
|
+
function checkForUpdate() {
|
|
79
|
+
try {
|
|
80
|
+
// Check cache first
|
|
81
|
+
try {
|
|
82
|
+
if (fs.existsSync(CACHE_FILE)) {
|
|
83
|
+
const cached = JSON.parse(fs.readFileSync(CACHE_FILE, "utf-8"));
|
|
84
|
+
if (Date.now() - cached.lastCheck < CHECK_INTERVAL_MS) {
|
|
85
|
+
return cached.latestVersion !== version_1.CLI_VERSION ? cached.latestVersion : null;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
catch { /* ignore */ }
|
|
90
|
+
const latest = fetchLatestVersion();
|
|
91
|
+
if (!latest)
|
|
92
|
+
return null;
|
|
93
|
+
// Save to cache
|
|
94
|
+
const dir = path.dirname(CACHE_FILE);
|
|
95
|
+
if (!fs.existsSync(dir))
|
|
96
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
97
|
+
fs.writeFileSync(CACHE_FILE, JSON.stringify({ lastCheck: Date.now(), latestVersion: latest }), "utf-8");
|
|
98
|
+
return latest !== version_1.CLI_VERSION ? latest : null;
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
function fetchLatestVersion() {
|
|
105
|
+
try {
|
|
106
|
+
return (0, child_process_1.execSync)("npm view @llmtune/cli version", {
|
|
107
|
+
encoding: "utf-8",
|
|
108
|
+
timeout: 10_000,
|
|
109
|
+
}).trim();
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
return null;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-compact.d.ts","sourceRoot":"","sources":["../../src/compact/auto-compact.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,WAAW,CAAA;AAMnE,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,YAAY,CAAA;IAC1B,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,uBAAuB,EAAE,MAAM,CAAA;IAC/B,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,MAAM,GACvB,MAAM,CAQR;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA0C9F;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,QAAQ,GAAG,MAAM,EAC1B,UAAU,CAAC,EAAE,MAAM,GAClB,IAAI,CAkBN"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-compact.js","sourceRoot":"","sources":["../../src/compact/auto-compact.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"budget.d.ts","sourceRoot":"","sources":["../../src/compact/budget.ts"],"names":[],"mappings":"AAAA;;GAEG;AAuBH,eAAO,MAAM,uBAAuB,OAAO,CAAA;AAC3C,eAAO,MAAM,kBAAkB,IAAI,CAAA;AAEnC,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAmB3D;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD"}
|