「開発日誌更新」「開発日誌作って」の言及時に使用。esa-llm-scoped-guardで開発日誌を新規作成・更新します。
View on GitHubsyou6162/claude-code-commands
syou6162-plugin
January 22, 2026
Select agents to install to:
npx add-skill https://github.com/syou6162/claude-code-commands/blob/main/skills/writing-dev-diary/SKILL.md -a claude-code --skill writing-dev-diaryInstallation paths:
.claude/skills/writing-dev-diary/# esa開発日誌の作成・更新 esaに開発日誌を投稿・更新するスキルです。`esa-llm-scoped-guard` CLIを使用して、許可されたカテゴリ配下の記事のみを安全に編集します。 ## 禁止事項 <important> - [ ] JSONファイルは必ず`.claude_work/dev_diary.json`に作成すること(**ファイル名固定**) - [ ] esa MCPの書き込み系ツール(`create_esa_post`, `update_esa_post`)は使用禁止。このスキルでは`esa-llm-scoped-guard` CLIのみ使用 - [ ] JSONスキーマは必ず`esa-llm-scoped-guard -help`で確認してから生成すること </important> ## 使用タイミング <trigger> 以下のトリガーワードで発動します: - **「開発日誌を作って」**: 検索なしで直接新規作成 - **「開発日誌を更新」+ esaのURL**: 指定されたURLの記事を更新 - **「開発日誌を更新」**(URLなし): 検索して関連記事を更新、なければ新規作成 </trigger> ## 実行手順 <procedure> ### 手順1: JSONスキーマを確認 最初に必ず最新のJSONスキーマを確認してください: ```bash esa-llm-scoped-guard -help ``` ### 手順2: トリガーによる条件分岐 <decision-criteria name="trigger-flow"> | トリガー | 既存記事取得 | 次の手順 | |----------|-------------|---------| | 「開発日誌を作って」 | なし | 手順4 | | 「開発日誌を更新」+ URL | あり(URL指定) | 手順3(共通サブルーチン) | | 「開発日誌を更新」(URLなし) | あり(検索) | 手順3(記事あり)/ 手順4(記事なし) | </decision-criteria> #### パターンA: 「開発日誌を作って」の場合 検索・取得をスキップして、**手順4(JSON生成)へ直行**してください。 #### パターンB: 「開発日誌を更新」+ URLの場合 1. ユーザーが提示したesaのURLから`post_number`を抽出(例: `https://yasuhisa.esa.io/posts/123` → `123`) 2. `mcp__esa-mcp-server__read_esa_post`で既存記事を取得: ``` postNumber: 123 ``` 3. 既存記事の内容を確認し、**手順3(共通サブルーチン)へ進む** #### パターンC: 「開発日誌を更新」(URLなし)の場合 1. `mcp__esa-mcp-server__search_esa_posts`で関連記事を検索: ``` query: "in:Claude Code/開発日誌" sort: "updated" order: "desc" perPage: 10 ``` 2. 会話コンテキストから現在のタスクを特定し、検索結果から最も関連性の高い記事を判断 3. **記事あり**: `mcp__esa-mcp-server__read_esa_post`で取得 → 更新モードで**手順3(共通サブルーチン)へ** 4. **記事なし**: 新規作成モードで**手順4へ** ### 手順3: 既存記事内のGitHub URL状態を確認(共通サブルーチン) 既存記事を取得した後、記事内のタスクに含まれるGitHub URL(PR/Issue)の現在の状態と内容を確認します。 1. `body.tasks`から`github_urls`を抽出(URLがなければ**手順4へ**) 2. 各URLの状態と内容をgh CLIで確認 <example name="gh-cli-status-check"> **PRの場合**: ```bash gh pr view <URL> --json state,isDraft,title,body ``` **Issueの場合**: ```bash gh issue view <URL> --json state,title,body ``` </example> 3. <github-status-mapping>に従ってGitHub状態を判定 4. <status-map