Skip to content

Instantly share code, notes, and snippets.

@renoinn
Created June 1, 2025 14:02
Show Gist options
  • Select an option

  • Save renoinn/fe7e4caff326c7c408285ea338bb2b01 to your computer and use it in GitHub Desktop.

Select an option

Save renoinn/fe7e4caff326c7c408285ea338bb2b01 to your computer and use it in GitHub Desktop.
Geminiに質問させて指示書を作らせる。
これからJulesを利用して、CLIアプリケーションを開発してもらうのですが、Julesに渡すプロンプトを作成してほしいです。必要な事項を質問してくれたら答えていくので、結果をmarkdown形式でまとめてください。
---
# CLIアプリケーション開発プロンプト
**アプリケーション名:** (仮) VersionManager
**目的:** ユーザー自身がインストールしたアプリケーションのバージョン情報を一元的に管理し、最新バージョンの確認などを容易にするCLIツール。
**ターゲットユーザー:** ターミナルを頻繁に利用し、zshなどのシェル環境をカスタマイズしている開発者。
**主要な機能とコマンド:**
* **追加 (add):**
* 管理対象のアプリケーションを登録する。
* アプリケーション名と現在のバージョンをユーザーに入力させる。
* **削除 (remove):**
* 登録済みのアプリケーションを管理対象から削除する。
* 削除するアプリケーション名をユーザーに指定させる。
* **一覧表示 (list):**
* 現在管理しているアプリケーションの一覧とそのバージョンを表示する。
* **バージョン確認 (check):**
* 管理しているアプリケーションの最新バージョンをオンラインで確認し、現在のバージョンと比較して表示する。
* 特定のアプリケーションを指定して最新バージョンを確認できるオプションも用意する。
**データ形式:**
* 管理するアプリケーションの情報はTOML形式のファイルに保存する。
* TOMLファイルの構造は、アプリケーション名とバージョンをキーと値のペアで格納する形式とする。(例:`{"app_name" = "current_version"}`)
**Julesへの指示:**
上記の目的、ターゲットユーザー、機能、データ形式に基づき、CLIアプリケーション「VersionManager」を開発してください。具体的には、以下の点を考慮してください。
1. **コマンドラインインターフェース:** ユーザーが直感的かつ効率的に操作できるコマンドラインインターフェースを設計してください。
2. **TOMLファイルの操作:** TOMLファイルの読み込み、書き込み、更新処理を実装してください。ファイルの存在しない場合の新規作成処理も考慮してください。
3. **バージョン情報の取得:** アプリケーションの最新バージョンをどのように取得するか(例:特定のURLへのアクセス、APIの利用など)の具体的な方法を検討し、実装してください。汎用的な方法、またはいくつかの一般的なアプリケーションに対応できる柔軟性を持たせることを検討してください。
4. **エラーハンドリング:** ユーザーの入力ミスや、ネットワークエラー、ファイル操作のエラーなど、起こりうるエラーに対して適切なエラーメッセージを表示するようにしてください。
5. **使いやすさ:** 開発者にとって使いやすいCLIツールとなるように、コマンド名やオプション名、出力形式などを工夫してください。ヘルプメッセージや簡単なドキュメントの自動生成機能も検討してください。
**補足:**
* 管理対象の追加・削除はユーザー自身が行うため、アプリケーションのインストールやアンインストール機能は含めません。
* 最新バージョンのチェック機能は、実現可能な範囲で実装してください。すべてのアプリケーションに対応することが難しい場合は、一般的なアプリケーション(例:Node.js, Pythonなど)に絞るなどの考慮をしてください。
---
このプロンプトで、JulesにCLIアプリケーションの開発を依頼できるかと思います。もし他に伝えたいことや、修正点があれば教えてください。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment