Skip to main content

Orchestrator that walks tasks through composable process pipelines using AI agents

Project description

hyperloop

Walks tasks through composable process pipelines using AI agents. You write specs, it creates tasks, implements them, verifies the work, and merges the results.

Prerequisites

  • Python 3.12+
  • kustomize (kustomize on PATH)
  • git
  • gh CLI (optional, for GitHub PR operations)
  • An Anthropic API key, or Vertex AI / Bedrock credentials

Install

pip install hyperloop

Quickstart

mkdir my-project && cd my-project && git init && git commit --allow-empty -m init

# Write a spec
cat > specs/auth.md << 'EOF'
# User Authentication
Implement JWT-based auth. POST /auth/login, POST /auth/register, GET /auth/me.
Passwords hashed with bcrypt. JWTs expire after 24h.
EOF

# Initialize hyperloop structure
hyperloop init

# Run the orchestrator
export ANTHROPIC_API_KEY=your-key  # or CLAUDE_CODE_USE_VERTEX=1
hyperloop run

# With GitHub PR support
hyperloop run --repo owner/repo

How It Works

Agents run via the Claude Agent SDK — in-process, with full tool access (file I/O, git, shell). Each parallel worker gets its own git worktree for branch isolation. Serial agents (PM intake, process-improver) run on trunk.

The SDK handles tool execution, context management, and clean exit. No subprocess polling or result-file conventions.

Project Structure

After hyperloop init:

my-project/
├── .hyperloop.yaml                     # orchestrator config
├── .hyperloop/
│   ├── agents/
│   │   ├── kustomization.yaml          # composition point (base + process component)
│   │   └── process/
│   │       └── kustomization.yaml      # empty Component (process-improver writes here)
│   ├── state/
│   │   ├── tasks/                      # task metadata (YAML frontmatter)
│   │   └── reviews/                    # per-round review files
│   └── checks/                         # executable check scripts
└── specs/
    └── *.spec.md                       # product specs (your domain)

specs/ is yours — product specs only. .hyperloop/ is orchestrator-managed.

Prompt Composition

Three layers, all resolved via a single kustomize build:

Layer Source What it provides
Base hyperloop repo base/ Core agent prompts
Project overlay gitops repo or in-repo patches Project-specific guidelines, persona
Process overlay .hyperloop/agents/process/ Learned rules from process-improver

Agent resources have a guidelines field — additive by convention. At compose time: prompt + guidelines + spec + findings.

Configuration

# .hyperloop.yaml

overlay: .hyperloop/agents/             # path to kustomization dir
base_ref: github.com/org/hyperloop//base?ref=v1  # remote base for `hyperloop init`

target:
  repo: owner/repo                      # GitHub repo (omit for local-only)
  base_branch: main

runtime:
  max_workers: 6

merge:
  auto_merge: true
  strategy: squash
  delete_branch: true

poll_interval: 30
max_task_rounds: 50
max_cycles: 200
max_rebase_attempts: 3

observability:
  log_format: console                   # console | json
  log_level: info

  matrix:                               # optional
    homeserver: https://matrix.example.com
    registration_token_env: MATRIX_REG_TOKEN
    verbose: false

Custom Processes

Override the default pipeline (implement → verify → merge):

# process-patch.yaml
kind: Process
name: default
pipeline:
  - loop:
      - role: implementer
      - role: verifier
  - gate: human-pr-approval
  - action: merge-pr

Four primitives: role (spawn agent), gate (wait for signal), loop (retry on failure), action (terminal op). Loops nest.

Development

uv sync --all-extras
uv run pytest
uv run ruff check . && ruff format --check .
uv run pyright

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hyperloop-0.16.0.tar.gz (169.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hyperloop-0.16.0-py3-none-any.whl (66.5 kB view details)

Uploaded Python 3

File details

Details for the file hyperloop-0.16.0.tar.gz.

File metadata

  • Download URL: hyperloop-0.16.0.tar.gz
  • Upload date:
  • Size: 169.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hyperloop-0.16.0.tar.gz
Algorithm Hash digest
SHA256 57f6e153773119a719d1a7fa9b87967216edc956facb2b61e5b391fbe21d595f
MD5 1fd539484ec6c6e2fbfd4b59c3c0f95d
BLAKE2b-256 8a48c923dea77b1315264913bfe9e11a4abd879044fb50e35e1d5f7dee269a1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for hyperloop-0.16.0.tar.gz:

Publisher: release.yaml on jsell-rh/hyperloop

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hyperloop-0.16.0-py3-none-any.whl.

File metadata

  • Download URL: hyperloop-0.16.0-py3-none-any.whl
  • Upload date:
  • Size: 66.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hyperloop-0.16.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f35f7b76938186c2b1c3fb48c120194f031a86fcc29db68eca973dbff80958d0
MD5 70ffc74b64a0a8fc887564aa6273a094
BLAKE2b-256 b3b10e7d2855a06bcf7dde1a3dea7a0a90025052501a19c65a26615c6b2a27a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for hyperloop-0.16.0-py3-none-any.whl:

Publisher: release.yaml on jsell-rh/hyperloop

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page