Auto-activate for dishka imports. Dishka dependency injection framework: Provider, Scope, Container, FromDishka, Inject. Use when: setting up DI containers, defining providers/scopes, or integrating dependency injection with Litestar or FastAPI. Produces Dishka DI container configurations with providers, scopes, and framework integrations. Not for manual dependency injection or other DI frameworks.
From flownpx claudepluginhub cofin/flow --plugin flowThis skill uses the workspace's default tool permissions.
references/cli.mdreferences/fastapi.mdreferences/litestar.mdreferences/providers.mdreferences/testing.mdSearches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Dishka is a Python dependency injection framework built around Providers, Scopes, and typed containers. It supports async/sync workflows and integrates with web frameworks (Litestar, FastAPI) and CLI tools (Click).
For detailed guides and configuration examples, refer to the following documents in references/:
from dishka import Provider, Scope, make_async_container, provide
class AppProvider(Provider):
scope = Scope.APP
@provide
async def get_db_engine(self) -> AsyncEngine:
return create_async_engine("postgresql+asyncpg://...")
class RequestProvider(Provider):
scope = Scope.REQUEST
@provide
async def get_session(self, engine: AsyncEngine) -> AsyncSession:
return AsyncSession(engine)
container = make_async_container(AppProvider(), RequestProvider())
</example>