Model Context Protocol(MCP)サーバーのテストやデバッグに使える、Web・CLI・ターミナルUI対応のビジュアル開発者ツール。
inducer/pudb
ソース、スタック、ブレークポイント、変数を一画面に表示する、全画面キーボード操作型のPythonコンソールデバッガー。
- スター
- 3,252
- フォーク
- 245
- 未解決の Issue
- 164
- 最終コミット
- 6 日前
これは何?
PuDBは、モダンなGUIデバッガーのレイアウトをターミナル上で実現します。シンタックスハイライト付きのソースコード、コールスタック、ブレークポイント、変数をまとめて表示し、プログラムの実行中も最新の状態に保つため、コードを書いたりテストしたりする環境のままデバッグできます。
操作は1キーで行え、カーソルキーやVi風のショートカットにも対応しています。それ以外のコマンドはpdbをベースにしています。ソース表示からブレークポイントを設定したり、カーソル位置まで実行したり、現在の環境でPythonシェルを開いたり、読み込み済みモジュールを閲覧・再読み込みしたりできます。ポストモーテムモードでは、クラッシュしたプログラムの直前の状態をさかのぼって確認できます。
PuDBには、ダークテーマを含む複数の組み込みテーマがあり、IPythonとも連携します。pytestにも対応しており、別のターミナルから操作できます。対象はPython 3.6以降です。
主な機能
- 01シンタックスハイライト付きのソース、スタック、ブレークポイント、変数をまとめて表示し、リアルタイムで更新
- 02カーソルキーとVi風ショートカットに対応した1キー操作
- 03行を選んでbキーを押すだけでブレークポイントを設定し、tキーでカーソル位置まで実行
- 04クラッシュしたプログラムの状態をさかのぼって確認できるポストモーテムモード
- 05モジュールブラウザー、現在の環境で使えるPythonシェル、IPython連携
- 06明るいテーマと暗いテーマを含む組み込みテーマ
ユースケース
- GUIを使わず、SSH経由や通常のターミナルでPythonスクリプトをデバッグする
- 失敗したpytestテストを対話的にステップ実行する
- 未処理例外によるクラッシュ後に、そのときの状態を調べる
- ターミナルから離れずにキーボード中心でデバッグしたい開発者が使う
クイックスタート
- 1
Python Package Index(PyPI)でパッケージを探す
- 2
Git で開発版を取得する
git clone https://github.com/inducer/pudb.git
使う前に知っておきたいこと
- メタデータにライセンスが明記されていないため、使用する前にリポジトリを確認してください。
- Python 2.7 がサポートされるのはバージョン 2019.2 までです。それ以降のリリースには Python 3.6 以降が必要です。
収録されている特集
トピック
よくある質問
- pudb とは?
- ソース、スタック、ブレークポイント、変数を一画面に表示する、全画面キーボード操作型のPythonコンソールデバッガー。 PuDBは、モダンなGUIデバッガーのレイアウトをターミナル上で実現します。シンタックスハイライト付きのソースコード、コールスタック、ブレークポイント、変数をまとめて表示し、プログラムの実行中も最新の状態に保つため、コードを書いたりテストしたりする環境のままデバッグできます。
- pudb は無料で使えますか?ライセンスは?
- pudb は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- pudb は今もメンテナンスされていますか?
- 活発にメンテナンス中。pudb の最終コミットは 2026年11月1日 です。
- pudb は何に使えますか?
- GUIを使わず、SSH経由や通常のターミナルでPythonスクリプトをデバッグする 失敗したpytestテストを対話的にステップ実行する 未処理例外によるクラッシュ後に、そのときの状態を調べる ターミナルから離れずにキーボード中心でデバッグしたい開発者が使う
- pudb のインストール方法は?
- Python Package Index(PyPI)でパッケージを探す Git で開発版を取得する: git clone https://github.com/inducer/pudb.git
- pudb はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/inducer/pudb
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ソースコードなしで.NETやUnityのアセンブリをデバッグ・編集できる、dnSpyの非公式継続プロジェクト。
変数名や式とその値を、整形・構文ハイライト付きで表示するPythonデバッグヘルパー。ic()でprint()を置き換えられます。
プログラムが送信するサーバー側のリクエストを含むHTTP(S)リクエストを記録し、ローカルのWeb UIで確認できるPythonデバッグツール。
PTY経由でREPL、デバッガー、TUIアプリなどの対話型ターミナルプログラムをAIエージェントから操作できるCLI。
DEBUG環境変数で有効化でき、Node.jsとWebブラウザーで名前空間付きのデバッグ出力を行う、小さなJavaScriptユーティリティです。