Skip to main content

Ridge

PyPI Tests Documentation

A resource mesh for AI agents

Connect your resources. Let agents work across them. Delegate access as the work grows.

Ridge gives agents a consistent interface to resources such as local projects, Docker containers, SSH machines, and S3 storage. These initial providers share capability contracts that additional providers can implement. Agents discover what is available, move data, run commands, and collect results without assembling a different transfer or execution interface for each backend.

When work needs more than one agent, a parent can give each worker selected resources, operations, and output locations. Workers use the same tools and share resource coordination. Your agent harness owns planning and worker launching; Ridge handles resource access through MCP, the CLI, or Python.

Documentation · Integrations · Examples

What Ridge handles

Find usable resources. Discover named resources and their supported and allowed operations instead of teaching each worker a separate backend toolset. MCP, CLI, and Python share the same access model.

Keep artifacts out of model context. Stream files, source trees, datasets, and reports between compatible resources. Agents choose the endpoints and read back the results they need—not the entire transfer payload.

Delegate access, not just instructions. Give workers selected resources, operations, and narrower data views. Bound further delegation, set optional expiry, or revoke access without rewriting the workspace configuration.

Pick up long-running work. Background jobs retain IDs, status, logs, and results across client reconnections. Authorized parents can inspect descendant jobs; the Ridge host must remain available for execution.

Coordinate shared updates. Publish different files concurrently in supported filesystem cases, or reserve files, trees, and exact S3 objects across multi-step updates. Conflicting participating operations coordinate independently of their access scopes. See the coordination contract.

Install and connect

Install with uv and Python 3.11+ on macOS or Linux:

uv venv --python 3.11
. .venv/bin/activate
uv pip install ridge-core

For a uv-managed Python project, use uv add ridge-core instead.

Create a ridge.yaml that names your existing resources and the operations you allow. That configuration, policy, and shared managed state form a workspace. Use the configuration guide or agent-assisted setup. The local walkthrough provides a complete example without cloud accounts.

Connect Codex

With Codex already installed, add this entry to ~/.codex/config.toml, or .codex/config.toml in a trusted project:

[mcp_servers.ridge]
command = "/absolute/path/to/environment/bin/ridge-mcp"
args = ["--config", "/absolute/path/to/ridge.yaml"]
required = true
default_tools_approval_mode = "writes"

Replace both paths with your installed executable and workspace configuration. Open a new conversation and ask:

Inspect my Ridge access and show the available resources and operations.

Codex is one option. Connect Claude Code or another MCP client, use the LangChain integration, or package the tools and setup skill as a local plugin. Use repository-owned skills and examples from the tag matching your installed release.

From a request to coordinated work

Suppose your workspace connects a local project, an S3 dataset, two existing remote workers, and a shared results destination. The evaluation code and worker runtimes are already available. You ask:

Compare approaches A and B against the dataset. Have a worker evaluate each, save their reports, and tell me which performs better. Keep the inputs unchanged.

With delegation enabled and a harness that binds each child separately, the request can become this workflow:

Stage What happens
Discover The parent inspects available resources and its authority through Ridge.
Delegate The parent issues scopes with read-only inputs, one worker each, and separate output views. The harness launches each child with its own bound Ridge connection.
Execute Children copy inputs, run evaluations, and publish reports. Ridge streams transfers, tracks background jobs, and coordinates participating operations.
Review The parent inspects jobs and reports, compares the outputs, and revokes delegated access after collecting the results.

Worker A can write results:metrics.json into comparison/a/metrics.json, while worker B uses the same relative name under comparison/b. Both operate from one inventory rather than separate workspace configurations.

One agent can use the same resource operations without delegation. For the team workflow, MCP registration alone does not establish per-child access: the harness must bind separate connections, and filesystem output roots must already exist. The agent-led Codex/Claude example provides that handoff pattern.

Initial resource providers

Provider Execute commands Data operations Streamed copy
Local Yes Yes Files and trees
Docker Yes Yes Files and trees
SSH Yes Yes Files and trees
S3 No Yes Objects

Data operations include reading, writing, listing, metadata inspection, and explicitly authorized deletion. Docker connects to an existing running container; SSH connects to an existing host. Both require Python 3.11+ on the target. Installed Python packages can add providers that implement the existing capability contracts.

Operating boundaries

An access scope is an authority context, not a record of task completion. Revocation closes future access; cancelling admitted jobs and settling reservations are separate operations.

Ridge coordinates participating callers using the same authoritative workspace and shared local state. Filesystem effects that cannot be safely narrowed retain conservative protection; explicit reservations are never silently enlarged. Arbitrary command execution remains resource-wide, and external editor or shell effects are not inferred.

Ridge is not a sandbox, infrastructure provisioner, or agent orchestrator. Native OS and service permissions still apply: a delegated data root narrows Ridge data operations, not what a command can reach.

See security, delegation, and job lifecycle for details.

Reference

Configuration · MCP · CLI · Python API · Development

Download files

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

Source Distribution

ridge_core-0.2.0.tar.gz (333.1 kB view details)

Uploaded Source

Built Distribution

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

ridge_core-0.2.0-py3-none-any.whl (104.9 kB view details)

Uploaded Python 3

File details

Details for the file ridge_core-0.2.0.tar.gz.

File metadata

  • Download URL: ridge_core-0.2.0.tar.gz
  • Upload date:
  • Size: 333.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.12 {"installer":{"name":"uv","version":"0.12.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}

File hashes

Hashes for ridge_core-0.2.0.tar.gz
Algorithm Hash digest
SHA256 40f66a5b6ce5e37daacb27619c0350d78bbfa30713b68aa5ab35bc31d188c99c
MD5 745c91ddb799dd003a608f2a6f28c2a9
BLAKE2b-256 ae822bf968ff111e748be9a3ae506b80edb0ce004be4043e54c9cc5c14d977bc

See more details on using hashes here.

File details

Details for the file ridge_core-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: ridge_core-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 104.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.12 {"installer":{"name":"uv","version":"0.12.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}

File hashes

Hashes for ridge_core-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 48ab7d46ee5b5c7210e7d8e1db7ff1e2876cd9cd745341f1d898b785a5490e0e
MD5 5e0eacd616e2e1543a71832f46c59b4e
BLAKE2b-256 d69ffd4d7a9baf84c9a562f1f3603d8329be6c92bc78b9790fb65325b5101043

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

0.1.0

2 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