Skill Optimizer Run Summary
| Field |
Value |
| Run mode |
dry-run |
| Init status |
✅ Success (exit 0) |
| Run status |
❌ Failed (exit 1) |
| Workflow run |
24814681146 |
Evidence
From run.log:
Unhandled error: Error: target.skill: "target.skill" does not exist:
/home/runner/work/gh-aw/gh-aw/SKILL.md
— Create SKILL.md at that path or update target.skill
From init.log:
[init] Created /home/runner/work/gh-aw/gh-aw/.skill-optimizer/skill-optimizer.json
[init] SKILL.md: /home/runner/work/gh-aw/gh-aw/SKILL.md (not found yet — create it)
From answers.json: optimizer is configured for prompt surface, model claude-sonnet-4.6, up to 10 tasks / 1 iteration, 80% pass-rate target.
Improvements
-
Create SKILL.md at the repository root
The optimizer's init step ran successfully and generated .skill-optimizer/skill-optimizer.json, but the run step immediately failed because SKILL.md was absent. Without this file the optimizer can never execute any tasks.
Action: Create /SKILL.md that describes the gh aw prompt surface — what the CLI does, key concepts (workflow compilation, engines, MCP servers), and 3–5 representative usage examples drawn from AGENTS.md and the existing skills/ directory.
Expected impact: Unblocks the optimizer entirely; every subsequent daily run will be able to execute tasks instead of failing at validation.
-
Commit .skill-optimizer/skill-optimizer.json to the repository
The init step regenerates this config on every run, adding unnecessary noise and preventing the team from tuning optimizer settings (model list, maxTasks, maxIterations, pass-rate target) via code review.
Action: Add .skill-optimizer/ to the repository, commit the generated skill-optimizer.json, and add a note to AGENTS.md explaining how to update optimizer settings. Optionally add .skill-optimizer/ to .gitignore exclusions to prevent accidental re-init overwriting the committed config.
Expected impact: Makes optimizer configuration reviewable and stable; prevents silent config drift between runs.
-
Add a pre-flight check to the skill-optimizer workflow that validates SKILL.md exists before running
The current workflow only discovers the missing file at runtime (exit 1), which wastes CI minutes and produces a confusing error. A simple test -f SKILL.md guard step with a clear failure message and a link to the creation instructions would surface the problem immediately.
Action: In the GitHub Actions workflow that calls skill-optimizer, add an early step:
- name: Validate SKILL.md exists
run: |
if [ ! -f SKILL.md ]; then
echo "::error file=SKILL.md::SKILL.md is required by skill-optimizer. See .skill-optimizer/skill-optimizer.json for setup instructions."
exit 1
fi
Expected impact: Cuts wasted CI time; gives contributors an actionable error annotation in the Actions UI instead of a buried stack trace in a log artifact.
Generated by Daily Skill Optimizer Improvements · ● 159.6K · ◷
Skill Optimizer Run Summary
dry-runEvidence
From
run.log:From
init.log:From
answers.json: optimizer is configured forpromptsurface, modelclaude-sonnet-4.6, up to 10 tasks / 1 iteration, 80% pass-rate target.Improvements
Create
SKILL.mdat the repository rootThe optimizer's init step ran successfully and generated
.skill-optimizer/skill-optimizer.json, but the run step immediately failed becauseSKILL.mdwas absent. Without this file the optimizer can never execute any tasks.Action: Create
/SKILL.mdthat describes thegh awprompt surface — what the CLI does, key concepts (workflow compilation, engines, MCP servers), and 3–5 representative usage examples drawn fromAGENTS.mdand the existingskills/directory.Expected impact: Unblocks the optimizer entirely; every subsequent daily run will be able to execute tasks instead of failing at validation.
Commit
.skill-optimizer/skill-optimizer.jsonto the repositoryThe init step regenerates this config on every run, adding unnecessary noise and preventing the team from tuning optimizer settings (model list,
maxTasks,maxIterations, pass-rate target) via code review.Action: Add
.skill-optimizer/to the repository, commit the generatedskill-optimizer.json, and add a note toAGENTS.mdexplaining how to update optimizer settings. Optionally add.skill-optimizer/to.gitignoreexclusions to prevent accidental re-init overwriting the committed config.Expected impact: Makes optimizer configuration reviewable and stable; prevents silent config drift between runs.
Add a pre-flight check to the
skill-optimizerworkflow that validatesSKILL.mdexists before runningThe current workflow only discovers the missing file at runtime (exit 1), which wastes CI minutes and produces a confusing error. A simple
test -f SKILL.mdguard step with a clear failure message and a link to the creation instructions would surface the problem immediately.Action: In the GitHub Actions workflow that calls
skill-optimizer, add an early step:Expected impact: Cuts wasted CI time; gives contributors an actionable error annotation in the Actions UI instead of a buried stack trace in a log artifact.