mcpField
B
brevi

brevi

ローカル
brevi-lang.org開発ツール0今日更新

brevi について

Breviは、コーディングエージェントが書いた通常のPythonをネイティブプログラムにコンパイルし、チェック、実行、テスト、修正のツールを提供します。MCPサーバーはCPythonとの比較検証や反復編集に対応し、サンドボックスとリソース制限で実行を制御します。

主な機能

  1. 01Pythonをネイティブプログラムにコンパイル
  2. 02コードのチェック、実行、テスト、検証
  3. 03関数、クラス、行範囲単位の修正
  4. 04ネイティブ出力とCPythonの比較
  5. 05設定可能な制限付きサンドボックス実行

活用シーン

  1. 01エージェントが書いたPythonをネイティブ実行
  2. 02ビルドエラーの検出と機械可読な修正案の取得
  3. 03エラー後に変更箇所だけを修正
  4. 04テスト入力でネイティブ結果をCPythonと照合

MCP 対応

`brevi mcp`サーバーはstdioまたはStreamable HTTP経由で、チェック、実行、テスト、検証、修正、編集、表示、ガイドのツールを提供します。エージェントは送信したコードを保持して部分修正でき、ネイティブ実行結果をCPythonと比較できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"ets-public-brevi": {
"command": "npx",
"args": [
"-y",
"brevi"
]
}
}
}
起動コマンドnpx -y brevi

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypibrevi0.27.1
npmbrevi0.27.1

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Brevi のロゴ

Brevi

AI が書いた Python 向けの、高速で安全なターゲットです。 Brevi は、AI コーディングエージェント向けに構築されたコンパイラーです。エージェントは得意とする従来どおりの素の Python を書き、Brevi はそれを Rust を通じてネイティブバイナリーにビルドします。このバイナリーは、デフォルトのビルド設定で実施した12個の計算ベンチマークにおいて、CPython より1.6倍から37.9倍高速(中央値は9.3倍)で動作し、CPython とまったく同じ出力を目指します(現時点で CPython 3.13 自身のテストスイートの採点対象テストの80%が一致し、3%はビルドできるものの結果が異なります。また、最もよく使われる標準ライブラリモジュールのテストの45%が一致します)。ビルドできないものについては、エージェントが対応できる短い JSON 行を1行だけ返します。モデルがライフタイム、借用、セミコロンを書く必要はなく、始めるのにガイドも必要ありません。

ドキュメント:brevi-lang.org/docs · リリース:GitHub · 変更履歴:CHANGELOG.md

パブリックプレビュー。 Brevi は現在動作し、変更のたびに CPython と照らし合わせてテストされていますが、まだ新しいプロジェクトです。粗削りな部分があることを想定してください。また、CLI と Brevi 独自の構文はリリースごとに変わる可能性があります。まだ python3 の完全な代替としてそのまま使えるものではありません。CPython 自身のテストでも、ビルドできたプログラムの一部は異なる結果を返します(ステータスを参照)。ビルドできないファイルでは brevi run が警告なしに python3 にフォールバックし(--native で無効化できます)、サンドボックスはポリシーレイヤーであり、隔離境界ではありません。バグ報告を歓迎します(CONTRIBUTING.md)。

インストール

Linux と macOS:

curl -fsSL https://raw.githubusercontent.com/ets-public/brevi/main/install.sh | sh

このスクリプトは、Rust ツールチェーンが見つからない場合にインストールします(Brevi は rustc を通じてコンパイルします)。その後、最新リリースからお使いのマシン向けのビルド済み brevi をダウンロードし、リリースの SHA256SUMS と照合して検証したうえで ~/.cargo/bin にインストールします。適合するビルド済みバイナリーがない場合は、cargo install でビルドします。

Windows:rustup で Rust をインストールし、最新リリースから brevi-x86_64-pc-windows-msvc.zip を解凍して、brevi.exe を PATH に追加してください。v0.27.0 以降は、ライブラリをインポートする Python ファイルもビルドできます。ライブラリ呼び出しはブリッジ経由で CPython 上で実行されます(PATH 上の python に DLL が必要です)。

パッケージマネージャーを使う場合(Rust も必要です。rustup からインストールしてください):

pip install brevi          # or: uvx brevi mcp
npm install -g brevi       # or: npx brevi mcp

cargo install brevi は v0.26.0 から利用できます。Docker、ソースからのビルド、リリースアーカイブについては、インストールをご覧ください。

クイックスタート

$ printf 'print(sum(i * i for i in range(10)))\n' > main.py
$ brevi run main.py                     # build natively (cached), then run
285
$ brevi check main.py                   # build without running: errors only
$ brevi build main.py -o app --release  # an optimised binary to keep or ship
$ brevi verify main.py --input tests/   # run it and python3 on each input: a certificate if they agree

確実に誤りと判断できるものは、実行前に修正方法とともに1行で報告されます。

$ brevi check broken.py
{"line":8,"msg":"name 'totl' is not defined","fix":"did you mean total?"}

Python 自身が実行時に初めて検出する誤りは、CPython と同様に、その行の実行時に例外を発生させます。Brevi がまだファイルをネイティブにビルドできない場合、または確実な誤りがある場合、brevi run は python3 で実行し、停止した行と関数を示す JSON 行を1行出力します。brevi build、brevi check、brevi run --native はフォールバックしません。また、次のリリースから利用できる --strict を指定すると、動的なフォールバックも拒否します。これは、型付き高速パスを必須とする CI や本番ジョブ向けです。ファイルからは、兄弟モジュール、Brevi 自身がネイティブにビルドする標準ライブラリ(ネイティブ実行されるもの)、インストール済みパッケージをインポートできます。numpy、requests、httpx、pydantic、anthropic および openai の SDK、mcp、jinja2、polars、sqlite3、duckdb、tiktoken などは、Brevi 独自のネイティブコピーでビルドされ(v0.26.0 以降)、その他(pandas、yaml など)はネイティブプログラム内の CPython で実行されます。brevi build x.py --standalone を使うと、CPython とこれらのパッケージをバイナリーにまとめられます(Linux)。詳しくはBrevi の使い方をご覧ください。

エージェント向け

  • MCP サーバー: brevi mcp は、check、run、test、verify、patch、edit、show、guide を stdio 経由、または Streamable HTTP 経由で提供します。Streamable HTTP を使う場合は brevi mcp --http [HOST:]PORT を指定します(127.0.0.1 以外ではベアラートークンが必要です)。コマンドを brevi、引数を mcp として追加してください(Claude Code:claude mcp add brevi -- brevi mcp)。エージェントは通常の Python を code として一度送信します。サーバーがコードを保持し、patch(名前で指定した def とクラス全体)または edit(行の範囲)を使うと、指定された箇所だけを変更して再確認するため、再試行時にかかるコストは変更行分だけです。cases を指定した run は一度ビルドし、各ケースについて ok または最初に異なった行を出力します。verify はネイティブビルドと CPython を同じ入力で実行し、結果が一致すると証明書を返します。ツールはデフォルトでサンドボックス化されます。v0.27.0 以降、通常の brevi mcp は、サンドボックスを無効にしたり、権限を付与したりする呼び出しを拒否します(--allow、--allow-net などの権限付与フラグで呼び出しが要求できる内容を設定し、--trust-calls で従来の動作に戻せます)。CPython を実行する verify には sandbox: false が必要なため、--trust-calls も必要です。Claude Desktop の設定(brevi のフルパスが必要です)、時間とメモリの制限、トラブルシューティングについては、AI エージェント向けをご覧ください。
  • Python SDK(v0.27.0 以降):pip install brevi で import brevi も使えるようになります。brevi.run(code, stdin=..., limits=..., allow_read=[...]) は、コードが許可した内容だけを使ってプログラムをサンドボックス内でビルドして実行し、stdout、stderr、exit_code、path を返します。brevi.verify(code, inputs=[...]) は証明書を返します。brevi.TOOL と brevi.handle(tool_input) は、モデル向けの run_python ツールとその応答です。単一の brevi mcp プロセスと通信するため、ビルドキャッシュはウォーム状態に保たれます。npm パッケージでも Node 向けに同じ呼び出しを使えます(import { run } from "brevi")。brevi-python は python3 のドロップイン置き換えです。Brevi がプログラムをビルドする場合はネイティブで実行し、それ以外では CPython を実行して CPython の出力を返します。packaging/pypi/README.md
  • サンドボックスイメージ(v0.27.0 以降):ghcr.io/ets-public/brevi-sandbox:latest には Brevi、Rust ツールチェーン、python3、SDK、ウォーム状態のビルドキャッシュが含まれています。:python3 には python3 として使える brevi-python が含まれています。templates/README.md
  • GitHub Action(v0.27.0 以降):uses: ets-public/brevi/[email protected] は、ビルドキャッシュを実行間で保持しながら、Brevi とそのツールチェーンをランナーにセットアップします。setup/README.md
  • Dev container 機能(v0.27.0 以降):devcontainer.json に "features": {"ghcr.io/ets-public/features/brevi:1": {}} を指定します。devcontainer/README.md
  • スキルとプラグイン: skills/brevi/SKILL.md は Agent Skills パッケージです(セットアップ後、通常の Python を書き、エラーで指定された行だけを修正します)。Claude Code では、/plugin marketplace add ets-public/brevi と /plugin install brevi@brevi を実行すると、スキルと MCP サーバーをまとめて追加できます。
  • llms.txt: brevi-lang.org/llms.txt、llms-full.txt、およびすべてのドキュメントページは Markdown 形式です(URL の末尾に .md を追加してください)。
  • skills/rules/ には Cursor、Copilot、Windsurf、Cline 向けのエディタールールがあり、integrations/ には LangChain、OpenAI Agents SDK、CrewAI、Vercel AI SDK 向けのテスト済みサンプルがあります。
  • エージェントプラットフォーム用テンプレート:templates/ から、1 つのイメージと 1 つの run_python ツールを使い、コードが許可する機能と制限だけを適用して、エージェントが書いた Python を E2B、Daytona、Modal、Cloudflare Sandbox(または Docker)上で実行できます。
  • プロンプト: 通常の直接的な解決策を求め、それがコンパイルされることを伝えてください。CPython を想定するモデルは手作業で最適化しますが、トークンを消費し、Brevi ではかえって遅くなることがよくあります。詳細はAI エージェント向けをご覧ください。

動作の仕組み

Brevi は、まず最速の方法を試します。型付きビルドでは、各値の型を固定して通常の Rust コードを生成します。保存されたエージェントプログラムの多く(813 件中 567 件)はこの方法でビルドされており、速度の数値もこの方法に基づいています。値の型が変わるプログラムや、型付きビルドでは正確に一致させられないプログラムには、動的ビルドが使われます。こちらもネイティブ Rust ですが、CPython のオブジェクトのように振る舞う値を扱います。大半の numpy コードは Brevi 独自の numpy でビルドされます。AVX2 および AVX-512 CPU では、numpy を 1 スレッドで実行した場合とバイト単位で出力が一致します(それ以外の環境では、いくつかの関数で最終桁が異なることがあります)。また、エージェントがよく使うライブラリ(requests、httpx、pydantic、LLM SDK、mcp、jinja2、polars、sqlite3、duckdb、tokenizers、safetensors、onnxruntime。v0.26.0 以降)も同様です。それ以外のライブラリ呼び出し(pandas、yaml など)は、ネイティブプログラム内に読み込まれた CPython で実行されます。これらの方法のいずれでもファイルをビルドできない場合に限り、brevi run は python3 にフォールバックします。型付きビルド以外の経路でビルドするたびに、どの経路が実行されたか、その理由が 1 行の JSON で示されるため({"path":"dynamic","line":3,"fn":"show","why":...})、エージェントはどの関数を書き換えるべきか把握できます。整数は Python と同様に 64 ビットを超えても大きくなり、暗黙にオーバーフローすることはありません。--sandbox を指定した場合と、デフォルトでサンドボックス化される MCP ツールでは、呼び出し元が許可しない限り、プログラムはファイル、ネットワーク、ネイティブコード、ライブラリを利用できません(--allow read,write、--allow-read data、--allow-write out、--allow-net api.example.com、--allow-py yaml)。コードが自分自身に権限を付与することはできず、拒否は覆せません。また、サンドボックス化されたプログラムが python3 にフォールバックすることもありません。Linux では、サンドボックス下で読み込まれた CPython にも、Landlock によって同じファイル許可が適用されます。サンドボックスは Brevi が生成する独自コードによって強制されます。seccomp フィルター、名前空間、VM は使用されていません。--allow-py と --allow native は完全な信頼を意味し、Landlock は Linux 専用です。また、外部のセキュリティレビューはまだ実施されていません。おおむね信頼できるエージェントコードに対する簡易的な制限レイヤーとして扱い、信頼できないコードはコンテナーや VM 内でも実行してください。--limit cpu=2,mem=512,time=10,output=64(MCP では limits)を指定すると、CPU、メモリ、実時間、出力、ファイルサイズの各上限のうち、最初に達した時点でプログラムが停止します。written、net、threads、fds、files の各上限は v0.26.0 で追加されました(脅威モデル)。図と詳細:docs/ARCHITECTURE.md。

Brevi には、.bv ファイル向けに独自の、より簡潔な Python 風言語もあります。実行前に完全なチェックが行われます:BREVI.md(3,508 トークン。brevi guide で提供)、REFERENCE.md、LIBRARIES.md(Brevi の Rust クレートと Python)。エージェントは通常の Python を使うほうが低コストでタスクを完了できるため、エージェントツールでは Python を求めます。

ステータス:v0.27.1

v0.27.1 は v0.27.0 の修正リリースです。brevi-python が macOS で動作するようになり、リリースでは配布するアーカイブのテストも実施するようになりました。以下の数値は v0.27.0 で測定されたもので、ほかに変更はありません。

  • CPython 自身のテストで測定しています。 tools/conformance.py は、CPython 3.13 の test_grammar、test_scope、test_int、test_list、test_dict のテストを Brevi で実行します。v0.27.0 では、採点対象の 311 件中 250 件(80.4%)が CPython とまったく同じ出力を表示し、38 件はビルド時に拒否され、8 件はビルドできるものの答えが異なり(すべて終了ステータス)、クラッシュはありません(レポート)。v0.26.0 では、一致 181 件、拒否 66 件、相違 44 件、クラッシュ 5 件でした。一致した 250 件のうち 46 件は何も表示しないため、プログラムがビルドされ、正常に終了したことだけを示しています。これとは別に、エージェントが最もよく使う標準ライブラリのモジュール(itertools、collections、re、textwrap、functools、string)を対象とする数値もあります。テスト 554 件中 250 件(45.1%)が一致し、22 件は答えが異なります(レポート)。main(11 月 12 日時点。次のリリースに含まれます)では、両方の対象範囲のすべてのテストを採点します(抽出できないテストは残っていません)。コアに test_contains、test_binop、test_richcmp、test_set を、標準ライブラリに test_graphlib、test_colorsys、test_deque を追加した結果、コアは 96.5%(採点対象 683 件中 659 件。一部仕様上の拒否は以下のとおり除外。残り 24 件はまだ単独のスクリプトに切り出せず、そのうち 22 件は unittest の enterContext を使うため)、標準ライブラリは 99.7%(726 件中 724 件。残り 2 件は CPython ブリッジ経由でのみ一致)となり、直近のマージ後に main で測定した時点では、どちらにも誤った答えはありません。対象は採点した 18 ファイルであり、CPython のすべてではありません。計画用にさらに多くのテストファイルを測定していますが(tools/conformance.py --candidates)、まだ採点していません。Brevi の目標は、ビルドが CPython と一致するか、拒否されるかのどちらかであることです。答えが異なる場合はすべてこの目標に反するバグであり、次のリリースではそれらを優先して修正します。独自のプログラムでは、brevi verify x.py --input tests/ を実行すると、同じ入力でネイティブビルドと CPython を動かし、標準出力、終了コード、標準エラー出力が一致した場合は証明書(ファイルと入力のハッシュ、パス、速度向上)を、異なる場合は最初に相違した行を表示します(v0.26.0 から)。次のリリースから、文字列をコードとして実行するテスト(compile、exec、eval)は、仕様上の拒否として数えます。サンドボックス化されたネイティブバイナリは、文字列から新しいコードを実行することを意図的に拒否します。これらは compat/conformance_by_design.txt に記載され(コア 39 件、標準ライブラリ 5 件)、分母から除外されます。また、その件数は各スコアの横に表示されます。単独のサロゲートを含む str が必要なテスト(#450)や、CPython の非公開ヘルパーを呼び出すテスト(#481)は、compat/conformance_needs_string_model.txt と compat/conformance_cpython_private.txt に記載され、分母に含めたまま未一致として扱われる予定です。現在、main ではこれらのテストが一致するため、両方のリストは空です。サブプロセスでのクラッシュ確認、multiprocessing、_testinternalcapi など、CPython 自身の仕組みをテストするものと、参照ビルドで CPython 自身がスキップするテストは、cpython_only テストと同様に、理由を添えて除外します。目標の範囲外となるのは、標準エラー出力のテキストと、実行のたびに CPython 自身が出力を変えるもの(文字列の集合の順序、__del__ の実行タイミング)です。
  • 回帰テストセット:保存済みのエージェントプログラム。 変更されていない Python ファイルでは、Brevi は保存済みのエージェントプログラム 591 件と大規模なプログラム 18 件(チェス、テキストアドベンチャー、インタープリター)をすべてビルドでき、どれも CPython の出力と終了ステータスに一致します。これらは独自のベンチマークタスクの解答で、合格したものを保存しているため、これは回帰がないことを確認するものであり、Python がどれだけ動作するかを測るものではありません。Codon は 591 件中 206 件をビルドし、そのうち 36 件で結果が異なります(Codon は 64 ビット整数など、一部の Python の動作を意図的に変更しています)。Nuitka はすべてに一致します(bench/compare)。
  • 型付きパスでは、より高速です。 計算負荷の高いプログラム 12 件(n-body、spectral norm、fannkuch、binary trees など)では、デフォルトのビルドは CPython より 1.6 倍から 37.9 倍高速で、中央値は 9.3 倍です。--release では 2.1 倍から 38.8 倍高速で、中央値は 9.8 倍です(2026 年 11 月 12 日に Ryzen 9 5950X 上の WSL2 で測定。11 月 3 日に 4 コアのコンテナーで測定した際は、Codon がビルドできる場合、--release はおおむね Codon と同等でした)。これらの数値は型付きビルドによるものです。値の型が変化するプログラムは動的ビルドとなり、CPython とほぼ同じか、やや遅く動作します。同じ 12 件のプログラムでは CPython の 0.5 倍から 1.4 倍、中央値は 0.85 倍です。保存済みエージェントプログラム 813 件中 567 件は型付きビルドになりますが、CPython のテストのネイティブビルド 230 件中ではわずか 25 件です。brevi check は 1 秒を大きく下回る時間で回答します(新しいファイルでは中央値 144 ms)。変更されていないプログラムはキャッシュから約 10 ms で再チェックされます。
  • エージェントにかかるコストはほぼ同じです。 リリーステストでは、Claude Sonnet と Haiku がプレーンな Python で 24 個のタスクを解き、CPython と Brevi でそれぞれ一度ずつ検証したうえで、API の総費用を比較します。基準は、すべてのタスクに合格し、Brevi のコストが CPython の 10% 以内であり、最終プログラムの少なくとも 90% がネイティブビルドされることです。v0.27.0 は 2 回の実行でこの基準を満たしました。Sonnet は 1.08 倍(タスク全体の 95% 範囲は 1.04 倍から 1.13 倍)、Haiku は 0.97 倍で、すべてのタスクが両方で合格し、最終プログラム 96 件中 92 件がネイティブビルドされました(残り 4 件は別のジョブが同じマシンを使用している間だけビルドに失敗し、再ビルドするとネイティブビルドされます)。以前のリリースでは、Sonnet は 1.03 倍から 1.09 倍でした。つまり、通常のタスクでは Brevi によってモデルのコストが削減されることはなく、ほぼ同額か、数パーセント高くなります。これらの実行では、Brevi がファイルをビルドできない場合、brevi run と同様に CPython で実行し、モデルには Brevi のビルドエラーを表示しません。負荷の高い 4 つのタスクでは、Brevi 側だけにコードがコンパイルされることを伝え、簡潔に書くよう指示したところ、コストは 0.58 倍(Sonnet)、0.53 倍(Haiku)でした。CPython では同じ指示でまだ実行していないため、この数値では Brevi 自体による削減効果はまだわかりません。
  • 既知の制限事項: match 文と、実行時まで内容がわからないテキストの eval は、まだネイティブビルドされません(リテラルテキストの eval は v0.27.0 から対応しています)(async/await は v0.26.0 から対応しています)。ライブラリのクラスを継承して構築したクラスは、クラス全体が CPython で実行されます。--standalone は Linux のみ対応しており、Windows では --limit cpu、file、fds は拒否されます(mem は Job Object で制限されます)(ライブラリ呼び出し、ジェネレーター、async、および Brevi 独自の sqlite3、requests/httpx、duckdb、onnxruntime、MCP は v0.27.0 から Windows で動作します)。動作する機能と制限事項 とロードマップをご覧ください。 リリースは週に一度、月曜日にリリーステストの合格後に公開されます(重要な修正はそれより早くリリースされる場合があります)。それまでは、変更内容はCHANGELOG.mdの「Unreleased」に記録されます。

手法とログについては、bench/README.mdとベンチマークをご覧ください。Brevi 自身の言語が主な対象だった v0.8 から v0.23 までの結果は、bench/HISTORY.mdにあります。

ソースからビルドする

git clone https://github.com/ets-public/brevi
cd brevi
cargo build --release
./target/release/brevi run examples/top.py < examples/input.txt
sh tools/ci_local.sh      # the checks a pull request runs

Rust stable と python3 が必要です。コンパイラー自体の開発については、AGENTS.mdをご覧ください。

構成

パス内容
docs/ARCHITECTURE.mdソースファイルがネイティブプログラムになるまでを図解付きで説明します
src/lexer.rs、src/parser.rs、src/ast.rsソースから構文木への変換
src/emit.rsチェックと Rust コードの生成
src/prelude.rs生成される各プログラムに挿入されるランタイム
src/main.rsCLI、rustc の呼び出し、エラーのマッピング
src/caps.rsallow 行と --sandbox のチェック
examples/サンプルプログラム
tests/プログラムとエラーケースの期待される出力
tools/parity_probe.py、tools/parity/CPython と Brevi で実行する短いプレーンな Python プローブ。通知なしの差異と拒否を一覧表示します
tools/conformance.pyCPython 独自のテストスイートを単独のスクリプトに分割し、Brevi でビルドします。最新の結果
tools/compat.py、compat/baseline.txtこれまでに合格したすべてのベンチマーク用ソリューション。新しいツールチェーンでも合格し続ける必要があります
integrations/brevi mcp 経由で LangChain、OpenAI Agents SDK、CrewAI、Vercel AI SDK を使う例
templates/Brevi のサンドボックスと制限のもとでコードを実行する、E2B、Daytona、Modal、Cloudflare、Docker 上のエージェント用サンドボックス
grammar/、tools/grammar_check.py、tools/lark_to_gbnf.py制約付きデコーディング用の文法と、そのチェック
tools/upstream_watch.py新しい Rust、Python、クレートのリリースに対するレビュー用 issue を作成します
.github/日次ツールチェーンマトリックス、上流リリースの監視、Dependabot(「最新状態の維持」を参照)

最新状態の維持

Brevi は Rust や Python に遅れをとってはならず、かつて合格したコードが予告なく動かなくなることがあってはなりません。

  • ツールチェーン(.github/workflows/toolchains.yml):Brevi をビルドし、tests/check.sh と tools/compat.py check を再実行します(以前に合格した Brevi、Python、Rust のソリューションを 1,900 件以上保存しています)。毎日、最新の Python プレリリースとその次のプレリリースを使って Rust stable で実行します。月曜日には Rust beta と nightly でも実行します。nightly では、生成された Rust の非推奨警告と将来互換性に関する警告、および最新エディションについて、stable に反映される約 6~12 週間前に報告します。PR では .github/rust-version で固定された Rust のみをテストします(リリースと他のワークフローも同様です。日次実行では最新の stable をテストします)。ドラフトとドキュメントのみの変更はスキップし、コンパイラーまたはベースラインが変更された場合にのみ、以前のソリューションを再実行します。同じコミットですでにテスト済みのツールチェーンはスキップします。失敗すると toolchain issue が作成されます。Actions の実行時間を節約するため、マージ前に sh tools/ci_local.sh を実行してください(同じチェックを行います)。
  • 上流のリリース(upstream.yml、週 2 回):新しい Rust stable、Python リリース、またはテストやサンプルで固定されている新しいクレートがあるたびに、upstream issue を 1 件作成します。新しい言語機能と安定化された API を、レビュー用チェックリストとともに記載します。
  • Dependabot:Cargo の依存関係と GitHub Actions のバージョンを毎週確認します。

より多くのソリューションが合格する変更を行った後は、python3 tools/compat.py baseline を実行して、その状態を記録してください。 チェックを通すために、compat/baseline.txt の行を削除してはなりません。

コントリビューションとセキュリティ

バグ報告とプルリクエストについてはCONTRIBUTING.mdを、脆弱性を非公開で報告する場合はSECURITY.mdをご覧ください。それ以外のお問い合わせは、[email protected]までメールでご連絡ください。

ライセンス

Apache License 2.0。詳細はLICENSEをご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。