AI-Inbox is a local-first inbox extraction product for AI/browser/agent sessions. Keep changes small, public-safe, and aligned with the current LLM-only product direction.
- Real
.envfiles, API keys, tokens, or local credentials. - Local data directories:
data/,data-*,.local/,.ai-inbox/. - Build or dependency output:
dist/,node_modules/,*.tsbuildinfo. - Private planning docs or internal design notes.
- Old private repository internals or real user transcripts.
- CLI entry point:
src/cli.ts. - HTTP UI/API:
src/server/index.tsplus static files underpublic/. - MCP stdio:
src/mcp/. - SQLite storage and migrations:
src/db/index.ts. - Source scanning:
src/sources/. - LLM inbox extraction:
src/todos/andsrc/extract/llm-runner.ts.
Reuse existing modules before adding new layers. Do not add abstractions for a single caller.
ai-inbox start defaults to 127.0.0.1:3111. Keep ai-inbox open as a hidden
compatibility alias. Keep --port <n> as the explicit override and keep
--port 0 available for tests or temporary avoidance. If the default port is
occupied, return a clear error and suggest ai-inbox start --port <port>; do
not silently choose a random port.
Inbox card generation remains LLM-only. Do not restore rules fallback as the default organize path. Missing API keys, HTTP timeouts, invalid model output, or provider errors should produce actionable diagnostics and warnings.
Run the smallest relevant check first, then the full checks before handoff:
npm test
npm run build
git diff --checkFor local UI verification, build first, start ai-inbox start, and inspect
Settings, organize warnings, and LLM failure details in Chrome. Do not leak API
keys in logs, screenshots, fixtures, or docs.