64 lines
1.6 KiB
Nix
64 lines
1.6 KiB
Nix
{ inputs, config, ... }:
|
|
let
|
|
account = config.repo.account;
|
|
hmModules = config.flake.modules.homeManager;
|
|
in
|
|
{
|
|
flake.modules.nixos.ai = {
|
|
home-manager.sharedModules = [ hmModules.ai ];
|
|
|
|
nixpkgs.overlays = [ inputs.llm-agents.overlays.default ];
|
|
|
|
nix.settings = {
|
|
extra-substituters = [ "https://cache.numtide.com" ];
|
|
extra-trusted-public-keys = [
|
|
"niks3.numtide.com-1:DTx8wZduET09hRmMtKdQDxNNthLQETkc/yaX7M4qK0g="
|
|
];
|
|
};
|
|
};
|
|
|
|
flake.modules.homeManager.ai =
|
|
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
{
|
|
programs.mcp = {
|
|
enable = true;
|
|
servers.nixos = {
|
|
command = "${pkgs.uv}/bin/uvx";
|
|
args = [ "mcp-nixos" ];
|
|
};
|
|
};
|
|
|
|
programs.codex = {
|
|
enable = true;
|
|
package = pkgs.llm-agents.codex;
|
|
enableMcpIntegration = true;
|
|
settings = {
|
|
model = "gpt-5.5";
|
|
model_reasoning_effort = "high";
|
|
plan_mode_reasoning_effort = "high";
|
|
tui.status_line = [
|
|
"model-with-reasoning"
|
|
"current-dir"
|
|
"git-branch"
|
|
"context-remaining"
|
|
"five-hour-limit"
|
|
];
|
|
projects.${account.nixosConfigurationPath}.trust_level = "trusted";
|
|
projects."${config.home.homeDirectory}/work/repos/yookr-data-science".trust_level = "trusted";
|
|
sandbox_mode = "workspace-write";
|
|
personality = "pragmatic";
|
|
features.undo = true;
|
|
mcp_servers.nixos = config.programs.mcp.servers.nixos // {
|
|
enabled = true;
|
|
default_tools_approval_mode = "approve";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|