Programmer Agent Memory¶
📁 docs/agent_memory.md
プロジェクト固有のパターン¶
認証情報の読み込みパターン¶
Credentials/ディレクトリはD:/Kazuma_Teramachi/MyLab/Credentials/に集約- Pathは
Path(__file__).parent...で相対的に解決する - JSON形式:
{"api_key": "...", "created_at": "YYYY-MM-DD", "description": "..."}
posts_output/ のMDフォーマット¶
---区切り線以降が投稿本文- メタデータ: テーマ・タイプ・モデル・生成日時
- generate_posts.py で生成(Ollama/Gemini API両対応)
affiliate-agent-teams の成果物配置¶
- レポート:
projects/affiliate-agent-teams/reports/implementation/ - スケジューラ状態:
projects/affiliate-agent-teams/reports/implementation/state.json
主要スクリプト¶
generate_posts.py¶
- パス:
projects/adult-affiliate-x/generate_posts.py - 機能: Ollama/Gemini API でX投稿文を生成してday01.md〜に保存
- CREDENTIALS_PATH:
Credentials/gemini_api.json
scheduler.py¶
- パス:
projects/affiliate-agent-teams/reports/implementation/scheduler.py - 機能: 1日3投稿(7:00/12:00/21:00 JST)のキュー管理・投稿
- API: Buffer または tweepy(--api引数で切り替え)
- --dry-run オプション対応
- state.json で重複防止・進行管理
zenn-likes-digest の構成¶
- パス:
projects/zenn-likes-digest/ - 機能: Zennいいね記事 → Gemini要約 → Obsidian保存 + Discord通知
- zenn_fetcher.py: Zenn公開API方式に変更済み(旧: Playwright スクレイピング)
- API:
GET https://zenn.dev/api/articles?liked_by={username}&count=48&order=liked_at&page={n} - ログイン不要、playwright不要
- 問題の原因: 旧スクレイパーが /dashboard/library のスクロールを認識できず常に16件固定で停止していた(実際は480件超)
- config
zenn.default_limit: 20で初回移行時のGeminiコストを制限できる - 状態管理:
state/processed_articles.json(処理済みURL保存)
techblog-collector の構成¶
- パス:
projects/techblog-collector/ - 機能: 12社テックブログのRSS収集 → Gemini要約 → Obsidian保存
- 保存先:
vault/Resources/TechBlogs/{company}/{YYYYMM}/{YYYYMMDD}_{title}.md - 状態管理:
data/processed.json(プロジェクト相対パス、StateManager で管理) - 認証:
Credentials/vertex_ai_config.json(vertex_ai / api_key 両対応) - summarizer.py は zenn-likes-digest から
_load_genai_clientをそのままコピーし、company/tech_stack/difficulty フィールドを追加
task_sync の構成¶
- パス:
scripts/task_sync/ - 機能: Google Tasks ↔ GitHub Issues 双方向同期
- OAuth認証:
projects/project-manager/src/auth.pyのget_oauth_credentialsを再利用 - import方法:
sys.path.insert(0, str(_MYLAB_ROOT / "projects" / "project-manager")) - 状態管理:
scripts/task_sync/data/sync_state.json - 認証情報:
Credentials/google/oauth_client_secret.json,Credentials/task_sync_oauth_token.json - 実行:
python -m scripts.task_sync.main sync [--dry-run] - gh CLI環境変数:
GH_CONFIG_DIR="/c/Users/kazuma/AppData/Roaming/GitHub CLI"必須 - sync_labels (config.yaml):
["now", "task-sync"]が付いたIssueのみ同期対象
Windowsタスクスケジューラ設定¶
- PowerShell で
Register-ScheduledTaskを使う - バッチファイル経由が最も確実
- 投稿10分前(6:50/11:50/20:50)にスケジューラを起動する設計が安全