К основному содержанию
скилл CX Codex

surrealql-functions — скилл для Claude Code: встроенные функции

Подсказывает агенту точные сигнатуры встроенных функций SurrealDB по установленной версии, а не по памяти модели.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add surrealdb/agent-skills --skill surrealql-functions -a claude-code
Открыть на GitHub

Что делает surrealql-functions

SurrealDB поставляет сотни встроенных функций, сгруппированных по пространствам имён: string::, array::, math::, type:: и другим. Имена и сигнатуры меняются от релиза к релизу, поэтому скилл берёт их не из памяти модели, а из тулинга SurrealQL. Внутри — языковой сервер surrealql-language-server и грамматика surrealql-tree-sitter, с которой этот сервер разбирает код.

Ставится языковой сервер из crates.io: cargo install surrealql-language-server кладёт бинарник в ~/.cargo/bin. Проверить, что он виден в PATH, можно через surrealql-language-server --help. Сборка из исходников нужна только для разработки или чтобы поймать нерелизнутые изменения, и тогда грамматику tree-sitter придётся положить соседней директорией. Для встраивания в браузер или редактор собирается wasm-bindgen пакет скриптом bash scripts/build-wasm.sh с выводом в pkg/.

В редакторе LSP-клиент указывает на бинарник surrealql-language-server для файлов *.surql. Дальше агент набирает префикс пространства имён, например string::, и по автодополнению видит список функций установленной версии; наведение и signature help показывают типы аргументов. Это защищает от переименованных или удалённых функций из старых релизов. Полный каталог пространств имён со ссылками на документацию лежит в references/catalog.md — без него документацию по каждой группе придётся искать вручную.

Какие задачи решает

  • узнать точную сигнатуру встроенной функции SurrealQL
  • проверить, что функция вообще есть в установленной версии SurrealDB
  • получить автодополнение и подсказки по типам в .surql файлах
  • найти нужную функцию среди пространств имён string::, array::, math::
  • не тащить в код функцию, переименованную в новом релизе

Примеры запросов агенту

  • покажи все функции пространства имён string:: в моей версии SurrealDB
  • какая сигнатура у этой функции и какие у неё аргументы
  • проверь, что type:: функция из моего запроса существует в установленной версии

Как установить surrealql-functions

1Через Skills CLI (Vercel)

npx skills add surrealdb/agent-skills --skill surrealql-functions -a claude-code

2Вручную: положить файлы

~/.claude/skills/surrealql-functions/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/surrealql-functions/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о surrealql-functions

Как установить surrealql-functions в Claude?

Выполните npx skills add surrealdb/agent-skills --skill surrealql-functions -a claude-code. Файл скилла появится по пути ~/.claude/skills/surrealql-functions/SKILL.md.

Что делает surrealql-functions?

Даёт агенту точные сигнатуры встроенных функций SurrealQL через языковой сервер и грамматику tree-sitter. Заодно подсказывает автодополнение, типы и аргументы прямо в .surql файлах.

Что нужно поставить до работы скилла?

Сам языковой сервер: cargo install surrealql-language-server. Опубликованный крейт уже содержит грамматику, отдельный чекаут tree-sitter не нужен.

Исходный текст

SKILL.md · MIT
---
name: surrealql-functions
description: "Discover and use SurrealDB's built-in SurrealQL functions with accurate, version-current signatures by running the SurrealQL language server (LSP) and tree-sitter grammar, with a namespace catalog linking every function group to its docs. Use when looking up which built-in function to use, its exact signature/arguments, getting editor completions/hover/signature-help for .surql files, or confirming a function exists in the installed SurrealDB version. Triggers: SurrealQL function, built-in function, function signature, string::, array::, math::, type::, LSP, language server, completions, surrealql-language-server."
metadata:
  author: surrealdb
  version: "0.1.0"
---

# SurrealQL Functions

SurrealDB ships hundreds of built-in functions grouped into namespaces
(`string::`, `array::`, `math::`, `type::`, …). Function names and signatures
change between releases, so the authoritative, **version-current** source is the
SurrealQL tooling rather than memory:

- [surrealql-language-server](https://github.com/surrealdb/surrealql-language-server) (LSP) — completions for built-in functions, hover with type info and function signatures, and signature help.
- [surrealql-tree-sitter](https://github.com/surrealdb/surrealql-tree-sitter) — the grammar the LSP parses with (targets SurrealDB v3+).

For mapping any function to authoritative documentation, see
[references/catalog.md](references/catalog.md).

## When to use this skill

- Looking up which built-in function does what, or its exact arguments
- Getting live completions, hover, and signature help for `.surql` files
- Confirming a function exists / has the expected signature in the installed
  SurrealDB version (avoids emitting renamed or removed functions)

## Setup

Install the language server from crates.io — the published crate bundles the
grammar, so no separate tree-sitter checkout is needed:

```bash
cargo install surrealql-language-server
#   -> installs the `surrealql-language-server` binary on your PATH (~/.cargo/bin)
```

Verify it is on your PATH:

```bash
surrealql-language-server --help
```

### Build from source (optional)

Only needed for development or to track unreleased changes. The source build
requires the [tree-sitter grammar](https://github.com/surrealdb/surrealql-tree-sitter)
checked out as a **sibling** directory:

```bash
git clone https://github.com/surrealdb/surrealql-language-server.git
cd surrealql-language-server
bash scripts/setup-grammar.sh                 # clones/updates the grammar
#   ...or: export TREE_SITTER_SURREALQL_DIR=/abs/path/to/surrealql-tree-sitter
cargo build --release                         # -> target/release/surrealql-language-server
```

For browser/editor embedding, build the wasm-bindgen npm package instead with
`bash scripts/build-wasm.sh` (outputs to `pkg/`).

## Editor integration

Point your editor's LSP client at the `surrealql-language-server` binary for the
`.surql` / `surrealql` language. Generic stdio LSP configuration:

- **Command:** `surrealql-language-server` (or the absolute path from a source build)
- **File types:** `*.surql`

The server then provides, against the installed grammar version:

- **Completions** — built-in function names per namespace, field names,
  `record<table>` types, and keywords
- **Hover** — type info, permission posture, and function signatures
- **Signature help** — argument shapes while typing a call

## Using it to discover functions

- Open or create a `.surql` buffer connected to the LSP.
- Type a namespace prefix (e.g. `string::`) and trigger completion to enumerate
  that namespace's built-in functions for the installed version.
- Hover a function call, or invoke signature help inside the parentheses, to see
  its exact signature and argument types.

Because completions and signatures come from the installed grammar, they reflect
the current SurrealDB version — preventing stale or renamed functions from older
releases. To read full documentation and examples for any namespace, follow the
links in [references/catalog.md](references/catalog.md).

© surrealdb · MIT · surrealdb/agent-skills

Похожие скиллы

Все скиллы по теме «Данные и базы» →
convex-functions waynesutton Пишет query, mutation и action для Convex в объектной форме: с валидаторами args и returns, правильным ctx и обработкой ошибок. CX Codex +1 3 200установок add-lang colbymchenry Добавляет поддержку нового языка в codegraph через tree-sitter, покрывает её тестами и проверяет извлечение на реальных репозиториях. CX Codex +1 1 200установок golang-gopls samber Семантическая навигация и рефакторинг Go-кода через gopls, официальный языковой сервер. Пригодится, когда grep находит текст, а нужно понять типы, связи и структуру сборки. CX Codex +1 11 000установок smart-explore thedotmack Структурно ищет функции и классы через tree-sitter. Пригодится, когда нужно разобраться в кодовой базе без чтения всех файлов. CX Codex +1 7 300установок rust-symbol-analyzer actionbook Скилл показывает структуру Rust-проекта через LSP-символы: модули, структуры, трейты, функции. Пригодится, когда надо быстро понять чужой крейт. CX Codex +1 3 100установок platform-lsp-integrate forcedotcom Справочник по MCP-инструментам Salesforce LSP, их результатам и ошибкам доступности. Нужен при диагностике Apex и проверке SOQL. CX Codex +1 2 600установок

Из того же набора5

Спонсоры проекта

Компании, которые помогают держать аналитику открытой