# everruns-provider
> Lean provider and LLM abstractions shared by the Everruns Framework and provider crates.
[](https://crates.io/crates/everruns-provider)
[](https://docs.rs/everruns-provider)
[](https://github.com/everruns/everruns/blob/main/LICENSE)
`everruns-provider` owns credential-free model identity, the `ChatDriver`
boundary, provider assembly, protocol drivers, stream/retry helpers, model
profiles, typed IDs, credential schemas, and the LLM error taxonomy.
It is a focused implementation crate in the [Everruns](https://everruns.com)
ecosystem. Application authors normally use the re-exported provider surface
through `everruns`; provider implementers depend here to avoid pulling in the
agent-loop runtime.
## Quick Example
```rust
use everruns_provider::ModelSpec;
let model = ModelSpec::on("company-gateway", "assistant-v2");
assert_eq!(model.provider.as_str(), "company-gateway");
assert_eq!(model.model, "assistant-v2");
```
## What It Provides
- Open `ChatDriver` and provider registry contracts
- Credential-free `ModelSpec` and redacting endpoint/auth values
- Shared OpenAI and Open Responses protocol implementations
- Streaming, retry, model discovery/profile, and error helpers
- Provider-oriented tool and credential schema values
## Documentation
- [Framework models and providers](https://docs.everruns.com/framework/models-and-providers/)
- [Custom providers](https://docs.everruns.com/framework/custom-providers/)
- [API reference](https://docs.rs/everruns-provider)
## License
Licensed under the [MIT License](https://github.com/everruns/everruns/blob/main/LICENSE).