create-service
について
このスキルは、サービスタイプに基づいて開発者を適切なサービス作成テンプレートへ誘導します。バックエンドサービス層コンポーネントの作成を求められた際にご利用ください。ドメインエンティティのCRUD操作には`create-resource-service`へ、横断的関心事には`create-utility-service`へリクエストを振り分けます。
クイックインストール
Claude Code
推奨/plugin add https://github.com/majiayu000/claude-skill-registrygit clone https://github.com/majiayu000/claude-skill-registry.git ~/.claude/skills/create-serviceこのコマンドをClaude Codeにコピー&ペーストしてスキルをインストールします
ドキュメント
Create Service
Services contain business logic and orchestrate operations between repositories, external APIs, and other services.
Service Types
There are two types of services in this architecture:
| Type | Purpose | Skill |
|---|---|---|
| Resource Service | CRUD operations on entities (notes, users, etc.) | create-resource-service |
| Utility Service | Cross-cutting concerns (auth, notifications, email) | create-utility-service |
Which Skill to Use?
Use create-resource-service when:
- Creating a service for a domain entity (Note, User, Course, etc.)
- The service will perform CRUD operations via a repository
- The service needs authorization checks per operation
- The service should emit events for real-time updates
- You've already created the schema and repository for this entity
Example: NoteService, UserService, CourseService
Use create-utility-service when:
- Creating a service for cross-cutting concerns
- The service calls external APIs (auth service, payment gateway, etc.)
- The service provides shared functionality used by other services
- The service doesn't directly map to a domain entity
Example: AuthenticationService, AuthorizationService, EmailService, NotificationService
Service Layer Principles
Regardless of type, all services follow these principles:
- Business logic lives here - Not in controllers or repositories
- Dependency injection - Inject dependencies via constructor
- Throw domain errors - Use errors from
@/errors(not HTTP errors) - User context - Accept
AuthenticatedUserContextTypewhere needed - Return domain types - Return schema types, not HTTP responses
File Naming
Location: src/services/{service-name}.service.ts
| Type | Example |
|---|---|
| Resource | note.service.ts, user.service.ts |
| Utility | authentication.service.ts, authorization.service.ts |
See Also
create-resource-service- CRUD services for entitiescreate-utility-service- Cross-cutting/specialized servicesadd-resource-events- Add real-time events to a resource service
GitHub リポジトリ
関連スキル
content-collections
メタThis skill provides a production-tested setup for Content Collections, a TypeScript-first tool that transforms Markdown/MDX files into type-safe data collections with Zod validation. Use it when building blogs, documentation sites, or content-heavy Vite + React applications to ensure type safety and automatic content validation. It covers everything from Vite plugin configuration and MDX compilation to deployment optimization and schema validation.
creating-opencode-plugins
メタThis skill provides the structure and API specifications for creating OpenCode plugins that hook into 25+ event types like commands, files, and LSP operations. It offers implementation patterns for JavaScript/TypeScript modules that intercept and extend the AI assistant's lifecycle. Use it when you need to build event-driven plugins for monitoring, custom handling, or extending OpenCode's capabilities.
polymarket
メタThis skill enables developers to build applications with the Polymarket prediction markets platform, including API integration for trading and market data. It also provides real-time data streaming via WebSocket to monitor live trades and market activity. Use it for implementing trading strategies or creating tools that process live market updates.
langchain
メタLangChain is a framework for building LLM applications using agents, chains, and RAG pipelines. It supports multiple LLM providers, offers 500+ integrations, and includes features like tool calling and memory management. Use it for rapid prototyping and deploying production systems like chatbots, autonomous agents, and question-answering services.
