mcpField
F
frappe-project-triage

frappe-project-triage

github.com/lubusin開発69199 回インストール12 週間前に更新
リポジトリ

frappe-project-triage について

Frappe プロジェクトの種類、インストール済みアプリ、バージョン、利用可能なツールを素早く調べるためのスキルです。初期調査やコード変更前の確認に使えます。

主な機能

  1. 01プロジェクト構成と種類の特定
  2. 02インストール済みアプリの確認
  3. 03Frappe バージョンの確認
  4. 04ツールと開発モードの把握

活用シーン

  1. 01Frappe プロジェクトを開いた際の環境調査
  2. 02コード変更前のアプリとバージョン確認
  3. 03デバッグ時のプロジェクトツール把握

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/lubusin/frappe-skills --skill frappe-project-triage

インストール後、Claude Code で/frappe-project-triageを入力して読み込まれたか確認します。

詳細

Frappe プロジェクトのトリアージ

Frappe プロジェクトをすばやく分析し、種類、インストール済みアプリ、バージョン、利用可能なツールを確認します。

使用するタイミング

  • 新しい Frappe プロジェクトを開いたときの最初の手順として
  • コードを変更する前に、コードベースを把握するため
  • デバッグ時に、関係するアプリやバージョンを特定するため
  • 開発環境(Bench と Frappe Manager)を特定するため

必要な入力

  • プロジェクトのルートパス(apps/、sites/、またはアプリのコードがある場所)
  • シェルコマンドを実行する権限(バージョンの確認用)

手順

0) プロジェクト構造を特定する

次のパターンを確認します。

パターンプロジェクトの種類
apps/ と sites/ ディレクトリBench インストール
frappe を含む docker-compose.ymlFrappe Manager サイト
frappe を含む pyproject.toml または setup.pyスタンドアロンアプリ
doctype/ ディレクトリアプリモジュール内
1) インストール済みアプリを検出する
# Inside Bench/FM shell
bench --site <site> list-apps

# Or check apps directory
ls apps/
2) Frappe のバージョンを確認する
# Inside Bench/FM shell
bench version

# Or check from Python
bench --site <site> console
>>> frappe.__version__
3) ツールを特定する
ファイル/ディレクトリツール
Procfile標準の Bench
docker-compose.ymlDocker/FM
cypress/UI テストを利用可能
.github/workflows/CI を設定済み
@frappe/* を含む package.jsonJS ビルドツール
4) 開発モードを確認する
# Check site config
bench --site <site> console
>>> frappe.conf.developer_mode

検証

  • プロジェクトの種類を特定済み(bench/FM/スタンドアロンアプリ)
  • インストール済みアプリを一覧表示済み
  • Frappe のバージョンを確認済み
  • 開発モードの状態を確認済み
  • 利用可能なツールを記録済み

失敗例/デバッグ

  • サイトが見つからない:アプリのディレクトリ内にいる可能性があります。bench のルートに移動してください
  • bench コマンドが見つからない:bench 環境ではありません。fm shell を使うか、venv を有効にしてください
  • 権限エラー:正しいユーザーとして実行しているか確認してください

エスカレーション

プロジェクト構造が不明確な場合:

  1. アプリのルートを特定するために hooks.py を探します
  2. bench のルートを特定するために sites/common_site_config.json を探します
  3. アプリのリポジトリを特定するために git のリモートを確認します

出力形式

トリアージの後、次の内容を記録します。

Project Type: [bench|frappe-manager|standalone-app]
Frappe Version: X.Y.Z
Installed Apps: [list]
Developer Mode: [yes|no]
Tooling: [list]
Site Name: <site>

この出力を使って、適切なスキルに振り分けます。

  • DocType の作業 → frappe-doctype-development
  • API の作業 → frappe-api-development
  • テスト → frappe-testing
  • エンタープライズパターン → frappe-enterprise-patterns

ガードレール

  • トリアージを完了する前にコードを変更しないでください。まずプロジェクトを把握してください
  • 標準の動作を上書きする可能性のあるカスタムアプリを確認してください
  • サイト固有のコマンドを実行する前にサイトが存在することを確認してください
  • スキーマを変更する前にdeveloper_mode を確認してください(DocType の変更に必要です)
  • Node.js のバージョンを記録してください。フロントエンドのビルドには互換性のある Node が必要です(v15 では通常 18 以上)

よくある間違い

間違い失敗する理由修正方法
サイトを指定せずに bench migrate を実行する誤ったサイト、またはデフォルトのサイトに影響します必ず --site sitename を指定してください
ERPNext がインストール済みだと思い込むインポートエラーや DocType の不足が発生しますまず list-apps の出力を確認してください
FM シェルのコンテキストがないbench コマンドが見つかりませんまず fm shell sitename を実行してください
ディレクトリ階層が違うコマンドが失敗しても何も表示されませんbench のルート(apps/ がある場所)に移動してください
カスタムアプリによる上書きを無視する予期しない動作が発生しますhooks.py で上書きを確認してください
Python のバージョンを確認しない構文エラーや互換性エラーが発生しますv15 以降では Python >= 3.10 であることを確認してください

コメント