Convergence debt and meridian docking protocols for multi-agent systems
Project description
Meridian v0.3
Thin docking protocols that bound convergence debt — the cost of becoming able to meet again after independent success.
Not a chain. Not shared rewards. Not full ontology merge.
Discoveries (read this first): docs/DISCOVERIES.md · meridian discoveries
Site: site/index.html
Note: docs/TECHNICAL_NOTE.md
What we actually found (short)
- Convergence debt is real — local success drives meetability to zero.
- Thin docks restore the bargain — no shared goals required.
- Hidden interfaces are recoverable — Debt-Gradient PCA from a scalar friction meter.
- Private objectives stay private — transfer attacks fail on private R².
- Debt scales with N — meridians stay thin.
- Rendezvous is poisonable — hash-pin / quorum / dual-rail defend it.
- Rotation needs ceremony — parent hash + signatures + policy (HMAC or Ed25519).
- It runs for real agents — tools, files, multi-process, OpenAI/LangGraph hooks.
Install
From PyPI (public):
pip install meridian-dock
meridian version # 0.3.2+
meridian discoveries # what we found, not just what we shipped
meridian profiles list # domain dock templates
https://pypi.org/project/meridian-dock/
From source:
cd C:\Users\rimma\meridian
python -m pip install -e .
# optional: pip install -e ".[crypto]"
meridian suite
60-second product loop
meridian rendezvous init .\rendezvous.json
meridian dock init .\agent.dock.json --rendezvous .\rendezvous.json
meridian dock maintain .\agent.dock.json --rendezvous .\rendezvous.json
from meridian import MeridianMiddleware, MiddlewareConfig
from meridian.adapters import OpenAIToolsAdapter, OpenAIStyleTool
mw = MeridianMiddleware("rendezvous.json", "agent.dock.json",
config=MiddlewareConfig(defense="hash_pin"))
mw.start()
adapter = OpenAIToolsAdapter(mw, tools=[...])
# tools=adapter.tool_specs()
# adapter.handle_tool_calls(tool_calls)
Ed25519 rotation (Exp-007):
from meridian import PkiParty, pki_sign_proposal, pki_activate_if_quorum
from meridian.rotation import make_proposal, legitimate_upgrade, rendezvous_signature
# parties sign with private keys; verifiers use public keys only
Laboratory scoreboard
| ID | Result |
|---|---|
| Exp-001 Meridian Bargain | PASS |
| Exp-002 DG-PCA hidden interface | PASS |
| Exp-003 Non-revelation | PASS |
| Exp-004 Scaling | PASS |
| Exp-005 Poisoning | PASS |
| Exp-006 HMAC rotation | PASS |
| Exp-007 Ed25519 PKI | PASS |
| W1 / W1b / live / mw / mp / adapter / kit | PASS |
meridian suite
# Passed 14/14 all_pass=True
Layout
meridian/
site/index.html # public one-pager
docs/TECHNICAL_NOTE.md
theory/
src/meridian/ # package (pip install -e .)
experiments/ # 001–007 + wedges + run_all
results/ # locked reports
examples/
lab/NOTEBOOK.md
Core idea
- Publish a rendezvous dock signature.
- Maintain each agent’s public dock every tool turn.
- Specialize privately off-dock.
- Rotate only via signed quorum + breaking-change policy (HMAC or Ed25519).
Discovery-first · MIT · v0.3.0
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file meridian_dock-0.3.3.tar.gz.
File metadata
- Download URL: meridian_dock-0.3.3.tar.gz
- Upload date:
- Size: 57.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f74b71f3a723c36567222ad8d0347685fe2afb10830d790b59fdacde19be0ee5
|
|
| MD5 |
b4244a46dc529754a6358ca67c2ad05a
|
|
| BLAKE2b-256 |
d4c9c752ae897115c58179f33b889918e2e726f55723db8177ffdc1f07154a37
|
File details
Details for the file meridian_dock-0.3.3-py3-none-any.whl.
File metadata
- Download URL: meridian_dock-0.3.3-py3-none-any.whl
- Upload date:
- Size: 69.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c99bd70e0a1c2dd37773dea0c59fe1ef0c431f765b3ad5f6e98b20ff2df9e884
|
|
| MD5 |
872443ebe143c7a6b12c536c4a75fece
|
|
| BLAKE2b-256 |
6aa99bcfc43e6a9232edb3ef19b1e4eab6db4540d4d28abcbe84d85d4ca87a88
|