Why this matters
Modern language models increasingly act as agents, not just single-turn chatbots. In those settings, success depends on procedures: how to inspect a spreadsheet, when to trust an OCR field, how to avoid loops in an embodied environment, or how to format the final answer.
But today those procedures are usually hand-written, generated once, or revised through free-form self-reflection. SkillOpt asks a sharper question: if a skill is the agent’s adaptation layer, why not train the skill with optimizer-like discipline—batch evidence, step-size control, validation, rejected-step memory, and slow updates?
The big idea
SkillOpt freezes the target model and optimizes only a compact text file, best_skill.md. At each step, the target agent runs tasks with the current skill; an optimizer model reads scored trajectories and proposes structured text edits; the system applies only a bounded number of edits; then a held-out validation split decides whether the candidate skill lives or dies. In short: treat natural language as a trainable state, but keep the optimizer on a leash.
$$(\tau(s), r(s)) = h(M, x, s), \qquad r(s)\in[0,1]$$
A frozen model $M$ executes task $x$ under skill $s$ in harness $h$, producing trajectory $\tau$ and score $r$.
How it works
The paper’s analogy to deep learning is operational: rollout batch sizes reduce noisy evidence; a textual learning rate bounds step size; validation gates reject harmful updates; and slow/meta updates carry durable lessons across epochs.
1) Pipeline: from rollouts to accepted skill edits
Hover or focus a block to see its role. Toggle “ad hoc rewrite” to see what SkillOpt is designed to avoid.
Block role
Current skill
The external text artifact inserted into the agent context; it is the trainable state.
2) Textual learning rate: how big is one skill step?
SkillOpt’s learning-rate analogue is an edit budget $L_t$: the maximum number of add/delete/replace edits allowed at step $t$. Try changing it.
3) Validation gate: propose, test, accept—or remember the failure
The paper’s gate is strict: ties are rejected. Use the slider to simulate a candidate skill’s selection score.
Rejected-edit buffer
4) Slow/meta update: the optimizer’s memory lane
At epoch boundaries, SkillOpt compares the same tasks under the previous and current skill, grouping outcomes into improvements, regressions, persistent failures, and stable successes. Click each lane.
Results
The main table reports six direct-chat benchmarks across seven target models, plus GPT‑5.5 inside Codex and Claude Code. SkillOpt is best or tied-best on all 52 evaluated model–benchmark–harness cells.
Transfer: does the skill travel?
Yes, at least in the paper’s tested settings. Optimized skills remain useful across model scale, harness boundary, and nearby math benchmarks.
Cross-model
+9.4
GPT‑5.4 SpreadsheetBench skill transferred to GPT‑5.4‑mini.
Cross-harness
+59.7
Codex-trained SpreadsheetBench skill transferred to Claude Code.
Cross-benchmark
+3.7
OlympiadBench skill transferred to Omni‑MATH on GPT‑5.4.
Limitations & open questions
- Needs reliable feedback. SkillOpt depends on scored trajectories and a held-out split, so it fits tasks with exact-match metrics, verifiers, executable checks, or other dependable feedback.
- Training is not free. Deployment is cheap, but optimization requires extra rollouts and optimizer-model calls. The paper reports training costs from 0.6M to 46.4M tokens per absolute test-point gain across GPT‑5.5 case studies.
- Single-skill assumption. The method optimizes one portable document, not a large library. Highly heterogeneous domains may need multiple skills or routing.
- Transfer still needs evaluation. Skills can encode distribution-specific heuristics; the authors explicitly call for held-out evaluation before moving skills far from the training setting.
Glossary
Agent skill
A natural-language procedural policy inserted into the agent context, containing tool policies, domain heuristics, output constraints, and failure-mode guidance.
Text-space optimizer
An optimization loop that updates text artifacts rather than neural-network weights.
Textual learning rate
SkillOpt’s edit budget $L_t$, the maximum number of skill edits applied at step $t$.
Held-out validation gate
A selection split used to accept a candidate skill only when it strictly improves the current selection score.
Rejected-edit buffer
An epoch-local memory of rejected edits and observed failure patterns, provided to later optimizer calls as negative feedback.
Slow/meta update
An epoch-wise process that compares adjacent skill versions on the same tasks and writes longer-horizon guidance, while keeping optimizer-side memory separate from the deployed skill.
Citation
@article{yang2026skillopt,
title = {SkillOpt: Executive Strategy for Self-Evolving Agent Skills},
author = {Yang, Yifan and Gong, Ziyang and Huang, Weiquan and Yang, Qihao and Zhou, Ziwei and Huang, Zisu and Li, Yan and Gao, Xuemei and Dai, Qi and Liu, Bei and Qiu, Kai and Yang, Yuqing and Chen, Dongdong and Yang, Xue and Luo, Chong},
journal = {arXiv preprint arXiv:2605.23904},
year = {2026},
url = {https://arxiv.org/pdf/2605.23904}
}