npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@twinsenliang/tcrm

v1.0.7

Published

通用联系人 CRM — VCard/iCalendar 录入、重复检测、生日纪念日 Telegram 推送

Readme

TCRM — 记得每个重要的日子

"做销售,最基础的是记住客户的生日。" —— 2000 年我在安利课上偷师学会的第一课

TCRM 是一个为「小生意人」设计的轻量级客户关系维护工具。

它不做复杂的 pipeline、不画华丽的漏斗图,只做一件事:帮你记住每一个对你重要的人,以及他们的重要日子

English | 快速开始 | 功能 | 截图


为什么做 TCRM

2000 年我还在上大学,被骗去听了安利的课。虽然没做下去,但我偷师学会了一件事:记住客户的生日,是最基础也最有效的销售动作。

那时候我用 Excel 记客户信息,用手机的日历提醒生日。客户多了之后,Excel 越来越乱,日历提醒总是滞后,农历生日更是完全靠脑记。

后来我成了 PADI 教练长,带过的学员超过 500 人。学员变成朋友,朋友介绍朋友——关系网络越来越大,但能记住的细节却越来越少

我试过市面上所有的 CRM,Salesforce 太重、Notion 太泛、飞书多维表格需要手动维护。没有一个工具,是为「一人公司打理客户关系」这个场景设计的。

TCRM 就是这个场景的答案:

  • 一行安装 —— npx 直接跑,或一条命令装成 OpenClaw 插件
  • 极简录入 —— 一句话、一条消息就能记一个人
  • 自动提醒 —— 生日、纪念日,到点就推送到 Telegram
  • 零 Token 消耗 —— 提醒纯本地计算,不走 LLM,不烧钱
  • 农历支持 —— 中国人的生日,不能只看公历
  • 开放数据 —— 标准 VCard + iCalendar,你的数据永远属于你

截图

一键录入

用户:帮我录入一个新学员,张三,13812345678,生日 1990-08-15
Agent:已生成 latest.vcf,张三的信息已保存。重复检测通过,可以导入通讯录。

每日提醒

Daily Reminder Placeholder

每日自动检查,有生日/纪念日就推送,没有就安静。

标记已处理

Mark Done Placeholder

说"已祝"或"已祝客人",当天不再重复提醒。


功能

| 功能 | 说明 | |------|------| | 对话录入 | 通过 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:telegramdiscordslackwhatsapp 等。旧版 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 是我「把生活经验产品化」系列的开源项目之一。如果你对这个方向感兴趣,欢迎联系:

我正在寻找对「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/tcrm

Tech 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:


License

MIT © Twinsen Liang