What moved, and what stayed intentionally familiar
The repo moved from a Python CLI and REPL to a Rust-first application with a Ratatui interface and explicit Markdown and JSON output modes.
What changed
paperlesswith no subcommand launches the TUI.- Non-interactive commands emit Markdown or structured JSON.
- The transport layer is a blocking
reqwestclient behind a testable abstraction. - Config moved to TOML, with legacy JSON config still accepted on read.
- The Python REPL has been replaced by a TUI shell with document list, inspector, status, and security summary.
Compatibility choices
- Singular command groups like
document,tag, andtaskremain available. - Status still degrades gracefully when no config exists.
- Rust now includes the high-value compatibility commands from the older workflow:
document content,document edittag mutation,tag edit,pdf read/info, and config env-var compatibility.