mcpField
P
pre-session-end

pre-session-end

github.com/gjkim42エージェントワークフロー01.7k 回インストール7 週間前に更新
リポジトリ

pre-session-end について

Claude Code のセッション終了時に、再利用できる知見を整理し、プロジェクト固有の権限を確認するスキルです。スキルや設定の変更は、適用前に承認を求めます。

主な機能

  1. 01セッションの知見を分析
  2. 02スキル、コマンド、エージェント候補の提示
  3. 03プロジェクトと全体の権限を比較
  4. 04変更適用前の承認確認
  5. 05セッション終了時の要約

活用シーン

  1. 01完了した Claude Code セッションの振り返り
  2. 02反復ワークフローのスキル提案化
  3. 03プロジェクト固有の権限の特定
  4. 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:プロジェクトの権限をグローバル設定に反映する
  1. プロジェクト設定を読み取ります:.claude/settings.local.json
  2. グローバル設定を読み取ります:~/.claude/settings.json
  3. プロジェクト設定にはあり、グローバル設定にはない権限を特定します

プロジェクト設定にのみ見つかった権限ごとに:

権限を分類します:

  • 汎用ツールの権限: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:承認された変更を適用する
  1. 承認されたスキルの場合:~/.claude/skills/learned/ にファイルを作成します
  2. 承認された権限の場合:~/.claude/settings.json を更新します
  3. 適用した内容を報告します
ステップ 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.**

重要な注意事項

  • 自動で適用しない:変更ごとに必ずユーザーの確認を得てください
  • 既存の内容を保持する:明示的な承認なしに、既存のスキルや設定を上書きしないでください
  • 候補を絞る:繰り返された操作をすべて挙げるのではなく、本当に有用なパターンだけを提案してください
  • 価値を説明する:提案ごとに、保存する価値がある理由を説明してください

コメント