run-ferries

Launch, monitor, and seal Marin canary and daily ferry training runs.

3.2k|266|Updated Mar 22, 2024
One-click install
npx skills add https://github.com/marin-community/marin --skill run-ferries
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: run-ferries
Source: https://github.com/marin-community/marin/tree/main/.agents/skills/run-ferries
Command: npx skills add https://github.com/marin-community/marin --skill run-ferries

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Running recurring canary and daily ferry training jobs in Marin requires strict operational discipline: bounded config changes, explicit launch approval, hours-long monitoring, and consistent run sealing. This Skill encodes that entire operating procedure so ferry runs stay stable, auditable, and reproducible.

Core Features & Use Cases

  • Canary lane: Launch the stable MoE health-check ferry on TPU or GPU (CoreWeave) via Iris, monitor to terminal state, and triage failures as urgent infrastructure issues.
  • Daily lane: Build context since the last ferry, make 1-2 bounded config edits to experiments/ferries/daily.py, record the proposal in the run issue, launch, and monitor 4-5 hours to completion.
  • Run closure: Extract final metrics from W&B with scripts/ferries/daily_analysis.py, seal the run with a git tag (ferry/daily/YYYYMMDD/<run_slug>), and open a log-only PR updating docs/experiments/daily-ferry-log.md.
  • Use Case: A researcher asks to run today's daily ferry; the Skill gathers commits and issues since the last run, proposes a low-risk data-mix tweak, gets launch approval, runs the job on Iris, and closes the loop with metrics and a sealing tag.

Quick Start

Ask the agent to launch and monitor the Marin canary ferry, or to prepare and run today's daily ferry with a bounded config change.

Frequently Asked Questions about run-ferries

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I launch a Marin daily ferry run?

Edit experiments/ferries/daily.py with 1-2 bounded changes, record the proposal in the run issue, push the launch commit, then run the job via Iris with `uv run iris --cluster=marin job run -- python -m experiments.ferries.daily`. Explicit requester approval is required before launch.

What is the difference between the canary and daily ferry?

The canary is a stable, low-cost MoE health check that runs unchanged and requires no PR or sealing tag. The daily ferry exercises a larger envelope with one or two intentional config changes and requires a proposal record, sealing tag, and log-only closure PR.

Can the canary ferry run on GPU instead of TPU?

Yes, the canary supports GPU execution on CoreWeave by setting CANARY_ACCELERATOR=gpu and MARIN_PREFIX to the S3 path, launching through the cw-us-east-02a cluster with the Iris job runner.

How long does ferry monitoring take and when do I stop?

Ferry monitoring typically takes 4-5 hours and must continue until the job reaches a terminal state: SUCCEEDED, FAILED, or STOPPED. Do not stop the monitoring loop early; escalate non-trivial failures to humans.

What should I do when a daily ferry run fails?

Debug with one bounded fix attempt, then escalate to humans if the failure persists. Canary failures are treated as urgent infrastructure or training-health triage, with a focused PR only if a script or config change is necessary.

How do I seal a completed daily ferry run?

Create and push a git tag in the format ferry/daily/YYYYMMDD/<run_slug> pointing to the exact launch commit, then open a PR that updates only docs/experiments/daily-ferry-log.md with labels ferry, ferry-daily, ferry-log-only, and ferry-sealed.