用途:面向火山引擎 RDS 实例及自建数据库的简化版数据库工具,用于元数据查询、SQL 执行和自然语言转 SQL(nl2sql)。当需要查看表结构、查看数据、执行 SQL 或把自然语言转换为 SQL 时使用。
主要能力:通过 DatabaseTunnel 提供 list_instances(列出可访问实例)、list_databases(列出数据库)、list_tables(列出表)、get_table_info(获取表结构)、execute_sql(执行 SQL)、nl2sql(自然语言转 SQL)等方法。支持 MySQL、Postgres/PostgreSQL、VeDBMySQL、Mongo、Redis、MSSQL、ByteRDS、MySQLSharding、External(自建)等 instance_type。
使用方式:安装依赖 pip install volcengine;配置环境变量 DATABASE_VIKING_APIG_URL、DATABASE_VIKING_APIG_KEY、AISEARCH_DBW_INSTANCE_INFO_LIST(base64 编码的 JSON 数组,未配置时兼容读取 KNOWLEDGE_CENTER_DBW_INSTANCE_LIST),可选 VOLCENGINE_REGION、VOLCENGINE_INSTANCE_ID、VOLCENGINE_INSTANCE_TYPE、VOLCENGINE_DATABASE。运行时优先读取 ~/.openclaw/.env,缺失则回退进程环境变量。调用示例:from scripts.tunnel import DatabaseTunnel; toolbox = DatabaseTunnel()。
限制与注意:安全第一,执行 DML/DDL 需谨慎,建议只做查询;DML 可能被安全规则拦截,需通过工单系统执行。实例从环境变量提供的可访问列表中选择;多实例且用户未指明时先调用 list_instances。字段含义不明或多个表相关时须询问用户。认证失败、权限不足、资源不存在、连接错误、超时等有对应提示。具体收费、价格与平台支持范围暂未提供。