neon-access
GitHub通过 GitHub Workflow 安全执行任意 PostgreSQL SQL,避免暴露数据库凭证。支持查询、更新及迁移等操作,返回加密结果。
Trigger Scenarios
Install
npx skills add radixark/miles --skill neon-access -g -y
SKILL.md
Frontmatter
{
"name": "neon-access",
"description": "Run arbitrary PostgreSQL SQL against the Miles Neon database through the repository-authorized GitHub workflow and return the encrypted result. Use when a repository writer asks to query, inspect, update, migrate, or otherwise operate on Neon without exposing NEON_DATABASE_URL. The SQL is not classified, rewritten, split, or restricted; the database role remains the authorization boundary."
}
Neon Access
Use this skill when a writer asks to run SQL, for example: “Use $neon-access to run SELECT now().” The workflow is the only route to Neon; never ask for or expose NEON_DATABASE_URL.
Run SQL
-
Treat an explicit request as authorization to generate the exact SQL and a short audit reason, then dispatch without a second confirmation. Ask only when unresolved ambiguity would materially change the SQL. Treat every statement as potentially state-changing because the skill does not inspect or classify it.
-
Save the exact UTF-8 SQL in a temporary
.sqlfile. Preserve the text byte-for-byte; do not normalize, split, wrap, retry, or add a transaction. -
From the repository root, run:
python3 .claude/skills/neon-access/scripts/run_neon_workflow.py \ --reason '<short audit reason>' \ /absolute/path/to/request.sql -
Return the decoded JSON result and workflow URL. If the result status is
error, report the database error and possible partial effects; never retry automatically.
Boundaries
- The caller and workflow require GitHub
writeoradminpermission; the workflow checks both the original and triggering actors. - The workflow reads the existing
secrets.NEON_DATABASE_URL. Users do not retrieve or provide this secret. - Any PostgreSQL SQL accepted by the server is allowed, including multiple statements, DDL, DML, functions, and explicit transaction control.
psqlbackslash commands are client commands, not PostgreSQL SQL, and are unsupported.- Execution uses autocommit and performs no implicit transaction wrapping. A later error can leave earlier statements committed.
- Returned rows are capped at 4 MiB; this does not limit or cancel SQL execution.
- Results and database errors are encrypted for the one-time local key before artifact upload. Public logs and summaries contain metadata only.
Version History
- 12754e9 Current 2026-09-21 23:53


