Static reading edition · s03-02
Understand progressive disclosure
Organize a skill so discovery stays clear while detailed guidance is read only when useful.
Understand the approach
Progressive disclosure separates finding a workflow from reading all of its details. Codex first receives skill metadata such as the name, description and location; it reads the full SKILL.md when the task calls for that skill. Supporting references can then be opened when needed. Think of a library catalogue, a book and an appendix: each has a different purpose. A catalogue entry must communicate relevance without requiring someone to read the whole book first.
This architecture creates two different failure modes. A good procedure with an unclear description may never be selected. A clear description can select a procedure whose body is incomplete or contradictory. Diagnose the correct layer before changing it. If readme-evidence-review is chosen for button styling, revise its trigger description. If it is chosen for a README but reports invented run commands, revise its instructions and evidence requirements. Adding more prose everywhere usually makes both problems harder to locate.
Arrange the practice skill around those layers. Keep the description focused on checking README readiness. Put the normal workflow and final response contract in SKILL.md. Put a longer reporting rubric or several worked examples in references, with explicit relative links from the main file. Do not move essential boundaries into an obscure appendix that the workflow never asks Codex to read. Supporting files are available context, not a guarantee that all of their contents are loaded or that scripts have executed.
Codex currently budgets its initial skill list separately from loaded instructions: the official guide states a default maximum of 2% of context, with an 8,000-character fallback when the window is unknown. Descriptions can be shortened and a large catalog can omit entries with a warning; this is not unlimited free context. For this package, metadata names README evidence review. A selected run reads SKILL.md, then references/rubric.md; it consults reference-outputs.md for calibration and runs scripts/review.cjs only when the deterministic check helps. Record the files actually read in a real client trace rather than treating a package tree as an observed loading trace.
Progressive disclosure loads detail as the task needs it
Metadata supports discovery. The selected SKILL.md provides the procedure. Supporting references or scripts are consulted only when needed. This is conditional discovery, not a requirement to load every file sequentially.
Practice and acceptance
A package can keep its discovery entry short while explicitly linking the detailed material needed for the task.
About your environment
Checked 21 October 2026. This lesson does not prescribe a fixed token budget or claim unlimited context.
Try it step by step
- Read the linked lab guide, inputs and expected outputs before running the exercise.
- Draft a short discovery description for readme-evidence-review that includes the task and a meaningful exclusion, such as no code changes.
- Divide the proposed guidance into metadata, core instructions and optional references. Explain why each item belongs in its layer.
- Create a scratch reporting rubric with sections for evidence, missing information and unverified commands. Link to it from the procedure rather than pasting it everywhere.
- Test a direct request and a paraphrase in separate conversations. Inspect which instructions were actually read where the client exposes that evidence.
- Change only the layer responsible for an observed failure, then rerun the affected request and one contrasting request.
A useful starting example
Illustration · adapt before use.
---
name: readme-evidence-review
description: Check whether a project README gives newcomers usable setup and verification instructions. Do not use for code changes or visual styling.
---
Read the specified README and relevant project configuration.
Use references/rubric.md for the report structure.
Cite evidence. Mark instructions that exist but have not been tested.
Do not edit the project.Metadata: name + description + discovered SKILL.md path
Selected procedure: skill/SKILL.md
Report rubric: skill/references/rubric.md
Optional calibration: skill/references/reference-outputs.md
Optional check: node skill/scripts/review.cjs fixtures/brokenMap the package
The lab supplies actual linked resources rather than a proposed folder tree.
skill/SKILL.md -> references/rubric.md
skill/SKILL.md -> references/reference-outputs.md
skill/SKILL.md -> scripts/review.cjsMetadata: identify README evidence review
Core: inputs, boundaries, procedure, output
References: rubric and calibrated reports
Script: optional deterministic second checkThis is an authoring map. It does not claim a particular host read every file or a fixed number of tokens.
Your turn
Trace the packaged skill from its description to its mandatory rubric and optional helper. Annotate which text selects the workflow, which instructions govern every run, and which reference calibrates output. In a copy, move a nonessential worked example out of the core, preserve its link, and rerun the package checks. For an actual client run, record which files were read rather than claiming a measured token saving.
Try the exercise before opening its reference answer. Use a disposable practice folder.
Inspect the actual disclosure layers
Extract into a new practice folder and keep the included labs folder. Run these commands from that extraction root, or from the course folder, using an existing Node.js installation.
- Command 1 text
node --test labs/skill-workflow/review.test.cjsCheck: 13 checks pass, including metadata, linked files and evidence fixtures.
A package can keep its discovery entry short while explicitly linking the detailed material needed for the task.
Check your result
- The description can distinguish the target task from neighboring tasks without reading supporting files.
- SKILL.md links to any reference needed for the promised output.
- You identify activation errors separately from execution errors and preserve the essential task boundaries.
- Helper results, actual host activation and unexecuted application commands remain distinguishable.
Reference answer & rubric Try the exercise before opening
Keep the trigger in metadata, essential workflow and boundaries in SKILL.md, and extended criteria/examples in explicitly referenced files.
- Read the front matter without using the rest of the package; decide whether a README audit matches.
- Follow the rubric link when the procedure requires it; retain no-edit and source-as-data boundaries in the core.
- Inspect reference-outputs.md only to calibrate reporting, never as facts for a new input.
- Run the thirteen checks, then separately observe any Codex file reads; package existence does not prove progressive loading occurred.
Check your understanding
The skill is selected correctly but invents missing README commands. What should you investigate first?
- The color of its icon.
- A larger global description budget.
- Its evidence rules and execution instructions.
Reveal the answer and explanation
Answer 3: Its evidence rules and execution instructions.
Selection worked. The observed failure is in how the procedure gathers evidence and handles missing information.
Take this quiz in the interactive lesson to save your answer in the browser.
When it does not work
The model never reads the rubric.
Likely cause: A reference exists but the procedure does not direct the task to it.
What to try: Keep a clear required reading step and test the actual client's source use.
A concise discovery description cannot distinguish two skills.
Likely cause: The trigger omits the task's distinctive input or output.
What to try: Name README evidence review and its exclusions; avoid loading the whole rubric into the description.
Common mistakes
- Assuming every bundled file is read as soon as the skill is listed.
- Hiding mandatory constraints in a reference without a reason for the agent to open it.
Source mapping & differences · different
The staged loading idea transfers, but Claude-specific budgets, shell substitution and frontmatter behavior must not be copied into Codex.
Source topic: Progressive disclosure ↗Go to the source
Official documentation, checked 21 October 2026. Product names, controls and availability may vary with your version, platform or account.
Completion and quiz progress are saved
only in the interactive course.