К основному содержанию
скилл CX Codex

encore-service — скилл для Claude Code: что делает и как установить

Помогает настроить сервисы и каталоги в проектах на Encore.ts. Пригодится при создании микросервисов и организации вызовов через ~encore/clients.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add encoredev/skills --skill encore-service -a claude-code
npx skills add encoredev/skills --skill service -a claude-code
Открыть на GitHub

Что делает encore-service

Скилл описывает правила создания бэкенд-сервисов на Encore.ts. Он задаёт обязательную структуру: каждый сервис должен содержать файл encore.service.ts с вызовом new Service(). Ассистент учится раскладывать эндпоинты в api.ts, подключать миграции и базы данных в db.ts, а также объединять связанные микросервисы в системные папки вроде commerce или identity.

Вызывать соседний сервис через прямой относительный импорт файлов нельзя: архитектура Encore требует обращения строго через виртуальный пакет ~encore/clients. Если границы сервисов ещё не определены, исходные инструкции рекомендуют сначала воспользоваться скиллом encore-architecture. Вкладывать один сервис внутрь другого тоже запрещено.

Какие задачи решает

  • Создать новый микросервис на Encore.ts с обязательным файлом encore.service.ts
  • Сгруппировать сервисы крупного проекта по системным папкам
  • Настроить типизированные вызовы между микросервисами через ~encore/clients
  • Разделить эндпоинты и доступ к базе данных по структуре api.ts и db.ts

Примеры запросов агенту

  • Создай новый сервис заказов order с файлом encore.service.ts и базой данных
  • Сгруппируй сервисы оплаты и корзины внутри папки commerce
  • Напиши вызов сервиса пользователей из сервиса заказов через ~encore/clients

Как установить encore-service

1Через Skills CLI (Vercel)

npx skills add encoredev/skills --skill encore-service -a claude-code
npx skills add encoredev/skills --skill service -a claude-code

2Вручную: положить файлы

~/.claude/skills/service/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/service/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о encore-service

Как установить encore-service в Claude Code?

Выполните команду npx skills add encoredev/skills --skill encore-service -a claude-code. Также файл скилла можно положить напрямую в ~/.claude/skills/service/SKILL.md.

Зачем нужен скилл encore-service?

Он задаёт агенту правила раскладки файлов в проектах на Encore.ts. Скилл показывает структуру сервисов, схемы монолитных и распределённых систем, а также формат межсервисных запросов.

Можно ли импортировать код одного сервиса в другой напрямую?

Нет, прямые импорты между сервисами в Encore.ts запрещены. Все межсервисные вызовы должны идти исключительно через клиент ~encore/clients.

Исходный текст

SKILL.md · Apache-2.0
---
name: encore-service
description: Implement Encore.ts services and lay out an application using `encore.service.ts`, service directories, systems, and `~encore/clients`. For service boundaries and architecture decisions, use `encore-architecture`.
when_to_use: >-
  User wants to add or modify an Encore.ts service or microservice, implement an already-chosen service layout, organize service files and directories, group services into system folders, or call another service. Trigger phrases: "add a service", "create a service", "add a microservice", "encore.service.ts", "lay out these services", "service directory", "systems folder", "~encore/clients".
---

# Encore Service Structure

## Instructions

### Creating a Service

Every Encore service needs an `encore.service.ts` file:

```typescript
// encore.service.ts
import { Service } from "encore.dev/service";

export default new Service("my-service");
```

### Minimal Service Structure

```
my-service/
├── encore.service.ts    # Service definition (required)
├── api.ts               # API endpoints
└── db.ts                # Database (if needed)
```

## Application Patterns

### Single Service

A service can be defined at the application root:

```
my-app/
├── package.json
├── encore.app
├── encore.service.ts
├── api.ts
├── db.ts
└── migrations/
    └── 001_initial.up.sql
```

### Multi-Service

Each service lives in its own directory:

```
my-app/
├── encore.app
├── package.json
├── user/
│   ├── encore.service.ts
│   ├── api.ts
│   └── db.ts
├── order/
│   ├── encore.service.ts
│   ├── api.ts
│   └── db.ts
└── notification/
    ├── encore.service.ts
    └── api.ts
```

### Large Application (System-based)

Group related services into systems:

```
my-app/
├── encore.app
├── commerce/
│   ├── order/
│   │   └── encore.service.ts
│   ├── cart/
│   │   └── encore.service.ts
│   └── payment/
│       └── encore.service.ts
├── identity/
│   ├── user/
│   │   └── encore.service.ts
│   └── auth/
│       └── encore.service.ts
└── comms/
    ├── email/
    │   └── encore.service.ts
    └── push/
        └── encore.service.ts
```

## Service-to-Service Calls

Import other services from `~encore/clients`:

```typescript
import { user } from "~encore/clients";

export const getOrderWithUser = api(
  { method: "GET", path: "/orders/:id", expose: true },
  async ({ id }): Promise<OrderWithUser> => {
    const order = await getOrder(id);
    const orderUser = await user.get({ id: order.userId });
    return { ...order, user: orderUser };
  }
);
```

## Guidelines

- Services cannot be nested within other services
- Use `~encore/clients` for cross-service calls (never direct imports)
- Each service can have its own database
- Service names should be lowercase, descriptive
- Don't create services just for code organization - use folders instead
- Use `encore-architecture` when the service boundaries have not been decided

© encoredev · Apache-2.0 · encoredev/skills

Похожие скиллы

Все скиллы по теме «Бэкенд и API» →
backend-architect davila7 Скилл для Claude Code, который помогает проектировать бэкенд: границы сервисов, контракты API, отказоустойчивость и наблюдаемость. Пригодится, когда решение принимается до первой строки кода. 501установок microservices-patterns Seth Hobson Помогает проектировать микросервисные системы: выделять границы сервисов, выбирать обмен сообщениями и добавлять паттерны устойчивости. CX Codex 13 176установок vtex-io-service-runtime vtex Помогает собрать рантайм бэкенд-приложения VTEX IO: точку входа Service, типизированный контекст и настройки service.json. CX Codex +1 1 100установок voltagent-core-dev VoltAgent Community Набор субагентов для Claude Code, закрывающий задачи бэкенда, фронтенда, мобильных приложений и проектирования API. Помогает делегировать кодинг узким специалистам под конкретный стек. ★ 26 093звёзд репо vtex-io-service-apps vtex Помогает проектировать бэкенд-сервисы в VTEX IO на Node.js. Задаёт правила для роутов в service.json, middleware и типизированных клиентов @vtex/api. CX Codex +1 1 200установок elysiajs elysiajs Скилл помогает собирать, отлаживать и переносить TypeScript-бэкенды на Elysia v2. Пригодится для маршрутов, схем, плагинов и деплоя. CX Codex +1 14 000установок

Из того же набора25

encore-api Помогает агенту писать эндпоинты Encore.ts через api(...): типы запроса и ответа, параметры пути, валидация, ошибки. CX Codex +1 828установок encore-auth Настраивает аутентификацию в Encore.ts, защищает эндпоинты через authHandler и Gateway, а также передаёт данные пользователя между сервисами. CX Codex +1 821установок encore-code-review Скилл проверяет код на Encore.ts перед мержем: инфраструктура внутри функций, require() вместо импортов, сырые Error вместо APIError. CX Codex +1 819установок encore-database Скилл учит агента работать с PostgreSQL в приложениях на Encore.ts. Он помогает составлять типобезопасные SQL-запросы и писать миграции схемы. CX Codex +1 799установок encore-testing Помогает писать и запускать автотесты для Encore.ts через encore test и vitest или jest. Пригодится, когда нужно покрыть эндпоинт или сервис и не возиться с изолированными базами вручную. CX Codex +1 791установок encore-frontend Скилл связывает фронтенд на React, Next.js, Vue или Svelte с бэкендом Encore.ts: генерация типизированного клиента, CORS и токены авторизации. CX Codex +1 763установок encore-migrate Пошагово переносит бэкенд на Encore.ts или Encore Go. Создаёт план в migration-plan.md, инвентаризирует эндпоинты, базы и очереди, разделяя серверную логику и фронтенд. CX Codex +1 725установок encore-go-auth Скилл помогает защищать Go-эндпоинты Encore и проверять, кто выполняет запрос. Пригодится для JWT, API-ключей и сессионных cookie. CX Codex +1 557установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой