@codemieai/code 0.0.40 → 0.0.42

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.
Files changed (211) hide show
  1. package/README.md +5 -6
  2. package/bin/codemie-opencode.js +8 -1
  3. package/dist/agents/codemie-code/agent.d.ts.map +1 -1
  4. package/dist/agents/codemie-code/agent.js +5 -0
  5. package/dist/agents/codemie-code/agent.js.map +1 -1
  6. package/dist/agents/codemie-code/skills/index.d.ts +4 -0
  7. package/dist/agents/codemie-code/skills/index.d.ts.map +1 -1
  8. package/dist/agents/codemie-code/skills/index.js +4 -0
  9. package/dist/agents/codemie-code/skills/index.js.map +1 -1
  10. package/dist/agents/codemie-code/skills/sync/SkillSync.d.ts +52 -0
  11. package/dist/agents/codemie-code/skills/sync/SkillSync.d.ts.map +1 -0
  12. package/dist/agents/codemie-code/skills/sync/SkillSync.js +165 -0
  13. package/dist/agents/codemie-code/skills/sync/SkillSync.js.map +1 -0
  14. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  15. package/dist/agents/core/AgentCLI.js +38 -8
  16. package/dist/agents/core/AgentCLI.js.map +1 -1
  17. package/dist/agents/core/BaseAgentAdapter.d.ts +11 -1
  18. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  19. package/dist/agents/core/BaseAgentAdapter.js +175 -18
  20. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  21. package/dist/agents/core/types.d.ts +18 -0
  22. package/dist/agents/core/types.d.ts.map +1 -1
  23. package/dist/agents/plugins/claude/claude-acp.plugin.d.ts +7 -0
  24. package/dist/agents/plugins/claude/claude-acp.plugin.d.ts.map +1 -1
  25. package/dist/agents/plugins/claude/claude-acp.plugin.js +10 -0
  26. package/dist/agents/plugins/claude/claude-acp.plugin.js.map +1 -1
  27. package/dist/agents/plugins/claude/claude.plugin-installer.d.ts +11 -0
  28. package/dist/agents/plugins/claude/claude.plugin-installer.d.ts.map +1 -1
  29. package/dist/agents/plugins/claude/claude.plugin-installer.js +32 -0
  30. package/dist/agents/plugins/claude/claude.plugin-installer.js.map +1 -1
  31. package/dist/agents/plugins/claude/claude.plugin.d.ts +1 -8
  32. package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -1
  33. package/dist/agents/plugins/claude/claude.plugin.js +96 -101
  34. package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
  35. package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +1 -1
  36. package/dist/agents/plugins/claude/plugin/codemie-statusline.mjs +42 -0
  37. package/dist/agents/plugins/claude/plugin/hooks/hooks.json +10 -0
  38. package/dist/agents/plugins/claude/plugin/hooks/hooks.windows.json +98 -0
  39. package/dist/agents/plugins/claude/plugin/scripts/bash/rtk-auto-wrapper.sh +81 -0
  40. package/dist/agents/plugins/claude/plugin/scripts/bash/rtk-baseline.sh +39 -0
  41. package/dist/agents/plugins/claude/sounds-installer.d.ts.map +1 -1
  42. package/dist/agents/plugins/claude/sounds-installer.js +0 -4
  43. package/dist/agents/plugins/claude/sounds-installer.js.map +1 -1
  44. package/dist/agents/plugins/codemie-code-binary.d.ts +17 -0
  45. package/dist/agents/plugins/codemie-code-binary.d.ts.map +1 -0
  46. package/dist/agents/plugins/codemie-code-binary.js +94 -0
  47. package/dist/agents/plugins/codemie-code-binary.js.map +1 -0
  48. package/dist/agents/plugins/codemie-code-hooks/index.d.ts +3 -0
  49. package/dist/agents/plugins/codemie-code-hooks/index.d.ts.map +1 -0
  50. package/dist/agents/plugins/codemie-code-hooks/index.js +3 -0
  51. package/dist/agents/plugins/codemie-code-hooks/index.js.map +1 -0
  52. package/dist/agents/plugins/codemie-code-hooks/inject-hooks.d.ts +22 -0
  53. package/dist/agents/plugins/codemie-code-hooks/inject-hooks.d.ts.map +1 -0
  54. package/dist/agents/plugins/codemie-code-hooks/inject-hooks.js +64 -0
  55. package/dist/agents/plugins/codemie-code-hooks/inject-hooks.js.map +1 -0
  56. package/dist/agents/plugins/codemie-code-hooks/shell-hooks-source.d.ts +15 -0
  57. package/dist/agents/plugins/codemie-code-hooks/shell-hooks-source.d.ts.map +1 -0
  58. package/dist/agents/plugins/codemie-code-hooks/shell-hooks-source.js +522 -0
  59. package/dist/agents/plugins/codemie-code-hooks/shell-hooks-source.js.map +1 -0
  60. package/dist/agents/plugins/codemie-code.plugin.d.ts +56 -12
  61. package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
  62. package/dist/agents/plugins/codemie-code.plugin.js +502 -125
  63. package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
  64. package/dist/agents/plugins/gemini/gemini.plugin.d.ts +8 -0
  65. package/dist/agents/plugins/gemini/gemini.plugin.d.ts.map +1 -1
  66. package/dist/agents/plugins/gemini/gemini.plugin.js +45 -1
  67. package/dist/agents/plugins/gemini/gemini.plugin.js.map +1 -1
  68. package/dist/agents/plugins/opencode/opencode-message-types.d.ts +2 -0
  69. package/dist/agents/plugins/opencode/opencode-message-types.d.ts.map +1 -1
  70. package/dist/agents/plugins/opencode/opencode-message-types.js.map +1 -1
  71. package/dist/agents/plugins/opencode/opencode-model-configs.d.ts +12 -2
  72. package/dist/agents/plugins/opencode/opencode-model-configs.d.ts.map +1 -1
  73. package/dist/agents/plugins/opencode/opencode-model-configs.js +329 -24
  74. package/dist/agents/plugins/opencode/opencode-model-configs.js.map +1 -1
  75. package/dist/agents/plugins/opencode/opencode.paths.d.ts +16 -1
  76. package/dist/agents/plugins/opencode/opencode.paths.d.ts.map +1 -1
  77. package/dist/agents/plugins/opencode/opencode.paths.js +43 -5
  78. package/dist/agents/plugins/opencode/opencode.paths.js.map +1 -1
  79. package/dist/agents/plugins/opencode/opencode.plugin.d.ts.map +1 -1
  80. package/dist/agents/plugins/opencode/opencode.plugin.js +91 -25
  81. package/dist/agents/plugins/opencode/opencode.plugin.js.map +1 -1
  82. package/dist/agents/plugins/opencode/opencode.session.d.ts +5 -0
  83. package/dist/agents/plugins/opencode/opencode.session.d.ts.map +1 -1
  84. package/dist/agents/plugins/opencode/opencode.session.js +99 -2
  85. package/dist/agents/plugins/opencode/opencode.session.js.map +1 -1
  86. package/dist/agents/plugins/opencode/opencode.sqlite-reader.d.ts +59 -0
  87. package/dist/agents/plugins/opencode/opencode.sqlite-reader.d.ts.map +1 -0
  88. package/dist/agents/plugins/opencode/opencode.sqlite-reader.js +200 -0
  89. package/dist/agents/plugins/opencode/opencode.sqlite-reader.js.map +1 -0
  90. package/dist/agents/plugins/opencode/session/processors/opencode.metrics-processor.d.ts +3 -0
  91. package/dist/agents/plugins/opencode/session/processors/opencode.metrics-processor.d.ts.map +1 -1
  92. package/dist/agents/plugins/opencode/session/processors/opencode.metrics-processor.js +35 -13
  93. package/dist/agents/plugins/opencode/session/processors/opencode.metrics-processor.js.map +1 -1
  94. package/dist/agents/registry.d.ts.map +1 -1
  95. package/dist/agents/registry.js +8 -7
  96. package/dist/agents/registry.js.map +1 -1
  97. package/dist/cli/commands/analytics/data-loader.js +1 -1
  98. package/dist/cli/commands/analytics/data-loader.js.map +1 -1
  99. package/dist/cli/commands/doctor/checks/AgentsCheck.d.ts.map +1 -1
  100. package/dist/cli/commands/doctor/checks/AgentsCheck.js +5 -2
  101. package/dist/cli/commands/doctor/checks/AgentsCheck.js.map +1 -1
  102. package/dist/cli/commands/doctor/checks/FrameworksCheck.d.ts.map +1 -1
  103. package/dist/cli/commands/doctor/checks/FrameworksCheck.js +5 -2
  104. package/dist/cli/commands/doctor/checks/FrameworksCheck.js.map +1 -1
  105. package/dist/cli/commands/doctor/checks/JWTAuthCheck.d.ts +9 -0
  106. package/dist/cli/commands/doctor/checks/JWTAuthCheck.d.ts.map +1 -0
  107. package/dist/cli/commands/doctor/checks/JWTAuthCheck.js +113 -0
  108. package/dist/cli/commands/doctor/checks/JWTAuthCheck.js.map +1 -0
  109. package/dist/cli/commands/doctor/checks/index.d.ts +1 -0
  110. package/dist/cli/commands/doctor/checks/index.d.ts.map +1 -1
  111. package/dist/cli/commands/doctor/checks/index.js +1 -0
  112. package/dist/cli/commands/doctor/checks/index.js.map +1 -1
  113. package/dist/cli/commands/doctor/index.d.ts.map +1 -1
  114. package/dist/cli/commands/doctor/index.js +2 -1
  115. package/dist/cli/commands/doctor/index.js.map +1 -1
  116. package/dist/cli/commands/hook.d.ts.map +1 -1
  117. package/dist/cli/commands/hook.js +28 -5
  118. package/dist/cli/commands/hook.js.map +1 -1
  119. package/dist/cli/commands/skill.d.ts.map +1 -1
  120. package/dist/cli/commands/skill.js +80 -1
  121. package/dist/cli/commands/skill.js.map +1 -1
  122. package/dist/cli/commands/test-metrics.d.ts +17 -0
  123. package/dist/cli/commands/test-metrics.d.ts.map +1 -0
  124. package/dist/cli/commands/test-metrics.js +198 -0
  125. package/dist/cli/commands/test-metrics.js.map +1 -0
  126. package/dist/cli/index.js +9 -13
  127. package/dist/cli/index.js.map +1 -1
  128. package/dist/env/types.d.ts +12 -2
  129. package/dist/env/types.d.ts.map +1 -1
  130. package/dist/env/types.js.map +1 -1
  131. package/dist/providers/core/types.d.ts +22 -1
  132. package/dist/providers/core/types.d.ts.map +1 -1
  133. package/dist/providers/core/types.js +12 -1
  134. package/dist/providers/core/types.js.map +1 -1
  135. package/dist/providers/index.d.ts +2 -0
  136. package/dist/providers/index.d.ts.map +1 -1
  137. package/dist/providers/index.js +2 -0
  138. package/dist/providers/index.js.map +1 -1
  139. package/dist/providers/integration/setup-ui.d.ts.map +1 -1
  140. package/dist/providers/integration/setup-ui.js +3 -1
  141. package/dist/providers/integration/setup-ui.js.map +1 -1
  142. package/dist/providers/plugins/jwt/index.d.ts +9 -0
  143. package/dist/providers/plugins/jwt/index.d.ts.map +1 -0
  144. package/dist/providers/plugins/jwt/index.js +13 -0
  145. package/dist/providers/plugins/jwt/index.js.map +1 -0
  146. package/dist/providers/plugins/jwt/jwt.setup-steps.d.ts +9 -0
  147. package/dist/providers/plugins/jwt/jwt.setup-steps.d.ts.map +1 -0
  148. package/dist/providers/plugins/jwt/jwt.setup-steps.js +153 -0
  149. package/dist/providers/plugins/jwt/jwt.setup-steps.js.map +1 -0
  150. package/dist/providers/plugins/jwt/jwt.template.d.ts +12 -0
  151. package/dist/providers/plugins/jwt/jwt.template.d.ts.map +1 -0
  152. package/dist/providers/plugins/jwt/jwt.template.js +55 -0
  153. package/dist/providers/plugins/jwt/jwt.template.js.map +1 -0
  154. package/dist/providers/plugins/sso/proxy/plugins/index.d.ts +3 -1
  155. package/dist/providers/plugins/sso/proxy/plugins/index.d.ts.map +1 -1
  156. package/dist/providers/plugins/sso/proxy/plugins/index.js +5 -1
  157. package/dist/providers/plugins/sso/proxy/plugins/index.js.map +1 -1
  158. package/dist/providers/plugins/sso/proxy/plugins/jwt-auth.plugin.d.ts +16 -0
  159. package/dist/providers/plugins/sso/proxy/plugins/jwt-auth.plugin.d.ts.map +1 -0
  160. package/dist/providers/plugins/sso/proxy/plugins/jwt-auth.plugin.js +53 -0
  161. package/dist/providers/plugins/sso/proxy/plugins/jwt-auth.plugin.js.map +1 -0
  162. package/dist/providers/plugins/sso/proxy/plugins/request-sanitizer.plugin.d.ts +25 -0
  163. package/dist/providers/plugins/sso/proxy/plugins/request-sanitizer.plugin.d.ts.map +1 -0
  164. package/dist/providers/plugins/sso/proxy/plugins/request-sanitizer.plugin.js +74 -0
  165. package/dist/providers/plugins/sso/proxy/plugins/request-sanitizer.plugin.js.map +1 -0
  166. package/dist/providers/plugins/sso/proxy/plugins/sso-auth.plugin.d.ts.map +1 -1
  167. package/dist/providers/plugins/sso/proxy/plugins/sso-auth.plugin.js +13 -2
  168. package/dist/providers/plugins/sso/proxy/plugins/sso-auth.plugin.js.map +1 -1
  169. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.d.ts.map +1 -1
  170. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js +6 -3
  171. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js.map +1 -1
  172. package/dist/providers/plugins/sso/proxy/plugins/types.d.ts +2 -2
  173. package/dist/providers/plugins/sso/proxy/plugins/types.d.ts.map +1 -1
  174. package/dist/providers/plugins/sso/proxy/proxy-types.d.ts +2 -0
  175. package/dist/providers/plugins/sso/proxy/proxy-types.d.ts.map +1 -1
  176. package/dist/providers/plugins/sso/proxy/sso.proxy.d.ts +4 -0
  177. package/dist/providers/plugins/sso/proxy/sso.proxy.d.ts.map +1 -1
  178. package/dist/providers/plugins/sso/proxy/sso.proxy.js +39 -10
  179. package/dist/providers/plugins/sso/proxy/sso.proxy.js.map +1 -1
  180. package/dist/providers/plugins/sso/sso.auth.d.ts +3 -1
  181. package/dist/providers/plugins/sso/sso.auth.d.ts.map +1 -1
  182. package/dist/providers/plugins/sso/sso.auth.js +70 -12
  183. package/dist/providers/plugins/sso/sso.auth.js.map +1 -1
  184. package/dist/providers/plugins/sso/sso.http-client.d.ts +38 -8
  185. package/dist/providers/plugins/sso/sso.http-client.d.ts.map +1 -1
  186. package/dist/providers/plugins/sso/sso.http-client.js +83 -85
  187. package/dist/providers/plugins/sso/sso.http-client.js.map +1 -1
  188. package/dist/providers/plugins/sso/sso.models.d.ts.map +1 -1
  189. package/dist/providers/plugins/sso/sso.models.js +3 -3
  190. package/dist/providers/plugins/sso/sso.models.js.map +1 -1
  191. package/dist/providers/plugins/sso/sso.setup-steps.d.ts.map +1 -1
  192. package/dist/providers/plugins/sso/sso.setup-steps.js +4 -1
  193. package/dist/providers/plugins/sso/sso.setup-steps.js.map +1 -1
  194. package/dist/providers/plugins/sso/sso.template.d.ts.map +1 -1
  195. package/dist/providers/plugins/sso/sso.template.js +7 -0
  196. package/dist/providers/plugins/sso/sso.template.js.map +1 -1
  197. package/dist/utils/logger.d.ts +1 -0
  198. package/dist/utils/logger.d.ts.map +1 -1
  199. package/dist/utils/logger.js +16 -1
  200. package/dist/utils/logger.js.map +1 -1
  201. package/dist/utils/native-installer.d.ts.map +1 -1
  202. package/dist/utils/native-installer.js +35 -0
  203. package/dist/utils/native-installer.js.map +1 -1
  204. package/dist/utils/paths.d.ts +1 -1
  205. package/dist/utils/paths.js +1 -1
  206. package/dist/utils/security.d.ts +18 -1
  207. package/dist/utils/security.d.ts.map +1 -1
  208. package/dist/utils/security.js +102 -0
  209. package/dist/utils/security.js.map +1 -1
  210. package/package.json +2 -1
  211. package/scripts/copy-mr-skill-to-global.ts +0 -252
@@ -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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"}
@@ -3,10 +3,11 @@
3
3
  * Per tech spec ADR-2
4
4
  */
5
5
  export interface StorageLayoutResult {
6
- layout: 'post-migration' | 'legacy' | 'mixed' | 'unknown';
6
+ layout: 'post-migration' | 'legacy' | 'mixed' | 'sqlite' | 'unknown';
7
7
  migrationVersion: number;
8
8
  postMigrationPath?: string;
9
9
  legacyPaths?: string[];
10
+ dbPath?: string;
10
11
  }
11
12
  /**
12
13
  * Detect OpenCode storage layout (post-migration vs legacy)
@@ -25,6 +26,11 @@ export declare function detectStorageLayout(storagePath: string): Promise<Storag
25
26
  * - macOS: ~/Library/Application Support/opencode/storage/
26
27
  * - Windows: %LOCALAPPDATA%/opencode/storage/
27
28
  *
29
+ * Priority order:
30
+ * 1. OPENCODE_STORAGE_PATH (explicit override)
31
+ * 2. XDG_DATA_HOME (standard XDG convention)
32
+ * 3. Platform-specific defaults
33
+ *
28
34
  * @returns Path to storage root directory or null if not found
29
35
  */
30
36
  export declare function getOpenCodeStoragePath(): string | null;
@@ -57,6 +63,15 @@ export declare function getOpenCodeHome(): string;
57
63
  * Get OpenCode config directory
58
64
  */
59
65
  export declare function getOpenCodeConfigDir(): string;
66
+ /**
67
+ * Get path to OpenCode's SQLite database (opencode.db)
68
+ *
69
+ * The DB lives one level above the storage/ directory:
70
+ * ~/.codemie/opencode-storage/opencode/opencode.db
71
+ *
72
+ * @returns Path to opencode.db or null if not found
73
+ */
74
+ export declare function getOpenCodeDbPath(): string | null;
60
75
  /** @deprecated Use getOpenCodeStoragePath() instead */
61
76
  export declare const getSessionStoragePath: typeof getOpenCodeStoragePath;
62
77
  //# sourceMappingURL=opencode.paths.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.paths.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.paths.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,gBAAgB,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAC1D,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAyC3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,GAAG,IAAI,CA8BtD;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAKvD;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAKvD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAKpD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAK7C;AAGD,uDAAuD;AACvD,eAAO,MAAM,qBAAqB,+BAAyB,CAAC"}
1
+ {"version":3,"file":"opencode.paths.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.paths.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,gBAAgB,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;IACrE,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAiD3F;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,GAAG,IAAI,CAqCtD;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAKvD;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAKvD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAKpD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAK7C;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAUjD;AAGD,uDAAuD;AACvD,eAAO,MAAM,qBAAqB,+BAAyB,CAAC"}
@@ -4,6 +4,7 @@ import { homedir } from 'os';
4
4
  import { join, dirname } from 'path';
5
5
  import { existsSync } from 'fs';
6
6
  import { readFile } from 'fs/promises';
7
+ import { logger } from '../../../utils/logger.js';
7
8
  /**
8
9
  * Detect OpenCode storage layout (post-migration vs legacy)
9
10
  *
@@ -29,19 +30,26 @@ export async function detectStorageLayout(storagePath) {
29
30
  const hasPostMigration = (existsSync(join(storagePath, 'session')) &&
30
31
  existsSync(join(storagePath, 'message')) &&
31
32
  existsSync(join(storagePath, 'part')));
33
+ // SQLite check: opencode.db lives one level above storage/
34
+ const dbPath = join(dirname(storagePath), 'opencode.db');
35
+ const hasSqlite = existsSync(dbPath);
32
36
  // Legacy structure check (project directories above storage/)
33
37
  const dataDir = dirname(storagePath); // Goes up to ~/.local/share/opencode/
34
38
  const projectDir = join(dataDir, 'project');
35
39
  const hasLegacy = existsSync(projectDir);
36
40
  // Determine layout
41
+ // SQLite takes priority when file-based dirs are absent
37
42
  if (migrationVersion >= 1 && hasPostMigration) {
38
- return { layout: 'post-migration', migrationVersion, postMigrationPath: storagePath };
43
+ return { layout: 'post-migration', migrationVersion, postMigrationPath: storagePath, ...(hasSqlite && { dbPath }) };
39
44
  }
40
45
  if (hasPostMigration && hasLegacy) {
41
- return { layout: 'mixed', migrationVersion, postMigrationPath: storagePath, legacyPaths: [projectDir] };
46
+ return { layout: 'mixed', migrationVersion, postMigrationPath: storagePath, legacyPaths: [projectDir], ...(hasSqlite && { dbPath }) };
42
47
  }
43
48
  if (hasPostMigration) {
44
- return { layout: 'post-migration', migrationVersion, postMigrationPath: storagePath };
49
+ return { layout: 'post-migration', migrationVersion, postMigrationPath: storagePath, ...(hasSqlite && { dbPath }) };
50
+ }
51
+ if (hasSqlite && !hasPostMigration) {
52
+ return { layout: 'sqlite', migrationVersion, dbPath };
45
53
  }
46
54
  if (hasLegacy) {
47
55
  return { layout: 'legacy', migrationVersion, legacyPaths: [projectDir] };
@@ -56,17 +64,28 @@ export async function detectStorageLayout(storagePath) {
56
64
  * - macOS: ~/Library/Application Support/opencode/storage/
57
65
  * - Windows: %LOCALAPPDATA%/opencode/storage/
58
66
  *
67
+ * Priority order:
68
+ * 1. OPENCODE_STORAGE_PATH (explicit override)
69
+ * 2. XDG_DATA_HOME (standard XDG convention)
70
+ * 3. Platform-specific defaults
71
+ *
59
72
  * @returns Path to storage root directory or null if not found
60
73
  */
61
74
  export function getOpenCodeStoragePath() {
62
75
  const home = homedir();
63
76
  let storagePath;
64
- // XDG_DATA_HOME always takes precedence (any platform)
77
+ // Priority 0: Custom storage path override (most explicit)
78
+ if (process.env.OPENCODE_STORAGE_PATH) {
79
+ const customPath = process.env.OPENCODE_STORAGE_PATH;
80
+ logger.debug(`[opencode-paths] Using OPENCODE_STORAGE_PATH: ${customPath}`);
81
+ return existsSync(customPath) ? customPath : null;
82
+ }
83
+ // Priority 1: XDG_DATA_HOME (standard XDG convention)
65
84
  if (process.env.XDG_DATA_HOME) {
66
85
  storagePath = join(process.env.XDG_DATA_HOME, 'opencode', 'storage');
67
86
  }
68
87
  else {
69
- // Platform-specific defaults
88
+ // Priority 2: Platform-specific defaults
70
89
  switch (process.platform) {
71
90
  case 'darwin': // macOS
72
91
  storagePath = join(home, 'Library', 'Application Support', 'opencode', 'storage');
@@ -142,6 +161,25 @@ export function getOpenCodeConfigDir() {
142
161
  }
143
162
  return join(homedir(), '.config', 'opencode');
144
163
  }
164
+ /**
165
+ * Get path to OpenCode's SQLite database (opencode.db)
166
+ *
167
+ * The DB lives one level above the storage/ directory:
168
+ * ~/.codemie/opencode-storage/opencode/opencode.db
169
+ *
170
+ * @returns Path to opencode.db or null if not found
171
+ */
172
+ export function getOpenCodeDbPath() {
173
+ const storagePath = getOpenCodeStoragePath();
174
+ if (!storagePath)
175
+ return null;
176
+ const dbPath = join(dirname(storagePath), 'opencode.db');
177
+ if (existsSync(dbPath)) {
178
+ logger.debug(`[opencode-paths] Found SQLite DB: ${dbPath}`);
179
+ return dbPath;
180
+ }
181
+ return null;
182
+ }
145
183
  // Legacy alias for backward compatibility
146
184
  /** @deprecated Use getOpenCodeStoragePath() instead */
147
185
  export const getSessionStoragePath = getOpenCodeStoragePath;
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.paths.js","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opencode.paths.js","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.paths.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;AAMtE,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;AAkH7F,eAAO,MAAM,sBAAsB,EAAE,aA6MpC,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
+ {"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;AAMtE,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;AAuI7F,eAAO,MAAM,sBAAsB,EAAE,aA+PpC,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"}
@@ -2,11 +2,30 @@ import { tmpdir } from 'os';
2
2
  import { join } from 'path';
3
3
  import { writeFileSync, unlinkSync } from 'fs';
4
4
  import { logger } from '../../../utils/logger.js';
5
- import { getModelConfig } from './opencode-model-configs.js';
5
+ import { getModelConfig, getAllOpenCodeModelConfigs } from './opencode-model-configs.js';
6
6
  import { BaseAgentAdapter } from '../../core/BaseAgentAdapter.js';
7
7
  import { commandExists } from '../../../utils/processes.js';
8
8
  import { OpenCodeSessionAdapter } from './opencode.session.js';
9
+ import { getHooksPluginFileUrl, cleanupHooksPlugin } from '../codemie-code-hooks/index.js';
9
10
  const OPENCODE_SUBCOMMANDS = ['run', 'chat', 'config', 'init', 'help', 'version'];
11
+ /**
12
+ * Convert a short model ID to Bedrock inference profile format.
13
+ * Bedrock requires region-prefixed ARN-style model IDs.
14
+ *
15
+ * Examples:
16
+ * claude-sonnet-4-5-20250929 → us.anthropic.claude-sonnet-4-5-20250929-v1:0
17
+ * claude-opus-4-6 → us.anthropic.claude-opus-4-6-v1:0
18
+ *
19
+ * If the model ID already contains 'anthropic.', it's returned as-is.
20
+ */
21
+ function toBedrockModelId(modelId, region) {
22
+ if (modelId.includes('anthropic.'))
23
+ return modelId;
24
+ const regionPrefix = region?.startsWith('eu') ? 'eu'
25
+ : region?.startsWith('ap') ? 'ap'
26
+ : 'us';
27
+ return `${regionPrefix}.anthropic.${modelId}-v1:0`;
28
+ }
10
29
  // Environment variable size limit (conservative - varies by platform)
11
30
  // Linux: ~128KB per var, Windows: ~32KB total env block
12
31
  const MAX_ENV_SIZE = 32 * 1024;
@@ -113,12 +132,13 @@ export const OpenCodePluginMetadata = {
113
132
  // NOTE: Session storage is NOT in home - it's in XDG_DATA_HOME/opencode/storage/
114
133
  // This is handled by getSessionStoragePath() in opencode.paths.ts
115
134
  },
135
+ ownedSubcommands: OPENCODE_SUBCOMMANDS,
116
136
  envMapping: {
117
137
  baseUrl: [],
118
138
  apiKey: [],
119
139
  model: []
120
140
  },
121
- supportedProviders: ['litellm', 'ai-run-sso'],
141
+ supportedProviders: ['litellm', 'ai-run-sso', 'ollama', 'bedrock', 'bearer-auth'],
122
142
  ssoConfig: { enabled: true, clientType: 'codemie-opencode' },
123
143
  lifecycle: {
124
144
  // NOTE: beforeRun signature is (env, config) per AgentLifecycle interface
@@ -138,43 +158,84 @@ export const OpenCodePluginMetadata = {
138
158
  // Don't throw - let OpenCode run even if session file creation fails
139
159
  }
140
160
  }
141
- const proxyUrl = env.CODEMIE_BASE_URL;
142
- if (!proxyUrl) {
161
+ const provider = env.CODEMIE_PROVIDER;
162
+ const baseUrl = env.CODEMIE_BASE_URL;
163
+ if (!baseUrl) {
143
164
  return env;
144
165
  }
145
- if (!proxyUrl.startsWith('http://') && !proxyUrl.startsWith('https://')) {
146
- logger.warn(`Invalid CODEMIE_BASE_URL format: ${proxyUrl}`, { agent: 'opencode' });
166
+ if (!baseUrl.startsWith('http://') && !baseUrl.startsWith('https://')) {
167
+ logger.warn(`Invalid CODEMIE_BASE_URL format: ${baseUrl}`, { agent: 'opencode' });
147
168
  return env;
148
169
  }
149
170
  // Model selection priority: env var > config > default
150
171
  const selectedModel = env.CODEMIE_MODEL || config?.model || 'gpt-5-2-2025-12-11';
151
172
  const modelConfig = getModelConfig(selectedModel);
152
- // Extract OpenCode-compatible model config (remove CodeMie-specific fields)
153
- const { displayName: _displayName, providerOptions, ...opencodeModelConfig } = modelConfig;
173
+ const { providerOptions } = modelConfig;
174
+ // Build all models for codemie-proxy (stripped of CodeMie-specific fields)
175
+ const allModels = getAllOpenCodeModelConfigs();
176
+ // Determine URLs based on provider type
177
+ const isBedrock = provider === 'bedrock';
178
+ const proxyBaseUrl = provider !== 'ollama' && !isBedrock ? baseUrl : undefined;
179
+ const ollamaBaseUrl = provider === 'ollama'
180
+ ? (baseUrl.endsWith('/v1') || baseUrl.includes('/v1/') ? baseUrl : `${baseUrl.replace(/\/$/, '')}/v1`)
181
+ : 'http://localhost:11434/v1';
182
+ // Determine default model provider
183
+ // - ollama: uses ollama provider directly
184
+ // - bedrock: uses OpenCode's built-in amazon-bedrock provider (AWS env vars set by provider hook)
185
+ // - all others: route through codemie-proxy (SSO/proxy)
186
+ const activeProvider = provider === 'ollama' ? 'ollama' : (isBedrock ? 'amazon-bedrock' : 'codemie-proxy');
187
+ const timeout = providerOptions?.timeout ?? parseInt(env.CODEMIE_TIMEOUT || '600') * 1000;
154
188
  const openCodeConfig = {
155
- enabled_providers: ['codemie-proxy'],
189
+ enabled_providers: ['codemie-proxy', 'ollama', 'amazon-bedrock'],
190
+ share: 'disabled',
156
191
  provider: {
157
- 'codemie-proxy': {
192
+ ...(proxyBaseUrl && {
193
+ 'codemie-proxy': {
194
+ npm: '@ai-sdk/openai-compatible',
195
+ name: 'CodeMie SSO',
196
+ options: {
197
+ baseURL: `${proxyBaseUrl}/`,
198
+ apiKey: 'proxy-handled',
199
+ timeout,
200
+ ...(providerOptions?.headers && { headers: providerOptions.headers })
201
+ },
202
+ models: allModels
203
+ }
204
+ }),
205
+ ollama: {
158
206
  npm: '@ai-sdk/openai-compatible',
159
- name: 'CodeMie SSO',
207
+ name: 'Ollama',
160
208
  options: {
161
- baseURL: `${proxyUrl}/`,
162
- apiKey: 'proxy-handled',
163
- timeout: providerOptions?.timeout ||
164
- parseInt(env.CODEMIE_TIMEOUT || '600') * 1000,
165
- ...(providerOptions?.headers && {
166
- headers: providerOptions.headers
167
- })
168
- },
169
- models: {
170
- [modelConfig.id]: opencodeModelConfig
209
+ baseURL: `${ollamaBaseUrl}/`,
210
+ apiKey: 'ollama',
211
+ timeout,
171
212
  }
172
213
  }
173
214
  },
174
- defaults: {
175
- model: `codemie-proxy/${modelConfig.id}`
176
- }
215
+ model: `${activeProvider}/${isBedrock ? toBedrockModelId(modelConfig.id, env.AWS_REGION || env.CODEMIE_AWS_REGION) : modelConfig.id}`
177
216
  };
217
+ // --- Hooks injection ---
218
+ // 1. Forward hooks configuration from profile
219
+ if (env.CODEMIE_PROFILE_CONFIG) {
220
+ try {
221
+ const profileConfig = JSON.parse(env.CODEMIE_PROFILE_CONFIG);
222
+ if (profileConfig.hooks && Object.keys(profileConfig.hooks).length > 0) {
223
+ env.OPENCODE_HOOKS = JSON.stringify({ hooks: profileConfig.hooks });
224
+ logger.debug('[opencode] Forwarded hooks config to opencode binary');
225
+ }
226
+ }
227
+ catch {
228
+ // Non-critical — profile config parse failure doesn't block startup
229
+ }
230
+ }
231
+ // 2. Inject shell-hooks plugin if hooks are configured
232
+ if (env.OPENCODE_HOOKS) {
233
+ const pluginUrl = getHooksPluginFileUrl();
234
+ openCodeConfig.plugin = openCodeConfig.plugin || [];
235
+ openCodeConfig.plugin.push(pluginUrl);
236
+ logger.debug(`[opencode] Injected hooks plugin: ${pluginUrl}`);
237
+ }
238
+ env.OPENCODE_DISABLE_SHARE = 'true';
178
239
  const configJson = JSON.stringify(openCodeConfig);
179
240
  // Config injection strategy:
180
241
  // 1. Primary: OPENCODE_CONFIG_CONTENT env var (inline JSON)
@@ -211,7 +272,9 @@ export const OpenCodePluginMetadata = {
211
272
  return false;
212
273
  return true;
213
274
  });
214
- return ['run', '-m', taskValue, ...otherArgs];
275
+ // Message is a positional arg: `opencode run <message>`
276
+ // Note: -m in upstream opencode-ai means --model, NOT --message.
277
+ return ['run', taskValue, ...otherArgs];
215
278
  }
216
279
  return args;
217
280
  },
@@ -281,6 +344,9 @@ export const OpenCodePluginMetadata = {
281
344
  logger.error(`[opencode] Failed to process session metrics automatically: ${errorMessage}`);
282
345
  // Don't throw - metrics failure shouldn't block exit
283
346
  }
347
+ finally {
348
+ cleanupHooksPlugin();
349
+ }
284
350
  }
285
351
  }
286
352
  };
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.plugin.js","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opencode.plugin.js","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.plugin.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,11 @@ export declare class OpenCodeSessionAdapter implements SessionAdapter {
28
28
  * not ISO strings. We convert to ISO for CodeMie's canonical format.
29
29
  */
30
30
  parseSessionFile(filePath: string, sessionId: string): Promise<ParsedSession>;
31
+ /**
32
+ * Parse a session from SQLite database.
33
+ * Reads session, messages, and all parts in bulk from opencode.db.
34
+ */
35
+ private parseSessionFromDb;
31
36
  /**
32
37
  * Validate session path has expected structure (GPT-5.8 fix, updated GPT-5.10/5.11)
33
38
  * Expected: .../storage/session/{projectId}/{sessionId}.json
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.session.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.session.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC5J,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC/F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA2DzD;;;;;GAKG;AACH,qBAAa,sBAAuB,YAAW,cAAc;IAI/C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAHrC,QAAQ,CAAC,SAAS,cAAc;IAChC,OAAO,CAAC,UAAU,CAA0B;gBAEf,QAAQ,EAAE,aAAa;IAOpD;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IAMpD;;;;;OAKG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA+DnF;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;;;;;;;OASG;YACW,YAAY;IA6B1B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAkCtB;;OAEG;IACG,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,CAAC;IA6D5B;;;;;OAKG;IACG,gBAAgB,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;CAwHxF"}
1
+ {"version":3,"file":"opencode.session.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/opencode/opencode.session.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC5J,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC/F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAiEzD;;;;;GAKG;AACH,qBAAa,sBAAuB,YAAW,cAAc;IAI/C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAHrC,QAAQ,CAAC,SAAS,cAAc;IAChC,OAAO,CAAC,UAAU,CAA0B;gBAEf,QAAQ,EAAE,aAAa;IAOpD;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IAMpD;;;;;OAKG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAqEnF;;;OAGG;YACW,kBAAkB;IA8DhC;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;;;;;;;OASG;YACW,YAAY;IA6B1B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAkCtB;;OAEG;IACG,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,CAAC;IA6D5B;;;;;OAKG;IACG,gBAAgB,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;CA+JxF"}
@@ -2,7 +2,8 @@
2
2
  import { readFile, readdir, stat } from 'fs/promises';
3
3
  import { join, dirname, sep } from 'path';
4
4
  import { existsSync } from 'fs';
5
- import { getOpenCodeSessionsPath } from './opencode.paths.js';
5
+ import { getOpenCodeSessionsPath, getOpenCodeDbPath } from './opencode.paths.js';
6
+ import { isSqliteAvailable, readSessionsFromDb, readMessagesFromDb, readAllPartsForSessionFromDb, } from './opencode.sqlite-reader.js';
6
7
  import { logger } from '../../../utils/logger.js';
7
8
  import { OpenCodeMetricsProcessor } from './session/processors/opencode.metrics-processor.js';
8
9
  import { OpenCodeConversationsProcessor } from './session/processors/opencode.conversations-processor.js';
@@ -91,6 +92,10 @@ export class OpenCodeSessionAdapter {
91
92
  * not ISO strings. We convert to ISO for CodeMie's canonical format.
92
93
  */
93
94
  async parseSessionFile(filePath, sessionId) {
95
+ // Route to SQLite parsing if filePath points to a .db file
96
+ if (filePath.endsWith('.db')) {
97
+ return this.parseSessionFromDb(filePath, sessionId);
98
+ }
94
99
  try {
95
100
  // Validate path shape before proceeding (GPT-5.8 fix)
96
101
  // Expected: .../storage/session/{projectId}/{sessionId}.json
@@ -129,7 +134,8 @@ export class OpenCodeSessionAdapter {
129
134
  // Per tech spec ADR-1: Expose storage path and OpenCode session ID for metrics processor
130
135
  storagePath,
131
136
  openCodeSessionId: session.id,
132
- openCodeVersion: session.version
137
+ openCodeVersion: session.version,
138
+ storageType: 'file',
133
139
  };
134
140
  return {
135
141
  sessionId,
@@ -144,6 +150,62 @@ export class OpenCodeSessionAdapter {
144
150
  throw error;
145
151
  }
146
152
  }
153
+ /**
154
+ * Parse a session from SQLite database.
155
+ * Reads session, messages, and all parts in bulk from opencode.db.
156
+ */
157
+ async parseSessionFromDb(dbPath, sessionId) {
158
+ try {
159
+ logger.debug(`[opencode-adapter] Parsing session ${sessionId} from SQLite: ${dbPath}`);
160
+ // Read session data
161
+ // Note: sessionId may be a CodeMie UUID (not an OpenCode ses_* ID).
162
+ // Try exact match first, then fallback to most recent session (sorted by time_created DESC).
163
+ const sessions = await readSessionsFromDb(dbPath, { maxAgeDays: 1 });
164
+ const session = sessions.find(s => s.id === sessionId) ?? sessions[0];
165
+ if (!session) {
166
+ throw new Error(`Session ${sessionId} not found in SQLite DB: ${dbPath}`);
167
+ }
168
+ if (session.id !== sessionId) {
169
+ logger.debug(`[opencode-adapter] Mapped CodeMie session ${sessionId} → OpenCode session ${session.id}`);
170
+ }
171
+ // Read messages using OpenCode session ID (not CodeMie UUID)
172
+ const messages = await readMessagesFromDb(dbPath, session.id);
173
+ // Read all parts for this session in one bulk query
174
+ const partsMap = await readAllPartsForSessionFromDb(dbPath, session.id);
175
+ // Extract metrics from messages
176
+ const metrics = this.extractMetrics(messages);
177
+ logger.debug(`[opencode-adapter] Parsed SQLite session ${sessionId}: ${messages.length} messages, ` +
178
+ `${Object.keys(partsMap).length} messages with parts, ` +
179
+ `${metrics?.tokens?.input || 0} input tokens, ${metrics?.tokens?.output || 0} output tokens`);
180
+ // Derive storagePath from dbPath: dbPath is .../opencode/opencode.db → storage is .../opencode/storage
181
+ const storagePath = join(dirname(dbPath), 'storage');
182
+ const metadata = {
183
+ projectPath: session.directory,
184
+ createdAt: session.time?.created
185
+ ? new Date(session.time.created).toISOString()
186
+ : undefined,
187
+ updatedAt: session.time?.updated
188
+ ? new Date(session.time.updated).toISOString()
189
+ : undefined,
190
+ storagePath,
191
+ openCodeSessionId: session.id,
192
+ openCodeVersion: session.version,
193
+ partsMap,
194
+ storageType: 'sqlite',
195
+ };
196
+ return {
197
+ sessionId,
198
+ agentName: this.metadata.displayName || 'opencode',
199
+ metadata,
200
+ messages,
201
+ metrics,
202
+ };
203
+ }
204
+ catch (error) {
205
+ logger.error(`[opencode-adapter] Failed to parse SQLite session ${sessionId}:`, error);
206
+ throw error;
207
+ }
208
+ }
147
209
  /**
148
210
  * Validate session path has expected structure (GPT-5.8 fix, updated GPT-5.10/5.11)
149
211
  * Expected: .../storage/session/{projectId}/{sessionId}.json
@@ -317,6 +379,41 @@ export class OpenCodeSessionAdapter {
317
379
  * Applies 30-day default filter and optional cwd filter.
318
380
  */
319
381
  async discoverSessions(options) {
382
+ // SQLite-first detection: check if opencode.db exists and sqlite3 CLI is available
383
+ const dbPath = getOpenCodeDbPath();
384
+ if (dbPath && await isSqliteAvailable()) {
385
+ logger.debug(`[opencode-discovery] Using SQLite storage: ${dbPath}`);
386
+ try {
387
+ const sessions = await readSessionsFromDb(dbPath, {
388
+ maxAgeDays: options?.maxAgeDays ?? 30,
389
+ cwd: options?.cwd,
390
+ });
391
+ const descriptors = sessions.map(session => ({
392
+ sessionId: session.id,
393
+ filePath: dbPath, // Point to DB file for parseSessionFile routing
394
+ projectPath: session.directory,
395
+ createdAt: session.time?.created ?? 0,
396
+ updatedAt: typeof session.time?.updated === 'number' ? session.time.updated : undefined,
397
+ agentName: 'opencode',
398
+ }));
399
+ // Sort by createdAt descending (newest first)
400
+ descriptors.sort((a, b) => b.createdAt - a.createdAt);
401
+ // Apply limit
402
+ if (options?.limit && options.limit > 0) {
403
+ const limited = descriptors.slice(0, options.limit);
404
+ logger.debug(`[opencode-discovery] Found ${descriptors.length} SQLite sessions, returning ${limited.length} (limit: ${options.limit})`);
405
+ return limited;
406
+ }
407
+ logger.debug(`[opencode-discovery] Found ${descriptors.length} SQLite sessions`);
408
+ return descriptors;
409
+ }
410
+ catch (error) {
411
+ const msg = error instanceof Error ? error.message : String(error);
412
+ logger.warn(`[opencode-discovery] SQLite discovery failed, falling back to file-based: ${msg}`);
413
+ // Fall through to file-based discovery
414
+ }
415
+ }
416
+ // File-based discovery (legacy fallback)
320
417
  const sessionsPath = getOpenCodeSessionsPath();
321
418
  if (!sessionsPath) {
322
419
  logger.debug('[opencode-discovery] Sessions path not found (OpenCode not installed?)');