Repolode
microsoft

microsoft/SkillOpt

A Python optimizer that trains reusable natural-language skill documents for frozen LLM agents, using validation-gated edits instead of weight updates.

Stars
18,923
Forks
1,799
Open issues
57
Last commit
yesterday

What is it?

SkillOpt treats an agent's skill document as the trainable state of a frozen model. A separate optimizer model reads scored rollouts from the agent and proposes bounded add, delete, or replace edits to a single skill file. A candidate edit is kept only when it improves a held-out validation score, and a rejected-edit buffer and epoch-level meta updates keep training stable.

The output is a compact best_skill.md file, typically 300 to 2,000 tokens, that is deployed alongside the unchanged target model. The project includes built-in benchmarks, support for multiple model backends such as OpenAI, Azure, Claude, and Qwen, and integration with execution harnesses including Codex CLI and Claude Code. An optional WebUI dashboard monitors training runs, and a nightly SkillOpt-Sleep CLI reviews past sessions and consolidates validated skills.

The project is installable from PyPI as skillopt and is published under the MIT license.

Key features

  • 01Trains a single skill document through add, delete, and replace edits proposed from scored rollouts.
  • 02Accepts edits only when they strictly improve a held-out validation score.
  • 03Outputs a deployable best_skill.md that adds no inference-time model calls.
  • 04Supports multiple backends including OpenAI, Azure, Claude, Qwen, and OpenAI-compatible endpoints.
  • 05Integrates with Codex CLI and Claude Code execution harnesses.
  • 06Provides an optional WebUI dashboard for monitoring training.

Use cases

  • Improving the instructions an LLM agent follows for a fixed task without fine-tuning the model.
  • Benchmarking how much a skill document can lift accuracy for a given target model.
  • Transferring an optimized skill file across model versions or coding-agent harnesses.
  • Running nightly offline refinement of skills for local coding agents.

Quick start

  1. 1

    Install the package from PyPI

    pip install skillopt
  2. 2

    Read the versioned documentation for configuration and training commands

Things to know

  • Training runs against target LLM backends, so you need access to model APIs or harnesses such as Claude Code or Codex.
  • Installation, data preparation and training details are in external documentation rather than the README itself.

In collections

Topics

FAQ

What is SkillOpt?
A Python optimizer that trains reusable natural-language skill documents for frozen LLM agents, using validation-gated edits instead of weight updates. SkillOpt treats an agent's skill document as the trainable state of a frozen model. A separate optimizer model reads scored rollouts from the agent and proposes bounded add, delete, or replace edits to a single skill file. A candidate edit is kept only when it improves a held-out validation score, and a rejected-edit buffer and epoch-level meta updates keep training stable.
Is SkillOpt free to use? What license does it have?
SkillOpt is open source under the MIT license. Check the license terms before using it in commercial products.
Is SkillOpt still maintained?
Actively maintained. The last commit to SkillOpt was on Nov 5, 2026.
What can I use SkillOpt for?
Improving the instructions an LLM agent follows for a fixed task without fine-tuning the model. Benchmarking how much a skill document can lift accuracy for a given target model. Transferring an optimized skill file across model versions or coding-agent harnesses. Running nightly offline refinement of skills for local coding agents.
How do I install SkillOpt?
Install the package from PyPI: pip install skillopt Read the versioned documentation for configuration and training commands
Where can I get SkillOpt?
The source code and installation instructions are on GitHub: https://github.com/microsoft/SkillOpt

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects