mcpField
S
segment-users

segment-users

github.com/tushaarmehtaa营销与增长1251 次安装2 周前更新
代码仓库

关于 segment-users

segment-users 面向希望依据数据库字段划分用户群的开发者。它根据实际模式生成匹配的 SQL 和 ORM 查询,统计各群体人数,并为每组建议具体行动。

主要功能

  1. 01检查用户模式中的信号
  2. 02定义有数据支持的分群
  3. 03生成 SQL 和 ORM 查询
  4. 04附带分群人数统计查询
  5. 05为各分群建议行动

适用场景

  1. 01识别沉默和流失用户
  2. 02比较各用户群的分布
  3. 03规划对高风险付费用户的联系

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/tushaarmehtaa/tushar-skills --skill segment-users

安装后在 Claude Code 中输入/segment-users确认已加载。

附带文件references/guide.md

详细介绍

读取你的数据库架构,为每个行为细分生成查询,并为你提供针对各组采取的具体行动。无需分析平台。

阶段 1:读取架构

在代码库中查找用户模型。你需要关注以下信号:

  • 使用量指标 — 什么算作活跃?消耗的点数、API 调用、生成次数、登录次数、创建的内容。找到对应字段。
  • 时间戳 — created_at、last_active_at、last_login_at。用户上的任何日期字段。
  • 套餐 / 计费 — 免费还是付费、套餐名称、订阅状态。
  • ORM — Prisma、Drizzle、Mongoose、原始 SQL?让输出与代码库中现有的方式一致。

如果缺少三种信号(使用量、时间戳、套餐)中的任何一种,在生成查询前告知用户。不要编造架构中不存在的字段。

阶段 2:定义细分

根据可用信号灵活处理。如果没有相应数据,就不要强行划分细分。

基于使用量(需要使用量指标)

重度用户 — 使用量排名前 10%。这些人喜欢这个产品。要区别于其他用户对待他们。

活跃用户 — 过去 7 天内使用过,且使用量高于中位数。

轻度用户 — 过去 30 天内使用过,且使用量低于中位数。

沉寂用户 — 7–30 天内没有使用。时间不等人。

流失用户 — 30 天以上没有使用。挽回难度更大,但并非不可能。

生命周期(需要 created_at)

新用户 — 注册时间不足 7 天。尚未养成使用习惯。

引导期用户 — 注册 7–14 天,尚未达到“顿悟时刻”(根据产品,将其定义为达到特定使用量阈值)。

成熟用户 — 注册 14–60 天,使用模式规律。

资深用户 — 注册 60 天以上,活动持续稳定。他们是最有价值的免费套餐用户。

收入(需要套餐数据)

免费套餐用户 — 从未付费。

付费用户 — 订阅有效或购买过点数。

有流失风险 — 正在付费,但过去 14 天内使用量下降。这是最紧急的细分。

已流失的付费用户 — 曾经付费,订阅已结束。收入已经流失。

阶段 3:生成查询

针对每个适用的细分,同时生成 SQL 和 ORM 查询。根据实际架构调整,不要使用占位列名。

-- Power Users: top 10% by credits consumed
SELECT *, (initial_credits - credits) AS credits_used
FROM users
ORDER BY credits_used DESC
LIMIT (SELECT COUNT(*) / 10 FROM users);

-- Dormant: was active, silent for 7-30 days
SELECT * FROM users
WHERE last_active_at < NOW() - INTERVAL '7 days'
  AND last_active_at > NOW() - INTERVAL '30 days';

-- At Risk: paying user, usage dropped below half their average
SELECT * FROM users
WHERE plan != 'free'
  AND (initial_credits - credits) < (
    SELECT AVG(initial_credits - credits) * 0.5
    FROM users WHERE plan != 'free'
  );
// Prisma: dormant users
const dormant = await prisma.user.findMany({
  where: {
    lastActiveAt: {
      lt: new Date(Date.now() - 7 * 24 * 60 * 60 * 1000),
      gt: new Date(Date.now() - 30 * 24 * 60 * 60 * 1000),
    },
  },
});

始终包含计数查询,让用户立即查看完整分布:

SELECT 'power_users' AS segment, COUNT(*) AS count FROM users WHERE ...
UNION ALL
SELECT 'active'      AS segment, COUNT(*) AS count FROM users WHERE ...
UNION ALL
SELECT 'dormant'     AS segment, COUNT(*) AS count FROM users WHERE ...
UNION ALL
SELECT 'churned'     AS segment, COUNT(*) AS count FROM users WHERE ...

阶段 4:推荐行动

每个细分推荐一项行动。要具体,不要含糊。

重度用户 — 提供升级优惠或独家抢先体验。他们已经认可了产品。创始人发出的个性化邮件,比任何自动化营销活动都更容易促成转化。

活跃用户 — 展示他们尚未使用的功能。通过应用内工具提示或邮件介绍一项具体功能。不要推销,而要引导。

轻度用户 — 围绕他们曾从中获益的一件事重新吸引他们。提醒他们之前什么最有用。

沉寂用户 — 发送挽回邮件。明确提出一个吸引点:有什么变化,有什么新内容。不要说“我们想你了”。

流失用户 — 先做简短调查,再提供激励。先了解原因,再尝试挽回。

新用户 — 设置引导流程。定义“顿悟时刻”的阈值,并围绕达到该阈值安排最初 3 天的体验。

有流失风险 — 在用户取消前进行个性化联系。在这种情况下,真人发出的直接消息胜过自动化。

阶段 5:输出格式

先输出分布,再输出查询,最后输出行动。

USER SEGMENTS — [project name]
════════════════════════════════════
CURRENT DISTRIBUTION
────────────────────────────────────
Power Users:    [N] users  ([X]%)
Active:         [N] users  ([X]%)
Casual:         [N] users  ([X]%)
Dormant:        [N] users  ([X]%)
Churned:        [N] users  ([X]%)
────────────────────────────────────
Total:          [N] users
════════════════════════════════════

如果已安装 ship-email 技能,可在查询生成后主动为每个细分生成邮件模板。

验证

[ ] User model read from codebase — no invented fields
[ ] Usage metric identified and defined
[ ] Only segments with available signals generated
[ ] SQL + ORM queries output for each segment
[ ] Count queries included so distribution is visible
[ ] At Risk segment flagged if any paying users exist
[ ] Action recommendation per segment — specific, not generic
[ ] All column names in queries match the actual schema

参见 references/guide.md,了解 RFM 评分、队列留存分析和流失预测模式。

评论

支持 Markdown