Run autonomous YOLO training experiments — reads training-plan.md, assesses bottlenecks, acts strategically, and delegates HP optimization to model.tune().
التثبيت
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
Run autonomous YOLO training experiments — reads training-plan.md, assesses bottlenecks, acts strategically, and delegates HP optimization to model.tune().
Auto-Experiment — Strategic Decision Loop
Autonomous experimentation via hypothesis-driven reasoning.
The agent makes strategic decisions (architecture, data, augmentation strategy).
HP optimization is delegated to model.tune() — don't compete with it.
Pre-Flight
yolo-project.yaml exists — run /setup if not
training-plan.md exists with goals + boundaries — run /setup if not
If not found, check for program.md (deprecated name) and warn user to rename it
Dataset is valid — yolo-validate
GPU available — python -c "import torch; print(torch.cuda.is_available())"
Read experiments/dataset_profile.yaml — run /review-dataset if missing
Context Loading
Read in order before every session:
yolo-project.yaml — classes, dataset path, model defaults
If no baseline exists: yolo-experiment baseline --budget 5 --patience 3
After baseline, update training-plan.md Current Performance section.
Session Start
Write a session marker in summary.md:
## Session YYYY-MM-DD HH:MM — Budget: N experiments
If a session marker exists with today's date and no end marker, this is a resumed session — count existing entries toward budget.
Reasoning Loop
For each decision, follow all 3 steps in order:
1. ASSESS — What's the bottleneck?
Read dataset profile, per-class AP, training dynamics from last run.
Classify the bottleneck:
Data quality → active learning (/review-dataset, /cvat-push, /autolabel)
Architecture mismatch → swap config (yolo-experiment run --override "model=configs/architectures/...")
HP not optimized → yolo-experiment tune --space <preset>
Write a hypothesis: "I expect X because Y, so I'll do Z"
Cold-start (first post-baseline): Focus on dataset profile characteristics, per-class AP spread, class imbalance. Training dynamics analysis starts from experiment 2 onward.
2. ACT — Do the right thing
Architecture change:
yolo-experiment run --override "model=configs/architectures/yolo11-p2.yaml" --budget <epochs>
Requires dataset profile justification — cite ≥2 numbers. See resources/architecture-guide.md.
HP optimization (delegate to model.tune):
# Use presets when diagnosis maps cleanly:
yolo-experiment tune --space lr --iterations 20 --epochs 10
yolo-experiment tune --space augmentation --iterations 20 --epochs 10
yolo-experiment tune --space loss --iterations 15 --epochs 10
yolo-experiment tune --space optimizer --iterations 20 --epochs 10
# Use custom when diagnosis is specific:
yolo-experiment tune --space "lr0=0.001:0.01 momentum=0.85:0.98" --iterations 20 --epochs 10
yolo-experiment run --override "<param>=<value>" --budget <epochs>
Data action (when data quality is the bottleneck):
/review-dataset, /cvat-push, /autolabel
3. LOG — Record what happened
Read experiment report from experiments/exp_NNN_*/report.md
Append simplified journal entry to summary.md matching schema in resources/journal-schema.yaml
Every field marked REQUIRED must be present.
Decide: continue this direction, try different lever, or stop
Session End
Write session end marker: ## Session End — N experiments run
Write experiments/session_YYYY-MM-DD.md with before/after + key learnings
Update training-plan.md Model Lineage with current best path, metrics, source experiment
Guardrails
Checkpoint backup — hook handles automatically before every run/tune
Immutable data — NEVER modify original dataset files
Architecture change gate — 3+ experiments on current architecture with <0.5% improvement before switching. Exception: >50% small objects with no P2 head (see resources/architecture-guide.md)
Architecture justification — must cite ≥2 dataset profile numbers in journal
Log everything — write journal entry even if experiment fails