返回顶部
s

supabaseSupabase连接

Connect to Supabase for database operations, vector search, and storage. SQL queries, CRUD, pgvector similarity search, and table management. Note: Supabase is migrating to new project-scoped API keys starting March 11, 2026.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.2.1
安全检测
已通过
363
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

supabase

Supabase CLI

与Supabase项目交互:查询、CRUD、向量搜索和表管理。

API密钥迁移(2026年3月): Supabase将从2026年3月11日起弃用旧版服务密钥。
获取新的项目级密钥:仪表盘 → 设置 → API → API密钥。
今后请设置SUPABASEAPIKEY。旧版SUPABASESERVICEKEY在2026年底前仍可使用。

设置

bash

必需


export SUPABASE_URL=https://yourproject.supabase.co
export SUPABASESERVICEKEY=eyJhbGciOiJIUzI1NiIs... # 旧版 — 新项目请使用 SUPABASEAPIKEY

新的项目级密钥(推荐,2026年3月+)

export SUPABASEAPIKEY=sbp_...

可选:用于管理API

export SUPABASEACCESSTOKEN=sbp_xxxxx

快速命令

bash

SQL查询


{baseDir}/scripts/supabase.sh query SELECT * FROM users LIMIT 5

插入数据

{baseDir}/scripts/supabase.sh insert users {name: John, email: john@example.com}

带筛选的查询

{baseDir}/scripts/supabase.sh select users --eq status:active --limit 10

更新

{baseDir}/scripts/supabase.sh update users {status: inactive} --eq id:123

删除

{baseDir}/scripts/supabase.sh delete users --eq id:123

向量相似度搜索

{baseDir}/scripts/supabase.sh vector-search documents 搜索查询 --match-fn match_documents --limit 5

列出表

{baseDir}/scripts/supabase.sh tables

描述表结构

{baseDir}/scripts/supabase.sh describe users

命令参考

query - 运行原始SQL

bash
{baseDir}/scripts/supabase.sh query

示例

{baseDir}/scripts/supabase.sh query SELECT COUNT(*) FROM users {baseDir}/scripts/supabase.sh query CREATE TABLE items (id serial primary key, name text) {baseDir}/scripts/supabase.sh query SELECT * FROM users WHERE created_at > 2024-01-01

select - 带筛选查询表

bash
{baseDir}/scripts/supabase.sh select <表名> [选项]

选项:
--columns <列名> 逗号分隔的列名(默认:*)
--eq <列名:值> 等于筛选(可多次使用)
--neq <列名:值> 不等于筛选
--gt <列名:值> 大于
--lt <列名:值> 小于
--like <列名:值> 模式匹配(使用%作为通配符)
--limit 限制结果数
--offset 偏移结果
--order <列名> 按列排序
--desc 降序排列

示例

{baseDir}/scripts/supabase.sh select users --eq status:active --limit 10 {baseDir}/scripts/supabase.sh select posts --columns id,title,createdat --order createdat --desc {baseDir}/scripts/supabase.sh select products --gt price:100 --lt price:500

insert - 插入行

bash
{baseDir}/scripts/supabase.sh insert <表名>

单行

{baseDir}/scripts/supabase.sh insert users {name: Alice, email: alice@test.com}

多行

{baseDir}/scripts/supabase.sh insert users [{name: Bob}, {name: Carol}]

update - 更新行

bash
{baseDir}/scripts/supabase.sh update <表名> --eq <列名:值>

示例

{baseDir}/scripts/supabase.sh update users {status: inactive} --eq id:123 {baseDir}/scripts/supabase.sh update posts {published: true} --eq author_id:5

upsert - 插入或更新

bash
{baseDir}/scripts/supabase.sh upsert <表名>

示例(需要唯一约束)

{baseDir}/scripts/supabase.sh upsert users {id: 1, name: Updated Name}

delete - 删除行

bash
{baseDir}/scripts/supabase.sh delete <表名> --eq <列名:值>

示例

{baseDir}/scripts/supabase.sh delete sessions --lt expires_at:2024-01-01

vector-search - 使用pgvector进行相似度搜索

bash
{baseDir}/scripts/supabase.sh vector-search <表名> <查询> [选项]

选项:
--match-fn <名称> RPC函数名称(默认:match_<表名>)
--limit 结果数量(默认:5)
--threshold 相似度阈值0-1(默认:0.5)
--embedding-model 查询嵌入模型(默认:使用OpenAI)

示例

{baseDir}/scripts/supabase.sh vector-search documents 如何设置身份验证 --limit 10

需要类似以下的匹配函数:

CREATE FUNCTION matchdocuments(queryembedding vector(1536), matchthreshold float, matchcount int)

tables - 列出所有表

bash
{baseDir}/scripts/supabase.sh tables

describe - 显示表结构

bash
{baseDir}/scripts/supabase.sh describe <表名>

rpc - 调用存储过程

bash
{baseDir}/scripts/supabase.sh rpc <函数名>

示例

{baseDir}/scripts/supabase.sh rpc getuserstats {user_id: 123}

向量搜索设置

1. 启用pgvector扩展

sql
CREATE EXTENSION IF NOT EXISTS vector;

2. 创建包含嵌入列的表

sql
CREATE TABLE documents (
id bigserial PRIMARY KEY,
content text,
metadata jsonb,
embedding vector(1536)
);

3. 创建相似度搜索函数

sql
CREATE OR REPLACE FUNCTION match_documents(
query_embedding vector(1536),
match_threshold float DEFAULT 0.5,
match_count int DEFAULT 5
)
RETURNS TABLE (
id bigint,
content text,
metadata jsonb,
similarity float
)
LANGUAGE plpgsql
AS $$
BEGIN
RETURN QUERY
SELECT
documents.id,
documents.content,
documents.metadata,
1 - (documents.embedding <=> query_embedding) AS similarity
FROM documents
WHERE 1 - (documents.embedding <=> queryembedding) > matchthreshold
ORDER BY documents.embedding <=> query_embedding
LIMIT match_count;
END;
$$;

4. 创建索引以提高性能

sql
CREATE INDEX ON documents
USING ivfflat (embedding vectorcosineops)
WITH (lists = 100);

环境变量

变量必需描述
SUPABASEURL项目URL (https://xxx.supabase.co)
SUPABASESERVICE_KEY
是 | 服务角色密钥(完全访问) | | SUPABASEANONKEY | 否 | 匿名密钥(受限访问) | | SUPABASEACCESSTOKEN | 否 | 管理API令牌 | | OPENAIAPIKEY | 否 | 用于生成嵌入 |

注意事项

  • - 服务角色密钥绕过RLS(行级安全)
  • 客户端/受限访问请使用匿名密钥
  • 向量搜索需要pgvector扩展
  • 嵌入默认使用OpenAI text-embedding-ada-002(1536维)

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 supabase-db-1776197432 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 supabase-db-1776197432 技能

通过命令行安装

skillhub install supabase-db-1776197432

下载

⬇ 下载 supabase v1.2.1(免费)

文件大小: 7.36 KB | 发布时间: 2026-4-15 13:28

v1.2.1 最新 2026-4-15 13:28
Fix display name (remove Clawdbot prefix)

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部