@pauliusztin_: Microsoft just open-sourced one of the most interesting agent engineering projects I've seen this year... → https://git…
Summary
Microsoft open-sourced SkillOpt, a framework that treats agent skill documents as trainable artifacts, optimizing them through iterative feedback loops without modifying model weights. It is available as a Python library with support for self-evolving agent skills.
View Cached Full Text
Cached at: 06/29/26, 10:26 AM
Microsoft just open-sourced one of the most interesting agent engineering projects I’ve seen this year…
→ https://github.com/microsoft/SkillOpt…
Most engineers assume improving an AI agent requires:
Better models More data More fine-tuning
SkillOpt takes a completely different approach.
Instead of optimizing the model…
It optimizes the skill.
Think of a skill as a standard operation procedure (SOP) for an AI agent.
A small document that describes:
How to solve a task Which tools to use Which steps to follow How to format outputs What good behavior looks like
Traditionally, these skill files are written once and then forgotten.
SkillOpt turns them into something trainable.
The idea is surprisingly simple:
- Run the agent on a batch of tasks
- Measure performance
- Let a second model analyze failures
- Propose edits to the skill document
- Keep only the edits that improve validation performance
The loop starts looking surprisingly similar to machine learning.
… except you’re training the skill rather than the weights.
We’ve spent years treating skills, prompts, and agent instructions as static artifacts.
SkillOpt treats them as something that can improve continuously.
The model stays the same.
The skill evolves.
Learn more here: https://github.com/microsoft/SkillOpt…
microsoft/SkillOpt
Source: https://github.com/microsoft/SkillOpt
SkillOpt: Executive Strategy for Self-Evolving Agent Skills
Train agent skills like you train neural networks — with epochs, (mini-)batchsize, learning rates, and validation gates — but without touching model weights.
📖 For installation, data preparation, training/eval commands, the full configuration reference, and framework internals, see the Documentation & Reproduction Guide (rendered on GitHub Pages).
News 🔥🔥🔥
- [2026-06-15] 😴 SkillOpt-Sleep (preview) — a nightly offline self-evolution companion for local coding agents (Claude Code / Codex / Copilot): review past sessions, replay recurring tasks, and consolidate validated skills behind a held-out gate. See
docs/sleep/README.mdfor what it is, how to use it, and results. - [2026-06-03] 🎉 gbrain, gbrain-evals, and darwin-skill have all integrated SkillOpt.
- [2026-06-02] 🎉 SkillOpt v0.1.0 is now available on PyPI! Install with
pip install skillopt. This initial release includes the full training loop (rollout → reflect → aggregate → select → update → evaluate), multi-backend support (OpenAI / Azure / Claude / Qwen / MiniMax), six built-in benchmarks, and WebUI dashboard.
Overview
Modern agent skills are usually hand-crafted, generated one-shot by a strong LLM, or evolved through loosely controlled self-revision — none of which behaves like a deep-learning optimizer for the skill itself, and none of which reliably improves over its starting point under feedback.
SkillOpt treats the skill document as the trainable state of a frozen agent, and trains it with the discipline that makes weight-space optimization reproducible. A separate optimizer model turns scored rollouts into bounded add / delete / replace edits on a single skill document; a candidate edit is accepted only when it strictly improves a held-out validation score. A textual learning-rate budget, a rejected-edit buffer, and an epoch-wise slow / meta update make skill training stable while adding zero inference-time model calls at deployment.
The deployed artifact is a compact best_skill.md (typically 300–2,000
tokens) that runs against the unchanged target model. Across six
benchmarks, seven target models, and three execution harnesses (direct
chat, Codex CLI, Claude Code CLI), SkillOpt is best or tied-best on all
52 evaluated (model, benchmark, harness) cells and on GPT-5.5 lifts the
average no-skill accuracy by +23.5 points in direct chat, +24.8 inside
the Codex agentic loop, and +19.1 inside Claude Code. Optimized skill
artifacts transfer across model scales, between Codex and Claude Code
harnesses, and to nearby benchmarks without further optimization.
For the full method, ablations, and per-cell results see the paper; for a visual walkthrough of the loop see the project page; for deeper API / backend / benchmark docs see docs/.
🎬 Demo Video
https://github.com/user-attachments/assets/eb12d3bc-371c-467f-904d-91b61f339ed7
▶ Watch the full demo on YouTube
Extensibility & WebUI
Adding a new backend
A backend = a chat / exec target (e.g. openai_chat, claude_chat,
qwen_chat, minimax_chat, codex_exec, claude_code_exec). See
docs/guide/new-backend.md for the full
contract; in short you add a skillopt/model/<name>_backend.py module,
register it in skillopt/model/common.py + backend_config.py, and wire
it through the router in skillopt/model/__init__.py. qwen_backend.py
and minimax_backend.py are good templates.
Adding a new benchmark
A benchmark = a skillopt/envs/<name>/ package with a dataloader.py, a
rollout.py, and an initial.md seed skill. See
docs/guide/new-benchmark.md for the full
contract; the simplest reference is skillopt/envs/searchqa/.
WebUI
Launch the monitoring dashboard (optional):
pip install -e ".[webui]"
python -m skillopt_webui.app
| Flag | Default | Description |
|---|---|---|
--port | 7860 | Server port |
--host | 0.0.0.0 | Bind address |
--share | off | Create a public Gradio share link |
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 others},
journal={arXiv preprint arXiv:2605.23904},
year={2026}
}
Similar Articles
@oliviscusAI: MICROSOFT JUST OPEN-SOURCED SELF-EVOLVING AGENT SKILLS. it's called skillopt. skills that improve themselves the same w…
Microsoft open-sourced SkillOpt, a tool that enables AI agent skills to self-improve by automatically evaluating and rewriting their instructions, outperforming hand-crafted prompts and other optimizers with no model lock-in.
@omarsar0: New research from Microsoft Research I see a lot of AI engineers handwriting agent skill docs and hope they generalize.…
Microsoft Research introduces SkillOpt, a method that treats agent skill documents as trainable external state, using an optimizer model to make bounded edits validated by a held-out set. The approach achieves best or tied results across 52 evaluation cells and improves accuracy by over 23 points on GPT-5.5, with zero extra inference cost and transferable skills.
@AlphaSignalAI: https://x.com/AlphaSignalAI/status/2069064122218717387
This article explores how AI agents can automatically write and optimize their skill files using techniques like SkillOpt from Microsoft Research, which treats skill documents as trainable state and delivers significant performance improvements. It addresses the challenge of manual skill tuning and presents frameworks like GEPA and EvoSkill as evolutionary approaches.
@Saboo_Shubham_: Microsoft's strategy for Self-evolving agent skills. Train agent skills like you train neural networks - with epochs, b…
Microsoft's strategy for self-evolving agent skills, training them like neural networks with epochs, batch size, learning rates, and validation gates, fully open-source.
@DAIEvolutionHub: MICROSOFT JUST OPEN-SOURCED A WAY TO “TRAIN” AI AGENTS WITHOUT TOUCHING MODEL WEIGHTS SkillOpt treats a simple markdown…
Microsoft open-sourced SkillOpt, a method that treats markdown skill files like neural network parameters to train AI agents without modifying model weights, using learning rates, validation checks, minibatches, and epochs.