car-agents 0.54.0

Built-in commodity agents for Common Agent Runtime
Documentation
# car-agents

Built-in commodity agents for [Common Agent Runtime](https://github.com/Parslee-ai/car).

## What it does

The agents every workflow needs but nobody should have to build. They compose with `car-multi`'s coordination patterns (swarm, pipeline, supervisor) and use `car-inference` for model calls.

| Agent | Role |
|-------|------|
| `Researcher` | Search, read, gather → structured findings |
| `Planner` | Goal → ordered action steps |
| `Verifier` | Output + spec → pass / fail with reasons |
| `Summarizer` | Long context → compressed handoff |
| `Coordinator` | Goal → which agents + which coordination pattern |

## Deterministic generation injection

Each agent keeps its normal `with_config` constructor for production inference
and also exposes `with_generator(context, config, generator)`. The injected
`AgentGenerator` receives the fully assembled `GenerateRequest` and returns an
`InferenceResult`, making prompt assembly and multi-agent output threading
independently testable without provider credentials, network access, or model
weights. Injection is per agent instance; it does not mutate global inference
state or alter an existing `AgentContext` struct literal.

## Where it fits

Drop-in `AgentSpec` instances for `car-multi` and `car-workflow`. If you need external code discovery (GitHub, repo crawl), reach for `car-search` instead — kept separate to keep these agents thin.

## Injectable generation

`AgentContext::new(engine)` uses the production
`InferenceEngine::generate_tracked` path. Tests and embedding applications can
instead use `AgentContext::with_generator(engine, callback)` to inject the same
typed `GenerateRequest -> InferenceResult` boundary. This makes prompt assembly
and multi-agent output threading deterministic without pretending to measure
model quality; stochastic quality evaluation belongs in `car-bench`.