CtrlK
BlogDocsLog inGet started
Tessl Logo

alonso-skills/postgres

Comprehensive PostgreSQL reference for developers and DBAs covering versions 14–18. Use whenever the user asks about PostgreSQL syntax, DDL/DML/DQL, joins, LATERAL, CTEs, window functions, GROUPING SETS, DISTINCT ON, RETURNING, ON CONFLICT, PL/pgSQL, functions, procedures, triggers, views, materialized views, indexes (B-tree/GIN/GiST/BRIN/Hash/Bloom), MVCC, VACUUM, autovacuum, WAL, TOAST, partitioning, replication (streaming/logical), backup, PITR, HA (Patroni/repmgr), pgBouncer, EXPLAIN ANALYZE, RLS, roles, extensions (pgvector, PostGIS, TimescaleDB, Citus, pg_trgm, pg_cron), JSON/JSONB, full-text search, UUID, timestamptz, COPY, system catalogs, collations, large objects, cursors, GUC, or any Postgres administration, performance, security, replication, backup, or recovery topic.

94

1.36x
Quality

94%

Does it follow best practices?

Impact

94%

1.36x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

criteria.jsonevals/scenario-1/

{
  "context": "Tests whether the agent follows the PostgreSQL skill's response format instructions when writing a technical guide on Row-Level Security: leading with direct examples, using correct inline version admonitions, citing documentation with version-pinned URLs (not /docs/current/), using provider-neutral language about managed services, and writing SQL that targets PG16 as the baseline.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Lead with SQL",
      "description": "The guide leads with a direct, working SQL example (CREATE POLICY, ENABLE ROW LEVEL SECURITY, or equivalent) before explanatory prose — not theory-first",
      "max_score": 10
    },
    {
      "name": "Version-pinned URLs",
      "description": "All official PostgreSQL documentation URLs use a pinned major version path (e.g., /docs/16/, /docs/17/) and NOT the floating /docs/current/ path",
      "max_score": 15
    },
    {
      "name": "Version admonition format",
      "description": "Version-specific feature notes use the callout admonition format `> [!NOTE] PostgreSQL NN` or `> [!WARNING] Removed/Deprecated` rather than inline parenthetical version notes",
      "max_score": 12
    },
    {
      "name": "PG16 as SQL baseline",
      "description": "SQL examples are written to run on PostgreSQL 16 (the stated current version) as the baseline, not an older or unspecified version",
      "max_score": 8
    },
    {
      "name": "Provider-neutral managed limitations",
      "description": "Any mention of managed cloud PostgreSQL limitations is phrased categorically (e.g., 'most managed providers...') and does NOT name or recommend specific cloud providers by name",
      "max_score": 12
    },
    {
      "name": "BYPASSRLS superuser caveat",
      "description": "The guide notes that superusers and roles with BYPASSRLS bypass RLS policies, or otherwise covers this important security caveat",
      "max_score": 10
    },
    {
      "name": "FORCE ROW LEVEL SECURITY",
      "description": "The guide covers FORCE ROW LEVEL SECURITY (needed to enforce policies on table owners) or mentions that table owners bypass RLS by default",
      "max_score": 8
    },
    {
      "name": "USING vs WITH CHECK",
      "description": "The guide distinguishes between USING (for SELECT/DELETE) and WITH CHECK (for INSERT/UPDATE) clauses in policy definitions",
      "max_score": 10
    },
    {
      "name": "Section headers match references",
      "description": "The guide uses section headers that match or align with standard PostgreSQL RLS documentation section headings (e.g., Policies, Enabling, Security, etc.) rather than arbitrary organization",
      "max_score": 8
    },
    {
      "name": "Source links present",
      "description": "The guide includes at least one link to official PostgreSQL documentation for RLS (e.g., postgresql.org/docs/16/ddl-rowsecurity.html or similar)",
      "max_score": 7
    }
  ]
}

evals

scenario-1

criteria.json

task.md

SKILL.md

tile.json