Tools

SQLite browser

Tool Code @dip497 0 installs

The repository's SQLite files, read-only: tables with their row counts, a table's rows, and any query you write.

hive plugins install @dip497/sqlite-browser

Run it in a terminal, or find it in Hivemind under Settings ▸ Plugins.

SQLite browser

The repository's SQLite files in a tile, read-only. Choose a file: its tables and views are listed with their row counts; choose one to see its first 200 rows in a grid (numbers right-aligned, nulls marked). Write any query in the box and run it with the button or Ctrl+Enter.

It finds the .db, .sqlite and .sqlite3 files in the repository (outside node_modules, .git and target), git-ignored ones too, as regular files only: find never follows a symbolic link. It opens them with sqlite3 -readonly -safe -nofollow -json: -readonly refuses every write, -safe refuses sqlite3's commands that run programs or attach other files, and -nofollow refuses a path through a symbolic link. Right before each query it checks again that no folder on the way to the file, nor the file, is a link, so a file or folder replaced by a link after it was listed is refused. A query starting with . or - is not sent at all. An agent names a database only from the files the tile lists, never a path outside the repository.

hive plugins install @dip497/sqlite-browser
hive plugins enable @dip497/sqlite-browser
hive ctl open-tool @dip497/sqlite-browser/browser

An agent asks it, while its tile is open:

hive ctl plugin call @dip497/sqlite-browser tables
hive ctl plugin call @dip497/sqlite-browser query '{"sql":"SELECT status, COUNT(*) FROM orders GROUP BY status"}'
hive ctl plugin call @dip497/sqlite-browser query '{"sql":"SELECT * FROM users LIMIT 5","file":"data/app.db"}'

It needs sqlite3 3.37 or newer (for -safe). It asks for no permissions.

How it was made

Built by a coding agent (Claude) from the tool-plugin contract (the brief hive plugins new tool writes, and the tool plugin guide). It uses host.run of git ls-files, find and sqlite3, and useTileState to keep the chosen file, table and query. Building the queries and reading sqlite3's answers are in lib.js, tested against a real database.

A tool arrives switched off. Turn it on in Settings ▸ Plugins, or with hive plugins enable @dip497/sqlite-browser, if you trust who wrote it.

Files

From dip497/hivemind-plugins at fb488a4. Hivemind checks each file's checksum as it downloads, and stops if one changed.

  • hivemind-tool.json7fbe54c843c2
  • icon.svg5933a73e882a
  • index.js44e3fe25c05b
  • lib.js5452ad7c6efb
  • README.md700fac572f01
hivemind-tool.json
{
  "id": "@dip497/sqlite-browser",
  "name": "SQLite browser",
  "version": "1.1.1",
  "apiVersion": 1,
  "minAppVersion": "2026.10.3",
  "category": "code",
  "description": "The repository's SQLite files, read-only: tables with their row counts, a table's rows, and any query you write.",
  "entry": "index.js",
  "permissions": [],
  "commands": [
    {
      "name": "tables",
      "description": "The database's tables and views, each with its row count.",
      "args": "{ \"file\"?: string } — one of the database files the tile lists (the tables command answers with it); the one open in the tile when left out"
    },
    {
      "name": "query",
      "description": "Run a read-only SQL query and answer with its rows (at most 1000). Writes are refused.",
      "args": "{ \"sql\": string, \"file\"?: string }"
    }
  ],
  "tools": [
    {
      "key": "browser",
      "label": "SQLite browser",
      "description": "Tables and rows of the repository's SQLite files.",
      "tileKind": "sqlite-browser",
      "size": {
        "width": 1100,
        "height": 700
      },
      "needsRepo": true,
      "singleton": true,
      "glyph": "⛁",
      "icon": "icon.svg"
    }
  ]
}

Hivemind shows you this list and asks before it installs.

  • Runs inside Hivemind, with the app's access to your files and network, once you switch it on
VersionCommitListed
1.1.1 fb488a4 October 28, 2026

Needs Hivemind 2026.10.3 or newer.

HiveHub keeps the version listed last. The ones before it are in the repository's history.

Something wrong with it? Report it.