datamodellm — скилл для Claude Code: схемы БД в Prisma
Помогает агенту проектировать схему базы данных в формате Prisma и открывать её в визуальном редакторе DataModelLM. Пригодится, когда нужна ERD или модель данных до написания кода.
npx skills add nimbalyst/nimbalyst --skill datamodellm -a claude-codeЧто делает datamodellm
Скилл учит агента работать с файлами .prisma для редактора DataModelLM от Nimbalyst. Это визуальный редактор схем: он рисует диаграмму «сущность — связь» на холсте, а данные хранит в обычном текстовом файле Prisma. Агент создаёт и правит модели, а вы смотрите на картинку.
Каждый файл обязан начинаться со служебного комментария // @nimbalyst {...} с параметрами холста и позициями сущностей. Без этой строки редактор не покажет схему. Дальше идёт стандартный Prisma: блок datasource db с провайдером и url = env("DATABASE_URL"), затем модели с полями. Скилл описывает скалярные типы (Int, String, DateTime, Json и другие), модификаторы ? и [], атрибуты @id, @unique, @default, @updatedAt, @relation.
Отдельно разобраны три схемы связей: один-ко-многим, один-к-одному и неявная многие-ко-многим. Для явных связей нужен @relation с полями fields и references — без него редактор не построит линию между сущностями. Файл можно положить в корень проекта или в models/, schema/.
Какие задачи решает
- спроектировать схему базы данных до первой миграции
- построить диаграмму связей между таблицами
- описать модели в формате Prisma с нуля
- связать сущности через
@relationбез ошибок - добавить к моделям
createdAtиupdatedAt
Примеры запросов агенту
- Создай файл
schema.prismaс моделями User и Post и связью один-ко-многим - Добавь в схему модель Profile со связью один-к-одному к User
- Проверь, что у каждой модели есть
@idи метка времениupdatedAt
Как установить datamodellm
1Через Skills CLI (Vercel)
npx skills add nimbalyst/nimbalyst --skill datamodellm -a claude-code2Вручную: положить файлы
~/.claude/skills/datamodellm/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/datamodellm/
1Через Skills CLI (Vercel)
npx skills add nimbalyst/nimbalyst --skill datamodellm -a codex2Вручную: положить файлы
.agents/skills/datamodellm/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add nimbalyst/nimbalyst --skill datamodellm -a cursor2Вручную: положить файлы
.cursor/skills/datamodellm/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install nimbalyst/nimbalyst datamodellm2Вручную: положить файлы
.github/skills/datamodellm/SKILL.md1Через Skills CLI (Vercel)
npx skills add nimbalyst/nimbalyst --skill datamodellm -a gemini-cli2Командой платформы
gemini skills install https://github.com/nimbalyst/nimbalyst --path packages/extensions/datamodellm/claude-plugin/skills/datamodellmВручную: положить файлы
.devin/skills/datamodellm/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add nimbalyst/nimbalyst --skill datamodellm -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о datamodellm
Как установить datamodellm в Claude Code?
Выполните npx skills add nimbalyst/nimbalyst --skill datamodellm -a claude-code. Файл скилла появится по пути ~/.claude/skills/datamodellm/SKILL.md.
Что делает datamodellm?
Помогает агенту писать схемы БД в формате Prisma для визуального редактора DataModelLM. Редактор показывает их как диаграмму сущностей и связей.
Чем файл DataModelLM отличается от обычной схемы Prisma?
Первой строкой должен идти комментарий // @nimbalyst с настройками холста. Без него схема не откроется в визуальном редакторе.
Исходный текст
SKILL.md · MIT
---
name: datamodellm
description: Create visual data models for database schemas using Nimbalyst's DataModelLM editor. Use when the user wants to design a data model, database schema, entity relationship diagram, or Prisma schema.
---
# DataModelLM - Visual Data Modeling
DataModelLM is Nimbalyst's visual editor for creating database schemas using Prisma format. It displays entity-relationship diagrams with a visual canvas.
## When to Use DataModelLM
- Designing database schemas
- Creating entity relationship diagrams (ERDs)
- Planning data models for applications
- Working with Prisma schemas
- Any visual data modeling task
## File Format
- **Extension**: `.prisma`
- **Format**: Prisma schema with special metadata header
- **Location**: Any directory (commonly workspace root or `models/`, `schema/`)
### Required Header
Every DataModelLM file MUST start with a `@nimbalyst` metadata comment:
```prisma
// @nimbalyst {"viewport":{"x":0,"y":0,"zoom":1},"positions":{},"entityViewMode":"standard"}
```
### Basic Structure
```prisma
// @nimbalyst {"viewport":{"x":0,"y":0,"zoom":1},"positions":{},"entityViewMode":"standard"}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
model User {
id Int @id @default(autoincrement())
email String @unique
name String?
posts Post[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
}
model Post {
id Int @id @default(autoincrement())
title String
content String?
published Boolean @default(false)
author User @relation(fields: [authorId], references: [id])
authorId Int
createdAt DateTime @default(now())
}
```
## Supported Types
### Scalar Types
- `Int`, `BigInt`, `Float`, `Decimal`
- `String`, `Boolean`
- `DateTime`, `Json`, `Bytes`
### Modifiers
- `?` - Optional field
- `[]` - Array/list
### Attributes
- `@id` - Primary key
- `@unique` - Unique constraint
- `@default(value)` - Default value
- `@updatedAt` - Auto-update timestamp
- `@relation` - Define relationships
## Relationship Patterns
### One-to-Many
```prisma
model User {
posts Post[]
}
model Post {
author User @relation(fields: [authorId], references: [id])
authorId Int
}
```
### One-to-One
```prisma
model User {
profile Profile?
}
model Profile {
user User @relation(fields: [userId], references: [id])
userId Int @unique
}
```
### Many-to-Many (Implicit)
```prisma
model Post {
categories Category[]
}
model Category {
posts Post[]
}
```
## Best Practices
1. **Always include the @nimbalyst header** - Required for visual editor
2. **Use meaningful model names** - PascalCase, singular (User not Users)
3. **Include timestamps** - Add createdAt and updatedAt to most models
4. **Define explicit relations** - Always specify @relation with fields and references
© nimbalyst · MIT · nimbalyst/nimbalyst