mcpField
Z
zero

zero

github.com/vercel-labs開発5.4k704 回インストール6 週間前に更新
リポジトリ

zero について

Zero 向けの導入スキルです。Zero はエージェントを中心に設計されたプログラミング言語で、`.0` ファイルはグラフ形式のプログラムを投影したものです。コーディングエージェントに、コンパイラのバージョンに合う説明を取得し、`zero patch` で編集するよう案内します。

主な機能

  1. 01バージョンに合ったスキルの取得
  2. 02グラフ形式コードの検索と表示
  3. 03`zero patch` によるコード編集
  4. 04プログラムのチェック、テスト、実行
  5. 05標準ライブラリリファレンスの参照

活用シーン

  1. 01Zero プロジェクトの編集に向けたエージェントの準備
  2. 02コンパイラに合った説明を使った Zero コードの確認や修復

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/vercel-labs/zerolang --skill zero

インストール後、Claude Code で/zeroを入力して読み込まれたか確認します。

詳細

Zero

Zero はエージェントファーストのプログラミング言語です。プログラムは zero.graph であり、.0 ファイルはその投影です。編集には zero patch を使用します。

このスキルをエージェントのスキルマネージャーに一度だけインストールしてください。薄く保ちます。Zero 自身の CLI が、インストールされている各コンパイラーのバージョンに一致するワークフローを提供します。

PATH 上にある、または ~/.zero/bin/zero にある zero があれば、それを使用してください。環境では特定のコンパイラーが固定されていることが多く、それを気付かれないまま置き換えると、バージョンに一致するストアやワークフローが壊れます。zero が見つからない場合にのみインストールしてください。

command -v zero >/dev/null 2>&1 || { curl -fsSL https://zerolang.ai/install.sh | bash; }
export PATH="$PATH:$HOME/.zero/bin"
zero --version

バージョンに一致するスキル

このファイルは検出用のスタブにすぎません。Zero の完全なワークフローやコマンドリファレンスとして扱わないでください。

Zero コードの編集、確認、テスト、修復を行う前に、インストール済みのコンパイラーに、その正確なバイナリーに一致するスキルの内容を問い合わせてください。

zero skills
zero skills get zero
zero skills get zero --full
zero skills get stdlib --topic std.time   # one section instead of the whole topic

ユーザーが複数の Zero バイナリーを使用している場合は、プロジェクトの実行に使うものと同じバイナリーを使用してください。

/path/to/zero skills
/path/to/zero skills get zero --full

zero skills get <name> を使用して、タスクに必要なものだけを読み込みます。各トピックはセッションごとに最大 1 回だけ取得してください。特定のコンパイラーのバイナリーに対して内容は固定されているため、読み込み済みのトピックを再取得しても同じテキストが返されます。トピックと提供されるおおよそのサイズは次のとおりです。

  • zero(約 2 KB):この検出用スタブ
  • agent(約 4 KB):読み取り・編集・検証のループ、zero query の使用方法、編集対象、検証
  • language(約 6 KB):構文、型、エフェクト、制御フロー、ジェネリクス
  • graph(約 9 KB):zero.graph ストア、クエリ/ビュー、パッチ操作、インポート/エクスポート/マージ
  • diagnostics(約 4 KB):診断情報の読み取り、zero explain、型付き修正プラン
  • packages(約 5 KB):マニフェスト、パッケージのレイアウト、作成と修復
  • builds(約 5 KB):ビルド/実行、ターゲット、プロファイル、生成されるアーティファクト
  • testing(約 3 KB):テストブロック、フィルター、ランタイムチェック
  • stdlib(約 39 KB):既成のバリデーターを含む、すべてのシグネチャのリファレンス:std.time(RFC 3339 と正確なうるう秒のルールを含む)、std.inet(IPv4/IPv6/ホスト名)、std.regex(ECMA サブセット)、std.unicode(厳密な UTF-8)。解析や検証のロジックを手書きする前に、ここを確認してください。zero skills get stdlib --topic <prefix> を使うと、1 つのモジュールのセクション(約 1 KB)を取得できます。例:--topic std.time。

解析や検証を手書きする前に、標準ライブラリのカタログを確認してください。zero skills get stdlib --topic <module> で 1 つのセクションが提供されます(std.time はうるう秒を含む RFC 3339 を扱います)。

グラフを通じて編集してください。zero patch は、関数内のテキストをピンポイントで編集する操作(--replace-in-fn <fn> --old <text> --new <text>、Edit のセマンティクス)から、ヘルパー関数全体の作成(upsertFunction ... end)、関数本体全体の置換(heredoc を使った --replace-fn <fn> --body-file -)まで、すべてをカバーします。パッチ操作で表現できない変更に限り、.0 のテキストを直接編集する方法を最後の手段として使ってください。パッケージコマンドは編集済みソースから zero.graph を更新しますが、patch を使えばループを高速化でき、ノードの同一性も保持できます。ファイル全体ではなく、zero view --fn <name> を使って関数を 1 つ読み取ってください。対話型のエージェント作業では簡潔なテキスト出力を優先し、自動化、正確なスパン、コントラクト、機械可読な診断情報が必要な場合に限り --json を使用してください。

一般的なエントリーポイント

zero query [graph-or-package]
zero patch [graph-or-package] --op '<operation>'
zero check [graph-or-package]
zero test [graph-or-package]
zero run [graph-or-package] -- <args>
zero diff [graph-or-package]
zero explain <diagnostic-code>
zero fix --plan [graph-or-package]

Zero リポジトリーのチェックアウト内では、グローバルにインストールされたコンパイラーではなく、そのチェックアウトに関するタスクの場合は bin/zero を優先してください。

コメント