Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Workflow 1.5: Bridge between idea discovery and auto review. Reads EXPERIMENT_PLAN.md, implements experiment code, deploys to GPU, collects initial results. Use when user says "实现实验", "implement experiments", "bridge", "从计划到跑实验", "deploy the plan", or has an experiment plan ready to execute.
.claude/skills/aris-experiment-bridge/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-09 | ✗→✓ | ▲ Improved | — | — |
| case-17 | ✗→✓ | ▲ Improved | — | — |
| case-19 | ✗→✓ | ▲ Improved | — | — |
| case-12 | ✗→✓ | ▲ Improved | — | — |
| case-07 | ✗→✓ | ▲ Improved | — | — |
Implement and deploy experiments from plan: $ARGUMENTS
This skill bridges Workflow 1 (idea discovery + method refinement) and Workflow 2 (auto review loop). It takes the experiment plan and turns it into running experiments with initial results.
Workflow 1 output: This skill: Workflow 2 input:
refine-logs/EXPERIMENT_PLAN.md → implement → GPT-5.4 review → deploy → collect → initial results ready
refine-logs/EXPERIMENT_TRACKER.md code (cross-model) /aris-run-experiment for /aris-auto-review-loop
refine-logs/FINAL_PROPOSAL.mdfalse to skip.false to manually inspect code before deploying.false (default), write code from scratch or reuse existing project files.true, (1) read IDEA_CANDIDATES.md instead of full IDEA_REPORT.md if available, (2) append experiment results to EXPERIMENT_LOG.md after collection.> Override: /aris-experiment-bridge "EXPERIMENT_PLAN.md" — compact: true, base repo: https://github.com/org/project
This skill expects one or more of:
refine-logs/EXPERIMENT_PLAN.md (best) — claim-driven experiment roadmap from /aris-experiment-planrefine-logs/EXPERIMENT_TRACKER.md — run-by-run execution tablerefine-logs/FINAL_PROPOSAL.md — method description for implementation contextIDEA_CANDIDATES.md — compact idea summary (preferred when COMPACT: true)IDEA_REPORT.md — full brainstorm output (fallback)If none exist, ask the user what experiments to implement.
Before parsing the experiment plan or writing any code, verify that compute resources are available by running /aris-compute-guard.
If /aris-compute-guard is not available as a sub-skill, perform the check inline:
CLAUDE.md to determine the target environment (gpu: local, remote, vast, or modal)nvidia-smi --query-gpu=index,memory.used,memory.total --format=csv,noheader — free if memory.used < 500 MiBpython3 -c "import torch; print(torch.backends.mps.is_available())"ssh <server> nvidia-smi --query-gpu=index,memory.used,memory.total --format=csv,noheadermodal token verify — always available if authenticatedIf compute is NOT available → STOP the entire bridge workflow.
⚠️ COMPUTE RESOURCES UNAVAILABLE — Experiment Bridge Halted
Cannot proceed with implementing and deploying experiments because compute
resources are not available.
[reason and suggestions]
I will NOT proceed with code implementation or experiment deployment, as there
is no compute target to run the experiments on. Please resolve the compute
issue and re-run /aris-experiment-bridge.Do NOT implement experiment code if you cannot deploy it. Writing code without a deployment target wastes time and may lead to hallucinated results during the collection phase.
If compute IS available → proceed to Phase 1.
Read EXPERIMENT_PLAN.md and extract:
FINAL_PROPOSAL.md — what exactly to implementPresent a brief summary:
📋 Experiment plan loaded:
- Milestones: [N] (sanity → baseline → main → ablation)
- Must-run experiments: [N]
- Nice-to-have: [N]
- Estimated GPU-hours: [X]
Proceeding to implementation.If BASE_REPO is set — clone the repo first:
bashgit clone <BASE_REPO> base_repo/ # Read the repo's README, understand its structure, find entry points # Implement experiments by modifying/extending this codebase
For each milestone (in order), write the experiment scripts:
base_repo/) for existing experiment scripts, model code, data loaders. Reuse as much as possible.Skip this step if CODE_REVIEW is false.
Before deploying, send the experiment code to GPT-5.4 xhigh for review:
mcp__codex__codex:
config: {"model_reasoning_effort": "xhigh"}
prompt: |
Review the following experiment implementation for correctness.
## Experiment Plan:
[paste key sections from EXPERIMENT_PLAN.md]
## Method Description:
[paste from FINAL_PROPOSAL.md]
## Implementation:
[paste the experiment scripts]
Check for:
1. Does the code correctly implement the method described in the proposal?
2. Are all hyperparameters from the plan reflected in the code?
3. Are there any logic bugs (wrong loss function, incorrect data split, missing eval)?
4. Is the evaluation metric computed correctly?
5. **CRITICAL: Does evaluation use the dataset's actual ground truth labels — NOT another model's output as ground truth?** This is a common and severe bug.
6. Any potential issues (OOM risk, numerical instability, missing seeds)?
For each issue found, specify: CRITICAL / MAJOR / MINOR and the exact fix.On review results:
Before deploying the full experiment suite, run the sanity-stage experiment:
/aris-run-experiment [sanity experiment command]Wait for completion. Verify:
If sanity fails → auto-debug before giving up (max 3 attempts):
Before the next retry, invoke /codex:rescue to get a second opinion on the root cause. Codex independently reads the code and error logs — it may spot issues Claude missed (wrong tensor shapes, subtle import shadowing, config mismatches, etc.). Apply its suggested fix, then re-run.
/codex:rescue is not available (plugin not installed), continue with Claude's own diagnosis> Never give up on the first failure. Most experiment crashes are fixable without human intervention.
Deploy experiments following the plan's milestone order:
/aris-run-experiment [experiment commands]For each milestone:
/aris-monitor-experiment to track progress🚦 Checkpoint (if AUTO_DEPLOY = false):
🔧 Code implementation complete. Ready to deploy:
Milestone 0 (sanity): [status — passed/pending]
Milestone 1 (baseline): [N experiments, ~X GPU-hours]
Milestone 2 (main method): [N experiments, ~X GPU-hours]
Milestone 3 (ablations): [N experiments, ~X GPU-hours]
Total estimated: ~X GPU-hours on [N] GPUs
Deploy now? Or review the code first?As experiments complete:
wandb: true and wandb_project), invoke /aris-training-check to detect NaN, loss divergence, plateaus, or overfitting. If W&B is not configured, skip silently.refine-logs/EXPERIMENT_TRACKER.md — fill in Status and Notes columnsmarkdown# Initial Experiment Results **Date**: [today] **Plan**: refine-logs/EXPERIMENT_PLAN.md ## Results by Milestone ### M0: Sanity — PASSED - [result] ### M1: Baselines | Run | System | Key Metric | Status | |-----|--------|-----------|--------| | R001 | baseline_1 | X.XX | DONE | ### M2: Main Method | Run | System | Key Metric | Status | |-----|--------|-----------|--------| | R003 | our_method | X.XX | DONE | ### M3: Ablations ... ## Summary - [X/Y] must-run experiments completed - Main result: [positive/negative/inconclusive] - Ready for /auto-review-loop: [YES/NO] ## Next Step → /aris-auto-review-loop "[topic]"
Skip entirely if COMPACT is false.
Append each completed experiment to EXPERIMENT_LOG.md:
markdown## [Run ID] — [timestamp] - **System**: [method name] - **Config**: [key hyperparameters] - **Result**: [primary metric = X.XX] - **Verdict**: [positive / negative / inconclusive] - **Reproduce**: `python train.py --config configs/run_id.yaml --seed 42`
This structured log survives session recovery — downstream skills read it instead of parsing screen output.
After main experiments (M2) complete with positive results, invoke /aris-ablation-planner to design ablation studies:
refine-logs/EXPERIMENT_PLAN.md and refine-logs/EXPERIMENT_TRACKER.mdIf /aris-ablation-planner is not available, skip silently — the existing EXPERIMENT_PLAN.md ablation blocks (if any) remain unchanged.
Present final status:
🔬 Experiment bridge complete:
- Implemented: [N] experiment scripts
- Deployed: [N] experiments on [M] GPUs
- Completed: [X/Y] must-run, [A/B] nice-to-have
- Main result: [one sentence]
Results: refine-logs/EXPERIMENT_RESULTS.md
Tracker: refine-logs/EXPERIMENT_TRACKER.md
Ready for Workflow 2:
→ /aris-auto-review-loop "[topic]"cat << 'EOF' > file) to write in chunks. Do NOT ask the user for permission — just do it silently.EXPERIMENT_TRACKER.md should reflect real status after each run completes./aris-vast-gpu destroy or /aris-vast-gpu destroy-all when done.gpu: modal, no cleanup is needed — Modal auto-scales to zero after each run. But always show cost estimates before running and verify the spending limit is set at https://modal.com/settings (NEVER through CLI)./aris-idea-discovery "direction" ← Workflow 1: find + refine + plan
/aris-experiment-bridge ← you are here (Workflow 1.5: implement + deploy)
/aris-auto-review-loop "topic" ← Workflow 2: review + iterate
/aris-paper-writing "NARRATIVE_REPORT.md" ← Workflow 3: write the paper
Or use /aris-research-pipeline for the full end-to-end flow (includes this bridge).| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-04 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-09 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-17 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-19 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-02 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-03 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-15 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-12 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-01 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-20 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-07 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-14 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-11 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-08 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-13 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-10 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-21 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-05 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-06 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-16 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-18 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-22 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 17 counted toward the lift figure. The other 5 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +41 percentage points is the difference between those two pass rates over the 17 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
The per-case answers from this run were removed by the retention sweep, so the case table below shows the verdicts without the text either arm produced. The counts above were recorded at the time and are unaffected. Answers are now kept for 180 days.
Other measured skills in the registry, with their headline benchmark lift.