How to install session-logger
npx skills add https://github.com/charon-fan/agent-playbook --skill session-loggerFull instructions (SKILL.md)
Source of truth, from charon-fan/agent-playbook.
name: session-logger description: Saves conversation history to session log files. Use when user says "保存对话", "保存对话信息", "记录会话", "save session", or "save conversation". Automatically creates timestamped session log in sessions/ directory. allowed-tools: Read, Write, Edit, Bash
Session Logger
A skill for automatically saving conversation history to persistent session log files.
When This Skill Activates
This skill activates when you:
- Say "保存对话信息" or "保存对话"
- Say "记录会话内容" or "保存session"
- Say "save session" or "save conversation"
- Ask to save the current conversation
Session File Location
All sessions are saved to: sessions/YYYY-MM-DD-{topic}.md
What Gets Logged
For each session, log:
-
Metadata
- Date and duration
- Context/working directory
- Main topic
-
Summary
- What was accomplished
- Key decisions made
- Files created/modified
-
Actions Taken
- Checklist of completed tasks
- Pending follow-ups
-
Technical Notes
- Important code snippets
- Commands used
- Solutions found
-
Open Questions
- Issues to revisit
- Follow-up tasks
Session Template
# Session: {Topic}
**Date**: {YYYY-MM-DD}
**Duration**: {approximate}
**Context**: {project/directory}
## Summary
{What was accomplished in this session}
## Key Decisions
1. {Decision 1}
2. {Decision 2}
## Actions Taken
- [x] {Completed action 1}
- [x] {Completed action 2}
- [ ] {Pending action 3}
## Technical Notes
{Important technical details}
## Open Questions / Follow-ups
- {Question 1}
- {Question 2}
## Related Files
- `{file-path}` - {what changed}
How to Use
Option 1: Automatic Logging
Simply say:
"保存对话信息"
The skill will:
- Review the conversation history
- Extract key information
- Create/update the session file
Option 2: With Topic
Specify the session topic:
"保存对话,主题是 skill-router 创建"
Option 3: Manual Prompt
If auto-extraction misses something, provide details:
"保存对话,重点是:1) 创建了 skill-router,2) 修复了 front matter"
File Naming
| Input | Filename |
|---|---|
| "保存对话" | YYYY-MM-DD-session.md |
| "保存对话,主题是 prd" | YYYY-MM-DD-prd.md |
| "保存今天的讨论" | YYYY-MM-DD-discussion.md |
Session Log Structure
sessions/
├── README.md # This file
├── 2025-01-11-skill-router.md # Session about skill-router
├── 2025-01-11-prd-planner.md # Session about PRD planner
└── 2025-01-12-refactoring.md # Session about refactoring
Privacy Note
Session logs are stored in sessions/ which is in .gitignore.
- Logs are NOT committed to git
- Logs contain your actual conversation
- Do not include secrets, credentials, tokens, or private user data unless they are explicitly required and redacted
Quick Reference
| You say | Skill does |
|---|---|
| "保存对话信息" | Creates session log with today's date |
| "保存今天的对话" | Creates session log |
| "保存session" | Creates session log |
| "记录会话" | Creates session log |
Best Practices
- Save at key milestones: After completing a feature, fixing a bug, etc.
- Be specific with topics: Helps when searching later
- Include code snippets: Save important solutions
- Track decisions: Why did you choose X over Y?
- List pending items: What to do next time
Rich Content Extraction (for Self-Improving Agent)
When triggered by other skills via hooks, session-logger extracts structured data for learning:
Skill Context Capture
When a skill completes, capture:
## Skill Execution Context
**Skill**: {skill-name}
**Trigger**: {user-invoked | hook-triggered | auto-triggered}
**Status**: {completed | error | partial}
**Duration**: {approximate time}
### Input Context
- User request: {original request}
- Files involved: {list of files}
- Codebase patterns detected: {patterns}
### Output Summary
- Actions taken: {list}
- Files modified: {list with changes}
- Decisions made: {key decisions}
### Learning Signals
- What worked well: {successes}
- What could improve: {areas for improvement}
- Patterns discovered: {new patterns}
- Errors encountered: {errors and resolutions}
Error Context Capture
When a skill encounters errors:
## Error Context
**Error Type**: {type}
**Error Message**: {message}
**Stack Trace**: {if available}
### Resolution Attempted
- Approach: {what was tried}
- Result: {success/failure}
- Root cause: {if identified}
### Prevention Notes
- How to avoid: {prevention strategy}
- Related patterns: {similar issues}
Pattern Extraction
Extract reusable patterns for the self-improving-agent:
## Extracted Patterns
### Code Patterns
- Pattern name: {name}
- Context: {when to use}
- Example: {code snippet}
### Workflow Patterns
- Trigger: {what initiates}
- Steps: {sequence}
- Outcome: {expected result}
### Anti-Patterns
- Pattern: {what to avoid}
- Why: {reason}
- Alternative: {better approach}
Structured Data Format
For machine-readable extraction, use YAML front matter in session logs:
---
session_type: skill_execution
skill_name: code-reviewer
trigger_source: hook
status: completed
files_modified:
- path: src/utils.ts
changes: refactored error handling
patterns_learned:
- name: error-boundary-pattern
category: error-handling
confidence: high
errors_encountered: []
learning_signals:
successes:
- "Identified code smell in utils.ts"
improvements:
- "Could have suggested more specific refactoring"
---
Integration with Self-Improving Agent
When triggered by self-improving-agent:
- Extract episodic memory: Capture the full context of what happened
- Identify semantic patterns: Tag reusable knowledge
- Update working memory: Note immediate follow-ups needed
- Signal completion: Write trigger file if skill chaining is needed
Auto-Trigger Behavior
When invoked via hooks with mode: auto:
- Silently create/update session log
- Extract structured data without user interaction
- Append to existing session if same day/topic
- Create new session if context differs significantly
Related skills
More from charon-fan/agent-playbook and the wider catalog.
self-improving-agent
Universal self-improving agent that learns from all skill experiences using multi-memory architecture.
planning-with-files
Uses persistent markdown files for general planning, progress tracking, and knowledge storage (Manus-style workflow). Use for multi-step tasks, research projects, or general organization WITHOUT mentioning PRD. For PRD-specific work, use prd-planner skill instead.
security-auditor
Security vulnerability expert covering OWASP Top 10 and common security issues. Use when conducting security audits or reviewing code for vulnerabilities.
architecting-solutions
Designs technical solutions and architecture. Use when user says "design solution", "architecture design", "technical design", or "方案设计" WITHOUT mentioning PRD. For PRD-specific work, use prd-planner skill instead.
skill-router
Intelligently routes user requests to the most appropriate Claude Code skill. ALWAYS use this skill FIRST when user asks for help, mentions "skill", "which", "how to", or seems unsure about which approach to take. This is the default entry point for all skill-related requests.
test-automator
Test automation framework expert for creating and maintaining automated tests. Use when user asks to write tests, automate testing, or improve test coverage.