A request like “build me a weekly report skill” leaves the agent to guess what a good report looks like. Start with a report you already approve of. Use its source data, calculations, and layout to explain what the skill should produce, then test it on another week’s data.
In his video How to Build Codex Skills Better than 99% of People, Nate Herk shows how he turns work he has already done into reusable skills. This guide applies that approach to a weekly report, with checks for the decisions an example alone cannot explain.
01Explain the approved result
Give the agent the approved report and the data used to create it. Point out which columns, calculations, and formatting it should preserve. Nate calls this working backward from the output.
The finished report reveals only part of the job. Ask its author to fill in the missing decisions:
| Detail | What to record |
|---|---|
| Inputs | Source files, reporting period, and required fields |
| Fixed rules | Formulas, exclusions, and output columns |
| Judgment | Which changes deserve an explanation and why |
| Approval | What the reviewer checks before accepting the report |
Ask the author to confirm how the agent thinks the report was made. A correct-looking total does not reveal which rows were excluded. Check the proposed method against the original inputs before saving it. Capture the model’s discipline covers preserving a useful working method from an earlier session.
02Name one task clearly
A skill stores instructions and optional supporting files for an agent. OpenAI’s Build skills documentation requires a SKILL.md file with a name and description. Codex uses the description to help decide when to load the full instructions.
Describe a request the skill should handle. Here is an original example for a report skill:
---
name: weekly-sales-report
description: Create a weekly sales report from supplied sales exports. Use for weekly totals and changes; exclude forecasting and customer outreach.
---
Keep the first version focused on producing that report. Forecasting future sales and emailing customers introduce different inputs, checks, and permissions.
For a repository skill, save the instructions under .agents/skills/weekly-sales-report/SKILL.md. Ask Codex to confirm the loaded file’s full path when testing, especially if multiple checkouts contain the same skill. Test both an ordinary report request and a nearby request, such as writing a sales email, that should leave this skill unused.
03Separate rules from judgment
Decide which parts of the task must follow exact rules and which need judgment. Nate describes this as choosing the skill’s freedom level. A single report needs both.
Fixed rules: name the date boundaries, formulas, and required columns. Use a saved script for repeatable calculations when that removes a demonstrated source of error.
Judgment: explain what makes a change worth discussing and show an accepted explanation. Let the agent choose wording that fits the new data.
In Nate’s article example, images need to explain the adjacent text. Fixed screenshot timestamps would miss that purpose as videos change. His feedback on the images gives usable criteria: reject frames with missing context or unfinished animations, and place each image beside the passage it supports.
04Check the result yourself
Choose the checks before running the skill. For a weekly report, recalculate totals from the source data and confirm the reporting period. Separately review whether the explanation identifies the changes a reader needs to act on.
Nate’s demonstration includes agents reporting completed checks while he still finds misplaced images. Inspect the artifact and supporting evidence. A list of checks marked complete can contain mistakes.
Try the skill on a normal new input and a case with missing required data. The second case should expose the gap rather than produce invented values. Score your agent on known good answers covers keeping cases whose correct results you can check.
Once the skill passes, compare model and effort settings on the same saved cases. Nate cautions against selecting a model from one example. Recheck your model choices each release covers repeating that comparison as models change.
05Save the useful correction
“Here's what I really liked. Here's what I didn't like.”
Nate Herk, “How to Build Codex Skills Better than 99% of People” · 14:14Name the defect, revise the relevant instruction, and rerun the case that exposed it. Also check that the revision preserves what already worked. Make skills improve after each run gives the maintenance procedure, including checking an earlier successful case before keeping an edit.
This original prompt starts the process from an approved example:
Use this approved result and its source inputs to draft a skill for producing the same kind of deliverable. Ask about any formulas, exclusions, or decisions the example does not establish.
Give the skill one clear task and describe when it should activate. Separate exact rules from decisions that need judgment. Include checks tied to the output and explain what to report when required data or tools are missing. Confirm the full path where the skill will be saved.
Test the draft on fresh input. Show the output, the evidence for each check, and any remaining defects. Keep the skill and result local for review.