Token导航 LogoToken导航TokenDH.com
开发需要联网github未标认证来源可访问许可证需确认审计通过

litestar-dependency-injectionlitestar 依赖注入

Agent Skill

用于辅助测试设计、自动化测试、用例整理和回归验证。它适合让 Agent 编写单元测试、端到端测试、测试计划或根据失败日志定位问题。使用时需要确认项目测试框架、运行命令和夹具数据,避免为了通过测试而改坏真实逻辑;涉及浏览器或外部服务时,应区分本地模拟、测试环境和生产环境。

总安装

353

周安装

15

GitHub Stars

5

下载量

124
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:litestar-dependency-injection(litestar 依赖注入)
来源仓库:https://github.com/alti3/litestar-skills
仓库路径:skills/litestar-dependency-injection
安装命令:
npx skills add https://github.com/alti3/litestar-skills --skill litestar-dependency-injection
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/alti3/litestar-skills --skill litestar-dependency-injection

简介

用于辅助测试设计、自动化测试、用例整理和回归验证。

  • 适合编写单元测试、端到端测试、测试计划或根据失败日志定位问题。
  • 使用时需确认项目测试框架、运行命令和夹具数据,避免误改真实逻辑。
  • 涉及浏览器或外部服务时,应区分本地模拟、测试环境和生产环境。
  • 安装方式:通过 GitHub 仓库添加,需确认权限与操作边界。

SKILL.md

Dependency Injection

Execution Workflow

  1. Choose the contract to inject first: settings object, service, repository, session, current user, or request-derived value.
  2. Pick the narrowest scope that should own it: app, router, controller, or handler.
  3. Implement the provider as a callable wrapped in Provide, choosing async, sync, or generator form based on lifecycle needs.
  4. Keep the dependency key identical to the injected parameter name.
  5. Use overrides intentionally at lower scopes and in tests.
  6. Mark special cases with Dependency(...) when validation, defaults, or OpenAPI behavior need to be explicit.
  7. Verify cleanup behavior for generator dependencies and startup-time failure for missing explicit dependencies.

Core Rules

  • Register dependencies at the narrowest scope that matches their reuse boundary.
  • Keep dependency keys stable and descriptive: settings, db_session, current_user, tenant, clock.
  • Keep injected annotations runtime-importable. Avoid hiding injected types behind TYPE_CHECKING unless you also provide a working runtime signature namespace.
  • Accept keyword arguments and self in providers, never positional-only runtime arguments.
  • Match the provider key and the consumer parameter name exactly.
  • Prefer injecting services and repositories instead of raw transport objects unless the dependency is explicitly request-derived.
  • Avoid hidden mutable singletons. If state must be shared, make lifecycle and mutability obvious.

Scope Selection

Litestar resolves dependencies from outer to inner scope, with lower scopes overriding higher ones when the same key is reused.

  • App scope: global settings, shared clients, top-level service factories.
  • Router scope: feature-area dependencies shared across related routes.
  • Controller scope: controller-local services or authorization context.
  • Handler scope: per-endpoint customization and local overrides.

Choose the lowest scope that still matches the reuse boundary. Reusing the same key is an intentional override contract, not a naming accident.

Provider Selection

  • Use async providers for I/O-bound work that is naturally asynchronous.
  • Use sync providers only when the work is truly synchronous.
  • Set sync_to_thread=True for blocking I/O or CPU-heavy sync providers.
  • Set sync_to_thread=False for cheap, non-blocking sync providers to document intent and avoid warnings.
  • Use generator providers when setup and cleanup belong to the same logical resource.
  • Use callable instances when constructor-time configuration is required but invocation should still be DI-managed.

Reference Files

Read only the sections you need:

  • For scope examples, provider forms, request-derived values, yield cleanup, overrides, caching, nested dependency graphs, and service wiring patterns, read references/provider-patterns.md.
  • For Annotated[..., Dependency(...)] usage, validation control, OpenAPI-safe defaults, and fail-fast explicit dependency markers, read references/dependency-markers.md.

Recommended Defaults

  • Keep validation enabled unless the provider is trusted and the performance or type-system tradeoff is justified.
  • Keep dependency graphs shallow enough to reason about quickly.
  • Compose stable layers: settings -> client/session -> repository -> service.
  • Use request-derived providers as translation boundaries from transport inputs to domain types.
  • Reuse the same dependency keys in tests to swap in fakes without touching handler code.

Anti-Patterns

  • Registering everything at app scope because it is convenient.
  • Using dependencies as an opaque service locator with unclear names like dep1.
  • Returning mutable global singletons from providers and mutating them per request.
  • Performing blocking I/O in sync providers without sync_to_thread=True.
  • Using skip_validation=True broadly instead of fixing the type boundary.
  • Repeating lookup logic in handlers when a request-derived provider should own it.

Validation Checklist

  • Confirm every injected parameter name matches a registered dependency key.
  • Confirm the chosen scope matches reuse and override needs.
  • Confirm sync providers declare the right sync_to_thread behavior.
  • Confirm generator dependencies always close, even on exceptions.
  • Confirm nested provider graphs stay readable and testable.
  • Confirm Dependency(default=...) is used when fallback dependencies must stay out of OpenAPI.
  • Confirm explicit Dependency() markers catch missing required wiring at startup.
  • Confirm tests can override keys cleanly without monkeypatching internals.

Cross-Skill Handoffs

  • Use litestar-databases for SQLAlchemy or Piccolo session provisioning.
  • Use litestar-testing for dependency override patterns and client-based verification.
  • Use litestar-security or litestar-authentication when DI is carrying auth context.
  • Use litestar-routing when the main issue is route/controller structure rather than service wiring.

Litestar References

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.33%
按下载量换算43

Claude

29.63%
按下载量换算37

Cursor

19.61%
按下载量换算24

Gemini CLI

9.74%
按下载量换算12

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills