Files
nixos-config/home/features/coding/opencode.nix

111 lines
3.1 KiB
Nix
Raw Normal View History

2026-03-31 13:30:47 +02:00
{inputs, ...}: {
2026-04-13 16:44:18 +02:00
coding.agents.opencode = {
2026-03-31 13:30:47 +02:00
enable = true;
agentsInput = inputs.agents;
2026-03-28 10:17:29 +01:00
externalSkills = [
{
src = inputs.skills-anthropic;
2026-03-31 13:30:47 +02:00
selectSkills = ["pdf" "docx" "frontend-design"];
2026-03-28 10:17:29 +01:00
}
2026-03-31 13:30:47 +02:00
{src = inputs.skills-vercel;}
{src = inputs.skills-basecamp;}
{src = inputs.skills-kestra;}
2026-03-28 10:17:29 +01:00
];
2026-04-13 16:44:18 +02:00
};
coding.opencode = {
enable = true;
2026-01-06 08:54:17 +01:00
2026-03-31 13:30:47 +02:00
# AZ-Gruppe LiteLLM endpoint + available models
extraSettings = {
provider = {
2026-03-03 20:07:25 +01:00
litellm = {
npm = "@ai-sdk/openai-compatible";
name = "LiteLLM (AZ-Gruppe)";
options.baseURL = "https://llm.az-gruppe.com/v1";
models = {
2026-03-03 20:07:25 +01:00
"gpt-5.2" = {
name = "GPT-5.2";
limit = {
2026-03-31 13:30:47 +02:00
context = 400000;
output = 128000;
};
2026-03-31 13:30:47 +02:00
};
"gpt-5.3-codex" = {
name = "GPT-5.3 Codex";
limit = {
context = 400000;
output = 128000;
};
};
"claude-haiku-4-5" = {
name = "Claude Haiku 4.5";
options = {
thinking = {
type = "enabled";
budget_tokens = 16000;
};
};
limit = {
context = 200000;
output = 64000;
};
};
2026-03-03 20:07:25 +01:00
"claude-sonnet-4-6" = {
name = "Claude Sonnet 4.6";
2026-03-31 13:30:47 +02:00
options = {
thinking = {
type = "enabled";
budget_tokens = 16000;
};
};
limit = {
context = 200000;
2026-03-31 13:30:47 +02:00
output = 64000;
};
};
2026-03-03 20:07:25 +01:00
"claude-opus-4-6" = {
name = "Claude Opus 4.6";
2026-03-31 13:30:47 +02:00
options = {
thinking = {
type = "enabled";
budget_tokens = 16000;
};
};
limit = {
context = 200000;
2026-03-31 13:30:47 +02:00
output = 128000;
};
};
};
};
};
2026-01-04 03:49:13 +01:00
};
2026-03-31 13:30:47 +02:00
ohMyOpencodeSettings = {
agents = {
sisyphus.model = "litellm/claude-opus-4-6";
oracle.model = "litellm/claude-sonnet-4-6";
librarian.model = "litellm/claude-sonnet-4-6";
explore.model = "litellm/claude-haiku-4-5";
multimodal-looker.model = "litellm/gpt-5.3-codex";
prometheus.model = "litellm/claude-opus-4-6";
metis.model = "litellm/claude-opus-4-6";
momus.model = "litellm/claude-opus-4-6";
atlas.model = "litellm/claude-sonnet-4-6";
};
categories = {
visual-engineering.model = "zai-coding-plan/glm-5.1";
ultrabrain.model = "litellm/claude-opus-4-6";
deep.model = "litellm/claude-sonnet-4-6";
artistry.model = "zai-coding-plan/glm-5.1";
quick.model = "litellm/claude-haiku-4-5";
unspecified-low.model = "litellm/claude-sonnet-4-6";
unspecified-high.model = "litellm/claude-opus-4-6";
writing.model = "zai-coding-plan/glm-5.1";
};
};
2026-01-06 08:54:17 +01:00
};
2026-01-04 03:49:13 +01:00
}