Review our conversation and capture valuable knowledge. Focus especially on best practices we discussed or discovered—these are the most important things to preserve.
Step 1: Identify Best Practices and Key Learnings
Scan the conversation for:
Best Practices (highest priority)
- Patterns that worked well - approaches, techniques, or solutions we found effective
- Anti-patterns to avoid - mistakes, gotchas, or approaches that caused problems
- Quality standards - criteria we established for good code, documentation, or processes
- Decision rationale - why we chose one approach over another
Other Valuable Knowledge
- Coding conventions and style preferences
- Project architecture decisions
- Workflows and processes we developed
- Tools, libraries, or techniques worth remembering
- Feedback I gave about your behavior or outputs
Step 2: Decide Where to Store Each Learning
For each best practice or learning, choose the right destination:
-> Memory (AGENTS.md) for preferences and guidelines
Use memory when the knowledge is:
- A preference or guideline (not a multi-step process)
- Something to always keep in mind
- A simple rule or pattern
Global ($DEEPAGENTS_HOME/agent/AGENTS.md): Universal preferences across all projects
Project (.deepagents/AGENTS.md): Project-specific conventions and decisions
-> Skill for reusable workflows and methodologies
Create a skill when we developed:
- A multi-step process worth reusing
- A methodology for a specific type of task
- A workflow with best practices baked in
- A procedure that should be followed consistently
Skills are more powerful than memory entries because they can encode how to do something well, not just what to remember.
Step 3: Create Skills for Significant Best Practices
If we established best practices around a workflow or process, capture them in a skill.
Example: If we discussed best practices for code review, create a code-review skill that encodes those practices into a reusable workflow.
Skill Location
$DEEPAGENTS_HOME/agent/skills/<skill-name>/SKILL.md
Skill Structure
skill-name/ ├── SKILL.md (required - main instructions with best practices) ├── scripts/ (optional - executable code) ├── references/ (optional - detailed documentation) └── assets/ (optional - templates, examples)
SKILL.md Format
markdown--- name: skill-name description: "What this skill does AND when to use it. Include triggers like 'when the user asks to X' or 'when working with Y'. This description determines when the skill activates." --- # Skill Name ## Overview Brief explanation of what this skill accomplishes. ## Best Practices Capture the key best practices upfront: - Best practice 1: explanation - Best practice 2: explanation ## Process Step-by-step instructions (imperative form): 1. First, do X 2. Then, do Y 3. Finally, do Z ## Common Pitfalls - Pitfall to avoid and why - Another anti-pattern we discovered
Key Principles
- Encode best practices prominently - Put them near the top so they guide the entire workflow
- Concise is key - Only include non-obvious knowledge. Every paragraph should justify its token cost.
- Clear triggers - The description determines when the skill activates. Be specific.
- Imperative form - Write as commands: "Create a file" not "You should create a file"
- Include anti-patterns - What NOT to do is often as valuable as what to do
Step 4: Update Memory for Simpler Learnings
For preferences, guidelines, and simple rules that don't warrant a full skill:
markdown## Best Practices - When doing X, always Y because Z - Avoid A because it leads to B
Use edit_file to update existing files or write_file to create new ones.
Step 5: Summarize Changes
List what you captured and where you stored it:
- Skills created (with key best practices encoded)
- Memory entries added (with location)


