以下の文章は Claude Code が作成したものです。
CLAUDE.md
このファイルは、このリポジトリでコードを扱う際のClaude Code (claude.ai/code)へのガイダンスを提供します。
プロジェクト概要
esa-journalは、esa.ioから作業ログをダウンロードし、OpenAIのAPIを使用して要約を生成するプロジェクトです。
主要コンポーネント
- esa.ioアクセス: esa.io APIへのアクセスにはRubyを使用
- 要約生成: OpenAI APIを使用したPython
- 作業ログカテゴリ: "結城浩の作業ログ"
- URLパターン:
https://hyuki.esa.io/#path=%2F%E7%B5%90%E5%9F%8E%E6%B5%A9%E3%81%AE%E4%BD%9C%E6%A5%AD%E3%83%AD%E3%82%B0%2F{year}%2F{month}%2F{day}
環境変数
JOURNAL_ESA_TEAM
: esa.ioのチーム名JOURNAL_ESA_ACCESS_TOKEN
: esa.ioのアクセストークンOPENAI_API_KEY
: OpenAI APIキー
開発コマンド
新規プロジェクトのため、以下のコマンドを実装する必要があります:
Rubyセットアップ(esa.ioアクセス用)
# 依存関係のインストール(Gemfileが作成された後)
bundle install
# esaログダウンローダーの実行
ruby download_esa_logs.rb
Pythonセットアップ(OpenAI要約用)
# 仮想環境の作成
python -m venv venv
source venv/bin/activate # macOS/Linux
# 依存関係のインストール(requirements.txtが作成された後)
pip install -r requirements.txt
# 要約プログラムの実行
python summarize_logs.py
アーキテクチャ
プロジェクトは以下のように構成されるべきです:
-
esa.ioダウンローダー(Ruby)
- チーム名とアクセストークンを使用してesa.io APIに接続
- 指定されたカテゴリから作業ログをダウンロード
- Python処理に適した形式(JSON推奨)でデータをエクスポート
-
ログ要約プログラム(Python)
- Rubyコンポーネントからエクスポートされたデータを読み取り
- OpenAI APIを使用してログを処理
- 週次要約を生成
-
データフロー
- Rubyスクリプトがログをダウンロード → JSONファイル → Pythonスクリプトが処理 → 要約出力
(2025年6月8日)