Skip to content

bounded-systems/prx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

628 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

prx

The agent-run work-unit CLI: capability-scoped agents driving each work unit through one signed, content-addressed pipeline to a merged PR — git-writes signed and verified against their owner.

prx — the agent-run PR contract / work-unit CLI, plus the @bounded-systems/* libraries it builds on. A Bun + TypeScript monorepo.

Layout

  • packages/prx/ — The agent-run PR contract / work-unit CLI
  • packages/* — the @bounded-systems/* libraries it builds on, workspace-internal via workspace:*:
    • prx-config — TUI configuration schema parser/emitter for L1 Claude and L2 Warp tools
  • spec/ — the prx effect/contract spec (schema.cue)

Build & test

bun install
bun test
bun run typecheck
bun run prx:build      # → dist/prx (self-contained binary)

Install

prx ships as a released binary (per platform) attached to each GitHub release, plus a container image at ghcr.io/bounded-systems/prx. Distribution is the binary — nix is one install path among several.

Homebrew

This repo doubles as a tap (it has a Formula/), so:

brew tap bounded-systems/prx https://github.com/bounded-systems/prx
brew install prx

(The explicit tap URL is needed because the repo is prx, not homebrew-prx.)

Nix flake (hermetic)

The flake's packages are the released binaries fetched via fetchurl, so they build under sandbox = true with no nix.conf changes:

nix run github:bounded-systems/prx -- --version
nix build github:bounded-systems/prx#prx       # → result/bin/prx

home-manager (portable module)

Any home-manager config can install prx via the exported module:

{
  inputs.prx.url = "github:bounded-systems/prx";

  # in your home-manager configuration's modules list:
  modules = [ prx.homeManagerModules.default ];
}
# then, in a home-manager module:
programs.prx = {
  enable = true;
  # optional consumer wiring the released binary does not bake:
  aiHomeRoot = "${config.home.homeDirectory}/.config/ai-home"; # PRX_AI_HOME_ROOT
  claudePath = "${config.home.homeDirectory}/.local/bin/claude"; # BAKED_CLAUDE_CODE_PATH
  installWt  = true;   # also install the `wt` worktree wrapper
};

This installs prx (and optionally wt) into ~/.local/bin. The per-release sha256s live in release-hashes.json, updated automatically by the release-binary workflow on each tag.

Publishing

Public @bounded-systems/* leaves (e.g. cas) are published to npm via changesets + .github/workflows/release.yml (SLSA provenance). See docs/companion-repos.md.

Community & governance

These files, the .github/ issue + pull-request templates, and their shared facts (project, copyright, security contact, supported versions) are generated from packages/prx/community/ — edit community.json (validated against a JSON Schema with ajv) or the pinned templates, then bun run community:render. bun run community:check (and the test suite) fail on drift, so the governance docs can't fall out of sync.

This README is generated the same way: community.json and each package's description are first projected into prx.jsonld — a hostable schema.org JSON-LD @graph of the project, its packages, and its governance facts (packages/prx/src/graph/). bun run readme:render then reads the README's tokens out of that graph and renders this template; bun run jsonld:render / bun run readme:render (and their :check variants, run in CI) keep the graph, the README, and the sources in lockstep.

License

prx is source-available, not OSI open-source. It is licensed under the PolyForm Noncommercial License 1.0.0 (PolyForm-Noncommercial-1.0.0): free for any noncommercial use, with all commercial rights reserved to the copyright holder. For a commercial license, contact the maintainer at https://github.com/bdelanghe. See LICENSE.

About

The agent-run work-unit CLI: capability-scoped agents whose every privileged effect is verified against its signed owner, driving a work unit through one signed pipeline to a merged PR.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors