v2.2.19: Cloud Model Providers Support (OpenRouter, Anthropic, Gemini)
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"version": 1,
|
||||
"generatedAt": "2026-05-16T13:51:21.336Z",
|
||||
"generatedAt": "2026-05-16T14:34:03.249Z",
|
||||
"files": {
|
||||
"src/agent.ts": {
|
||||
"mtimeMs": 1778936503000,
|
||||
"size": 201748,
|
||||
"lines": 3509,
|
||||
"mtimeMs": 1778941597000,
|
||||
"size": 205909,
|
||||
"lines": 3579,
|
||||
"role": "",
|
||||
"imports": [
|
||||
"src/utils",
|
||||
@@ -34,7 +34,8 @@
|
||||
"src/core/responseRecovery",
|
||||
"src/lib/contextManager",
|
||||
"src/lmstudio/streamer",
|
||||
"src/features/approval/approvalQueue"
|
||||
"src/features/approval/approvalQueue",
|
||||
"src/features/providers"
|
||||
]
|
||||
},
|
||||
"src/agents/AgentWorkflowManager.ts": {
|
||||
@@ -387,9 +388,9 @@
|
||||
]
|
||||
},
|
||||
"src/features/astraOffice/view/runtime.ts": {
|
||||
"mtimeMs": 1778939265000,
|
||||
"size": 73382,
|
||||
"lines": 1564,
|
||||
"mtimeMs": 1778941900000,
|
||||
"size": 82015,
|
||||
"lines": 1765,
|
||||
"role": "자동 분리: src/sidebarProvider.ts 4002-5116 (IIFE 본문) 에서 추출. 동작 동등. ${assets.derivedBase} placeholder 는 panelHtml 에서 .replace() 로 실제 값 주입. 다음 세션에서 OfficeSnapshot 기반으로 단계적으로 잘라낼 예정.",
|
||||
"imports": []
|
||||
},
|
||||
@@ -731,6 +732,74 @@
|
||||
"role": "",
|
||||
"imports": []
|
||||
},
|
||||
"src/features/providers/anthropic.ts": {
|
||||
"mtimeMs": 1778941456000,
|
||||
"size": 4111,
|
||||
"lines": 108,
|
||||
"role": "Anthropic Messages API adapter. 차이점 (OpenAI 와): 1. base URL: https://api.anthropic.com/v1 2. 인증: x-api-key: <key> + anthropic-version: 2023-06-01 3. system prompt 는 messages 가 아니라 top-level system 필드 ",
|
||||
"imports": [
|
||||
"src/features/providers/types",
|
||||
"src/features/providers/providerConfig",
|
||||
"src/features/providers/streamHelpers"
|
||||
]
|
||||
},
|
||||
"src/features/providers/gemini.ts": {
|
||||
"mtimeMs": 1778941478000,
|
||||
"size": 4326,
|
||||
"lines": 108,
|
||||
"role": "Google Gemini Generative Language API adapter. 차이점 (OpenAI 와): 1. base URL: https://generativelanguage.googleapis.com/v1beta 2. 인증: ?key=<api key> (query parameter) 3. 메시지 형식: contents: [{role: 'user'",
|
||||
"imports": [
|
||||
"src/features/providers/types",
|
||||
"src/features/providers/providerConfig",
|
||||
"src/features/providers/streamHelpers"
|
||||
]
|
||||
},
|
||||
"src/features/providers/index.ts": {
|
||||
"mtimeMs": 1778941521000,
|
||||
"size": 3242,
|
||||
"lines": 69,
|
||||
"role": "Cloud LLM provider public API. 일반 호출 흐름: 1. agent.ts 의 chat 진입부에서 parseModelPrefix(modelId) 호출 2. null → local engine 경로 (옛 로직). 객체 → streamCloudCompletion(context, hit, params) 호출 3. Response 의 body ",
|
||||
"imports": [
|
||||
"src/features/providers/types",
|
||||
"src/features/providers/openrouter",
|
||||
"src/features/providers/anthropic",
|
||||
"src/features/providers/gemini",
|
||||
"src/features/providers/providerConfig"
|
||||
]
|
||||
},
|
||||
"src/features/providers/openrouter.ts": {
|
||||
"mtimeMs": 1778941431000,
|
||||
"size": 2673,
|
||||
"lines": 75,
|
||||
"role": "OpenRouter — OpenAI 호환 API. 별도 transform 없이 fetch Response 를 그대로 반환. Base: https://openrouter.ai/api/v1 POST /chat/completions — OpenAI 형식 그대로. stream:true 면 SSE. GET /models — 사용 가능 모델 목록. 인증: Author",
|
||||
"imports": [
|
||||
"src/features/providers/types",
|
||||
"src/features/providers/providerConfig"
|
||||
]
|
||||
},
|
||||
"src/features/providers/providerConfig.ts": {
|
||||
"mtimeMs": 1778941498000,
|
||||
"size": 2683,
|
||||
"lines": 78,
|
||||
"role": "Provider 별 API key + enable 토글 저장소. 설계: - API key 자체는 vscode.SecretStorage (secrets) 에 — settings.json / Settings Sync 침범 안 받음. - enabled 토글은 일반 settings (g1nation.providers.<id>.enabled) — 사용자가 패널에서 ",
|
||||
"imports": [
|
||||
"src/features/providers/types"
|
||||
]
|
||||
},
|
||||
"src/features/providers/streamHelpers.ts": {
|
||||
"mtimeMs": 1778941413000,
|
||||
"size": 5904,
|
||||
"lines": 144,
|
||||
"role": "Stream transformer — provider 별 SSE 형식을 OpenAI 호환 SSE 로 변환. 이렇게 하면 agent.ts 의 기존 SSE 파서 (data: {...delta...} 형식 가정) 가 변경 없이 모든 provider 출력을 같은 코드 경로로 소비할 수 있다. 신규 provider 가 들어와도 adapter 하나만 추가하면 됨 (c",
|
||||
"imports": []
|
||||
},
|
||||
"src/features/providers/types.ts": {
|
||||
"mtimeMs": 1778941377000,
|
||||
"size": 2370,
|
||||
"lines": 63,
|
||||
"role": "Cloud LLM provider routing — model id prefix → provider id 매핑. Prefix 규칙: openrouter:anthropic/claude-3.5-sonnet → { provider: 'openrouter', model: 'anthropic/claude-3.5-sonnet' } anthropic:claude-3-5",
|
||||
"imports": []
|
||||
},
|
||||
"src/features/secondBrainTrace.ts": {
|
||||
"mtimeMs": 1778248166000,
|
||||
"size": 37475,
|
||||
@@ -1184,9 +1253,9 @@
|
||||
]
|
||||
},
|
||||
"src/sidebarProvider.ts": {
|
||||
"mtimeMs": 1778937445000,
|
||||
"size": 189218,
|
||||
"lines": 4149,
|
||||
"mtimeMs": 1778941620000,
|
||||
"size": 189927,
|
||||
"lines": 4165,
|
||||
"role": "",
|
||||
"imports": [
|
||||
"src/utils",
|
||||
@@ -1861,7 +1930,7 @@
|
||||
"imports": []
|
||||
},
|
||||
"docs/records/ConnectAI/chronicle.config.json": {
|
||||
"mtimeMs": 1778937757000,
|
||||
"mtimeMs": 1778940893000,
|
||||
"size": 416,
|
||||
"lines": 11,
|
||||
"role": "JSON configuration",
|
||||
|
||||
Reference in New Issue
Block a user