ebman について
ebman は AWS Elastic Beanstalk を運用する担当者向けの、キーボード操作中心のターミナル UI です。環境の調査や操作、安全管理と監査をまとめ、MCP サーバー経由の照会と確認付き書き込みにも対応します。
主な機能
- 01環境一覧のリアルタイム表示と詳細表示
- 02ヘルス調査、イベントとログの確認
- 03デプロイ、設定、キュー、インスタンスの操作
- 04複数アカウントとリージョンの照会
- 05安全制御と操作監査ログ
活用シーン
- 01異常な Elastic Beanstalk 環境の調査
- 02環境設定とデプロイバージョンの比較
- 03Worker キューとデプロイの管理
- 04MCP クライアントから環境を照会し、制御された操作を依頼
MCP 対応
`ebman mcp serve` は環境データと診断情報を MCP ツールとして公開します。書き込みは計画の提示後に確認して実行する二段階方式にでき、`--allow-writes` で一部またはすべての書き込みを許可し、`--read-only` で無効にできます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ebman
AWS Elastic Beanstalk 向けの k9s スタイルの TUI です。 赤くなった環境のトリアージ、ログのストリーミング、オプション設定の編集、新しいバージョンのデプロイをすべてキーボードから実行できます。Kubernetes で k9s を使ったことがあれば、操作感をそのまま活かせます。コマンドは :、絞り込みは /、詳細表示は Enter、状況に応じたヘルプは ? です。
インストール · クイックスタート · トリアージのワークフロー · 特長 · ebman を選ぶ理由 · ドキュメント

バイナリに同梱されている合成フリートモード
ebman --demoで記録したものです。コードを変更した後、vhs demo.tapeで GIF を再生成できます。
インストール
Homebrew(macOS / Linux):
brew install tombaldwin/tap/ebman
Cargo:
cargo install ebman
ビルド済みバイナリ: お使いのプラットフォーム用の tarball をGitHub Releases ページからダウンロードし、隣にある *.sha256 で検証して展開し、ebman を PATH に追加します。
Rust 1.94.1 以降でテスト済みです(AWS SDK の要件による最低バージョンです)。macOS(Apple Silicon および Intel)と Linux x86_64 に対応しています。AWS SDK は標準の認証情報チェーンを使用します(環境変数 AWS_PROFILE / AWS_REGION、~/.aws/credentials、インスタンスロールなど)。
見栄えのよいグリフセット(Powerline のピル型チェーン、Nerd Font のタブアイコン)については、docs/fonts.md をご覧ください。デフォルトの icons = "unicode" は、どのターミナルでも問題なく動作します。
クイックスタート
ebman # launch the TUI
ebman --read-only # disable all write surfaces (audit-friendly)
ebman --demo # synthetic fleet (no AWS calls) — for screenshots / VHS
ebman --version
ebman --help
起動したら ? を押すと、コンテキストごとのキーマップを確認できます(Detail、DLQ、Action メニュー、Saved-configs オーバーレイにはそれぞれ専用のヘルプがあります)。
トリアージのワークフロー
午前3時、本番環境が異常状態になりました。ターミナルから次の操作を行います。
ebman— 起動すると、テーブル内に赤く色付けされたprod-apiが表示されます/prod-api↵— 対象に移動します!—:whyを開きます。最近のイベント、アラーム、インスタンスの健全性、直近のデプロイをすべて1つのオーバーレイで確認できます:diff prod-api staging-api— staging がまだ前のバージョンを使用していることを確認します:rollback— 最後に正常稼働していたバージョンラベルを再デプロイします。5秒間の取り消し猶予があります- 操作と結果は
~/.cache/ebman/audit.logに記録されます
トリアージは5回のキー入力、修正は1つのコマンドで完了します。AWS コンソールを使う場合、最低でもページ読み込みが5回、タブが2つ必要で、監査記録も残りません。
EB 環境を日々トリアージするオペレーター向けに構築されています。AWS コンソールとの往復や、何かが異常状態になるたびに実行する eb deploy ; aws elasticbeanstalk describe-events --max-items 50 | jq ... のシェルパイプラインは不要です。
主な機能
- ライブ環境テーブル:並べ替え/フィルター/アプリ別グループ化/ヘルスのスパークライン/重大度別の色分け/マウス操作に対応しています。
- 環境ごとの詳細表示 — ヘルス/イベント/インスタンス/メトリクス/キュー/ログ/設定/アプリのタブを用意しています。
- 独自のメトリクス — アプリのタブには、環境の CloudWatch メトリクス、RDS/ElastiCache の項目、
config.tomlのapp.ENV.*にある上位ログエラーが表示されます。設定がない場合は検出された情報が表示され、eを押すとフォームから設定を編集できます。再起動は不要です。 - 異常環境のトリアージ —
:whyで、最近のイベント+アラーム+インスタンスのヘルス+直近のデプロイをまとめた1画面の診断が開きます。Worker 環境では DLQ の内容も確認できます。 - インシデントモード —
:incident START "headline"でフリート全体のデプロイを凍結し、経過時間を示すバナーをヘッダーに固定して、その期間を監査ログに記録します。ebman freezeは、どのセッションも所有しない凍結を宣言し、ebman thawが実行されるまで維持します。:event-tailは、すべての環境の EB イベントを1つのオーバーレイにストリーミングします。ebman audit replay <line-id>は、監査対象のアクションを再実行し、インシデント後のレビューに使用します。 - 正確なヘルス表示 — ALARM 状態のアラーム、メッセージのある DLQ、古いプラットフォームを、タブの背後ではなく行自体に表示します。
- フォレンジック — オプション設定の差分には
:diff env-A env-B、デプロイのタイムラインには:lineage、CW の状態遷移には:alarm-history NAME、ローカルの EB CLI 保存済み設定との比較には:config-diff-localを使用します。 - 日常的な変更操作 — 環境変数、タグ、デプロイ(ラベル/ローカル zip/S3、
--preview対応)、保存済み設定、CW アラームの CRUD、ALB スキーム、インスタンスタイプ、容量、デプロイポリシーに対応し、汎用的な:set-optionも利用できます。 - Worker/SQS — 再送信、名前の入力が必要なパージ、一括削除、内容確認と追跡に対応した DLQ ビューアーを備えています。
- SSM —
:ssh i-abcで埋め込みセッションが開きます。:ssm-run "<cmd>"では、シェルコマンドを環境内のインスタンス全体に実行します。 - マルチアカウント/マルチリージョン —
:region allで並列クエリを実行します(読み取りと書き込みはすべて各行のリージョンで行われます。同じ名前の環境が2つある場合はNAME@REGIONで選択できます)。sts:AssumeRoleを使う:account NAME、および~/.awsのすべてのプロファイルと設定済みアカウントを巡回する:find-env/:org-healthに対応しています。 - 一括操作 —
spaceで複数選択し、:batch-*で監査記録と保留中を示すピル型の行を表示しながら、並列に操作を実行します。 - 安全性+監査 —
--read-onlyフラグ、名前入力による確認、環境ごと/アカウントごとの読み取り専用ピンに対応し、完全な監査ログを~/.cache/ebman/audit.logに保存します。 - ヘッドレス/スクリプト対応 —
--control-socket PATH、ebman envs --json、ebman action rebuild --env NAME、ebman ctl screen / state / cmd <:cmd>を利用できます。 - エージェントネイティブ(MCP) —
ebman mcp serveは、読み取り用の機能(環境、Worker キュー、whyトリアージバンドル、最近のログ、lint、ドリフト、オプション設定、イベント、バージョン、コスト)を MCP ツールとして公開します。これにより、Claude Code などの MCP クライアントは、シェルコマンドを実行して結果を再解析することなく、フリートを直接問い合わせられます。2段階の書き込み操作(deploy/restart/rebuild/terminate/set_option/dlq_resend/dlq_delete/dlq_purge)では、ツールがまず計画を返し、その後confirm_actionが操作を実行します。クライアントからユーザーに確認できる場合、確認のたびに、操作内容、その操作によってできなくなること、使用する ID を示すダイアログが表示され、確認が承認されない限り実行されません。(クライアント自身が回答する場合、ebman はその回答がユーザーによるものかどうかを判別できません。詳しくはdocs/safety-and-privacy.mdをご覧ください。そのため、ヘッドレスまたはスクリプト化されたクライアントでは--read-onlyまたは対象を絞った--allow-writesを推奨します。)確認を求められないクライアントには--allow-writes、または一部の操作のみを許可する--allow-writes=dlq_resend,dlq_deleteが必要です。--read-onlyを指定すると、そのサーバーでの書き込みはすべて拒否されます。これらの機能はすべて、TUI と同じ安全ピン、読み取り専用設定、プロセス間で共有されるインシデント凍結を尊重し、すべての実行と拒否を監査ログに記録します。
ebman を選ぶ理由
すでに、次のいずれかをお使いかもしれません。
| ツール | 得意なこと | 日々の EB トリアージでの課題 |
|---|---|---|
| AWS Console | 使いやすく、UI が充実しています。 | ページの読み込みに時間がかかり、状態の反映にも遅延があり、1 つの環境をトリアージするのにタブを 5 つ開く必要があります。たまの運用には問題ありませんが、午前 3 時の作業にはつらいです。 |
eb CLI | 1 つのプロジェクトのデプロイワークフロー(eb deploy、eb logs)。 | 複数環境をまとめて表示できず、ライブで詳細を確認できず、環境間の差分も表示できず、SQS DLQ のワークフローもありません。 |
aws elasticbeanstalk | 生の API にアクセスでき、スクリプト化できます。 | --query/jq のパイプラインを使って、ワークフローを自分で組み立てる必要があります。ライブ更新もトリアージ画面もありません。 |
| k9s + EKS | このツールのモデルとなった操作パターンです。 | Elastic Beanstalk 向けのものはありません。 |
ebman は EB 向けの k9s です。キーボード操作を中心に、詳細の確認を優先し、日々異常のある環境をトリアージして、「何が問題なのか」「何が変わったのか」を 1 つの画面で把握したい運用担当者向けに設計されています。Rust 製 TUI/k9s スタイルの分野で最も近いツールは e1s(ECS 向けの k9s)です。ebman は書き込み操作の範囲がより広く、複数アカウントへの一括操作、監査ログ、環境ごとの安全ピン、組み込みの SSM セッションペインを備えています。
ドキュメント
- キー操作 — 通常モード、詳細ビューのタブ、DLQ ビューアー。
- コマンドリファレンス — ジョブ別(ナビゲーション、環境ごとの操作、書き込み、複数アカウント、一括操作)にまとめたすべての
:command。 - 設定 —
~/.config/ebman/config.toml、プラグインコマンド、プロジェクトローカルのピン留め。 - フォント — Powerline グリフセット用の Nerd Font のインストール。
- ヘッドレスインターフェース — スクリプト/CI 向けの
--control-socket+ebman ctl、CLI サブコマンド、シェル補完(ebman completions)、および Claude Code などのエージェント向けのebman mcp serveMCP サーバー(読み取りツール + 確認を必要とする 2 段階の書き込み)。正確な登録コマンドはebman mcp setupを実行してください。 - 安全性、プライバシー、ローカルに保存される内容 — 読み取り専用モード、監査ログ、バグレポートの情報除去。
- アーキテクチャ — モジュール構成、キー入力が AWS 呼び出しに変わる仕組み、コンパイラーでは強制できない不変条件。
- 開発 — ビルド/テスト/clippy と配布に関する注意事項。
- コントリビューション — セットアップ、PR 前のチェックリスト、変更を受け入れやすくするポイント。
ライセンス
MIT または Apache-2.0 のデュアルライセンスです。LICENSE-MIT と LICENSE-APACHE を参照してください。
Polymorphism が開発し、オープンソースとして公開しています — エンタープライズソフトウェア、 クラウド、AI。ebman の製品ページで詳細をご覧ください。
MCP Registry 名:mcp-name: io.github.tombaldwin/ebman
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。