Kage プロジェクト タスクランナーガイド
このプロジェクトでは poethepoet を使用してタスクランナーを実装しています。これにより、開発・テスト・ビルドなどの作業を効率化できます。
インストール・セットアップ
poethepoet のグローバルインストール(推奨)
poethepoet をグローバルにインストールすることで、uv run
を付けずに直接poe
コマンドを使用できます:
# poethepoetをグローバルにインストール
uv tool install poethepoet
# 依存関係の同期とデータベースの初期化
poe setup
ローカルプロジェクトでの使用(代替方法)
もしグローバルインストールができない場合は、プロジェクト内でも使用可能です:
# プロジェクト内にpoethepoetを追加
uv add poethepoet --dev
# タスク実行(この場合はuv runが必要)
uv run poe setup
基本的な使用方法
# 利用可能なタスクの一覧表示
poe --help
# 特定のタスクの実行
poe <task-name>
📋 利用可能なタスク一覧
🚀 アプリケーション実行
コマンド |
説明 |
poe app-run |
通常のデスクトップアプリとして起動 |
poe app-dev |
開発モード(ホットリロード + 再帰監視) |
poe app-web |
Web ブラウザでアプリを起動 |
poe app-web-dev |
Web ブラウザで開発モード起動 |
poe app-debug |
詳細ログ出力モードで起動 |
⚙️ 開発環境セットアップ
コマンド |
説明 |
poe setup |
初回セットアップ(依存関係同期 + DB 更新) |
poe sync |
依存関係の同期 |
🗄️ データベース操作
コマンド |
説明 |
poe db-upgrade |
データベースマイグレーションの実行 |
poe db-downgrade |
1 つ前のマイグレーションにダウングレード |
poe db-history |
マイグレーション履歴の表示 |
poe db-current |
現在のマイグレーション状態確認 |
🔍 コード品質・フォーマット
コマンド |
説明 |
poe lint |
ruff による静的解析 |
poe lint-fix |
自動修正可能な問題を修正 |
poe format |
コードフォーマット |
poe format-check |
フォーマットチェック(修正なし) |
poe type-check |
型チェック(Pyright) |
🎯 複合コマンド
コマンド |
説明 |
poe check |
品質チェック一括実行(lint + format-check + type-check) |
poe fix |
自動修正一括実行(lint-fix + format) |
🧪 テスト実行
コマンド |
説明 |
poe test |
全テストの実行 |
poe test-unit |
ユニットテストのみ実行 |
poe test-integration |
統合テストのみ実行 |
poe test-cov |
カバレッジ付きテスト実行 |
📦 依存関係管理
コマンド |
説明 |
poe deps-list |
インストール済みパッケージの一覧 |
poe deps-tree |
依存関係ツリーの表示 |
poe deps-outdated |
古いパッケージの確認 |
🏗️ ビルド・パッケージング
コマンド |
説明 |
poe build-web |
静的 Web サイトとしてビルド |
poe build-desktop |
Windows デスクトップアプリとしてビルド |
poe pack-desktop |
スタンドアロンのデスクトップバンドル作成 |
🧹 クリーンアップ
コマンド |
説明 |
poe clean |
uv キャッシュのクリア |
poe clean-pyc |
.pyc ファイルの削除 |
poe clean-all |
全クリーンアップの実行 |
📄 ログ管理
コマンド |
説明 |
poe logs-app |
アプリケーションログの最新 50 行表示 |
poe logs-agents |
エージェントログの最新 50 行表示 |
poe logs-clear |
全ログファイルの削除 |
💡 開発ワークフローの例
初回セットアップ
日常の開発作業
# 開発モードでアプリ起動
poe app-dev
# コード品質チェック
poe check
# 問題の自動修正
poe fix
# テスト実行
poe test
データベース操作
# マイグレーション実行
poe db-upgrade
# 現在の状態確認
poe db-current
デプロイ前のチェック
# 全体的な品質チェック
poe check
# テスト実行
poe test
# Webアプリとしてビルド
poe build-web
❓ トラブルシューティング
タスクが見つからない場合
依存関係の問題
ログの確認
# アプリケーションログを確認
poe logs-app
# エージェントログを確認
poe logs-agents
⚙️ カスタムタスクの追加
新しいタスクを追加する場合は、pyproject.toml
の[tool.poe.tasks]
セクションに追加してください:
[tool.poe.tasks]
my-custom-task = "echo 'Hello, World!'"
詳細な設定方法については poethepoet 公式ドキュメント を参照してください。