Skip to main content

pontonier

Pontonier is the shared core library for agent-bridge MCP servers. An agent bridge lets one agent harness call an agent that runs on a different model. Three bridges use this library:

A pontonier is the engineer who builds pontoon bridges: pontonier is not itself a bridge — it is what the bridges are built from.

What is in the box

pontonier.core — backend-agnostic machinery, extracted from the bridges' _core packages:

Module Purpose
jobs Disk-backed, daemonless async job store
worktree Throwaway git worktrees for delegated work
gitdiff Bounded, redacted git diff gathering
redaction Best-effort secret redaction for diffs and prose
runtime Subprocess execution with bounded streams and cleanup
gitproc Hardened git subprocess helpers
streamcap Bounded stream capture
idempotency On-disk idempotency-key index
workspace MCP-root workspace resolution
jsoncache Small JSON file cache

Rule: pontonier.core never imports from the rest of the package. CI enforces this with import-linter.

pontonier.conventions — the shared vocabulary bridges are built from: error taxonomy + repair rules (envelope), host-parameterized prompt framing (prompts), effect-parameterized tool annotations (annotations), CLI --help feature detection (preflight), and the surface-fingerprint invariant (fingerprint). Wire serialization stays in each bridge.

pontonier.backendFROZEN (CONTRACT_API_VERSION = 1): the BackendContract static-facts dataclass, the AgentBackend staged run lifecycle (validate_requestpreparefinalize/classify_failure), and a shared failure classifier with fixed precedence. Required Protocol members and required BackendContract fields are stable within a minor line; because additive changes to a Protocol or a frozen dataclass are breaking, new behavior lands as optional capability protocols or defaulted fields.

pontonier.testing — importable, framework-agnostic test kit: surface honesty (forbidden-phrase scanning against the built wire), adapter and contract conformance, and sync/async tool-pair parity. Checks return violation lists; wire them into any harness.

Development

This project uses uv:

uv sync
uv run pytest
uv run ruff check
uv run lint-imports

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pontonier-0.5.0.tar.gz (313.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pontonier-0.5.0-py3-none-any.whl (140.9 kB view details)

Uploaded Python 3

File details

Details for the file pontonier-0.5.0.tar.gz.

File metadata

  • Download URL: pontonier-0.5.0.tar.gz
  • Upload date:
  • Size: 313.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pontonier-0.5.0.tar.gz
Algorithm Hash digest
SHA256 e10d9f0dec438f664a0edb9e18edba48d92714c1190f26c36324676b7465543a
MD5 43f10c227ca386ae2749c006510efc89
BLAKE2b-256 bb3643af9210c00a2ac8f5281fbb8299cc09fa5ae09bfc4f610bbf7f8ba5713f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pontonier-0.5.0.tar.gz:

Publisher: publish.yml on briandconnelly/pontonier

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pontonier-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: pontonier-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 140.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pontonier-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 106099657d618b55a68b62fe81280eb90bc0d3ed368d9eb74fd9496987c9a816
MD5 858af0a33fe400442871907c3e83e20c
BLAKE2b-256 9ebeb8bafc89f199d54e00fcfbb8a66f2e7f96fc1bfe5d6c2cbd995204424005

See more details on using hashes here.

Provenance

The following attestation bundles were made for pontonier-0.5.0-py3-none-any.whl:

Publisher: publish.yml on briandconnelly/pontonier

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page