Skip to content

Latest commit

 

History

History
169 lines (125 loc) · 4.81 KB

File metadata and controls

169 lines (125 loc) · 4.81 KB

Examples

This file is auto-generated from metadata in examples/*.py. Do not edit this file manually. Run uv run python scripts/generate_examples_md.py instead.

Runnable examples live in examples/.

Table of Contents

Blueprint with Build Context

Use case: Create a blueprint using the object store to provide docker build context files, then verify files are copied into the image. Uses the async SDK.

Tags: blueprint, object-store, build-context, devbox, cleanup, async

Workflow

  • Create a temporary directory with sample application files
  • Upload the directory to object storage as build context
  • Create a blueprint with a Dockerfile that copies the context files
  • Create a devbox from the blueprint
  • Verify the files were copied into the image
  • Shutdown devbox and delete blueprint and storage object

Prerequisites

  • RUNLOOP_API_KEY

Run

uv run python -m examples.blueprint_with_build_context

Test

uv run pytest -m smoketest tests/smoketests/examples/

Source: examples/blueprint_with_build_context.py

Devbox From Blueprint (Run Command, Shutdown)

Use case: Create a devbox from a blueprint, run a command, fetch logs, validate output, and cleanly tear everything down.

Tags: devbox, blueprint, commands, logs, cleanup

Workflow

  • Create a blueprint
  • Fetch blueprint build logs
  • Create a devbox from the blueprint
  • Execute a command in the devbox
  • Fetch devbox logs
  • Validate exit code, stdout, and logs
  • Shutdown devbox and delete blueprint

Prerequisites

  • RUNLOOP_API_KEY

Run

uv run python -m examples.devbox_from_blueprint_lifecycle

Test

uv run pytest -m smoketest tests/smoketests/examples/

Source: examples/devbox_from_blueprint_lifecycle.py

Devbox Snapshot and Resume

Use case: Create a devbox, snapshot its disk, resume from the snapshot, and demonstrate that changes in the original devbox do not affect the clone. Uses the async SDK.

Tags: devbox, snapshot, resume, cleanup, async

Workflow

  • Create a devbox
  • Write a file to the devbox
  • Create a disk snapshot
  • Create a new devbox from the snapshot
  • Modify the file on the original devbox
  • Verify the clone has the original content
  • Shutdown both devboxes and delete the snapshot

Prerequisites

  • RUNLOOP_API_KEY

Run

uv run python -m examples.devbox_snapshot_resume

Test

uv run pytest -m smoketest tests/smoketests/examples/

Source: examples/devbox_snapshot_resume.py

MCP Hub + Claude Code + GitHub

Use case: Connect Claude Code running in a devbox to GitHub tools through MCP Hub without exposing raw GitHub credentials to the devbox.

Tags: mcp, devbox, github, commands, cleanup

Workflow

  • Create an MCP config for GitHub
  • Store GitHub token as a Runloop secret
  • Launch a devbox with MCP Hub wiring
  • Install Claude Code and register MCP endpoint
  • Run a Claude prompt through MCP tools
  • Shutdown devbox and clean up cloud resources

Prerequisites

  • RUNLOOP_API_KEY
  • GITHUB_TOKEN (GitHub PAT with repo scope)
  • ANTHROPIC_API_KEY

Run

GITHUB_TOKEN=ghp_xxx ANTHROPIC_API_KEY=sk-ant-xxx uv run python -m examples.mcp_github_tools

Test

uv run pytest -m smoketest tests/smoketests/examples/

Source: examples/mcp_github_tools.py

Secrets with Devbox (Create, Inject, Verify, Delete)

Use case: Create a secret, inject it into a devbox as an environment variable, verify access, and clean up.

Tags: secrets, devbox, environment-variables, cleanup

Workflow

  • Create a secret with a test value
  • Create a devbox with the secret mapped to an env var
  • Execute a command that reads the secret from the environment
  • Verify the value matches
  • Update the secret and verify
  • List secrets and verify the secret appears
  • Shutdown devbox and delete secret

Prerequisites

  • RUNLOOP_API_KEY

Run

uv run python -m examples.secrets_with_devbox

Test

uv run pytest -m smoketest tests/smoketests/examples/

Source: examples/secrets_with_devbox.py