Inspiration
Most coordination tools broadcast the same request to everyone, then treat delivery or silence as progress. HumanWire instead asks only the person who can contribute the needed fact, decision, or availability.
What it does
A manager describes an objective, timing, and stakeholders. HumanWire chooses the minimum engagement contract for each person: inform, acknowledge, quick response, structured interview, review/approval, or availability.
One normalized Caspian message handler receives both email and Telegram shapes. The same persisted workflow keeps sender, route, conversation, mandate, assignment, and replay correlation intact even when a structured exchange changes channel.
HumanWire separates asserted answers from confirmed evidence, treats a requested change as a real blocker, limits proposal resolution to two rounds, and creates a meeting package only after the required authority and attendees have a current overlap.
The public Decision Room lets a judge launch a complete Standard-agent coordination, watch the live graph, inspect synchronized Reach and Data panes, replay the saved path, and download redacted JSON/CSV evidence.
How we built it
HumanWire is a Python application with FastAPI/Starlette, Pydantic domain contracts, SQLite event storage, and a single Caspian gateway boundary for email and Telegram. A durable outbox, claim leases, callback fences, and replay guards preserve the at-least-once delivery boundary across retry and restart.
The public product uses deterministic Standard agents so anyone can run it without credentials or external messages. The repository also includes an optional Pydantic AI / Featherless adapter. Model output is schema-constrained, privacy-scanned, deadline-bounded, and centrally validated; models never gain sender authentication, transport selection, evidence confirmation, approval, or scheduling authority.
Challenges
The hardest part was keeping the product truthful under asynchronous, cross-channel behavior. Delivery is not acknowledgement. An answer is not confirmed evidence. A proposal response is not authority unless it came from the required person. A terminal replay must not rewrite history.
We also had to keep the graph, conversation pane, data trail, and exports synchronized at every selected event, which required immutable snapshots, exact transcript binding, canonical ordering, terminal-finality checks, and hostile async browser tests.
Accomplishments
- One handler for email and Telegram rather than duplicated bots.
- Minimum-necessary engagement instead of broadcast outreach.
- Cross-channel structured interviews that preserve one persisted session.
- Exact replay and duplicate-delivery fencing.
- Separate evidence, approval, availability, and meeting authority gates.
- A responsive, accessible Decision Room with synchronized replay.
- A credential-free public workflow and broad deterministic/adversarial tests.
What we learned
Giving an agent hands is mostly about boundaries: prove who replied, which request they answered, what authority they hold, and whether that fact is still current.
The public walkthrough uses Standard agents and sends no external messages. The project implements the Caspian email/Telegram boundary, but live provider verification was not configured or recorded in the submitted video.
What's next
- Run the documented controlled Telegram + email provider proof with consenting operator-owned identities.
- Move the transactional boundary to a managed relational deployment.
- Add operator-facing delivery health and retry controls.
- Connect meeting packages to an explicitly authorized calendar write.
Try it
Public product: https://secondsignal.vercel.app/
Source and setup: https://github.com/marker2601/humanwire
Built With
- caspian-sdk
- fastapi
- featherless.ai
- javascript
- pydantic
- pydantic-ai
- python
- sqlite
- starlette
- svg
- vercel
Log in or sign up for Devpost to join the conversation.