SuperAPI AI 工具集

read-only-postgres

数据与分析

查看项目

更新于 10-15 22:41

技能介绍

用途:对已配置的 PostgreSQL 数据库执行安全的只读查询,适合查询数据、探索 schema/表结构、运行 SELECT 语句。

主要能力:只读会话(readonly=True);仅允许 SELECT、SHOW、EXPLAIN、WITH,拒绝多语句、DDL/DML、数据修改型 CTE、SELECT INTO 及序列变更函数;30 秒语句超时;单次最多 10000 行;列宽上限 100 字符;错误信息不泄露密码;可按表配置 pii_masking 对指定列做中间字符掩码(如 john@email.com → j************m,2 字符及以下不掩码),并在结果尾部提示被掩码的列。

使用方式:需 Python 3.8+,安装 psycopg2-binary:pip install -r requirements.txt。在技能目录或 ~/.config/claude/read-only-postgres-connections.json 创建 connections.json,含 databases 数组,字段有 name、description、host、port(默认 5432)、database、user、password、sslmode(disable/allow/prefer/require/verify-ca/verify-full)、pii_masking。因含凭据需 chmod 600 connections.json。常用命令:python3 scripts/query.py --list;--db app-db-dev --query "SELECT ...";--tables;--schema;--limit 100。

适用场景:按 description 匹配用户意图选择数据库(如 users/accounts、orders/payments、events/audit logs),不确定时先 --list 再询问。

限制:仅只读,不能写入或修改数据;需自行准备连接配置与凭据;退出码 0 成功、1 出错。其余未在资料中说明。