Skip to main content

Landing

Landing explains CI failures, fixes delegated problems, triages issues, and publishes review feedback 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 review feedback with code comments for actionable findings. Your team decides what to accept using that feedback and independent checks.

Configure CI -> Open a PR -> Read the feedback -> 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 checkout and successful native checks, add this step to your existing workflow:

- uses: bubbuild/landing@main
  continue-on-error: true
  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 example follows main; pin a release tag or reviewed commit to keep the runtime fixed. continue-on-error keeps automatic feedback advisory; inspect the Action logs if no review appears. 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
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:latest. 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.3.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.3.0
File Size Uploaded
landing-0.3.0.tar.gz 862.3 kB Details

Built distribution (wheel)

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

Total release size: 910.3 kB

Release files / landing-0.3.0.tar.gz

Download URL landing-0.3.0.tar.gz
Size 862.3 kB
Tags Source
SHA-256 checksum
How to use checksums
9d69c7dd63c786d90e3d75093d28ea80fdc061e74834fdbe9dc8d074d9604e51
BLAKE2b-256 checksum
How to use checksums
e3db0b0ee9d52fadb896d3bb1fabe98b10738a3a551affdda8030df732fc7f88
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.3.0-py3-none-any.whl

Download URL landing-0.3.0-py3-none-any.whl
Size 48.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f6f5639c6f8ec899a06a0ecb82e47e4dc3da5a5b748bc3884cfdc0a309606d38
BLAKE2b-256 checksum
How to use checksums
c5f4a44720c803002b53931dacd3b34efd73ceaa8cf13c8bcc8029ce905dce9f
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

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

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