Expand description
inillucent’s command surface: the shell, the command table, and what reads them.
Invariant: there is one command table and every front end reads it.
A verb-shaped inillucent binary and an MCP server were added beside
the sqlite3-shaped shell that was already here, and the reason all three
live in one crate is that the alternative - a second list of commands, kept
in step by whoever remembers - is the failure mode drivers/README.md
describes for java.sql.DatabaseMetaData: a list nobody runs decays into a
list of claims that were true once.
So command::COMMANDS is the table, command::run executes an entry,
and the three binaries are adapters over it:
| binary | what it is |
|---|---|
inillucent-shell | the sqlite3-shaped REPL. Unchanged by this ticket. |
inillucent | the verbs, for a script and for a person who is not in a REPL. |
inillucent-mcp | the same verbs as MCP tools, for an agent. |
The layer below all of them is shell::Shell, which is itself an adapter:
every statement it runs goes through the public inillucent facade and it
never reaches past it. The command table does not reach past the shell for
the same reason - a third path to the same data is a third set of answers,
and the difference is only ever found by somebody who trusted one of them.
Modules§
- archive
.archive: the SQL archive, over a database table or over a zip file.- command
- The command table: one array, read by every front end.
- commands
- The dot commands that are about the shell rather than about the database.
- dbconfig
.dbconfig: the connection flagssqlite3_db_configsets.- diagnose
- The dot commands that inspect the database rather than query it.
- dot
- The dot commands: everything a person types that is not SQL.
- dump
.dump: the SQL that would rebuild the database.- help
- The
.helptext, ported from the reference shell’s own tables. - import
.import: reading a delimited file into a table.- interrupt
- Ctrl+C, turned into the cancellation flag the engine already reads.
- json
- JSON, first-party.
- mcp
- The MCP server: the command table, served to an agent.
- render
- The output modes: how a row becomes the text a person or a script reads.
- setup
inillucent setup-embeddings: install the embedder, on any of three platforms, in one command.- shell
- The shell’s state, and the loop that reads a line and decides what it is.
Constants§
- STATEMENT_
STACK - How much stack a statement is given, in bytes.
Functions§
- on_
a_ sized_ stack - Runs a program’s whole body on a thread with
STATEMENT_STACKbytes of stack, and returns what it produced.