sleepy Log in / Sign up

Get started

Three commands, then go to sleep.

The product is code-blind: sleepy.run coordinates source-free executor/job state while your client-owned executor invokes models, runs the exact evaluator contract, and retains raw evidence on your machine.

Install the companion CLI

Homebrew
brew install fugue-labs/tap/sleepy
sleepy doctor
sleepy version
Sealed release installer

Choose an exact reviewed version from the public release repository, download its versioned installer, inspect it, then run it locally. Do not pipe a mutable branch URL into a shell.

Open client releases →

Store the API key when shown; Sleepy stores only its hash. The product is code-blind: source, candidates, prompts, provider calls, tests, benchmarks, raw measurements, and replay evidence stay in the client-owned executor. The hosted service receives source-free scheduling commands and authenticated decision projections only.

Configure the local executor

The provider-neutral executor/job protocol is canonical. The companion client owns the model, mutation, evaluator, evidence, and final apply. MCP sampling has been removed from the MCP protocol entirely; the hosted MCP surface is plain tools for source-free inspection.

readinesslocal executor
export SLEEPY_TOKEN=slpy_...
sleepy doctor --check-providers
sleepy doctor --project --server https://sleepy.run

After rotating the workspace key, update SLEEPY_TOKEN before starting or resuming a client executor.

terminal-capable agent promptagent
From this checkout, run sleepy worker for ./sort.go against
https://sleepy.run with benchmark:BenchmarkSort1000.
Keep the final change small and report only the re-verified speedup.

Run the local worker

The worker is the source-bearing trust boundary. It checks executor/job capabilities, computes the exact evaluator contract before creating the hosted run, generates and applies candidates locally, runs tests and benchmarks inside the pinned fail-closed OCI sandbox, restores after each candidate, retains raw evidence locally, and reports only a source-free decision projection.

standalone workerterminal
export SLEEPY_TOKEN=slpy_...
sleepy worker \
  --target ./sort.go \
  --server https://sleepy.run \
  --eval benchmark:BenchmarkSort1000 \
  --population 10 \
  --generations 20

The standalone worker uses a workspace API key. A browser session cookie authenticates only the workspace dashboard.

Watch, export, commit

Do not treat the fastest intermediate candidate as the answer. Review the final champion, inspect lineage, and commit only after your own checks pass.

run inspectionterminal
sleepy status <run-id>
sleepy watch <run-id>
sleepy inspect <run-id>
sleepy export <run-id> --lineage
git diff
go test ./...

# Or create a verified, policy-gated PR through authenticated gh:
sleepy ci --server https://sleepy.run --base origin/main --create-pr

Run candidate inspection and export on the executor that created the campaign; the hosted ID maps automatically to its private audit record. From another authenticated machine, sleepy status <run-id> --server https://sleepy.run provides source-free lifecycle status only.

  • Run reached a terminal state: converged, complete, or stopped with an exportable champion.
  • Final champion passed the correctness gate and benchmark verification.
  • Diff is small enough to review and does not add suspicious benchmark-specific shortcuts.
  • Lineage/export is saved if the result will be shared publicly.

When it does not work

Most first-run failures are missing workspace auth, a missing benchmark, unavailable OCI containment, or an incompatible executor/job service. Run the project doctor first; the support page lists what to include in a report.