typer-and-rich について
typer-and-richは、TyperとRichでコマンドラインアプリを開発する人向けのスキルです。非TTY環境での表示、テーブル幅、テスト、例外処理に重点を置き、参考資料とサンプルも案内します。
主な機能
- 01非TTY表示のガイダンス
- 02Richテーブル幅の測定
- 03pytest出力の取得パターン
- 04Typer例外処理のパターン
- 05実行可能なCLIサンプル
活用シーン
- 01非対話環境でのターミナル出力処理
- 02Richテーブルの予期しない折り返し防止
- 03pytestによるRich出力のテスト
- 04Typerアプリのエラー処理設計
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jamie-bitflight/ claude_skills --skill typer-and-richインストール後、Claude Code で/typer-and-richを入力して読み込まれたか確認します。
詳細
Typer と Rich のベストプラクティス
<user_input>$ARGUMENTS</user_input>
<user_input/> にディレクトリまたはファイルが含まれている場合は、このガイドに照らしてその内容を確認してください。すぐに開始してください。空の場合は、既存のタスクの参考としてこのガイドを使用してください。
Typer と Rich を使った CLI アプリケーションの構築における正しいパターンを、非 TTY 環境と一般的な失敗例に重点を置いて説明します。API リファレンスについては、専用のスキルを読み込んでください。
Skill(skill="python-engineering:typer")— Typer CLI フレームワークの API リファレンス- Rich の API リファレンスについては、
../python3-cli/references/rich-console-and-markup.mdおよび関連する Rich リファレンスを参照してください
非 TTY 環境での使用とプログラムからの使用
共通ルール(アーキテクチャ、型付け、テスト、CLI ルール)については、python-engineering:standards-for-python-development を参照してください。
../python3-cli/references/typer-rich-non-tty-patterns.md を参照してください — TTY がない場合の Console の動作、デフォルトの幅、force_terminal と width、非対話型コンテキストでの Progress/Live、環境変数について説明します。
Rich テーブルの幅の測定
../python3-cli/references/typer-rich-tables.md を参照してください — 非 TTY 出力で 80 列での折り返しを防ぐ幅の測定パターンについて説明します。
テストのパターン
../python3-cli/references/typer-rich-testing-patterns.md を参照してください — pytest での Rich 出力のキャプチャ、Rich を使った CliRunner、スナップショットテスト、よくあるアサーションの誤りについて説明します。
例外チェーンの防止
../python3-cli/references/typer-rich-exception-handling.md を参照してください — AppExit および AppExitRich パターンを使った Typer の例外チェーン防止について説明します。Typer CLI アプリケーションでエラー処理を実装する際に読んでください。
動作するスクリプトの例
../python3-cli/assets/typer_examples/index.md を参照してください — 非 TTY 表示の解決策を示す、動作するスクリプトについて説明します。ターミナルアプリケーションの表示やレイアウトの問題を調査する際に読んでください。
../python3-cli/assets/python-cli-demo.py を参照してください — すべてのパターンを盛り込んだ、完全に動作する CLI デモです(PEP 723 shebang、Typer と Rich の統合、モダンな Python 3.11 以降、非同期処理)。新しい CLI ツールを作成する際の実装例として読んでください。