@codemieai/code 0.9.0 → 0.10.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 +12 -0
- package/dist/agents/core/AgentCLI.d.ts.map +1 -1
- package/dist/agents/core/AgentCLI.js +7 -1
- package/dist/agents/core/AgentCLI.js.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts +8 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.js +57 -1
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
- package/dist/agents/core/session/session-origin-audit.d.ts.map +1 -1
- package/dist/agents/core/session/session-origin-audit.js +18 -8
- package/dist/agents/core/session/session-origin-audit.js.map +1 -1
- package/dist/agents/core/types.d.ts +7 -1
- package/dist/agents/core/types.d.ts.map +1 -1
- package/dist/agents/plugins/claude/claude.plugin.d.ts +9 -1
- package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/claude/claude.plugin.js +42 -83
- package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
- package/dist/agents/plugins/claude/plugin/__tests__/statusline.test.ts +301 -0
- package/dist/agents/plugins/claude/plugin/skills/msgraph/scripts/msgraph.js +25 -2
- package/dist/agents/plugins/claude/plugin/statusline.mjs +147 -93
- package/dist/agents/plugins/claude/statusline-installer.d.ts +5 -2
- package/dist/agents/plugins/claude/statusline-installer.d.ts.map +1 -1
- package/dist/agents/plugins/claude/statusline-installer.js +12 -59
- package/dist/agents/plugins/claude/statusline-installer.js.map +1 -1
- package/dist/agents/plugins/codex/codex.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/codex/codex.plugin.js +4 -3
- package/dist/agents/plugins/codex/codex.plugin.js.map +1 -1
- package/dist/agents/plugins/kimi/kimi.plugin.d.ts +1 -1
- package/dist/agents/plugins/kimi/kimi.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/kimi/kimi.plugin.js +3 -2
- package/dist/agents/plugins/kimi/kimi.plugin.js.map +1 -1
- package/dist/agents/plugins/opencode/opencode-dynamic-models.d.ts.map +1 -1
- package/dist/agents/plugins/opencode/opencode-dynamic-models.js +5 -1
- package/dist/agents/plugins/opencode/opencode-dynamic-models.js.map +1 -1
- package/dist/agents/plugins/opencode/opencode-model-configs.d.ts.map +1 -1
- package/dist/agents/plugins/opencode/opencode-model-configs.js +29 -0
- package/dist/agents/plugins/opencode/opencode-model-configs.js.map +1 -1
- package/dist/agents/plugins/opencode/opencode.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/opencode/opencode.plugin.js +1 -0
- package/dist/agents/plugins/opencode/opencode.plugin.js.map +1 -1
- package/dist/bin/proxy-daemon.js +3 -1
- package/dist/bin/proxy-daemon.js.map +1 -1
- package/dist/cli/commands/analytics/data-loader.d.ts +11 -3
- package/dist/cli/commands/analytics/data-loader.d.ts.map +1 -1
- package/dist/cli/commands/analytics/data-loader.js +33 -6
- package/dist/cli/commands/analytics/data-loader.js.map +1 -1
- package/dist/cli/commands/analytics/index.d.ts +3 -0
- package/dist/cli/commands/analytics/index.d.ts.map +1 -1
- package/dist/cli/commands/analytics/index.js +25 -7
- package/dist/cli/commands/analytics/index.js.map +1 -1
- package/dist/cli/commands/analytics/report/payload-builder.d.ts +3 -0
- package/dist/cli/commands/analytics/report/payload-builder.d.ts.map +1 -1
- package/dist/cli/commands/analytics/report/payload-builder.js +3 -0
- package/dist/cli/commands/analytics/report/payload-builder.js.map +1 -1
- package/dist/cli/commands/analytics/report/report-generator.d.ts +3 -2
- package/dist/cli/commands/analytics/report/report-generator.d.ts.map +1 -1
- package/dist/cli/commands/analytics/report/report-generator.js +9 -4
- package/dist/cli/commands/analytics/report/report-generator.js.map +1 -1
- package/dist/cli/commands/analytics/report/session-report.d.ts +24 -0
- package/dist/cli/commands/analytics/report/session-report.d.ts.map +1 -0
- package/dist/cli/commands/analytics/report/session-report.js +50 -0
- package/dist/cli/commands/analytics/report/session-report.js.map +1 -0
- package/dist/cli/commands/analytics/report/types.d.ts +3 -0
- package/dist/cli/commands/analytics/report/types.d.ts.map +1 -1
- package/dist/cli/commands/analytics/sources/sessions-source.js +3 -1
- package/dist/cli/commands/analytics/sources/sessions-source.js.map +1 -1
- package/dist/cli/commands/analytics/sources/types.d.ts +2 -0
- package/dist/cli/commands/analytics/sources/types.d.ts.map +1 -1
- package/dist/cli/commands/analytics/types.d.ts +2 -0
- package/dist/cli/commands/analytics/types.d.ts.map +1 -1
- package/dist/cli/commands/hook.d.ts.map +1 -1
- package/dist/cli/commands/hook.js +8 -0
- package/dist/cli/commands/hook.js.map +1 -1
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +26 -17
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/proxy/connectors/vscode.d.ts +9 -0
- package/dist/cli/commands/proxy/connectors/vscode.d.ts.map +1 -0
- package/dist/cli/commands/proxy/connectors/vscode.js +209 -0
- package/dist/cli/commands/proxy/connectors/vscode.js.map +1 -0
- package/dist/cli/commands/proxy/daemon-manager.d.ts +2 -0
- package/dist/cli/commands/proxy/daemon-manager.d.ts.map +1 -1
- package/dist/cli/commands/proxy/daemon-manager.js +2 -0
- package/dist/cli/commands/proxy/daemon-manager.js.map +1 -1
- package/dist/cli/commands/proxy/health-check.js +1 -1
- package/dist/cli/commands/proxy/health-check.js.map +1 -1
- package/dist/cli/commands/proxy/index.d.ts.map +1 -1
- package/dist/cli/commands/proxy/index.js +213 -33
- package/dist/cli/commands/proxy/index.js.map +1 -1
- package/dist/cli/index.js +5 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/env/types.d.ts +0 -1
- package/dist/env/types.d.ts.map +1 -1
- package/dist/env/types.js.map +1 -1
- package/dist/providers/integration/setup-ui.d.ts +1 -1
- package/dist/providers/integration/setup-ui.d.ts.map +1 -1
- package/dist/providers/integration/setup-ui.js.map +1 -1
- package/dist/providers/plugins/sso/proxy/plugins/index.d.ts +14 -14
- package/dist/providers/plugins/sso/proxy/plugins/index.js +16 -16
- package/dist/providers/plugins/sso/proxy/plugins/index.js.map +1 -1
- package/dist/providers/plugins/sso/sso.auth.d.ts.map +1 -1
- package/dist/providers/plugins/sso/sso.auth.js +10 -1
- package/dist/providers/plugins/sso/sso.auth.js.map +1 -1
- package/dist/telemetry/runtime/DesktopTelemetryRuntime.d.ts.map +1 -1
- package/dist/telemetry/runtime/DesktopTelemetryRuntime.js +3 -1
- package/dist/telemetry/runtime/DesktopTelemetryRuntime.js.map +1 -1
- package/dist/utils/auth.js +1 -1
- package/dist/utils/auth.js.map +1 -1
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +9 -5
- package/dist/utils/config.js.map +1 -1
- package/package.json +4 -3
- package/scripts/postinstall.mjs +14 -2
- package/scripts/validate-secrets.js +14 -5
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
// CodeMie statusline — shows
|
|
3
|
-
//
|
|
2
|
+
// CodeMie statusline — shows model, project, branch, context, session cost/duration,
|
|
3
|
+
// and (when a CodeMie profile is configured) the CLI budget for the authenticated user.
|
|
4
|
+
// Deployed to ~/.claude/ by `codemie install statusline` (also triggered by the `--status`
|
|
5
|
+
// CLI flag, which calls the same installer). Runs standalone — Node builtins only, no
|
|
6
|
+
// project imports, since it executes via `node <path>` after the project process exits.
|
|
4
7
|
import crypto from 'crypto';
|
|
5
8
|
import { exec } from 'child_process';
|
|
6
9
|
import fs from 'fs/promises';
|
|
7
10
|
import os from 'os';
|
|
8
11
|
import path from 'path';
|
|
12
|
+
import { fileURLToPath } from 'url';
|
|
9
13
|
|
|
10
14
|
const HOME = process.env.CODEMIE_HOME || path.join(os.homedir(), '.codemie');
|
|
11
15
|
const CACHE_FILE = path.join(HOME, 'budget-cache.json');
|
|
12
16
|
const CONFIG_FILE = path.join(HOME, 'codemie-cli.config.json');
|
|
13
17
|
const CREDS_DIR = path.join(HOME, 'credentials');
|
|
14
18
|
const CACHE_TTL_MS = 60_000;
|
|
19
|
+
const CACHE_SCHEMA = 2; // bump when the cache.value shape changes, to discard stale pre-upgrade entries
|
|
15
20
|
|
|
16
21
|
const ENCRYPTION_KEY = (() => {
|
|
17
22
|
const id = os.hostname() + os.platform() + os.arch();
|
|
@@ -47,7 +52,7 @@ async function readCredsFile(filePath) {
|
|
|
47
52
|
}
|
|
48
53
|
}
|
|
49
54
|
|
|
50
|
-
async function getAuthHeaders(codeMieUrl) {
|
|
55
|
+
export async function getAuthHeaders(codeMieUrl) {
|
|
51
56
|
const hash = urlHash(codeMieUrl);
|
|
52
57
|
|
|
53
58
|
const sso = await readCredsFile(path.join(CREDS_DIR, `sso-${hash}.enc`));
|
|
@@ -63,23 +68,51 @@ async function getAuthHeaders(codeMieUrl) {
|
|
|
63
68
|
return null;
|
|
64
69
|
}
|
|
65
70
|
|
|
66
|
-
|
|
67
|
-
const res = await fetch(`${baseUrl}/v1/analytics/budget_usage`, {
|
|
68
|
-
headers: { 'Content-Type': 'application/json', 'X-CodeMie-Client': 'codemie-cli', ...headers },
|
|
69
|
-
});
|
|
70
|
-
if (!res.ok) throw new Error(`HTTP ${res.status}`);
|
|
71
|
+
// --- Pure functions (unit-testable, no filesystem/network access) ---
|
|
71
72
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
export function matchBudgetRow(rows, userEmail) {
|
|
74
|
+
if (!Array.isArray(rows) || !userEmail) return null;
|
|
75
|
+
const target = `${userEmail.trim().toLowerCase()} (cli)`;
|
|
76
|
+
return rows.find(r => r.project_name?.trim().toLowerCase() === target) ?? null;
|
|
77
|
+
}
|
|
75
78
|
|
|
76
|
-
|
|
79
|
+
export function formatBudgetSegment(row) {
|
|
80
|
+
if (!row) return null;
|
|
81
|
+
const pct = Math.round(row.total ?? 0);
|
|
82
|
+
const reset = row.budget_reset_at ? new Date(row.budget_reset_at).toLocaleDateString() : '?';
|
|
77
83
|
return {
|
|
78
|
-
text: `$${row.current_spending.toFixed(2)}
|
|
84
|
+
text: `$${row.current_spending.toFixed(2)} (${pct}%) resets ${reset}`,
|
|
79
85
|
pct,
|
|
80
86
|
};
|
|
81
87
|
}
|
|
82
88
|
|
|
89
|
+
export function extractBasicInfo(ctx) {
|
|
90
|
+
const cwd = ctx?.workspace?.current_dir ?? ctx?.cwd ?? '';
|
|
91
|
+
return {
|
|
92
|
+
projectName: cwd ? path.basename(cwd) : '',
|
|
93
|
+
cwd,
|
|
94
|
+
model: ctx?.model?.display_name ?? '',
|
|
95
|
+
ctxPct: ctx?.context_window?.used_percentage ?? null,
|
|
96
|
+
tokIn: ctx?.context_window?.total_input_tokens ?? null,
|
|
97
|
+
tokOut: ctx?.context_window?.total_output_tokens ?? null,
|
|
98
|
+
cost: ctx?.cost?.total_cost_usd ?? null,
|
|
99
|
+
durationMs: ctx?.cost?.total_duration_ms ?? null,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export function formatDuration(ms) {
|
|
104
|
+
if (typeof ms !== 'number' || Number.isNaN(ms) || ms < 0) return null;
|
|
105
|
+
const mins = Math.floor(ms / 60000);
|
|
106
|
+
const secs = Math.floor((ms % 60000) / 1000);
|
|
107
|
+
return `${mins}m ${secs}s`;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export function fmt(n) {
|
|
111
|
+
if (n >= 1_000_000) return `${(n / 1_000_000).toFixed(1)}M`;
|
|
112
|
+
if (n >= 1_000) return `${(n / 1_000).toFixed(1)}k`;
|
|
113
|
+
return String(n);
|
|
114
|
+
}
|
|
115
|
+
|
|
83
116
|
const C = {
|
|
84
117
|
reset: '\x1b[0m',
|
|
85
118
|
purple: '\x1b[38;2;177;185;249m',
|
|
@@ -90,33 +123,42 @@ const C = {
|
|
|
90
123
|
blue: '\x1b[0;94m',
|
|
91
124
|
gray: '\x1b[0;37m',
|
|
92
125
|
};
|
|
93
|
-
|
|
94
126
|
const c = (color, text) => `${color}${text}${C.reset}`;
|
|
95
127
|
|
|
96
|
-
function fmt(n) {
|
|
97
|
-
if (n >= 1_000_000) return `${(n / 1_000_000).toFixed(1)}M`;
|
|
98
|
-
if (n >= 1_000) return `${(n / 1_000).toFixed(1)}k`;
|
|
99
|
-
return String(n);
|
|
100
|
-
}
|
|
101
|
-
|
|
102
128
|
function budgetColor(pct) {
|
|
103
|
-
if (pct < 0) return C.yellow;
|
|
104
129
|
return pct > 85 ? C.red : pct > 30 ? C.yellow : C.green;
|
|
105
130
|
}
|
|
106
131
|
|
|
107
|
-
function
|
|
132
|
+
export function ctxBar(pct) {
|
|
133
|
+
if (typeof pct !== 'number' || Number.isNaN(pct)) return null;
|
|
134
|
+
const clamped = Math.max(0, Math.min(100, pct));
|
|
135
|
+
const color = clamped >= 90 ? C.red : clamped >= 70 ? C.yellow : C.green;
|
|
136
|
+
const filled = Math.floor(clamped / 10);
|
|
137
|
+
const bar = '█'.repeat(filled) + '░'.repeat(10 - filled);
|
|
138
|
+
return `${c(color, bar)} ${pct}%`;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
export function buildStatusLine({ projectName, branch, model, ctxPct, tokIn, tokOut, cost, durationMs, budget, budgetError }) {
|
|
108
142
|
const parts = [];
|
|
109
143
|
|
|
110
144
|
if (projectName) parts.push(c(C.purple, `[${projectName}]`));
|
|
111
|
-
if (budget)
|
|
112
|
-
if (
|
|
113
|
-
if (
|
|
145
|
+
if (budget) parts.push(c(budgetColor(budget.pct), budget.text));
|
|
146
|
+
else if (budgetError) parts.push(c(C.yellow, `⚠ ${budgetError}`));
|
|
147
|
+
if (branch) parts.push(c(C.blue, `(${branch})`));
|
|
148
|
+
if (model) parts.push(c(C.cyan, `[${model}]`));
|
|
149
|
+
|
|
150
|
+
const bar = ctxBar(ctxPct);
|
|
151
|
+
if (bar) parts.push(bar);
|
|
114
152
|
|
|
115
153
|
const stats = [];
|
|
116
|
-
if (ctxPct != null) stats.push(`ctx:${ctxPct}%`);
|
|
117
154
|
if (tokIn != null) stats.push(`in:${fmt(tokIn)}`);
|
|
118
155
|
if (tokOut != null) stats.push(`out:${fmt(tokOut)}`);
|
|
119
|
-
if (stats.length)
|
|
156
|
+
if (stats.length) parts.push(c(C.gray, stats.join(' ')));
|
|
157
|
+
|
|
158
|
+
if (typeof cost === 'number' && !Number.isNaN(cost)) parts.push(c(C.yellow, `$${cost.toFixed(4)}`));
|
|
159
|
+
|
|
160
|
+
const dur = formatDuration(durationMs);
|
|
161
|
+
if (dur) parts.push(c(C.gray, dur));
|
|
120
162
|
|
|
121
163
|
return parts.join(' | ');
|
|
122
164
|
}
|
|
@@ -141,84 +183,96 @@ function gitBranch(cwd) {
|
|
|
141
183
|
});
|
|
142
184
|
}
|
|
143
185
|
|
|
144
|
-
|
|
145
|
-
const [stdinRaw, cacheRaw] = await Promise.all([
|
|
146
|
-
readStdin(),
|
|
147
|
-
fs.readFile(CACHE_FILE, 'utf8').catch(() => null),
|
|
148
|
-
]);
|
|
186
|
+
// --- Budget resolution (network/filesystem; dependencies injectable for tests) ---
|
|
149
187
|
|
|
150
|
-
|
|
188
|
+
export async function resolveBudget({
|
|
189
|
+
readFile = fs.readFile,
|
|
190
|
+
writeFile = fs.writeFile,
|
|
191
|
+
fetchImpl = fetch,
|
|
192
|
+
getAuthHeadersImpl = getAuthHeaders,
|
|
193
|
+
} = {}) {
|
|
194
|
+
// Fast path: fresh cache, skip config/network entirely. Discard any cache entry that
|
|
195
|
+
// isn't this schema version (e.g. a pre-upgrade string-shaped value) instead of trusting it.
|
|
151
196
|
try {
|
|
152
|
-
const
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
197
|
+
const cacheRaw = await readFile(CACHE_FILE, 'utf8');
|
|
198
|
+
const cache = JSON.parse(cacheRaw);
|
|
199
|
+
const validShape = cache.schema === CACHE_SCHEMA
|
|
200
|
+
&& typeof cache.value === 'object' && cache.value !== null
|
|
201
|
+
&& typeof cache.value.text === 'string';
|
|
202
|
+
if (validShape && Date.now() - cache.ts < CACHE_TTL_MS) {
|
|
203
|
+
return { budget: cache.value, budgetError: null };
|
|
204
|
+
}
|
|
159
205
|
} catch {}
|
|
160
206
|
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
if (Date.now() - cache.ts < CACHE_TTL_MS) {
|
|
167
|
-
const branch = await branchPromise;
|
|
168
|
-
process.stdout.write(buildStatusLine({
|
|
169
|
-
projectName, branch, model, ctxPct, tokIn, tokOut,
|
|
170
|
-
budget: cache.value, budgetPct: cache.pct ?? 0,
|
|
171
|
-
}));
|
|
172
|
-
return;
|
|
173
|
-
}
|
|
174
|
-
} catch {}
|
|
207
|
+
let config;
|
|
208
|
+
try {
|
|
209
|
+
config = JSON.parse(await readFile(CONFIG_FILE, 'utf8'));
|
|
210
|
+
} catch {
|
|
211
|
+
return { budget: null, budgetError: null }; // no CodeMie config at all → skip silently
|
|
175
212
|
}
|
|
176
213
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
config = JSON.parse(await fs.readFile(CONFIG_FILE, 'utf8'));
|
|
183
|
-
} catch {
|
|
184
|
-
budget = '⚠ no config'; budgetPct = -1; break;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
const profile = config.profiles?.[config.activeProfile];
|
|
188
|
-
if (!profile) { budget = '⚠ no profile'; budgetPct = -1; break; }
|
|
214
|
+
const profile = config.profiles?.[config.activeProfile];
|
|
215
|
+
const { codeMieUrl, baseUrl, userEmail } = profile ?? {};
|
|
216
|
+
if (!profile || !codeMieUrl || !baseUrl || !userEmail) {
|
|
217
|
+
return { budget: null, budgetError: null }; // no CodeMie profile configured → skip silently
|
|
218
|
+
}
|
|
189
219
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
220
|
+
let headers;
|
|
221
|
+
try {
|
|
222
|
+
headers = await getAuthHeadersImpl(codeMieUrl);
|
|
223
|
+
} catch (e) {
|
|
224
|
+
return { budget: null, budgetError: e.message };
|
|
225
|
+
}
|
|
226
|
+
if (!headers) {
|
|
227
|
+
return { budget: null, budgetError: 'reauthenticate' };
|
|
228
|
+
}
|
|
197
229
|
|
|
198
|
-
|
|
199
|
-
|
|
230
|
+
try {
|
|
231
|
+
const res = await fetchImpl(`${baseUrl}/v1/analytics/budget_usage`, {
|
|
232
|
+
headers: { 'Content-Type': 'application/json', 'X-CodeMie-Client': 'codemie-cli', ...headers },
|
|
233
|
+
});
|
|
234
|
+
if (!res.ok) throw new Error(`HTTP ${res.status}`);
|
|
235
|
+
|
|
236
|
+
const json = await res.json();
|
|
237
|
+
const row = matchBudgetRow(json?.data?.rows, userEmail);
|
|
238
|
+
if (!row) throw new Error('budget row not found');
|
|
239
|
+
|
|
240
|
+
const budget = formatBudgetSegment(row);
|
|
241
|
+
await writeFile(CACHE_FILE, JSON.stringify({ schema: CACHE_SCHEMA, ts: Date.now(), value: budget }), 'utf8');
|
|
242
|
+
return { budget, budgetError: null };
|
|
243
|
+
} catch (e) {
|
|
244
|
+
return { budget: null, budgetError: e.message };
|
|
245
|
+
}
|
|
246
|
+
}
|
|
200
247
|
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
budget = `⚠ ${budgetResult.error}`; budgetPct = -1; break;
|
|
204
|
-
}
|
|
248
|
+
export async function main() {
|
|
249
|
+
const stdinRaw = await readStdin();
|
|
205
250
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
);
|
|
251
|
+
let basic;
|
|
252
|
+
try {
|
|
253
|
+
basic = extractBasicInfo(JSON.parse(stdinRaw));
|
|
254
|
+
} catch {
|
|
255
|
+
basic = extractBasicInfo({});
|
|
256
|
+
}
|
|
211
257
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
} while (false);
|
|
258
|
+
const branchPromise = basic.cwd ? gitBranch(basic.cwd) : Promise.resolve('');
|
|
259
|
+
const [budgetResult, branch] = await Promise.all([resolveBudget(), branchPromise]);
|
|
215
260
|
|
|
216
|
-
|
|
261
|
+
process.stdout.write(buildStatusLine({ ...basic, branch, ...budgetResult }));
|
|
262
|
+
}
|
|
217
263
|
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
264
|
+
// Compares decoded paths (not raw strings) so this correctly matches even when the
|
|
265
|
+
// script's path contains characters import.meta.url percent-encodes (e.g. spaces).
|
|
266
|
+
export function isMainModule(argv1, metaUrl) {
|
|
267
|
+
if (!argv1) return false;
|
|
268
|
+
try {
|
|
269
|
+
return fileURLToPath(metaUrl) === argv1;
|
|
270
|
+
} catch {
|
|
271
|
+
return false;
|
|
272
|
+
}
|
|
222
273
|
}
|
|
223
274
|
|
|
224
|
-
|
|
275
|
+
if (isMainModule(process.argv[1], import.meta.url)) {
|
|
276
|
+
// Statusline must never crash Claude Code — swallow any unexpected error.
|
|
277
|
+
main().catch(() => { process.stdout.write(''); });
|
|
278
|
+
}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
export declare const STATUSLINE_NAME = "statusline";
|
|
2
2
|
export declare const STATUSLINE_DISPLAY_NAME = "CodeMie Statusline";
|
|
3
3
|
export declare const STATUSLINE_DESCRIPTION = "Budget usage, project, branch, model, context & token stats for Claude Code";
|
|
4
|
-
export
|
|
4
|
+
export interface InstallStatuslineResult {
|
|
5
|
+
scriptPath: string;
|
|
6
|
+
alreadyConfigured: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function installStatusline(): Promise<InstallStatuslineResult>;
|
|
5
9
|
export declare function uninstallStatusline(): Promise<void>;
|
|
6
10
|
export declare function isStatuslineInstalled(): boolean;
|
|
7
|
-
export declare function promptBudgetSelection(): Promise<boolean>;
|
|
8
11
|
//# sourceMappingURL=statusline-installer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statusline-installer.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/claude/statusline-installer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"statusline-installer.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/claude/statusline-installer.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,eAAe,eAAe,CAAC;AAC5C,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,sBAAsB,gFAAgF,CAAC;AAMpH,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,uBAAuB,CAAC,CA4C1E;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAiCzD;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAE/C"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { readFile, writeFile, mkdir, chmod, rm
|
|
1
|
+
import { readFile, writeFile, mkdir, chmod, rm } from 'fs/promises';
|
|
2
2
|
import { existsSync } from 'fs';
|
|
3
3
|
import { join } from 'path';
|
|
4
4
|
import { homedir } from 'os';
|
|
5
|
-
import { getDirname, resolveHomeDir
|
|
5
|
+
import { getDirname, resolveHomeDir } from '../../../utils/paths.js';
|
|
6
6
|
import { logger } from '../../../utils/logger.js';
|
|
7
|
-
import { sanitizeLogArgs
|
|
7
|
+
import { sanitizeLogArgs } from '../../../utils/security.js';
|
|
8
8
|
import { ConfigurationError } from '../../../utils/errors.js';
|
|
9
|
-
import { ConfigLoader } from '../../../utils/config.js';
|
|
10
9
|
export const STATUSLINE_NAME = 'statusline';
|
|
11
10
|
export const STATUSLINE_DISPLAY_NAME = 'CodeMie Statusline';
|
|
12
11
|
export const STATUSLINE_DESCRIPTION = 'Budget usage, project, branch, model, context & token stats for Claude Code';
|
|
13
12
|
const SCRIPT_FILENAME = 'codemie-budget-status.js';
|
|
13
|
+
const LEGACY_SCRIPT_FILENAME = 'codemie-statusline.mjs';
|
|
14
14
|
const REFRESH_INTERVAL = 60;
|
|
15
15
|
export async function installStatusline() {
|
|
16
16
|
const claudeHome = resolveHomeDir('.claude');
|
|
@@ -35,6 +35,7 @@ export async function installStatusline() {
|
|
|
35
35
|
throw new ConfigurationError('Could not parse ~/.claude/settings.json');
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
+
const alreadyConfigured = Boolean(settings.statusLine);
|
|
38
39
|
settings.statusLine = {
|
|
39
40
|
type: 'command',
|
|
40
41
|
command: `node "${scriptPath}"`,
|
|
@@ -42,15 +43,21 @@ export async function installStatusline() {
|
|
|
42
43
|
};
|
|
43
44
|
await writeFile(settingsPath, JSON.stringify(settings, null, 2), 'utf-8');
|
|
44
45
|
logger.debug('[Statusline] Installed', ...sanitizeLogArgs({ scriptPath }));
|
|
45
|
-
return scriptPath;
|
|
46
|
+
return { scriptPath, alreadyConfigured };
|
|
46
47
|
}
|
|
47
48
|
export async function uninstallStatusline() {
|
|
48
49
|
const claudeHome = resolveHomeDir('.claude');
|
|
49
50
|
const scriptPath = join(claudeHome, SCRIPT_FILENAME);
|
|
51
|
+
const legacyScriptPath = join(claudeHome, LEGACY_SCRIPT_FILENAME);
|
|
50
52
|
const settingsPath = join(claudeHome, 'settings.json');
|
|
51
53
|
if (existsSync(scriptPath)) {
|
|
52
54
|
await rm(scriptPath);
|
|
53
55
|
}
|
|
56
|
+
// Clean up the orphaned artifact from the old, now-removed --status flag mechanism,
|
|
57
|
+
// in case it was ever written by a version prior to this consolidation.
|
|
58
|
+
if (existsSync(legacyScriptPath)) {
|
|
59
|
+
await rm(legacyScriptPath);
|
|
60
|
+
}
|
|
54
61
|
if (existsSync(settingsPath)) {
|
|
55
62
|
try {
|
|
56
63
|
const raw = await readFile(settingsPath, 'utf-8');
|
|
@@ -70,58 +77,4 @@ export async function uninstallStatusline() {
|
|
|
70
77
|
export function isStatuslineInstalled() {
|
|
71
78
|
return existsSync(join(homedir(), '.claude', SCRIPT_FILENAME));
|
|
72
79
|
}
|
|
73
|
-
export async function promptBudgetSelection() {
|
|
74
|
-
const config = await ConfigLoader.loadMultiProviderConfig();
|
|
75
|
-
const profileName = config.activeProfile;
|
|
76
|
-
const profile = config.profiles?.[profileName];
|
|
77
|
-
if (!profile?.codeMieUrl || !profile?.baseUrl)
|
|
78
|
-
return false;
|
|
79
|
-
const store = CredentialStore.getInstance();
|
|
80
|
-
const [sso, jwt] = await Promise.all([
|
|
81
|
-
store.retrieveSSOCredentials(profile.codeMieUrl),
|
|
82
|
-
store.retrieveJWTCredentials(profile.codeMieUrl),
|
|
83
|
-
]);
|
|
84
|
-
const headers = {};
|
|
85
|
-
if (sso?.cookies) {
|
|
86
|
-
headers['cookie'] = Object.entries(sso.cookies).map(([k, v]) => `${k}=${v}`).join(';');
|
|
87
|
-
}
|
|
88
|
-
else if (jwt?.token) {
|
|
89
|
-
headers['authorization'] = `Bearer ${jwt.token}`;
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
return false;
|
|
93
|
-
}
|
|
94
|
-
let rows;
|
|
95
|
-
try {
|
|
96
|
-
const res = await fetch(`${profile.baseUrl}/v1/analytics/budget_usage`, {
|
|
97
|
-
headers: { 'Content-Type': 'application/json', 'X-CodeMie-Client': 'codemie-cli', ...headers },
|
|
98
|
-
});
|
|
99
|
-
if (!res.ok)
|
|
100
|
-
return false;
|
|
101
|
-
const json = await res.json();
|
|
102
|
-
rows = json?.data?.rows ?? [];
|
|
103
|
-
}
|
|
104
|
-
catch {
|
|
105
|
-
return false;
|
|
106
|
-
}
|
|
107
|
-
if (!rows.length)
|
|
108
|
-
return false;
|
|
109
|
-
const inquirer = (await import('inquirer')).default;
|
|
110
|
-
const budgetNames = rows.map(r => r.project_name);
|
|
111
|
-
const { budgetName } = await inquirer.prompt([{
|
|
112
|
-
type: 'list',
|
|
113
|
-
name: 'budgetName',
|
|
114
|
-
message: 'Select budget to track in the statusline:',
|
|
115
|
-
choices: budgetNames,
|
|
116
|
-
default: profile.statuslineBudgetName ?? budgetNames[0],
|
|
117
|
-
}]);
|
|
118
|
-
const previousBudgetName = profile.statuslineBudgetName;
|
|
119
|
-
profile.statuslineBudgetName = budgetName;
|
|
120
|
-
await ConfigLoader.saveProfile(profileName, profile);
|
|
121
|
-
if (budgetName !== previousBudgetName) {
|
|
122
|
-
await unlink(join(getCodemieHome(), 'budget-cache.json')).catch(() => { });
|
|
123
|
-
}
|
|
124
|
-
logger.debug('[Statusline] Budget name saved', ...sanitizeLogArgs({ budgetName }));
|
|
125
|
-
return true;
|
|
126
|
-
}
|
|
127
80
|
//# sourceMappingURL=statusline-installer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statusline-installer.js","sourceRoot":"","sources":["../../../../src/agents/plugins/claude/statusline-installer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"statusline-installer.js","sourceRoot":"","sources":["../../../../src/agents/plugins/claude/statusline-installer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex.plugin.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/codex/codex.plugin.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAE/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AAyD7F,eAAO,MAAM,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"codex.plugin.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/codex/codex.plugin.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAE/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AAyD7F,eAAO,MAAM,mBAAmB,EAAE,aAkUjC,CAAC;AA6BF;;;;;GAKG;AACH,qBAAa,WAAY,SAAQ,gBAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;;IAOhD;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAerC;;;;;;;OAOG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAe1C;;;;;;OAMG;IACH,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS;cAQhC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB1E;;OAEG;IACH,iBAAiB,IAAI,cAAc;IAInC;;OAEG;IACH,qBAAqB,IAAI,sBAAsB,GAAG,SAAS;CAG5D"}
|
|
@@ -56,16 +56,16 @@ import { mkdir, realpath as fsRealpath } from 'fs/promises';
|
|
|
56
56
|
*
|
|
57
57
|
* **UPDATE THIS WHEN BUMPING CODEX VERSION**
|
|
58
58
|
*/
|
|
59
|
-
const CODEX_SUPPORTED_VERSION = '0.
|
|
59
|
+
const CODEX_SUPPORTED_VERSION = '0.143.0';
|
|
60
60
|
/**
|
|
61
61
|
* Minimum supported Codex CLI version
|
|
62
62
|
* Versions below this are known to be incompatible and will be blocked from starting
|
|
63
63
|
* Rule: always 10 minor versions below CODEX_SUPPORTED_VERSION for 0.x Codex releases
|
|
64
|
-
* e.g. supported = 0.
|
|
64
|
+
* e.g. supported = 0.143.0 → minimum = 0.133.0
|
|
65
65
|
*
|
|
66
66
|
* **UPDATE THIS WHEN BUMPING CODEX VERSION**
|
|
67
67
|
*/
|
|
68
|
-
const CODEX_MINIMUM_SUPPORTED_VERSION = '0.
|
|
68
|
+
const CODEX_MINIMUM_SUPPORTED_VERSION = '0.133.0';
|
|
69
69
|
/**
|
|
70
70
|
* Build a hook config object from environment variables.
|
|
71
71
|
* Used by both onSessionStart and onSessionEnd lifecycle hooks.
|
|
@@ -91,6 +91,7 @@ export const CodexPluginMetadata = {
|
|
|
91
91
|
description: 'OpenAI Codex CLI - AI coding agent by OpenAI',
|
|
92
92
|
npmPackage: '@openai/codex',
|
|
93
93
|
cliCommand: process.env.CODEMIE_CODEX_BIN || 'codex',
|
|
94
|
+
sessionAnalyticsReport: true,
|
|
94
95
|
// Version management configuration
|
|
95
96
|
supportedVersion: CODEX_SUPPORTED_VERSION, // Latest version tested with CodeMie backend
|
|
96
97
|
minimumSupportedVersion: CODEX_MINIMUM_SUPPORTED_VERSION, // Minimum version required to run
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex.plugin.js","sourceRoot":"","sources":["../../../../src/agents/plugins/codex/codex.plugin.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAKlE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EACL,+BAA+B,EAC/B,0BAA0B,EAC1B,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EACL,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAE1C;;;;;;;GAOG;AACH,MAAM,+BAA+B,GAAG,SAAS,CAAC;AAElD;;;GAGG;AACH,SAAS,eAAe,CAAC,GAAsB,EAAE,SAAiB;IAChE,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,aAAa,IAAI,OAAO;QACvC,SAAS;QACT,QAAQ,EAAE,GAAG,CAAC,gBAAgB;QAC9B,UAAU,EAAE,GAAG,CAAC,gBAAgB;QAChC,MAAM,EAAE,GAAG,CAAC,WAAW;QACvB,UAAU,EAAE,GAAG,CAAC,oBAAoB;QACpC,OAAO,EAAE,GAAG,CAAC,mBAAmB;QAChC,WAAW,EAAE,GAAG,CAAC,oBAAoB;QACrC,OAAO,EAAE,GAAG,CAAC,eAAe;QAC5B,KAAK,EAAE,GAAG,CAAC,aAAa;QACxB,UAAU,EAAE,eAAe;KAC5B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAkB;IAChD,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EAAE,8CAA8C;IAC3D,UAAU,EAAE,eAAe;IAC3B,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO;IAEpD,mCAAmC;IACnC,gBAAgB,EAAE,uBAAuB,EAAQ,6CAA6C;IAC9F,uBAAuB,EAAE,+BAA+B,EAAE,kCAAkC;IAE5F,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ,EAAE,kDAAkD;KACnE;IACD,gBAAgB,EAAE;QAChB,OAAO,EAAE,QAAQ;QACjB,MAAM,EAAE,UAAU;QAClB,eAAe,EAAE,UAAU;KAC5B;IACD,UAAU,EAAE;QACV,8DAA8D;QAC9D,OAAO,EAAE,CAAC,iBAAiB,CAAC;QAC5B,yCAAyC;QACzC,iFAAiF;QACjF,8EAA8E;QAC9E,yEAAyE;QACzE,wEAAwE;QACxE,MAAM,EAAE,CAAC,gBAAgB,CAAC;QAC1B,KAAK,EAAE,EAAE;KACV;IACD,kBAAkB,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,SAAS,CAAC;IAC5D,oBAAoB,EAAE,EAAE;IACxB,iBAAiB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,CAAC;IAE3E,SAAS,EAAE;QACT,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,eAAe;KAC5B;IAED,eAAe,EAAE;QACf,QAAQ,EAAE,YAAY;QACtB,UAAU,EAAE,UAAU;QACtB,SAAS,EAAE,wBAAwB;QACnC,SAAS,EAAE,SAAS;QACpB,eAAe,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC;QAC9D,iBAAiB,EAAE,CAAC,wBAAwB,CAAC;KAC9C;IAED,SAAS,EAAE;QACT;;;;;;;WAOG;QACH,KAAK,CAAC,SAAS,CAAC,GAAsB;YACpC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;gBACpB,GAAG,CAAC,UAAU,GAAG,cAAc,CAAC,qBAAqB,CAAC,CAAC;YACzD,CAAC;YAED,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAEjD,OAAO,GAAG,CAAC;QACb,CAAC;QAED;;;;;;WAMG;QACH,KAAK,CAAC,cAAc,CAAC,SAAiB,EAAE,GAAsB;YAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,GAAG,CAAC,wBAAwB,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;YAEjD,IAAI,CAAC;gBACH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;gBACvE,MAAM,KAAK,GAAG;oBACZ,eAAe,EAAE,cAAc;oBAC/B,UAAU,EAAE,SAAS;oBACrB,eAAe,EAAE,EAAE;oBACnB,eAAe,EAAE,SAAS;oBAC1B,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;oBAClB,MAAM,EAAE,SAAS;iBAClB,CAAC;gBACF,MAAM,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;gBAC3D,MAAM,CAAC,IAAI,CAAC,mDAAmD,SAAS,EAAE,CAAC,CAAC;YAC9E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,CAAC,KAAK,CAAC,oDAAoD,GAAG,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,qEAAqE;YACrE,wEAAwE;YACxE,wEAAwE;YACxE,+DAA+D;YAC/D,KAAK,2BAA2B,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACrE,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,CAAC,KAAK,CAAC,+DAA+D,GAAG,EAAE,CAAC,CAAC;YACrF,CAAC,CAAC,CAAC;YAEH,qEAAqE;YACrE,0EAA0E;YAC1E,0EAA0E;YAC1E,6DAA6D;YAC7D,IAAI,CAAC;gBACH,yBAAyB,CAAC;oBACxB,SAAS;oBACT,SAAS;oBACT,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;oBAClB,QAAQ,EAAE,mBAAmB;oBAC7B,MAAM,EAAE,GAAG,CAAC,WAAW;oBACvB,UAAU,EAAE,GAAG,CAAC,oBAAoB,IAAI,GAAG,CAAC,gBAAgB;oBAC5D,UAAU,EAAE,GAAG,CAAC,mBAAmB;oBACnC,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;wBACnB,SAAS;wBACT,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE;wBACtC,OAAO,EAAE,EAAE;wBACX,UAAU,EAAE,eAAe;wBAC3B,OAAO,EAAE,GAAG,CAAC,mBAAmB,IAAI,OAAO;wBAC3C,MAAM,EAAE,KAAK;qBACd,CAAC;iBACH,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,CAAC,KAAK,CAAC,mDAAmD,GAAG,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QAED;;;;;;;;;;;WAWG;QACH,UAAU,CAAC,IAAc,EAAE,MAAmB;YAC5C,IAAI,QAAQ,GAAG,IAAI,CAAC;YAEpB,iEAAiE;YACjE,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,SAAS,KAAK,CAAC,CAAC,IAAI,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAClE,CAAC,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC;gBACzB,CAAC,CAAC,SAAS,CAAC;YAEd,0DAA0D;YAC1D,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;YACjF,CAAC;YAED,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxD,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gBAC1C,MAAM,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;gBACjF,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBAChE,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC;YAC3C,CAAC;iBAAM,IAAI,QAAQ,EAAE,CAAC;gBACpB,sEAAsE;gBACtE,QAAQ,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC;YAC/C,CAAC;YACD,2EAA2E;YAE3E,2DAA2D;YAC3D,MAAM,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,eAAe,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,EAAE,CAAC;iBACvE,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;iBAC1B,MAAM,CAAC,OAAO,CAAC,CAAC;YAEnB,IAAI,aAAa,EAAE,CAAC;gBAClB,+BAA+B,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;YAClE,CAAC;iBAAM,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;gBACzB,QAAQ,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,CAAC;YACpD,CAAC;YAED,qEAAqE;YACrE,iFAAiF;YACjF,gFAAgF;YAChF,+EAA+E;YAC/E,qEAAqE;YACrE,4DAA4D;YAC5D,IAAI,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBAC1E,QAAQ,GAAG;oBACT,UAAU,EAAE,0BAA0B;oBACtC,UAAU,EAAE,wCAAwC;oBACpD,UAAU,EAAE,qCAAqC,MAAM,CAAC,OAAO,GAAG;oBAClE,UAAU,EAAE,mDAAmD;oBAC/D,UAAU,EAAE,8CAA8C;oBAC1D,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC;wBAC9C,CAAC,CAAC,CAAC,UAAU,EAAE,uBAAuB,OAAO,CAAC,GAAG,CAAC,gCAAgC,GAAG,CAAC;wBACtF,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,QAAQ;iBACZ,CAAC;YACJ,CAAC;YAED,kDAAkD;YAClD,uEAAuE;YACvE,QAAQ,GAAG;gBACT,UAAU,EAAE,uBAAuB;gBACnC,UAAU,EAAE,wBAAwB;gBACpC,UAAU,EAAE,yBAAyB;gBACrC,UAAU,EAAE,0BAA0B;gBACtC,GAAG,QAAQ;aACZ,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED;;;;;;;;;;;;WAYG;QACH,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE,GAAsB;YACzD,MAAM,SAAS,GAAG,GAAG,CAAC,kBAAkB,CAAC;YAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAC;gBAC9F,OAAO;YACT,CAAC;YAED,sEAAsE;YACtE,yBAAyB;YACzB,wBAAwB,CAAC,SAAS,CAAC,CAAC;YAEpC,gFAAgF;YAChF,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,4CAA4C,QAAQ,GAAG,CAAC,CAAC;gBAErE,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;gBAC7D,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBAE9E,MAAM,SAAS,GAAG,GAAG,CAAC,wBAAwB;oBAC5C,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC;oBACtC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;gBAC/B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC;gBAC/C,MAAM,cAAc,GAAwB,EAAE,CAAC;gBAE/C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC/B,IAAI,OAAO,CAAC,SAAS,GAAG,SAAS,GAAG,MAAM,EAAE,CAAC;wBAC3C,SAAS;oBACX,CAAC;oBAED,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;wBAC3E,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC;wBACjD,IAAI,CAAC,WAAW;4BAAE,SAAS;wBAC3B,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,CAAC;wBACpD,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;4BAC5B,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,CAAC,KAAK,CAAC,gDAAgD,EAAE,KAAK,CAAC,CAAC;oBACxE,CAAC;gBACH,CAAC;gBAED,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChC,MAAM,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;gBACnF,CAAC;qBAAM,CAAC;oBACN,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;oBACxC,MAAM,CAAC,KAAK,CAAC,sCAAsC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;oBAE9E,MAAM,OAAO,GAAG;wBACd,SAAS;wBACT,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE;wBACtC,OAAO,EAAE,EAAE;wBACX,UAAU,EAAE,eAAe;wBAC3B,OAAO,EAAE,GAAG,CAAC,mBAAmB,IAAI,OAAO;wBAC3C,MAAM,EAAE,KAAK;qBACd,CAAC;oBAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;oBAExF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,MAAM,CAAC,IAAI,CAAC,qCAAqC,MAAM,CAAC,YAAY,UAAU,CAAC,CAAC;oBAClF,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,CAAC,4CAA4C,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAChG,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,CAAC,KAAK,CAAC,qDAAqD,GAAG,EAAE,CAAC,CAAC;YAC3E,CAAC;YAED,iDAAiD;YACjD,IAAI,CAAC;gBACH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;gBACvE,MAAM,KAAK,GAAG;oBACZ,eAAe,EAAE,YAAY;oBAC7B,UAAU,EAAE,SAAS;oBACrB,eAAe,EAAE,EAAE;oBACnB,eAAe,EAAE,SAAS;oBAC1B,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;oBAClB,MAAM,EAAE,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,QAAQ,GAAG;iBACtD,CAAC;gBACF,MAAM,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;gBAC3D,MAAM,CAAC,IAAI,CAAC,iDAAiD,SAAS,EAAE,CAAC,CAAC;YAC5E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,CAAC,KAAK,CAAC,kDAAkD,GAAG,EAAE,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;KACF;CACF,CAAC;AAEF,SAAS,mBAAmB,CAAC,IAAc;IACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,OAAO,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,YAAY,CAAC,CAAS;IACnC,IAAI,CAAC;QACH,OAAO,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,WAAY,SAAQ,gBAAgB;IAC9B,cAAc,CAAiB;IAEhD;QACE,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;IACrE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC5C,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9B,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;QAElD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;YAClE,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YACvD,MAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACrD,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CAAC,IAAc;QAClC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;QAC7B,IAAI,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5D,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEkB,KAAK,CAAC,UAAU,CAAC,GAAsB;QACxD,IAAI,GAAG,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACvC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,kBAAkB,CAC1B,UAAU,GAAG,CAAC,aAAa,IAAI,SAAS,0CAA0C;oBAClF,oCAAoC,CACrC,CAAC;YACJ,CAAC;YAED,GAAG,CAAC,8BAA8B,GAAG,GAAG,CAAC,aAAa,CAAC;YACvD,MAAM,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAEhD,GAAG,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC7C,GAAG,CAAC,8BAA8B,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1E,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;YAC3B,GAAG,CAAC,gCAAgC,GAAG,UAAU,CAAC,WAAW,CAAC;QAChE,CAAC;QAED,MAAM,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"codex.plugin.js","sourceRoot":"","sources":["../../../../src/agents/plugins/codex/codex.plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@ export declare class KimiPlugin extends BaseAgentAdapter {
|
|
|
31
31
|
* back to the command in PATH for other installation methods.
|
|
32
32
|
*/
|
|
33
33
|
getVersion(): Promise<string | null>;
|
|
34
|
-
installVersion(version?: string): Promise<
|
|
34
|
+
installVersion(version?: string): Promise<string | null>;
|
|
35
35
|
protected setupProxy(env: NodeJS.ProcessEnv): Promise<void>;
|
|
36
36
|
}
|
|
37
37
|
//# sourceMappingURL=kimi.plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kimi.plugin.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/kimi/kimi.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AA6B7F,eAAO,MAAM,kBAAkB,EAAE,aA0EhC,CAAC;AAEF,qBAAa,UAAW,SAAQ,gBAAgB;IAC9C,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,kBAAkB,CAAC,CAAyB;IACpD,OAAO,CAAC,eAAe,CAAC,CAAkB;gBAE9B,QAAQ,GAAE,aAAkC;IAIxD,iBAAiB,IAAI,cAAc;IAOnC,qBAAqB,IAAI,sBAAsB;IAO/C,kBAAkB,IAAI,eAAe;IAOtB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;YAqChC,aAAa;
|
|
1
|
+
{"version":3,"file":"kimi.plugin.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/kimi/kimi.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AA6B7F,eAAO,MAAM,kBAAkB,EAAE,aA0EhC,CAAC;AAEF,qBAAa,UAAW,SAAQ,gBAAgB;IAC9C,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,kBAAkB,CAAC,CAAyB;IACpD,OAAO,CAAC,eAAe,CAAC,CAAkB;gBAE9B,QAAQ,GAAE,aAAkC;IAIxD,iBAAiB,IAAI,cAAc;IAOnC,qBAAqB,IAAI,sBAAsB;IAO/C,kBAAkB,IAAI,eAAe;IAOtB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;YAqChC,aAAa;IA+CZ,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvC;;;;;;;OAOG;IACY,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDzC;;;;;;OAMG;IACY,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAwCpC,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;cAuC9C,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAW3E"}
|
|
@@ -164,6 +164,7 @@ export class KimiPlugin extends BaseAgentAdapter {
|
|
|
164
164
|
throw new AgentInstallationError(this.metadata.name, `Installation failed. Output: ${result.output}`);
|
|
165
165
|
}
|
|
166
166
|
logger.success(`${this.metadata.displayName} installed successfully`);
|
|
167
|
+
return result.installedVersion ?? null;
|
|
167
168
|
}
|
|
168
169
|
catch (error) {
|
|
169
170
|
if (error instanceof AgentInstallationError) {
|
|
@@ -177,7 +178,7 @@ export class KimiPlugin extends BaseAgentAdapter {
|
|
|
177
178
|
}
|
|
178
179
|
}
|
|
179
180
|
async install() {
|
|
180
|
-
|
|
181
|
+
await this.installVersion(undefined);
|
|
181
182
|
}
|
|
182
183
|
/**
|
|
183
184
|
* Uninstall Kimi Code native binary and npm wrapper package.
|
|
@@ -301,7 +302,7 @@ export class KimiPlugin extends BaseAgentAdapter {
|
|
|
301
302
|
throw new AgentInstallationError(this.metadata.name, `Invalid version format: '${version}'. Expected semantic version (e.g., '1.0.0'), 'latest', 'stable', 'supported', or 'npm'.`);
|
|
302
303
|
}
|
|
303
304
|
}
|
|
304
|
-
await this.installNative(resolvedVersion);
|
|
305
|
+
return await this.installNative(resolvedVersion);
|
|
305
306
|
}
|
|
306
307
|
async setupProxy(env) {
|
|
307
308
|
if (env.CODEMIE_PROVIDER === 'ai-run-sso' || env.CODEMIE_AUTH_METHOD === 'jwt') {
|