Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>PosternNew to Visual Studio Code? Get it now.
Postern

Postern

willibrandon

|
9 installs
| (0) | Free
Diagnostics, hover and completion for postgresql.conf, pg_hba.conf and pg_ident.conf.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Postern

PostgreSQL configuration files in Visual Studio Code: postgresql.conf, postgresql.auto.conf, pg_hba.conf and pg_ident.conf. The extension also takes postgresql.base.conf, which Patroni keeps the original file as, and a .conf file under a conf.d directory below a postgresql directory, which is how Debian lays out an include_dir. For another layout, map the files to postgresql-conf in files.associations and the server follows. A file that no language claims by name or extension is taken when its first line is a # postern: comment; .conf itself belongs to Properties, so that does not reach a .conf file.

Features

  • Diagnostics for unknown or misspelled settings, values that do not fit a setting's type, unit or range, settings removed between versions, duplicate keys, and pg_hba.conf rules that an earlier rule shadows.
  • Hover with a setting's description, default, range and context, including whether a change needs a restart.
  • Completion of setting names, enum values, connection types, authentication methods and their options.
  • Live checks against a running server. PostgreSQL exposes pg_file_settings and pg_hba_file_rules, views in which the server parses its own configuration files and reports the line and the error. With a connection string configured, those messages show up in the editor before you reload.
  • Syntax highlighting and comment toggling, including in VS Code for the Web.

Checks work offline from catalogs of pg_settings for PostgreSQL 13 through 18.

Requirements

The extension bundles the Postern language server and is published for Linux (x64, arm64, Alpine), macOS (Intel, Apple silicon) and Windows (x64). On another platform, install a VSIX from the releases page and set postern.path to a postern binary you built, or put one on your PATH.

The language server does not run in the browser. On vscode.dev and github.dev the extension provides highlighting only.

Settings

Setting Default Description
postern.path "" Path to the postern executable. Empty uses the bundled binary, then postern on the PATH.
postern.pg newest PostgreSQL major version, 13 to 18, for offline checks. A # postern: pg=16 comment at the top of a file overrides it.
postern.connectionString "" postgres:// URL of a server to check the open files against.
postern.hba.reportTrust true Hint on pg_hba.conf rules that use trust or password on a non-local address. Loopback and samehost are never reported.
postern.trace.server off Log the traffic between VS Code and the language server.

In untrusted workspaces the executable path and connection string are read from user settings only.

Live checks

Set postern.connectionString to a server that loads the files you are editing. Postern matches the server's pg_file_settings and pg_hba_file_rules rows to the open file by path, so the file in the editor has to be the one the server reads, which usually means editing on the database host or through Remote SSH. When the server cannot be reached, the offline checks apply and one informational diagnostic says so.

Commands

  • Postern: Restart Language Server
  • Postern: Show Language Server Output
  • Postern: Stop Reporting Trust on Non-local Rules, also offered as a quick fix on the hint

Install

Search for Postern in the Extensions view or run:

code --install-extension willibrandon.postern

Visual Studio Marketplace and Open VSX publish the same extension.

Changelog · Issues

Development

Requires Node.js 24. The integration tests need a postern binary in server/, which the repository's release workflow places there for each platform.

npm ci
npm run verify
npm test
npm run package

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft