pre-session-end について
Claude Code のセッション終了時に、再利用できる知見を整理し、プロジェクト固有の権限を確認するスキルです。スキルや設定の変更は、適用前に承認を求めます。
主な機能
- 01セッションの知見を分析
- 02スキル、コマンド、エージェント候補の提示
- 03プロジェクトと全体の権限を比較
- 04変更適用前の承認確認
- 05セッション終了時の要約
活用シーン
- 01完了した Claude Code セッションの振り返り
- 02反復ワークフローのスキル提案化
- 03プロジェクト固有の権限の特定
- 04セッション終了時の承認済み変更の記録
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ gjkim42/ kanon-repo --skill pre-session-endインストール後、Claude Code で/pre-session-endを入力して読み込まれたか確認します。
詳細
セッション終了前スキル
Claude Code セッションを終了する前にこのスキルを実行し、学びを記録して有用な設定を引き継ぎます。
有効化するタイミング
- ユーザーが「done」「wrapping up」「ending session」「goodbye」「that's all」「I'm finished」と言ったとき
- 明示的な続行依頼がないまま重要な作業を完了したとき
- ユーザーが
/pre-session-endを明示的に実行したとき
ワークフロー
ステップ 0:英語の修正
ほかのステップに進む前に、このセッションでユーザーが最初に入力したプロンプトを、修正版またはより自然な表現にして提示します。
形式:
## English Correction
**Original:** [user's original prompt]
**Corrected:** [corrected/more natural version]
[If changes are significant, add brief explanation of what was changed and why]
- 修正が必要な場合にのみ、このセクションを含めます
- 文法、語句の選択、自然な表現に重点を置きます
- 説明は簡潔にします
ステップ 1:セッションから学習可能なパターンを分析する
チャット履歴を確認し、以下を特定します。
スキル候補
再利用可能なスキルにできるパターン:
- 繰り返し行われるワークフロー(例:「コミット前に必ずテストを実行する」)
- 効果があった問題解決の方法
- 複数回適用されたドメイン固有の知識
- 一貫して使用されたコードパターンやアーキテクチャ
コマンド候補
スラッシュコマンドにできる操作:
- 繰り返し実行された複数ステップの手順
- ツールでよく使われるパラメーターの組み合わせ
- プロジェクト固有のワークフロー
エージェント候補
エージェントにできる専門的なタスクのパターン:
- 複雑な複数ツールの操作
- 特定の専門知識やコンテキストが必要なタスク
- 繰り返し行われる分析やレビューのパターン
ステップ 2:抽出した学びを提示する
候補ごとに、ユーザーに以下を提示します。
**Potential Skill: [name]**
- Pattern observed: [description]
- Would save: [how it helps]
- Proposed location: ~/.claude/skills/learned/[name].md
Create this skill? [Yes/No/Edit]
ステップ 3:プロジェクトの権限をグローバル設定に反映する
- プロジェクト設定を読み取ります:
.claude/settings.local.json - グローバル設定を読み取ります:
~/.claude/settings.json - プロジェクト設定にはあり、グローバル設定にはない権限を特定します
プロジェクト設定にのみ見つかった権限ごとに:
権限を分類します:
- 汎用ツールの権限:
Bash(git:*)、Bash(npm:*)、Bash(docker:*)→ グローバルに設定すると有用な可能性があります - ドメイン固有の Web 権限:
WebFetch(domain:docs.example.com)→ 一般にも有用かどうかをユーザーに確認します - プロジェクト固有のパス:プロジェクトディレクトリのパスを含む権限 → 対象外とします(移植できません)
- MCP サーバーの権限:
mcp__*→ ユーザーに確認します(プロジェクト固有の可能性があります)
必要なものだけを提示します:
**Permission found in project settings:**
`Bash(helm template:*)`
This permission allows: Running helm template commands
Currently: Project-only
Recommendation: [Useful globally / Project-specific]
Propagate to global settings? [Yes/No]
ステップ 4:承認された変更を適用する
- 承認されたスキルの場合:
~/.claude/skills/learned/にファイルを作成します - 承認された権限の場合:
~/.claude/settings.jsonを更新します - 適用した内容を報告します
ステップ 5:セッションの要約
簡潔な要約を提示します。
## Session Wrap-Up Complete
**Learnings captured:**
- [X] Created skill: skill-name
- [X] Created command: command-name
- [ ] Skipped: pattern-name (user declined)
**Permissions propagated:**
- [X] Bash(helm:*) → global
- [ ] WebFetch(domain:internal.corp) → kept project-only
**Ready to end session.**
重要な注意事項
- 自動で適用しない:変更ごとに必ずユーザーの確認を得てください
- 既存の内容を保持する:明示的な承認なしに、既存のスキルや設定を上書きしないでください
- 候補を絞る:繰り返された操作をすべて挙げるのではなく、本当に有用なパターンだけを提案してください
- 価値を説明する:提案ごとに、保存する価値がある理由を説明してください
コメント
Markdown 対応