Library · v1.0.0 · LIVE

ThinkKit · 思维模型单元库

把 100 个思维模型拆成独立、自包含、可按需加载的单元。
不是一本要读完的书,而是一套工具箱:遇到问题时先检索,再只加载需要的那一个。

100 个单元 8 大分类 按需加载 纯 Markdown CLI 检索 @unit 引用语法
100个
Units
8类
Categories
40行
Per Unit
0依赖
Dependencies
thinkkit — node src/cli.mjs
node src/cli.mjs find "投入很多但舍不得放弃"
问题:投入很多但舍不得放弃
候选单元(按匹配度):
1. 沉没成本 `sunk-cost`
已经花掉、收不回来的部分,不该参与下一步决策。
命中:触发词 / 常见说法 | 成本 低 | 证据 高
2. 机会成本 `opportunity-cost`
选一件事的真实代价,是你因此放弃的最好那件事。
命中:常见说法 | 成本 低 | 证据 高
3. 损失厌恶 `loss-aversion`
同样的量,失去带来的痛大于得到带来的快,判断因此偏保守。
node src/cli.mjs get sunk-cost
→ units/decisions/sunk-cost.md

用户不会说「沉没成本」,只会说「都投这么多了舍不得停」。
find 先查口语说法表,再用 front matter 的 triggers / tags / use_when 二次排序。

/

加载中…

Core Features
🧭

三层递进加载

cards.md 扫一行定位 → find 排序候选 → get 载入整篇。100 个单元不会一次性涌进上下文。

🔍

听得懂人话

口语说法统一收在 aliases.json:「都投这么多了舍不得停」→ 沉没成本,再用 triggers / tags 二次排序,长问句靠公共子串兜底。

🗂

front matter 即路由表

触发词、调用成本、证据强度、配对单元都是可被程序读取的字段,agent 与 CLI 直接查询,不必解析正文。

📏

单元纪律

固定 5 章节:一句话 / 何时调用 / 怎么用 / 常见误用 / 组合与替代。正文 40 行以内,整篇可一次塞进上下文。

🔗

@unit 引用语法

回答里写 @unit/sunk-cost,人和 agent 都能追溯依据,也方便脚本统计覆盖率与使用频次。

✅

自动校验

npm run check 拦截缺字段、编号断号、pairs 指向不存在的单元、章节名写错、索引忘记重建,GitHub Actions 每次提交都跑。

🧩

扩充成本极低

复制模板写一个 .md,npm run build 自动进索引,不用改任何代码,也没有排版要维护。

🪶

零第三方依赖

纯 Node ≥ 18 + Markdown,没有构建工具、没有包依赖、没有运行时。clone 下来就能用。

✍️

内容独立重写

只保留「怎么用」的部分,不复述百科定义、不搬原文案例。单元是工具,不是结论。

在终端里检索

需要 Node ≥ 18,无需 npm install。

git clone git@github.com:superwangying/thinkkit.git
cd thinkkit

# 找候选
npm run find -- "上线三个月,用户不增长"

# 载入整篇
npm run get -- sunk-cost

# 校验与重建索引
npm run check

在 agent 里引用

三种方式:CLI 检索、直接读 registry.json 里的 file 字段、或整段粘贴。

// 回答里统一写成 @unit/<slug>

这里适用 沉没成本 @unit/sunk-cost:
已投入的 40 万不参与下一步比较,
只看「从今天起继续」和「今天停止」
的未来得失。
Tech Stack
Node.js ESM Markdown YAML front matter JSON registry CLI GitHub Actions Zero dependencies MIT License

想加第 101 个单元?

复制 UNIT_TEMPLATE.md 里的骨架,写满 5 个章节,npm run check 过了就能提交。
发现某个单元写得不对、或者缺了你常用的模型,欢迎开 Issue 或直接提 PR。

💬 欢迎留言 · GitHub Issues / Pull Requests
Visit GitHub →