コンテンツにスキップ

chefe

すべてのパッケージマネージャーを一つのマニフェストで。

Conda、Python、Node.js、Rust、そしてプロジェクトが宣言する toolchain。実際のプロジェクトでは複数を同時に必要とし、それらは pixi.tomlpackage.json、言語ごとの manifest に散在します。chefe はヘッドシェフです。一つの chefe.toml レシピを書けば、各ネイティブマニフェストを .chefe/ 配下にコンパイルし、本物のツールを実行し、単一の環境として盛り付けます。ソルバーを再実装することは決してありません。コックたちを動かすのです。

  • 一つのレシピ

    すべてのlanguage/toolchainを単一の chefe.toml に。もう四つのマニフェストをやりくりする必要はありません。

  • ネイティブな出力

    本物の pixi.tomlpackage.json などにコンパイルします。解決は実際のツールが行います。

  • コンポーザブル

    プラットフォームオーバーレイと名前付き環境は、pixi の feature のように積み重なります。

  • 自己完結

    環境全体が .chefe/ の中に存在するため、一つのコマンドで消去できます。

インストール

pip install chefe      # or: pipx install chefe

chefe は初回実行時に、コンパイル先のエンジンである pixi をインストールします。そのため pip install 一回だけで十分です。

chefe.toml
[workspace]
name = "my-project"

[deps]                 # conda, the default resolver
python  = ">=3.12"
nodejs  = ">=25"
ripgrep = "*"

[python.deps]
torch = ">=2.6"

[nodejs.dev.deps]
prettier = ">=3"

chefe はまだ初期段階です (0.0.x)

マニフェストの形式やコマンドはまだ変更される可能性があります。

次へ

由来

ヘッドシェフはすべての料理を一人で作ることはありません。レシピを書いてラインを統率し、各コックはそれぞれの持ち場で働きます。散在するパッケージマネージャーはまさにそのラインであり、chefe は一つのレシピからそれらを指揮します。🧑‍🍳