指示書システム再構築提案: プリセット事前生成とinstructions整理

提案日: 2025-07-26

概要

AI指示書キットのinstructions以下の指示書システムを再構築し、プリセットの事前生成による効率化と従来指示書の整理を行う提案。モジュラーシステムの完成を受け、より効率的で保守性の高いシステムへの移行を目指す。

背景と課題

現在のシステム構造

  1. モジュラーシステム: 48個のモジュールと9個のプリセットが利用可能
  2. 従来の単一指示書: instructions以下に30+の個別指示書が存在
  3. キャッシュシステム: modular/cache/に一時的な生成ファイルを配置

特定された問題点

1. プリセット生成の非効率性

2. 指示書の重複と管理複雑性

3. 利用体験の問題

提案する解決策

方針1: プリセット事前生成システム

概要

よく使われるプリセットを事前に生成し、Git管理下に配置することで即座に利用可能にする。

実装詳細

新しいディレクトリ構造:

instructions/
├── ja/
│   ├── system/           # システム管理(現状維持)
│   ├── presets/          # 🆕 事前生成プリセット
│   │   ├── web_api_production.md
│   │   ├── data_analyst.md
│   │   ├── cli_tool_basic.md
│   │   └── ...(9プリセット)
│   └── legacy/           # 🆕 保持する特別な指示書
│       ├── agent/
│       └── specialist/
├── en/
│   ├── system/
│   ├── presets/          # 🆕 英語版プリセット
│   └── legacy/
└── cache/                # 現状通り(動的生成用)

対象プリセット

  1. web_api_production - WebAPI開発(最重要)
  2. cli_tool_basic - CLIツール開発(高頻度)
  3. data_analyst - データ分析(高頻度)
  4. business_consultant - ビジネスコンサル
  5. academic_researcher - 学術研究
  6. technical_writer - 技術文書作成
  7. project_manager - プロジェクト管理
  8. startup_advisor - スタートアップ支援
  9. blueprint_sample - サンプル用途

プリセット一括生成スクリプト

scripts/generate-all-presets.sh を新規作成済み:

# 全プリセットを日英両言語で生成
./scripts/generate-all-presets.sh

# 日本語のみ生成
./scripts/generate-all-presets.sh --lang ja

# 特定のプリセットのみ生成
./scripts/generate-all-presets.sh --preset web_api_production

# ドライラン(実行内容の確認)
./scripts/generate-all-presets.sh --dry-run

# 生成後に検証も実行
./scripts/generate-all-presets.sh --validate

スクリプトの主な機能:

方針2: 既存指示書の整理・分類

削除対象(モジュラー置換可能)

削除候補:
  coding/basic_code_generation.md:
    理由: "task_code_generation + 各種skillで完全に置き換え可能"
    代替: "cli_tool_basicプリセット + カスタマイズ"
  
  analysis/basic_data_analysis.md:
    理由: "data_analystプリセットで高機能版が利用可能"
    代替: "data_analystプリセット"
  
  writing/basic_text_creation.md:
    理由: "technical_writerプリセット + 関連スキルで代替"
    代替: "technical_writerプリセット"
  
  presentation/technical_design.md:
    理由: "task_presentation_design + skill_visual_communicationで代替"
    代替: "カスタムモジュール構成"

保持対象(特殊機能・高頻度利用)

保持:
  system/:
    理由: "システムコア機能、代替不可"
    場所: "instructions/ja/system/(現状維持)"
  
  agent/code_reviewer.md:
    理由: "コードレビュー特化、高頻度利用"
    場所: "instructions/ja/legacy/agent/"
  
  agent/python_expert.md:
    理由: "Python特化エージェント、専門性高い"
    場所: "instructions/ja/legacy/agent/"
  
  presentation/marp_specialist.md:
    理由: "Marp特化、技術特殊性高い"
    場所: "instructions/ja/legacy/specialist/"

方針3: ハイブリッド運用システム

使い分け基準

プリセット事前生成版:
  用途: "標準的なタスク、高速応答が必要"
  : "Webアプリ作って", "データ分析して", "CLIツール作成"
  
動的生成(従来通り):
  用途: "特殊要件の組み合わせ、カスタマイズ重視"
  : "ML + API + A/Bテスト", "特殊なスキル組み合わせ"
  
レガシー指示書:
  用途: "高度に特化した機能、頻繁利用"
  : "コードレビュー依頼", "Marpスライド作成"

ROOT_INSTRUCTION更新

プリセット優先の判定ロジックを更新:

  1. プリセット事前生成版をまず確認
  2. カスタマイズが必要なら動的生成
  3. 特殊機能ならレガシー指示書

実装計画

Phase 1: プリセット事前生成(1週間)

Day 1-2: インフラ構築

  1. 生成スクリプト作成 ✅ 完了
    • scripts/generate-all-presets.sh 作成済み
    • 全機能実装完了
  2. ディレクトリ構造準備
    mkdir -p instructions/ja/presets
    mkdir -p instructions/en/presets
    

Day 3-4: プリセット生成・配置

  1. 初回生成実行
    # ドライランで確認
    ./scripts/generate-all-presets.sh --dry-run
       
    # 実際に生成
    ./scripts/generate-all-presets.sh --validate
    
  2. 生成結果の確認
    • 各プリセットの内容確認
    • トークン数チェック
    • 必須要素の検証

Day 5: テストと調整

  1. 実際の使用テスト
    • 各プリセットでタスク実行
    • パフォーマンス測定
    • ユーザビリティ確認
  2. 微調整
    • 必要に応じてプリセット定義を修正
    • 再生成と検証

Phase 2: 指示書整理(1週間)

Day 6-7: 分析・分類

  1. 使用頻度分析
    # 既存指示書の利用パターン分析
    find instructions -name "*.md" -type f | grep -v system | sort
    
  2. 移行計画作成
    • 削除対象リスト確定
    • レガシー移行対象確定
    • 移行手順書作成

Day 8-9: 段階的移行

  1. レガシーディレクトリ作成
    mkdir -p instructions/ja/legacy/agent
    mkdir -p instructions/ja/legacy/specialist
    
  2. ファイル移動・削除
    • Git mvでファイル移動
    • 削除ファイルのリダイレクト情報作成

Day 10: システム統合

  1. ROOT_INSTRUCTION更新
    • プリセット優先ロジックの実装
    • パス更新
  2. ドキュメント作成
    • 移行ガイド
    • 新システム使用方法

Phase 3: 自動化・最適化(3日)

Day 11: CI/CD統合

  1. GitHub Actions設定
    name: Regenerate Presets
    on:
      push:
        paths:
          - 'modular/ja/modules/**'
          - 'modular/en/modules/**'
          - 'modular/presets/**'
       
    jobs:
      regenerate:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v3
          - name: Generate presets
            run: ./scripts/generate-all-presets.sh
          - name: Commit changes
            uses: EndBug/add-and-commit@v9
    
  2. 自動検証
    • プリセット整合性チェック
    • 破壊的変更の検出

Day 12-13: 運用開始・監視

  1. リリース
    • 変更のアナウンス
    • 使用方法の周知
  2. 監視とフィードバック
    • 利用状況の追跡
    • パフォーマンス測定
    • ユーザーフィードバック収集

期待される効果

1. パフォーマンス向上

2. 保守性向上

3. 利用体験向上

4. 開発効率向上

リスク分析と対策

リスク1: プリセット更新の複雑性

リスク: モジュール更新時にプリセットの再生成が必要 対策:

リスク2: 指示書削除による互換性問題

リスク: 既存ユーザーの依存指示書削除で利用不可 対策:

リスク3: プリセットの肥大化

リスク: プリセット数増加によるディスク使用量増大 対策:

成功指標

量的指標

質的指標

実装済みコンポーネント

generate-all-presets.sh

次のステップ

  1. このプロポーザルのレビュー・承認
  2. GitHub Issue作成(詳細タスク分解)
  3. Phase 1実装開始(プリセット事前生成)
    • generate-all-presets.sh実行
    • 生成結果の確認
    • 必要に応じた調整

補足情報

現在のプリセット一覧

  1. blueprint_sample
  2. web_api_production
  3. data_analyst
  4. startup_advisor
  5. cli_tool_basic
  6. business_consultant
  7. academic_researcher
  8. project_manager
  9. technical_writer

現在のモジュール統計

generate-all-presets.sh使用例

# 基本的な使用
./scripts/generate-all-presets.sh

# 検証付き生成
./scripts/generate-all-presets.sh --validate

# 特定言語のみ
./scripts/generate-all-presets.sh --lang ja

# 強制上書き
./scripts/generate-all-presets.sh --force --validate

# CI/CDでの使用
./scripts/generate-all-presets.sh --no-git

ライセンス情報