nix-ai-tools  by numtide

Nix packaging for AI coding agents and development tools

Created 4 months ago
284 stars

Top 92.2% on SourcePulse

GitHubView on GitHub
Project Summary

This repository explores the integration of Nix with AI coding agents, serving as a testbed for packaging, sandboxing, and enhancing AI-powered development tools. It benefits technically savvy users by providing a unified, reproducible, and up-to-date environment for managing a diverse array of AI coding assistants.

How It Works

The project leverages Nix flakes to declaratively package and manage various AI coding agents. GitHub Actions automate daily updates for all packages and flake inputs, ensuring currency. Core experiments focus on Nix's capabilities for sandboxed execution of AI agents and provider abstraction, aiming to streamline AI toolchain management.

Quick Start & Requirements

  • Primary Install/Run: Add the flake to your Nix system configuration or use nix run github:numtide/nix-ai-tools#<tool-name>.
  • Prerequisites: Nix package manager.
  • Try Without Installing: Execute nix run github:numtide/nix-ai-tools#<tool-name> -- --help for specific tools.
  • Binary Cache: Pre-built binaries are available via https://numtide.cachix.org, automatically configured when using the flake directly.
  • Docs: Links to specific tool documentation are provided within the README.

Highlighted Details

  • Comprehensive packaging of diverse AI coding agents, including Sourcegraph's Amp (research preview), Anthropic's Claude Code, Google's Gemini CLI, GitHub Copilot CLI, OpenAI's Codex, and local agents like Goose CLI and Nanocoder.
  • Experimental features include sandboxed execution (claudebox) and provider abstraction (claude-code-router), demonstrating Nix's potential for managing complex AI toolchains.
  • Daily automated updates via GitHub Actions ensure packages and dependencies remain current.

Maintenance & Community

  • Packages are updated daily via automated GitHub Actions.
  • Contributions are welcomed via pull requests.

Licensing & Compatibility

  • The Nix packaging code is licensed under MIT.
  • Individual tools carry their respective licenses, including MIT, Apache-2.0, and several marked as 'unfree' (e.g., amp, claude-code, claude-desktop, copilot-cli, cursor-agent, droid, coderabbit-cli), which may restrict commercial use.
  • Platform Support: x86_64-linux, aarch64-linux, x86_64-darwin, aarch64-darwin.

Limitations & Caveats

  • Several tools are licensed as 'unfree', posing potential adoption blockers for commercial applications.
  • amp is explicitly noted as being in "research preview."
  • Some packages (darwinOpenptyHook, claudebox) have unspecified or "unknown" source/license details requiring further investigation.
Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
362
Issues (30d)
14
Star History
73 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.