PluginBench
Skill
Pass
Audit score 90

loop

alirezarezvani/claude-skills

Schedule autonomous experiment loops at custom intervals (10min to monthly) using cron scheduling.

What is loop?

The loop skill starts recurring experiment runs on a user-selected schedule (10 minutes, hourly, daily, weekly, or monthly). It uses CronCreate to manage cron jobs and automatically executes one experiment iteration per cycle, tracking results and stopping after 5 consecutive crashes.

  • Schedule experiments to run automatically at 10min, 1h, daily, weekly, or monthly intervals
  • Execute one experiment iteration per cycle with automatic strategy escalation
  • Track experiment history in results.tsv and stop loops after 5 consecutive crashes
  • Store loop metadata (cron ID, interval, start time) in loop.json for management
  • Stop active loops on demand and persist results across loop restarts

How to install loop

npx skills add https://github.com/alirezarezvani/claude-skills --skill loop
Prerequisites
  • An autoresearch experiment already set up with config.cfg, program.md, and results.tsv
  • CronCreate tool available for scheduling recurring jobs
  • Git repository with autoresearch/{domain}/{name} branch structure
Claude Code
Cursor
Windsurf
Cline

How to use loop

  1. 1.Run /ar:loop {domain}/{name} to start a new loop (or omit experiment to select from list)
  2. 2.Choose an interval when prompted: 10m, 1h, daily, weekly, or monthly (or pass as argument)
  3. 3.The skill creates a cron job that runs one experiment iteration per cycle
  4. 4.Check progress with /ar:status or stop the loop with /ar:loop stop {domain}/{name}
  5. 5.Loop auto-expires after 3 days; re-run /ar:loop to restart and continue from last results

Use cases

Good for
  • Run rapid experiments every 10 minutes while monitoring in real-time
  • Execute overnight experiments daily at 9am without manual intervention
  • Schedule long-running experiments weekly or monthly for slow iterative improvement
  • Automatically test API performance or code changes on a recurring schedule
  • Maintain continuous experiment loops that auto-expire after 3 days and can be restarted
Who it's for
  • Researchers running iterative autoresearch experiments
  • Engineers optimizing code or API performance over time
  • Teams running unattended overnight or background experiments
  • Anyone needing scheduled, autonomous experiment execution

loop FAQ

What happens if an experiment crashes 5 times in a row?

The loop automatically deletes the cron job and alerts you. Results persist, so you can fix the issue and restart the loop.

Can I run multiple loops for the same experiment?

No. Only one loop per experiment is allowed. Stop the existing loop before starting a new one.

How long do loops run?

Loops auto-expire after 3 days (CronCreate limit). Results persist, so re-run /ar:loop to restart and continue from where it left off.

Can multiple experiments loop at the same time?

Yes, if they're on different git branches (which they are by default — each experiment gets its own autoresearch/{domain}/{name} branch).

What does the loop do in each iteration?

It reads config, program.md, and results.tsv; makes ONE change to the target file; commits; runs the evaluator; and records the outcome.

Full instructions (SKILL.md)

Source of truth, from alirezarezvani/claude-skills.


name: "loop" description: "Start an autonomous experiment loop with user-selected interval (10min, 1h, daily, weekly, monthly). Uses CronCreate for scheduling. Use when the user runs /ar:loop or asks to run an autoresearch experiment continuously on a schedule." command: /ar:loop

/ar:loop — Autonomous Experiment Loop

Start a recurring experiment loop that runs at a user-selected interval.

Usage

/ar:loop engineering/api-speed             # Start loop (prompts for interval)
/ar:loop engineering/api-speed 10m         # Every 10 minutes
/ar:loop engineering/api-speed 1h          # Every hour
/ar:loop engineering/api-speed daily       # Daily at ~9am
/ar:loop engineering/api-speed weekly      # Weekly on Monday ~9am
/ar:loop engineering/api-speed monthly     # Monthly on 1st ~9am
/ar:loop stop engineering/api-speed        # Stop an active loop

What It Does

Step 1: Resolve experiment

If no experiment specified, list experiments and let user pick.

Step 2: Select interval

If interval not provided as argument, present options:

Select loop interval:
  1. Every 10 minutes  (rapid — stay and watch)
  2. Every hour         (background — check back later)
  3. Daily at ~9am      (overnight experiments)
  4. Weekly on Monday   (long-running experiments)
  5. Monthly on 1st     (slow experiments)

Map to cron expressions:

IntervalCron ExpressionShorthand
10 minutes*/10 * * * *10m
1 hour7 * * * *1h
Daily57 8 * * *daily
Weekly57 8 * * 1weekly
Monthly57 8 1 * *monthly

Step 3: Create the recurring job

Use CronCreate with this prompt (fill in the experiment details):

You are running autoresearch experiment "{domain}/{name}".

1. Read .autoresearch/{domain}/{name}/config.cfg for: target, evaluate_cmd, metric, metric_direction
2. Read .autoresearch/{domain}/{name}/program.md for strategy and constraints
3. Read .autoresearch/{domain}/{name}/results.tsv for experiment history
4. Run: git checkout autoresearch/{domain}/{name}

Then do exactly ONE iteration:
- Review results.tsv: what worked, what failed, what hasn't been tried
- Edit the target file with ONE change (strategy escalation based on run count)
- Commit: git add {target} && git commit -m "experiment: {description}"
- Evaluate: python {skill_path}/scripts/run_experiment.py --experiment {domain}/{name} --single
- Read the output (KEEP/DISCARD/CRASH)

Rules:
- ONE change per experiment
- NEVER modify the evaluator
- If 5 consecutive crashes in results.tsv, delete this cron job (CronDelete) and alert
- After every 10 experiments, update Strategy section of program.md

Current best metric: {read from results.tsv or "no baseline yet"}
Total experiments so far: {count from results.tsv}

Step 4: Store loop metadata

Write to .autoresearch/{domain}/{name}/loop.json:

{
  "cron_id": "{id from CronCreate}",
  "interval": "{user selection}",
  "started": "{ISO timestamp}",
  "experiment": "{domain}/{name}"
}

Step 5: Confirm to user

Loop started for {domain}/{name}
  Interval: {interval description}
  Cron ID: {id}
  Auto-expires: 3 days (CronCreate limit)

  To check progress: /ar:status
  To stop the loop:  /ar:loop stop {domain}/{name}

  Note: Recurring jobs auto-expire after 3 days.
  Run /ar:loop again to restart after expiry.

Stopping a Loop

When user runs /ar:loop stop {experiment}:

  1. Read .autoresearch/{domain}/{name}/loop.json to get the cron ID
  2. Call CronDelete with that ID
  3. Delete loop.json
  4. Confirm: "Loop stopped for {experiment}. {n} experiments completed."

Important Limitations

  • 3-day auto-expiry: CronCreate jobs expire after 3 days. For longer experiments, the user must re-run /ar:loop to restart. Results persist — the new loop picks up where the old one left off.
  • One loop per experiment: Don't start multiple loops for the same experiment.
  • Concurrent experiments: Multiple experiments can loop simultaneously ONLY if they're on different git branches (which they are by default — each experiment gets autoresearch/{domain}/{name}).

Related skills

More from alirezarezvani/claude-skills and the wider catalog.

MAmarketing-demand-acquisition logo

marketing-demand-acquisition

alirezarezvani/claude-skills

Creates demand generation campaigns, optimizes paid ad spend across LinkedIn, Google, and Meta, develops SEO strategies, and structures partnership programs. Use when planning demand gen strategy, growth marketing, advertising campaigns, PPC optimization, lead generation, pipeline generation, or marketing budgets. Covers multi-channel acquisition (Google Ads, LinkedIn Ads, Meta Ads), CAC analysis, MQL/SQL workflows, attribution modeling, technical SEO, and co-marketing partnerships. Default calibration profile is a Series A+ B2B SaaS scaling internationally (EU/US/Canada, hybrid PLG/Sales-Led) — adapt benchmarks for other stages and motions rather than skipping the skill.

773 installs
MAmarketing-ops logo

marketing-ops

alirezarezvani/claude-skills

Central router for the marketing skill ecosystem. Use when unsure which marketing skill to use, when orchestrating a multi-skill campaign, or when coordinating across content, SEO, CRO, channels, and analytics. Also use when the user mentions 'marketing help,' 'campaign plan,' 'what should I do next,' 'marketing priorities,' or 'coordinate marketing.'

630 installs
MAmarketing-skills logo

marketing-skills

alirezarezvani/claude-skills

Directory and router for 44 specialist marketing skills across content, SEO, CRO, channels, growth, and intelligence.

2.1k installs
MAmarketing-strategy-pmm logo

marketing-strategy-pmm

alirezarezvani/claude-skills

Product marketing skill for positioning, GTM strategy, competitive intelligence, and product launches. Use when the user asks about product positioning, go-to-market planning, competitive analysis, target audience definition, ICP definition, market research, launch plans, or sales enablement. Covers April Dunford positioning, ICP definition, competitive battlecards, launch playbooks, and international market entry. Produces deliverables including positioning statements, battlecard documents, launch plans, and go-to-market strategies.

777 installs
MDmdr-745-specialist logo

mdr-745-specialist

alirezarezvani/claude-skills

EU MDR 2017/745 compliance specialist for medical device classification, technical documentation, clinical evidence, and post-market surveillance. Covers Annex VIII classification rules, Annex II/III technical files, Annex XIV clinical evaluation, Art. 86 PSUR schedules, and EUDAMED integration. Use when classifying a medical device under MDR, building or gap-checking a technical file, planning clinical evaluation or PMS/PSUR cadence, or preparing for notified body review (e.g., 'what class is my device under MDR', 'review my PSUR schedule').

722 installs
MEmerge logo

merge

alirezarezvani/claude-skills

Merge winning agent branch into base, archive losers, and clean up worktrees after AgentHub evaluation.

1.4k installsAudited