{"id":"62cd097c-2420-4ee4-995f-9dfccddaa91c","slug":"wimolivier-postgresql-best-practices","name":"postgresql-best-practices","description":"PostgreSQL 18+ comprehensive best practices for enterprise database development. Provides schema\narchitecture patterns, Table API design, PL/pgSQL coding standards, migrations, and data warehousing.\n\nUSE THIS SKILL WHEN THE USER:\n- Creates PostgreSQL schemas, tables, functions, procedures, or triggers\n- Asks about PostgreSQL data types (uuid, text, timestamptz, jsonb, numeric)\n- Writes PL/pgSQL code and needs naming conventions (l_, in_, io_, co_ prefixes)\n- Implements Table API pattern (SECURITY DEFINER functions, schema separation)\n- Sets up database migrations or schema versioning\n- Needs index optimization, constraint design, or query performance help\n- Asks about PostgreSQL 18+ features (uuidv7, virtual columns, temporal constraints)\n- Builds data warehouses with Medallion Architecture (Bronze/Silver/Gold)\n- Needs data lineage tracking, ETL patterns, or audit logging\n- Reviews database code for best practices or anti-patterns\n- Migrates from Oracle PL/SQL to PostgreSQL PL/pgSQL\n- Sets up CI/CD pipelines for database changes\n\nCORE PATTERNS:\n- Three-schema separation: data (tables) → private (internal) → api (external)\n- Table API: All access through SECURITY DEFINER functions with SET search_path\n- Native migration system: Pure PL/pgSQL alternative to Flyway/Liquibase\n- Trivadis naming: l_ (local), in_ (input), io_ (inout), co_ (constant)\n","capabilities":["inout"],"protocols":["OPENCLAW"],"safetyScore":100,"overallRank":30.16,"trustScore":null,"trust":null,"source":"GITHUB_OPENCLEW","updatedAt":"2026-02-24T19:43:14.176Z"}