| ... | @@ -57,6 +57,7 @@ import { | ... | @@ -57,6 +57,7 @@ import { |
| 57 | type ProviderSnapshotSettings, | 57 | type ProviderSnapshotSettings, |
| 58 | } from "../providerUpdateSettings.ts"; | 58 | } from "../providerUpdateSettings.ts"; |
| 59 | import { makeClaudeCapabilitiesCacheKey, makeClaudeContinuationGroupKey } from "./ClaudeHome.ts"; | 59 | import { makeClaudeCapabilitiesCacheKey, makeClaudeContinuationGroupKey } from "./ClaudeHome.ts"; |
| | 60 | import { discoverClaudeSkills } from "./ClaudeSkills.ts"; |
| 60 | const decodeClaudeSettings = Schema.decodeSync(ClaudeSettings); | 61 | const decodeClaudeSettings = Schema.decodeSync(ClaudeSettings); |
| 61 | | 62 | |
| 62 | const DRIVER_KIND = ProviderDriverKind.make("claudeAgent"); | 63 | const DRIVER_KIND = ProviderDriverKind.make("claudeAgent"); |
| ... | @@ -212,6 +213,17 @@ export const ClaudeDriver: ProviderDriver<ClaudeSettings, ClaudeDriverEnv> = { | ... | @@ -212,6 +213,17 @@ export const ClaudeDriver: ProviderDriver<ClaudeSettings, ClaudeDriverEnv> = { |
| 212 | }), | 213 | }), |
| 213 | ), | 214 | ), |
| 214 | ); | 215 | ); |
| | 216 | const snapshotForCwd = (cwd: string) => |
| | 217 | !effectiveConfig.enabled |
| | 218 | ? snapshot.getSnapshot |
| | 219 | : Effect.all([ |
| | 220 | snapshot.getSnapshot, |
| | 221 | discoverClaudeSkills(effectiveConfig, cwd, processEnv), |
| | 222 | ]).pipe( |
| | 223 | Effect.map(([machineSnapshot, skills]) => ({ ...machineSnapshot, skills })), |
| | 224 | Effect.provideService(FileSystem.FileSystem, fileSystem), |
| | 225 | Effect.provideService(Path.Path, path), |
| | 226 | ); |
| 215 | | 227 | |
| 216 | return { | 228 | return { |
| 217 | instanceId, | 229 | instanceId, |
| ... | @@ -224,6 +236,7 @@ export const ClaudeDriver: ProviderDriver<ClaudeSettings, ClaudeDriverEnv> = { | ... | @@ -224,6 +236,7 @@ export const ClaudeDriver: ProviderDriver<ClaudeSettings, ClaudeDriverEnv> = { |
| 224 | accentColor, | 236 | accentColor, |
| 225 | enabled, | 237 | enabled, |
| 226 | snapshot, | 238 | snapshot, |
| | 239 | snapshotForCwd, |
| 227 | adapter, | 240 | adapter, |
| 228 | textGeneration, | 241 | textGeneration, |
| 229 | } satisfies ProviderInstance; | 242 | } satisfies ProviderInstance; |