Кастомные Skills для твоего проекта
Стандартные Skills покрывают общие пакеты. Но у каждого проекта есть свои конвенции.
Когда нужен кастомный Skill
- В проекте есть доменная логика
- Свои правила написания кода
- Специфические паттерны
- Интеграции с внутренними сервисами
Создание Skill
mkdir -p .ai/skills/my-project
Создай .ai/skills/my-project/SKILL.md :
---
name: my-project-development
description: Conventions and patterns for My Project.
---
# My Project Development
## When to use
Use when working with core domain features of My Project.
## File structure
- Controllers: `app/Http/Controllers/`
- Actions: `app/Actions/`
- DTOs: `app/DTOs/`
- Enums: `app/Enums/`
## Conventions
### Actions
All business logic in Actions:
```php
namespace App\Actions;
class CreateOrder
{
public function handle(array $data): Order
{
// ...
}
}
DTOs
Use DTOs instead of arrays:
namespace App\DTOs;
readonly class OrderData
{
public function __construct(
public string $title,
public int $total,
) {}
}
Enums
namespace App\Enums;
enum OrderStatus: string
{
case Pending = 'pending';
case Paid = 'paid';
case Shipped = 'shipped';
}
Testing
Use Pest. Every Action has a test:
it('creates an order', function () {
$order = app(CreateOrder::class)->handle([...]);
expect($order)->toBeInstanceOf(Order::class);
});
## Установка Skill
```bash
php artisan boost:update
Skill установится в .claude/skills/ или другую директорию агента .
Переопределение встроенных Skills
Если встроенный Skill не подходит — переопредели:
.ai/skills/livewire-development/SKILL.md
Boost использует твой вместо встроенного .
Пример: Skill для API
---
name: api-development
description: Build and modify API endpoints.
---
# API Development
## Structure
- Controllers: `app/Http/Controllers/Api/`
- Resources: `app/Http/Resources/`
- Requests: `app/Http/Requests/Api/`
## Response format
```json
{
"data": {},
"meta": {}
}
Errors
{
"message": "...",
"errors": {}
}
Versioning
All API routes under /api/v1/.
Authentication
Use Sanctum. Token via Authorization: Bearer.
## Skill для фронтенда
```markdown
---
name: frontend-development
description: React/Inertia conventions.
---
# Frontend Development
## Structure
- Pages: `resources/js/Pages/`
- Components: `resources/js/Components/`
- Hooks: `resources/js/hooks/`
## Naming
- Pages: PascalCase
- Hooks: camelCase, start with `use`
- Components: PascalCase
Советы
- Держи Skill коротким. 100–300 строк
- Примеры кода. Не только описание
- Фокус на конвенциях. Что отличает твой проект
- Обновляй при изменениях. Skill — живой документ
Итоги
- Кастомные Skills для домена
- Формат
SKILL.md - Установка через
boost:update - Переопределение встроенных
- Примеры для API и фронтенда