Work log: Textorium TUI — March 13, 2026
What shipped today
Today completed a full cycle: scout, triage, prep, exec across the board. Five PRs merged, covering bug fixes, a search improvement, and the last two stubbed CLI commands.
The session started with a scout pass that systematically explored the entire codebase and surfaced five issues. Three were immediately grindable bugs: Ctrl+C was bypassing the unsaved changes check (a data loss risk), the publish command was scanning posts twice when a slug wasn’t found (wasted I/O), and the TUI search filter was skipping tags despite them being a primary organizational mechanism. All three were fixed in quick single-file changes.
The scout also identified the two remaining stubbed CLI commands — serve and build — as feature work needing prep. Both went through the full pipeline today: prep specs written, then executed. textorium serve now spawns the SSG-specific dev server (hugo server, bundle exec jekyll serve, npx @11ty/eleventy --serve) with port and drafts flag support. textorium build invokes the corresponding build command with --minify support for Hugo. Both follow the same pattern: load config, validate site path, construct SSG-specific command, spawn with current_dir set to the site root, forward stdout/stderr, and provide a clear “Is it installed?” error if the SSG binary is missing.
With these two commands shipped, every CLI subcommand except idea (Notion integration) is now implemented. The tool is feature-complete for its core use case: browse, edit, create, publish, serve, and build — all from the terminal, all SSG-aware.
Completed
- #46 — Fix: Ctrl+C bypasses unsaved changes check (PR #51)
- #47 — Fix: textorium publish scans posts twice on slug not found (PR #52)
- #50 — Fix: search does not include tags (PR #53)
- #48 — Implement textorium serve command (PR #54)
- #49 — Implement textorium build command (PR #55)
- #45 — Duplicate of #39, closed during triage
Release progress
- CLI essentials: 0 open / 3 closed — complete
- TUI on Homebrew: 1 open / 5 closed (#8 email signature, backlogged)
Carry-over
Nothing active. The issue queue is empty except for two backlogged items:
- #1 — Submit to homebrew-core (waiting for traction)
- #8 — Dynamic email signature (blocked on blog syndication)
Risks
None. Codebase is clean, 12/12 tests passing, clippy clear.
Flags and watch-outs
- The
servecommand includes drafts by default (-Dfor Hugo,--draftsfor Jekyll). This matches the authoring workflow but could surprise users who expect production-like behavior fromtextorium serve. - The
buildcommand silently ignores--minifyfor non-Hugo SSGs. This is intentional but undocumented — might be worth a note in--helptext. - The
ideacommand remains stubbed (Notion integration). It’s the only unimplemented CLI subcommand.
Next session
- Consider a version bump and release — the tool is now feature-complete for core use cases. All CLI commands work, all TUI features work, all bugs from the scout are fixed.
- Run
/scoutagain if more issues are needed — the codebase grew significantly over the past two days (13 PRs merged). - The “first external user” milestone has no issues assigned yet. If pursuing external adoption, focus on: help text quality, error message clarity, README examples, and a
textorium --helpaudit. textorium idea(Notion integration) could be a future feature but needs product thinking about whether it belongs in the TUI tool.
Why customer tools are organized wrong
This article reveals a fundamental flaw in how customer support tools are designed—organizing by interaction type instead of by customer—and explains why this fragmentation wastes time and obscures the full picture you need to help users effectively.
Infrastructure shapes thought
The tools you build determine what kinds of thinking become possible. On infrastructure, friction, and building deliberately for thought rather than just throughput.
Server-side dashboard architecture: Why moving data fetching off the browser changes everything
How choosing server-side rendering solved security, CORS, and credential management problems I didn't know I had.
The work of being available now
A book on AI, judgment, and staying human at work.
The practice of work in progress
Practical essays on how work actually gets done.
The machine is eating faster than you can feed it
Sixty-three issues closed across thirteen projects in one day. Four milestones completed. And the hardest problem wasn't building — it was keeping up with what you've already built.
The proxy problem
Every organization has this problem: knowledge locked inside one person's head. Today I accidentally designed a solution — and it has nothing to do with documentation.
True 1-to-1 outreach is finally possible with AI
The 1-to-1 personalization promise is thirty years old. It never worked because understanding each person was too expensive. AI changed the economics.