diff --git a/hosts/home/common.nix b/hosts/home/common.nix index c229b38..4dee90a 100644 --- a/hosts/home/common.nix +++ b/hosts/home/common.nix @@ -18,6 +18,7 @@ dot.llm = { enable = true; pi.enable = true; + pi.enableConfig = true; opencode.enable = true; opencode.enableConfig = true; # pi.enable = true; diff --git a/hosts/work/common.nix b/hosts/work/common.nix index d77240c..5c9a6b5 100644 --- a/hosts/work/common.nix +++ b/hosts/work/common.nix @@ -21,6 +21,7 @@ opencode.enableConfig = true; opencode.workMode = true; pi.enable = true; + pi.enableConfig = true; pi.workMode = true; }; diff --git a/modules/home/opencode.nix b/modules/home/opencode.nix index 72f8e29..d3332ca 100644 --- a/modules/home/opencode.nix +++ b/modules/home/opencode.nix @@ -41,9 +41,9 @@ in apiKey = config.sops.placeholder.langdock_api_key; }; models = { - "gpt-5.5" = { name = "GPT-5.5"; }; - "gpt-5.4" = { name = "GPT-5.4"; }; - "gpt-5.4-mini" = { name = "GPT-5.4 mini"; }; + "gpt-5.6-sol" = { name = "GPT-5.6 Sol"; }; + "gpt-5.6-terra" = { name = "GPT-5.6 Terra"; }; + "gpt-5.6-luna" = { name = "GPT-5.6 Luna"; }; }; }; anthropic = { @@ -52,13 +52,11 @@ in apiKey = config.sops.placeholder.langdock_api_key; }; models = { + "claude-opus-5-default" = { name = "Opus 5"; }; "claude-opus-4-8-default" = { name = "Opus 4.8"; }; - "claude-opus-4-7-default" = { name = "Opus 4.7"; }; - "claude-opus-4-6-default" = { name = "Opus 4.6"; }; - "claude-sonnet-4-6-default" = { name = "Sonnet 4.6"; }; - "claude-haiku-4-5-20251001" = { name = "Haiku 4.5"; }; + "claude-sonnet-5-default" = { name = "Sonnet 5"; }; }; - whitelist = ["claude-opus-4-8-default" "claude-opus-4-7-default" "claude-opus-4-6-default" "claude-sonnet-4-6-default" "claude-haiku-4-5-20251001"]; + whitelist = ["claude-opus-4-8-default" "claude-opus-5-default" "claude-sonnet-5-default"]; }; # ollama = { # npm = "@ai-sdk/openai-compatible"; diff --git a/modules/home/pi.nix b/modules/home/pi.nix index dc4ab6d..e6c7a51 100644 --- a/modules/home/pi.nix +++ b/modules/home/pi.nix @@ -1,18 +1,18 @@ { config, lib, ... }: let - cfg = config.dot.pi; + cfg = config.dot.llm.pi; piPath = "${config.dot.dotfilesPath}/modules/pi/agent"; piWorkMode = config.dot.llm.pi.workMode or false; in { - options.dot.pi = { - enable = lib.mkEnableOption "managed pi coding agent configuration" // { + options.dot.llm.pi = { + enableConfig = lib.mkEnableOption "managed pi coding agent configuration" // { default = true; }; }; - config = lib.mkIf cfg.enable { + config = lib.mkIf cfg.enableConfig { home.file = { ".pi/agent/settings.json".source = config.lib.file.mkOutOfStoreSymlink diff --git a/modules/pi/agent/extensions-work/langdock.ts b/modules/pi/agent/extensions-work/langdock.ts index 479f334..f108ab7 100644 --- a/modules/pi/agent/extensions-work/langdock.ts +++ b/modules/pi/agent/extensions-work/langdock.ts @@ -18,18 +18,8 @@ export default function (pi: ExtensionAPI) { compat: { forceAdaptiveThinking: true }, }, { - id: "claude-sonnet-5-default", - name: "Sonnet 5", - reasoning: true, - input: ["text", "image"], - contextWindow: 200000, - maxTokens: 16384, - cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }, - compat: { forceAdaptiveThinking: true }, - }, - { - id: "claude-opus-4-6-default", - name: "Opus 4.6", + id: "claude-opus-5-default", + name: "Opus 5", reasoning: true, input: ["text", "image"], contextWindow: 200000, @@ -38,13 +28,14 @@ export default function (pi: ExtensionAPI) { compat: { forceAdaptiveThinking: true }, }, { - id: "claude-haiku-4-5-20251001", - name: "Haiku 4.5", + id: "claude-sonnet-5-default", + name: "Sonnet 5", reasoning: true, input: ["text", "image"], contextWindow: 200000, maxTokens: 16384, cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }, + compat: { forceAdaptiveThinking: true }, }, ], }); diff --git a/modules/pi/agent/settings.work.json b/modules/pi/agent/settings.work.json index 17cae73..e246e0d 100644 --- a/modules/pi/agent/settings.work.json +++ b/modules/pi/agent/settings.work.json @@ -2,7 +2,7 @@ "lastChangelogVersion": "0.81.1", "theme": "light", "defaultProvider": "anthropic", - "defaultModel": "claude-opus-4-8-default", + "defaultModel": "claude-opus-5-default", "defaultThinkingLevel": "high", "hideThinkingBlock": false, "retry": {