@codemieai/code 0.0.32 → 0.0.34
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 +73 -7
- package/bin/codemie-opencode.js +11 -0
- package/dist/agents/codemie-code/agent.d.ts +17 -1
- package/dist/agents/codemie-code/agent.d.ts.map +1 -1
- package/dist/agents/codemie-code/agent.js +62 -3
- package/dist/agents/codemie-code/agent.js.map +1 -1
- package/dist/agents/codemie-code/index.d.ts +1 -0
- package/dist/agents/codemie-code/index.d.ts.map +1 -1
- package/dist/agents/codemie-code/index.js +28 -2
- package/dist/agents/codemie-code/index.js.map +1 -1
- package/dist/agents/codemie-code/prompts.d.ts +12 -3
- package/dist/agents/codemie-code/prompts.d.ts.map +1 -1
- package/dist/agents/codemie-code/prompts.js +25 -5
- package/dist/agents/codemie-code/prompts.js.map +1 -1
- package/dist/agents/codemie-code/types.d.ts +3 -0
- package/dist/agents/codemie-code/types.d.ts.map +1 -1
- package/dist/agents/codemie-code/types.js.map +1 -1
- package/dist/agents/codemie-code/ui/todoPanel.d.ts.map +1 -1
- package/dist/agents/codemie-code/ui/todoPanel.js +4 -0
- package/dist/agents/codemie-code/ui/todoPanel.js.map +1 -1
- package/dist/agents/core/AgentCLI.d.ts.map +1 -1
- package/dist/agents/core/AgentCLI.js +3 -1
- package/dist/agents/core/AgentCLI.js.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.js +46 -2
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
- package/dist/agents/core/session/BaseSessionAdapter.d.ts +25 -0
- package/dist/agents/core/session/BaseSessionAdapter.d.ts.map +1 -1
- package/dist/agents/core/session/SessionStore.d.ts +15 -0
- package/dist/agents/core/session/SessionStore.d.ts.map +1 -1
- package/dist/agents/core/session/SessionStore.js +46 -0
- package/dist/agents/core/session/SessionStore.js.map +1 -1
- package/dist/agents/core/session/discovery-types.d.ts +53 -0
- package/dist/agents/core/session/discovery-types.d.ts.map +1 -0
- package/dist/agents/core/session/discovery-types.js +8 -0
- package/dist/agents/core/session/discovery-types.js.map +1 -0
- package/dist/agents/core/session/types.d.ts +2 -0
- package/dist/agents/core/session/types.d.ts.map +1 -1
- package/dist/agents/core/types.d.ts +45 -0
- package/dist/agents/core/types.d.ts.map +1 -1
- package/dist/agents/plugins/claude/claude.plugin.d.ts +44 -1
- package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/claude/claude.plugin.js +214 -0
- package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
- package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +1 -1
- package/dist/agents/plugins/claude/plugin/README.md +40 -2
- package/dist/agents/plugins/claude/plugin/claude-templates/README.md +5 -5
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/CLAUDE.md.template +177 -436
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/agents/code-review-agent-template.md.template +49 -82
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/agents/refactor-cleaner-agent.md.template +337 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/agents/solution-architect-agent.md.template +129 -419
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/agents/unit-tester-agent.md.template +146 -693
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/api/api-patterns.md.template +110 -138
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/architecture/architecture.md.template +197 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/data/database-patterns.md.template +171 -91
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/development/development-practices.md.template +219 -131
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/security/security-practices.md.template +223 -98
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/standards/code-quality.md.template +131 -95
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/testing/testing-patterns.md.template +247 -75
- package/dist/agents/plugins/claude/plugin/commands/README.md +133 -0
- package/dist/agents/plugins/claude/plugin/commands/codemie-init.md +336 -544
- package/dist/agents/plugins/claude/plugin/commands/codemie-subagents.md +232 -503
- package/dist/agents/plugins/claude/plugin/commands/memory-add.md +311 -30
- package/dist/agents/plugins/claude/plugin/commands/memory-refresh.md +218 -39
- package/dist/agents/plugins/claude/plugin/hooks/hooks.json +11 -0
- package/dist/agents/plugins/gemini/extension/gemini-extension.json +1 -1
- package/dist/agents/plugins/gemini/extension/hooks/hooks.json +12 -0
- package/dist/agents/plugins/gemini/gemini.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/gemini/gemini.plugin.js +2 -4
- package/dist/agents/plugins/gemini/gemini.plugin.js.map +1 -1
- package/dist/agents/plugins/opencode/index.d.ts +8 -0
- package/dist/agents/plugins/opencode/index.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/index.js +12 -0
- package/dist/agents/plugins/opencode/index.js.map +1 -0
- package/dist/agents/plugins/opencode/opencode-message-types.d.ts +207 -0
- package/dist/agents/plugins/opencode/opencode-message-types.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/opencode-message-types.js +59 -0
- package/dist/agents/plugins/opencode/opencode-message-types.js.map +1 -0
- package/dist/agents/plugins/opencode/opencode-model-configs.d.ts +65 -0
- package/dist/agents/plugins/opencode/opencode-model-configs.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/opencode-model-configs.js +184 -0
- package/dist/agents/plugins/opencode/opencode-model-configs.js.map +1 -0
- package/dist/agents/plugins/opencode/opencode.paths.d.ts +62 -0
- package/dist/agents/plugins/opencode/opencode.paths.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/opencode.paths.js +148 -0
- package/dist/agents/plugins/opencode/opencode.paths.js.map +1 -0
- package/dist/agents/plugins/opencode/opencode.plugin.d.ts +35 -0
- package/dist/agents/plugins/opencode/opencode.plugin.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/opencode.plugin.js +338 -0
- package/dist/agents/plugins/opencode/opencode.plugin.js.map +1 -0
- package/dist/agents/plugins/opencode/opencode.session.d.ts +77 -0
- package/dist/agents/plugins/opencode/opencode.session.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/opencode.session.js +424 -0
- package/dist/agents/plugins/opencode/opencode.session.js.map +1 -0
- package/dist/agents/plugins/opencode/opencode.storage-utils.d.ts +25 -0
- package/dist/agents/plugins/opencode/opencode.storage-utils.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/opencode.storage-utils.js +96 -0
- package/dist/agents/plugins/opencode/opencode.storage-utils.js.map +1 -0
- package/dist/agents/plugins/opencode/session/processors/opencode.conversations-processor.d.ts +30 -0
- package/dist/agents/plugins/opencode/session/processors/opencode.conversations-processor.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/session/processors/opencode.conversations-processor.js +116 -0
- package/dist/agents/plugins/opencode/session/processors/opencode.conversations-processor.js.map +1 -0
- package/dist/agents/plugins/opencode/session/processors/opencode.metrics-processor.d.ts +102 -0
- package/dist/agents/plugins/opencode/session/processors/opencode.metrics-processor.d.ts.map +1 -0
- package/dist/agents/plugins/opencode/session/processors/opencode.metrics-processor.js +584 -0
- package/dist/agents/plugins/opencode/session/processors/opencode.metrics-processor.js.map +1 -0
- package/dist/agents/registry.d.ts.map +1 -1
- package/dist/agents/registry.js +2 -0
- package/dist/agents/registry.js.map +1 -1
- package/dist/cli/commands/doctor/checks/AgentsCheck.d.ts +5 -0
- package/dist/cli/commands/doctor/checks/AgentsCheck.d.ts.map +1 -1
- package/dist/cli/commands/doctor/checks/AgentsCheck.js +29 -0
- package/dist/cli/commands/doctor/checks/AgentsCheck.js.map +1 -1
- package/dist/cli/commands/hook.d.ts.map +1 -1
- package/dist/cli/commands/hook.js +63 -6
- 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 +86 -7
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/opencode-metrics.d.ts +13 -0
- package/dist/cli/commands/opencode-metrics.d.ts.map +1 -0
- package/dist/cli/commands/opencode-metrics.js +200 -0
- package/dist/cli/commands/opencode-metrics.js.map +1 -0
- package/dist/cli/commands/setup.d.ts.map +1 -1
- package/dist/cli/commands/setup.js +113 -0
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/commands/skill.d.ts +6 -0
- package/dist/cli/commands/skill.d.ts.map +1 -0
- package/dist/cli/commands/skill.js +196 -0
- package/dist/cli/commands/skill.js.map +1 -0
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +34 -6
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/index.js +4 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/migrations/003-remove-hooks-node.migration.d.ts +22 -0
- package/dist/migrations/003-remove-hooks-node.migration.d.ts.map +1 -0
- package/dist/migrations/003-remove-hooks-node.migration.js +103 -0
- package/dist/migrations/003-remove-hooks-node.migration.js.map +1 -0
- package/dist/migrations/index.d.ts +1 -0
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/migrations/index.js +1 -1
- package/dist/migrations/index.js.map +1 -1
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.d.ts +3 -2
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.d.ts.map +1 -1
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.js +6 -2
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.js.map +1 -1
- package/dist/providers/plugins/sso/sso.http-client.js +2 -2
- package/dist/providers/plugins/sso/sso.http-client.js.map +1 -1
- package/dist/providers/plugins/sso/sso.setup-steps.d.ts.map +1 -1
- package/dist/providers/plugins/sso/sso.setup-steps.js +14 -10
- package/dist/providers/plugins/sso/sso.setup-steps.js.map +1 -1
- package/dist/skills/core/SkillDiscovery.d.ts +83 -0
- package/dist/skills/core/SkillDiscovery.d.ts.map +1 -0
- package/dist/skills/core/SkillDiscovery.js +237 -0
- package/dist/skills/core/SkillDiscovery.js.map +1 -0
- package/dist/skills/core/SkillManager.d.ts +86 -0
- package/dist/skills/core/SkillManager.d.ts.map +1 -0
- package/dist/skills/core/SkillManager.js +155 -0
- package/dist/skills/core/SkillManager.js.map +1 -0
- package/dist/skills/core/types.d.ts +120 -0
- package/dist/skills/core/types.d.ts.map +1 -0
- package/dist/skills/core/types.js +20 -0
- package/dist/skills/core/types.js.map +1 -0
- package/dist/skills/index.d.ts +12 -0
- package/dist/skills/index.d.ts.map +1 -0
- package/dist/skills/index.js +12 -0
- package/dist/skills/index.js.map +1 -0
- package/dist/skills/utils/content-loader.d.ts +25 -0
- package/dist/skills/utils/content-loader.d.ts.map +1 -0
- package/dist/skills/utils/content-loader.js +161 -0
- package/dist/skills/utils/content-loader.js.map +1 -0
- package/dist/skills/utils/frontmatter.d.ts +60 -0
- package/dist/skills/utils/frontmatter.d.ts.map +1 -0
- package/dist/skills/utils/frontmatter.js +114 -0
- package/dist/skills/utils/frontmatter.js.map +1 -0
- package/dist/skills/utils/pattern-matcher.d.ts +60 -0
- package/dist/skills/utils/pattern-matcher.d.ts.map +1 -0
- package/dist/skills/utils/pattern-matcher.js +97 -0
- package/dist/skills/utils/pattern-matcher.js.map +1 -0
- package/dist/utils/exec.d.ts.map +1 -1
- package/dist/utils/exec.js +11 -1
- package/dist/utils/exec.js.map +1 -1
- package/dist/utils/installation-detector.d.ts +22 -0
- package/dist/utils/installation-detector.d.ts.map +1 -0
- package/dist/utils/installation-detector.js +49 -0
- package/dist/utils/installation-detector.js.map +1 -0
- package/dist/utils/native-installer.d.ts +49 -0
- package/dist/utils/native-installer.d.ts.map +1 -0
- package/dist/utils/native-installer.js +194 -0
- package/dist/utils/native-installer.js.map +1 -0
- package/dist/utils/version-utils.d.ts +50 -0
- package/dist/utils/version-utils.d.ts.map +1 -0
- package/dist/utils/version-utils.js +92 -0
- package/dist/utils/version-utils.js.map +1 -0
- package/package.json +5 -2
- package/scripts/copy-mr-skill-to-global.ts +252 -0
- package/scripts/demo-hooks.sh +125 -0
- package/scripts/test-hooks.sh +196 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/INDEX.md +0 -205
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/TEMPLATE_SIZES.md +0 -74
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/architecture/layered-architecture.md.template +0 -143
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/architecture/project-structure.md.template +0 -127
|
@@ -60,7 +60,7 @@ const metadata = {
|
|
|
60
60
|
* - Notification → PermissionRequest (Gemini's notification system)
|
|
61
61
|
*
|
|
62
62
|
* Unsupported events (silently ignored by router):
|
|
63
|
-
* -
|
|
63
|
+
* - BeforeModel, AfterModel, BeforeToolSelection, BeforeTool, AfterTool
|
|
64
64
|
*/
|
|
65
65
|
eventNameMapping: {
|
|
66
66
|
// Direct mappings (same name)
|
|
@@ -69,6 +69,7 @@ const metadata = {
|
|
|
69
69
|
// Renamed mappings
|
|
70
70
|
'PreCompress': 'PreCompact', // Gemini's PreCompress = Claude's PreCompact
|
|
71
71
|
'AfterAgent': 'Stop', // Gemini's AfterAgent = Claude's Stop
|
|
72
|
+
'BeforeAgent': 'UserPromptSubmit', // Gemini's BeforeAgent = Claude's UserPromptSubmit
|
|
72
73
|
'Notification': 'PermissionRequest' // Gemini's Notification = Claude's PermissionRequest
|
|
73
74
|
}
|
|
74
75
|
}
|
|
@@ -101,9 +102,6 @@ export const GeminiPluginMetadata = {
|
|
|
101
102
|
},
|
|
102
103
|
tools: {
|
|
103
104
|
enableHooks: true
|
|
104
|
-
},
|
|
105
|
-
hooks: {
|
|
106
|
-
enabled: true
|
|
107
105
|
}
|
|
108
106
|
});
|
|
109
107
|
return env;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.plugin.js","sourceRoot":"","sources":["../../../../src/agents/plugins/gemini/gemini.plugin.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"gemini.plugin.js","sourceRoot":"","sources":["../../../../src/agents/plugins/gemini/gemini.plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { OpenCodePlugin, OpenCodePluginMetadata } from './opencode.plugin.js';
|
|
2
|
+
export { OPENCODE_MODEL_CONFIGS, getModelConfig, type OpenCodeModelConfig } from './opencode-model-configs.js';
|
|
3
|
+
export { OpenCodeSessionAdapter } from './opencode.session.js';
|
|
4
|
+
export { getOpenCodeStoragePath, getOpenCodeSessionsPath, getOpenCodeMessagesPath, getOpenCodePartsPath, getSessionStoragePath } from './opencode.paths.js';
|
|
5
|
+
export type { OpenCodeSession, OpenCodeMessage, OpenCodePart, OpenCodeTokens } from './opencode-message-types.js';
|
|
6
|
+
export { isTextPart, isToolPart, isFilePart, isReasoningPart, isStepFinishPart, isAssistantMessage } from './opencode-message-types.js';
|
|
7
|
+
export type { SessionDiscoveryOptions, SessionDescriptor } from '../../core/session/discovery-types.js';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,KAAK,mBAAmB,EACzB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EAEpB,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,eAAe,EACf,eAAe,EACf,YAAY,EACZ,cAAc,EACf,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,6BAA6B,CAAC;AAErC,YAAY,EACV,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,uCAAuC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// Phase 1 exports (Core Plugin)
|
|
2
|
+
export { OpenCodePlugin, OpenCodePluginMetadata } from './opencode.plugin.js';
|
|
3
|
+
export { OPENCODE_MODEL_CONFIGS, getModelConfig } from './opencode-model-configs.js';
|
|
4
|
+
// Phase 2 exports (Session Analytics)
|
|
5
|
+
export { OpenCodeSessionAdapter } from './opencode.session.js';
|
|
6
|
+
// FIXED (GPT-5.10/5.11): Export canonical function names, not deprecated alias
|
|
7
|
+
export { getOpenCodeStoragePath, getOpenCodeSessionsPath, getOpenCodeMessagesPath, getOpenCodePartsPath,
|
|
8
|
+
// Deprecated alias for backward compatibility (if external code depends on it)
|
|
9
|
+
getSessionStoragePath } from './opencode.paths.js';
|
|
10
|
+
// Export type guards for external use
|
|
11
|
+
export { isTextPart, isToolPart, isFilePart, isReasoningPart, isStepFinishPart, isAssistantMessage } from './opencode-message-types.js';
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EACL,sBAAsB,EACtB,cAAc,EAEf,MAAM,6BAA6B,CAAC;AAErC,sCAAsC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,+EAA+E;AAC/E,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB;AACpB,+EAA+E;AAC/E,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAQ7B,sCAAsC;AACtC,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenCode Session metadata
|
|
3
|
+
*
|
|
4
|
+
* Source: packages/opencode/src/session/index.ts (Session.Info)
|
|
5
|
+
* Storage path: storage/session/{projectID}/{sessionID}.json
|
|
6
|
+
*
|
|
7
|
+
* VALIDATED against real OpenCode storage (v1.1.36)
|
|
8
|
+
*/
|
|
9
|
+
export interface OpenCodeSession {
|
|
10
|
+
id: string;
|
|
11
|
+
title?: string;
|
|
12
|
+
directory: string;
|
|
13
|
+
time: {
|
|
14
|
+
created: number;
|
|
15
|
+
updated: number;
|
|
16
|
+
};
|
|
17
|
+
projectID?: string;
|
|
18
|
+
slug?: string;
|
|
19
|
+
version?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Token tracking structure
|
|
23
|
+
*
|
|
24
|
+
* Source: packages/opencode/src/session/message-v2.ts
|
|
25
|
+
*/
|
|
26
|
+
export interface OpenCodeTokens {
|
|
27
|
+
input: number;
|
|
28
|
+
output: number;
|
|
29
|
+
reasoning?: number;
|
|
30
|
+
cache?: {
|
|
31
|
+
read: number;
|
|
32
|
+
write: number;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* OpenCode Message (MessageV2 format)
|
|
37
|
+
*
|
|
38
|
+
* Source: packages/opencode/src/session/message-v2.ts
|
|
39
|
+
* Storage path: storage/message/{sessionID}/{messageID}.json
|
|
40
|
+
*
|
|
41
|
+
* Note: This is a discriminated union in OpenCode (MessageV2.Info = User | Assistant)
|
|
42
|
+
*/
|
|
43
|
+
export interface OpenCodeMessageBase {
|
|
44
|
+
id: string;
|
|
45
|
+
sessionID: string;
|
|
46
|
+
role: 'user' | 'assistant';
|
|
47
|
+
time: {
|
|
48
|
+
created: number;
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* User message
|
|
53
|
+
*
|
|
54
|
+
* User messages can have agent context and model selection
|
|
55
|
+
*/
|
|
56
|
+
export interface OpenCodeUserMessage extends OpenCodeMessageBase {
|
|
57
|
+
role: 'user';
|
|
58
|
+
agent?: string;
|
|
59
|
+
model?: {
|
|
60
|
+
providerID?: string;
|
|
61
|
+
modelID?: string;
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Assistant message with tokens and cost
|
|
66
|
+
*/
|
|
67
|
+
export interface OpenCodeAssistantMessage extends OpenCodeMessageBase {
|
|
68
|
+
role: 'assistant';
|
|
69
|
+
providerID?: string;
|
|
70
|
+
modelID?: string;
|
|
71
|
+
path?: string[];
|
|
72
|
+
tokens?: OpenCodeTokens;
|
|
73
|
+
cost?: number;
|
|
74
|
+
agent?: string;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Union type for messages
|
|
78
|
+
*/
|
|
79
|
+
export type OpenCodeMessage = OpenCodeUserMessage | OpenCodeAssistantMessage;
|
|
80
|
+
/**
|
|
81
|
+
* Type guard for assistant messages
|
|
82
|
+
*/
|
|
83
|
+
export declare function isAssistantMessage(msg: OpenCodeMessage): msg is OpenCodeAssistantMessage;
|
|
84
|
+
/**
|
|
85
|
+
* Base part interface
|
|
86
|
+
*
|
|
87
|
+
* Source: packages/opencode/src/session/message-v2.ts
|
|
88
|
+
* Storage path: storage/part/{messageID}/{partID}.json
|
|
89
|
+
*/
|
|
90
|
+
interface OpenCodePartBase {
|
|
91
|
+
id: string;
|
|
92
|
+
messageID: string;
|
|
93
|
+
sessionID: string;
|
|
94
|
+
type: string;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Text part
|
|
98
|
+
*/
|
|
99
|
+
export interface OpenCodeTextPart extends OpenCodePartBase {
|
|
100
|
+
type: 'text';
|
|
101
|
+
text: string;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Tool use part
|
|
105
|
+
*
|
|
106
|
+
* CORRECTED: input is inside state, not at top level (validated from real data)
|
|
107
|
+
*/
|
|
108
|
+
export interface OpenCodeToolPart extends OpenCodePartBase {
|
|
109
|
+
type: 'tool';
|
|
110
|
+
callID: string;
|
|
111
|
+
tool: string;
|
|
112
|
+
state: {
|
|
113
|
+
status: 'pending' | 'running' | 'completed' | 'error';
|
|
114
|
+
input?: Record<string, unknown>;
|
|
115
|
+
output?: string;
|
|
116
|
+
error?: string;
|
|
117
|
+
title?: string;
|
|
118
|
+
metadata?: Record<string, unknown>;
|
|
119
|
+
time?: {
|
|
120
|
+
start?: number;
|
|
121
|
+
end?: number;
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* File part
|
|
127
|
+
*/
|
|
128
|
+
export interface OpenCodeFilePart extends OpenCodePartBase {
|
|
129
|
+
type: 'file';
|
|
130
|
+
mime: string;
|
|
131
|
+
url?: string;
|
|
132
|
+
source?: 'local' | 'remote';
|
|
133
|
+
filename?: string;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Reasoning part (for o1-style models)
|
|
137
|
+
*/
|
|
138
|
+
export interface OpenCodeReasoningPart extends OpenCodePartBase {
|
|
139
|
+
type: 'reasoning';
|
|
140
|
+
text: string;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Step finish part (contains token info and cost)
|
|
144
|
+
*
|
|
145
|
+
* tokens and cost are REQUIRED per OpenCode source
|
|
146
|
+
*/
|
|
147
|
+
export interface OpenCodeStepFinishPart extends OpenCodePartBase {
|
|
148
|
+
type: 'step-finish';
|
|
149
|
+
tokens: OpenCodeTokens;
|
|
150
|
+
cost: number;
|
|
151
|
+
reason?: string;
|
|
152
|
+
snapshot?: string;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Patch part (diff/file changes)
|
|
156
|
+
*/
|
|
157
|
+
export interface OpenCodePatchPart extends OpenCodePartBase {
|
|
158
|
+
type: 'patch';
|
|
159
|
+
file?: string;
|
|
160
|
+
patch?: string;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Step start part
|
|
164
|
+
*/
|
|
165
|
+
export interface OpenCodeStepStartPart extends OpenCodePartBase {
|
|
166
|
+
type: 'step-start';
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Discriminated union of all part types
|
|
170
|
+
*/
|
|
171
|
+
export type OpenCodePart = OpenCodeTextPart | OpenCodeToolPart | OpenCodeFilePart | OpenCodeReasoningPart | OpenCodeStepFinishPart | OpenCodePatchPart | OpenCodeStepStartPart;
|
|
172
|
+
export declare function isTextPart(part: OpenCodePart): part is OpenCodeTextPart;
|
|
173
|
+
export declare function isToolPart(part: OpenCodePart): part is OpenCodeToolPart;
|
|
174
|
+
export declare function isFilePart(part: OpenCodePart): part is OpenCodeFilePart;
|
|
175
|
+
export declare function isReasoningPart(part: OpenCodePart): part is OpenCodeReasoningPart;
|
|
176
|
+
export declare function isStepFinishPart(part: OpenCodePart): part is OpenCodeStepFinishPart;
|
|
177
|
+
export declare function isPatchPart(part: OpenCodePart): part is OpenCodePatchPart;
|
|
178
|
+
export declare function isStepStartPart(part: OpenCodePart): part is OpenCodeStepStartPart;
|
|
179
|
+
/**
|
|
180
|
+
* OpenCode extends ParsedSession.metadata with these additional fields.
|
|
181
|
+
* Per tech spec ADR-1.
|
|
182
|
+
*
|
|
183
|
+
* Access pattern (within OpenCode plugin boundary only):
|
|
184
|
+
* validateOpenCodeMetadata(session.metadata);
|
|
185
|
+
* const { storagePath, openCodeSessionId } = session.metadata as OpenCodeMetadata;
|
|
186
|
+
*/
|
|
187
|
+
export interface OpenCodeMetadata {
|
|
188
|
+
projectPath?: string;
|
|
189
|
+
createdAt?: string;
|
|
190
|
+
updatedAt?: string;
|
|
191
|
+
storagePath: string;
|
|
192
|
+
openCodeSessionId: string;
|
|
193
|
+
openCodeVersion?: string;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Runtime validation for OpenCode metadata extension (per tech spec ADR-1, Review 10 M4).
|
|
197
|
+
* Call before accessing OpenCode-specific fields.
|
|
198
|
+
*
|
|
199
|
+
* @throws Error if metadata is missing required fields
|
|
200
|
+
*/
|
|
201
|
+
export declare function validateOpenCodeMetadata(metadata: unknown): asserts metadata is OpenCodeMetadata;
|
|
202
|
+
/**
|
|
203
|
+
* Check if metadata has OpenCode-specific fields (non-throwing version)
|
|
204
|
+
*/
|
|
205
|
+
export declare function hasOpenCodeMetadata(metadata: unknown): metadata is OpenCodeMetadata;
|
|
206
|
+
export {};
|
|
207
|
+
//# sourceMappingURL=opencode-message-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opencode-message-types.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode-message-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type guard for assistant messages
|
|
3
|
+
*/
|
|
4
|
+
export function isAssistantMessage(msg) {
|
|
5
|
+
return msg.role === 'assistant';
|
|
6
|
+
}
|
|
7
|
+
// Type guards for safe narrowing
|
|
8
|
+
export function isTextPart(part) {
|
|
9
|
+
return part.type === 'text';
|
|
10
|
+
}
|
|
11
|
+
export function isToolPart(part) {
|
|
12
|
+
return part.type === 'tool';
|
|
13
|
+
}
|
|
14
|
+
export function isFilePart(part) {
|
|
15
|
+
return part.type === 'file';
|
|
16
|
+
}
|
|
17
|
+
export function isReasoningPart(part) {
|
|
18
|
+
return part.type === 'reasoning';
|
|
19
|
+
}
|
|
20
|
+
export function isStepFinishPart(part) {
|
|
21
|
+
return part.type === 'step-finish';
|
|
22
|
+
}
|
|
23
|
+
export function isPatchPart(part) {
|
|
24
|
+
return part.type === 'patch';
|
|
25
|
+
}
|
|
26
|
+
export function isStepStartPart(part) {
|
|
27
|
+
return part.type === 'step-start';
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Runtime validation for OpenCode metadata extension (per tech spec ADR-1, Review 10 M4).
|
|
31
|
+
* Call before accessing OpenCode-specific fields.
|
|
32
|
+
*
|
|
33
|
+
* @throws Error if metadata is missing required fields
|
|
34
|
+
*/
|
|
35
|
+
export function validateOpenCodeMetadata(metadata) {
|
|
36
|
+
if (!metadata || typeof metadata !== 'object') {
|
|
37
|
+
throw new Error('Metadata must be an object');
|
|
38
|
+
}
|
|
39
|
+
const m = metadata;
|
|
40
|
+
if (!m.storagePath || typeof m.storagePath !== 'string') {
|
|
41
|
+
throw new Error('Missing or invalid storagePath in metadata');
|
|
42
|
+
}
|
|
43
|
+
if (!m.openCodeSessionId || typeof m.openCodeSessionId !== 'string') {
|
|
44
|
+
throw new Error('Missing or invalid openCodeSessionId in metadata');
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Check if metadata has OpenCode-specific fields (non-throwing version)
|
|
49
|
+
*/
|
|
50
|
+
export function hasOpenCodeMetadata(metadata) {
|
|
51
|
+
if (!metadata || typeof metadata !== 'object')
|
|
52
|
+
return false;
|
|
53
|
+
const m = metadata;
|
|
54
|
+
return (typeof m.storagePath === 'string' &&
|
|
55
|
+
m.storagePath.length > 0 &&
|
|
56
|
+
typeof m.openCodeSessionId === 'string' &&
|
|
57
|
+
m.openCodeSessionId.length > 0);
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=opencode-message-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opencode-message-types.js","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode-message-types.ts"],"names":[],"mappings":"AA8FA;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAoB;IACrD,OAAO,GAAG,CAAC,IAAI,KAAK,WAAW,CAAC;AAClC,CAAC;AA0GD,iCAAiC;AACjC,MAAM,UAAU,UAAU,CAAC,IAAkB;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAkB;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAkB;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAkB;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAkB;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAkB;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAkB;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;AACpC,CAAC;AAmBD;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CACtC,QAAiB;IAEjB,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,CAAC,GAAG,QAAmC,CAAC;IAC9C,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,iBAAiB,IAAI,OAAO,CAAC,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAiB;IACnD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5D,MAAM,CAAC,GAAG,QAAmC,CAAC;IAC9C,OAAO,CACL,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ;QACjC,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACxB,OAAO,CAAC,CAAC,iBAAiB,KAAK,QAAQ;QACvC,CAAC,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAC/B,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Model configuration for OpenCode agent
|
|
3
|
+
* Uses OpenCode's native format for direct injection
|
|
4
|
+
*/
|
|
5
|
+
export interface OpenCodeModelConfig {
|
|
6
|
+
/** Model identifier (OpenCode format: id) */
|
|
7
|
+
id: string;
|
|
8
|
+
/** Model name (OpenCode format: name) */
|
|
9
|
+
name: string;
|
|
10
|
+
/** Display name for UI (CodeMie extension) */
|
|
11
|
+
displayName?: string;
|
|
12
|
+
/** Model family (e.g., "gpt-5", "claude-4") */
|
|
13
|
+
family: string;
|
|
14
|
+
/** Tool calling support (OpenCode format: tool_call) */
|
|
15
|
+
tool_call: boolean;
|
|
16
|
+
/** Reasoning capability (OpenCode format: reasoning) */
|
|
17
|
+
reasoning: boolean;
|
|
18
|
+
/** Attachment support */
|
|
19
|
+
attachment: boolean;
|
|
20
|
+
/** Temperature control availability */
|
|
21
|
+
temperature: boolean;
|
|
22
|
+
/** Structured output support (OpenCode format: structured_output) */
|
|
23
|
+
structured_output?: boolean;
|
|
24
|
+
/** Modality support */
|
|
25
|
+
modalities: {
|
|
26
|
+
input: string[];
|
|
27
|
+
output: string[];
|
|
28
|
+
};
|
|
29
|
+
/** Knowledge cutoff date (YYYY-MM-DD) */
|
|
30
|
+
knowledge: string;
|
|
31
|
+
/** Release date (YYYY-MM-DD) */
|
|
32
|
+
release_date: string;
|
|
33
|
+
/** Last updated date (YYYY-MM-DD) */
|
|
34
|
+
last_updated: string;
|
|
35
|
+
/** Whether model has open weights */
|
|
36
|
+
open_weights: boolean;
|
|
37
|
+
/** Pricing information (USD per million tokens) */
|
|
38
|
+
cost: {
|
|
39
|
+
input: number;
|
|
40
|
+
output: number;
|
|
41
|
+
cache_read?: number;
|
|
42
|
+
};
|
|
43
|
+
/** Model limits */
|
|
44
|
+
limit: {
|
|
45
|
+
context: number;
|
|
46
|
+
output: number;
|
|
47
|
+
};
|
|
48
|
+
/** Provider-specific options (CodeMie extension) */
|
|
49
|
+
providerOptions?: {
|
|
50
|
+
headers?: Record<string, string>;
|
|
51
|
+
timeout?: number;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export declare const OPENCODE_MODEL_CONFIGS: Record<string, OpenCodeModelConfig>;
|
|
55
|
+
/**
|
|
56
|
+
* Get model configuration with fallback for unknown models
|
|
57
|
+
*
|
|
58
|
+
* @param modelId - Model identifier (e.g., 'gpt-5-2-2025-12-11')
|
|
59
|
+
* @returns Model configuration in OpenCode format
|
|
60
|
+
*
|
|
61
|
+
* Note: The returned config is used directly in OPENCODE_CONFIG_CONTENT
|
|
62
|
+
* defaults.model = "<provider>/<modelId>" (e.g., "codemie-proxy/gpt-5-2-2025-12-11")
|
|
63
|
+
*/
|
|
64
|
+
export declare function getModelConfig(modelId: string): OpenCodeModelConfig;
|
|
65
|
+
//# sourceMappingURL=opencode-model-configs.d.ts.map
|
|
@@ -0,0 +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,CA0ItE,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,CAoCnE"}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
export const OPENCODE_MODEL_CONFIGS = {
|
|
2
|
+
'gpt-5-2-2025-12-11': {
|
|
3
|
+
id: 'gpt-5-2-2025-12-11',
|
|
4
|
+
name: 'gpt-5-2-2025-12-11',
|
|
5
|
+
displayName: 'GPT-5.2 (Dec 2025)',
|
|
6
|
+
family: 'gpt-5',
|
|
7
|
+
tool_call: true,
|
|
8
|
+
reasoning: true,
|
|
9
|
+
attachment: true,
|
|
10
|
+
temperature: false,
|
|
11
|
+
modalities: {
|
|
12
|
+
input: ['text', 'image'],
|
|
13
|
+
output: ['text']
|
|
14
|
+
},
|
|
15
|
+
knowledge: '2025-08-31',
|
|
16
|
+
release_date: '2025-12-11',
|
|
17
|
+
last_updated: '2025-12-11',
|
|
18
|
+
open_weights: false,
|
|
19
|
+
cost: {
|
|
20
|
+
input: 1.75,
|
|
21
|
+
output: 14,
|
|
22
|
+
cache_read: 0.125
|
|
23
|
+
},
|
|
24
|
+
limit: {
|
|
25
|
+
context: 400000,
|
|
26
|
+
output: 128000
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
'gpt-5.1-codex': {
|
|
30
|
+
id: 'gpt-5.1-codex',
|
|
31
|
+
name: 'GPT-5.1 Codex',
|
|
32
|
+
displayName: 'GPT-5.1 Codex',
|
|
33
|
+
family: 'gpt-5-codex',
|
|
34
|
+
tool_call: true,
|
|
35
|
+
reasoning: true,
|
|
36
|
+
attachment: false,
|
|
37
|
+
temperature: false,
|
|
38
|
+
modalities: {
|
|
39
|
+
input: ['text', 'image', 'audio'],
|
|
40
|
+
output: ['text', 'image', 'audio']
|
|
41
|
+
},
|
|
42
|
+
knowledge: '2024-09-30',
|
|
43
|
+
release_date: '2025-11-14',
|
|
44
|
+
last_updated: '2025-11-14',
|
|
45
|
+
open_weights: false,
|
|
46
|
+
cost: {
|
|
47
|
+
input: 1.25,
|
|
48
|
+
output: 10,
|
|
49
|
+
cache_read: 0.125
|
|
50
|
+
},
|
|
51
|
+
limit: {
|
|
52
|
+
context: 400000,
|
|
53
|
+
output: 128000
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
'gpt-5.1-codex-mini': {
|
|
57
|
+
id: 'gpt-5.1-codex-mini',
|
|
58
|
+
name: 'GPT-5.1 Codex Mini',
|
|
59
|
+
displayName: 'GPT-5.1 Codex Mini',
|
|
60
|
+
family: 'gpt-5-codex-mini',
|
|
61
|
+
tool_call: true,
|
|
62
|
+
reasoning: true,
|
|
63
|
+
attachment: false,
|
|
64
|
+
temperature: false,
|
|
65
|
+
modalities: {
|
|
66
|
+
input: ['text', 'image'],
|
|
67
|
+
output: ['text']
|
|
68
|
+
},
|
|
69
|
+
knowledge: '2024-09-30',
|
|
70
|
+
release_date: '2025-11-14',
|
|
71
|
+
last_updated: '2025-11-14',
|
|
72
|
+
open_weights: false,
|
|
73
|
+
cost: {
|
|
74
|
+
input: 0.25,
|
|
75
|
+
output: 2,
|
|
76
|
+
cache_read: 0.025
|
|
77
|
+
},
|
|
78
|
+
limit: {
|
|
79
|
+
context: 400000,
|
|
80
|
+
output: 128000
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
'gpt-5.1-codex-max': {
|
|
84
|
+
id: 'gpt-5.1-codex-max',
|
|
85
|
+
name: 'GPT-5.1 Codex Max',
|
|
86
|
+
displayName: 'GPT-5.1 Codex Max',
|
|
87
|
+
family: 'gpt-5-codex-max',
|
|
88
|
+
tool_call: true,
|
|
89
|
+
reasoning: true,
|
|
90
|
+
attachment: true,
|
|
91
|
+
structured_output: true,
|
|
92
|
+
temperature: false,
|
|
93
|
+
modalities: {
|
|
94
|
+
input: ['text', 'image'],
|
|
95
|
+
output: ['text']
|
|
96
|
+
},
|
|
97
|
+
knowledge: '2024-09-30',
|
|
98
|
+
release_date: '2025-11-13',
|
|
99
|
+
last_updated: '2025-11-13',
|
|
100
|
+
open_weights: false,
|
|
101
|
+
cost: {
|
|
102
|
+
input: 1.25,
|
|
103
|
+
output: 10,
|
|
104
|
+
cache_read: 0.125
|
|
105
|
+
},
|
|
106
|
+
limit: {
|
|
107
|
+
context: 400000,
|
|
108
|
+
output: 128000
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
'gpt-5.2-chat': {
|
|
112
|
+
id: 'gpt-5.2-chat',
|
|
113
|
+
name: 'GPT-5.2 Chat',
|
|
114
|
+
displayName: 'GPT-5.2 Chat',
|
|
115
|
+
family: 'gpt-5-chat',
|
|
116
|
+
tool_call: true,
|
|
117
|
+
reasoning: true,
|
|
118
|
+
attachment: true,
|
|
119
|
+
structured_output: true,
|
|
120
|
+
temperature: false,
|
|
121
|
+
modalities: {
|
|
122
|
+
input: ['text', 'image'],
|
|
123
|
+
output: ['text']
|
|
124
|
+
},
|
|
125
|
+
knowledge: '2025-08-31',
|
|
126
|
+
release_date: '2025-12-11',
|
|
127
|
+
last_updated: '2025-12-11',
|
|
128
|
+
open_weights: false,
|
|
129
|
+
cost: {
|
|
130
|
+
input: 1.75,
|
|
131
|
+
output: 14,
|
|
132
|
+
cache_read: 0.175
|
|
133
|
+
},
|
|
134
|
+
limit: {
|
|
135
|
+
context: 128000,
|
|
136
|
+
output: 16384
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
/**
|
|
141
|
+
* Get model configuration with fallback for unknown models
|
|
142
|
+
*
|
|
143
|
+
* @param modelId - Model identifier (e.g., 'gpt-5-2-2025-12-11')
|
|
144
|
+
* @returns Model configuration in OpenCode format
|
|
145
|
+
*
|
|
146
|
+
* Note: The returned config is used directly in OPENCODE_CONFIG_CONTENT
|
|
147
|
+
* defaults.model = "<provider>/<modelId>" (e.g., "codemie-proxy/gpt-5-2-2025-12-11")
|
|
148
|
+
*/
|
|
149
|
+
export function getModelConfig(modelId) {
|
|
150
|
+
const config = OPENCODE_MODEL_CONFIGS[modelId];
|
|
151
|
+
if (config) {
|
|
152
|
+
return config;
|
|
153
|
+
}
|
|
154
|
+
// Fallback for unknown models - create minimal OpenCode-compatible config
|
|
155
|
+
// Extract family from model ID (e.g., "gpt-4o" -> "gpt-4")
|
|
156
|
+
const family = modelId.split('-').slice(0, 2).join('-') || modelId;
|
|
157
|
+
return {
|
|
158
|
+
id: modelId,
|
|
159
|
+
name: modelId,
|
|
160
|
+
displayName: modelId,
|
|
161
|
+
family,
|
|
162
|
+
tool_call: true, // Assume tool support
|
|
163
|
+
reasoning: false, // Conservative default
|
|
164
|
+
attachment: false,
|
|
165
|
+
temperature: true,
|
|
166
|
+
modalities: {
|
|
167
|
+
input: ['text'],
|
|
168
|
+
output: ['text']
|
|
169
|
+
},
|
|
170
|
+
knowledge: new Date().toISOString().split('T')[0], // Use current date
|
|
171
|
+
release_date: new Date().toISOString().split('T')[0],
|
|
172
|
+
last_updated: new Date().toISOString().split('T')[0],
|
|
173
|
+
open_weights: false,
|
|
174
|
+
cost: {
|
|
175
|
+
input: 0,
|
|
176
|
+
output: 0
|
|
177
|
+
},
|
|
178
|
+
limit: {
|
|
179
|
+
context: 128000,
|
|
180
|
+
output: 4096
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
//# sourceMappingURL=opencode-model-configs.js.map
|
|
@@ -0,0 +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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"}
|