Skip to main content

Landing

Landing explains CI failures, fixes delegated problems, and publishes reviews where your team works. It uses your existing tools and checks.

With Landing, you own and control the workflow. Choose the model, prepare the execution environment, and adapt instructions and skills to your project. Run it in CI, locally, or as a service. Landing is open source under Apache-2.0 and requires no hosted Landing account.

Start in CI

Set up your first PR review. Configure a model, add the GitHub Action to your prepared workflow, and open a PR. Landing publishes a native review with code comments when it finds an actionable problem. Your native checks and team decide what to accept.

Configure CI -> Open a PR -> Read the review -> Decide what to accept

Set the LANDING_MODEL repository variable and LANDING_API_KEY secret, and grant the review job contents: read and pull-requests: write. After trusted-caller admission, checkout, and successful native checks, add this step to your existing workflow:

- uses: bubbuild/landing@0.1.0
  env:
    GH_TOKEN: ${{ github.token }}
    LANDING_MODEL: ${{ vars.LANDING_MODEL }}
    LANDING_API_KEY: ${{ secrets.LANDING_API_KEY }}
  with:
    command: review
    instruction: Native checks passed for this checkout. Review this PR using repository guidance and publish actionable findings inline.

The Action uses your authenticated gh, project tools, and skills. It checks who can delegate before starting the agent. See CI integration for other CI systems and GitHub integration for /landing commands, publishing identities, and trust policy.

To build the same review and delegated-fix experience, ask your agent to read Landing's workflows and development guide, then adapt the CI setup to your repository's tools and checks.

Use it locally

With Python 3.12 or later, uv, and a POSIX host:

uv tool install "landing==0.1.0"
export LANDING_MODEL="openai:gpt-4.1"
export LANDING_API_KEY="your-provider-api-key"
landing explain "Explain this failure and the next useful check." --input check.log

Run from your project checkout and use a saved UTF-8 log for check.log. The commands are explain, triage, fix, and review; each works independently. Local use shows how to delegate work and inspect the result.

Work with your team

Reliable results draw on your documentation, work items, infrastructure, tests, benchmarks, and observability. Working with Landing explains how to connect that context and retain feedback. Automate the engineering work you can delegate, and use the time saved to stay involved with contributors and users. Community Over Code.

Make Landing work for you covers project instructions, skills, and tools. For shared execution, run the server or deploy the container from ghcr.io/bubbuild/landing:0.1.0. Actions and model history are stored in SQLite; workspace files stay in your workspace, and model requests go to your chosen provider.

Contributions are welcome. Licensed under Apache-2.0. Powered by Bub and tape.systems.

Metadata

Release files for landing 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for landing 0.1.0
File Size Uploaded
landing-0.1.0.tar.gz 225.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for landing 0.1.0
File Interpreter ABI Platform
landing-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 269.0 kB

Release files / landing-0.1.0.tar.gz

Download URL landing-0.1.0.tar.gz
Size 225.7 kB
Tags Source
SHA-256 checksum
How to use checksums
27b44fcc755dfce7e444371529c90d697bd808b48d463cb0933e0f8d5be854c0
BLAKE2b-256 checksum
How to use checksums
d094e01788ff7da3149c62ab2d92cb9f6b36ef4316409454d2cec602168165f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / landing-0.1.0-py3-none-any.whl

Download URL landing-0.1.0-py3-none-any.whl
Size 43.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ca88b2ce295954d383c70625bc6babc5693f2589cbc06078266f04eacbac1983
BLAKE2b-256 checksum
How to use checksums
5c272e032b699c368ca4691dcbdbab8441dbdbf08170968006035e080aa3387c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.3.0

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

This release

0.1.0 This release

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page