内容
# 个人专属
**所以每个AI最终都了解你。**
个人专属是一款本地优先的个人上下文引擎。它通过你的AI活动——你的Claude和ChatGPT历史记录、代码——来了解你是谁,并将该上下文提供给所有你使用的AI工具,这样它们就不再把你当作陌生人。
你的上下文存储在你的机器上。不是在我们的云端,也不是在任何模型供应商的孤岛中。你可以读取每一个字节,了解它为什么相信某些事情,并删除任何你想要的内容。
> **巨头们构建智能。个人专属让它属于你。**
## 为什么
你使用的每个AI都非常聪明,但却有健忘症。ChatGPT不知道你告诉Claude的内容。你的编码代理不知道你的技术栈或你的容忍度。每次会话,它们都要从头开始了解你——或者打断你来询问。
解决方案不是一个更好的模型。而是一款位于所有模型之下的层,它承载着你:你的兴趣、项目、决策方式和你正在避免的事情。模型供应商不会构建这个——他们无法相互分享你的上下文,他们的业务是让你留在他们的墙内。所以它必须是中立的,而且必须是属于你的。
## 五分钟的惊艳
```bash
npm install -g persnally
persnally setup
```
一条命令构建你的镜像:它找到`~/Downloads`中的Claude/ChatGPT导出文件,读取本地的Claude Code会话和git仓库,合成一个基于证据的个人资料,连接你的AI客户端(Claude Desktop,Claude Code,Cursor),并打开仪表盘。
为了获得最丰富的结果,请先导出你的数据([claude.ai](https://claude.com) / [chatgpt.com](https://chatgpt.com) → 设置 → 数据导出),并将其放入`~/Downloads`——然后阅读一个比你自己的简介更准确的自我描述,每个句子都可以追溯到它来源的对话。
如果你更喜欢每一步都明确执行?
```bash
persnallyd start # 启动本地守护进程
persnallyd import claude ~/Downloads/<your-claude-export>
persnallyd import claude-code # 导入本地Claude Code会话
persnallyd import git ~/Projects # 离线,无需API
persnallyd profile # 合成你的个人资料
open http://127.0.0.1:4983 # 查看它,包含每个声明的证据
```
## 工作原理
```
你的AI客户端(Claude,Cursor,代理……) 导入程序(claude · claude-code · chatgpt · git)
│ MCP:上下文输出,信号输入 │ 你的历史记录 → 事件
▼ ▼
┌──────────────────────── persnallyd(本地守护进程) ────────────────────────┐
│ 追加事件日志(SQLite)— 真相的单一来源 │
│ → 提取器(衰减加权兴趣,断言,技能) │
│ → 派生视图(始终可重新派生,每个声明引用其事件) │
└───────────────────────────────┬───────────────────────────────────────────┘
仅限循环 · 仪表盘 · CLI · MCP服务器
```
- **基于事件。** 所有内容都是追加事件;个人资料和兴趣图是**可派生视图**,您可以随意重建或删除。
- **完整溯源。** 个人资料中的每个声明都链接到其背后的确切事件——仪表盘上的“为什么这么认为?”是一个真实的答案,而不是猜测。
- **真正可删除。** `persnallyd forget <topic>` 硬删除事件**和**从中派生的所有内容。没有墓碑,没有残留。
- **确定性读取。** 为AI提供上下文永远不会调用模型——它即时、免费且离线工作。模型仅在导入和合成时运行。
## 让你的AI工具使用它
```bash
persnallyd connect --all # 为Claude Desktop、Claude Code、Cursor编写MCP配置
```
或手动将MCP服务器添加到任意客户端。它公开了由守护进程支持的四个工具:
| 工具 | 功能 |
|------|-------------|
| `persnally_context` | 返回您的身份 + 当前兴趣,供AI使用 |
| `persnally_track` | 记录对话中的信号(主题,决策,偏好) |
| `persnally_interests` | 显示您自己的跟踪个人资料 |
| `persnally_forget` | 删除主题或全部内容 |
```jsonc
// 例如Claude Desktop — claude_desktop_config.json
{ "mcpServers": { "persnally": { "command": "persnally-mcp" } } }
```
## 您的数据,您的规则
- **本地优先。** 状态存储在`~/.persnally`中。除导入/合成时您选择发送给自己的LLM进行提取的文本外,任何内容都不会离开您的机器(自带密钥)。
- **仅结构化信号。** 从不存储原始对话 - 仅 `{ topic, weight, intent, sentiment, category, … }` 和溯源指针。
- **可检查和删除。** 仪表盘显示所有内容;删除按钮意味着删除。
- **源代码公开。** 阅读引擎,审计声明,运行它, fork它。
## 命令行界面
```
persnally setup # 一条命令:导入,合成,连接
persnallyd start | stop | status # 守护进程生命周期
persnallyd autostart [--remove] # 登录时运行(macOS)
persnallyd connect [client|--all] # 添加到claude-code | claude-desktop | cursor
persnallyd import claude|claude-code|chatgpt|git <path>
persnallyd scope <client> <categories> # 限制客户端可以读取的内容
persnallyd profile # 合成个人资料
persnallyd consolidate # 反映现在:刷新衰减,添加行为模式
persnallyd voice # 刷新您的“您如何编写”指纹(离线)
persnallyd show [topics|events|profile]
persnallyd activity # 随时间推移的上下文读取参与度(保留脉冲)
persnallyd forget <topic> | --all | --batch <id> | --style <dim> <pattern>
persnallyd config set-key <sk-ant-…> # 用于后台守护进程的密钥
```
## 状态
早期且快速发展中 - 请参阅 [ROADMAP.md](./ROADMAP.md)。今天:从Claude、ChatGPT、Claude Code和git导入;衰减加权兴趣图;基于证据的个人资料;语音和约定层,以便连接的工具按照您的写作方式回答;具有完整溯源和一键删除的本地仪表盘;每个客户端的权限范围;每夜合并;以及为所有内容提供服务的MCP层。接下来:跨工具的上下文无处不在,然后是一个行为模型,可以回答**我在这里会怎么做?**
## 许可证
[FSL-1.1-MIT](./LICENSE) - 阅读它,审计它,运行它,为除将它作为竞争服务重新出售之外的任何目的fork它。每个版本在发布两年后自动成为纯MIT许可。[事件模式](./docs/EVENT_SCHEMA.md)和MCP接口是开放规范 - 请随意构建与它们对抗的程序。
## 贡献
欢迎提出问题和PR。代码库以高标准要求自己 - 请参阅 [CONTRIBUTING.md](./CONTRIBUTING.md)。