SkillOpt is an agent skill for training, evaluating, and improving other agent skills as reusable external capabilities.
It turns a SKILL.md or similar agent procedure file into an optimization target:
- create train and validation task suites
- run baseline rollouts with the target agent/model fixed
- analyze success and failure traces
- propose small, controlled skill edits
- accept candidates only when validation improves
- export a clean
best_skill.mdfor deployment
The skill is inspired by Microsoft Research's SkillOpt framing: train the procedure, not the model weights.
SKILL.md: portable agent instructionsscripts/skillopt.py: local run directory, rollout, scoring, validation gate, report, and export helperreferences/evaluation.md: JSONL task and scorer referenceagents/openai.yaml: UI metadata for compatible agents
python3 scripts/skillopt.py init --skill path/to/SKILL.md --out skillopt_runs/my-skill
python3 scripts/skillopt.py validate-tasks skillopt_runs/my-skill/tasks/val.jsonl
python3 scripts/skillopt.py run \
--tasks skillopt_runs/my-skill/tasks/val.jsonl \
--skill skillopt_runs/my-skill/source_skill.md \
--out skillopt_runs/my-skill/rollouts/val_baseline \
--agent-command "hermes -s {skill_path} -z {prompt}"Use any agent command that can load a candidate skill and return task output. The validation gate compares rollout directories and accepts only measured improvements.