Runnerless concept · not available yet

Repository policy checks without a CI runner

A missing license file or inconsistent repository layout should be easy to diagnose. The Runnerless direction is to execute small repository checks without allocating a full CI runner for each decision. This is a proposed extension of the policy checks already operating in ci-toolkit, not a released repository-check runtime.

Design direction for Runnerless. The workflow below is not implemented or available to install.

The proposed workflow

01 /

Define a small, inspectable check

A useful first check might require a LICENSE file, enforce a directory convention or reject a generated file in the wrong location. Keep the input explicit: repository metadata and a bounded file set. A check that secretly installs a toolchain or downloads a large dependency tree has a different execution profile.

02 /

Return a result people can act on

A policy failure should identify the missing file or violated rule and point to the expected correction. Separating the rule from the CI provider would let teams keep the same meaning when one repository uses GitHub Actions and another uses a different build system.

03 /

Adopt one rule alongside the existing build

The proposed workflow leaves large compilation and test jobs in their current CI. A small check could run independently and publish its result to the existing review flow. Shared policy updates would need versioning and a trusted adoption path so a PR could not change the rule that authorizes itself.

A concrete example

Runnerless API preview · not released

// Runnerless API preview — not executable today
export function repository({ requireLicense }, context) {
  return !requireLicense || context.files.has("LICENSE");
}

Know the boundary

What is still to build

The one-second goal applies to small local checks, not arbitrary repositories, network requests, compilation or AI calls. Runtime packaging, input limits and the public API are still design work. Today’s implemented foundation is ci-toolkit’s title, commit-message and configuration checking.

Common questions

Can I use this sample in production now?

No. It illustrates the intended shape of a future Runnerless API. The existing ci-toolkit configuration on the current-feature pages is a separate supported format.

Would this replace large test suites?

No. The intended adoption path keeps expensive builds and test suites in the CI system that already runs them.

Runnerless / early access

Want this in
your workflow?

Get early access ↗

Register interest and tell us what slows your CI down. The optional follow-up questions come after your email is saved.