flox

Create reproducible Nix development environments from manifest.toml with FloxHub sharing.

60|13|Updated Dec 22, 2025
One-click install
npx skills add https://github.com/plurigrid/asi --skill flox
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: flox
Source: https://github.com/plurigrid/asi/tree/main/skills/flox
Command: npx skills add https://github.com/plurigrid/asi --skill flox

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill enables reproducible development environments powered by Nix, enabling consistent builds and easy sharing.

Core Features & Use Cases

  • Environment Definition: Use manifest.toml to declare packages and tools.
  • Activation & Isolation: Activate environment per-project or remote.
  • Sharing & Collaboration: Push to FloxHub and pull remote envs.

Quick Start

Run flox init to create a new environment, then flox activate to enter it, and flox install or flox pull as needed.

Frequently Asked Questions about flox

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create reproducible development environments with Nix?

Reproducible development environments with Nix are created by defining packages and tools in a manifest.toml file, then activating the environment locally. Run flox init to scaffold a new environment, flox install to add packages, and flox activate to enter the isolated workspace with all declared dependencies locked and consistent.

Can I share development environments across my team?

Yes, flox enables sharing development environments via FloxHub. Push your configured environment to FloxHub, then teammates pull the remote environment using flox pull. This ensures everyone works with identical package versions and configurations across macOS and Linux hosts.

What's the best way to manage activation hooks and service orchestration in development environments?

Flox supports activation hooks and service orchestration through manifest.toml configuration. Define lifecycle commands for initialization and activation, specify environment profiles, and orchestrate services as part of your environment definition. This automates setup tasks and service management when entering the environment.

Do I need to understand Nix to use flox for environment management?

No, flox abstracts Nix complexity through manifest.toml declarations and straightforward CLI commands. You declare packages and tools in human-readable manifest format, then use flox init, install, activate, and pull commands without needing deep Nix knowledge.

How does environment containerization work across different operating systems?

Flox ensures reproducible environments across macOS and Linux by leveraging Nix's declarative approach. Package definitions in manifest.toml are resolved identically on both platforms, and containerization support enables consistent behavior regardless of the host OS or system configuration.

Can flox handle environment variables and profiles for different project stages?

Yes, flox supports environment variables and multiple environment profiles within a single manifest.toml. Define variables for configuration and create distinct profiles for different project stages or contexts, enabling flexible environment switching without managing separate manifests.