Leviathan CLI

A single binary indexes tables and logs so an agent gets a few matching records back instead of raw history

  • 881 ★ on the repository
  • Last commit
CLI

Extended access

Why this level

  • The index makes a full copy of the data in a local file, and the HTTP mode exposes the tools over the network.
All reasons and checks

elstongun/leviathan

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add cli/leviathan

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The index makes a full copy of the data in a local file, and the HTTP mode exposes the tools over the network.

This is third-party code. Review the repository files before installing.

What it does

Leviathan reads JSONL, JSON, CSV, TSV, SQLite databases and the output of any database's command-line client, and builds one SQLite file with a full-text index. An agent asks in plain words and the CLI returns short result cards with citations. In the author's measurements on a million synthetic records the median is 436 tokens per answer, while the best grep strategy spends 107,122. Fields are mapped through a config: only `id` is required, the rest is optional. For a group of records such as a customer, the `-g` search resolves the name, and when the group is ambiguous the command exits with code 3 instead of guessing. There are `--where` filters, date ranges, quoted phrases and exclusions, exact counts and sums through `aggregate`, and the index build is atomic and skipped when the data has not changed. Leviathan reaches an agent in three ways. The `skills/leviathan` skill goes into `~/.claude/skills/` or is pasted into `AGENTS.md`. The `leviathan mcp` command starts a read-only MCP server with five tools, and `leviathan wrap <agent>` prints or writes the config for 24 agents. A separate memory mode stores claims by key and returns on request only what fits a token budget.

Who it is for. People who give an agent large exports such as support tickets, orders, maintenance logs or chat history and do not want it to read them whole.

Good fit when

  • An agent searches a CSV ticket export and grep eats the context within one session
  • A SQLite or Postgres database holds a customer's history and people ask about it in words, without SQL queries
  • An agent needs exact counts and sums by month, with no eyeballed estimate from the first result pages
  • The MEMORY.md file has grown and stale entries land in the context at session start
  • One index has to serve Claude Code, Cursor and Codex at the same time without copying data between them

Not a fit when

  • There is little data and it fits in the context: an index adds a step with no gain
  • You need semantic search by meaning: Leviathan ranks by BM25 and word matches
  • You need live writes to a working database: the index only reads a copy of the data and writes only to its own file
  • The data cannot be copied even locally: the index creates a separate file with all the content

Example request

Use leviathan to find Acme tickets about a login loop after a password reset and show the fix from the closed one.

Limitations

The 436-token and 245-fold figures come from a single synthetic maintenance log, so on your data the result will differ. The author put the methodology in docs/BENCHMARKS.md.

The index is one SQLite file and holds a copy of the data. If the export contains personal details, treat the file as carefully as the source. A build from a database goes through its command-line client, and Leviathan stores no credentials.

The `leviathan serve --http` mode exposes the tools over the network. Turn it on only with a token or OAuth, as docs/REMOTE.md describes. Installing through `cargo install` needs Rust 1.88 or newer, and prebuilt binaries are in the releases.

How to disable. Delete the skill from `~/.claude/skills/`, the MCP block from the agent config and the index file. Remove the binary with `cargo uninstall leviathan-index`.

FAQ

Which data formats does Leviathan accept?

JSONL, JSON, CSV, TSV and SQLite. Any other database connects through its command-line client by piping JSON lines into `leviathan index -`.

Do I need MCP to use it?

No. An agent with shell access calls the CLI directly, and the skill costs tokens only when used. MCP is optional through `leviathan mcp`.

How do I connect Leviathan to Claude Code?

Copy `skills/leviathan` into `~/.claude/skills/` or run `leviathan wrap claude --apply` to write the MCP config.

What does the memory mode do?

An agent records claims with the `remember` command and a key, and a new entry replaces the old one under the same key. A short briefing is issued at session start, and `recall` returns only what fits the budget.

What happens if the group is ambiguous?

The command lists candidates and exits with code 3. Leviathan does not guess the customer.

Discussion

No questions or reviews yet.

CLI tools

A Cypher graph database in one binary for agents: CLI, embedded engine, MCP server and a skill for Claude Code, Cursor and Codex.

CLIExtended access68Repository stars

A Rust terminal database client with MCP and a JSON CLI: agents read schemas and run queries within profile permissions.

CLIExtended access67Repository stars
Official

A graph database with git-style branches: the server exposes it to agents over MCP at /mcp, and a skill teaches the agent schemas and queries

MCP serverBroad access2KRepository stars

A database CLI for dozens of engines with an agent mode: JSON output, a read-only guard, limits and a broker that hides passwords

CLIBroad access92Repository stars

A CLI agent for quantitative investment research: it reads broker reports, ideates factors and computes IC on offline data.

CLIExtended access144Repository stars

A local MCP server that turns a folder of documents into a knowledge base with hybrid search for Claude Code and Cursor

MCP serverExtended access305Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
Leviathan (this card)no881
Mem0no68,887Mem0 stores agent memory as a service, while Leviathan primarily indexes your tables and exports.
QMDnonot required31,078QMD searches notes and documents, while Leviathan works with tables, logs and records with groups and filters.

README in short

The README describes a single Rust binary under Apache-2.0 with no runtime dependencies. It gives benchmark results at six dataset sizes, a quickstart on a tickets example, a command table and exit codes. Separate sections cover connecting to agents, the remote server and memory.

README badge

Report a problem