com um clique
log-ai-conversation
AIとの会話をまとめてGitHub IssueまたはPull Requestにコメントとして追加する。手動で呼び出して使用。
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
AIとの会話をまとめてGitHub IssueまたはPull Requestにコメントとして追加する。手動で呼び出して使用。
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
tmuxセッション内で実際のNeovimを起動し、send-keys / capture-pane で操作・観察してデバッグする。 Neovimの起動確認、プラグインエラーの調査、checkhealthの確認、設定変更の動作確認、 「nvimをデバッグして」「起動確認して」「checkhealth見て」などのリクエストで使用する。 Agentがnvimを直接実行する必要が生じた場合も、必ずこのスキルの手順を使うこと。
AIとの会話を、ユーザーの思考メモ(Self)も含めてGitHub IssueまたはPull Requestにコメントとして追加する実験版。手動で呼び出して使用。
タスクについて詳細に調査し、構造化されたまとめを出力する。ultrathinkモードで深く考察し、背景、期限、過去の対応方法、確認事項を調査。すべての情報に出典リンクを明記し、推測は必ず明示する。
会話文脈から GitHub issue を作成する。「issueを作って」「issue立てて」等のリクエストで使用。本文は「背景 / やりたいこと / 配慮してほしいこと」の3セクション構成。「背景・やりたいこと」は背景と What(何をやりたいか)に集中し How(実装方法)は書かない。「配慮してほしいこと」は任意(省略可)で制約・要望を書く。
AI Agentの説明で理解できない部分を、前提知識なしで噛み砕いて説明する。会話中にその場で呼び出して使う。用語の定義と、なぜそれが重要かを中心に解説する。
Agentの作業を止めずに済む場面でtmuxを活用する。判断軸は「このコマンドの完了を同期的に待つとAgentの作業が止まるか」。止まらない(数秒で終わる確認コマンド)ならBash直接。止まるが管理不要(所要時間が不確実、一度きりの非同期実行)ならtmux直接利用(tmux new-session -d)。止まる上に管理も必要(長時間ビルド・テスト・dev server・watcher・並列検証・対話的CLI・ログ永続化)ならこのスキルを呼び出してジョブ管理する。
| name | log-ai-conversation |
| description | AIとの会話をまとめてGitHub IssueまたはPull Requestにコメントとして追加する。手動で呼び出して使用。 |
| allowed-tools | Bash, Read, Write, mcp__acp__Read, WebFetch |
| argument-hint | [--confirm] |
| disable-model-invocation | true |
現在の会話をまとめて、GitHub IssueまたはPull Requestにコメントとして追加します。
このスキルは以下のいずれかで呼ばれます:
/log-ai-conversation を実行(フォアグラウンド実行)AgentClaudeLogConversation コマンド経由で fork 先セッション内で実行(バックグラウンド実行)後者の場合、メインセッションは fork 先を分割ペインで起動した直後に会話を継続できます。fork 先はこのスキルを実行し、完了後も終了せずペインに残ります(ユーザーが確認後に閉じる)。いずれの呼び出しでも、スキル本体の処理は同じです。
octo://で始まるバッファ)が開いている場合
判断基準:
## {トピック} で見出しをつける省略しすぎない。以下の要素を含めることをデフォルトとする:
「後から読み返して、何をなぜどうやったか再現できる」レベルを目指す。要約ではなく記録。
直前コメントの確認コマンド:
# Issueの場合(直近2件)
gh issue view {number} --repo {owner/repo} --json comments --jq '.comments[-2:]'
# PRの場合(直近2件)
gh pr view {number} --repo {owner/repo} --json comments --jq '.comments[-2:]'
コードブロック + GitHub permalinkを併記する:
-- コード内容
https://github.com/{owner}/{repo}/blob/{commit}/{path}#L{start}-L{end}
permalinkのみを<details>で折りたたむ:
# コミットハッシュを取得
git log -1 --format='%H' -- {file_path}
# リモートURLからowner/repoを取得
git remote get-url origin | sed 's|.*github.com[:/]||' | sed 's|\.git$||'
--confirm 指定時(確認あり): ファイルに書き出し、パスを提示したあと、ユーザーの承認を得てから投稿する引数の判定は args に --confirm が含まれているかで行う。
コメント本文は必ず一時ファイルに書き出す。エスケープの罠(バックティック・$ 展開)を構造的に回避するため、gh にはファイル経由(-F)で渡す。HEREDOCは使わない。
# ファイルパスは投稿先に応じて命名(上書き前提・投稿後も残す)
body_file="/tmp/log-ai-conversation-${type}-${number}.md" # type: issue | pr
本文の書き出しは Write ツールで行う。
書き出した本文ファイルのパスをチャットに提示する。Neovimで開いて内容を確認・修正できるようにするため:
コメント本文: /tmp/log-ai-conversation-issue-123.md
Neovimで開く場合(ユーザー側の操作):
:e /tmp/log-ai-conversation-issue-123.md
確認モードに応じて実行タイミングを切り替える:
--confirm: ユーザーに「このコメントを{Issue/PR} #{number} に追加してよいですか?」と確認し、承認した場合のみ実行# Issueの場合
gh issue comment {number} --repo {owner/repo} -F "${body_file}"
# PRの場合
gh pr comment {number} --repo {owner/repo} -F "${body_file}"
投稿後は投稿先URLとファイルパスを併せて提示する(あとから Neovim で本文を確認できるよう、ファイルは残す)。
以下はlazygitのworktree操作についてAIと会話した内容をまとめた例です。
## lazygitでworktree viewが表示されない
lazygitでworktree viewが表示されない問題を調査した。
設定ファイルを確認したところ、`]`/`[`でタブ移動してWorktreesタブへアクセスできることがわかった。
また、設定ファイルにtypoがあることも発見した。
```yaml
screenMode: "normal" # "nomarl" から修正
```
https://github.com/happy663/dotfiles/blob/xxx/conf/.config/lazygit/config.yml#L6
参考:
- https://raw.githubusercontent.com/jesseduffield/lazygit/master/docs/keybindings/Keybindings_ja.md
## lazygit終了後にworktreeのディレクトリが反映されない
Neovim経由でlazygitを使っているため、lazygit内でworktreeを切り替えても親シェルのcwdは変わらない。
次回起動時に元のディレクトリから始まってしまう問題があった。
`LAZYGIT_NEW_DIR_FILE`を使ってlazygit終了時にNeovimのcwdを同期する処理を追加した。
```lua
local lazygit_new_dir_file = vim.fn.stdpath("state") .. "/lazygit-newdir"
vim.env.LAZYGIT_NEW_DIR_FILE = lazygit_new_dir_file
local function sync_cwd_from_lazygit()
if vim.fn.filereadable(lazygit_new_dir_file) ~= 1 then
return
end
local lines = vim.fn.readfile(lazygit_new_dir_file)
pcall(vim.fn.delete, lazygit_new_dir_file)
local new_dir = lines[1]
if not new_dir or new_dir == "" or vim.fn.isdirectory(new_dir) ~= 1 then
return
end
vim.cmd("cd " .. vim.fn.fnameescape(new_dir))
end
```
https://github.com/happy663/dotfiles/blob/xxx/conf/.config/nvim/lua/plugins/git/lazygit.lua#L20-L37
qで終了すると反映され、Shift+Qだと反映しない。
## worktreeとbranchの違いがわからなかった
「同じmainを複数worktreeで同時checkoutできない」の意味が最初わからなかった。
何度か質問して理解した内容:
- worktreeは「作業ディレクトリ」を増やすもの
- branchは「履歴の線」で、worktreeごとに1つチェックアウトする
- 同じブランチ名を複数worktreeで同時に使うことはGitが禁止している
つまり:
- OK: ~/dotfiles = main, ~/dotfiles-wt = feat/x
- OK: ~/dotfiles = main, ~/dotfiles-wt = detached(mainのコミット)
- NG: ~/dotfiles = main, ~/dotfiles-wt = main