Our take
- Activity
- 67
- Community
- 75
- Issues
- 61
- Pull requests
- 57
+620 stars in the last 30 days
- Merges more pull requests than 93% of the projects we track
Project history
Daily GitHub snapshots since Oct 7, 2026. History covers stars and forks; health signals are not tracked historically.
Stars
19,080Forks
1,830Change since Nov 14, 2026: +11 stars·+4 forks
Overview
SkillOpt optimizes a natural-language skill document for an agent whose underlying LLM remains frozen. It uses task trajectories and scores to propose bounded text edits, then uses validation results to decide whether candidate updates should be kept. The goal is to improve repeatable task performance without fine-tuning model weights or adding inference-time optimizer calls to the deployed skill.
This approach is useful when an agent has a stable task and an evaluation signal, but manually maintaining its instructions is becoming difficult. SkillOpt includes training and evaluation tooling, multiple model and execution backends, and a WebUI. See the repository and documentation for implementation details.
Key Features
- Treats a Markdown skill document as the state to optimize, rather than updating target-model weights.
- Generates candidate edits from scored agent trajectories and gates updates using validation results.
- Produces a deployable
best_skill.mdartifact for use with the unchanged target model. - Supports chat and execution backends, including OpenAI-compatible providers and coding-agent harnesses.
- Provides benchmark adapters and guidance for adding custom benchmarks and backends.
- Offers an optional Gradio WebUI for monitoring.
- Includes SkillOpt-Sleep, an offline workflow for reviewing sessions, replaying tasks, and consolidating validated skills.
Use Cases
- Agent developers can improve instructions for a recurring task when they have representative examples and a way to score results.
- Teams maintaining coding-agent workflows can test skill changes against a held-out set before deploying an updated Markdown file.
- Researchers can compare skill-optimization runs across models, benchmarks, and execution harnesses without fine-tuning the target model.
- Operators of local coding agents can use the offline SkillOpt-Sleep workflow to mine sessions for recurring tasks and validate consolidated skills.
Getting Started
Install the package with pip install skillopt. For data preparation, configuration, and training and evaluation commands, follow the documentation.
Considerations
- SkillOpt requires a useful evaluation signal and held-out validation data to judge candidate edits; results depend on the task setup and scoring quality.
- Optimization uses a separate model to propose edits, so deployment without extra inference-time optimizer calls does not mean the training process is model-call-free.
- The target model is kept frozen. This is not a substitute for weight fine-tuning when the task requires changing model capabilities rather than instructions.
- The repository describes some multi-objective, replay, and dream-rollout controls as experimental. Check the release notes and documentation for current support and configuration details.
Found this useful?
Share it with someone who would like SkillOpt.