name: context-manager description: Context management skill providing discovery, fetching, harvesting, extraction, compression, organization, cleanup, and guided workflows for project context version: 1.0.0 author: opencode type: skill category: development tags:
Purpose: Comprehensive context management operations with clear guidance, lazy loading, and safe operations for discovering, organizing, and maintaining project context.
I provide 8 powerful operations for managing context:
bash .opencode/skill/context/router.sh discover authentication
Finds all context files related to authentication patterns.
bash .opencode/skill/context/router.sh fetch "Drizzle ORM" "modular schemas"
Retrieves live documentation from external libraries.
bash .opencode/skill/context/router.sh harvest ANALYSIS.md
Extracts key concepts from summary files into permanent context.
bash .opencode/skill/context/router.sh extract code-quality.md "naming conventions"
Pulls specific information from context files.
bash .opencode/skill/context/router.sh compress .opencode/context/ 100KB
Reduces large context files to save space.
bash .opencode/skill/context/router.sh organize .opencode/context/
Restructures context by concern for better organization.
bash .opencode/skill/context/router.sh cleanup .tmp/ 7
Removes temporary or old files (older than 7 days).
bash .opencode/skill/context/router.sh process "organize authentication context" .opencode/context/
Step-by-step guidance for complex context operations.
Purpose: Find context files using intelligent discovery or direct search
When to Use:
Syntax:
discover [target]
Examples:
# Discover by topic
./router.sh discover "authentication patterns"
# Discover all context
./router.sh discover "all context files"
# Discover in specific directory
./router.sh discover ".opencode/context/core/"
Output:
Purpose: Fetch external documentation using ExternalScout
When to Use:
Syntax:
fetch [libraries] [topics]
Examples:
# Fetch single library
./router.sh fetch "Drizzle ORM" "modular schemas"
# Fetch multiple libraries
./router.sh fetch "Drizzle ORM" "Better Auth" "Next.js" "modular schemas" "integration" "app router"
# Fetch with specific query
./router.sh fetch "Better Auth" "Next.js App Router integration with Drizzle adapter"
Output:
Purpose: Extract context from summary files and create permanent context
When to Use:
Syntax:
harvest [source-file]
Examples:
# Harvest from analysis
./router.sh harvest DEVELOPER_PROFILE_ANALYSIS.md
# Harvest from brainstorm
./router.sh harvest AGENT_NAMING_BRAINSTORM.md
# Harvest from UX analysis
./router.sh harvest UX_ANALYSIS_THREE_MAIN_AGENTS.md
Output:
Purpose: Extract specific information from context files
When to Use:
Syntax:
extract [file] [what-to-extract]
Examples:
# Extract naming conventions
./router.sh extract code-quality.md "naming conventions"
# Extract test patterns
./router.sh extract test-coverage.md "test patterns"
# Extract all standards
./router.sh extract ".opencode/context/core/" "all standards"
Output:
Purpose: Compress large context files to save space
When to Use:
Syntax:
compress [target] [size-threshold]
Examples:
# Compress large files
./router.sh compress ".opencode/context/" "100 KB"
# Compress all context
./router.sh compress ".opencode/context/"
# Compress and archive
./router.sh compress ".opencode/context/development/" "50 KB"
Output:
Purpose: Reorganize context files by concern (what you're doing) rather than function
When to Use:
Syntax:
organize [target]
Examples:
# Organize by concern
./router.sh organize ".opencode/context/"
# Organize specific topic
./router.sh organize ".opencode/context/development/"
Output:
Purpose: Clean up stale, temporary, or unused context files
When to Use:
Syntax:
cleanup [target] [older-than-days]
Examples:
# Cleanup .tmp directory
./router.sh cleanup ".tmp/"
# Cleanup old external context
./router.sh cleanup ".tmp/external-context/" "7"
# Cleanup stale sessions
./router.sh cleanup ".tmp/sessions/" "3"
Output:
Purpose: Provide guided workflow for processing context
When to Use:
Syntax:
process [goal] [scope]
Examples:
# Process authentication context
./router.sh process "organize authentication context" ".opencode/context/development/"
# Process all development context
./router.sh process "organize all development context" ".opencode/context/development/"
# Process external context
./router.sh process "fetch, persist, and reference external context" ".tmp/external-context/"
Output:
1. discover context for: "authentication"
→ Find all auth-related context
2. extract from: "security-patterns.md" what: "auth patterns"
→ Get specific patterns
3. Show results
→ Ready to use in session
1. fetch external docs for: "Drizzle ORM"
→ Get live documentation
2. Show file paths
→ .tmp/external-context/drizzle-orm/...
3. Reference in session context
→ Add to "## External Context Fetched"
4. Pass to subagents
→ Include in subtask JSONs
1. harvest context from: "ANALYSIS.md"
→ Extract key concepts
2. organize context by: "concern"
→ Restructure for clarity
3. Update documentation
→ Show new structure
4. Delete original summary
→ Clean up temporary files
1. cleanup .tmp/ directory
→ Remove temporary files
2. cleanup external context older than: "7 days"
→ Remove stale external docs
3. Show space freed
→ Provide statistics
4. Update manifest
→ Keep tracking accurate
.opencode/skill/context/
├── SKILL.md # This file
├── router.sh # CLI router (entry point)
├── CONTEXT_SKILL_QUICK_START.md # Quick start guide
├── context-manager.md # Detailed operation guide
└── navigation.md # Navigation index
You succeed when: ✅ Context files are discovered efficiently ✅ External documentation is fetched and persisted ✅ Context is harvested from summaries ✅ Key information is extracted clearly ✅ Large files are compressed safely ✅ Context is organized by concern ✅ Stale files are cleaned up safely ✅ User has clear guidance at each step ✅ All operations are reversible ✅ Documentation is updated
Run discover operations regularly to understand your context structure and identify gaps.
Organize context by what you're doing (authentication, testing, etc.) not by function (standards, guides).
Fetch external documentation only when needed, not preemptively.
Convert temporary analysis documents into permanent context using harvest.
Schedule regular cleanup operations to remove stale temporary files.
Always validate context integrity after making changes.
Keep navigation.md files up-to-date as you organize context.
When extracting context, always cite the source files.
Run discover all context files to see what exists and where.
Check that the library name is correct and ExternalScout is available.
The source file may not have enough high-signal content. Review and add manually.
Check that all referenced files exist and navigation.md is valid.
Check the backup at .backup/cleanup-{date}.tar.gz for recovery.
Context Manager Skill - Discover, organize, and maintain your project context!