Workforce Intelligence & Reasoning Engine — framework-agnostic governance layer for autonomous enterprise AI agents
Project description
WIRE — Workforce Intelligence & Reasoning Engine
Framework-agnostic governance layer for autonomous enterprise AI agents.
"Describe the work. WIRE hires the workforce."
The Problem
Every major agent framework ships without the five things enterprises actually need:
| Gap | LangGraph | CrewAI | AutoGen |
|---|---|---|---|
| Loop protection | ❌ | ❌ | ❌ |
| Tamper-proof audit | ❌ | ❌ | ❌ |
| Hard cost ceilings | ❌ | ❌ | ❌ |
| HITL as first-class primitive | Partial | ❌ | Unstable |
| Live workforce visibility | ❌ | ❌ | ❌ |
WIRE adds all of them — without replacing your existing framework.
Install
pip install wire-ai # core
pip install wire-ai[langgraph] # + LangGraph adapter
pip install wire-ai[crewai] # + CrewAI adapter (Sprint 5)
pip install wire-ai[autogen] # + AutoGen adapter (Sprint 5)
pip install wire-ai[all] # everything
Sprint 1 — 5 lines, full governance
import wire
# Your existing LangGraph graph — unchanged
from langgraph.graph import StateGraph
graph = StateGraph(...).compile()
# Wrap with WIRE
workforce = wire.deploy(
graph,
backend="langgraph",
max_iterations=30, # LoopGuard: halt before runaway
max_cost_usd=0.50, # Budget: hard $0.50 ceiling
hourly_budget_usd=0.10, # Budget: $0.10/hour rolling
audit_path="audit.jsonl" # AuditChain: tamper-proof log
)
# Run — same API as graph.ainvoke()
result = await workforce.ainvoke({"messages": [...]})
# Verify audit integrity
wire.AuditChain.verify("audit.jsonl")
# ✓ 12 entries · chain intact
What You Get
LoopGuard
Halts runaway agent loops before they exhaust your API quota. Configurable iteration and cost limits. Raises LoopBreachError with full context.
# Fires when iterations > 30 OR cost > $0.50
workforce = wire.deploy(graph, max_iterations=30, max_cost_usd=0.50)
AuditChain
Every agent action, node execution, and tool call is recorded in a tamper-proof SHA-256 hash-linked log. Verify integrity at any time.
wire.AuditChain.verify("audit.jsonl")
# Raises AuditChainError with entry index if tampered
# Replay any past run
wire replay --run-id run_20260612_abc123
Budget
Hard cost ceilings with rolling hourly and daily windows. Never get a surprise bill.
budget = wire.Budget(hourly=0.50, daily=5.00)
# BudgetBreachError fires before the ceiling is exceeded
EventBus
Typed events for every runtime moment. Subscribe handlers for alerting, logging, or custom business logic.
@workforce.on(wire.EventKind.LOOP_BREACH)
async def alert(event):
await slack.send(f"Loop breach in {event.run_id}!")
CLI
wire version # v0.1.0
wire status # installed adapters
wire audit audit.jsonl # verify chain integrity
wire replay --run-id abc123 # replay a past run
Sprint Roadmap
| Sprint | Ships | Status |
|---|---|---|
| S1 — MVP | deploy() + LoopGuard + AuditChain + Budget |
✅ v0.1.0 |
| S2 — Governance | HITLGate + IdempotencyGuard + SLATracker |
🔜 v0.2.0 |
| S3 — HIRE | wire.hire("...") + 20 role templates |
🔜 v0.3.0 |
| S4 — Visibility | Live dashboard + Slack HITL + time-travel replay | 🔜 v0.4.0 |
| S5 — Multi-Framework | CrewAI + AutoGen + OpenAI adapters | 🔜 v0.5.0 |
| S6 — Enterprise | SOC-2 presets + SSO + RBAC + web dashboard | 🔜 v1.0.0 |
Architecture
┌──────────────────────────────────────────────────────┐
│ HIRE LAYER intent → role matching → workforce │
├──────────────────────────────────────────────────────┤
│ RUNTIME LAYER LoopGuard · HITLGate · SLATracker │
│ IdempotencyGuard · Budget · State │
├──────────────────────────────────────────────────────┤
│ VISIBILITY Dashboard · AuditChain · CostLedger │
│ TimeTravel · DriftDetector │
├──────────────────────────────────────────────────────┤
│ ADAPTERS LangGraph · CrewAI · AutoGen · OpenAI│
└──────────────────────────────────────────────────────┘
Why WIRE?
Built from 95 adversarially-verified research claims across 24 sources:
- LangGraph self-describes as "very low-level" — no governance primitives
- AutoGen Studio is "not meant for production" — their own README
- CrewAI has no idempotency guard — payments and emails can fire twice on retry
- No framework ships a tamper-proof audit chain, built-in workforce visibility, or HITL routing
WIRE fills every gap. Framework-agnostic. Enterprise-ready from day 1.
Contributing
See CONTRIBUTING.md. MIT licensed.
Built by Naveen Kumar Baskaran
Project details
Release history Release notifications | RSS feed
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 wire_ai-0.4.0.tar.gz.
File metadata
- Download URL: wire_ai-0.4.0.tar.gz
- Upload date:
- Size: 47.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
361c71a35fb23603b15f082f019d5689a8d7ddb105680d2ddc920516292c09e1
|
|
| MD5 |
0d38ab5c97d350143b5104c2f63fcbc2
|
|
| BLAKE2b-256 |
fc612355e4b243161492b56f351b247d77a078f69f81e56a5ef61ce6203b1e62
|
File details
Details for the file wire_ai-0.4.0-py3-none-any.whl.
File metadata
- Download URL: wire_ai-0.4.0-py3-none-any.whl
- Upload date:
- Size: 48.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f693e25e07cf2c4efb6003bf0becdcf5d9756293edae370fd77f2b7eb953981
|
|
| MD5 |
4f1455cf8edb8e986011ba0e3bed652d
|
|
| BLAKE2b-256 |
225e37f589dc89578b67fdfbea71dd44d3bef7b3029473b8e280e945bdb6964a
|