HackerTrans
TopNewTrendsCommentsPastAskShowJobs

jdanielnd

no profile record

Submissions

Show HN: CRM-CLI – A local-first personal CRM for the terminal with MCP server

github.com
1 points·by jdanielnd·4 months ago·1 comments

An Axiomatic Basis of Accounting (1991)

d-nb.info
2 points·by jdanielnd·2 years ago·0 comments

comments

jdanielnd
·4 months ago·discuss
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.
jdanielnd
·2 years ago·discuss
Consider Elixir. It blends familiar Ruby-like syntax with the power of functional programming and the Actor model, offering a fresh, joyful way to think about code.