Back to skills
SKILL.md
Iterative Retrieval
ASecurityProgressive 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
Security analysis
100/100npx -y skills add WenJunDuan/Rlues --skill iterative-retrieval --agent claude-codeAre you the author of Iterative Retrieval?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/wenjunduan-iterative-retrieval)---
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
Comments
Loading comments…