@whispering233/ai-editor-server 0.0.30 → 0.0.32

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 (40) hide show
  1. package/client-dist/assets/index-BlZjI169.js +523 -0
  2. package/client-dist/assets/{index-BBkKfUUn.css → index-DUmFZL7d.css} +1 -1
  3. package/client-dist/index.html +3 -3
  4. package/dist/backup.d.ts +8 -7
  5. package/dist/backup.d.ts.map +1 -1
  6. package/dist/backup.js +61 -45
  7. package/dist/backup.js.map +1 -1
  8. package/dist/chat-runtime.d.ts +44 -0
  9. package/dist/chat-runtime.d.ts.map +1 -0
  10. package/dist/chat-runtime.js +102 -0
  11. package/dist/chat-runtime.js.map +1 -0
  12. package/dist/debug.d.ts +1 -1
  13. package/dist/debug.d.ts.map +1 -1
  14. package/dist/debug.js +3 -3
  15. package/dist/debug.js.map +1 -1
  16. package/dist/http-dispatcher.d.ts +30 -0
  17. package/dist/http-dispatcher.d.ts.map +1 -0
  18. package/dist/http-dispatcher.js +101 -0
  19. package/dist/http-dispatcher.js.map +1 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +8 -0
  22. package/dist/index.js.map +1 -1
  23. package/dist/middleware/project.d.ts.map +1 -1
  24. package/dist/middleware/project.js +4 -0
  25. package/dist/middleware/project.js.map +1 -1
  26. package/dist/model-runtime.d.ts +41 -0
  27. package/dist/model-runtime.d.ts.map +1 -0
  28. package/dist/model-runtime.js +81 -0
  29. package/dist/model-runtime.js.map +1 -0
  30. package/dist/routes/chat.d.ts +35 -72
  31. package/dist/routes/chat.d.ts.map +1 -1
  32. package/dist/routes/chat.js +390 -373
  33. package/dist/routes/chat.js.map +1 -1
  34. package/dist/routes/names.js +2 -2
  35. package/dist/routes/settings.d.ts +0 -53
  36. package/dist/routes/settings.d.ts.map +1 -1
  37. package/dist/routes/settings.js +159 -194
  38. package/dist/routes/settings.js.map +1 -1
  39. package/package.json +8 -6
  40. package/client-dist/assets/index-ygCEt46m.js +0 -523
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  // char-/set-/loc-/hook-/ev-/tp-/ref- → entities 表(getEntity 已过滤软删)
6
6
  // vol-/ch-/sc- → outline.json 节点(findOutlineNode 读侧不过滤软删——deleted: true 返回 null)
7
7
  // rel- → null(关系无名称语义)
8
- // 其余前缀(proj-/prop_/sess_/call_/未知)→ null
8
+ // 其余前缀(proj-/prop_/call_/会话 id/未知)→ null
9
9
  // 响应 names 键集 = 请求 ids 去重后全集(每个 id 必有条目,未命中 = null)
10
10
  import { Hono } from "hono";
11
11
  import { getEntity, findOutlineNode, readOutlineFile } from "@whispering233/ai-editor-db";
@@ -38,7 +38,7 @@ function resolveOne(id, project) {
38
38
  return { label: OUTLINE_NODE_TYPE_LABELS[node.type], name: node.title };
39
39
  }
40
40
  }
41
- // rel- 与其他前缀(proj-/prop_/sess_/call_/未知):无名称语义 → null
41
+ // rel- 与其他前缀(proj-/prop_/call_/会话 id/未知):无名称语义 → null
42
42
  return null;
43
43
  }
44
44
  // POST /api/v1/names/resolve —— 批量名称解析
@@ -1,57 +1,4 @@
1
1
  import { Hono } from "hono";
2
- import type { UserConfigFile } from "@whispering233/ai-editor-shared";
3
- import { type ThinkingLevel } from "@whispering233/ai-editor-shared/schemas";
4
- /** 默认模型名(settings 端点;两 provider 目录均含该模型——兜底/初始态稳定) */
5
- export declare const DEFAULT_MODEL = "deepseek-v4-flash";
6
- /** 环境变量(各 provider 解析链第 ① 级;测试经 process.env 注入) */
7
- export declare const DEEPSEEK_API_KEY_ENV = "DEEPSEEK_API_KEY";
8
- export declare const OPENCODE_API_KEY_ENV = "OPENCODE_API_KEY";
9
- /** 用户级配置文件相对 HOME 的路径(不入项目文件) */
10
- export declare const USER_CONFIG_RELATIVE_PATH: string;
11
- /** pi-agent 凭据文件相对 HOME 的路径(只读兜底;opencode-go 订阅 key 通常在此) */
12
- export declare const PI_AGENT_AUTH_RELATIVE_PATH: string;
13
- /** 缺省思考强度(与 SharedConfig 缺省一致,读侧兜底) */
14
- export declare const DEFAULT_THINKING_LEVEL: ThinkingLevel;
15
- /** 用户级配置文件绝对路径(os.homedir() 读 $HOME,测试设 HOME 即可隔离) */
16
- export declare function userConfigPath(): string;
17
- /** pi-agent auth.json 绝对路径(只读;测试设 HOME 即可隔离) */
18
- export declare function piAgentAuthPath(): string;
19
- /**
20
- * 读取用户级配置;文件不存在 / JSON 损坏 / schema 不合法 → 返回空配置(默认值语义,不抛错)。
21
- * schema 正式化(shared userConfigFileSchema,非 strict 宽松读取——用户自有文件,
22
- * 未来版本追加字段不使整份配置失效);v0/v1 旧格式与 v2 同读侧兼容,不迁移不写回
23
- * (用户下次在设置页保存时自然落新格式)。
24
- */
25
- export declare function getUserConfig(): UserConfigFile;
26
- /** 激活 provider:config.provider 已注册才采用;否则缺省 deepseek(配置漂移兜底) */
27
- export declare function effectiveProvider(): string;
28
- /** provider 展示名(错误文案/调试用);未知 provider → 原 id */
29
- export declare function providerDisplayName(provider: string): string;
30
- /** provider 环境变量名(错误文案用) */
31
- export declare function providerEnvVar(provider: string): string | undefined;
32
- /**
33
- * 计算某 provider 的有效 key 与掩码:环境变量 > config.json > pi-agent auth.json(只读兜底)
34
- * 三级都无 → null(apiKeySet=false,无掩码)。缺省 provider = deepseek(旧单 provider 语义)。
35
- */
36
- export declare function effectiveApiKey(provider?: string): {
37
- key: string | null;
38
- masked: string | undefined;
39
- };
40
- /**
41
- * 写入用户级配置(v2 合并语义:显式 undefined 字段不覆盖已有值)。
42
- * - provider/model/thinking_level 顶层覆盖
43
- * - api_keys 按键合并:提供即覆盖,空字符串 = 删除该键(清空 map 时整个字段移除)
44
- * - 落盘 schema_version=2;v1 旧 api_key 字段保留不迁移(读侧兼容已覆盖)
45
- * 原子写:复用 @whispering233/ai-editor-db 的 writeJsonAtomic(临时文件 wx 独占 +
46
- * 文件 fsync + rename + 目录 fsync)。目标在 $HOME/.ai-editor/ 下,目录 fsync 在部分
47
- * 平台/文件系统受限时由 db 实现静默忽略(主链路已保证文件内容完整)
48
- */
49
- export declare function saveUserConfig(partial: {
50
- provider?: string;
51
- model?: string;
52
- thinking_level?: ThinkingLevel;
53
- api_keys?: Record<string, string>;
54
- }): UserConfigFile;
55
2
  /** 设置路由(挂载于 /api/v1/settings) */
56
3
  export declare const settingsRoutes: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
57
4
  //# sourceMappingURL=settings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/routes/settings.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEtE,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,yCAAyC,CAAC;AAIjD,sDAAsD;AACtD,eAAO,MAAM,aAAa,sBAAsB,CAAC;AAEjD,mDAAmD;AACnD,eAAO,MAAM,oBAAoB,qBAAqB,CAAC;AACvD,eAAO,MAAM,oBAAoB,qBAAqB,CAAC;AAQvD,iCAAiC;AACjC,eAAO,MAAM,yBAAyB,QAAoC,CAAC;AAE3E,6DAA6D;AAC7D,eAAO,MAAM,2BAA2B,QAAoC,CAAC;AAE7E,uCAAuC;AACvC,eAAO,MAAM,sBAAsB,EAAE,aAAsB,CAAC;AAE5D,sDAAsD;AACtD,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,gDAAgD;AAChD,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,cAAc,CAQ9C;AAED,+DAA+D;AAC/D,wBAAgB,iBAAiB,IAAI,MAAM,CAG1C;AAyBD,gDAAgD;AAChD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,4BAA4B;AAC5B,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEnE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,GAAE,MAAyB,GAAG;IAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAMvH;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC,GAAG,cAAc,CAoBjB;AAED,iCAAiC;AACjC,eAAO,MAAM,cAAc,4EAAa,CAAC"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/routes/settings.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAa5B,iCAAiC;AACjC,eAAO,MAAM,cAAc,4EAAa,CAAC"}
@@ -1,218 +1,183 @@
1
- // 设置路由(S1.3 + 多 provider):GET/PUT /api/v1/settings/llm
2
- // 关键约束:各 provider key 只走三级解析链(不入项目文件):
3
- // 环境变量(deepseek DEEPSEEK_API_KEY;opencode-go OPENCODE_API_KEY)
4
- // ② 用户级配置 ~/.ai-editor/config.json api_keys[<provider>](HOME 可覆盖——测试隔离依赖;
5
- // v1 api_key 字段仅对 deepseek 生效)
6
- // pi-agent 配置 ~/.pi/agent/auth.json(**只读兜底**:条目 type=api_key key 非空才生效,
7
- // 文件不存在/非法/无该项 跳过;绝不写回)
8
- // 模型解析不变式:model 属于激活 provider 目录;撞名模型(deepseek-v4-flash/pro 两家都有)
9
- // 以 provider 消歧;跨 provider 激活由 PUT 携带 provider+model 成对完成(见 PUT 校验)。
10
- import { mkdirSync, readFileSync } from "node:fs";
11
- import { homedir } from "node:os";
12
- import { dirname, join } from "node:path";
1
+ // 设置路由:GET/PUT /api/v1/settings/llm(pi 数据源)
2
+ //
3
+ // 契约 = docs/api/90-api-settings.md;配置载体与读写边界 = docs/design/config.md。
4
+ //
5
+ // **本模块不持有任何配置**:模型目录 / 凭据 / 运行参数全部来自 pi(`ModelRuntime` +
6
+ // `~/.pi/agent` auth.json / models.json / settings.json),本端点只做「读快照 + pi」。
7
+ // 环境变量(`DEEPSEEK_API_KEY` 等)由 pi 的凭据解析链优先消费。
8
+ //
9
+ // 写入语义(两个入口互不影响):
10
+ // - provider/model/thinking_level pi settings(`~/.pi/agent/settings.json`)
11
+ // - api_key(单家)→ pi credential store(`~/.pi/agent/auth.json`);空串 = 清除该家存量的 API key 凭据
12
+ //
13
+ // 绝不写入项目文件(项目目录内的 `.pi/` 同样不参与:settings 实例 projectTrusted=false)。
13
14
  import { Hono } from "hono";
14
- import { maskApiKey } from "@whispering233/ai-editor-shared";
15
- import { writeJsonAtomic } from "@whispering233/ai-editor-db";
16
- import { settingsLlmGetResSchema, settingsLlmPutReqSchema, userConfigFileSchema, } from "@whispering233/ai-editor-shared/schemas";
17
- import { DEFAULT_PROVIDER, getAvailableModels, REGISTERED_PROVIDERS } from "@whispering233/ai-editor-llm";
15
+ import { CredentialSynchronizationError } from "@earendil-works/pi-coding-agent";
16
+ import { settingsLlmGetResSchema, settingsLlmPutReqSchema } from "@whispering233/ai-editor-shared/schemas";
18
17
  import { HttpError, ok } from "../middleware/error.js";
19
- /** 默认模型名(settings 端点;两 provider 目录均含该模型——兜底/初始态稳定) */
20
- export const DEFAULT_MODEL = "deepseek-v4-flash";
21
- /** 环境变量(各 provider 解析链第 级;测试经 process.env 注入) */
22
- export const DEEPSEEK_API_KEY_ENV = "DEEPSEEK_API_KEY";
23
- export const OPENCODE_API_KEY_ENV = "OPENCODE_API_KEY";
24
- /** provider id 环境变量名(注册表内 provider 必含;未知 provider 无 env 级) */
25
- const ENV_VAR_OF = {
26
- deepseek: DEEPSEEK_API_KEY_ENV,
27
- "opencode-go": OPENCODE_API_KEY_ENV,
28
- };
29
- /** 用户级配置文件相对 HOME 的路径(不入项目文件) */
30
- export const USER_CONFIG_RELATIVE_PATH = join(".ai-editor", "config.json");
31
- /** pi-agent 凭据文件相对 HOME 的路径(只读兜底;opencode-go 订阅 key 通常在此) */
32
- export const PI_AGENT_AUTH_RELATIVE_PATH = join(".pi", "agent", "auth.json");
33
- /** 缺省思考强度(与 SharedConfig 缺省一致,读侧兜底) */
34
- export const DEFAULT_THINKING_LEVEL = "high";
35
- /** 用户级配置文件绝对路径(os.homedir() 读 $HOME,测试设 HOME 即可隔离) */
36
- export function userConfigPath() {
37
- return join(homedir(), USER_CONFIG_RELATIVE_PATH);
38
- }
39
- /** pi-agent auth.json 绝对路径(只读;测试设 HOME 即可隔离) */
40
- export function piAgentAuthPath() {
41
- return join(homedir(), PI_AGENT_AUTH_RELATIVE_PATH);
18
+ import { PI_DEFAULT_THINKING_LEVEL, getModelRuntime, getSettingsManager, reloadModelRuntime, resolveActiveSelection, } from "../model-runtime.js";
19
+ /** 设置路由(挂载于 /api/v1/settings) */
20
+ export const settingsRoutes = new Hono();
21
+ /** 错误信息文本(不泄露凭据内容:pi 的错误只含 provider id/原因) */
22
+ function messageOf(err) {
23
+ return err instanceof Error ? err.message : String(err);
42
24
  }
25
+ // GET /api/v1/settings/llm —— provider 目录 + 认证状态 + 激活模型(凭据明文永不回传)
26
+ settingsRoutes.get("/llm", async (c) => {
27
+ const modelRuntime = await getModelRuntime();
28
+ const settings = getSettingsManager();
29
+ // 本地重载(不联网):外部编辑 models.json / 环境变量变化在下次读取即可见
30
+ await reloadModelRuntime(modelRuntime);
31
+ const selection = await resolveActiveSelection(modelRuntime, settings);
32
+ const payload = settingsLlmGetResSchema.parse({
33
+ // 未配置任何模型 → 空串(前端展示「未配置」引导)
34
+ provider: selection?.provider ?? "",
35
+ model: selection?.modelId ?? "",
36
+ thinkingLevel: settings.getDefaultThinkingLevel() ?? PI_DEFAULT_THINKING_LEVEL,
37
+ // 全量 provider(含未配置认证者):设置页需要展示并引导录入 key
38
+ providers: modelRuntime.getProviders().map((provider) => {
39
+ const status = modelRuntime.getProviderAuthStatus(provider.id);
40
+ return {
41
+ id: provider.id,
42
+ displayName: provider.name,
43
+ authConfigured: status.configured,
44
+ ...(status.source === undefined ? {} : { authSource: status.source }),
45
+ models: modelRuntime.getModels(provider.id).map((model) => ({
46
+ id: model.id,
47
+ provider: model.provider,
48
+ displayName: model.name,
49
+ contextWindow: model.contextWindow,
50
+ maxTokens: model.maxTokens,
51
+ reasoning: model.reasoning,
52
+ })),
53
+ };
54
+ }),
55
+ });
56
+ return c.json(ok(payload));
57
+ });
43
58
  /**
44
- * 读取用户级配置;文件不存在 / JSON 损坏 / schema 不合法 返回空配置(默认值语义,不抛错)。
45
- * schema 正式化(shared userConfigFileSchema,非 strict 宽松读取——用户自有文件,
46
- * 未来版本追加字段不使整份配置失效);v0/v1 旧格式与 v2 同读侧兼容,不迁移不写回
47
- * (用户下次在设置页保存时自然落新格式)。
59
+ * 解析 PUT 的目标 (provider, model) 对(不变式:model 必须属于目标 provider 目录)。
60
+ * - provider+model 同传:跨 provider 激活(前端恒成对发送)
61
+ * - 只给 model:唯一归属自动定 provider;无归属 / 撞名歧义 400
62
+ * - 只给 provider:当前模型必须仍在其目录(防静默改用户选择)
48
63
  */
49
- export function getUserConfig() {
50
- try {
51
- const raw = readFileSync(userConfigPath(), "utf8");
52
- const parsed = userConfigFileSchema.safeParse(JSON.parse(raw));
53
- return parsed.success ? parsed.data : {};
64
+ function resolveTargetModel(modelRuntime, input) {
65
+ const { provider, model, currentModelId } = input;
66
+ if (provider !== undefined && modelRuntime.getProvider(provider) === undefined) {
67
+ throw new HttpError(400, "VALIDATION_ERROR", `未知 provider: ${provider}`);
54
68
  }
55
- catch {
56
- return {};
69
+ const modelIdsOf = (providerId) => new Set(modelRuntime.getModels(providerId).map((m) => m.id));
70
+ if (model !== undefined) {
71
+ let targetProvider = provider;
72
+ if (targetProvider === undefined) {
73
+ const owners = modelRuntime.getProviders().filter((p) => modelIdsOf(p.id).has(model));
74
+ if (owners.length === 0) {
75
+ throw new HttpError(400, "VALIDATION_ERROR", `模型不在任何 provider 目录: ${model}`);
76
+ }
77
+ if (owners.length > 1) {
78
+ throw new HttpError(400, "VALIDATION_ERROR", `模型在多 provider 目录中存在(撞名),请显式指定 provider: ${owners.map((p) => p.id).join("/")}`);
79
+ }
80
+ targetProvider = owners[0].id;
81
+ }
82
+ if (!modelIdsOf(targetProvider).has(model)) {
83
+ const displayName = modelRuntime.getProvider(targetProvider)?.name ?? targetProvider;
84
+ throw new HttpError(400, "VALIDATION_ERROR", `模型 ${model} 不在 provider ${displayName} 目录`);
85
+ }
86
+ return { provider: targetProvider, modelId: model };
57
87
  }
58
- }
59
- /** 激活 provider:config.provider 已注册才采用;否则缺省 deepseek(配置漂移兜底) */
60
- export function effectiveProvider() {
61
- const p = getUserConfig().provider;
62
- return p !== undefined && REGISTERED_PROVIDERS.some((x) => x.id === p) ? p : DEFAULT_PROVIDER;
63
- }
64
- /** config key:api_keys[provider](含空串 = 显式清除)> v1 旧 api_key(仅 deepseek 读侧兼容) */
65
- function configKeyOf(cfg, provider) {
66
- if (cfg.api_keys !== undefined && Object.prototype.hasOwnProperty.call(cfg.api_keys, provider)) {
67
- return cfg.api_keys[provider] || null; // 空串 = 显式清除(不回落旧字段)
88
+ if (provider !== undefined) {
89
+ const current = currentModelId;
90
+ if (current === undefined || current === "") {
91
+ throw new HttpError(400, "VALIDATION_ERROR", `切换 provider 需显式指定 model(当前无激活模型)`);
92
+ }
93
+ if (!modelIdsOf(provider).has(current)) {
94
+ const displayName = modelRuntime.getProvider(provider)?.name ?? provider;
95
+ throw new HttpError(400, "VALIDATION_ERROR", `当前模型 ${current} 不在 provider ${displayName} 目录,请显式选择模型`);
96
+ }
97
+ return { provider, modelId: current };
68
98
  }
69
- if (provider === "deepseek" && typeof cfg.api_key === "string" && cfg.api_key !== "")
70
- return cfg.api_key;
71
99
  return null;
72
100
  }
73
- /** pi-agent auth.json 只读兜底:条目 type=api_key 且 key 非空才生效;任何异常 → null */
74
- function piAgentKeyOf(provider) {
75
- try {
76
- const obj = JSON.parse(readFileSync(piAgentAuthPath(), "utf8"));
77
- const entry = obj?.[provider];
78
- if (typeof entry !== "object" || entry === null)
79
- return null;
80
- const e = entry;
81
- if (e.type === "api_key" && typeof e.key === "string" && e.key !== "")
82
- return e.key;
83
- return null;
84
- }
85
- catch {
86
- return null;
87
- }
88
- }
89
- /** provider 展示名(错误文案/调试用);未知 provider → 原 id */
90
- export function providerDisplayName(provider) {
91
- return REGISTERED_PROVIDERS.find((p) => p.id === provider)?.displayName ?? provider;
92
- }
93
- /** provider 环境变量名(错误文案用) */
94
- export function providerEnvVar(provider) {
95
- return ENV_VAR_OF[provider];
96
- }
97
101
  /**
98
- * 计算某 provider 的有效 key 与掩码:环境变量 > config.json > pi-agent auth.json(只读兜底)
99
- * 三级都无 null(apiKeySet=false,无掩码)。缺省 provider = deepseek(旧单 provider 语义)。
102
+ * 写入 / 清除单家 API key 凭据(pi credential store)。
103
+ * - 非空 key:走 pi `login("api_key")`——交互式提示由我们不变量地回填本次输入
104
+ * (pi 会把凭据落盘到 auth.json 并做**本地**凭据同步,不联网)
105
+ * - 空 key:删除该家存量的 api_key 凭据(回到 env 解析);OAuth 凭据不在此入口删除
106
+ * (设置页只写 API key,误删会让用户的订阅登录失效)
100
107
  */
101
- export function effectiveApiKey(provider = DEFAULT_PROVIDER) {
102
- const envKey = process.env[ENV_VAR_OF[provider] ?? ""] ?? "";
103
- const fileKey = configKeyOf(getUserConfig(), provider) ?? "";
104
- const ambientKey = piAgentKeyOf(provider) ?? "";
105
- const key = envKey || fileKey || ambientKey || null;
106
- return key === null ? { key, masked: undefined } : { key, masked: maskApiKey(key) };
107
- }
108
- /**
109
- * 写入用户级配置(v2 合并语义:显式 undefined 字段不覆盖已有值)。
110
- * - provider/model/thinking_level 顶层覆盖
111
- * - api_keys 按键合并:提供即覆盖,空字符串 = 删除该键(清空 map 时整个字段移除)
112
- * - 落盘 schema_version=2;v1 旧 api_key 字段保留不迁移(读侧兼容已覆盖)
113
- * 原子写:复用 @whispering233/ai-editor-db 的 writeJsonAtomic(临时文件 wx 独占 +
114
- * 文件 fsync + rename + 目录 fsync)。目标在 $HOME/.ai-editor/ 下,目录 fsync 在部分
115
- * 平台/文件系统受限时由 db 实现静默忽略(主链路已保证文件内容完整)
116
- */
117
- export function saveUserConfig(partial) {
118
- const file = userConfigPath();
119
- const next = { ...getUserConfig() };
120
- if (partial.provider !== undefined)
121
- next.provider = partial.provider;
122
- if (partial.model !== undefined)
123
- next.model = partial.model;
124
- if (partial.thinking_level !== undefined)
125
- next.thinking_level = partial.thinking_level;
126
- if (partial.api_keys !== undefined) {
127
- const map = { ...(next.api_keys ?? {}) };
128
- for (const [k, v] of Object.entries(partial.api_keys)) {
129
- if (v === "")
130
- delete map[k]; // 空字符串 = 清除该家已保存 key
131
- else
132
- map[k] = v;
108
+ async function applyApiKey(modelRuntime, providerId, key) {
109
+ if (modelRuntime.getProvider(providerId) === undefined) {
110
+ throw new HttpError(400, "VALIDATION_ERROR", `未知 provider: ${providerId}`);
111
+ }
112
+ const trimmed = key.trim();
113
+ if (trimmed === "") {
114
+ const stored = (await modelRuntime.listCredentials()).find((entry) => entry.providerId === providerId);
115
+ if (stored?.type === "oauth") {
116
+ throw new HttpError(400, "VALIDATION_ERROR", `${providerId} 当前使用 OAuth 凭据登录,本入口只能清除 API key(请用 pi CLI 管理订阅登录)`);
133
117
  }
134
- if (Object.keys(map).length > 0)
135
- next.api_keys = map;
136
- else
137
- delete next.api_keys;
118
+ await modelRuntime.logout(providerId);
119
+ return;
120
+ }
121
+ // 与清除路径对称:存量 OAuth(订阅登录)不得被一次 API key 写入静默覆盖
122
+ // (pi 每 provider 只存一条凭据;覆盖后用户需用 pi CLI 重新登录才能恢复)
123
+ const existing = (await modelRuntime.listCredentials()).find((entry) => entry.providerId === providerId);
124
+ if (existing?.type === "oauth") {
125
+ throw new HttpError(400, "VALIDATION_ERROR", `${providerId} 当前使用 OAuth 凭据登录,本入口不覆盖订阅登录(请用 pi CLI 管理订阅登录)`);
126
+ }
127
+ const interaction = {
128
+ notify: () => {
129
+ // pi 的登录进度提示(终端向);本入口无 UI,忽略
130
+ },
131
+ prompt: async (prompt) => {
132
+ if (prompt.type === "secret")
133
+ return trimmed;
134
+ if (prompt.type === "select") {
135
+ const option = prompt.options.find((o) => o.id === "api-key" || o.id === "bearer-token");
136
+ if (option !== undefined)
137
+ return option.id;
138
+ }
139
+ throw new Error(`${providerId} 需要交互式认证配置,本入口只支持 API key`);
140
+ },
141
+ };
142
+ try {
143
+ await modelRuntime.login(providerId, "api_key", interaction);
144
+ }
145
+ catch (err) {
146
+ // 凭据已落盘、仅本地状态同步失败:按服务端错误呈现(让用户重试而不是怀疑输入)
147
+ if (err instanceof CredentialSynchronizationError) {
148
+ throw new HttpError(500, "INTERNAL_ERROR", `${providerId} 的凭据已写入,但模型状态同步失败:${messageOf(err)}`);
149
+ }
150
+ throw new HttpError(400, "VALIDATION_ERROR", `保存 ${providerId} 的 API key 失败:${messageOf(err)}`);
138
151
  }
139
- // 保存时落新格式:schema_version=2(读侧兼容已保证 v0/v1 文件零破坏)
140
- next.schema_version = 2;
141
- mkdirSync(dirname(file), { recursive: true }); // writeJsonAtomic 不负责建目录
142
- writeJsonAtomic(file, next);
143
- return next;
144
152
  }
145
- /** 设置路由(挂载于 /api/v1/settings) */
146
- export const settingsRoutes = new Hono();
147
- // GET /api/v1/settings/llm —— 读取 LLM 配置(key 不回传明文,仅掩码;全量 provider 目录 + 各家 key 状态)
148
- settingsRoutes.get("/llm", (c) => {
149
- const cfg = getUserConfig();
150
- const provider = effectiveProvider();
151
- const payload = settingsLlmGetResSchema.parse({
152
- provider,
153
- model: cfg.model ?? DEFAULT_MODEL,
154
- thinkingLevel: cfg.thinking_level ?? DEFAULT_THINKING_LEVEL,
155
- // 全量注册 provider:各家目录 + 有效 key 状态(前端下拉分组 + key 缺失整组禁用的依据)
156
- providers: REGISTERED_PROVIDERS.map((p) => {
157
- const { key, masked } = effectiveApiKey(p.id);
158
- return {
159
- id: p.id,
160
- displayName: p.displayName,
161
- apiKeySet: key !== null,
162
- ...(masked !== undefined ? { apiKeyMasked: masked } : {}),
163
- models: getAvailableModels(p.id).map((m) => ({
164
- id: m.id,
165
- provider: m.provider,
166
- displayName: m.displayName,
167
- contextWindow: m.contextWindow,
168
- maxTokens: m.maxTokens,
169
- reasoning: m.reasoning,
170
- })),
171
- };
172
- }),
173
- });
174
- return c.json(ok(payload));
175
- });
176
- // PUT /api/v1/settings/llm —— 更新 LLM 配置(写入 ~/.ai-editor/config.json,绝不入项目文件)
177
- // 校验不变式:最终 (provider, model) 必须满足 model ∈ provider 目录
178
- // - provider+model 成对(跨 provider 激活,前端恒成对发送);model 不在该目录 → 400
179
- // - 只给 model:唯一归属自动定 provider;撞名(deepseek-v4-flash/pro 两目录都有)歧义 → 400(须显式 provider)
180
- // - 只给 provider:当前 model 不在新目录 → 400(须显式 model;防静默改用户选择)
153
+ // PUT /api/v1/settings/llm —— 写 pi settings(模型/思考强度)+ pi credential store(key
181
154
  settingsRoutes.put("/llm", async (c) => {
182
155
  const raw = await c.req.json().catch(() => null); // 空 body / 非法 JSON → 校验失败
183
156
  const parsed = settingsLlmPutReqSchema.safeParse(raw);
184
- if (!parsed.success) {
157
+ if (!parsed.success)
185
158
  throw parsed.error; // → app.onError → 400 VALIDATION_ERROR(含 fields)
159
+ const { provider, model, thinking_level, api_key } = parsed.data;
160
+ const modelRuntime = await getModelRuntime();
161
+ const settings = getSettingsManager();
162
+ // 本地重载(不联网):PUT 与 GET 看到同一份目录(外部编辑 models.json 后直接 PUT 模型也能校验通过)
163
+ await reloadModelRuntime(modelRuntime);
164
+ // ---- 凭据(独立于模型切换:只保存 key 不改激活模型) ----
165
+ if (api_key !== undefined) {
166
+ await applyApiKey(modelRuntime, api_key.provider, api_key.key);
186
167
  }
187
- const { provider, model, thinking_level, api_keys } = parsed.data;
188
- const cfg = getUserConfig();
189
- let targetProvider = provider ?? effectiveProvider();
190
- const currentModel = cfg.model ?? DEFAULT_MODEL;
191
- if (model !== undefined) {
192
- if (provider === undefined) {
193
- // 只给 model:归属唯一 provider(撞名歧义 → 400,须显式 provider)
194
- const owners = REGISTERED_PROVIDERS.filter((p) => getAvailableModels(p.id).some((m) => m.id === model));
195
- if (owners.length === 1)
196
- targetProvider = owners[0].id;
197
- else if (owners.length === 0)
198
- throw new HttpError(400, "VALIDATION_ERROR", `模型不在任何已注册 provider 目录: ${model}`);
199
- else
200
- throw new HttpError(400, "VALIDATION_ERROR", `模型在多 provider 目录中存在(撞名),请显式指定 provider: ${owners.map((p) => p.id).join("/")}`);
201
- }
202
- if (!getAvailableModels(targetProvider).some((m) => m.id === model)) {
203
- throw new HttpError(400, "VALIDATION_ERROR", `模型 ${model} 不在 provider ${providerDisplayName(targetProvider)} 目录`);
204
- }
205
- }
206
- else if (provider !== undefined && !getAvailableModels(provider).some((m) => m.id === currentModel)) {
207
- // 只给 provider:当前 model 必须仍在新目录(默认模型两目录都有,正常路径恒过)
208
- throw new HttpError(400, "VALIDATION_ERROR", `当前模型 ${currentModel} 不在 provider ${providerDisplayName(provider)} 目录,请显式选择模型`);
168
+ // ---- 激活模型(provider + model 成对;缺省按当前激活模型消歧) ----
169
+ if (provider !== undefined || model !== undefined) {
170
+ const selection = await resolveActiveSelection(modelRuntime, settings);
171
+ const target = resolveTargetModel(modelRuntime, {
172
+ provider,
173
+ model,
174
+ currentModelId: selection?.modelId,
175
+ });
176
+ if (target !== null)
177
+ settings.setDefaultModelAndProvider(target.provider, target.modelId);
209
178
  }
210
- saveUserConfig({
211
- provider: model !== undefined || provider !== undefined ? targetProvider : undefined,
212
- model,
213
- thinking_level,
214
- api_keys,
215
- });
179
+ if (thinking_level !== undefined)
180
+ settings.setDefaultThinkingLevel(thinking_level);
216
181
  return c.json(ok({ saved: true })); // settingsLlmPutResSchema 形状
217
182
  });
218
183
  //# sourceMappingURL=settings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/routes/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/routes/settings.ts"],"names":[],"mappings":"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"}