# Changelog

All notable changes to Nexus will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.1.0] - 2026-02-09

### 🎉 Initial Release

#### Core Primitives
- `Agent` — LLM-powered agent with ReAct execution loop, tool calling, lifecycle hooks
- `Task` — Full lifecycle management (submitted → working → completed / failed)
- `Handoff` — Three patterns: delegate, transfer, broadcast
- `SharedState[T]` — Versioned state with optimistic locking and rollback
- `Message` / `Conversation` — OpenAI-compatible message format

#### Orchestration
- `GraphOrchestrator` — Static DAG workflows with conditional edges and parallel execution
- `RouterOrchestrator` — Dynamic routing via rules, capabilities, and LLM triage
- `AdaptiveOrchestrator` — Embedding-based capability matching with cosine similarity
- `TopologyEngine` — Unified interface over all three orchestration modes

#### Model Providers
- `LiteLLMProvider` — 100+ LLM providers via LiteLLM (recommended)
- `OpenAIProvider` — Direct OpenAI API integration
- `AnthropicProvider` — Direct Anthropic API integration
- `OllamaProvider` — Local model support via Ollama

#### Tool Calling
- ReAct loop: Think → Act → Observe → Repeat (up to configurable max iterations)
- Auto JSON Schema extraction from Python function type hints and docstrings
- `AgentTool` wrapper supporting sync and async callables
- Detailed execution logging (🔧 tool calls, ✅ results, ✨ final answer)

#### Streaming & Multi-turn
- `Team.stream()` — Single-turn streaming output
- `Team.chat_stream()` — Multi-turn streaming with conversation memory
- `Team.chat()` — Multi-turn conversation with full tool calling support
- `Team.reset_conversation()` — Clear conversation history

#### Protocol Layer
- `MCPToolProvider` — MCP integration (stdio + HTTP transport)
- `A2AClient` / `A2AServer` — Google A2A protocol for agent discovery and communication
- `MessageBus` — Async pub/sub + point-to-point + request/response
- `DiscoveryService` — Agent registry with capability-based lookup

#### Runtime
- `ExecutionEngine` — Orchestrates task execution through agent teams
- `CheckpointStore` — In-memory and file-based checkpoint persistence
- `RetryPolicy` / `FallbackPolicy` / `EscalationPolicy` — Three-layer error recovery
- `TokenBudgetManager` — Token/cost tracking with auto-degradation

#### Observability
- `Tracer` / `Span` — Distributed tracing with nested span trees
- `MetricsCollector` — Counters, gauges, histograms with per-agent breakdown

#### Developer Experience
- `Team` — High-level API for building multi-agent systems in 5 lines
- `nexus` CLI — init, run, chat, inspect commands
- YAML configuration support
- Comprehensive examples (multi-turn, streaming, tools, MCP, orchestration modes)
