@twinsenliang/tcrm
v1.0.7
Published
通用联系人 CRM — VCard/iCalendar 录入、重复检测、生日纪念日 Telegram 推送
Maintainers
Readme
TCRM — 记得每个重要的日子
"做销售,最基础的是记住客户的生日。" —— 2000 年我在安利课上偷师学会的第一课
TCRM 是一个为「小生意人」设计的轻量级客户关系维护工具。
它不做复杂的 pipeline、不画华丽的漏斗图,只做一件事:帮你记住每一个对你重要的人,以及他们的重要日子。
为什么做 TCRM
2000 年我还在上大学,被骗去听了安利的课。虽然没做下去,但我偷师学会了一件事:记住客户的生日,是最基础也最有效的销售动作。
那时候我用 Excel 记客户信息,用手机的日历提醒生日。客户多了之后,Excel 越来越乱,日历提醒总是滞后,农历生日更是完全靠脑记。
后来我成了 PADI 教练长,带过的学员超过 500 人。学员变成朋友,朋友介绍朋友——关系网络越来越大,但能记住的细节却越来越少。
我试过市面上所有的 CRM,Salesforce 太重、Notion 太泛、飞书多维表格需要手动维护。没有一个工具,是为「一人公司打理客户关系」这个场景设计的。
TCRM 就是这个场景的答案:
- 一行安装 ——
npx直接跑,或一条命令装成 OpenClaw 插件 - 极简录入 —— 一句话、一条消息就能记一个人
- 自动提醒 —— 生日、纪念日,到点就推送到 Telegram
- 零 Token 消耗 —— 提醒纯本地计算,不走 LLM,不烧钱
- 农历支持 —— 中国人的生日,不能只看公历
- 开放数据 —— 标准 VCard + iCalendar,你的数据永远属于你
截图
一键录入
用户:帮我录入一个新学员,张三,13812345678,生日 1990-08-15
Agent:已生成 latest.vcf,张三的信息已保存。重复检测通过,可以导入通讯录。每日提醒
每日自动检查,有生日/纪念日就推送,没有就安静。
标记已处理
说"已祝"或"已祝客人",当天不再重复提醒。
功能
| 功能 | 说明 | |------|------| | 对话录入 | 通过 OpenClaw Agent 自然语言录入,支持姓名、手机、微信、地址、角色、公历/农历生日、纪念日、自定义字段 | | 重复检测 | 录入前自动检查姓名/手机号是否已存在 | | 标准格式 | 生成 Apple Contacts 兼容的 VCard 3.0 和 Apple Calendar 兼容的 ICS | | 农历生日 | 支持农历转公历,每年自动计算当年的农历生日对应公历日期 | | 每日提醒 | 可配置 09:00 / 12:00 / 18:00 三次检查,推送至任意 OpenClaw Channel(Telegram / Discord / Slack 等) | | 已祝开关 | 说"已祝"或"已祝客人"标记当天处理完毕,当天不再打扰 | | 零 Token 消耗 | 定时提醒纯本地计算,不走 LLM,不烧 token,装完一劳永逸 | | 通信零耦合 | TCRM 只管数据,通信交给 OpenClaw。不强制绑定任何 channel,不配 telegramTarget 也能完整使用录入和查询 | | 开放数据 | 纯文本 VCF/ICS 文件,任何设备、任何系统都能读取 |
快速开始
方式一:Standalone CLI(推荐新手)
不需要 OpenClaw,一条命令就能跑:
npx @twinsenliang/tcrm add-contact
npx @twinsenliang/tcrm list-today
npx @twinsenliang/tcrm heartbeat方式二:OpenClaw 插件(推荐 AI 用户)
openclaw plugins install @twinsenliang/tcrm配置 ~/.openclaw/openclaw.json:
{
"plugins": {
"entries": {
"tcrm": {
"enabled": true,
"config": {
"notificationChannel": "telegram",
"notificationTarget": "your_chat_id",
"notificationAccount": "pilot",
"morningTime": "09:00",
"noonTime": "12:00",
"eveningTime": "18:00",
"dataDir": "~/.tcrm"
}
}
}
}
}
notificationChannel支持任意 OpenClaw Channel:telegram、discord、slack、telegramTarget/telegramAccount仍兼容。
数据文件
| 文件 | 说明 |
|------|------|
| ~/.tcrm/all.vcf | 全量联系人,双击导入 Apple 通讯录 |
| ~/.tcrm/all.ics | 全量日历事件,双击导入 Apple 日历 |
| ~/.tcrm/latest.vcf | 最新录入,覆盖写入 |
| ~/.tcrm/processed.json | 当日处理标记 |
使用场景
- 保险/直销从业者 —— 记住每个客户的生日,生日当天一条祝福胜过十次推销
- 私人教练/培训师 —— 学员变成朋友,朋友带来新客户
- 自由职业者 —— 摄影师、设计师、咨询师,维护老客户比找新客户成本低 5 倍
- 小企业主 —— 理发店、咖啡店、工作室,记住熟客的偏好就是竞争力
技术栈
- TypeScript + Node.js
- 标准 VCard 3.0 / iCalendar 格式
- 农历转换:lunar-typescript
- 插件架构:OpenClaw Plugin SDK
- 测试:Vitest
关于我 & 更多项目
我是 Twinsen(梁璟彪),前腾讯高级专家,PADI 教练长,18 项潜水专长教练。
TCRM 是我「把生活经验产品化」系列的开源项目之一。如果你对这个方向感兴趣,欢迎联系:
- 个人网站:twinsenliang.net
- 小红书:斜杠教练 TwinsenLiang
- Email: [email protected]
我正在寻找对「AI + 垂直行业」感兴趣的合作伙伴和投资人。
English
What is TCRM
TCRM is a lightweight CRM designed for solopreneurs and small business owners.
No complex pipelines, no fancy dashboards. It does one thing well: help you remember every important person and their important days.
Why I built it
In 2000, I was tricked into attending an Amway sales seminar in college. I didn't stick with it, but I walked away with one lesson:
Remembering your client's birthday is the most basic and effective sales move there is.
I started with Excel and phone calendars. As my client list grew, Excel became messy, calendar reminders were always late, and lunar birthdays were impossible to track.
Later I became a PADI Master Instructor with 500+ students. Students became friends, friends referred friends — my network grew, but my memory didn't.
I tried every CRM on the market. Salesforce was too heavy, Notion too generic, spreadsheets too manual. None were designed for "one person managing relationships."
TCRM is the answer:
- Minimal input — add a contact via natural language
- Automatic reminders — birthdays and anniversaries pushed to any OpenClaw channel (Telegram, Discord, Slack, etc.)
- Zero LLM token cost — reminders run locally, no AI inference, no ongoing fees
- Lunar calendar support — because Chinese birthdays matter
- Open data — standard VCard + iCalendar, your data is always yours
Quick Start
# Standalone CLI
npx @twinsenliang/tcrm add-contact
npx @twinsenliang/tcrm list-today
# OpenClaw Plugin
openclaw plugins install clawhub:@twinsenliang/tcrmTech Stack
TypeScript, Node.js, VCard 3.0, iCalendar, lunar-typescript, OpenClaw Plugin SDK, Vitest.
About Me
I'm Twinsen Liang, ex-Tencent Senior Expert, PADI Master Instructor, 18 specialty instructor certifications.
TCRM is part of my "productizing life experience" open source series. If you're interested in AI + vertical industries, let's talk:
- Website: twinsenliang.net
- Email: [email protected]
License
MIT © Twinsen Liang


