blog.dopana

Back

AIコーディングエージェントについて話すとき、ほとんどの人はNode.jsベースの重いツールを想像します。数百メガバイトのRAMを消費し、強力なマシンを必要とするものです。しかし、zerostackはこのゲームを完全に変えました。

zerostackが異なる理由#

zerostackはRustで書かれたミニマルなコーディングエージェントで、piとopencodeにインスパイアされています。最も注目すべき特徴?アプリケーション全体が平均で〜16MB RAM、ピーク時で24MBしか消費しません。JavaScriptベースのコーディングエージェントが300-700MB RAMを消費する可能性があるのと比較すると、これは大幅な改善です。

[!TIP] 印象的なパフォーマンス

  • バイナリサイズ: 26MB
  • RAM: 〜16MB(平均)、〜24MB(ピーク)
  • CPU: アイドル時0.0%、アクティブ時〜1.5%
  • コード行数: 〜30k LoC

主な機能#

マルチプロバイダーサポート#

zerostackは複数のAIプロバイダーをサポートしています:

  • OpenRouter(デフォルト)
  • OpenAI
  • Anthropic
  • Gemini
  • Ollama
  • カスタムプロバイダー

--provider--modelフラグを使用して、プロバイダーを簡単に切り替えることができます。

強力なパーミッションシステム#

最も重要な機能の1つは、5つのモードを持つパーミッションシステムです:

  • restrictive: すべての操作で確認
  • read: 読み取りのみ、書き込みなし
  • standard: ほとんどの操作を許可
  • permissive: より多くの操作を許可
  • dangerous: 制限なし

ツールごとのパターン、セッション許可リスト、設定可能なポリシーをサポートします。

スマートプロンプトシステム#

複雑なスキルを管理する代わりに、zerostackは実行時に切り替え可能な14の組み込みプロンプトを提供します:

プロンプト説明
codeデフォルト - TDDワークフローでフルツールアクセス
plan計画のみ - コードを書かない
review正確性、設計、テストについてコードをレビュー
debug修正を提案する前に根本原因を見つける
ask読み取りのみ - 書き込みやbashなし
brainstorm設計のみ - コードなし
frontend-design本番グレードのUI設計
review-securityセキュリティ脆弱性を見つける
simplify明確さのためにコードを最適化
write-promptエージェントプロンプトを作成・最適化
refactorメンテナビリティのためにコードを再構築
autoconfigインタラクティブ設定
orchestratorツール使用と並列サブプロセスを組み合わせる
write-text散文を書く(ドキュメント、投稿、メール)

セッション管理#

zerostackは以下を可能にします:

  • セッションの保存/ロード/再開
  • コンテキストウィンドウ内に留まるための自動圧縮
  • ブランチごとのタスクワークフローのためのGit worktrees統合

MCPサポート#

Model Context Protocol(MCP)をサポートして外部ツールサーバーに接続し、エージェントの機能を拡張します。

インストール#

スクリプト(推奨)#

curl -fsSL https://raw.githubusercontent.com/gi-dellav/zerostack/main/install.sh | bash
bash

Cargo#

cargo install zerostack
bash

Homebrew#

brew tap gi-dellav/tap
brew trust gi-dellav/tap
brew install zerostack
bash

Nix#

nix-run https://github.com/gi-dellav/zerostack/archive/refs/heads/main.tar.gz
bash

クイックスタート#

# APIキーを設定(OpenRouterがデフォルト)
export OPENROUTER_API_KEY="[api_key]"

# インタラクティブセッション
zerostack

# ワンショットモード
zerostack -p "このプロジェクトを説明してください"

# 最後のセッションを続行
zerostack -c

# 明示的なプロバイダー/モデル
zerostack --provider openrouter --model deepseek/deepseek-v4-flash
bash

他のAIコーディングエージェントとの比較#

機能zerostackJavaScriptエージェント
RAM(平均)〜16MB〜300MB
RAM(ピーク)〜24MB〜700MB
CPU(アイドル)0.0%〜2%
CPU(アクティブ)〜1.5%〜20%
バイナリサイズ26MBN/A(Node.jsランタイム)

高度な機能(ゲート付き)#

zerostackは、コンパイル時機能を必要とする高度な機能も提供します:

  • ACPサポート: Zedなどのエディタが接続するためのAgent Communication Protocol
  • 永続メモリ: セッション間のプレーンマークダウンメモリ
  • ライフサイクルフック: ツール呼び出し、プロンプト、セッションイベントの監視/ゲート
  • アドバイザー: 戦略的ガイダンスのための第2モデル
  • マルチモーダル入力: 画像とPDFの添付
  • サブエージェント: 並列コードベース探索
  • ARCHITECTURE.md: 同じコードベース上のエージェントのための共有知識
  • プロンプトチェイン: ブレインストーム → 計画 → コード → レビューワークフロー
  • ステータスシグナル: Unixソケット経由でイベントを送信

いつzerostackを使うべきですか?#

zerostackは以下の場合に適しています:

  • 軽量で効率的なコーディングエージェントが必要な場合
  • リソースが限られたマシンで作業する場合
  • 複数の並列セッションを実行する必要がある場合
  • 強力なパーミッションシステムでセキュリティを気にする場合
  • Unix哲学 - コンポーザブルツールを好む場合
  • コマンドラインで完全な制御が必要な場合

結論#

zerostackは、AIコーディングエージェントの新しい方向性を表しています - すべてを行うことに焦点を当てるのではなく、パフォーマンス、リソース効率、Unix哲学に焦点を当てています。極めて小さいフットプリントと完全な機能セットで、システムリソースを犠牲にすることなくAIアシスタンスを望む開発者にとって優れた選択肢です。

参考文献#