コマンドラインのためのAnyLUT。
anylutは、元のファイルを変えずに写真を編集します。RAW、JPEG、HEICを読み込み、小さな劣化のないレシピファイルを適用して、プレビューまたは最終的なJPEG/PNGを出力します。ローカルのエージェントやスクリプト向けに作られており、すべてお使いのMac上で動作します。
Apple Silicon · macOS 14以降 · 署名・公証済み
Homebrewならコマンドひとつ。
macOS 14(Sonoma)以降を搭載したApple Silicon Macが必要です。更新はbrew upgrade anylutで行います。
brew install hisea/anylut/anylutHomebrewは、公式ではないtapを信頼するよう求めます。上のコマンドはformulaの完全名を指定しているため、信頼するのはそのformulaだけです。短い名前でインストールするには、先に信頼を設定してください。
brew tap hisea/anylut
brew trust --formula hisea/anylut/anylut
brew install anylutエージェントに使い方を教える。
スキルanylutは、エージェントにanylut guideを実行するよう指示するので、手順は常にインストール済みのバージョンと一致します。先にツールをインストールしてください。
| エージェント | インストール |
|---|---|
| Claude Code | claude plugin marketplace add hisea/anylut-cliclaude plugin install anylut@anylut |
| Codex | codex plugin marketplace add hisea/anylut-clicodex plugin add anylut@anylut |
| pi | pi install git:github.com/hisea/anylut-cli |
| omp | omp plugin marketplace add hisea/anylut-cliomp plugin install anylut@anylut |
| opencode | スキルのフォルダをコピーします: |
SKILL.mdを読めるほかのエージェントは、リポジトリのskills/anylut/フォルダを使えます。
MCPサーバーとして動かすこともできます。
anylut mcpは、同じコマンドをstdio経由のツールとして提供します。プレビューは画像として返るので、モデルはすべての編集を目で確認できます。ツールにはファイルの絶対パスが必要です。Dockから起動したアプリはシェルのPATHを引き継がないため、ツールのフルパス(/opt/homebrew/bin/anylut)を指定してください。
| クライアント | 設定 |
|---|---|
| Claude Desktop |
|
| Claude Code | claude mcp add anylut -- anylut mcp |
| Cherry Studio | 設定 › MCPサーバー › 追加。タイプはSTDIO、コマンドは/opt/homebrew/bin/anylut、引数はmcp。 |
| Codex (GPT) | codex mcp add anylut -- anylut mcp |
ChatGPT(Webとデスクトップ)は、HTTPS経由のリモートMCPサーバーにしか接続できません。ローカルのプログラムを起動できないため、GPTモデルにはCodexを使ってください。
写真からファイルまで、6つのコマンド。
パッチは小さなJSONファイルです。--patch-file -で標準入力から読み込めます。setは絶対値、addは現在の値からの相対値を指定します。範囲外の値はエラーになり、ツールが丸めることはありません。
anylut capabilities --json # 書き込めるすべてのパラメータと範囲
anylut inspect IMG.ARW --json
anylut recipe new --source IMG.ARW --output edit.anylut.json
anylut patch edit.anylut.json --patch-file adjust.json --output edit-v1.anylut.json --json
anylut render IMG.ARW --recipe edit-v1.anylut.json --preview --output preview.jpg --json
anylut render IMG.ARW --recipe edit-v1.anylut.json --full-resolution --output final.jpg --json{ "patchVersion": 1, "operations": [
{ "op": "set", "path": "light.exposure", "value": 0.35 },
{ "op": "add", "path": "color.temperature", "value": 6 },
{ "op": "set", "path": "hsl.orange.saturation", "value": -5 } ] }出力を読むツールのために。
- JSON出力
--jsonを付けると、すべてのコマンドが1行に1つのJSONオブジェクトを出力します。エラーも安定したcodeを持つ1つの{"ok":false,"error":{…}}オブジェクトです。- 終了コード
0成功 ·2使い方 ·3非対応ファイル ·4検証 ·5デコード ·6レンダリング ·7書き込み。- 安全な書き込み
- 出力ファイルはアトミックに書き込まれます。既存のファイルは、
--overwriteを渡さない限り置き換えられません。 - 厳格な入力
- 未知のキー、欠けたキー、重複したキー、範囲外の値は、修復されずに拒否されます。
- ローカルのみ
- レンダリングはお使いのMac上で実行されます。何もアップロードされません。
- 制限
- 切り抜き、回転、反転、傾き補正を含むレシピは、それを無視して描画されるのではなく、拒否されます。RAWの対応範囲はmacOSのRAWデコーダに従います。