Skip to content
Back to skills

Iterative Retrieval

ASecurity

Progressive context refinement for subagents and complex tasks. Retrieves context incrementally based on actual needs rather than loading everything upfront. Reduces context waste and improves relevance.

  • 188 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added February 9, 2026
documentationjavascriptjavadocumentation

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add WenJunDuan/Rlues --skill iterative-retrieval --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Iterative Retrieval?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Iterative Retrieval
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/wenjunduan-iterative-retrieval/badge)](https://www.skillsdirectory.com/skills/wenjunduan-iterative-retrieval)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: iterative-retrieval
description: |
  Progressive context refinement for subagents and complex tasks. Retrieves
  context incrementally based on actual needs rather than loading everything
  upfront. Reduces context waste and improves relevance.
context: fork
---

# Iterative Retrieval Skill

## Problem

Loading all potentially relevant context upfront:
- Wastes context window
- Includes irrelevant information
- Reduces signal-to-noise ratio

## Solution

Retrieve context incrementally based on actual execution needs.

## Retrieval Levels

```
Level 0: Task Description
  └── Just the user request

Level 1: Immediate Context
  └── Files mentioned + direct dependencies

Level 2: Extended Context
  └── Related modules + tests

Level 3: Full Context
  └── Architecture docs + cross-cutting concerns
```

## Retrieval Protocol

### 1. Start Minimal
```yaml
initial_load:
  - Task description
  - CLAUDE.md (current section)
  - Target file(s) only
```

### 2. Detect Gaps
```yaml
gap_signals:
  - Reference to unknown function/type
  - Import from unloaded module
  - Pattern that needs clarification
  - Test failure with unclear cause
```

### 3. Retrieve On-Demand
```yaml
retrieval_action:
  signal: "Unknown type UserProfile"
  action: Load types/user.ts
  scope: Type definitions only
```

### 4. Cache Decisions
```yaml
cache_entry:
  query: "UserProfile type"
  result: "types/user.ts lines 15-30"
  relevance: 0.95
  reuse_for: ["user-related tasks"]
```

## Implementation Patterns

### For Subagent Delegation

```markdown
# Subagent Context Protocol

## Mandatory (Level 0-1)
- Task objective
- Target file
- Immediate imports

## On-Request (Level 2)
- Related tests
- Usage examples
- Similar implementations

## Escalation (Level 3)
- Architecture docs
- Cross-module dependencies
- Historical decisions
```

### For Complex Analysis

```javascript
async function iterativeAnalysis(task) {
  // Level 0: Understand task
  const taskContext = await loadMinimal(task);
  
  // Level 1: Load immediate
  let context = await loadImmediate(task.files);
  
  while (hasGaps(context)) {
    // Level 2+: Fill gaps
    const gaps = identifyGaps(context);
    const additional = await loadForGaps(gaps);
    context = mergeContext(context, additional);
    
    // Prevent infinite loops
    if (context.level > MAX_LEVEL) break;
  }
  
  return context;
}
```

## Gap Detection Rules

| Signal | Action | Priority |
|:---|:---|:---|
| Undefined reference | Load definition file | High |
| Test import | Load test file | Medium |
| Config reference | Load config | Medium |
| Doc comment link | Load doc | Low |
| Historical mention | Query experience | Low |

## Context Scoring

```yaml
relevance_score:
  direct_reference: 1.0    # Explicitly mentioned
  import_chain: 0.8        # Imported by target
  type_dependency: 0.7     # Type used
  test_coverage: 0.6       # Tests target
  same_module: 0.5         # Same directory
  doc_reference: 0.4       # Documentation
  historical: 0.3          # Past experience
```

## Integration with VibeCoding

### With phase-router
```yaml
routing_context:
  path_a: level 0-1 only
  path_b: level 0-2
  path_c: full iterative
```

### With subagents
```yaml
subagent_protocol:
  initial: level 0-1
  on_request: level 2
  escalate_to_main: level 3
```

### With verification-loop
```yaml
verification_context:
  initial: test file + target
  on_failure: add related modules
  on_complex_failure: full context
```

## Anti-Patterns

❌ **Don't**: Load entire codebase upfront
✅ **Do**: Start with target file only

❌ **Don't**: Include all tests
✅ **Do**: Load tests when verification fails

❌ **Don't**: Pass full history to subagent
✅ **Do**: Pass task-relevant summary

❌ **Don't**: Keep irrelevant context
✅ **Do**: Prune after task completion

## Metrics

Track retrieval efficiency:
```yaml
session_metrics:
  initial_context_tokens: 2000
  final_context_tokens: 8000
  retrieval_requests: 5
  cache_hits: 3
  relevance_score_avg: 0.82
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…