@aigne/cliへの貢献に関心をお寄せいただき、ありがとうございます。皆様のご協力は、AIGNEの開発体験を向上させる上で非常に貴重です。バグの修正、新機能の提案、ドキュメントの改善など、どのような貢献も歓迎いたします。
このガイドでは、開発環境のセットアップ、テストの実行、そして変更を提出するための手順を説明します。
はじめに
@aigne/cliパッケージはaigne-frameworkモノレポの一部です。作業を開始するには、メインリポジトリをクローンして依存関係をインストールする必要があります。
1. リポジトリをクローンする
まず、GitHubからaigne-frameworkリポジトリをローカルマシンにクローンします。
Git Clone
git clone https://github.com/AIGNE-io/aigne-framework.git
cd aigne-framework2. 依存関係をインストールする
このプロジェクトでは、主要なパッケージマネージャーとしてbunを使用しています。モノレポのルートから、必要なすべての依存関係をインストールしてください。
Bun Install
bun installこれにより、@aigne/cliを含むモノレポ内のすべてのパッケージの依存関係がインストールされます。
開発ワークフロー
CLIに関するすべての開発コマンドは、パッケージディレクトリであるpackages/cli内から実行する必要があります。
コードのビルド
src/にあるTypeScriptのソースコードをdist/ディレクトリ内のJavaScriptにコンパイルするには、ビルドコマンドを実行します。このプロセスはtsconfig.build.jsonによって設定されています。
Build Command
bun run buildリンティングと型チェック
静的解析を実行してコードの品質を確保するために、TypeScriptコンパイラを使用しています。JavaScriptファイルを生成せずに型エラーをチェックするには、lintコマンドを実行してください。
Lint Command
bun run lintテストの実行
CLIが正しく機能することを確認するために、包括的なテストスイートを用意しています。テストには以下のスクリプトが利用できます。
| コマンド | 説明 |
|---|---|
bun run test | CLIソース(test:src)とプロジェクトテンプレート(test:templates)のテストを含む、完全なテストスイートを実行します。 |
bun run test:src | CLIのコア機能に関する単体テストと統合テストのみを実行します。 |
bun run test:templates | aigne createによって生成されたプロジェクトテンプレート専用のテストを実行します。 |
bun run test:coverage | テストスイート全体を実行し、コードカバレッジレポートを生成します。 |
プルリクエストを提出する前に、すべてのテストがパスすることを確認してください。
コードスタイル
プロジェクト全体で一貫したコードスタイルを維持するために、Prettierを使用しています。変更をコミットする前に、コードがフォーマットされていることを確認してください。ほとんどのエディタでは、保存時にファイルを自動的にフォーマットするよう設定できます。
プルリクエストの提出
変更を加え、ビルドおよびテストスクリプトで検証が完了したら、プルリクエストを提出する準備は完了です。
- GitHubでリポジトリをフォークします。
- 機能またはバグ修正のために新しいブランチを作成します:
git checkout -b your-feature-name。 - 明確で分かりやすいコミットメッセージを付けて変更をコミットします。
- ブランチをフォークにプッシュします:
git push origin your-feature-name。 - あなたのフォークから
AIGNE-io/aigne-frameworkリポジトリのmainブランチへプルリクエストを開きます。 - プルリクエストに変更点の詳細な説明を記載し、課題トラッカーの関連する課題を参照します。
いただいたコントリビューションは、できるだけ早くレビューします。AIGNEの改善にご協力いただき、誠にありがとうございます。