一个 Lightless Labs 研究项目,通过多学科语料库分析大规模研究 AI 智能体行为(说白了,就是把东西往墙上扔,看哪个能粘住)。
命名源于 Discworld 中 Tiffany Aching 的概念:第一想法(智能体的思考)、第二想法(智能体分析自身的思考)、第三想法(本项目分析上述思考)。
Third Thoughts 分为两大部分,共享同一套语料库和方法论:
middens/ — 一个 Rust CLI,用于从 AI 智能体会话日志中提取行为模式。解析来自 Claude Code、Codex、OpenClaw 和 Pi 编码智能体会话的转录文本(Gemini 存根),对消息和会话进行分类,并运行一套 23 种分析技术(6 种 Rust 原生 + 17 种 Python,通过内嵌的 Python 桥接捆绑集成)。该 CLI 有三个核心命令:analyze(运行技术 → Parquet 存储)、interpret(由 LLM 驱动的跨技术叙述)和 export(Jupyter notebook)。参见 middens/README.md。docs/ 中的方法目录、自然语言规范、复现研究和记录在案的发现。科学结论都在这里。语料库本身(corpus/、experiments/)已在 gitignore 中排除 — 这些会话包含私有数据,无法重新分发。工具和方法论是开放的;原始数据则不是。
复合限定规则: 任何关于思考或文本行为的核心发现,必须经受四个维度的检验 — session_type、thinking_visibility、language 和时间窗口。不能同时通过所有四项的发现,就不是发现。更多背景见 CLAUDE.md 和 docs/HANDOFF.md。
middens/ Rust CLI — parser, classifiers, techniques, Python bridge
docs/
HANDOFF.md Session-continuity document, read this first
methods-catalog.md 20 method families, 80+ references
examples/ Worked examples for the CLI triad workflow
nlspecs/ Natural-language specs (Why / What / How / Done)
reports/ Research reports
reviews/ Multi-model peer reviews
brainstorms/ Requirements docs
plans/ Implementation plans
solutions/ Institutional knowledge — documented learnings
scripts/ Python analytical battery (26 scripts, mostly superseded by middens)
todos/ Individual todo files with YAML frontmatter
已加入 gitignore:corpus/、corpus-full/、corpus-split/、corpus-frozen/、experiments/、data/labeled-messages.json。
在 macOS 或 Linux 上使用 Homebrew 安装 CLI:
brew install lightless-labs/tap/middens
middens --help
在没有 Homebrew 的 Linux 上,可直接获取发布 tarball:
# x86_64 Linux
curl -LO https://github.com/Lightless-Labs/third-thoughts/releases/download/v0.0.1-beta.4/middens-0.0.1-beta.4-x86_64-unknown-linux-gnu.tar.gz
tar xzf middens-0.0.1-beta.4-x86_64-unknown-linux-gnu.tar.gz
./middens-0.0.1-beta.4-x86_64-unknown-linux-gnu/middens --help
middens 目前为 Apple Silicon macOS、x86_64 Linux 和 arm64 Linux 提供二进制构建。如果你已经在使用 Homebrew,这是最简单的安装途径;发布 tarball 和源码构建方式记录在 middens/README.md 中。
如果你想在自己的会话日志上运行该 CLI,请前往 middens/。如果你想了解方法论和研究成果,可从 docs/methods-catalog.md 以及 docs/reports/ 下的报告开始。
middens archive 会将本地的智能体 JSONL 日志复制到一个私有的、内容寻址的归档中,以免供应商、保留策略或你自己深夜的清理冲动让这些日志消失。它存储的是原始转录文本,因此请将归档根目录视为私有数据:
middens archive --to ~/agent-session-archive --dry-run
middens archive --to ~/agent-session-archive --yes
自包含的自动化插件位于 integrations/ 下,不要求 middens 二进制在 PATH 中:
integrations/pi/middens-archive/ — Pi 扩展,提供 /middens-archive-now 和 /middens-archive-status。integrations/claude-code/middens-archive/ — Claude Code 钩子,外加 /middens-archive-now。integrations/codex/middens-archive/ — Codex 钩子,外加归档技能。三者都要求显式设置 MIDDENS_ARCHIVE_ROOT;不会替你选择默认归档路径,因为意外出现的原始转录文件夹是很失礼的。
AGPL-3.0-or-later。参见 LICENSE。
| 发现 | 状态 | 范围 |
|---|
| 可见思考会话中 99.99% 的风险令牌抑制 | 得到强化 | language=en ∧ thinking_visibility=Visible。N=4,518 个会话,31,679 个风险令牌,2 次泄漏。 |
| HSMM 故障前/校正前状态 | 暂定 — 方向已复现,幅度不稳定 | 固定的公共 HF 重跑:当前 middens 为 5.61×(Boucle 排除后);旧脚本在其自身过滤/采样下为 41.32×。请勿引用 24.6× 之类的单一头条数字。 |
| MVT 被违反 — 智能体探索不足 | 稳健 | 见 experiments/full-corpus/information-foraging.md。 |
| 会话退化(智能体随时间推移表现变差) | 仅对交互式会话成立 | 见 experiments/interactive/survival_analysis.txt。 |
| “交互式”桶中的 W10–W12 Boucle 污染 | 已确认 | 1,820/1,826 个会话带有自主循环标记。 |