---
id: "concept-progressive-disclosure"
type: "concept"
source_timestamps: ["§ Battling Context Rot"]
tags: ["context-management", "tool-use"]
related: ["concept-context-rot", "question-jit-tool-assembly", "prereq-mcp"]
definition: "A harness primitive that prevents early context rot by dynamically loading tool or skill descriptions into context only when needed."
---
# Progressive Disclosure (Skills)

## The Problem It Solves

Loading too many tools or MCP servers (see [[prereq-mcp]]) into the context window **at agent start** degrades performance before the agent even begins working. Every tool description occupies tokens; a bloated tool catalog produces *early* [[concept-context-rot|context rot]].

## The Mechanism

Harnesses solve this using **Skills** via **progressive disclosure**:

- Skills are defined with lightweight front-matter (name, when to use, brief description).
- The harness inspects the task and only **injects the full Skill description into context when it is actually relevant**.
- Unused skills never consume tokens.

## Adjacent Names

The same idea appears in literature under other names: **dynamic tool selection**, **semantic tool routing**, **just-in-time tool assembly** ([[question-jit-tool-assembly]]).

## Why Harness-Level

The model itself has no way to know which tools are loaded; the harness ([[concept-agent-harness]]) curates the menu. This is a clear example of harness engineering shaping model performance without changing the model.
