converge-core 0.3.0

Converge Agent OS - correctness-first, context-driven multi-agent runtime
Documentation
# Converge Core

A correctness-first, context-driven multi-agent runtime library.

## Overview

Converge Core provides the foundational runtime for building systems where:
- **Context is the API** — Agents collaborate through shared data, not direct calls
- **Convergence is mandatory** — Execution proceeds until a fixed point is reached
- **Correctness over availability** — Wrong answers are worse than no answers

## Core Concepts

### Context
The shared, typed, evolving state of a job. Context is append-only in meaning and provides the only communication channel between agents.

### Agents
Capabilities that read context and emit effects. Agents never call each other directly—all communication happens through context.

### Engine
The convergence loop that coordinates agents, merges effects, and detects when execution has reached a fixed point.

### Convergence
Execution halts when the context reaches a stable state (no new facts are added in a cycle).

## Quick Start

```rust
use converge_core::{Engine, Context, ContextKey};
use converge_core::agents::{SeedAgent, ReactOnceAgent};

// Create engine and register agents
let mut engine = Engine::new();
engine.register(SeedAgent::new("seed-1", "initial data"));
engine.register(ReactOnceAgent::new("hyp-1", "derived insight"));

// Run until convergence
let result = engine.run(Context::new()).expect("should converge");

// Inspect results
assert!(result.converged);
assert!(result.context.has(ContextKey::Seeds));
println!("Converged in {} cycles", result.cycles);
```

## Public API

### Core Types

- [`Engine`] — The convergence runtime
- [`Context`] — Shared job state
- [`Agent`] — Agent trait for implementing capabilities
- [`AgentEffect`] — Buffered output from agents
- [`Fact`] — Typed facts added to context
- [`ProposedFact`] — LLM suggestions requiring validation

### Guarantees

- **Determinism**: Same input → same output
- **Termination**: Budgets prevent infinite loops
- **Isolation**: Agents never call each other
- **Auditability**: All changes are traceable

## Documentation

For detailed API documentation, see [docs.rs/converge-core](https://docs.rs/converge-core).

For high-level architecture and design principles, see the [public documentation](../docs/public/).

## License

MIT