feat(nix): install LLM agent CLIs via numtide/llm-agents.nix flake input#187
Draft
fredrikaverpil wants to merge 1 commit into
Draft
feat(nix): install LLM agent CLIs via numtide/llm-agents.nix flake input#187fredrikaverpil wants to merge 1 commit into
fredrikaverpil wants to merge 1 commit into
Conversation
669ffdf to
abfa6bb
Compare
Replace the bun-managed installs of @google/gemini-cli, @openai/codex and @earendil-works/pi-coding-agent with Nix packages from the numtide/llm-agents.nix flake input (updated daily upstream, binaries served from cache.numtide.com). - flake.nix: add llm-agents input (no nixpkgs follows, per upstream guidance to keep binary cache hits) and the numtide cache/key - common.nix: add codex, gemini-cli and pi to home.packages; drop the corresponding npm packages from packageTools.npmPackages - rebuild.sh: include llm-agents in the --update-unstable input set - CLAUDE.md: document the new mechanism The bun/uv packageTools mechanism stays for non-agent tools such as @googleworkspace/cli. Note: the agents are now installed on all platforms (previously macOS-only due to bun dynamic linking issues on NixOS).
abfa6bb to
41f4203
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Replaces the bun-managed installs of the LLM agent CLIs with Nix packages from numtide/llm-agents.nix (formerly
nix-ai-tools; ~1.6k stars, 100+ agents packaged, auto-updated daily, prebuilt binaries viacache.numtide.com). Alternatives considered — the forks (e.g. Qumulo/llm-agents) and single-tool flakes (e.g. sadjow/claude-code-nix) are all smaller; this is the de-facto standard flake for AI coding agents.@openai/codexcodex@google/gemini-cligemini-cli@earendil-works/pi-coding-agentpiChanges
llm-agentsinput, pluscache.numtide.comsubstituter + trusted key innixConfig. Deliberately nonixpkgs.follows— upstream builds/caches against its own pinned nixpkgs-unstable, and afollowswould forfeit binary cache hits (same reasoning as thenixos-raspberrypipin).codex,gemini-cliandpiadded tohome.packages; the three npm packages removed frompackageTools.npmPackages.llm-agentsadded to the--update-unstableinput set (matches its daily release cadence).The bun/uv
packageToolsmechanism is untouched and still used for non-agent tools (@googleworkspace/clion zap/plumbus,sqlit-tuivia uv).Behavior change
The agents were previously macOS-only (bun dynamic-linking issues on NixOS). As Nix packages they now install on all hosts, including
rpi5-homelab. If you don't want them on the Pi, move the three entries fromcommon.nixtonix/shared/home/darwin.nix'shome.packages.Manual follow-ups after merge
flake.lockhas nollm-agentsentry yet. Runnix flake lockand commit (or let the first rebuild write it). CI'snix flake checklocks it on the fly, so the PR is still validated.bun update -gkeeps upgrading them alongside the Nix ones:trusted-users(same note as the existing cachix one at the top of flake.nix).