---
name: bijection-eve
description: "Evaluate and integrate the Eve component with Bijection."
---

# Eve

Bijection-native persistence and reactive chat projections for eve agents

- Package: @bijectionhq/eve
- Category: AI & Agents
- Status: Preview
- License: Apache-2.0
- Bijection source (repository access required): https://github.com/bijectionhq/eve/tree/4117e12dc1f6219c87eded2030d578eb7c647147/packages/convex-eve
- Upstream: https://github.com/dciccale/convex-eve/tree/86dd5b6ed266e4888ba0569a7c648efecf10f396/packages/convex-eve
- Documentation: https://docs.bijection.com/components/using
- Directory: https://bijection.com/components/eve

## Get the source

Bijection repository access is required. Request access at https://bijection.com/contact.

```sh
git clone https://github.com/bijectionhq/eve.git
cd eve
git checkout 4117e12dc1f6219c87eded2030d578eb7c647147
cd packages/convex-eve
```

## Before using this component

Read the package README at the recorded revision for setup, dependencies, and API examples. Upstream documentation describes the original package and may differ from the Bijection adaptation. This is a source candidate for evaluation. Catalog inclusion does not establish npm availability or runtime qualification. Check compatibility with your SDK and deployment before adoption. External providers run their own compute.

## Integration workflow

1. Read the source README and package manifest at the recorded revision.
2. Confirm the required SDK, dependency availability, and runtime compatibility.
3. Follow the component's documented setup and configuration. Never invent an npm install command from a catalog package name.
4. Keep credentials in the project's existing secret store.
5. Follow the project's execution rules for verification and report what was actually checked.

## Original upstream skill

The following guidance describes convex-eve. Its installation commands and APIs refer to the upstream package. Evaluate compatibility with the Bijection source separately.


> Agents: read this skill fully before writing code that uses eve. Follow the installation and configuration steps exactly.

# eve

## Instructions

convex-eve provides Convex-native persistence and reactive projections for agents built on the Eve agent harness. It handles threads, messages, UI parts, pagination, and approvals inside Convex while Eve retains authority over model loops, tools, skills, subagents, and durable workflows. The component exposes ingestion via exact (eveSessionId, streamIndex) coordinates for deduplication and offers a React hook for realtime message projection in application UIs.

### Installation

```bash
npm install convex-eve
```

Current npm version: `convex-eve@0.0.1`

## Use cases

- Building a chat interface backed by an Eve agent where messages need to be stored in Convex and surfaced reactively to users without polling
- Adding an approval workflow to an agentic system where pending tool calls must be captured and held before external delivery
- Paginating conversation history for authenticated users when agent sessions can produce large message volumes
- Integrating an Eve-hosted specialist subagent into an existing Convex application without adopting @convex-dev/agent
- Displaying real-time tool activity and delegation state in an ops panel alongside a user-facing agent conversation

## How it works

The component installs under `components.eve` in a Convex project and exposes a Convex action that bridges to a separately deployed Eve HTTP endpoint. Authentication between the Convex deployment and the Eve agent is handled via a shared `EVE_AGENT_TOKEN` secret set on both sides using `bunx convex env set`. The token stays within host Convex functions and is never written to component tables.

Message ingestion uses `(eveSessionId, streamIndex)` coordinate pairs for exact deduplication, applying Eve's `defaultMessageReducer` semantics with bounded persistence sanitization. Pending messages are captured before external delivery, and the architecture is designed to eventually support Workpool-backed bounded delivery and catch-up reconciliation once that milestone lands.

The `convex-eve/react` package exports a `useUIMessages` hook that subscribes to the reactive message projection, giving frontend components live updates as agent turns complete. The example application pairs a user-facing conversation panel with an operations panel showing tool calls, delegation events, approvals, and sync state.

This is an alpha-stage component. Install with `convex-eve@next` for the implemented Eve-native persistence path. The `latest` tag is a placeholder. Delivery idempotency, reconciliation, and retention controls are not yet production-hardened.

## When NOT to use

- When a simpler built-in solution exists for your specific use case
- If you are not using Convex as your backend
- When the functionality provided by eve is not needed

## Resources

- [npm package](https://www.npmjs.com/package/convex-eve)
- [GitHub repository](https://github.com/dciccale/convex-eve)
- [Live demo](https://github.com/dciccale/convex-eve/tree/main/apps/example)
- [Convex Components Directory](https://www.convex.dev/components/convex-eve)
- [Convex documentation](https://docs.convex.dev)