К основному содержанию
скилл Claude Code CX Codex Cursor GitHub Copilot

postgres-patterns — скилл для Claude Code: что делает и как ставить

Шпаргалка по лучшим практикам PostgreSQL на базе Supabase: выбор индексов, типов данных, оптимизация RLS и поиск медленных запросов.

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

Что делает postgres-patterns

Скилл загружает в контекст модели набор проверенных шаблонов для PostgreSQL, составленный по рекомендациям Supabase. В справочник входят правила выбора индексов (B-tree, GIN, BRIN), подбор типов данных и готовые SQL-конструкции: курсорная пагинация и обработка очередей с FOR UPDATE SKIP LOCKED.

Здесь также собраны служебные запросы для диагностики базы. Скилл помогает быстро найти неиндексированные внешние ключи и зафиксировать раздувание таблиц через pg_stat_user_tables. Для контроля медленных запросов используется pg_stat_statements. Отдельный блок посвящен Row Level Security: в нем показано, почему auth.uid() нужно оборачивать в SELECT, предотвращая лишние проверки для каждой строки.

Этот скилл стоит подключить, если вы проектируете схемы данных или устраняете просадки производительности. Если же база данных в проекте не используется, лучше обойтись без него. Для глубокого аудита воспользуйтесь агентом database-reviewer.

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

  • подобрать тип индекса под условие фильтрации в запросе
  • найти неиндексированные внешние ключи в схеме данных
  • оптимизировать политики Row Level Security (RLS)
  • настроить курсорную пагинацию вместо медленного OFFSET
  • обнаружить раздувание таблиц через pg_stat_user_tables

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

  • Напиши быструю политику RLS для таблицы заказов с привязкой к auth.uid()
  • Помоги составить составной индекс для фильтра по статусу и дате создания
  • Дай SQL-запрос для поиска неиндексированных внешних ключей

Как установить postgres-patterns

1Через Skills CLI (Vercel)

npx skills add affaan-m/ECC --skill postgres-patterns -a claude-code

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

~/.claude/skills/postgres-patterns/SKILL.md

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

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

Весь набор →
video-editing affaan-m Скилл выстраивает пайплайн монтажа реального видео через ИИ. Помогает нарезать сырые записи через FFmpeg, собрать титры в Remotion и добавить озвучку в ElevenLabs. Claude Code CX Codex Cursor +1 6 500установок frontend-patterns affaan-m Скилл подсказывает паттерны для React и Next.js: компоненты, состояние, загрузка данных и производительность. Нужен при разработке и ревью интерфейса. Claude Code CX Codex Cursor +1 5 900установок coding-standards affaan-m Базовые правила кода для проектов: проверяет именование, запрещает мутации объектов и следит за простыми конструкциями. Пригодится на ревью и рефакторинге. Claude Code CX Codex Cursor +1 5 600установок api-design affaan-m Скилл задаёт правила проектирования REST API: именование эндпоинтов, выбор статус-кодов, пагинацию и формат ошибок. Помогает при создании и ревью серверных контрактов. Claude Code CX Codex Cursor +1 5 500установок python-patterns affaan-m Набор правил и шаблонов для написания кода на Python: от типизации по PEP 8 до контекстных менеджеров и стиля EAFP. Claude Code CX Codex Cursor +1 5 400установок frontend-slides affaan-m Скилл создаёт анимационные HTML-презентации с нуля и преобразует PPT/PPTX в веб-слайды. Подойдёт для докладов, питчей и внутренних презентаций. Claude Code CX Codex Cursor +1 5 400установок frontend-design-direction affaan-m Скилл задаёт направление для веб-интерфейсов: помогает продумать и проверить визуальную иерархию, состояния, адаптивность и доступность. Claude Code CX Codex Cursor +1 5 300установок article-writing affaan-m Помогает писать статьи, гайды и рассылки в заданном авторском тоне. Пригодится для длинных текстов, когда важны структура и опора на факты. Claude Code CX Codex Cursor +1 5 200установок

Похожие

notion openclaw Скилл связывает агента с Notion через ntn CLI и API: он помогает читать и менять страницы, запрашивать data sources и загружать файлы. Claude Code CX Codex Cursor +1 5 600установок bigquery-basics официальный google Управляет ресурсами BigQuery и запускает SQL-запросы. Подходит для создания датасетов, таблиц, представлений и базовой загрузки данных. Claude Code Gemini CLI CX Codex 17 678установок cloud-sql-basics официальный google Скилл помогает создавать и объяснять Cloud SQL для MySQL, PostgreSQL и SQL Server. Пригодится при настройке базы в Google Cloud. Claude Code Gemini CLI CX Codex 14 679установок postgresql-optimization официальный github Помогает разбирать PostgreSQL и использовать его специфичные возможности: JSONB, массивы, индексы, полнотекстовый поиск и расширения. GitHub Copilot 16 436установок xlsx официальный anthropics Работает с табличными файлами: создаёт, читает, правит и преобразует книги. Подходит, когда итогом должен стать файл Excel или другой табличный формат. Claude Code Claude.ai 187 223установок google-agents-cli-observability официальный Google Помогает настроить трассировку и сбор данных о работе ИИ-агентов, включая агентов на ADK. Пригодится, когда нужно разбирать выполнение запросов или наблюдать за агентом после развёртывания. Claude Code CX Codex Cursor +1 509 900установок caveman-evidence-review JuliusBrussee Скилл читает данные Caveman Cloud о расходах LLM, трассах и маршрутизации. Подходит для проверки того, куда уходит бюджет проекта. Claude Code CX Codex Cursor +1 103 500установок migration JuliusBrussee Скилл задаёт правила безопасных миграций схем, данных и API с обязательным откатом. Пригодится при изменениях, где нельзя терять данные или ломать совместимость. Claude Code CX Codex Cursor +1 102 900установок

Вопросы о postgres-patterns

Как установить postgres-patterns в Claude Code?

Выполните команду npx skills add affaan-m/ECC --skill postgres-patterns -a claude-code. Файл запишется в ~/.claude/skills/postgres-patterns/SKILL.md.

Что делает postgres-patterns?

Предоставляет ассистенту правила проектирования схем PostgreSQL: шаблоны индексов, корректные типы данных, оптимизированные RLS-политики и диагностические запросы.

Какие инструменты мониторинга использует этот скилл?

Скилл опирается на расширение pg_stat_statements для поиска запросов медленнее 100 миллисекунд и таблицу pg_stat_user_tables для контроля мертвых строк.

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

SKILL.md · MIT
---
name: postgres-patterns
description: PostgreSQL database patterns for query optimization, schema design, indexing, and security. Based on Supabase best practices. Use when designing PostgreSQL schemas, indexes, or RLS policies, or when a query is too slow.
metadata:
  origin: ECC
---

# PostgreSQL Patterns

Quick reference for PostgreSQL best practices. For detailed guidance, use the `database-reviewer` agent.

## When to Activate

- Writing SQL queries or migrations
- Designing database schemas
- Troubleshooting slow queries
- Implementing Row Level Security
- Setting up connection pooling

## Quick Reference

### Index Cheat Sheet

| Query Pattern | Index Type | Example |
|--------------|------------|---------|
| `WHERE col = value` | B-tree (default) | `CREATE INDEX idx ON t (col)` |
| `WHERE col > value` | B-tree | `CREATE INDEX idx ON t (col)` |
| `WHERE a = x AND b > y` | Composite | `CREATE INDEX idx ON t (a, b)` |
| `WHERE jsonb @> '{}'` | GIN | `CREATE INDEX idx ON t USING gin (col)` |
| `WHERE tsv @@ query` | GIN | `CREATE INDEX idx ON t USING gin (col)` |
| Time-series ranges | BRIN | `CREATE INDEX idx ON t USING brin (col)` |

### Data Type Quick Reference

| Use Case | Correct Type | Avoid |
|----------|-------------|-------|
| IDs | `bigint` | `int`, random UUID |
| Strings | `text` | `varchar(255)` |
| Timestamps | `timestamptz` | `timestamp` |
| Money | `numeric(10,2)` | `float` |
| Flags | `boolean` | `varchar`, `int` |

### Common Patterns

**Composite Index Order:**
```sql
-- Equality columns first, then range columns
CREATE INDEX idx ON orders (status, created_at);
-- Works for: WHERE status = 'pending' AND created_at > '2024-01-01'
```

**Covering Index:**
```sql
CREATE INDEX idx ON users (email) INCLUDE (name, created_at);
-- Avoids table lookup for SELECT email, name, created_at
```

**Partial Index:**
```sql
CREATE INDEX idx ON users (email) WHERE deleted_at IS NULL;
-- Smaller index, only includes active users
```

**RLS Policy (Optimized):**
```sql
CREATE POLICY policy ON orders
  USING ((SELECT auth.uid()) = user_id);  -- Wrap in SELECT!
```

**UPSERT:**
```sql
INSERT INTO settings (user_id, key, value)
VALUES (123, 'theme', 'dark')
ON CONFLICT (user_id, key)
DO UPDATE SET value = EXCLUDED.value;
```

**Cursor Pagination:**
```sql
SELECT * FROM products WHERE id > $last_id ORDER BY id LIMIT 20;
-- O(1) vs OFFSET which is O(n)
```

**Queue Processing:**
```sql
UPDATE jobs SET status = 'processing'
WHERE id = (
  SELECT id FROM jobs WHERE status = 'pending'
  ORDER BY created_at LIMIT 1
  FOR UPDATE SKIP LOCKED
) RETURNING *;
```

### Anti-Pattern Detection

```sql
-- Find unindexed foreign keys
SELECT conrelid::regclass, a.attname
FROM pg_constraint c
JOIN pg_attribute a ON a.attrelid = c.conrelid AND a.attnum = ANY(c.conkey)
WHERE c.contype = 'f'
  AND NOT EXISTS (
    SELECT 1 FROM pg_index i
    WHERE i.indrelid = c.conrelid AND a.attnum = ANY(i.indkey)
  );

-- Find slow queries
SELECT query, mean_exec_time, calls
FROM pg_stat_statements
WHERE mean_exec_time > 100
ORDER BY mean_exec_time DESC;

-- Check table bloat
SELECT relname, n_dead_tup, last_vacuum
FROM pg_stat_user_tables
WHERE n_dead_tup > 1000
ORDER BY n_dead_tup DESC;
```

### Configuration Template

```sql
-- Connection limits (adjust for RAM)
ALTER SYSTEM SET max_connections = 100;
ALTER SYSTEM SET work_mem = '8MB';

-- Timeouts
ALTER SYSTEM SET idle_in_transaction_session_timeout = '30s';
ALTER SYSTEM SET statement_timeout = '30s';

-- Monitoring
CREATE EXTENSION IF NOT EXISTS pg_stat_statements;

-- Security defaults
REVOKE ALL ON SCHEMA public FROM public;

SELECT pg_reload_conf();
```

## Related

- Agent: `database-reviewer` - Full database review workflow
- Skill: `clickhouse-io` - ClickHouse analytics patterns
- Skill: `backend-patterns` - API and backend patterns

---

*Based on Supabase Agent Skills (credit: Supabase team) (MIT License)*

© affaan-m · MIT · affaan-m/ECC

Смотрите также

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

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