DevReady について
DevReadyは、開発者、CI、コーディングエージェント向けの読み取り専用CLIです。プロジェクトが宣言したバージョン要件をインストール済みツールと照合し、マシンを変更したりネットワークに接続したりせずに、自動処理向けのレポートを出力します。
主な機能
- 01プロジェクトが宣言したバージョン要件の確認
- 02インストール済みツールとのバージョン照合
- 03テキスト、JSON、JUnit、SARIF出力
- 04CI終了コードとGitHub Action
- 05ネットワーク接続なしの読み取り専用チェック
活用シーン
- 01プロジェクトのクローン後に環境を確認
- 02CIでプロジェクト要件を事前チェック
- 03ビルド前にコーディングエージェントが環境を確認
MCP 対応
DevReadyは、MCPクライアント向けに読み取り専用の`check_environment`ツールを提供するMCPサーバーを備えています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
1掲載時のツール一覧 · 4 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| project | string | いいえ | プロジェクトディレクトリ(デフォルトは .) |
詳細
🩺 DevReady
「自分の環境では動く」問題を、午後の時間を無駄にする前に解決します。
依存関係ゼロの読み取り専用 CLI です。マシンがプロジェクトで宣言された要件を実際に満たしているかを確認し、何を修正すればよいかを具体的に示します。 人間、CI、AI コーディングエージェント(Claude Code、Codex、あらゆる MCP クライアント向けに作られています。
DevReady とは?
DevReady は、コンピューターがプロジェクトに取り組める状態かどうかを知らせるコマンドラインツールです。プロジェクトフォルダー内で devready check を実行すると、次のことを行います。
- 読み取ります:プロジェクトが必要としているバージョン(
.nvmrc、.python-version、package.jsonの engines、pyproject.tomlの requires-python)を確認します。 - 比較します:マシンに実際にインストールされているもの(Python、Node.js、npm、Git など)と照らし合わせます。
- 報告します:各項目について、修正すべき内容とともに PASS、WARN、FAIL を表示します。要件を満たしていない場合の終了コードは
1なので、CI でも利用できます。
状態を確認するだけです。何かをインストール、変更、削除することはなく、ネットワーク接続もテレメトリー送信もしません。問題の修正(たとえば Node のバージョン切り替え)は、ユーザー自身で行います。
問題
リポジトリをクローンします。npm install が失敗します。README には「Node 20」と書かれているのに、マシンには 16 が入っていて、エラーメッセージは役に立ちません。ビルド失敗の原因を推測するためにトークンを消費する、新入社員、学生、CI ランナー、AI エージェントが増えるたびに、この問題が繰り返されます。
解決策
$ devready check
DevReady - Environment Check
[PASS ] Python 3.15.0 found
[PASS ] Git 2.52.0 found
[PASS ] Node.js 23.5.0 found
[PASS ] npm 11.14.1 found
[FAIL ] Node engines 23.5.0 does not satisfy package.json engines (>=99)
[WARN ] Python pin 3.15.0 does not satisfy .python-version (3.99)
No changes were made to your system.
上記の出力は実際の実行結果です(失敗を示すため、ピン留めした値は意図的に実現不可能なものに設定しています)。要件を満たさない場合の終了コードは
1なので、そのまま CI に組み込めます。
DevReady を選ぶ理由
| 🎯 プロジェクトを考慮 | プロジェクトで宣言された内容(.nvmrc、.node-version、.python-version、package.json の engines、pyproject.toml の requires-python)を読み取り、インストール済みのものと比較します。「Node がインストールされているか」だけではありません。 |
| 🔒 設計上、読み取り専用 | インストール、編集、削除は一切行いません。環境変数の値も表示しません。ネットワーク接続もテレメトリー送信もありません。 |
| 🤖 エージェント対応 | 安定したバージョン管理済みの JSON スキーマ、Claude Code プラグイン、MCP サーバー、AGENTS.md を提供します。エージェントは推測するのではなく、まず確認します。 |
| 🛡️ プロンプトインジェクションに安全 | 出力に含まれるのは解析済みのバージョンと固定テキストだけで、ファイルやコマンドの生出力は含まれません。そのため、悪意のある package.json がエージェントに指示を紛れ込ませることはできません(テスト済み)。 |
| 📦 依存関係ゼロ | Python 標準ライブラリのみを使用します。数秒でインストールでき、Python 3.10+ が動作する環境ならどこでも実行できます。 |
| ⚙️ CI に最適 | 終了コードを文書化し、JSON 出力に対応。CI では Linux、macOS、Windows でテスト済みです。 |
対象ユーザー
- 🧑🎓 学生・ブートキャンプ受講者:難解なスタックトレースの代わりに、わかりやすい結果を確認できます。
- 🧑💻 プロジェクトを切り替える開発者:1 つのコマンドで、時間を無駄にする前に問題点を確認できます。
- 👩🏫 メンテナー・教育者:README のセットアップ手順に
devready checkを追加すれば、「動かない」という問題を減らせます。 - 🏗️ CI・プラットフォームチーム:明確な事前チェックで、問題を早期に検出できます。
- 🤖 AI エージェントの利用者:Claude Code / Codex に、実際の環境に基づくチェックを提供できます。
インストール
PyPIからインストールします。
pipx install devready-cli
# or run without installing:
uvx devready-cli check
npmからインストールする場合(uvxまたはpipxを介して同じPyPIリリースを実行するため、どちらか一方をインストールしておく必要があります)。
npx devready-cli check
クローンからインストールする場合(開発用)。
git clone https://github.com/Evalogical-Inc/devReady && cd devReady
python -m venv .venv
# Windows: .venv\Scripts\Activate.ps1 macOS/Linux: source .venv/bin/activate
python -m pip install -e ".[dev]"
使い方
devready check # human-readable report for the current directory
devready check --quiet # only non-pass results (text format)
devready check --project ../app # inspect another project's pins
devready check --format json # machine-readable (see docs/schema.json)
devready explain docker.daemon # what a check means and how to fix it
devready check --format junit # or sarif, for CI
devready check --only project --skip project.ports # filter by id or prefix
devready fix --plan # suggested steps only; never runs them
devready check --format json > baseline.json # save a snapshot (commit it for a team baseline)
devready check --baseline baseline.json # show only what changed; fail only on new/worse failures
devready init > .devready.json # optional config: skip ids, require node/python, required env names
devready mcp # run as an MCP server over stdio
devready --version
| 終了コード | 意味 |
|---|---|
0 | ブロッキングエラーなし |
1 | プロジェクトの要件が満たされていません |
2 | 使い方が無効です(例:不正な--projectパス) |
3 | 内部エラー |
| ステータス | 意味 |
|---|---|
pass | 要件を満たしています |
warn | ツールが見つからないか、ソフトピン(.nvmrc、.python-version)が一致しません |
fail | ハード要件(engines、requires-python)を満たしていません |
skip | 評価されませんでした(ツールがない、または要件の構文を解釈できない) |
error | DevReadyでチェックを実行できませんでした |
JSON出力
{
"schema_version": 1,
"results": [
{
"check_id": "project.node.engines",
"title": "Node engines",
"status": "fail",
"summary": "23.5.0 does not satisfy package.json engines (>=99)",
"suggestion": "Switch versions with your version manager (nvm, pyenv, mise, ...) or update the requirement.",
"docs_url": ""
}
]
}
CIで使用する(GitHub Actions)
- uses: Evalogical-Inc/devReady@main # pin a release tag once published
with:
skip: project.ports # optional; also: only, format, project, version
宣言された要件が満たされていない場合(fail)、ジョブは失敗します。DevReadyはPyPIからdevready-cliをインストールするため、インストール済みのリリースより後に追加されたフラグ(--only、--skip、junit/sarif)を使うには、それらを含むリリースが必要です。リリースを固定するにはversion:を設定してください。
バッジを追加する
プロジェクトで要件が宣言されており、1つのコマンドでチェックできることをコントリビューターに伝えましょう。以下をREADMEに貼り付けてください。
[](https://github.com/Evalogical-Inc/devReady)
AIコーディングエージェントで使用する
DevReadyは同じエンジンを3つの方法で提供するため、エージェントはインストール、ビルド、テストの前に環境を検証できます。
Claude Code - スキル、/devready:doctorコマンド、MCP サーバーを含むプラグインです(MCP サーバーにはuvが必要です。devready-cliのインストール後は、それ以外の機能はuvなしで動作します)。
/plugin marketplace add Evalogical-Inc/devReady
/plugin install devready --marketplace Evalogical-Inc/devReady
任意のMCPクライアント(Codex、Cursorなど) - 読み取り専用ツールcheck_environmentを1つ提供します。MCP Registryにもio.github.Evalogical-Inc/devreadyとして掲載されています。
# ~/.codex/config.toml (verify keys against your Codex version)
[mcp_servers.devready]
command = "uvx"
args = ["--from", "devready-cli", "devready", "mcp"]
その他の環境 - リポジトリにAGENTS.mdを配置するか、skills/devreadyをコピーしてください。詳しくはdocs/agents.mdをご覧ください。
安全性とプライバシー
- タイムアウト付きの固定コマンドリストを使用します。シェルやユーザー作成のコマンドは使用しません。
- プロジェクトファイルは通常ファイルでサイズが1 MB以下の場合にのみ読み取られます(シンボリックリンクはスキップ)。実行されることはありません。
- 環境変数の値が出力に読み込まれることはありません。情報が端末の外部に送信されることもありません。
- チェックに合格しても、プロジェクトのビルドが保証されるわけではありません。
モデルについてはdocs/security.md、安定性が保たれる項目についてはdocs/versioning.md、すべてのチェックについてはdocs/checks.mdをご覧ください。脆弱性の報告はSECURITY.mdをご利用ください。
制限事項
- 現在のチェック対象:Python、Git(IDの設定を含む)、Node.js、npm、プロジェクトのピン(
.nvmrc、.node-version、.python-version、.tool-versions、package.jsonのengines、pyproject.tomlのrequires-python)、.env.exampleと.envのキー名の照合、Docker CLIとデーモン(プロジェクトにDockerfileまたはcomposeファイルがある場合のみ)、空きディスク容量、および(プロジェクトで宣言されている場合のみ)Go、Ruby、Java、Rust、.NET、pnpm、Yarn、Bunのピン、.envがGitの無視対象でないこと、node_modulesとロックファイルの照合、宣言されたポートがすでに使用中でないこと。 - バージョン範囲の照合では、一般的なnpm/PEP 440構文に対応します。プレリリースや特殊な範囲は推測せず、
skipとして報告されます。 - 比較対象のPythonバージョンはDevReadyを実行しているインタープリターのものであり、プロジェクトの仮想環境のものとは限りません。
ロードマップ
- Docker CLI とデーモンへの接続確認、
.tool-versions、.envのキー名の差分、ディスク容量、git の ID、devready explain - 使用中ポートの確認、対応エコシステムの拡充(Go、Rust、Java、Ruby、.NET、pnpm/yarn/bun)、JUnit/SARIF 出力、
fix --plan、GitHub Action -
.devready.json設定、--baselineスナップショット - プラットフォーム固有のチェック(ROADMAP.md を参照)
- スタンドアロンバイナリ
DevReady に検出してほしいセットアップの問題がありますか?issue を作成してください。早期のフィードバックがロードマップの策定に役立ちます。
コントリビューション
PR を歓迎します。特に、新しい読み取り専用チェックやプラットフォームの修正を歓迎します。CONTRIBUTING.md と技術計画から始めてください。背景調査はdocs/research.mdにあります。行動規範に従ってください。
ruff check . && pytest
Evalogical について
DevReady は、AI を活用したプロダクトエンジニアリング、カスタムソフトウェア、IT サービスを提供するソフトウェア企業 Evalogical が開発、保守しています。プロダクトやエンジニアリングチームについてお困りですか?お問い合わせください。
ライセンス
MIT © Evalogical Inc
DevReady によって午後の時間を節約できたら、⭐ を付けていただくと、ほかの人にも見つけてもらいやすくなります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。