surrealdb/agent-skills

surrealdb-cli

Use the `surreal` command-line binary to run a SurrealDB server (in-memory, RocksDB, SurrealKV, or TiKV), open an interactive or piped SQL REPL, import and export databases, check server readiness, upgrade the binary, repair storage, and manage SurrealML models. Use this skill whenever users run, connect to, back up, restore, or operate SurrealDB from the terminal. Triggers: surreal start, surreal sql, surreal import, surreal export, surreal isready, surreal upgrade, surreal fix, surreal ml, Su…

First seen Jun 16, 2026

Installation

$ npx skills add surrealdb/agent-skills --skill surrealdb-cli

Summary

  • Use the `surreal` command-line binary to run a SurrealDB server (in-memory, RocksDB, SurrealKV, or TiKV), open an interactive or piped SQL REPL, import and export databases, check server readiness, upgrade the binary, repair storage, and manage SurrealML models.
  • Use this skill whenever users run, connect to, back up, restore, or operate SurrealDB from the terminal.
  • Triggers: surreal start, surreal sql, surreal import, surreal export, surreal isready, surreal upgrade, surreal fix, surreal ml, SurrealDB CLI, surreal server.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from surrealdb/agent-skills.

npx skills add surrealdb/agent-skills

Browse all from surrealdb/agent-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 25
License LICENSE
Default branch main
Open issues 0
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Version0.1.0
More metadata
author
surrealdb
version
0.1.0

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 6,175 B
  • docs SUMMARY.md 545 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 226 installs

SKILL.md

SurrealDB CLI

A skill for driving the surreal command-line binary — SurrealDB's all-in-one tool for running a server, querying it, and moving data in and out.

This skill covers operating the surreal binary itself. To write the SurrealQL that you run with it, use the surrealql skill; for declarative schema migrations and type generation, use the surrealkit skill.

When to use this skill

Reference these guidelines when:

  • Starting a SurrealDB server, locally or in a container (surreal start)
  • Opening the SQL shell or piping queries from a file (surreal sql)
  • Importing or exporting a database for backups, seeding, or migration (surreal import / surreal export)
  • Gating scripts or CI on server availability (surreal is-ready)
  • Upgrading the binary or repairing on-disk storage after an upgrade (surreal upgrade / surreal fix)
  • Importing or exporting SurrealML models (surreal ml)

Installation

Method Command
curl (macOS / Linux) `curl -sSf https://install.surrealdb.com \ sh`
Windows (PowerShell) `iwr https://windows.surrealdb.com -useb \ iex`
Homebrew brew install surrealdb/tap/surreal
Docker docker run --rm --pull always -p 8000:8000 surrealdb/surrealdb:latest start

Verify with surreal version. Pin a specific image tag (not latest) for production. See the install docs for the current set of methods.

Command map

Command Purpose Reference
surreal start [PATH] Run the database server with a chosen storage backend [start.md](references/start.md)
surreal sql Interactive REPL or piped, non-interactive querying [sql.md](references/sql.md)
surreal import <FILE> Load a SurrealQL script into a database [import-export.md](references/import-export.md)
surreal export [FILE] Dump a database to SurrealQL (file or stdout) [import-export.md](references/import-export.md)
surreal is-ready Exit 0 when the server is accepting connections (alias isready) [maintenance.md](references/maintenance.md)
surreal version Print local tool and remote server versions [maintenance.md](references/maintenance.md)
surreal upgrade Replace the binary with a newer release [maintenance.md](references/maintenance.md)
surreal fix [PATH] Migrate on-disk storage to the current format [maintenance.md](references/maintenance.md)
surreal ml <sub> Import / export SurrealML models [maintenance.md](references/maintenance.md)

surreal validate (SurrealQL file checking) and formatting are covered by the surrealql skill. Newer subcommands (mcp, module) also exist — run surreal help and surreal <command> --help to confirm the surface of an installed version.

Connection flags & env vars

sql, import, export, and ml share the same connection flags. Each flag has a SURREAL_* environment variable fallback; an explicit flag wins.

Flag (aliases) Env var Notes
-e, --endpoint ws://localhost:8000 for sql; http://localhost:8000 for import/export
--namespace (--ns) SURREAL_NAMESPACE Required for import/export/ml
--database (--db) SURREAL_DATABASE Required for import/export/ml
-u, --username (--user) SURREAL_USER
-p, --password (--pass) SURREAL_PASS
-t, --token SURREAL_TOKEN JWT; use instead of username/password
--auth-level SURREALAUTHLEVEL root (default), namespace/ns, or database/db

Pass secrets via env vars rather than flags so they do not leak into shell history or process listings.

Quick start

# 1. Start an authenticated in-memory server (foreground)
surreal start --user root --pass root memory

# 2. In another shell, open the SQL REPL on namespace/database "main"
surreal sql --endpoint ws://localhost:8000 \
  --user root --pass root --ns main --db main --pretty

# 3. Load a dump into that database
surreal import --endpoint http://localhost:8000 \
  --user root --pass root --ns main --db main backup.surql

Rules & conventions

  • Authentication is on by default. surreal start needs --user/--pass; only use --unauthenticated for throwaway local instances.
  • Choose a storage backend deliberately. memory (the default) is ephemeral — data vanishes on exit. Use rocksdb:/surrealkv:// for persistence and tikv:// for distributed clusters. See [start.md](references/start.md).
  • Export defaults to stdout. surreal export writes to - (stdout) unless you give a file path; redirect or pipe accordingly.
  • Gate CI with is-ready. It returns a non-zero exit code until the server accepts connections — ideal in healthchecks and scripts.
  • Run fix after a major upgrade if the server reports an incompatible storage version, pointing it at the same PATH used by start.
  • The CLI evolves. Confirm flags and subcommands against surreal <command> --help for the installed version; this skill reflects v3.x.

References

  • Running a server and storage backends — [references/start.md](references/start.md)
  • Interactive and piped querying — [references/sql.md](references/sql.md)
  • Importing and exporting data — [references/import-export.md](references/import-export.md)
  • Versioning, upgrades, readiness, repair, and ML models — [references/maintenance.md](references/maintenance.md)