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

game-life-mcp

v0.2.3

Published

把人生当成游戏 — AI 驱动的个人成长系统,通过 MCP 协议接入 Claude / Workbuddy / Codex / Cursor

Readme

🧙 game-life

把人生当成游戏。 AI 驱动的个人成长系统。

接入 Claude / WorkBuddy / Codex / Cursor 等 AI 工具后,AI 自动成为你的成长教练。

npm version Node.js Version License TypeScript


这是什么

game-life 是一个 MCP (Model Context Protocol) Server。把它接入你的 AI 工具后,AI 会变成你的个人成长教练:

  • 通过对话了解你的现状,建立初始角色档案
  • 每天生成个性化成长任务
  • 📈 追踪你的成长,计算经验值,升级后自动提升属性
  • 在你停滞时,用"命运卡牌"策略性推你一把
  • 成就系统记录成长里程碑

"我需要学什么?" → AI 帮你梳理目标 "今天好累不想动" → AI 换成轻松任务 "我做到了!" → AI 给你加经验、可能触发命运卡牌

所有数据存在 ~/.game-life/life.db不上传任何云端


快速开始

前提

电脑上需要 Node.js ≥ 18(自带 npm ≥ 9)。没有的话去 nodejs.org 点下载安装,3 分钟搞定。

⚠️ npm 版本要求 ≥ 9:如果你的 npm 是 6.x 老版本(用系统包管理器装的 Node 常这样),npx 方式会报"找不到命令",请改用「方式 B 全局安装」,或先升级 npm(npm install -g npm@10)。

安装方式

方式 A:直接让你的 AI 帮你装(最推荐,自动配置)

把这个发给你的 AI 客户端:

帮我安装 game-life-mcp(一个把人生当游戏、AI 当成长教练的 MCP 服务)。npm 包名 game-life-mcp,装好后按它的说明配置 MCP 服务 game-life

AI 会自己装 npm 包、配好 MCP、引导你开始用。想用 MCP 标准安装流程也行,下面 GitHub 链接里有完整说明:

🔗 GitHub: github.com/lairey-ai/game-life-mcp

方式 B:npm 全局安装(手动,所有 npm 版本都支持)

npm install -g game-life-mcp

验证:

game-life

看到 🧙 game-life MCP Server 已启动 即成功。按 Ctrl+C 停止。

方式 C:不安装,直接跑(需 npm ≥ 9)

npx -y game-life-mcp

注意:npm 6.x 老版本用 npx -y game-life-mcp 会报"找不到命令",请改用方式 B 全局安装,或先升级 npm(npm install -g npm@10)。

配置 AI 客户端

npm 包名是 game-life-mcp,运行时命令 / MCP server 名是 game-life

{
  "mcpServers": {
    "game-life": {
      "command": "game-life",
      "args": []
    }
  }
}
{
  "mcpServers": {
    "game-life": {
      "command": "npx",
      "args": ["-y", "game-life-mcp"]
    }
  }
}
{
  "mcpServers": {
    "game-life": {
      "command": "node",
      "args": ["/path/to/game-life/dist/index.js"]
    }
  }
}

各客户端的配置入口:

| 客户端 | 配置入口 | |--------|----------| | WorkBuddy | 侧边栏 → 插件 → MCP 服务器 | | Claude Desktop | 设置 → 开发者 → 编辑配置文件 | | Codex | 设置 → AI Provider → MCP → 添加 | | Cursor | 设置 → Features → MCP → 添加 |

开始使用

安装完成后,需要重开一个 AI 客户端窗口(像 WorkBuddy 这类客户端,MCP 插件安装后要在新窗口才生效)。

话术 1:直接把下面这段发给新窗口(推荐,省事):

你好,我刚安装了 game-life(一个把人生当成游戏、AI 当成长教练的 MCP 服务)。请先读取 game-life 的系统指南,然后:

  1. 确认能正常使用 game-life 的工具(如果看到授权/信任提示,告诉我怎么允许)
  2. 先跟我聊聊,帮我建立角色档案(六维属性评估 + 长期目标)
  3. 档案确认后,帮我生成今天的成长任务

话术 2:简单说"你好"

"你好"

AI 会自动检测到这是你第一次使用,开始跟你聊天,了解你,创建你的角色。首次建档不需要特定口令,像聊天一样说话就行。 建档之后要用日常功能(任务/打卡/面板),参考下方「触发口令」——带"游戏人生"或"game-life"更容易触发。


日常使用

💬 触发口令(重要)

想让 AI 调用 game-life 的功能,建议直接说"游戏人生/game-life"相关的口令——有些 AI 客户端只有明确提到这些词,才会联想到调用 game-life 的工具。记住这些口令,一说就触发:

| 你想干嘛 | 直接这样说 | |---------|-----------| | 打开成长面板 | "打开我的游戏人生面板" / "看看游戏人生的成长进度" | | 看今天的任务 | "游戏人生今天有什么任务" / "看看 game-life 给我安排的任务" | | 打卡完成 | "游戏人生打卡,我完成了…" / "我完成了 game-life 的任务:读了 20 页书" | | 设定目标 | "帮我把游戏人生的目标定为…" | | 首次开始 | "开始用游戏人生" / "读取 game-life 系统指南并引导我" |

规律:带"游戏人生"或"game-life"这两个词,AI 一定能触发;只说"任务""面板"这类通用词,部分客户端可能不联想。

💡 升级不需要口令——升级时 AI 会自动根据你近期的任务表现分配属性点,你感知到的就是"属性涨了"。

日常对话

配置好了之后,正常对话:

| 你说 | AI 帮你做 | |------|-----------| | "游戏人生今天有什么任务" | 根据你的目标和状态生成 2-4 个任务 | | "游戏人生打卡,我完成了读书和跑步" | 打卡涨经验,可能触发命运卡牌 | | "打开我的游戏人生面板" | 展示等级、属性、成就、长期目标 | | "我升级了" | 自动根据近期表现分配属性点,属性增加 | | "今天加班做不了这些" | 换成更轻松版本的替代任务 | | "我不知道该学什么" | 帮你梳理目标,给探索方向 | | "看看我这周的成长" | 调出历史打卡记录做回顾 |


系统介绍

属性

| 属性 | 含义 | 1-3 分 | 4-6 分 | 7-9 分 | 10 分 | |------|------|--------|--------|--------|-------| | 体力 | 运动、健康、精力 | 不运动 | 偶尔动一动 | 规律运动 | 运动员水平 | | 脑力 | 学习、思考、专业 | 基础差 | 普通人 | 学习力强 | 专家水平 | | 心力 | 抗压、韧性、情绪 | 易焦虑 | 偶尔崩 | 扛得住事 | 极强韧性 | | 执行力 | 自律、坚持、效率 | 重度拖延 | 偶尔坚持 | 比较自律 | 极强执行力 | | 社交 | 沟通、合作、关系 | 社恐 | 正常社交 | 善于沟通 | 感染力强 | | 灵感 | 创造、直觉、感知 | 怕新东西 | 正常操作 | 善于动手 | 工匠水平 |

初始评估框死 1-10 分,实事求是。成长才是游戏的核心。

升级

经验曲线: xpRequired(N) = floor(100 × 1.15^(N-1))
每升一级: +5 自由属性点(由 AI 根据你近期表现自动分配)

| 等级 | 所需经验 | 累计经验 | 用户节奏 | |------|---------|---------|---------| | 1 → 2 | 100 | 100 | 勤奋用户 1-2 天 | | 5 → 6 | 174 | ~673 | 约 1 周 | | 10 → 11 | 351 | ~1675 | 约 2-4 周 |

升级时 AI 会根据你最近完成的任务,自动把属性点加到你成长最明显的方向(运动多→体力、读书多→脑力…),你不需要手动加点——感受到的就是"属性涨了"。

命运卡牌

与传统游戏的随机事件不同,game-life 的命运卡牌由 AI 基于你的状态主动触发

  • 连续多日做同样的事 → 推你跳出舒适区
  • 某个属性远低于其他 → 引导关注短板
  • 打卡率下滑 → 轻量激励拉一把
  • 完成重大突破 → 放大成就感

每一张卡都是 AI 在说 "我看到你在哪里卡住了,试着推你一把"

成就

| 成就 | 解锁条件 | |------|----------| | 第一步 | 完成第一次打卡 | | 七日连击 | 连续 7 天坚持打卡 | | 满月行者 | 连续 30 天坚持打卡 | | 渐入佳境 | 达到 5 级 | | 小有所成 | 达到 10 级 | | 均衡发展 | 六属性全部 ≥ 5 | | 命运收藏家 | 抽到过 10 张不同命运卡牌 | | 初见成效 | 第一次通过目标验收 | | 突破极限 | 首次完成挑战级(hard)任务 | | 多维发展 | 单日完成 3 类不同任务 | | 第一周 | 累计打卡满 7 天 |

🎁 还有隐藏成就(解锁前不显示):夜行者(凌晨打卡)、完美一周(单日全勤)、坚韧不拔(连击 14 天)…等着你发现。


数据存储

所有数据存在用户的电脑上:

~/.game-life/life.db
  • 格式:SQLite(通过 sql.js,纯 JS 实现)
  • 备份:直接复制 ~/.game-life/life.db 到别处
  • 换机:拷走这个文件即可迁移,拷到新机相同路径
  • 安全:数据不上传任何云端,完全离线

卸载

npm uninstall -g game-life-mcp   # 卸载程序
rm -rf ~/.game-life              # 删除数据(可选)

项目结构

game-life/
├── src/
│   ├── index.ts            MCP Server 入口
│   ├── about.ts            AI 运营手册(~250 行)
│   ├── tools.ts            7 个 Tool 定义 + 处理器
│   ├── mcp-types.ts        类型辅助
│   └── engine/
│       ├── types.ts        核心类型定义
│       ├── storage.ts      SQLite 持久化(6 张表)
│       └── engine.ts       游戏引擎(经验/升级/属性)
├── test/
│   └── run.ts              全链路测试(51 断言)
├── CHANGELOG.md
├── LICENSE                  MIT
└── README.md

技术栈

| 层 | 选型 | 理由 | |----|------|------| | 协议 | MCP (Model Context Protocol) | 跨 AI 客户端统一标准 | | 运行环境 | Node.js ≥ 18 | 大多数电脑已预装 | | 存储 | SQLite (sql.js) | 纯 JS,零原生依赖 | | 类型系统 | TypeScript strict | 类型安全 |


开源协议

MIT — 自由使用、修改、分发。


人生不是游戏,但你可以把它当游戏玩。