auto-project-management/INSTALL.md
柴田貴司 a892a3c87c Initial commit: Claude Code Gantt Chart Generator
- 対話型Ganttチャート自動生成システム
- Claude Code スキル定義 (/gantt, /gantt-update)
- Google Apps Script連携
- Todoist・Discord統合機能
- 完全なセットアップドキュメント

🤖 Generated with Claude Code
2026-01-01 17:24:17 +09:00

7.7 KiB
Raw Blame History

インストールガイド

Claude Code対話型Ganttチャート自動生成システムのセットアップ手順を説明します。

📋 前提条件

  • Node.js: v20.x以上
  • npm: v10.x以上
  • Claude Code CLI: インストール済み
  • Google Cloud Platform: アカウント作成済み
  • Google Apps Script: 基本的な知識

🚀 セットアップ手順

1. リポジトリのクローン

git clone https://github.com/{your-username}/claude-gantt-chart.git
cd claude-gantt-chart

2. 依存関係のインストール

npm install

3. 環境変数の設定

.env.exampleをコピーして.envを作成:

cp .env.example .env

.envファイルを編集:

# Google Drive設定
GOOGLE_DRIVE_FOLDER_ID=your_folder_id_here
GOOGLE_CLIENT_ID=your_client_id_here
GOOGLE_CLIENT_SECRET=your_client_secret_here
GOOGLE_REDIRECT_URI=http://localhost:19204/oauth2callback

# スプレッドシートIDDiscord通知用、オプション
GOOGLE_SPREADSHEET_ID=your_spreadsheet_id_here

# Discord通知設定オプション
DISCORD_WEBHOOK_URL=your_webhook_url_here

# Todoist API設定オプション
TODOIST_API_KEY=your_todoist_api_token_here

4. Google Cloud Platformの設定

4.1 プロジェクト作成

  1. Google Cloud Consoleにアクセス
  2. 新規プロジェクトを作成

4.2 Google Drive API有効化

  1. 「APIとサービス」→「ライブラリ」
  2. 「Google Drive API」を検索して有効化

4.3 OAuth 2.0認証情報の作成

  1. 「APIとサービス」→「認証情報」
  2. 「認証情報を作成」→「OAuth 2.0 クライアントID」
  3. アプリケーションの種類: デスクトップアプリ
  4. リダイレクトURI: http://localhost:19204/oauth2callback
  5. クライアントIDとシークレットを.envに設定

4.4 Google Driveフォルダ作成

  1. Google Driveで新規フォルダを作成例: Gantt-JSON-Files
  2. フォルダURLからフォルダIDを取得:
    • URL形式: https://drive.google.com/drive/folders/{FOLDER_ID}
    • {FOLDER_ID}の部分を.envGOOGLE_DRIVE_FOLDER_IDに設定

5. Google OAuth認証

初回認証トークンを取得:

npm run gantt:auth

ブラウザが開き、Googleアカウントでログイン・認証します。 認証完了後、.google-token.jsonが自動生成されますgitignoreに含まれます

6. TypeScriptのビルド

npm run build

7. Google Apps Scriptの設定

7.1 スプレッドシート作成

  1. Google Sheetsで新規スプレッドシートを作成
  2. スプレッドシートのURLからIDを取得:
    • URL形式: https://docs.google.com/spreadsheets/d/{SPREADSHEET_ID}/edit
    • {SPREADSHEET_ID}.envGOOGLE_SPREADSHEET_IDに設定(オプション)

7.2 Apps Scriptプロジェクト作成

  1. スプレッドシートを開く
  2. 「拡張機能」→「Apps Script」
  3. 新規プロジェクトが作成されます

7.3 GASコードのコピー

gas/フォルダ内の全ファイルをApps Scriptエディタにコピー:

  • Config.gs
  • SheetManager.gs
  • GanttRenderer.gs
  • Code.gs

7.4 Config.gsの設定

Config.gsを開き、以下を設定:

const CONFIG = {
  DRIVE_FOLDER_ID: 'あなたのフォルダID',  // .envと同じ値
  DISCORD_WEBHOOK_URL: 'あなたのWebhook URL',  // オプション
  TODOIST_API_KEY: 'あなたのTodoist APIトークン',  // オプション
  // ...その他の設定
};

7.5 時間トリガーの設定

  1. Apps Scriptエディタで「トリガー」アイコン)をクリック
  2. 「トリガーを追加」をクリック
  3. 以下のように設定:
    • 実行する関数: checkForNewJsonFiles
    • イベントのソース: 時間主導型
    • 時間ベースのトリガーのタイプ: 分ベースのタイマー
    • 時間の間隔: 1分おき
  4. 「保存」をクリック

8. Todoist統合オプション

Todoistと連携する場合:

8.1 Todoist APIトークン取得

  1. Todoist設定にアクセス
  2. 「開発者」タブ→「APIトークン」をコピー
  3. .envTODOIST_API_KEYに設定
  4. Config.gsTODOIST_API_KEYにも設定

8.2 Todoistトリガー設定

Apps Scriptで以下のトリガーを追加:

  1. Todoistタスク同期:

    • 実行する関数: syncTodoistTasks
    • イベントのソース: 時間主導型
    • 時間の間隔: 30分おき
  2. 期日切れタスク通知:

    • 実行する関数: sendOverdueTasksNotification
    • イベントのソース: 時間主導型
    • 時間ベースのトリガーのタイプ: 日タイマー
    • 時刻: 午前9時10時

9. Discord通知設定オプション

Discord通知を有効にする場合:

  1. Discordサーバーで「サーバー設定」→「連携サービス」→「ウェブフック」
  2. 新しいウェブフックを作成
  3. ウェブフックURLをコピー
  4. .envDISCORD_WEBHOOK_URLに設定
  5. Config.gsDISCORD_WEBHOOK_URLにも設定

動作確認

1. Claude Codeで動作確認

# プロジェクトディレクトリで
claude code

Claude Codeのプロンプトで:

/gantt

スキルが正常に認識されれば成功です。

2. JSONファイル生成テスト

  1. /ganttコマンドで対話形式でプロジェクト情報を入力
  2. 完了後、以下を実行:
npm run gantt:save
  1. output/フォルダにJSONファイルが生成されることを確認
  2. Google Driveにアップロードされることを確認

3. Ganttチャート生成テスト

  1. JSONファイルがGoogle Driveにアップロードされた後、1分以内に自動処理される
  2. スプレッドシートに以下のシートが作成されることを確認:
    • プロジェクト一覧
    • 全プロジェクトタスク
    • 期日切れタスク
    • 個別Ganttチャート

🛠️ トラブルシューティング

Q1. OAuth認証がうまくいかない

A: 以下を確認:

  1. Google Drive APIが有効化されているか
  2. .envのクライアントID・シークレットが正確か
  3. リダイレクトURIが正確に設定されているか

Q2. JSONファイルが生成されない

A: 以下を確認:

  1. npm run buildを実行したか
  2. TypeScriptのコンパイルエラーがないか
  3. npm run gantt:saveを実行したか

Q3. Ganttチャートが自動生成されない

A: 以下を確認:

  1. 時間トリガーが正しく設定されているか
  2. Config.gsDRIVE_FOLDER_IDが正しいか
  3. Apps Scriptの実行ログでエラーがないか
  4. JSONファイルが正しいフォルダにアップロードされているか

Q4. Todoistタスクが同期されない

A: 以下を確認:

  1. TODOIST_API_KEYが正しく設定されているか
  2. Todoistトリガーが正しく設定されているか
  3. testTodoistIntegration()関数で手動テストする

📚 次のステップ

🆘 サポート

問題が発生した場合:

  1. Issuesで報告
  2. トラブルシューティングセクションを確認
  3. Apps Scriptの実行ログを確認

📝 ライセンス

MIT License