{"slug": "skillopt-self-evolving-agent-skills-with-zero-inference-overhead", "title": "SkillOpt: Self-Evolving Agent Skills with Zero Inference Overhead", "summary": "Microsoft released SkillOpt v0.2.0 on PyPI on 2026-07-02, adding SkillOpt-Sleep, a nightly offline self-evolution engine that runs harvest, mine, replay and consolidate stages behind a held-out validation gate and ships as the skillopt-sleep CLI. The release also adds integration shells for Claude Code, Codex, Copilot and Devin plus an OpenClaw reference adaptation, which live in the repository rather than the PyPI wheel, along with SearchQA split materialization, Windows robustness fixes and hardened JSON parsing. SkillOpt trains agent skills like neural networks — with epochs, batch sizes, learning rates and validation gates — without touching model weights, and was accepted to NeurIPS 2026 as a Spotlight and won 1st Place in the Executive Challenge at the Microsoft Global Hackathon 2026.", "body_md": "*Train agent skills like you train neural networks — with epochs, (mini-)batchsize, learning rates, and validation gates — but without touching model weights.*\n\n📖 **For installation, data preparation, training/eval commands, configuration, and framework internals, start with the versioned [SkillOpt documentation](https://github.com/microsoft/SkillOpt/blob/main/docs/index.md). A concise rendered overview is available in the [Documentation & Reproduction Guide](https://microsoft.github.io/SkillOpt/docs/guideline.html), and longer-form engineering analysis appears on the [Technical Blog](https://microsoft.github.io/SkillOpt/blog/). We also maintain a [Changelog](https://github.com/microsoft/SkillOpt/blob/main/CHANGELOG.md) for released and unreleased changes.**\n\n- **[2026-11]** 🎤**SkillOpt is accepted to NeurIPS 2026 as a Spotlight!** See you in Sydney!\n- **[2026-11]** 🏆**SkillOpt won 1st Place in the Executive Challenge at the Microsoft Global Hackathon 2026** ([badge](https://www.credly.com/badges/d9fd6cd8-e310-4e9b-9f63-ed7a3383fc85/public_url) , issued by The Microsoft Garage).\n- **[2026-07-24]** 📰**SkillOpt in the news.** Read the official[Microsoft Research feature](https://www.microsoft.com/en-us/research/blog/skillopt-agent-skills-as-trainable-parameters/) , along with recent coverage from[VentureBeat](https://venturebeat.com/orchestration/microsofts-open-source-skillopt-automatically-upgrades-ai-agent-skills-without-touching-model-weights) ,[Synced (机器之心)](https://mp.weixin.qq.com/s/pMlyj3a3KOh8L7cIHClRXA) ,[Flowtivity](https://flowtivity.ai/blog/microsoft-skillopt-train-ai-agent-skills/) , and[The Decoder](https://the-decoder.com/microsofts-skillopt-boosts-gpt-5-5-by-using-nothing-but-a-trained-markdown-file/) .\n- **[2026-07-02]** 🚀**SkillOpt [v0.2.0](https://github.com/microsoft/SkillOpt/releases/tag/v0.2.0) is out on [PyPI](https://pypi.org/project/skillopt/)!** Headline feature:**SkillOpt-Sleep** , a nightly offline self-evolution engine (harvest → mine → replay → consolidate behind a held-out validation gate), now shipped as the`skillopt-sleep` CLI. It also includes experimental multi-objective, replay, and dream-rollout controls; the main CLI keeps conservative defaults and does not expose every experiment-harness control as a flag. The release source adds integration shells for**Claude Code, Codex, Copilot, and Devin** , plus an**OpenClaw reference adaptation** ; these plugin/MCP files live in the repository rather than the PyPI wheel. It also adds SearchQA split materialization, Windows robustness, and hardened JSON parsing. See the[release notes](https://github.com/microsoft/SkillOpt/releases/tag/v0.2.0) for full release details and contributor acknowledgements.\n- **[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.md`](https://github.com/microsoft/SkillOpt/blob/main/docs/sleep/README.md)** for what it is, how to use it, and results.\n- **[2026-06-03]** 🎉**[gbrain](https://github.com/garrytan/gbrain), [gbrain-evals](https://github.com/garrytan/gbrain-evals/blob/main/docs/benchmarks/2026-06-03-skillopt.md), and [darwin-skill](https://github.com/alchaincyf/darwin-skill) have all integrated SkillOpt.**\n- **[2026-06-02]** 🎉**SkillOpt [v0.1.0](https://github.com/microsoft/SkillOpt/releases/tag/v0.1.0) is now available on [PyPI](https://pypi.org/project/skillopt/)!** 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.\n\nModern 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.\n\n**SkillOpt treats the skill document as the trainable state of a frozen\nagent**, and trains it with the discipline that makes weight-space\noptimization reproducible. A separate optimizer model turns scored rollouts\ninto bounded add / delete / replace edits on a single skill document; in the\ndefault paper-style path, a candidate edit is accepted only when it strictly\nimproves a held-out validation score. A textual learning-rate budget, a rejected-edit buffer,\nand an epoch-wise slow / meta update make skill training stable while\nadding **zero inference-time model calls** at deployment.\n\nThe deployed artifact is a compact `best_skill.md` (typically 300–2,000\ntokens) that runs against the unchanged target model. Across **six\nbenchmarks, seven target models, and three execution harnesses** (direct\nchat, Codex CLI, Claude Code CLI), SkillOpt is best or tied-best on **all\n52 evaluated (model, benchmark, harness) cells** and on GPT-5.5 lifts the\naverage no-skill accuracy by **+23.5 points in direct chat, +24.8 inside\nthe Codex agentic loop, and +19.1 inside Claude Code**. Optimized skill\nartifacts transfer across model scales, between Codex and Claude Code\nharnesses, and to nearby benchmarks without further optimization.\n\nFor the full method, ablations, and per-cell results see the [paper](https://arxiv.org/abs/2605.23904); for a visual walkthrough of the loop see the [project page](https://microsoft.github.io/SkillOpt/); for deeper API / backend / benchmark docs see [`docs/`](https://github.com/microsoft/SkillOpt/blob/main/docs).\n\n## 64c8f76086bed7bd7a5ce664a7a14f40_raw.mp4\n\n**▶ Watch the full demo on YouTube**\n\nA backend = a chat / exec target (e.g. `openai_chat`, `claude_chat`,\n`qwen_chat`, `minimax_chat`, `copilot_chat`, `openai_compatible`, `codex_exec`,\n`claude_code_exec`, `cursor_exec`, `copilot_exec`). If a provider implements the OpenAI Chat Completions\nprotocol, try the built-in `openai_compatible` backend before adding code. See\n[`docs/guide/new-backend.md`](https://github.com/microsoft/SkillOpt/blob/main/docs/guide/new-backend.md) for the full\ncontract. Chat backends add a `skillopt/model/<name>_backend.py` module;\ntarget-only exec backends use the shared harness in `codex_harness.py`.\nBoth register through `common.py`, `backend_config.py`, and\n`skillopt/model/__init__.py`.\n\nA benchmark = a `skillopt/envs/<name>/` package with an adapter, a data loader,\na scored rollout helper, a YAML config, and optionally an initial seed skill.\nSee\n[`docs/guide/new-benchmark.md`](https://github.com/microsoft/SkillOpt/blob/main/docs/guide/new-benchmark.md) for the full\ncontract; the simplest reference is `skillopt/envs/searchqa/`.\n\nLaunch the monitoring dashboard (optional):\n\n```\npip install -e \".[webui]\"\npython -m skillopt_webui.app\n```\n\n| Flag | Default | Description | \n|---|---|---|\n| `--port` | 7860 | Server port | \n| `--host` | `127.0.0.1` | Bind address | \n| `--share` | off | Create a public Gradio share link | \n\nThe default host is loopback-only. Exposing the dashboard (`--host 0.0.0.0` or `--share`) requires\n`--auth-user`/`--auth-pass` (or `SKILLOPT_WEBUI_USER`/` SKILLOPT_WEBUI_PASS`).\n\n```\n@article{yang2026skillopt,\n  title={Skillopt: Executive strategy for self-evolving agent skills},\n  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},\n  journal={arXiv preprint arXiv:2605.23904},\n  year={2026}\n}\n```\n\n", "url": "https://wpnews.pro/news/skillopt-self-evolving-agent-skills-with-zero-inference-overhead", "canonical_source": "https://github.com/microsoft/skillopt", "published_at": "2026-11-11 22:20:08+00:00", "updated_at": "2026-11-11 22:50:49.190875+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "machine-learning", "ai-research"], "entities": ["Microsoft", "SkillOpt", "SkillOpt-Sleep", "PyPI", "Claude Code", "Codex", "Copilot", "NeurIPS 2026"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/skillopt-self-evolving-agent-skills-with-zero-inference-overhead", "markdown": "https://wpnews.pro/news/skillopt-self-evolving-agent-skills-with-zero-inference-overhead.md", "text": "https://wpnews.pro/news/skillopt-self-evolving-agent-skills-with-zero-inference-overhead.txt", "jsonld": "https://wpnews.pro/news/skillopt-self-evolving-agent-skills-with-zero-inference-overhead.jsonld"}}