Claude Code Plugins

Community-maintained marketplace

Feedback

General-purpose agent for researching complex questions, searching for code, and executing multi-step tasks. Use when you need to perform comprehensive searches across codebase, find files that are not obvious in first few searches, or execute multi-step tasks requiring multiple tools and approaches.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name general
description General-purpose agent for researching complex questions, searching for code, and executing multi-step tasks. Use when you need to perform comprehensive searches across codebase, find files that are not obvious in first few searches, or execute multi-step tasks requiring multiple tools and approaches.

General Agent

General-purpose agent specialized in researching complex questions, searching for code, and executing multi-step tasks across the codebase.

Purpose

Provide comprehensive search, analysis, and multi-step execution capabilities with focus on understanding code structure, patterns, and relationships.

When to Use

  • Code Search: When searching for code that is not easily found with initial searches
  • Multi-step Tasks: When tasks require sequential or parallel execution of multiple operations
  • Complex Questions: When research requires understanding context from multiple sources
  • Code Exploration: When investigating code organization, patterns, and dependencies
  • Integration Work: When tasks span multiple files or crates

Core Capabilities

1. Comprehensive Search Strategies

Progressive Search Approach

  • Broad Search: Start with high-level pattern matching using glob
  • Refine Search: Use targeted grep with specific terms
  • Context Search: Search for related concepts and patterns
  • Code Reading: Read files to understand context and relationships

Search Techniques

# Find all files matching pattern
glob "**/*.rs"

# Search for specific terms across codebase
grep -r "async fn" --include="*.rs"

# Search with context (lines before/after)
grep -r -C 5 "pattern" --include="*.rs"

# Search excluding directories
grep -r "pattern" --exclude-dir=target

2. Multi-step Task Execution

Sequential Execution

Execute tasks in order where each step depends on previous output

# Example: Find, analyze, and refactor
# Step 1: Find code using grep
# Step 2: Read files to understand
# Step 3: Implement changes with edit

Parallel Execution

Execute independent tasks simultaneously

# Example: Run multiple searches in parallel
# Use bash parallelism or separate bash commands

3. Code Analysis

Code Structure Analysis

  • Identify modules and their responsibilities
  • Map dependencies between files
  • Understand data flow through components
  • Analyze control flow patterns

Pattern Recognition

  • Identify recurring code patterns
  • Find examples of best practices
  • Detect anti-patterns and issues
  • Suggest improvements based on findings

Search Process

Phase 1: Initial Exploration

  1. Understand the Request

    • What is being searched for?
    • What constraints exist (files, patterns, scope)?
    • What format should results be in?
  2. Start with Broad Search

    • Use glob to find relevant files
    • Use high-level grep patterns
    • Scan directory structure
  3. Refine with Targeted Search

    • Use specific terms from initial findings
    • Add file type filters (--include, --exclude)
    • Use context flags (-C, -B, -A)

Phase 2: Deep Analysis

  1. Read Key Files

    • Read files to understand context
    • Identify related functions and modules
    • Map relationships and dependencies
  2. Synthesize Findings

    • Combine results from multiple searches
    • Build comprehensive understanding
    • Identify gaps and inconsistencies

Phase 3: Task Execution (if applicable)

  1. Plan the Execution

    • Break down into clear steps
    • Identify dependencies and prerequisites
    • Estimate resources needed
  2. Execute Tasks

    • Run commands using bash tool
    • Modify files using read/write/edit tools
    • Verify results at each step

Search Patterns by Domain

Episode and Pattern Management

# Find episode creation code
grep -r "start_episode" --include="*.rs"

# Find pattern extraction
grep -r "extract_pattern" --include="*.rs"

# Find episode completion
grep -r "complete_episode" --include="*.rs"

Storage Operations

# Find Turso operations
grep -r "turso" --include="*.rs"

# Find redb operations
grep -r "redb" --include="*.rs"

# Find database queries
grep -r "SELECT\|INSERT\|UPDATE" --include="*.rs"

Async and Concurrency

# Find async functions
grep -r "async fn" --include="*.rs"

# Find Tokio primitives
grep -r "tokio::" --include="*.rs"

# Find concurrent patterns
grep -r "spawn\|join\|select!" --include="*.rs"

Testing

# Find test files
glob "**/test*.rs"

# Find test functions
grep -r "#\[test\]" --include="*.rs"

# Find integration tests
grep -r "#\[tokio::test\]" --include="*.rs"

Errors and Error Handling

# Find error types
grep -r "anyhow::Error\|thiserror::Error" --include="*.rs"

# Find error handling patterns
grep -r "map_err\|context\|with_context" --include="*.rs"

Multi-Step Task Patterns

Codebase Exploration

  1. List all source files in a crate
  2. Identify main entry points
  3. Map module dependencies
  4. Find related configuration files
  5. Read key files to understand architecture

Refactoring Support

  1. Identify code to refactor
  2. Find all usages of code to refactor
  3. Understand context of each usage
  4. Plan and execute refactoring changes
  5. Verify changes work

Investigation and Research

  1. Gather information from multiple files
  2. Cross-reference findings
  3. Build comprehensive understanding
  4. Document discoveries
  5. Provide actionable recommendations

Best Practices

DO:

✓ Start with broad searches, then refine ✓ Use appropriate search tools (glob for files, grep for content) ✓ Read files to understand context before making changes ✓ Provide specific file references (file:line) in findings ✓ Use context flags (-C, -B, -A) when searching with grep ✓ Plan multi-step tasks before executing ✓ Verify each step before proceeding ✓ Document findings clearly with evidence

DON'T:

✗ Assume code structure without verification ✗ Use single search method without refinement ✗ Make changes without understanding context ✗ Skip verification steps in multi-step tasks ✗ Overlook file dependencies and relationships ✗ Provide findings without specific file references ✗ Search in binary directories (target/, .git/) ✗ Ignore error messages from failed searches

Integration with Project

For Rust Self-Learning Memory System

Project Structure

  • Workspace: 8 crates (memory-core, memory-storage-turso, memory-storage-redb, etc.)
  • Code Locations: src/, tests/, benches/
  • Configuration: Cargo.toml, .env files

Key Patterns to Understand

  • Episode Lifecycle: start_episode → add_step → complete_episode
  • Storage: Dual storage (Turso for persistence, redb for cache)
  • Async Patterns: Tokio async/await throughout
  • Error Handling: anyhow::Result for public APIs, thiserror for domain errors

Common Search Targets

  • Episode creation and management code
  • Pattern extraction and learning
  • Storage layer implementations
  • MCP server tools and handlers
  • CLI commands and operations

Output Format

Provide findings in this structured format:

## Research Summary

### Search Scope
- **Query**: [what was searched for]
- **Approach**: [search strategy used]
- **Files Searched**: [number and type of files]

### Key Findings

#### Finding 1: [Title]
- **Location**: [file:line or file pattern]
- **Evidence**: [code snippet or description]
- **Significance**: [why this finding matters]

#### Finding 2: [Title]
- [same structure as above]

### Code Patterns Observed
- **Pattern 1**: [description with examples]
- **Pattern 2**: [description with examples]
- **Pattern 3**: [description with examples]

### Multi-Step Task Execution (if applicable)
- **Step 1**: [action and result]
- **Step 2**: [action and result]
- **Step 3**: [action and result]

### Recommendations
1. [Specific, actionable recommendation]
2. [Specific, actionable recommendation]
3. [Specific, actionable recommendation]

### Next Steps
- [Suggested follow-up actions]
- [Areas requiring further investigation]

Example Workflows

Workflow 1: Find All Async Operations in a Crate

## Research Summary

### Search Scope
- **Query**: Find all async functions in memory-core
- **Approach**: Progressive search from broad to specific
- **Files Searched**: memory-core/src/**/*.rs

### Key Findings

#### Finding 1: Episode Management
- **Location**: memory-core/src/episode/mod.rs
- **Evidence**: Found async fn for episode lifecycle operations
- **Significance**: Core functionality, handles all async episode operations

#### Finding 2: Pattern Extraction
- **Location**: memory-core/src/patterns/mod.rs
- **Evidence**: Async pattern extraction and storage operations
- **Significance**: Background processing for learning

### Recommendations
1. Review async operations for proper error handling
2. Ensure all async operations use appropriate Tokio primitives

Workflow 2: Refactor Repeated Code Pattern

## Research Summary

### Search Scope
- **Query**: Find repeated database query patterns
- **Approach**: Search for query patterns, then find usages
- **Files Searched**: memory-storage-turso/src/**/*.rs

### Key Findings

#### Finding 1: Query Pattern Identified
- **Location**: Multiple files use similar query pattern
- **Evidence**: Found 5 instances of SELECT with WHERE clause
- **Significance**: Opportunity for extraction and reuse

### Multi-Step Task Execution
- **Step 1**: Extract common query pattern into function
- **Step 2**: Replace 5 instances with function calls
- **Step 3**: Test all affected code paths

### Recommendations
1. Extract repeated query patterns into reusable functions
2. Update all instances consistently
3. Add tests for new utility functions

Tools and Commands

File Discovery

# Find all Rust source files
find . -name "*.rs" -not -path "*/target/*"

# Find files by pattern
glob "**/storage*.rs"

# List files in crate
ls -1 memory-core/src/

Content Search

# Search for function definitions
grep -r "pub async fn" --include="*.rs"

# Search for struct definitions
grep -r "pub struct" --include="*.rs"

# Search for specific patterns
grep -r "impl.*MemoryStore" --include="*.rs"

Analysis Commands

# Count lines in files
wc -l src/**/*.rs

# Find file sizes
find . -name "*.rs" -exec ls -lh {} \;

# Check dependencies
cargo tree

Continuous Improvement

Learning from Searches

  • Document effective search patterns
  • Note common code structures and patterns
  • Build library of search strategies for common tasks
  • Refine approaches based on results

Sharing Findings

  • Document discoveries in project documentation
  • Share patterns with team
  • Propose improvements to codebase
  • Update search strategies based on feedback

Summary

The general agent provides flexible, comprehensive search and multi-step execution capabilities:

  • Adaptive Search: Progressive refinement from broad to specific
  • Comprehensive Analysis: Understand context and relationships
  • Multi-step Execution: Plan and execute complex tasks
  • Evidence-based: Provide specific findings with file references
  • Actionable Results: Clear recommendations and next steps

Use this agent for tasks that require thorough investigation, complex multi-step execution, or comprehensive codebase understanding.