Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add michealkeines/OpenBridge --skill openbridge-buildgit clone --depth 1 https://github.com/michealkeines/OpenBridgeWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/michealkeines/openbridge/openbridge-build)<a href="https://agentmods.dev/skills/michealkeines/openbridge/openbridge-build"><img src="https://agentmods.dev/badge/skills/michealkeines/openbridge/openbridge-build/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/michealkeines/openbridge/openbridge-build"><img src="https://agentmods.dev/badge/skills/michealkeines/openbridge/openbridge-build.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00098 | $0.03736 |
| Opus 5 | $0.00049 | $0.01868 |
| Sonnet 5 | $0.00020 | $0.00747 |
| Haiku 4.5 | $0.00010 | $0.00374 |
Grade C, and why
openbridge-build scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
GC by `rm -rf <workdir>/work/` between runs if you care. How it starts
The opening of the file, as written. The whole thing — 319 lines — stays where its author put it; the contents beside it link to each section on GitHub.
openbridge-build — author a new pool producer
This is the library reference for authors. If you're driving an existing pool as a worker, load the openbridge skill, not this one.
What you write
A normal async def main(): that calls await bridge.ask(...) to
publish work into a pool. Each ask() is one work item, served by one
worker. Concurrent ask()s fan out across workers in parallel.
import asyncio
# Install OpenBridge first: `pip install -e .` from the OpenBridge repo root
from openbridge import Bridge
bridge = Bridge(name="my-producer", pool="my-pool")
# name = this producer's unique ID (for `openbridge list`, history)
# pool = the work-distribution group workers consume from
async def process(item):
result = await bridge.ask(
item_id=item["id"],
prompt=render_prompt(item),
template={"summary": "", "scope": ""},
validate=lambda d: "summary required" if not d.get("summary") else None,
)
if result.skipped:
...
else:
apply(item, result.data)
async def main():
items = discover_items()
progress = bridge.checkpoint("progress", default={"done": []})
pending = [i for i in items if i["id"] not in progress["done"]]
# Fan out across the worker pool — N items processed in parallel
sem = asyncio.Semaphore(5)
async def gated(item):
async with sem:
await process(item)
progress["done"].append(item["id"])
bridge.save("progress", progress)
await asyncio.gather(*(gated(i) for i in pending))
if __name__ == "__main__":
bridge.serve(main())
The runtime handles: scratch submission files per work_id, Redis queue + claim + result lists, validation re-prompt loop, producer/worker registration in pool sets, history.jsonl, state.json.
API
Bridge(name, pool, *, redis_url=None, workdir=None)
name— this producer's unique identity. Used inopenbridge list, history, state.json. Multiple producers with different names can publish into the same pool concurrently.pool— the work pool to publish into. Workers consume from this pool. Pool names namespace everything in Redis — two projects with different pool names cannot collide.redis_url— defaults to$REDIS_URLorredis://localhost:6379/0. Auto-bootstraps a Docker container if no Redis is up (opt out withOPENBRIDGE_NO_DOCKER=1).workdir— defaults to<cwd>/.<name>/. Each producer has its own workdir for state.json / history.jsonl / scratch submission files.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 319 lines · 98 tokens per session scan C 46e400052790
openbridge-build is a skill published in the GitHub repository michealkeines/OpenBridge (1 stars, last pushed 3mo ago), licensed MIT. It adds 98 tokens to every session and 3,736 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
hive.chart-creation-foundations
Required reading whenever any chart tool is available. Teaches the one-tool embedding contract (call chartrender → live chart appears in chat AND a downloadable PNG lands in the queen session dir), the ECharts (data viz) vs Mermaid (structural diagrams) decision, the BI/financial-grade aesthetic baseline (no…
browser-edge-cases
SOP for debugging browser automation failures on complex websites. Use when browser tools fail on specific sites like LinkedIn, Twitter/X, SPAs, or sites with Shadow DOM.
canvas-design
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
subscription-manager
Create and manage scheduled subscription tasks. Use when the user wants to set up recurring reminders, periodic reports, scheduled checks, or any automated tasks that run on a schedule. Supports cron expressions, fixed intervals, and one-time executions.
CSOC Operations & Playbook Automation
SOC alert triage, incident playbook automation, escalation workflows, shift reporting, and SOC KPI tracking.
elixir-idioms
OTP/BEAM patterns and Elixir idioms — GenServer, Supervisor, Task, Registry, pattern matching, with chains, pipes. Use when designing processes or debugging BEAM issues.