1 pointby jdanielnd7 hours ago1 comment
  • jdanielnd7 hours ago
    Hey HN, I built a personal CRM that lives entirely in the terminal.

    I kept losing track of people — who I met at conferences, what we discussed, when I last followed up. I tried Notion, spreadsheets, and a few CRM apps, but they were all too heavy for what I needed. I just wanted something fast that I could use without leaving the terminal.

    crm-cli stores everything in a local SQLite file (~/.crm/crm.db). Single binary, no accounts, no cloud. You can manage contacts, organizations, log interactions, track deals, set follow-up tasks, and tag anything.

    What makes it different:

    - Built-in MCP server — you can connect it to Claude (or any MCP-compatible agent) with claude mcp add crm -- crm mcp serve. After a meeting, you just tell Claude what happened and it logs the interaction, updates deals, and creates follow-ups automatically. - Unix-native — data to stdout, messages to stderr, proper exit codes. Supports table/JSON/CSV/TSV output, so it pipes into jq, fzf, awk, etc. - Pure Go, no CGO — uses modernc.org/sqlite, so it cross-compiles cleanly. Single static binary for macOS, Linux, and Windows.

    The AI integration is what I use most now. The summary field on contacts acts as a living dossier that Claude maintains — it reads it before meetings for context and updates it after with new info.

    Tech: Go, Cobra, SQLite (FTS5 for search), mcp-go for the MCP server. ~3k lines of Go.

    Would love feedback on the CLI design and what features would be useful.