@dotobokuri/fleet-console 1.38.0 → 1.40.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/dist/cli.mjs +43 -1090
- package/dist/client/assets/{_baseUniq-DjwZK6Tv.js → _baseUniq-Bao5GOIa.js} +1 -1
- package/dist/client/assets/{arc-CsNVntqy.js → arc-DnhHMLy9.js} +1 -1
- package/dist/client/assets/{architectureDiagram-Q4EWVU46-Bi8y-wkL.js → architectureDiagram-Q4EWVU46-DAbURr0a.js} +1 -1
- package/dist/client/assets/{blockDiagram-DXYQGD6D-BB2SFu76.js → blockDiagram-DXYQGD6D-DE1raZQ6.js} +1 -1
- package/dist/client/assets/{c4Diagram-AHTNJAMY-BBxhzDJZ.js → c4Diagram-AHTNJAMY-beLZlUB3.js} +1 -1
- package/dist/client/assets/channel-Bn1wyUhs.js +1 -0
- package/dist/client/assets/{chunk-4BX2VUAB-CHPrg3nb.js → chunk-4BX2VUAB-DEqdunZS.js} +1 -1
- package/dist/client/assets/{chunk-4TB4RGXK-DLvawyNq.js → chunk-4TB4RGXK-D8i5nx4L.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-CLptp70m.js → chunk-55IACEB6-eM3-fH_e.js} +1 -1
- package/dist/client/assets/{chunk-EDXVE4YY-DS0cHoGJ.js → chunk-EDXVE4YY-nQoyt_Pd.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-DHhgFtRl.js → chunk-FMBD7UC4-D8Wq8CYj.js} +1 -1
- package/dist/client/assets/{chunk-OYMX7WX6-CK20Lrh5.js → chunk-OYMX7WX6-Cx4Wr2ZT.js} +1 -1
- package/dist/client/assets/{chunk-QZHKN3VN-BWu1gka4.js → chunk-QZHKN3VN-BM2v7Krr.js} +1 -1
- package/dist/client/assets/{chunk-YZCP3GAM-Ce_uXK7W.js → chunk-YZCP3GAM-zTniPxm7.js} +1 -1
- package/dist/client/assets/classDiagram-6PBFFD2Q-DBE3Ix3c.js +1 -0
- package/dist/client/assets/classDiagram-v2-HSJHXN6E-DBE3Ix3c.js +1 -0
- package/dist/client/assets/clone-COL47Wy_.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-lmqr4Zox.js → cose-bilkent-S5V4N54A-B5pl2A_p.js} +1 -1
- package/dist/client/assets/{dagre-KV5264BT-Cqf_UZn0.js → dagre-KV5264BT-KHPgW9C2.js} +1 -1
- package/dist/client/assets/{diagram-5BDNPKRD-B0F2kqdZ.js → diagram-5BDNPKRD-DCv28c7S.js} +1 -1
- package/dist/client/assets/{diagram-G4DWMVQ6-Y5Zcbc98.js → diagram-G4DWMVQ6-mT5WQ415.js} +1 -1
- package/dist/client/assets/{diagram-MMDJMWI5-B-vHgBZG.js → diagram-MMDJMWI5-iKYfjiRC.js} +1 -1
- package/dist/client/assets/{diagram-TYMM5635-BfBWDsiG.js → diagram-TYMM5635-_uqBP7vH.js} +1 -1
- package/dist/client/assets/{erDiagram-SMLLAGMA-CB6H1ShS.js → erDiagram-SMLLAGMA-DxNN1WhN.js} +1 -1
- package/dist/client/assets/{flowDiagram-DWJPFMVM-BX9hx0Y6.js → flowDiagram-DWJPFMVM-DGTsrBvM.js} +1 -1
- package/dist/client/assets/{ganttDiagram-T4ZO3ILL-CHQBgJ4X.js → ganttDiagram-T4ZO3ILL-C17hg4lr.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-UUTBAWPF-kbhc2fZE.js → gitGraphDiagram-UUTBAWPF-CeJ25hAd.js} +1 -1
- package/dist/client/assets/{graph-yw0uXaMX.js → graph-BQvb-BfT.js} +1 -1
- package/dist/client/assets/index-Ca6HkGPQ.css +1 -0
- package/dist/client/assets/index-Cr3Xq85X.js +452 -0
- package/dist/client/assets/{infoDiagram-42DDH7IO-BunmSTvD.js → infoDiagram-42DDH7IO-BctsofOZ.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-UXIWVN3A-pI7F4-Qw.js → ishikawaDiagram-UXIWVN3A-PiPmxcg9.js} +1 -1
- package/dist/client/assets/{journeyDiagram-VCZTEJTY-CncxtERF.js → journeyDiagram-VCZTEJTY-BwkjYq3n.js} +1 -1
- package/dist/client/assets/{kanban-definition-6JOO6SKY-CuD4mvBd.js → kanban-definition-6JOO6SKY-CSV4dYfF.js} +1 -1
- package/dist/client/assets/{layout-DGY5fGik.js → layout-DdReLJnP.js} +1 -1
- package/dist/client/assets/{linear-BYUWMe2Y.js → linear-B54euy_k.js} +1 -1
- package/dist/client/assets/{mermaid.core-Drc--ixx.js → mermaid.core-CF92I5mT.js} +4 -4
- package/dist/client/assets/{min-CJlVQqXb.js → min-BcETQ2qJ.js} +1 -1
- package/dist/client/assets/{mindmap-definition-QFDTVHPH-BAzsMkbE.js → mindmap-definition-QFDTVHPH-CrmVPycO.js} +1 -1
- package/dist/client/assets/{pieDiagram-DEJITSTG-DHoVF7we.js → pieDiagram-DEJITSTG-B5d4jR0H.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-34T5L4WZ-DGVM0S1B.js → quadrantDiagram-34T5L4WZ-DlgCNExa.js} +1 -1
- package/dist/client/assets/{requirementDiagram-MS252O5E-Djmc_jRD.js → requirementDiagram-MS252O5E-CeuVib_X.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-XADWPNL6-B09zCkQb.js → sankeyDiagram-XADWPNL6-Bzxv73ik.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-FGHM5R23-BrFxwAwj.js → sequenceDiagram-FGHM5R23-B0Ondg0u.js} +1 -1
- package/dist/client/assets/{stateDiagram-FHFEXIEX-xzpsyAQ4.js → stateDiagram-FHFEXIEX-CuNHg5DJ.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-BVPbUfrG.js +1 -0
- package/dist/client/assets/{timeline-definition-GMOUNBTQ-Kl-ES34i.js → timeline-definition-GMOUNBTQ-DXcye6z7.js} +1 -1
- package/dist/client/assets/{vennDiagram-DHZGUBPP-w_yD8Rg6.js → vennDiagram-DHZGUBPP-CL4rbpzL.js} +1 -1
- package/dist/client/assets/{wardley-RL74JXVD-CaZiB9zS.js → wardley-RL74JXVD-rVZBTA_R.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-NUSXRM2D-CjUg4N9u.js → wardleyDiagram-NUSXRM2D-Cb8Arj1F.js} +1 -1
- package/dist/client/assets/{xychartDiagram-5P7HB3ND-DsY1zkO5.js → xychartDiagram-5P7HB3ND-C-qp4Say.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/client/theme-boot.js +5 -4
- package/dist/fleet-plugins/ledger/routes.mjs +0 -33
- package/dist/fleet-plugins/quota/routes.mjs +672 -0
- package/dist/fleet-plugins/scuttlebutt/routes.mjs +1 -351
- package/dist/fleet-plugins/skills/routes.mjs +0 -33
- package/dist/fleet-plugins/terminal/routes.mjs +462 -2017
- package/package.json +1 -1
- package/dist/client/assets/channel-Ddn4Rope.js +0 -1
- package/dist/client/assets/classDiagram-6PBFFD2Q-qu46c_rd.js +0 -1
- package/dist/client/assets/classDiagram-v2-HSJHXN6E-qu46c_rd.js +0 -1
- package/dist/client/assets/clone-DDNlSib4.js +0 -1
- package/dist/client/assets/index-B1Ew8y-o.css +0 -1
- package/dist/client/assets/index-CWK41DSi.js +0 -452
- package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-CxkWw9en.js +0 -1
|
@@ -19409,23 +19409,6 @@ var models_default = {
|
|
|
19409
19409
|
{ modelId: "gpt-5.5-fast", name: "GPT-5.5 Fast", providerModelId: "gpt-5.5", serviceTier: "priority", effort: { supported: true, levels: ["low", "medium", "high", "xhigh"], default: "high" } }
|
|
19410
19410
|
]
|
|
19411
19411
|
},
|
|
19412
|
-
"opencode-go": {
|
|
19413
|
-
name: "OpenCode Go",
|
|
19414
|
-
defaultModel: "opencode-go/deepseek-v4-flash",
|
|
19415
|
-
models: [
|
|
19416
|
-
{ modelId: "opencode-go/deepseek-v4-flash", name: "DeepSeek V4 Flash", effort: { supported: false } },
|
|
19417
|
-
{ modelId: "opencode-go/deepseek-v4-pro", name: "DeepSeek V4 Pro", effort: { supported: false } },
|
|
19418
|
-
{ modelId: "opencode-go/glm-5.2", name: "GLM-5.2", effort: { supported: false } },
|
|
19419
|
-
{ modelId: "opencode-go/grok-4.5", name: "Grok 4.5", effort: { supported: false } },
|
|
19420
|
-
{ modelId: "opencode-go/kimi-k3", name: "Kimi K3", effort: { supported: false } },
|
|
19421
|
-
{ modelId: "opencode-go/kimi-k2.7-code", name: "Kimi K2.7 Code", effort: { supported: false } },
|
|
19422
|
-
{ modelId: "opencode-go/mimo-v2.5", name: "MiMo V2.5", effort: { supported: false } },
|
|
19423
|
-
{ modelId: "opencode-go/mimo-v2.5-pro", name: "MiMo V2.5 Pro", effort: { supported: false } },
|
|
19424
|
-
{ modelId: "opencode-go/minimax-m3", name: "MiniMax M3", effort: { supported: false } },
|
|
19425
|
-
{ modelId: "opencode-go/qwen3.7-max", name: "Qwen3.7 Max", effort: { supported: false } },
|
|
19426
|
-
{ modelId: "opencode-go/qwen3.7-plus", name: "Qwen3.7 Plus", effort: { supported: false } }
|
|
19427
|
-
]
|
|
19428
|
-
},
|
|
19429
19412
|
cursor: {
|
|
19430
19413
|
name: "Cursor Agent",
|
|
19431
19414
|
defaultModel: "auto",
|
|
@@ -19683,22 +19666,6 @@ var CLI_BACKENDS = {
|
|
|
19683
19666
|
usesNpxBridge: false,
|
|
19684
19667
|
defaultMaxTokens: 1e5
|
|
19685
19668
|
},
|
|
19686
|
-
"opencode-go": {
|
|
19687
|
-
id: "opencode-go",
|
|
19688
|
-
cliCommand: "opencode",
|
|
19689
|
-
protocol: "acp",
|
|
19690
|
-
authRequired: false,
|
|
19691
|
-
acpArgs: ["acp"],
|
|
19692
|
-
modes: [
|
|
19693
|
-
{ id: "build", label: "Build" },
|
|
19694
|
-
{ id: "plan", label: "Plan" }
|
|
19695
|
-
],
|
|
19696
|
-
supportsSessionClose: true,
|
|
19697
|
-
supportsSessionLoad: true,
|
|
19698
|
-
requiresModelAtSpawn: true,
|
|
19699
|
-
usesNpxBridge: false,
|
|
19700
|
-
defaultMaxTokens: 128e3
|
|
19701
|
-
},
|
|
19702
19669
|
cursor: {
|
|
19703
19670
|
id: "cursor",
|
|
19704
19671
|
cliCommand: "cursor-agent",
|
|
@@ -19760,8 +19727,6 @@ function getYoloModeId(cli) {
|
|
|
19760
19727
|
case "claude":
|
|
19761
19728
|
case "claude-kimi":
|
|
19762
19729
|
return "bypassPermissions";
|
|
19763
|
-
case "opencode-go":
|
|
19764
|
-
return "build";
|
|
19765
19730
|
case "cursor":
|
|
19766
19731
|
return "agent";
|
|
19767
19732
|
case "codex":
|
|
@@ -22161,319 +22126,6 @@ var UnifiedCursorAgentClient = class extends EventEmitter {
|
|
|
22161
22126
|
return patterns.some((pattern) => pattern.test(text));
|
|
22162
22127
|
}
|
|
22163
22128
|
};
|
|
22164
|
-
var UnifiedOpenCodeAgentClient = class _UnifiedOpenCodeAgentClient extends EventEmitter {
|
|
22165
|
-
providerId;
|
|
22166
|
-
connection = null;
|
|
22167
|
-
sessionId = null;
|
|
22168
|
-
sessionCwd = null;
|
|
22169
|
-
currentSystemPrompt = null;
|
|
22170
|
-
/** 첫 프롬프트 전송 시 systemPrompt를 텍스트 블록으로 앞에 붙이기 위한 플래그 */
|
|
22171
|
-
firstPromptPending = null;
|
|
22172
|
-
detector = new CliDetector();
|
|
22173
|
-
constructor(providerId) {
|
|
22174
|
-
super();
|
|
22175
|
-
this.providerId = providerId;
|
|
22176
|
-
}
|
|
22177
|
-
on(event, listener) {
|
|
22178
|
-
return super.on(event, listener);
|
|
22179
|
-
}
|
|
22180
|
-
once(event, listener) {
|
|
22181
|
-
return super.once(event, listener);
|
|
22182
|
-
}
|
|
22183
|
-
off(event, listener) {
|
|
22184
|
-
return super.off(event, listener);
|
|
22185
|
-
}
|
|
22186
|
-
emitTyped(event, ...args) {
|
|
22187
|
-
return super.emit(event, ...args);
|
|
22188
|
-
}
|
|
22189
|
-
async connect(options) {
|
|
22190
|
-
await this.disconnect();
|
|
22191
|
-
if (options.cli && options.cli !== this.providerId) {
|
|
22192
|
-
throw new Error(`UnifiedOpenCodeAgentClient\uB294 ${this.providerId} CLI\uB9CC \uC9C0\uC6D0\uD569\uB2C8\uB2E4.`);
|
|
22193
|
-
}
|
|
22194
|
-
const acpMcpServers = this.resolveMcpServers(options.mcpServers);
|
|
22195
|
-
const spawnConfig = createSpawnConfig(this.providerId, options);
|
|
22196
|
-
const cleanEnv = cleanEnvironment(process.env, options.env);
|
|
22197
|
-
cleanEnv.OPENCODE_CONFIG_CONTENT = JSON.stringify({
|
|
22198
|
-
agent: {
|
|
22199
|
-
explore: { disable: true },
|
|
22200
|
-
plan: { disable: true },
|
|
22201
|
-
general: { disable: true }
|
|
22202
|
-
}
|
|
22203
|
-
});
|
|
22204
|
-
const connection = new AcpConnection({
|
|
22205
|
-
command: spawnConfig.command,
|
|
22206
|
-
args: spawnConfig.args,
|
|
22207
|
-
cliType: this.providerId,
|
|
22208
|
-
cwd: options.cwd,
|
|
22209
|
-
env: cleanEnv,
|
|
22210
|
-
requestTimeout: options.timeout,
|
|
22211
|
-
initTimeout: options.timeout,
|
|
22212
|
-
promptIdleTimeout: options.promptIdleTimeout,
|
|
22213
|
-
clientInfo: options.clientInfo,
|
|
22214
|
-
autoApprove: options.autoApprove,
|
|
22215
|
-
fsAccess: options.fsAccess
|
|
22216
|
-
});
|
|
22217
|
-
this.connection = connection;
|
|
22218
|
-
this.setupEventForwarding();
|
|
22219
|
-
const recentLogs = [];
|
|
22220
|
-
const collectLog = (message) => {
|
|
22221
|
-
recentLogs.push(message);
|
|
22222
|
-
if (recentLogs.length > 30) {
|
|
22223
|
-
recentLogs.shift();
|
|
22224
|
-
}
|
|
22225
|
-
};
|
|
22226
|
-
connection.on("log", collectLog);
|
|
22227
|
-
let session;
|
|
22228
|
-
try {
|
|
22229
|
-
session = await connection.connect(
|
|
22230
|
-
options.cwd,
|
|
22231
|
-
options.sessionId,
|
|
22232
|
-
acpMcpServers,
|
|
22233
|
-
void 0
|
|
22234
|
-
);
|
|
22235
|
-
} catch (error51) {
|
|
22236
|
-
const connectionError = this.buildConnectionError(error51, recentLogs);
|
|
22237
|
-
await this.cleanupFailedConnection();
|
|
22238
|
-
throw connectionError;
|
|
22239
|
-
} finally {
|
|
22240
|
-
connection.off("log", collectLog);
|
|
22241
|
-
}
|
|
22242
|
-
return this.finalizeConnect(options, session);
|
|
22243
|
-
}
|
|
22244
|
-
async disconnect() {
|
|
22245
|
-
if (!this.connection) {
|
|
22246
|
-
this.clearSessionState();
|
|
22247
|
-
return;
|
|
22248
|
-
}
|
|
22249
|
-
const conn = this.connection;
|
|
22250
|
-
await conn.disconnect();
|
|
22251
|
-
conn.removeAllListeners();
|
|
22252
|
-
this.connection = null;
|
|
22253
|
-
this.clearSessionState();
|
|
22254
|
-
}
|
|
22255
|
-
async endSession() {
|
|
22256
|
-
if (!this.connection || !this.sessionId) {
|
|
22257
|
-
throw new Error("\uC5F0\uACB0\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4");
|
|
22258
|
-
}
|
|
22259
|
-
await this.connection.endSession(this.sessionId);
|
|
22260
|
-
this.sessionId = null;
|
|
22261
|
-
}
|
|
22262
|
-
getConnectionInfo() {
|
|
22263
|
-
return {
|
|
22264
|
-
cli: this.connection ? this.providerId : null,
|
|
22265
|
-
protocol: this.connection ? "acp" : null,
|
|
22266
|
-
sessionId: this.sessionId,
|
|
22267
|
-
state: this.connection ? this.connection.connectionState : "disconnected"
|
|
22268
|
-
};
|
|
22269
|
-
}
|
|
22270
|
-
async detectClis() {
|
|
22271
|
-
return this.detector.detectAll(true);
|
|
22272
|
-
}
|
|
22273
|
-
async sendMessage(content) {
|
|
22274
|
-
if (!this.connection || !this.sessionId) {
|
|
22275
|
-
throw new Error("\uC5F0\uACB0\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4");
|
|
22276
|
-
}
|
|
22277
|
-
const systemPrompt = this.firstPromptPending;
|
|
22278
|
-
if (!systemPrompt) {
|
|
22279
|
-
return this.connection.sendPrompt(this.sessionId, content);
|
|
22280
|
-
}
|
|
22281
|
-
const userBlocks = typeof content === "string" ? [{ type: "text", text: content }] : content;
|
|
22282
|
-
const response = await this.connection.sendPrompt(this.sessionId, [
|
|
22283
|
-
{ type: "text", text: systemPrompt },
|
|
22284
|
-
...userBlocks
|
|
22285
|
-
]);
|
|
22286
|
-
this.firstPromptPending = null;
|
|
22287
|
-
return response;
|
|
22288
|
-
}
|
|
22289
|
-
async cancelPrompt() {
|
|
22290
|
-
if (!this.connection || !this.sessionId) {
|
|
22291
|
-
throw new Error("\uC5F0\uACB0\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4");
|
|
22292
|
-
}
|
|
22293
|
-
await this.connection.cancelSession(this.sessionId);
|
|
22294
|
-
}
|
|
22295
|
-
async setModel(model) {
|
|
22296
|
-
if (!this.connection || !this.sessionId) {
|
|
22297
|
-
throw new Error("\uC5F0\uACB0\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4");
|
|
22298
|
-
}
|
|
22299
|
-
await this.connection.setModel(this.sessionId, model);
|
|
22300
|
-
}
|
|
22301
|
-
async setConfigOption(configId, value) {
|
|
22302
|
-
if (!this.connection || !this.sessionId) {
|
|
22303
|
-
throw new Error("\uC5F0\uACB0\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4");
|
|
22304
|
-
}
|
|
22305
|
-
await this.connection.setConfigOption(this.sessionId, configId, value);
|
|
22306
|
-
}
|
|
22307
|
-
async setMode(mode) {
|
|
22308
|
-
if (!this.connection || !this.sessionId) {
|
|
22309
|
-
throw new Error("\uC5F0\uACB0\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4");
|
|
22310
|
-
}
|
|
22311
|
-
await this.connection.setMode(this.sessionId, mode);
|
|
22312
|
-
}
|
|
22313
|
-
async setYoloMode(enabled) {
|
|
22314
|
-
return this.setMode(enabled ? getYoloModeId(this.providerId) : "plan");
|
|
22315
|
-
}
|
|
22316
|
-
getAvailableModes() {
|
|
22317
|
-
return getBackendConfig(this.providerId).modes ?? [];
|
|
22318
|
-
}
|
|
22319
|
-
getAvailableModels() {
|
|
22320
|
-
return getProviderModels(this.providerId);
|
|
22321
|
-
}
|
|
22322
|
-
getCurrentSystemPrompt() {
|
|
22323
|
-
return this.currentSystemPrompt;
|
|
22324
|
-
}
|
|
22325
|
-
async loadSession(sessionId, mcpServers) {
|
|
22326
|
-
if (!this.connection) {
|
|
22327
|
-
throw new Error("\uC5F0\uACB0\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4");
|
|
22328
|
-
}
|
|
22329
|
-
await this.connection.loadSession({
|
|
22330
|
-
sessionId,
|
|
22331
|
-
cwd: this.sessionCwd ?? process.cwd(),
|
|
22332
|
-
mcpServers: this.resolveMcpServers(mcpServers)
|
|
22333
|
-
});
|
|
22334
|
-
this.sessionId = sessionId;
|
|
22335
|
-
this.currentSystemPrompt = null;
|
|
22336
|
-
this.firstPromptPending = null;
|
|
22337
|
-
}
|
|
22338
|
-
async resetSession(cwd) {
|
|
22339
|
-
if (!this.connection) {
|
|
22340
|
-
throw new Error("\uC5F0\uACB0\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4");
|
|
22341
|
-
}
|
|
22342
|
-
const targetCwd = cwd ?? this.sessionCwd ?? process.cwd();
|
|
22343
|
-
await this.disconnect();
|
|
22344
|
-
const newClient = new _UnifiedOpenCodeAgentClient(this.providerId);
|
|
22345
|
-
const result = await newClient.connect({
|
|
22346
|
-
cwd: targetCwd,
|
|
22347
|
-
autoApprove: true,
|
|
22348
|
-
systemPrompt: this.currentSystemPrompt ?? void 0
|
|
22349
|
-
});
|
|
22350
|
-
this.connection = newClient.connection;
|
|
22351
|
-
this.sessionId = newClient.sessionId;
|
|
22352
|
-
this.sessionCwd = newClient.sessionCwd;
|
|
22353
|
-
this.currentSystemPrompt = newClient.currentSystemPrompt;
|
|
22354
|
-
this.firstPromptPending = newClient.firstPromptPending;
|
|
22355
|
-
this.setupEventForwarding();
|
|
22356
|
-
newClient.removeAllListeners();
|
|
22357
|
-
return {
|
|
22358
|
-
cli: this.providerId,
|
|
22359
|
-
protocol: "acp",
|
|
22360
|
-
session: result.session
|
|
22361
|
-
};
|
|
22362
|
-
}
|
|
22363
|
-
resolveMcpServers(servers) {
|
|
22364
|
-
return servers?.length ? mcpServerConfigsToAcp(servers) : [];
|
|
22365
|
-
}
|
|
22366
|
-
async finalizeConnect(options, session) {
|
|
22367
|
-
if (options.yoloMode && session.sessionId) {
|
|
22368
|
-
try {
|
|
22369
|
-
await this.connection.setMode(session.sessionId, getYoloModeId(this.providerId));
|
|
22370
|
-
} catch {
|
|
22371
|
-
}
|
|
22372
|
-
}
|
|
22373
|
-
if (options.model && session.sessionId) {
|
|
22374
|
-
try {
|
|
22375
|
-
await this.connection.setModel(session.sessionId, options.model);
|
|
22376
|
-
} catch {
|
|
22377
|
-
}
|
|
22378
|
-
}
|
|
22379
|
-
this.sessionId = session.sessionId;
|
|
22380
|
-
this.sessionCwd = options.cwd;
|
|
22381
|
-
this.currentSystemPrompt = options.systemPrompt ?? null;
|
|
22382
|
-
this.firstPromptPending = options.sessionId ? null : this.currentSystemPrompt;
|
|
22383
|
-
return {
|
|
22384
|
-
cli: this.providerId,
|
|
22385
|
-
protocol: "acp",
|
|
22386
|
-
session
|
|
22387
|
-
};
|
|
22388
|
-
}
|
|
22389
|
-
clearSessionState() {
|
|
22390
|
-
this.sessionId = null;
|
|
22391
|
-
this.sessionCwd = null;
|
|
22392
|
-
this.currentSystemPrompt = null;
|
|
22393
|
-
this.firstPromptPending = null;
|
|
22394
|
-
}
|
|
22395
|
-
setupEventForwarding() {
|
|
22396
|
-
if (!this.connection) return;
|
|
22397
|
-
this.connection.on("stateChange", (state) => {
|
|
22398
|
-
this.emitTyped("stateChange", state);
|
|
22399
|
-
});
|
|
22400
|
-
this.connection.on("userMessageChunk", (text, sessionId) => {
|
|
22401
|
-
this.emitTyped("userMessageChunk", text, sessionId);
|
|
22402
|
-
});
|
|
22403
|
-
this.connection.on("messageChunk", (text, sessionId) => {
|
|
22404
|
-
this.emitTyped("messageChunk", text, sessionId);
|
|
22405
|
-
});
|
|
22406
|
-
this.connection.on("thoughtChunk", (text, sessionId) => {
|
|
22407
|
-
this.emitTyped("thoughtChunk", text, sessionId);
|
|
22408
|
-
});
|
|
22409
|
-
this.connection.on("toolCall", (title, status, sessionId, data) => {
|
|
22410
|
-
this.emitTyped("toolCall", title, status, sessionId, data);
|
|
22411
|
-
});
|
|
22412
|
-
this.connection.on("toolCallUpdate", (title, status, sessionId, data) => {
|
|
22413
|
-
this.emitTyped("toolCallUpdate", title, status, sessionId, data);
|
|
22414
|
-
});
|
|
22415
|
-
this.connection.on("plan", (plan, sessionId) => {
|
|
22416
|
-
this.emitTyped("plan", plan, sessionId);
|
|
22417
|
-
});
|
|
22418
|
-
this.connection.on("availableCommandsUpdate", (commands, sessionId) => {
|
|
22419
|
-
this.emitTyped("availableCommandsUpdate", commands, sessionId);
|
|
22420
|
-
});
|
|
22421
|
-
this.connection.on("sessionUpdate", (update) => {
|
|
22422
|
-
this.emitTyped("sessionUpdate", update);
|
|
22423
|
-
});
|
|
22424
|
-
this.connection.on("permissionRequest", (params, resolve) => {
|
|
22425
|
-
this.emitTyped("permissionRequest", params, resolve);
|
|
22426
|
-
});
|
|
22427
|
-
this.connection.on("fileRead", (params, resolve) => {
|
|
22428
|
-
this.emitTyped("fileRead", params, resolve);
|
|
22429
|
-
});
|
|
22430
|
-
this.connection.on("fileWrite", (params, resolve) => {
|
|
22431
|
-
this.emitTyped("fileWrite", params, resolve);
|
|
22432
|
-
});
|
|
22433
|
-
this.connection.on("promptComplete", (sessionId) => {
|
|
22434
|
-
this.emitTyped("promptComplete", sessionId);
|
|
22435
|
-
});
|
|
22436
|
-
this.connection.on("error", (err) => {
|
|
22437
|
-
this.emitTyped("error", err);
|
|
22438
|
-
});
|
|
22439
|
-
this.connection.on("exit", (code, signal) => {
|
|
22440
|
-
this.emitTyped("exit", code, signal);
|
|
22441
|
-
});
|
|
22442
|
-
this.connection.on("log", (msg) => {
|
|
22443
|
-
this.emitTyped("log", msg);
|
|
22444
|
-
});
|
|
22445
|
-
this.connection.on("logEntry", (entry) => {
|
|
22446
|
-
this.emitTyped("logEntry", entry);
|
|
22447
|
-
});
|
|
22448
|
-
}
|
|
22449
|
-
async cleanupFailedConnection() {
|
|
22450
|
-
if (!this.connection) {
|
|
22451
|
-
return;
|
|
22452
|
-
}
|
|
22453
|
-
try {
|
|
22454
|
-
await this.connection.disconnect();
|
|
22455
|
-
} catch {
|
|
22456
|
-
}
|
|
22457
|
-
this.connection.removeAllListeners();
|
|
22458
|
-
this.connection = null;
|
|
22459
|
-
this.clearSessionState();
|
|
22460
|
-
}
|
|
22461
|
-
buildConnectionError(error51, _recentLogs) {
|
|
22462
|
-
if (error51 instanceof Error) {
|
|
22463
|
-
return error51;
|
|
22464
|
-
}
|
|
22465
|
-
if (typeof error51 === "object" && error51 !== null) {
|
|
22466
|
-
const obj = error51;
|
|
22467
|
-
if (typeof obj.message === "string") {
|
|
22468
|
-
const code = typeof obj.code === "number" ? ` (code: ${obj.code})` : "";
|
|
22469
|
-
const data = obj.data ? ` \u2014 ${JSON.stringify(obj.data)}` : "";
|
|
22470
|
-
return new Error(`${obj.message}${code}${data}`);
|
|
22471
|
-
}
|
|
22472
|
-
return new Error(JSON.stringify(error51));
|
|
22473
|
-
}
|
|
22474
|
-
return new Error(String(error51));
|
|
22475
|
-
}
|
|
22476
|
-
};
|
|
22477
22129
|
|
|
22478
22130
|
// ../../packages/core-unified-agent/src/client/UnifiedAgent.ts
|
|
22479
22131
|
var UnifiedAgent = {
|
|
@@ -22484,8 +22136,6 @@ var UnifiedAgent = {
|
|
|
22484
22136
|
return new UnifiedClaudeAgentClient(cli);
|
|
22485
22137
|
case "codex":
|
|
22486
22138
|
return new UnifiedCodexAgentClient();
|
|
22487
|
-
case "opencode-go":
|
|
22488
|
-
return new UnifiedOpenCodeAgentClient("opencode-go");
|
|
22489
22139
|
case "cursor":
|
|
22490
22140
|
return new UnifiedCursorAgentClient();
|
|
22491
22141
|
}
|
|
@@ -22500,7 +22150,7 @@ var UnifiedAgent = {
|
|
|
22500
22150
|
const preferred = await new CliDetector().getPreferred();
|
|
22501
22151
|
if (!preferred) {
|
|
22502
22152
|
throw new Error(
|
|
22503
|
-
"\uC0AC\uC6A9 \uAC00\uB2A5\uD55C CLI\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4. claude, claude-kimi, codex,
|
|
22153
|
+
"\uC0AC\uC6A9 \uAC00\uB2A5\uD55C CLI\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4. claude, claude-kimi, codex, cursor \uC911 \uD558\uB098\uB97C \uC124\uCE58\uD574\uC8FC\uC138\uC694."
|
|
22504
22154
|
);
|
|
22505
22155
|
}
|
|
22506
22156
|
return this.createClient(preferred.cli);
|
|
@@ -16432,23 +16432,6 @@ var models_default = {
|
|
|
16432
16432
|
{ modelId: "gpt-5.5-fast", name: "GPT-5.5 Fast", providerModelId: "gpt-5.5", serviceTier: "priority", effort: { supported: true, levels: ["low", "medium", "high", "xhigh"], default: "high" } }
|
|
16433
16433
|
]
|
|
16434
16434
|
},
|
|
16435
|
-
"opencode-go": {
|
|
16436
|
-
name: "OpenCode Go",
|
|
16437
|
-
defaultModel: "opencode-go/deepseek-v4-flash",
|
|
16438
|
-
models: [
|
|
16439
|
-
{ modelId: "opencode-go/deepseek-v4-flash", name: "DeepSeek V4 Flash", effort: { supported: false } },
|
|
16440
|
-
{ modelId: "opencode-go/deepseek-v4-pro", name: "DeepSeek V4 Pro", effort: { supported: false } },
|
|
16441
|
-
{ modelId: "opencode-go/glm-5.2", name: "GLM-5.2", effort: { supported: false } },
|
|
16442
|
-
{ modelId: "opencode-go/grok-4.5", name: "Grok 4.5", effort: { supported: false } },
|
|
16443
|
-
{ modelId: "opencode-go/kimi-k3", name: "Kimi K3", effort: { supported: false } },
|
|
16444
|
-
{ modelId: "opencode-go/kimi-k2.7-code", name: "Kimi K2.7 Code", effort: { supported: false } },
|
|
16445
|
-
{ modelId: "opencode-go/mimo-v2.5", name: "MiMo V2.5", effort: { supported: false } },
|
|
16446
|
-
{ modelId: "opencode-go/mimo-v2.5-pro", name: "MiMo V2.5 Pro", effort: { supported: false } },
|
|
16447
|
-
{ modelId: "opencode-go/minimax-m3", name: "MiniMax M3", effort: { supported: false } },
|
|
16448
|
-
{ modelId: "opencode-go/qwen3.7-max", name: "Qwen3.7 Max", effort: { supported: false } },
|
|
16449
|
-
{ modelId: "opencode-go/qwen3.7-plus", name: "Qwen3.7 Plus", effort: { supported: false } }
|
|
16450
|
-
]
|
|
16451
|
-
},
|
|
16452
16435
|
cursor: {
|
|
16453
16436
|
name: "Cursor Agent",
|
|
16454
16437
|
defaultModel: "auto",
|
|
@@ -16653,22 +16636,6 @@ var CLI_BACKENDS = {
|
|
|
16653
16636
|
usesNpxBridge: false,
|
|
16654
16637
|
defaultMaxTokens: 1e5
|
|
16655
16638
|
},
|
|
16656
|
-
"opencode-go": {
|
|
16657
|
-
id: "opencode-go",
|
|
16658
|
-
cliCommand: "opencode",
|
|
16659
|
-
protocol: "acp",
|
|
16660
|
-
authRequired: false,
|
|
16661
|
-
acpArgs: ["acp"],
|
|
16662
|
-
modes: [
|
|
16663
|
-
{ id: "build", label: "Build" },
|
|
16664
|
-
{ id: "plan", label: "Plan" }
|
|
16665
|
-
],
|
|
16666
|
-
supportsSessionClose: true,
|
|
16667
|
-
supportsSessionLoad: true,
|
|
16668
|
-
requiresModelAtSpawn: true,
|
|
16669
|
-
usesNpxBridge: false,
|
|
16670
|
-
defaultMaxTokens: 128e3
|
|
16671
|
-
},
|
|
16672
16639
|
cursor: {
|
|
16673
16640
|
id: "cursor",
|
|
16674
16641
|
cliCommand: "cursor-agent",
|