Overview
The question
Given a task, a screenshot, and history, a visual GUI agent must decide: act directly, retrieve a procedural text skill, retrieve a visual exemplar, or combine both, and then turn whatever it retrieved into a correct GUI action. MMSkill-RL treats this four-way routing decision (DIRECT / QUERY_TEXT / QUERY_IMAGE / QUERY_BOTH) as the object of learning.
Method in one line: minimal SFT warm start for format and skill-conditioned action, then outcome-based RL so the weak model learns when to query, instead of imitating a strong model's choices.
| Phase | SFT validated · RL is the next gate |
| Latest run | 2026-08-13 · SkillUseBench 4K, Qwen3.5 SFT vs base: +54.2 pp end-to-end, with a routing-collapse red flag that motivates the RL stage |
| Frozen assets | skill pool (3,010 clusters · 5,144 exemplars) · counterfactual matrix (164,464 rows) · clean three-way split with zero overlap |
| Target | ICLR-track paper: skill pools lift both strong and weak models; RL reduces none/uncovered and teaches routing |
Proposal
Contribution targets
- A clean multimodal GUI skill pool — deduplicated, provenance-tracked, frozen.
- A skill-sensitive benchmark and oracle-training signal — every step labeled by which conditions (direct/text/image/both) a strong model can solve it under.
- Evidence that explicit skill use reduces
none/uncoveredand lifts weak-model action correctness. - An end-to-end skill-use policy — the weak model learns
DIRECT / QUERY_TEXT / QUERY_IMAGE / QUERY_BOTHfrom its own rollouts and rewards.
Governing principle
Gemini counterfactual outcomes are a capability signal, not the weak model's routing oracle. The final policy must come from student rollouts plus reward, because what a strong model can solve directly says nothing about what the weak model should attempt directly.
This one principle shapes everything downstream: strict routing labels (6,517 steps) are used only as light exposure in SFT, never as the imitation target; the ablation grid exists precisely to prove the lift comes from RL-learned routing rather than SFT memorization.
Data & Splits
Clean split discipline
| split | buckets | scale | role |
|---|---|---|---|
| skill-source | 15–49 | 5,144 steps · 1,500 tasks | skill pool provenance |
| oracle-train | 50–99 | 41,116 steps · 2,493 tasks | counterfactual matrix + RL prompts |
| external-final | 0–14 | 12,564 steps · 761 tasks | held-out benchmark only |
Overlap audit: 0 same-task / 0 same-step between skill pool and either training or benchmark splits.
Frozen skill pool
| text clusters | 3,010 (LLM-summary clustering over AgentNet raw skills) |
| visual exemplars | 5,144 (≤3 clean exemplars per cluster) |
| embeddings | 8,154 |
Deliberately not compressed further: 56.3% of clusters have a single clean member and ~80% have at most three, so further merging would hurt retrieval coverage while only deduplicating a few high-frequency GUI patterns.
Counterfactual Matrix
Oracle-train counterfactual matrix
Every oracle-train step was run under four conditions with Gemini 3.5 Flash: 41,116 unique steps × 4 = 164,464 condition rows (42 shards, 1 error total).
| condition | success |
|---|---|
| direct (no skill) | 43.02% |
| + text skill | 45.77% |
| + image skill | 43.29% |
| + both | 45.98% |
Step-level structure (what the numbers mean)
| category | share | reading |
|---|---|---|
| skill_rescue | 14.33% | direct fails, at least one skill condition succeeds — the value proposition |
| optional fallback | 41.50% | direct succeeds but skills also succeed — cannot hard-label DIRECT for a weak model |
| none / uncovered | 42.65% | nothing works — the ceiling RL must push down |
| direct strict | 1.52% | direct succeeds and all skills fail |
High-confidence routing labels total 6,517 (QUERY_TEXT 3,179 · QUERY_IMAGE 1,515 · QUERY_BOTH 1,196 · DIRECT_STRICT 627) — suitable for light exposure only.
Training Plan
MMSkill-RL = minimal SFT warm start + outcome-based RL
SFT (80–100K examples): format/schema ~5K · skill-conditioned action ~55K · direct action ~15–18K · light routing exposure ~6K · fallback reformats ~10–15K. Goal: legal structure, the four-way decision format, and skill-evidence-to-action generation — not routing imitation.
RL (full oracle-train): 41,116 prompts × 4 rollouts (164,464 trajectories/epoch), scaling to ×8. Weighted sampler instead of uniform: skill_rescue 3–4×, fallback 1.5–2×, direct 1×, uncovered 0.5×. Reward = format + deterministic action correctness + query cost (DIRECT < single query < BOTH) + skill-use reward only when the query improves the outcome.
Required ablations
| arm | answers |
|---|---|
| RL-only | can rewards alone train format and routing? |
| minimal SFT + RL | main method |
| full SFT only | is SFT enough? (the 8-13 result already says no for routing) |
| full SFT + RL | does heavy imitation help or hurt RL? |
The grid answers the reviewer question the project is built around: does the lift come from RL-learned skill use, or did SFT already teach the routing?
Run Status
Current runs and gates
| item | status |
|---|---|
Skill pool frozen (outputs/skill_pool) |
frozen |
| Counterfactual matrix, 164,464 rows | complete · 1 error |
| Clean-split overlap audit | 0 / 0 |
| SFT vs base autonomous eval on SkillUseBench 4K | done 2026-08-13 |
| Routing behavior after SFT | collapsed to QUERY_IMAGE — expected, motivates RL |
| Full-scale minimal-SFT manifest (80–100K) | pending |
| RL small debug (1–2K prompts × 4 rollouts) | next gate |
| Full RL (41,116 × 4 → ×8) | queued behind debug |
| Ablation grid (4 arms) | queued |
Results
SFT vs base · SkillUseBench 4K (2026-08-13, Qwen3.5)
| metric | base | SFT | Δ |
|---|---|---|---|
| end-to-end accuracy | 22.6% | 76.8% | +54.2 pp (95% CI [52.6, 55.8], McNemar p ≈ 0) |
| action validity | 39.4% | 100% | +60.6 pp |
| decision format (strict) | 88.8% | 100% | +11.2 pp |
| what-accuracy / where-accuracy | 30.0 / 69.9 | 86.6 / 82.7 | — |
| routing-oracle agreement | 34.8% | 45.0% | +10.3 pp |
The red flag that matters most
Base routing spreads across DIRECT 3,111 / QUERY_TEXT 881; SFT routing collapses to QUERY_IMAGE on 4,000 of 4,000 steps, with query cost rising 0.011 → 0.080. The accuracy lift is real, but the policy learned "always fetch a visual exemplar," not when to fetch one.
This is the project's thesis confirming itself: supervised exposure teaches format and skill-conditioned action, and it does not teach routing. The routing decision has to be earned through student rollouts against outcome and cost rewards — exactly the RL stage that runs next. Discordant pairs: SFT-only-correct 2,209 vs base-only-correct 40.
Artifacts
Artifacts
| artifact | where |
|---|---|
| Experiment plan & status (single source of truth) | mmskill-rl/goal.md |
| Frozen skill pool | outputs/skill_pool — 3,010 clusters · 5,144 exemplars · 8,154 embeddings |
| Counterfactual matrix | outputs/training_signals/gemini35flash_oracletrain_allactions/ — 42 shards |
| Autonomous eval reports | outputs/autonomous_eval/ — base, SFT, and paired comparison JSON |
| Local experiment dashboard | dashboard/index.html via dashboard_server.py |
| Paper draft | paper_iclr2026/ |