pgmdd

A reference for editing PDD files, a proprietary XML format used by MicroOLAP Database Designer for PostgreSQL. It documents the file hierarchy and rules needed for tables, indexes, constraints, and relationships.

In plain words
What is it for?
Inspecting or editing legacy PDD database diagrams, adding schema objects, and preserving compatibility with MicroOLAP Database Designer.
Why use it?
PDD files have undocumented details that can make a manually edited file fail in the design tool. The guide highlights identifiers, XML structure, escaping, and index settings that are easy to get wrong.

Skill for Claude CodeCodex

Part of the vmkteam-developer plugin — 35 skills shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/vmkteam/claude-plugins/pgmdd
Any agent
npx skills add vmkteam/claude-plugins --skill pgmdd
Clone the repo
git clone --depth 1 https://github.com/vmkteam/claude-plugins

Made for: Claude Code, Codex.

Or install vmkteam-developer, the plugin that ships this one along with the rest of its 35 skills.

Per session 30 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 919 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00030 $0.00919
Opus 5 $0.00015 $0.00460
Sonnet 5 $0.00006 $0.00184
Haiku 4.5 $0.00003 $0.00092

Measured 3d ago against content hash 40614fc9fe9b, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

pgmdd scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/developer/skills/pgmdd/SKILL.md · 82 lines

How it starts

The opening of the file, as written. The whole thing — 82 lines — stays where its author put it; the contents beside it link to each section on GitHub.

PDD — MicroOLAP Database Designer формат

.pdd — проприетарный XML MicroOLAP Database Designer for PostgreSQL. Публичной спецификации нет — ориентируйся на существующие файлы в docs/.

Для новых проектов предпочитай PGD (см. /pgd). PDD — legacy-формат.

Non-obvious правила

  • Числовые ID уникальны в пределах файла — при добавлении объекта сначала найди max(ID)
  • После ручной правки — ВСЕГДА открой и пересохрани в MDD GUI, иначе Generate Script сломается
  • COMPOSITE на каждую таблицу — запись-тип с MasterTableOID = ID ENTITY; без неё таблица не видна в GUI
  • INDEXCOLUMNS — имена, не ID колонок (через COMMATEXT)
  • " в Predicate экранируется как \A, ' — как \a
  • GIN = Method="5", GIST = Method="4" (легко перепутать)
  • DEFAULT пустая строка: DefaultValue="''" QuoteDefault="0" (выражение, не литерал)

Иерархия

DBMODEL
├── MODELSETTINGS, DATABASE, ROLES, SCHEMAS
├── COMPOSITES              запись-тип на каждую таблицу
└── METADATA
    ├── ENTITIES            таблицы
    │   ├── COLUMNS
    │   ├── CONSTRAINTS     PK (Kind=2), UNIQUE (Kind=1)
    │   └── INDEXES         внутри ENTITY (в отличие от PGD!)
    └── REFERENCES          FK отдельной секцией

Типы (Datatype коды)

PG Datatype Type Width
text 25 text 0
varchar(N) 1043 varchar N
int4 23 int4 0
int8 20 int8 0
float4 700 float4 0
float8 701 float8 0
bool 16 bool 0
jsonb 3802 jsonb 0
timestamptz 1184 timestamp with time zone -1
text[] 1009 text[] 0
int4[] 1007 int4[] 0

COLUMN

<COLUMN ID="1428002" Name="filename" Pos="2"
    Datatype="25" Type="text" Width="0" Prec="0"
    NotNull="1" AutoInc="0" PrimaryKey="0" IsFKey="0"
    DefaultValue="" QuoteDefault="0" Comments=""/>
  • NotNull/PrimaryKey/IsFKey — 0/1
  • AutoInc — 0=нет, 2=ALWAYS IDENTITY, 3=BY DEFAULT IDENTITY
  • QuoteDefault — 0=выражение (NOW(), 0, ''), 1=строковый литерал ({}, текст)

Read the full file on GitHub · 82 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 82 lines · 30 tokens per session scan A 40614fc9fe9b

Subscribe to this mod's changes

pgmdd is a skill published in the GitHub repository vmkteam/claude-plugins (7 stars, last pushed 4mo ago), licensed MIT. It adds 30 tokens to every session and 919 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

db-repair

Auto-fix gbrain's Postgres access so the brain stays available. When any gbrain command or MCP tool result carries a GBRAINDBACCESS marker (or an operator reports the brain database is down), run the hardcoded gbrain db-repair ladder: diagnose, apply the safe tier, verify. The action is ALWAYS the hardcoded command …

garrytan/gbrain · 96 tokens

postgres-pro

Use when optimizing PostgreSQL queries, configuring replication, or implementing advanced database features. Invoke for EXPLAIN analysis, JSONB operations, extension usage, VACUUM tuning, performance monitoring.

Jeffallan/claude-skills · 41 tokens

postgres-database-migration

Use this skill for planning, testing, and safely executing PostgreSQL schema migrations — especially when working with production data or shared databases. Trigger when user asks to: Test a schema migration before applying it to production Add, remove, or rename columns safely on a live table Change a column's data…

timescale/pg-aiguide · 222 tokens

setup-timescaledb-hypertables

Use this skill when creating database schemas or tables for Timescale, TimescaleDB, TigerData, or Tiger Cloud, especially for time-series, IoT, metrics, events, or log data. Use this to improve the performance of any insert-heavy table. Trigger when user asks to: Create or design SQL schemas/tables AND…

timescale/pg-aiguide · 219 tokens

claimable-postgres

Provision instant temporary Postgres databases via Claimable Postgres by Neon (neon.new) with no login, signup, or credit card. Supports REST API, CLI, and SDK. Use when users ask for a quick Postgres environment, a throwaway DATABASEURL for prototyping/tests, or "just give me a DB now". Triggers include: "quick…

neondatabase/mcp-server-neon · 123 tokens

dsql

Build with Aurora DSQL — manage schemas, execute queries, handle migrations, diagnose query plans, diagnose cluster performance, load data, and develop applications with a serverless, distributed SQL database. Covers IAM auth, multi-tenant patterns, MySQL-to-DSQL and PostgreSQL-to-DSQL schema conversion, FK…

awslabs/agent-plugins · 227 tokens