CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

azure-postgres-ts

Connect to Azure Database for PostgreSQL Flexible Server from Node.js/TypeScript using the pg (node-postgres) package.

Quality

65%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/AI-Agents-Safe-Coding-Skills-claude/skills/azure-postgres-ts/SKILL.md

The canonical home for this skill is azure-postgres-ts in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

50%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A highly actionable, code-complete reference for connecting to Azure PostgreSQL Flexible Server, with accurate Azure-specific details (SSL, Entra token scope, token refresh). However, roughly half the body duplicates generic node-postgres knowledge Claude already has, and the ~480-line monolith with zero reference files wastes context and buries the Azure-specific deltas.

Suggestions

Cut the generic pg tutorial sections (basic transactions, typed queries, pool events, key types) and keep only Azure-specific deltas: SSL requirement, Entra ID token acquisition/refresh, PgBouncer port, SKU connection limits.

Split reference-grade material (the AzurePostgresPool token-refresh class, error-code table, pool sizing tables) into a references/ file and point to it from SKILL.md.

Remove the filler 'When to Use' sentence and deduplicate the connection-config block that appears five times across auth and workflow sections.

DimensionReasoningScore

Conciseness

Large portions re-teach generic node-postgres knowledge Claude already has — basic BEGIN/COMMIT transactions, parameterized queries, TypeScript generics on pool.query, pool events, a transaction helper — and the Client connection config block is repeated nearly verbatim five times. The closing 'This skill is applicable to execute the workflow or actions described in the overview.' is pure filler. Not 3 because several whole sections (Core Workflows 4-6, Pool Events, Key Types) could be deleted with no loss of Azure-specific value; not 1 because the Azure-specific content itself (SSL, Entra token scope, token refresh) is accurate and non-padded.

2 / 5

Actionability

The content is overwhelmingly concrete and executable: install commands, env-var setup, both auth paths with working code, a complete token-refresh pool class, and an error-code switch. Not 5 due to minor gaps: the connection-string example uses undefined template variables (\"postgres://${user}:${password}@${host}...\"), and withTransaction references PoolClient without importing it.

4 / 5

Workflow Clarity

Section ordering implies a sequence (install → env vars → choose auth → connect → pool → errors), but there is no explicit step sequence or validation checkpoint (e.g., verify the connection or token before proceeding). The rubric's scoring notes cap workflow_clarity at 3 for database operations lacking feedback loops, which this reference-style body does; the error-handling section partially compensates but is reactive, not a checkpoint.

3 / 5

Progressive Disclosure

Good section headers, but the body is a ~480-line monolith with no bundle files at all — reference-grade material (pool events, key types, error-code reference, the AzurePostgresPool class, pool sizing tables) that clearly belongs in separate reference files is inlined. Matches 'some structure... content that should be separate is inline'; not 4 because nothing is split out despite the volume, and the skill is far beyond the under-50-line simple-skill exception.

3 / 5

Total

12

/

20

Passed

Description

65%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A specific, well-targeted description that clearly communicates what the skill does and would trigger correctly for Azure PostgreSQL + Node/TypeScript requests. Its main weakness is the absence of any 'when to use' trigger clause, and it undersells the skill's actual scope (pooling, passwordless Entra ID auth, token refresh).

Suggestions

Append a trigger clause such as: 'Use when connecting to Azure PostgreSQL Flexible Server, setting up pg connection pools, or configuring passwordless Microsoft Entra ID authentication from a Node.js or TypeScript app.'

Broaden the 'what' to mention the skill's other concrete capabilities (connection pooling, Entra ID/passwordless auth with token refresh, transactions, error-code handling) rather than only 'Connect'.

Add natural synonyms like 'Azure Postgres' and 'node-postgres connection' phrasing users commonly type.

DimensionReasoningScore

Specificity

The description names the domain precisely ("Azure Database for PostgreSQL Flexible Server", "pg (node-postgres) package") and one concrete action ("Connect"), matching the 'names domain and 1-2 concrete actions, but not comprehensive' anchor. It is not 4 because the skill's other real capabilities (connection pooling, Entra ID passwordless auth, token refresh) are absent from the description.

3 / 5

Completeness

Has a clear 'what' ("Connect to Azure Database for PostgreSQL Flexible Server from Node.js/TypeScript using the pg (node-postgres) package") but no 'Use when...' clause or equivalent trigger guidance, which the rubric explicitly caps at 3. Not 4 because 'when' is entirely absent rather than merely under-specified.

3 / 5

Trigger Term Quality

Includes natural terms users would actually say: "Azure Database for PostgreSQL", "Flexible Server", "Node.js", "TypeScript", "pg", "node-postgres" — good keyword coverage. Not 5 because common variations like "Azure Postgres", "passwordless", "Entra ID", or "database connection" are missing.

4 / 5

Distinctiveness Conflict Risk

The combination of cloud provider (Azure), server type (Flexible Server), language (Node.js/TypeScript), and library (pg) defines a clear niche with distinct triggers and minimal conflict risk against generic Postgres skills or other-language Azure skills. Not 4 because the overlap with related skills is negligible given how many distinguishing axes are packed into one sentence.

5 / 5

Total

15

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

administrakt0r/AI-Agents-Safe-Coding-Skills

Path

plugins/AI-Agents-Safe-Coding-Skills-claude/skills/azure-postgres-ts/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.