@codemieai/code 0.0.51 → 0.0.52
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/agents/core/session/SessionStore.d.ts +4 -0
- package/dist/agents/core/session/SessionStore.d.ts.map +1 -1
- package/dist/agents/core/session/SessionStore.js +16 -4
- package/dist/agents/core/session/SessionStore.js.map +1 -1
- package/dist/agents/plugins/claude/claude.plugin.js +3 -3
- package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +1 -1
- package/dist/agents/plugins/claude/plugin/skills/claude-setup-audit/references/best-practices.md +1 -1
- package/dist/agents/plugins/claude/plugin/skills/msgraph/SKILL.md +34 -0
- package/dist/agents/plugins/claude/plugin/skills/msgraph/scripts/msgraph.js +185 -19
- package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/codemie-code.plugin.js +45 -7
- package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
- package/dist/agents/plugins/opencode/opencode-dynamic-models.d.ts +34 -0
- package/dist/agents/plugins/opencode/opencode-dynamic-models.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/opencode-dynamic-models.js +182 -0
- package/dist/agents/plugins/opencode/opencode-dynamic-models.js.map +1 -0
- package/dist/agents/plugins/opencode/opencode-model-configs.d.ts +21 -2
- package/dist/agents/plugins/opencode/opencode-model-configs.d.ts.map +1 -1
- package/dist/agents/plugins/opencode/opencode-model-configs.js +105 -8
- 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 +36 -6
- package/dist/agents/plugins/opencode/opencode.plugin.js.map +1 -1
- package/dist/agents/plugins/opencode/opencode.sqlite-reader.d.ts +10 -5
- package/dist/agents/plugins/opencode/opencode.sqlite-reader.d.ts.map +1 -1
- package/dist/agents/plugins/opencode/opencode.sqlite-reader.js +49 -5
- package/dist/agents/plugins/opencode/opencode.sqlite-reader.js.map +1 -1
- package/dist/cli/commands/assistants/constants.d.ts +5 -0
- package/dist/cli/commands/assistants/constants.d.ts.map +1 -1
- package/dist/cli/commands/assistants/constants.js +6 -1
- package/dist/cli/commands/assistants/constants.js.map +1 -1
- package/dist/cli/commands/assistants/setup/index.js +107 -3
- package/dist/cli/commands/assistants/setup/index.js.map +1 -1
- package/dist/cli/commands/assistants/setup/summary/index.d.ts +1 -1
- package/dist/cli/commands/assistants/setup/summary/index.d.ts.map +1 -1
- package/dist/cli/commands/assistants/setup/summary/index.js +4 -1
- package/dist/cli/commands/assistants/setup/summary/index.js.map +1 -1
- package/dist/providers/plugins/sso/sso.http-client.d.ts +40 -0
- package/dist/providers/plugins/sso/sso.http-client.d.ts.map +1 -1
- package/dist/providers/plugins/sso/sso.http-client.js +21 -0
- package/dist/providers/plugins/sso/sso.http-client.js.map +1 -1
- package/dist/utils/config.d.ts +7 -0
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +36 -0
- package/dist/utils/config.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dynamic model list fetcher for OpenCode / CodeMie-Code
|
|
3
|
+
*
|
|
4
|
+
* Every time the agent starts, this module fetches the live model catalogue
|
|
5
|
+
* from the CodeMie API (/v1/llm_models?include_all=true) and converts it to
|
|
6
|
+
* the OpenCodeModelConfig format used throughout the plugin layer.
|
|
7
|
+
*
|
|
8
|
+
* Authentication priority (first available wins):
|
|
9
|
+
* 1. JWT Bearer token (env.CODEMIE_JWT_TOKEN)
|
|
10
|
+
* 2. SSO stored credentials (looked up by env.CODEMIE_URL)
|
|
11
|
+
*
|
|
12
|
+
* On any error (network, auth, parse) the module silently falls back to the
|
|
13
|
+
* static OPENCODE_MODEL_CONFIGS so agent startup is never blocked.
|
|
14
|
+
*/
|
|
15
|
+
import type { LlmModel } from '../../../providers/plugins/sso/sso.http-client.js';
|
|
16
|
+
import type { OpenCodeModelConfig } from './opencode-model-configs.js';
|
|
17
|
+
/**
|
|
18
|
+
* Convert a raw /v1/llm_models entry to an OpenCodeModelConfig.
|
|
19
|
+
*
|
|
20
|
+
* Cost conversion: API uses $/token; OpenCode uses $/million tokens.
|
|
21
|
+
* e.g. 0.000003 $/token → 3.0 $/M tokens
|
|
22
|
+
*/
|
|
23
|
+
export declare function convertApiModelToOpenCodeConfig(model: LlmModel): OpenCodeModelConfig;
|
|
24
|
+
/**
|
|
25
|
+
* Fetch the live model catalogue from the CodeMie API and convert it to
|
|
26
|
+
* OpenCodeModelConfig format.
|
|
27
|
+
*
|
|
28
|
+
* @param baseUrl - CODEMIE_BASE_URL (authenticated proxy endpoint)
|
|
29
|
+
* @param codeMieUrl - CODEMIE_URL (CodeMie org URL used for SSO credential lookup)
|
|
30
|
+
* @param jwtToken - CODEMIE_JWT_TOKEN (optional Bearer token, preferred over SSO)
|
|
31
|
+
* @returns Map of modelId → OpenCodeModelConfig (dynamic) or OPENCODE_MODEL_CONFIGS (fallback)
|
|
32
|
+
*/
|
|
33
|
+
export declare function fetchDynamicModelConfigs(baseUrl: string, codeMieUrl: string | undefined, jwtToken?: string): Promise<Record<string, OpenCodeModelConfig>>;
|
|
34
|
+
//# sourceMappingURL=opencode-dynamic-models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opencode-dynamic-models.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode-dynamic-models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAElF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AA+DvE;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,QAAQ,GAAG,mBAAmB,CA0CpF;AAID;;;;;;;;GAQG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAyC9C"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dynamic model list fetcher for OpenCode / CodeMie-Code
|
|
3
|
+
*
|
|
4
|
+
* Every time the agent starts, this module fetches the live model catalogue
|
|
5
|
+
* from the CodeMie API (/v1/llm_models?include_all=true) and converts it to
|
|
6
|
+
* the OpenCodeModelConfig format used throughout the plugin layer.
|
|
7
|
+
*
|
|
8
|
+
* Authentication priority (first available wins):
|
|
9
|
+
* 1. JWT Bearer token (env.CODEMIE_JWT_TOKEN)
|
|
10
|
+
* 2. SSO stored credentials (looked up by env.CODEMIE_URL)
|
|
11
|
+
*
|
|
12
|
+
* On any error (network, auth, parse) the module silently falls back to the
|
|
13
|
+
* static OPENCODE_MODEL_CONFIGS so agent startup is never blocked.
|
|
14
|
+
*/
|
|
15
|
+
import { fetchCodeMieLlmModels } from '../../../providers/plugins/sso/sso.http-client.js';
|
|
16
|
+
import { OPENCODE_MODEL_CONFIGS } from './opencode-model-configs.js';
|
|
17
|
+
import { CodeMieSSO } from '../../../providers/plugins/sso/sso.auth.js';
|
|
18
|
+
import { logger } from '../../../utils/logger.js';
|
|
19
|
+
// ── Responses-API detection ──────────────────────────────────────────────────
|
|
20
|
+
//
|
|
21
|
+
// The /v1/llm_models endpoint does not expose a "mode" field, so we maintain
|
|
22
|
+
// an explicit list of model-name patterns that require OpenAI Responses API
|
|
23
|
+
// (POST /v1/responses) instead of Chat Completions (POST /v1/chat/completions).
|
|
24
|
+
//
|
|
25
|
+
// Naming conventions observed in CodeMie deployments:
|
|
26
|
+
// Responses API → gpt-5-2-*, gpt-5.2-*, gpt-5.x-codex-*, gpt-5-x-codex-*
|
|
27
|
+
// Chat Completions → gpt-4*, gpt-5-<year>-*, o1/o3/o4*, gemini-*, claude-*, …
|
|
28
|
+
//
|
|
29
|
+
// Update this list whenever new Responses-API-only models are deployed.
|
|
30
|
+
const RESPONSES_API_MODEL_PATTERNS = [
|
|
31
|
+
/^gpt-5-2-/, // gpt-5-2-2025-12-11 (and future gpt-5-2-YYYY-* variants)
|
|
32
|
+
/^gpt-5\.2-/, // gpt-5.2-chat
|
|
33
|
+
/^gpt-5-1-codex/, // gpt-5-1-codex-2025-11-13
|
|
34
|
+
/^gpt-5\.1-codex/, // gpt-5.1-codex, gpt-5.1-codex-mini, gpt-5.1-codex-max
|
|
35
|
+
/^gpt-5-3-codex/, // hyphenated variant of gpt-5.3-codex
|
|
36
|
+
/^gpt-5\.3-codex/, // gpt-5.3-codex-2026-02-24
|
|
37
|
+
];
|
|
38
|
+
function isResponsesApiModel(id) {
|
|
39
|
+
return RESPONSES_API_MODEL_PATTERNS.some(p => p.test(id));
|
|
40
|
+
}
|
|
41
|
+
// ── Family detection ─────────────────────────────────────────────────────────
|
|
42
|
+
function detectFamily(id) {
|
|
43
|
+
if (id.startsWith('claude'))
|
|
44
|
+
return 'claude-4';
|
|
45
|
+
if (id.startsWith('gemini'))
|
|
46
|
+
return 'gemini-2';
|
|
47
|
+
if (id.startsWith('gpt-4'))
|
|
48
|
+
return 'gpt-4';
|
|
49
|
+
if (id.startsWith('gpt-5'))
|
|
50
|
+
return 'gpt-5';
|
|
51
|
+
if (/^o[134]-/.test(id) || id === 'o1')
|
|
52
|
+
return 'openai-reasoning';
|
|
53
|
+
if (id.startsWith('qwen'))
|
|
54
|
+
return 'qwen3';
|
|
55
|
+
if (id.startsWith('deepseek'))
|
|
56
|
+
return 'deepseek';
|
|
57
|
+
if (id.startsWith('moonshotai') || id.startsWith('kimi'))
|
|
58
|
+
return 'kimi';
|
|
59
|
+
return id.split('-')[0] || id;
|
|
60
|
+
}
|
|
61
|
+
// ── Token-limit heuristics ───────────────────────────────────────────────────
|
|
62
|
+
//
|
|
63
|
+
// The /v1/llm_models endpoint does not include context/output token limits.
|
|
64
|
+
// We derive reasonable defaults from the model family.
|
|
65
|
+
function detectLimits(id, family) {
|
|
66
|
+
if (family === 'claude-4' || id.startsWith('claude'))
|
|
67
|
+
return { context: 200000, output: 64000 };
|
|
68
|
+
if (family === 'gemini-2' || id.startsWith('gemini'))
|
|
69
|
+
return { context: 1048576, output: 65536 };
|
|
70
|
+
if (id.startsWith('gpt-4.1'))
|
|
71
|
+
return { context: 1048576, output: 32768 };
|
|
72
|
+
if (id.startsWith('gpt-4o'))
|
|
73
|
+
return { context: 128000, output: 16384 };
|
|
74
|
+
if (id.startsWith('gpt-5'))
|
|
75
|
+
return { context: 400000, output: 128000 };
|
|
76
|
+
if (/^o[134]-/.test(id) || id === 'o1')
|
|
77
|
+
return { context: 200000, output: 100000 };
|
|
78
|
+
if (id.startsWith('qwen') || id.startsWith('moonshotai') || id.startsWith('kimi'))
|
|
79
|
+
return { context: 262144, output: 131072 };
|
|
80
|
+
if (id.startsWith('deepseek'))
|
|
81
|
+
return { context: 65536, output: 65536 };
|
|
82
|
+
return { context: 128000, output: 4096 };
|
|
83
|
+
}
|
|
84
|
+
// ── Conversion ───────────────────────────────────────────────────────────────
|
|
85
|
+
/**
|
|
86
|
+
* Convert a raw /v1/llm_models entry to an OpenCodeModelConfig.
|
|
87
|
+
*
|
|
88
|
+
* Cost conversion: API uses $/token; OpenCode uses $/million tokens.
|
|
89
|
+
* e.g. 0.000003 $/token → 3.0 $/M tokens
|
|
90
|
+
*/
|
|
91
|
+
export function convertApiModelToOpenCodeConfig(model) {
|
|
92
|
+
const id = model.deployment_name;
|
|
93
|
+
const family = detectFamily(id);
|
|
94
|
+
const limit = detectLimits(id, family);
|
|
95
|
+
const responsesApi = isResponsesApiModel(id);
|
|
96
|
+
const toPerMillion = (v) => (v ?? 0) * 1_000_000;
|
|
97
|
+
const costInput = toPerMillion(model.cost?.input);
|
|
98
|
+
const costOutput = toPerMillion(model.cost?.output);
|
|
99
|
+
const cacheRead = model.cost?.cache_read_input_token_cost != null
|
|
100
|
+
? toPerMillion(model.cost.cache_read_input_token_cost)
|
|
101
|
+
: undefined;
|
|
102
|
+
const today = new Date().toISOString().split('T')[0];
|
|
103
|
+
return {
|
|
104
|
+
id,
|
|
105
|
+
name: model.label || id,
|
|
106
|
+
displayName: model.label || id,
|
|
107
|
+
family,
|
|
108
|
+
tool_call: model.features?.tools ?? true,
|
|
109
|
+
reasoning: true,
|
|
110
|
+
attachment: model.multimodal ?? false,
|
|
111
|
+
temperature: model.features?.temperature ?? true,
|
|
112
|
+
structured_output: model.features?.tools ? true : undefined,
|
|
113
|
+
...(responsesApi && { use_responses_api: true }),
|
|
114
|
+
modalities: {
|
|
115
|
+
input: model.multimodal ? ['text', 'image'] : ['text'],
|
|
116
|
+
output: ['text'],
|
|
117
|
+
},
|
|
118
|
+
knowledge: today,
|
|
119
|
+
release_date: today,
|
|
120
|
+
last_updated: today,
|
|
121
|
+
open_weights: false,
|
|
122
|
+
cost: {
|
|
123
|
+
input: costInput,
|
|
124
|
+
output: costOutput,
|
|
125
|
+
...(cacheRead != null ? { cache_read: cacheRead } : {}),
|
|
126
|
+
},
|
|
127
|
+
limit,
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
// ── Main export ──────────────────────────────────────────────────────────────
|
|
131
|
+
/**
|
|
132
|
+
* Fetch the live model catalogue from the CodeMie API and convert it to
|
|
133
|
+
* OpenCodeModelConfig format.
|
|
134
|
+
*
|
|
135
|
+
* @param baseUrl - CODEMIE_BASE_URL (authenticated proxy endpoint)
|
|
136
|
+
* @param codeMieUrl - CODEMIE_URL (CodeMie org URL used for SSO credential lookup)
|
|
137
|
+
* @param jwtToken - CODEMIE_JWT_TOKEN (optional Bearer token, preferred over SSO)
|
|
138
|
+
* @returns Map of modelId → OpenCodeModelConfig (dynamic) or OPENCODE_MODEL_CONFIGS (fallback)
|
|
139
|
+
*/
|
|
140
|
+
export async function fetchDynamicModelConfigs(baseUrl, codeMieUrl, jwtToken) {
|
|
141
|
+
try {
|
|
142
|
+
let rawModels;
|
|
143
|
+
if (jwtToken) {
|
|
144
|
+
rawModels = await fetchCodeMieLlmModels(baseUrl, jwtToken);
|
|
145
|
+
logger.debug('[dynamic-models] Fetched model list via JWT auth');
|
|
146
|
+
}
|
|
147
|
+
else if (codeMieUrl) {
|
|
148
|
+
const sso = new CodeMieSSO();
|
|
149
|
+
const credentials = await sso.getStoredCredentials(codeMieUrl);
|
|
150
|
+
if (!credentials) {
|
|
151
|
+
logger.debug('[dynamic-models] No SSO credentials found, using static model configs');
|
|
152
|
+
return OPENCODE_MODEL_CONFIGS;
|
|
153
|
+
}
|
|
154
|
+
rawModels = await fetchCodeMieLlmModels(credentials.apiUrl, credentials.cookies);
|
|
155
|
+
logger.debug('[dynamic-models] Fetched model list via SSO auth');
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
logger.debug('[dynamic-models] No auth info in environment, using static model configs');
|
|
159
|
+
return OPENCODE_MODEL_CONFIGS;
|
|
160
|
+
}
|
|
161
|
+
const result = {};
|
|
162
|
+
for (const model of rawModels) {
|
|
163
|
+
if (!model.enabled)
|
|
164
|
+
continue;
|
|
165
|
+
const config = convertApiModelToOpenCodeConfig(model);
|
|
166
|
+
result[config.id] = config;
|
|
167
|
+
}
|
|
168
|
+
if (Object.keys(result).length === 0) {
|
|
169
|
+
logger.debug('[dynamic-models] API returned no enabled models, using static model configs');
|
|
170
|
+
return OPENCODE_MODEL_CONFIGS;
|
|
171
|
+
}
|
|
172
|
+
logger.debug(`[dynamic-models] Loaded ${Object.keys(result).length} models from API`);
|
|
173
|
+
return result;
|
|
174
|
+
}
|
|
175
|
+
catch (error) {
|
|
176
|
+
logger.debug('[dynamic-models] Failed to fetch dynamic models, falling back to static model configs', {
|
|
177
|
+
error: error instanceof Error ? error.message : String(error),
|
|
178
|
+
});
|
|
179
|
+
return OPENCODE_MODEL_CONFIGS;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=opencode-dynamic-models.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opencode-dynamic-models.js","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode-dynamic-models.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,8 @@ export interface OpenCodeModelConfig {
|
|
|
21
21
|
temperature: boolean;
|
|
22
22
|
/** Structured output support (OpenCode format: structured_output) */
|
|
23
23
|
structured_output?: boolean;
|
|
24
|
+
/** Whether model requires OpenAI Responses API instead of Chat Completions API */
|
|
25
|
+
use_responses_api?: boolean;
|
|
24
26
|
/** Modality support */
|
|
25
27
|
modalities: {
|
|
26
28
|
input: string[];
|
|
@@ -53,10 +55,27 @@ export interface OpenCodeModelConfig {
|
|
|
53
55
|
}
|
|
54
56
|
export declare const OPENCODE_MODEL_CONFIGS: Record<string, OpenCodeModelConfig>;
|
|
55
57
|
/**
|
|
56
|
-
* Get all model configs stripped of CodeMie-specific fields (displayName, providerOptions).
|
|
58
|
+
* Get all model configs stripped of CodeMie-specific fields (displayName, providerOptions, use_responses_api).
|
|
57
59
|
* Used to populate all models in the OpenCode config so users can switch models during a session.
|
|
58
60
|
*/
|
|
59
|
-
export declare function getAllOpenCodeModelConfigs(): Record<string, Omit<OpenCodeModelConfig, 'displayName' | 'providerOptions'>>;
|
|
61
|
+
export declare function getAllOpenCodeModelConfigs(): Record<string, Omit<OpenCodeModelConfig, 'displayName' | 'providerOptions' | 'use_responses_api'>>;
|
|
62
|
+
/**
|
|
63
|
+
* Get model configs for Chat Completions API providers (codemie-proxy, litellm).
|
|
64
|
+
* Excludes models that require the OpenAI Responses API.
|
|
65
|
+
*
|
|
66
|
+
* @param source - Model map to filter; defaults to the static OPENCODE_MODEL_CONFIGS.
|
|
67
|
+
* Pass the result of fetchDynamicModelConfigs() for live model lists.
|
|
68
|
+
*/
|
|
69
|
+
export declare function getChatCompletionsModelConfigs(source?: Record<string, OpenCodeModelConfig>): Record<string, Omit<OpenCodeModelConfig, 'displayName' | 'providerOptions' | 'use_responses_api'>>;
|
|
70
|
+
/**
|
|
71
|
+
* Get model configs that require the OpenAI Responses API.
|
|
72
|
+
* These are routed through OpenCode's built-in openai CUSTOM_LOADER
|
|
73
|
+
* which calls POST /v1/responses instead of POST /v1/chat/completions.
|
|
74
|
+
*
|
|
75
|
+
* @param source - Model map to filter; defaults to the static OPENCODE_MODEL_CONFIGS.
|
|
76
|
+
* Pass the result of fetchDynamicModelConfigs() for live model lists.
|
|
77
|
+
*/
|
|
78
|
+
export declare function getResponsesApiModelConfigs(source?: Record<string, OpenCodeModelConfig>): Record<string, Omit<OpenCodeModelConfig, 'displayName' | 'providerOptions' | 'use_responses_api'>>;
|
|
60
79
|
/**
|
|
61
80
|
* Get model configuration with fallback for unknown models
|
|
62
81
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode-model-configs.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode-model-configs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,6CAA6C;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,SAAS,EAAE,OAAO,CAAC;IACnB,wDAAwD;IACxD,SAAS,EAAE,OAAO,CAAC;IACnB,yBAAyB;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,uCAAuC;IACvC,WAAW,EAAE,OAAO,CAAC;IACrB,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,uBAAuB;IACvB,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;IACF,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,YAAY,EAAE,OAAO,CAAC;IACtB,mDAAmD;IACnD,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,mBAAmB;IACnB,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,oDAAoD;IACpD,eAAe,CAAC,EAAE;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"opencode-model-configs.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode-model-configs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,6CAA6C;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,SAAS,EAAE,OAAO,CAAC;IACnB,wDAAwD;IACxD,SAAS,EAAE,OAAO,CAAC;IACnB,yBAAyB;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,uCAAuC;IACvC,WAAW,EAAE,OAAO,CAAC;IACrB,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,uBAAuB;IACvB,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;IACF,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,YAAY,EAAE,OAAO,CAAC;IACtB,mDAAmD;IACnD,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,mBAAmB;IACnB,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,oDAAoD;IACpD,eAAe,CAAC,EAAE;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAuctE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,aAAa,GAAG,iBAAiB,GAAG,mBAAmB,CAAC,CAAC,CAO/I;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAA0B,GACnE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,aAAa,GAAG,iBAAiB,GAAG,mBAAmB,CAAC,CAAC,CAQpG;AAED;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAA0B,GACnE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,aAAa,GAAG,iBAAiB,GAAG,mBAAmB,CAAC,CAAC,CAQpG;AA4CD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,CAqCnE"}
|
|
@@ -16,6 +16,7 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
16
16
|
release_date: '2025-12-11',
|
|
17
17
|
last_updated: '2025-12-11',
|
|
18
18
|
open_weights: false,
|
|
19
|
+
use_responses_api: true,
|
|
19
20
|
cost: {
|
|
20
21
|
input: 1.75,
|
|
21
22
|
output: 14,
|
|
@@ -43,6 +44,7 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
43
44
|
release_date: '2025-11-14',
|
|
44
45
|
last_updated: '2025-11-14',
|
|
45
46
|
open_weights: false,
|
|
47
|
+
use_responses_api: true,
|
|
46
48
|
cost: {
|
|
47
49
|
input: 1.25,
|
|
48
50
|
output: 10,
|
|
@@ -70,6 +72,7 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
70
72
|
release_date: '2025-11-14',
|
|
71
73
|
last_updated: '2025-11-14',
|
|
72
74
|
open_weights: false,
|
|
75
|
+
use_responses_api: true,
|
|
73
76
|
cost: {
|
|
74
77
|
input: 0.25,
|
|
75
78
|
output: 2,
|
|
@@ -98,6 +101,7 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
98
101
|
release_date: '2025-11-13',
|
|
99
102
|
last_updated: '2025-11-13',
|
|
100
103
|
open_weights: false,
|
|
104
|
+
use_responses_api: true,
|
|
101
105
|
cost: {
|
|
102
106
|
input: 1.25,
|
|
103
107
|
output: 10,
|
|
@@ -126,6 +130,7 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
126
130
|
release_date: '2025-12-11',
|
|
127
131
|
last_updated: '2025-12-11',
|
|
128
132
|
open_weights: false,
|
|
133
|
+
use_responses_api: true,
|
|
129
134
|
cost: {
|
|
130
135
|
input: 1.75,
|
|
131
136
|
output: 14,
|
|
@@ -136,6 +141,35 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
136
141
|
output: 16384
|
|
137
142
|
}
|
|
138
143
|
},
|
|
144
|
+
'gpt-5.3-codex-2026-02-24': {
|
|
145
|
+
id: 'gpt-5.3-codex-2026-02-24',
|
|
146
|
+
name: 'GPT-5.3 Codex',
|
|
147
|
+
displayName: 'GPT-5.3 Codex',
|
|
148
|
+
family: 'gpt-5-codex',
|
|
149
|
+
tool_call: true,
|
|
150
|
+
reasoning: true,
|
|
151
|
+
attachment: true,
|
|
152
|
+
temperature: false,
|
|
153
|
+
structured_output: true,
|
|
154
|
+
modalities: {
|
|
155
|
+
input: ['text', 'image'],
|
|
156
|
+
output: ['text']
|
|
157
|
+
},
|
|
158
|
+
knowledge: '2025-08-31',
|
|
159
|
+
release_date: '2026-02-24',
|
|
160
|
+
last_updated: '2026-02-24',
|
|
161
|
+
open_weights: false,
|
|
162
|
+
use_responses_api: true,
|
|
163
|
+
cost: {
|
|
164
|
+
input: 1.75,
|
|
165
|
+
output: 14,
|
|
166
|
+
cache_read: 0.175
|
|
167
|
+
},
|
|
168
|
+
limit: {
|
|
169
|
+
context: 272000,
|
|
170
|
+
output: 128000
|
|
171
|
+
}
|
|
172
|
+
},
|
|
139
173
|
// ── Claude Models ──────────────────────────────────────────────────
|
|
140
174
|
'claude-4-5-sonnet': {
|
|
141
175
|
id: 'claude-4-5-sonnet',
|
|
@@ -250,14 +284,15 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
250
284
|
}
|
|
251
285
|
},
|
|
252
286
|
'claude-haiku-4-5': {
|
|
253
|
-
id: 'claude-haiku-4-5',
|
|
287
|
+
id: 'claude-haiku-4-5-20251001',
|
|
254
288
|
name: 'Claude Haiku 4.5',
|
|
255
289
|
displayName: 'Claude Haiku 4.5',
|
|
256
290
|
family: 'claude-4',
|
|
257
291
|
tool_call: true,
|
|
258
|
-
reasoning:
|
|
292
|
+
reasoning: true,
|
|
259
293
|
attachment: true,
|
|
260
294
|
temperature: true,
|
|
295
|
+
structured_output: true,
|
|
261
296
|
modalities: {
|
|
262
297
|
input: ['text', 'image'],
|
|
263
298
|
output: ['text']
|
|
@@ -267,13 +302,13 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
267
302
|
last_updated: '2025-10-01',
|
|
268
303
|
open_weights: false,
|
|
269
304
|
cost: {
|
|
270
|
-
input:
|
|
271
|
-
output:
|
|
272
|
-
cache_read: 0.
|
|
305
|
+
input: 1.10,
|
|
306
|
+
output: 5.50,
|
|
307
|
+
cache_read: 0.11
|
|
273
308
|
},
|
|
274
309
|
limit: {
|
|
275
310
|
context: 200000,
|
|
276
|
-
output:
|
|
311
|
+
output: 64000
|
|
277
312
|
}
|
|
278
313
|
},
|
|
279
314
|
// ── Qwen Models (via Bedrock/LiteLLM) ─────────────────────────────
|
|
@@ -329,6 +364,33 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
329
364
|
output: 65536
|
|
330
365
|
}
|
|
331
366
|
},
|
|
367
|
+
// ── Kimi Models (via Bedrock) ──────────────────────────────────────
|
|
368
|
+
'moonshotai.kimi-k2.5': {
|
|
369
|
+
id: 'moonshotai.kimi-k2.5',
|
|
370
|
+
name: 'Kimi K2.5',
|
|
371
|
+
displayName: 'Kimi K2.5',
|
|
372
|
+
family: 'kimi',
|
|
373
|
+
tool_call: true,
|
|
374
|
+
reasoning: true,
|
|
375
|
+
attachment: true,
|
|
376
|
+
temperature: true,
|
|
377
|
+
modalities: {
|
|
378
|
+
input: ['text', 'image'],
|
|
379
|
+
output: ['text']
|
|
380
|
+
},
|
|
381
|
+
knowledge: '2025-03-01',
|
|
382
|
+
release_date: '2025-10-01',
|
|
383
|
+
last_updated: '2025-10-01',
|
|
384
|
+
open_weights: true,
|
|
385
|
+
cost: {
|
|
386
|
+
input: 0.6,
|
|
387
|
+
output: 3.03
|
|
388
|
+
},
|
|
389
|
+
limit: {
|
|
390
|
+
context: 262144,
|
|
391
|
+
output: 262144
|
|
392
|
+
}
|
|
393
|
+
},
|
|
332
394
|
// ── Gemini Models ──────────────────────────────────────────────────
|
|
333
395
|
'gemini-2.5-pro': {
|
|
334
396
|
id: 'gemini-2.5-pro',
|
|
@@ -388,13 +450,48 @@ export const OPENCODE_MODEL_CONFIGS = {
|
|
|
388
450
|
}
|
|
389
451
|
};
|
|
390
452
|
/**
|
|
391
|
-
* Get all model configs stripped of CodeMie-specific fields (displayName, providerOptions).
|
|
453
|
+
* Get all model configs stripped of CodeMie-specific fields (displayName, providerOptions, use_responses_api).
|
|
392
454
|
* Used to populate all models in the OpenCode config so users can switch models during a session.
|
|
393
455
|
*/
|
|
394
456
|
export function getAllOpenCodeModelConfigs() {
|
|
395
457
|
const result = {};
|
|
396
458
|
for (const [id, config] of Object.entries(OPENCODE_MODEL_CONFIGS)) {
|
|
397
|
-
const { displayName:
|
|
459
|
+
const { displayName: _d, providerOptions: _p, use_responses_api: _r, ...opencodeConfig } = config;
|
|
460
|
+
result[id] = opencodeConfig;
|
|
461
|
+
}
|
|
462
|
+
return result;
|
|
463
|
+
}
|
|
464
|
+
/**
|
|
465
|
+
* Get model configs for Chat Completions API providers (codemie-proxy, litellm).
|
|
466
|
+
* Excludes models that require the OpenAI Responses API.
|
|
467
|
+
*
|
|
468
|
+
* @param source - Model map to filter; defaults to the static OPENCODE_MODEL_CONFIGS.
|
|
469
|
+
* Pass the result of fetchDynamicModelConfigs() for live model lists.
|
|
470
|
+
*/
|
|
471
|
+
export function getChatCompletionsModelConfigs(source = OPENCODE_MODEL_CONFIGS) {
|
|
472
|
+
const result = {};
|
|
473
|
+
for (const [id, config] of Object.entries(source)) {
|
|
474
|
+
if (config.use_responses_api)
|
|
475
|
+
continue;
|
|
476
|
+
const { displayName: _d, providerOptions: _p, use_responses_api: _r, ...opencodeConfig } = config;
|
|
477
|
+
result[id] = opencodeConfig;
|
|
478
|
+
}
|
|
479
|
+
return result;
|
|
480
|
+
}
|
|
481
|
+
/**
|
|
482
|
+
* Get model configs that require the OpenAI Responses API.
|
|
483
|
+
* These are routed through OpenCode's built-in openai CUSTOM_LOADER
|
|
484
|
+
* which calls POST /v1/responses instead of POST /v1/chat/completions.
|
|
485
|
+
*
|
|
486
|
+
* @param source - Model map to filter; defaults to the static OPENCODE_MODEL_CONFIGS.
|
|
487
|
+
* Pass the result of fetchDynamicModelConfigs() for live model lists.
|
|
488
|
+
*/
|
|
489
|
+
export function getResponsesApiModelConfigs(source = OPENCODE_MODEL_CONFIGS) {
|
|
490
|
+
const result = {};
|
|
491
|
+
for (const [id, config] of Object.entries(source)) {
|
|
492
|
+
if (!config.use_responses_api)
|
|
493
|
+
continue;
|
|
494
|
+
const { displayName: _d, providerOptions: _p, use_responses_api: _r, ...opencodeConfig } = config;
|
|
398
495
|
result[id] = opencodeConfig;
|
|
399
496
|
}
|
|
400
497
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode-model-configs.js","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode-model-configs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"opencode-model-configs.js","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode-model-configs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode.plugin.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"opencode.plugin.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,qBAAqB,CAAC;AAItE,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;AAU7F,eAAO,MAAM,sBAAsB,EAAE,aAkSpC,CAAC;AAEF;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,gBAAgB;IAClD,OAAO,CAAC,cAAc,CAAiB;;IAQvC;;;;;;;;OAQG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAkBrC;;;OAGG;IACH,iBAAiB,IAAI,cAAc;IAInC;;;OAGG;IACH,qBAAqB,IAAI,sBAAsB,GAAG,SAAS;CAG5D"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { logger } from '../../../utils/logger.js';
|
|
2
|
-
import { getModelConfig,
|
|
2
|
+
import { getModelConfig, getChatCompletionsModelConfigs, getResponsesApiModelConfigs } from './opencode-model-configs.js';
|
|
3
|
+
import { fetchDynamicModelConfigs } from './opencode-dynamic-models.js';
|
|
3
4
|
import { BaseAgentAdapter } from '../../core/BaseAgentAdapter.js';
|
|
4
5
|
import { commandExists } from '../../../utils/processes.js';
|
|
5
6
|
import { OpenCodeSessionAdapter } from './opencode.session.js';
|
|
@@ -54,12 +55,17 @@ export const OpenCodePluginMetadata = {
|
|
|
54
55
|
logger.warn(`Invalid CODEMIE_BASE_URL format: ${baseUrl}`, { agent: 'opencode' });
|
|
55
56
|
return env;
|
|
56
57
|
}
|
|
58
|
+
// Fetch live model catalogue from the CodeMie API.
|
|
59
|
+
// Falls back to the static OPENCODE_MODEL_CONFIGS on any error.
|
|
60
|
+
const allModels = await fetchDynamicModelConfigs(baseUrl, env.CODEMIE_URL, env.CODEMIE_JWT_TOKEN);
|
|
57
61
|
// Model selection priority: env var > config > default
|
|
62
|
+
// Use dynamic catalogue first, then fall back to static getModelConfig for unknown IDs.
|
|
58
63
|
const selectedModel = env.CODEMIE_MODEL || config?.model || 'gpt-5-2-2025-12-11';
|
|
59
|
-
const modelConfig = getModelConfig(selectedModel);
|
|
64
|
+
const modelConfig = allModels[selectedModel] ?? getModelConfig(selectedModel);
|
|
60
65
|
const { providerOptions } = modelConfig;
|
|
61
|
-
//
|
|
62
|
-
const
|
|
66
|
+
// Split models by API routing type
|
|
67
|
+
const chatModels = getChatCompletionsModelConfigs(allModels);
|
|
68
|
+
const responsesApiModels = getResponsesApiModelConfigs(allModels);
|
|
63
69
|
// Determine URLs based on provider type
|
|
64
70
|
const isBedrock = provider === 'bedrock';
|
|
65
71
|
const proxyBaseUrl = provider !== 'ollama' && !isBedrock ? baseUrl : undefined;
|
|
@@ -72,8 +78,16 @@ export const OpenCodePluginMetadata = {
|
|
|
72
78
|
// - all others: route through codemie-proxy (SSO/proxy)
|
|
73
79
|
const activeProvider = provider === 'ollama' ? 'ollama' : (isBedrock ? 'amazon-bedrock' : 'codemie-proxy');
|
|
74
80
|
const timeout = providerOptions?.timeout ?? parseInt(env.CODEMIE_TIMEOUT || '600') * 1000;
|
|
81
|
+
// Always enable openai CUSTOM_LOADER when Responses API models exist.
|
|
82
|
+
// This fixes model-switching: if user starts with Claude and switches to GPT,
|
|
83
|
+
// the CUSTOM_LOADER must already be registered.
|
|
84
|
+
if (proxyBaseUrl && Object.keys(responsesApiModels).length > 0) {
|
|
85
|
+
env.OPENAI_API_KEY = 'proxy-handled';
|
|
86
|
+
logger.debug('[opencode] Enabling openai CUSTOM_LOADER for Responses API models');
|
|
87
|
+
}
|
|
88
|
+
const hasResponsesApiModels = Object.keys(responsesApiModels).length > 0;
|
|
75
89
|
const openCodeConfig = {
|
|
76
|
-
enabled_providers: ['codemie-proxy', 'ollama', 'amazon-bedrock'],
|
|
90
|
+
enabled_providers: ['codemie-proxy', 'openai', 'ollama', 'amazon-bedrock'],
|
|
77
91
|
share: 'disabled',
|
|
78
92
|
provider: {
|
|
79
93
|
...(proxyBaseUrl && {
|
|
@@ -86,7 +100,23 @@ export const OpenCodePluginMetadata = {
|
|
|
86
100
|
timeout,
|
|
87
101
|
...(providerOptions?.headers && { headers: providerOptions.headers })
|
|
88
102
|
},
|
|
89
|
-
models:
|
|
103
|
+
models: chatModels
|
|
104
|
+
}
|
|
105
|
+
}),
|
|
106
|
+
// Built-in openai CUSTOM_LOADER: routes Responses API models via sdk.responses()
|
|
107
|
+
...(proxyBaseUrl && hasResponsesApiModels && {
|
|
108
|
+
openai: {
|
|
109
|
+
name: 'CodeMie SSO',
|
|
110
|
+
// whitelist: suppress the built-in openai model list (GPT-4, GPT-4o, etc.)
|
|
111
|
+
// OpenCode merges user models with models.dev — whitelist restricts to ours only
|
|
112
|
+
whitelist: Object.keys(responsesApiModels),
|
|
113
|
+
options: {
|
|
114
|
+
baseURL: `${proxyBaseUrl}/`,
|
|
115
|
+
apiKey: 'proxy-handled',
|
|
116
|
+
timeout,
|
|
117
|
+
...(providerOptions?.headers && { headers: providerOptions.headers })
|
|
118
|
+
},
|
|
119
|
+
models: responsesApiModels
|
|
90
120
|
}
|
|
91
121
|
}),
|
|
92
122
|
ollama: {
|