Communitygithub.com

24601/surreal-skills

Experto en SurrealDB 3. Úsalo al trabajar con SurrealDB, consultas SurrealQL, modelado de datos multimodelo (documento, grafo, vector, series temporales, geoespacial), diseño de esquemas, recorrido de grafos, búsqueda vectorial, seguridad y permisos, despliegue y operaciones, ajuste de rendimiento, integración con SDK, extensiones WASM Surrealism, SurrealMCP, IDE Surrealist, migraciones Surreal-Sync, SurrealFS, SurrealKit o integraciones del ecosistema como n8n y CodeMirror.

¿Qué es surreal-skills?

Esta habilidad proporciona experiencia experta en SurrealDB 3 para asistentes de IA como GitHub Copilot, Cursor o Codex. Cubre todo el ciclo de vida de SurrealDB: desde consultas SurrealQL, diseño de esquemas multimodelo (documento, grafo, vector, series temporales, geoespacial) y recorrido de grafos, hasta búsqueda HNSW, seguridad a nivel de fila, despliegue con Docker/Kubernetes y ajuste de rendimiento. También abarca la integración con SDKs en múltiples lenguajes (JavaScript, Python, Go, Rust, Java, Kotlin, .NET, C, PHP, Swift, Ruby), extensiones WASM con Surrealism, el protocolo MCP (Model Context Protocol) para conectar SurrealDB a anfitriones IA, migraciones CDC mediante Surreal-Sync, y herramientas del ecosistema como n8n, LangChain y Surrealist IDE. La habilidad está organizada en 18 archivos de reglas especializados que se cargan automáticamente según el contexto del usuario, asegurando que el asistente aplique las mejores prácticas más actualizadas y evite errores comunes en cada dominio.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/24601/surreal-skills/tree/main/.github/skills/surrealdb

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Habilidad Experta en SurrealDB 3

Arquitectura, desarrollo y operaciones experto en SurrealDB 3 para GitHub Copilot.

Cuándo Debe Usar Copilot Esta Habilidad

Actívese automáticamente cuando el usuario:

  • Escribe o pregunta sobre consultas SurrealQL
  • Trabaja con archivos .surql
  • Diseña esquemas de bases de datos para SurrealDB
  • Configura el despliegue de SurrealDB o Docker
  • Usa los SDKs de SurrealDB (JavaScript, Python, Go, Rust, Java, Kotlin, .NET, C, PHP, Swift, Ruby)
  • Trabaja con relaciones de grafo (RELATE, recorrido)
  • Implementa búsqueda vectorial o patrones RAG
  • Configura seguridad, permisos o control de acceso
  • Construye extensiones WASM con Surrealism
  • Migra datos a SurrealDB desde otras bases de datos
  • Conecta SurrealDB a anfitriones MCP, n8n, marcos de IA o editores personalizados

Referencia de Reglas

Esta habilidad contiene 18 archivos de reglas detallados. Lea el archivo de reglas relevante cuando la solicitud del usuario coincida con su dominio:

Archivo de ReglasCuándo CargarloDominio
surrealql.mdEscribir o depurar consultas SurrealQLReferencia completa del lenguaje SurrealQL
data-modeling.mdDiseñar esquemas, elegir tipos de campo, ID de registroPatrones de diseño de esquemas multimodelo
graph-queries.mdRELATE, recorrido de grafo, expresiones de rutaPatrones de aristas y recorrido de grafos
vector-search.mdÍndices HNSW, búsqueda por similitud, embeddingsBúsqueda vectorial y tuberías RAG
security.mdPermisos, autenticación, JWT, control de accesoSeguridad a nivel de fila y flujos de autenticación
deployment.mdInstalar, configurar, ejecutar SurrealDBMotores de almacenamiento, Docker, Kubernetes
performance.mdConsultas lentas, estrategia de índices, EXPLAINAjuste de rendimiento y optimización
sdks.mdUsar SurrealDB desde código de aplicaciónPatrones en JS, Python, Go, Rust, Java, Kotlin, .NET, C, PHP, Swift, Ruby
surrealism.mdEscribir extensiones WASMDesarrollo de extensiones Rust a WASM
surrealml.mdTrabajar cerca de SurrealMLLímite de vista previa .surml y advertencia de dependencias nativas
surrealmcp.mdConectar anfitriones IACatálogo de herramientas MCP y despliegue
editor-tooling.mdSoporte de editor/IDELSP, tree-sitter, CodeMirror, extensiones de editor
langchain.mdLangChain RAGAPI de almacén de vectores de Python
ecosystem-integrations.mdPunteros de n8n/marcosn8n, documentación de marcos de IA, límite de Spectron, Habilidades de Agente
surrealist.mdUsar el IDE/GUI SurrealistFunciones del IDE y diseñador de esquemas
surreal-sync.mdMigrar desde otras bases de datosSincronización CDC desde Postgres, Mongo, etc.
surrealfs.mdOperaciones de sistema de archivos de agente IASistema de archivos virtual respaldado por SurrealDB
surrealkit.mdSincronización de esquemas, lanzamientos, semillas y pruebas declarativasGestión de esquemas en estado deseado para aplicaciones SurrealDB

Referencia Rápida

Fundamentos de SurrealQL

-- Crear registros
CREATE person:alice SET name = 'Alice', age = 30;

-- Aristas de grafo
RELATE person:alice->follows->person:bob SET since = time::now();

-- Recorrer grafo
SELECT ->follows->person.name AS following FROM person:alice;

-- Búsqueda vectorial (HNSW)
DEFINE INDEX idx_embed ON document FIELDS embedding HNSW DIMENSION 1536 DIST COSINE;
SELECT * FROM document WHERE embedding <|10,40|> $query_vector;

-- Permisos a nivel de fila
DEFINE TABLE post SCHEMALESS PERMISSIONS
  FOR select WHERE published = true OR user = $auth.id
  FOR create, update WHERE user = $auth.id;

-- Consultas en vivo
LIVE SELECT * FROM person WHERE age > 25;

Conceptos Clave

  • IDs de registro: tabla:id (ej., person:alice) -- ciudadanos de primera clase, no se necesitan JOINs
  • Multimodelo: Documento + Grafo + Vector + Series temporales + Geoespacial en una sola BD
  • Operadores de grafo: -> (saliente), <- (entrante), <-> (bidireccional)
  • Operador KNN: <|K,EF|> donde K=vecinos, EF=parámetro de búsqueda (NO es métrica de distancia)
  • Motores de almacenamiento: memoria, RocksDB, SurrealKV (viaje en el tiempo), TiKV (distribuido)
  • Extensiones WASM: Nuevo en v3 -- escribe Rust, compila a WASM, registra con DEFINE MODULE

Scripts

# Verificación de estado
uv run scripts/doctor.py

# Introspección de esquema
uv run scripts/schema.py introspect

# Verificar actualizaciones upstream
uv run scripts/check_upstream.py

Notas de Seguridad

  • Los ejemplos usan root/root solo para desarrollo local. Use credenciales con ámbito en producción.
  • Los scripts se conectan solo a endpoints especificados por el usuario. Sin llamadas de red a terceros.
  • Los nombres de tablas se validan contra [a-zA-Z_][a-zA-Z0-9_]* antes de la interpolación de consultas.
  • Prefiera instalaciones mediante gestor de paquetes o contenedores en lugar de instaladores remotos mediante shell.

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

Skills relacionados