npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

orbit-pilot

v1.7.4

Published

A Codex-powered GitHub issue pilot that autonomously carries assigned work through code, PRs, and review.

Readme

orbit-pilot

orbit-pilot is a Bun-only CLI that watches GitHub issues assigned to the currently authenticated gh user and runs Codex against them.

It automates the "assign to me -> code -> open or update a PR -> respond to review and CI" loop directly from GitHub.

It is intentionally small:

  • issue routing is based on assignee only
  • repository discovery is based on owners plus an exclude list
  • GitHub writes are handled by the Codex agent, while the CLI verifies handoff and decides whether more work is required
  • runtime behavior is enforced by built-in rules, while repository-specific guidance can live in AGENTS.md

What It Does

  • Polls repositories under configured GitHub owners
  • Picks open issues assigned to the current gh user
  • Re-runs when a linked PR receives review activity, comments, or CI updates
  • Keeps one Codex thread per issue and resumes it across runs
  • Uses one workspace and one managed branch per issue

Flow

graph LR
  Issue["User<br/>Create issue"] --> Working["Autonomous work<br/>Code changes and validation"] --> Review["Review and CI<br/>Check feedback"]
  Done["User<br/>Merge and close"]
  Review -->|Changes requested| Working
  Review -->|Approved| Done

Requirements

  • Bun >= 1.3.10
  • gh is installed and authenticated
  • gh auth status succeeds
  • Codex SDK authentication is available in the environment
  • A trusted environment is available for danger-full-access Codex runs

Permissions

orbit-pilot needs enough GitHub access for the Codex agent to read and update issues, pull requests, comments, assignees, and review threads in the repositories you want to use.

Quick Start

bun install
cp orbit-pilot.example.toml orbit-pilot.toml
bun run start

Install from the published package:

bun add -g orbit-pilot
orbit-pilot --once

Run a single polling pass:

bun run start -- --once

Configuration

orbit-pilot.toml is intentionally small.

  • owners: GitHub users or organizations to scan
  • excludeRepos: repositories to skip
  • pollIntervalMs: polling interval
  • workspaceRoot: local workspace root
  • maxConcurrentRunsPerRepo: per-repo concurrency
  • codex: minimal Codex runtime settings

Example:

pollIntervalMs = 30000
workspaceRoot = "./workspaces"
maxConcurrentRunsPerRepo = 1
owners = ["your-org", "your-user"]
excludeRepos = ["your-org/sandbox"]

[codex]
# model = "gpt-5-codex"
# approvalPolicy = "never"
# modelReasoningEffort = "high"

Package Distribution

  • The published package is Bun-only and ships the TypeScript sources directly
  • There is intentionally no build step for release artifacts because Bun executes the CLI entrypoint as-is
  • If you develop on this repository and want git hooks locally, run bun run hooks:install

How It Works

  • Only open issues assigned to the current gh user are eligible
  • An issue stops running when it is closed or unassigned
  • The initial run starts when an assigned open issue has no linked open PR
  • Continuation runs happen when a linked open PR receives new review, comment, or CI signal
  • Linked PR discovery is based on an issue timeline cross reference
  • Each issue gets its own managed branch, usually ${issueNo}-orbit-pilot
  • Before review- or CI-triggered re-runs, the latest default branch is merged into the managed branch
  • If that merge conflicts, Codex is asked to resolve the conflict in place
  • A new thread starts with a runtime-rules acknowledgement turn, then receives the actual issue
  • Later turns use short continuation prompts in the same Codex thread
  • In other words, orbit-pilot does not re-plan a fixed workflow on every turn; it keeps one thread alive and repeatedly says "continue the remaining work" with only the newest tracker context and handoff gaps
  • Review-triggered and CI-triggered reruns resume the existing thread instead of starting a new one
  • The runner verifies handoff after each turn: clean worktree, pushed branch, and an open PR
  • If handoff is incomplete, the runner sends a short continuation prompt describing only the remaining work
  • The runner checks the branch PR after each turn and self-assigns it if needed

Runtime Rules

On the first main-thread Codex turn, orbit-pilot injects built-in runtime rules.

Those rules cover behavior that should not be overridden by repositories, such as:

  • self-assigning PRs
  • resolving only the review threads that were actually fixed
  • verifying GitHub writes before claiming success
  • completing Git handoff before the task is considered done

Repository-specific guidance can live in AGENTS.md at the root of each repository, for example:

  • preferred test commands
  • coding style or architecture constraints
  • repository-specific review expectations

If repository instructions conflict with system or runtime rules, system and runtime rules win.

State and Recovery

  • One workspace is created per issue
  • One Codex thread is kept per issue
  • State is stored in .orbit-pilot-state/ next to orbit-pilot.toml
  • Stored state includes threadId, branchName, execution status, and previous failure context