[ agent harness · daemon-first ]
infaiw is an agent harness that works with you, not around you. It runs as a background service: hand off a task, close the terminal, and come back to a durable timeline of everything it did, with every consequential step waiting for your approval.
sidecar loops · MCP · skills · evals · one Go binary + one user service
[ 01 / the sidecar loop ]
Agents love to say "done". A sidecar loop is a delegated subagent that isn't finished until an acceptance check agrees, and it leaves a full record behind.
The parent session hands off a task together with an AcceptanceCheck: what "done" has to look like.
The sidecar keeps iterating until the check passes, or stops at its iteration limit and says so.
Results come back over ISAC, and every step stays on the durable timeline for you to inspect.
A real session: one parent reviewing a change through six sidecar loops, three of them paused on approvals.
[ 02 / the daemon ]
infaiw runs as a user service. The TUI is just a client: attach from as many as you like, leave, and come back to the same session. Sessions talk to each other through mailboxes, routed by the engine (ISAC).
clients
infaiw daemon
engine
routes messages
holds approvals
writes the timeline
sessions · mailboxes
[ 03 / on board ]
Every session is an event timeline: compact to store, fast to replay. Branch from any point and move between timelines.
infaiw runs as a background service. Close the terminal mid-task and the work continues. Several clients can attach to the same session.
Subagents, grown up. Each delegated task carries an AcceptanceCheck, so a sidecar can't just declare victory, and every loop is recorded on the timeline.
Inter-session agent comms, modelled on actors: every session has a mailbox and the engine routes messages between sessions. Simple wiring, no special cases.
Each task carries a short note on what was actually expected. If the agent loses the thread, it recovers the goal from the checklist: infaiw's first memory.
The latest events stay verbatim; older ones are compressed. The agent keeps sight of what it just did and resumes mid-task. Informed by DeepSeek's approach.
Approvals wait for you, even if you closed the window hours ago. Allow, deny, or deny with a reason. One simple mental model.
No per-model prompt hacks. Agents, like people, follow clear instructions, so one well-written prompt works across models.
Attach images as input, and capture model-generated images in the session, saved straight from the TUI.
MCP servers with OAuth, elicitation and prompts. Reusable skills. Evals to check the agent does what you asked.
Web fetch and web search, with safeguards built in.
DeepSeek and OpenAI Codex today, with configurable thinking levels and provider catalogs that refresh hourly.
[ 04 / install ]
Homebrew recommended
macOS & Linux · runs as a background service
Linux package manager
Install infaiw from the package repository, then start its user service:
[ 05 / shipped & next ]
The harness is in place. Next, the same daemon runs multi-step pipelines and many cooperating agents, with the same human checkpoints.
Sessions as compact event timelines: cheaper to store, faster to load, and branchable.
Delegated subagents that must pass an acceptance check before they report back, recorded on the timeline.
Connect MCP servers, with OAuth authorization, elicitation, and reusable prompts.
Evals that check whether the agent actually did what it was asked.
Multi-step pipelines that run unattended on the same daemon, with the same human checkpoints.
Many cooperating agents, coordinated through the same inter-session mailboxes.
[ 06 / building in public ]
Every day of building infaiw, posted on X as it happened: plans, dead ends, work in progress and releases. Start from the first post or jump to the latest.
Hover or focus a day to see what shipped.