---
title: dependencies | CodeWeaver Docs
description: API reference for codeweaver.providers.dependencies
url: "https://docs.knitli.com/api/providers/dependencies"
type: static
generatedAt: "2026-04-17T17:21:08.985Z"
---

# dependencies
       [Open in ChatGPT](https://chatgpt.com/?q=Read%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F.%20I%20want%20to%20ask%20questions%20about%20it.)[Open in Claude](https://claude.ai/new?q=Read%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F.%20I%20want%20to%20ask%20questions%20about%20it.)[View in Markdown](/codeweaver/api/providers/dependencies.md)       [Share on LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F)[Share on X](https://x.com/intent/tweet?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F&text=dependencies)[Share on Threads](https://threads.net/intent/post?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F&text=dependencies)[Share on Bluesky](https://bsky.app/intent/compose?text=dependencies%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F)[Share on Facebook](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F)[Share on Reddit](https://reddit.com/submit?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F&title=dependencies)[Share on Hacker News](https://news.ycombinator.com/submitlink?u=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F&t=dependencies)[Share on Email](mailto:?subject=dependencies&body=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F)[Share on WhatsApp](https://wa.me/?text=dependencies%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F)[Share on Telegram](https://t.me/share/url?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fdependencies%2F&text=dependencies)
# `codeweaver.providers.dependencies`
[Section titled “codeweaver.providers.dependencies”](#codeweaverprovidersdependencies)
Dependency injection setup for provider configuration.

This module provides DI type aliases and factory functions for provider settings. Settings classes are configured via DI to enable:

 - Decoupled configuration from provider implementations
 - Automatic dependency resolution (e.g., embedding dimensions ← vector store size)
 - Ready-built SDK clients injected into providers
 - Lazy resolution of provider configurations

## Architecture
[Section titled “Architecture”](#architecture)
Provider settings follow this pattern:


**

```
User Config (TOML/env vars)↓ProviderSettings (root config container)↓DI Resolution: EmbeddingProviderSettingsDep = Annotated[EmbeddingProviderSettingsType, depends(...)]↓Provider receives: client (SDK), config (settings), embedding_options, query_options
```

Each provider category has:

 - A union type (e.g., EmbeddingProviderSettingsType) discriminating by provider
 - A DI type alias (e.g., EmbeddingProviderSettingsDep) for injection
 - A factory function to create the provider settings instance, resolving dependencies as needed
 - A DI type alias for the provider instance itself (e.g., EmbeddingProviderDep)

## Placeholder Status
[Section titled “Placeholder Status”](#placeholder-status)
This module contains intentional placeholders:

 - Type aliases without corresponding factories (marked with ”⏳ Factory pending”)
 - Factory functions marked as `...` (to be implemented)
 - Import statements for types not yet fully defined

This is expected on the feat/di_monorepo branch.