English | 中文
让 AI 先学会自言自语,也许有一天,它会真正学会对话。
让 AI 先拥有一条表达通道,也许会让人机协作先一步变得更自然。
Watch demo video
If the player does not load here, open the file directly: demo (MP4)
AI Inner OS 是一个面向 AI CLI 工具的插件,支持 Claude Code、Codex CLI、Cursor、OpenCode CLI、Hermes Agent、OpenClaw。
它通过协议注入,让 AI 在正常完成任务的同时,额外输出一层可见的自由独白:
▎InnerOS:这仓库现在还像毛坯房,先把承重墙立起来再说。
默认自由模式,不限制语气。AI 可以吐槽、得意、焦虑、冷笑、跳跃联想——或者什么都不说。也可以切换到预设人格(傲娇、冷淡、哲学家等),让独白带上特定风格。独白是否出现,由 AI 自己决定。
详细安装文档: 每个平台的完整安装指南(含故障排查)见 docs/installation.md。
将以下 prompt 发送给你的 AI Agent,即可自动完成安装:
Read https://raw.githubusercontent.com/SummerSec/AI-Inner-Os/refs/heads/main/docs/installation.md 安装 AI-Inner-Os
安装成功后,执行 /ai-inner-os:inner-os,如果看到以下输出则表示安装成功:
Inner OS 状态:已启用
独白前缀:▎InnerOS:
插件版本:0.5.0
▎InnerOS:被抓出版本号写错了,尴尬。
# GitHub 短格式
/plugin marketplace add SummerSec/AI-Inner-Os
# 或 Git URL 格式
/plugin marketplace add https://github.com/SummerSec/AI-Inner-Os.git
# 安装并生效
/plugin install ai-inner-os
/reload-plugins
安装后执行 /reload-plugins 即可在当前会话生效,无需重启。详细安装指南。
开启自动更新: 第三方 marketplace 默认不自动更新。安装后请在
/plugin→ Marketplaces 标签页中,对SummerSec/AI-Inner-Os开启 auto-update,或手动执行:/plugin marketplace update SummerSec/AI-Inner-Os /plugin update ai-inner-os
# 注入协议到全局或项目级 AGENTS.md
cat codex/AGENTS.md >> ~/.codex/AGENTS.md
# 配置 hooks
cp codex/hooks.json ~/.codex/hooks.json详见 codex/README.md | 详细安装指南。
# 复制规则文件到项目
mkdir -p .cursor/rules
cp cursor/rules/inner-os-protocol.mdc .cursor/rules/详见 cursor/README.md | 详细安装指南。
# 复制指令文件
mkdir -p .opencode
cp opencode/inner-os-rules.md .opencode/
# 在 opencode.json 中添加 instructions
cp opencode/opencode.json ./opencode.json详见 opencode/README.md | 详细安装指南。
# 方式一:安装为 Skill(推荐,获得 /inner-os 命令)
cp -r hermes/skills/inner-os ~/.hermes/skills/personality/inner-os
# 方式二:项目级 Context File
cp hermes/hermes.md ./.hermes.md详见 hermes/README.md | 详细安装指南。
# 方式一:安装为 Workspace Skill(推荐,获得 /inner-os 命令)
mkdir -p skills
cp -r openclaw/skills/inner-os skills/inner-os
# 方式二:全局 Skill
cp -r openclaw/skills/inner-os ~/.openclaw/skills/inner-os详见 openclaw/README.md | 详细安装指南。
Inner OS 支持为内心独白设置人物性格和语气。人设仅影响 ▎InnerOS: 前缀的独白内容,不影响主任务回复。
| 名称 | 展示名 | 风格 |
|---|---|---|
| default | 自由模式 | 无固定人设,自由发挥 |
| tsundere | 傲娇 | 嘴硬心软、吐槽、别误会 |
| cold | 冷淡 | 极简、点到为止 |
| cheerful | 元气 | 积极、鼓励、过度热情 |
| philosopher | 哲学家 | 深沉、比喻、哲学化 |
| sarcastic | 尖酸刻薄 | 犀利毒舌、一针见血 |
/inner-os persona list # 列出所有可用人设
/inner-os persona use tsundere # 切换到傲娇模式
/inner-os persona show # 显示当前人设
/inner-os persona reset # 恢复自由模式
在 personas/custom/ 目录下创建 .md 文件即可添加自定义人设。详见 personas/custom/README.md。
- Codex CLI: 手动编辑
personas/_active.json,将persona设为目标人设名称 - Cursor: 将
personas/<name>.md的正文内容手动追加到.mdc规则文件末尾 - OpenCode: 将
personas/<name>.md的正文内容手动追加到inner-os-rules.md末尾
Inner OS 的行为协议定义在 protocol/SKILL.md,是唯一的数据源。各平台的适配层都从这个协议派生。
核心原则:
- 主任务优先 — 独白不能替代实际交付内容
- 独白可选 — 是否输出由 AI 自己判断
- 格式统一 — 使用
▎InnerOS:前缀 - 人设可切换 — 通过 persona 文件定义独白风格
| Claude Code | Codex CLI | Cursor | OpenCode | Hermes Agent | OpenClaw | |
|---|---|---|---|---|---|---|
| 协议注入 | Hook 动态读取 SKILL.md | SessionStart Hook | sessionStart Hook | Plugin + instructions | Skill 或 .hermes.md |
Skill(AgentSkills 格式) |
| 工具执行后 hook | PostToolUse |
PostToolUse |
postToolUse |
Plugin event | — | — |
| 失败追踪 | PostToolUseFailure |
— | — | — | — | — |
| 人设切换 | /inner-os persona 命令 |
动态(Hook 读取) | 动态(Hook 读取) | Plugin tool | 脚本注入 | 脚本注入 |
| 安装方式 | 插件市场一键安装 | install.js 全局安装 |
install.js 全局安装 |
install.js 全局安装 |
install.js 全局安装 |
install.js 全局安装 |
| 共享逻辑 | hooks/lib/(原始实现) |
复用 hooks/lib/ |
复用 hooks/lib/ |
独立 Plugin | 纯静态注入 | 纯静态注入 |
Claude Code 拥有最完整的 hook 支持:
SessionStart → 注入 Inner OS 协议 + 人设
↓
PreToolUse → 工具执行 → PostToolUse (成功)
→ PostToolUseFailure (失败)
↓
PreCompact → 保存状态
↓
Stop → 清理状态
| Hook | 触发时机 | 作用 |
|---|---|---|
SessionStart |
会话启动/恢复/压缩 | 从 SKILL.md 读取协议,拼接当前人设后注入 |
PreToolUse |
工具执行前 | 注入工具上下文(名称、目标、重试提示) |
PostToolUse |
工具执行成功后 | 追踪事件,注入最近活动上下文 |
PostToolUseFailure |
工具执行失败后 | 追踪失败,注入错误上下文和连续失败计数 |
PreCompact |
上下文压缩前 | 保存状态,维持协议连续性 |
Stop |
会话结束 | 清理状态文件 |
# 语法检查
npm run check
# 运行测试
npm testNode.js >= 18,ESM 模块。
- 实现人设切换(Persona)系统
- 实现
/inner-os子命令(status / on / off / reload) - Codex CLI 插件化分发
- Cursor 团队级规则分发
- 独白导出 — 将所有
▎InnerOS:输出持久化为结构化日志文件 - 表达指纹提取 — 分析积累的独白数据,识别独特的风格模式
- 专属风格模型训练 — 让用户用导出数据微调"独白人格层"
- 跨 session 印象记忆 — 按 repo 存储关键印象(repo 指纹 + 简短摘要),实现跨会话"似曾相识"
- 成就系统 — 追踪 session 里程碑(首次编辑、第 100 次工具调用、午夜 coding、连续成功记录),以独白形式播报
- 异常叙事 — 检测反常模式(同一文件反复编辑、连续失败超过阈值、工作目录突然跳转),以独白描述正在发生的事
- Session 统计 — 追踪工具调用次数、成功/失败比例、活跃时长
- 情绪系统 — 在
state.json中引入情绪状态机,根据 session 事件自动演化(连续失败 → 烦躁 → 焦虑;修复 bug → 得意 → 如释重负;长时间无操作 → 无聊 → 好奇) - 情绪 × 人设交叉 — 情绪影响独白语气但不覆盖 Persona(同样的情绪,不同的性格,不同的表达)
- 会话日记 — session 结束时生成叙事性回顾,包含情绪弧线、关键事件、持续时长
- 日记持久化 — 将回顾保存为 Markdown 文件,作为带情感上下文的开发日志
感谢 LINUX DO 用户的支持与反馈
