conciv

How it works

The pieces behind the widget and how a turn flows.

conciv has three parts. The build plugin boots an engine and injects the widget. The widget runs in your page. The engine talks to a headless agent.

Architecture: the widget in your app talks to the core engine over /api/* (SSE); the engine drives your coding agent (claude, codex) on your machine

The parts

Plugin

conciv boots the engine and injects the widget script into your dev build.

Widget

A chat UI in an open shadow DOM. It probes the engine and shows the conciv button when dev routes are live.

Engine

@conciv/core serves the chat, page, and test APIs on its own dev port.

Harness

The headless agent process behind the chat, such as Claude Code.

A turn

You ask something in the chat. The agent reads the live page to ground itself.
It acts: edits files, drives the DOM, or runs your tests. Output streams back into the widget.
Anything risky pauses for your approval before it runs.

Next: Quick start to add it, or Usage to see each capability.

On this page