From 7fb3269c698ae583ea7997ce206c4ae252fd3218 Mon Sep 17 00:00:00 2001 From: Adam Malczewski Date: Fri, 5 Jun 2026 21:20:12 +0900 Subject: feat(backend): credential-store + model selection/catalog (GET /models) + per-turn cwd through orchestrator/transport/host-bin --- packages/host-bin/package.json | 1 + packages/host-bin/src/main.ts | 5 +++++ packages/host-bin/tsconfig.json | 1 + 3 files changed, 7 insertions(+) (limited to 'packages/host-bin') diff --git a/packages/host-bin/package.json b/packages/host-bin/package.json index a3e24c8..4ce63a9 100644 --- a/packages/host-bin/package.json +++ b/packages/host-bin/package.json @@ -8,6 +8,7 @@ "@dispatch/storage-sqlite": "workspace:*", "@dispatch/conversation-store": "workspace:*", "@dispatch/auth-apikey": "workspace:*", + "@dispatch/credential-store": "workspace:*", "@dispatch/provider-openai-compat": "workspace:*", "@dispatch/session-orchestrator": "workspace:*", "@dispatch/transport-http": "workspace:*", diff --git a/packages/host-bin/src/main.ts b/packages/host-bin/src/main.ts index 4e4b3e4..d766e46 100644 --- a/packages/host-bin/src/main.ts +++ b/packages/host-bin/src/main.ts @@ -2,6 +2,7 @@ import { mkdirSync } from "node:fs"; import { dirname } from "node:path"; import { extension as authApikeyExt } from "@dispatch/auth-apikey"; import { extension as conversationStoreExt } from "@dispatch/conversation-store"; +import { createCredentialStoreExtension } from "@dispatch/credential-store"; import { createJournalSink } from "@dispatch/journal-sink"; import { type ConfigAccess, @@ -54,6 +55,10 @@ const CORE_EXTENSIONS: readonly Extension[] = [ authApikeyExt, providerOpenaiCompatExt, toolReadFileExt, + // MVP single hardcoded credential; future work makes it config/TOML-driven. + createCredentialStoreExtension({ + credentials: [{ name: "opencode", providerId: "openai-compat" }], + }), sessionOrchestratorExt, transportHttpExt, ]; diff --git a/packages/host-bin/tsconfig.json b/packages/host-bin/tsconfig.json index a811c47..70ff95c 100644 --- a/packages/host-bin/tsconfig.json +++ b/packages/host-bin/tsconfig.json @@ -7,6 +7,7 @@ { "path": "../storage-sqlite" }, { "path": "../conversation-store" }, { "path": "../auth-apikey" }, + { "path": "../credential-store" }, { "path": "../provider-openai-compat" }, { "path": "../session-orchestrator" }, { "path": "../transport-http" } -- cgit v1.2.3