金色时刻 · 15:48
让好资源,触手可及
AGENT SKILL

docs-reader

docs-reader 是面向文档处理的 Agent Skill,来自 MaksimZayats/fastdjango。查看技能说明、操作步骤与使用约定,并通过原项目了解详细用法。

Answers questions using project documentation in docs/en/.

SKILL.md

下载 MD ↓
namedocs-reader
descriptionAnswers questions using project documentation in docs/en/.
version1.0.0

Documentation Reader Skill

This skill helps you navigate and reference the comprehensive project documentation located in docs/en/. Always consult these docs before answering questions about the codebase.

Documentation Framework: Diataxis

The documentation follows the Diataxis framework. Use this mapping to find the right content:

User Intent Doc Section Location
"I want to learn" Tutorial docs/en/tutorial/
"I want to do X" How-To Guides docs/en/how-to/
"I want to understand" Concepts docs/en/concepts/
"I need facts" Reference docs/en/reference/

Quick Reference: Documentation Map

Getting Started (Onboarding)

Question File
How do I set up the project? docs/en/getting-started/quick-start.md
What's the project structure? docs/en/getting-started/project-structure.md
How do I configure my dev environment? docs/en/getting-started/development-environment.md

Tutorial (Step-by-Step Learning)

The tutorial builds a complete Todo List feature:

Step Topic File
1 Model & Service docs/en/tutorial/01-model-and-service.md
2 IoC Registration docs/en/tutorial/02-ioc-registration.md
3 HTTP API docs/en/tutorial/03-http-api.md
4 Celery Tasks docs/en/tutorial/04-celery-tasks.md
5 Observability docs/en/tutorial/05-observability.md
6 Testing docs/en/tutorial/06-testing.md

Concepts (Understanding Architecture)

Topic File Key Content
Service Layer docs/en/concepts/service-layer.md The Golden Rule, why services matter
IoC Container docs/en/concepts/ioc-container.md Dependency injection with punq
Controller Pattern docs/en/concepts/controller-pattern.md HTTP, Celery controllers
Factory Pattern docs/en/concepts/factory-pattern.md FastAPIFactory, CeleryAppFactory
Pydantic Settings docs/en/concepts/pydantic-settings.md Environment-based configuration

How-To Guides (Task-Focused)

Task File
Add a new domain/feature docs/en/how-to/add-new-domain.md
Add a Celery task docs/en/how-to/add-celery-task.md
Handle exceptions docs/en/how-to/custom-exception-handling.md
Override IoC in tests docs/en/how-to/override-ioc-in-tests.md
Secure endpoints docs/en/how-to/secure-endpoints.md
Configure observability docs/en/how-to/configure-observability.md

Reference (Facts & Details)

Topic File
Environment variables docs/en/reference/environment-variables.md
Makefile commands docs/en/reference/makefile.md
Docker services docs/en/reference/docker-services.md

How to Use This Skill

Step 1: Identify the Question Type

Match the user's question to a Diataxis category:

  • Tutorial questions: "How do I learn...", "Walk me through...", "Show me step by step..."
  • How-To questions: "How do I add...", "How can I configure...", "What's the process for..."
  • Concept questions: "What is...", "Why does...", "How does... work", "Explain..."
  • Reference questions: "What are the options for...", "List all...", "What environment variables..."

Step 2: Read the Relevant Documentation

Use the Read tool to access the appropriate documentation file:

Read: docs/en/concepts/service-layer.md

Step 3: Answer from Documentation

Quote or reference specific sections from the docs. Always provide file paths for further reading.

Common Question Mappings

Architecture Questions

Question Read
"How does the service layer work?" docs/en/concepts/service-layer.md
"Why can't controllers use models?" docs/en/concepts/service-layer.md
"How does dependency injection work?" docs/en/concepts/ioc-container.md
"What's the factory pattern?" docs/en/concepts/factory-pattern.md
"How are controllers structured?" docs/en/concepts/controller-pattern.md

Implementation Questions

Question Read
"How do I add a new feature?" docs/en/how-to/add-new-domain.md
"How do I create a Celery task?" docs/en/how-to/add-celery-task.md
"How do I handle errors?" docs/en/how-to/custom-exception-handling.md
"How do I mock services in tests?" docs/en/how-to/override-ioc-in-tests.md
"How do I protect endpoints?" docs/en/how-to/secure-endpoints.md

Setup Questions

Question Read
"How do I set up the project?" docs/en/getting-started/quick-start.md
"What commands are available?" docs/en/reference/makefile.md
"What env vars do I need?" docs/en/reference/environment-variables.md
"What Docker services exist?" docs/en/reference/docker-services.md

Learning Questions

Question Read First
"Show me a complete example" docs/en/tutorial/index.md (then follow all steps)
"How do I build a feature from scratch?" docs/en/tutorial/01-model-and-service.md
"How do I write tests?" docs/en/tutorial/06-testing.md

Key Architectural Rules

Always reference these when answering architecture questions:

The Golden Rule

Controller -> Service -> Model

Controllers NEVER import models directly.

From docs/en/concepts/service-layer.md:

This rule is non-negotiable. Every database operation must go through a service.

IoC Registration Order

From docs/en/concepts/ioc-container.md:

container = Container()
register_core(container)           # 1. Domain services first
register_infrastructure(container) # 2. Infrastructure (JWT, auth)
register_delivery(container)       # 3. Controllers and factories

Controller Types

From docs/en/concepts/controller-pattern.md: - Controller (sync) - HTTP API, Celery tasks

Additional Documentation

Also check CLAUDE.md in the project root - it contains development guidelines and code quality requirements.

Reference Files

For deeper documentation exploration, see: - references/doc-structure.md - Complete file listing - references/question-mappings.md - Extended Q&A mappings

来源:MaksimZayats/fastdjango · MIT 许可 · 许可原文 · MD 为来源页保存的历史版本