Skip to main content

Crate inillucent_cli

Crate inillucent_cli 

Source
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:

binarywhat it is
inillucent-shellthe sqlite3-shaped REPL. Unchanged by this ticket.
inillucentthe verbs, for a script and for a person who is not in a REPL.
inillucent-mcpthe 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 flags sqlite3_db_config sets.
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 .help text, 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_STACK bytes of stack, and returns what it produced.