[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-92243":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":12,"openIssues":12,"contributorsCount":13,"subscribersCount":13,"size":13,"stars1d":13,"stars7d":13,"stars30d":12,"stars90d":13,"forks30d":13,"starsTrendScore":13,"compositeScore":14,"rankGlobal":9,"rankLanguage":9,"license":15,"archived":16,"fork":16,"defaultBranch":17,"hasWiki":18,"hasPages":16,"topics":19,"createdAt":9,"pushedAt":9,"updatedAt":20,"readmeContent":21,"aiSummary":22,"trendingCount":13,"starSnapshotCount":13,"syncStatus":23,"lastSyncTime":24,"discoverSource":25},92243,"Bailin","WINDGAND\u002FBailin","WINDGAND","60 秒造人，请上桌面 —— 开源本地 AI 桌宠，用 ta 的视角陪你看问题",null,"TypeScript",54,1,0,41,"MIT License",false,"main",true,[],"2026-07-22 04:02:05","\u003Ch1 align=\"center\">百灵 Bailin\u003C\u002Fh1>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>桌面上的百变魂灵\u003C\u002Fstrong> —— 60 秒造一个视角型 AI 角色，像素桌宠常驻桌面，\u003Ccode>Ctrl + Shift + P\u003C\u002Fcode> 随手可问。\n\u003C\u002Fp>\n\n\u003C!-- README-I18N:START -->\n\n\u003Cp align=\"center\">\n  \u003Ca href=\".\u002FREADME.en.md\">English\u003C\u002Fa> · \u003Cstrong>汉语\u003C\u002Fstrong>\n\u003C\u002Fp>\n\n\u003C!-- README-I18N:END -->\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Flogo.png\" alt=\"百灵 Bailin\" width=\"120\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-blue.svg\" alt=\"MIT License\" \u002F>\u003C\u002Fa>\n  \u003Ca href=\"#快速开始\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fplatform-Windows-0078D6.svg\" alt=\"Windows\" \u002F>\u003C\u002Fa>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fnode-%3E%3D20.10-brightgreen.svg\" alt=\"Node >= 20.10\" \u002F>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FElectron-32-47848F.svg\" alt=\"Electron 32\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"#概览\">概览\u003C\u002Fa> ·\n  \u003Ca href=\"#快速开始\">快速开始\u003C\u002Fa> ·\n  \u003Ca href=\"#使用场景\">使用场景\u003C\u002Fa> ·\n  \u003Ca href=\"#产品体验\">产品体验\u003C\u002Fa> ·\n  \u003Ca href=\"#受启发而非模仿\">受启发而非模仿\u003C\u002Fa> ·\n  \u003Ca href=\"#隐私与本地优先\">隐私\u003C\u002Fa> ·\n  \u003Ca href=\"#免责声明\">免责声明\u003C\u002Fa> ·\n  \u003Ca href=\"#开发者文档\">开发者\u003C\u002Fa>\n\u003C\u002Fp>\n\n---\n\n## 概览\n\n百灵 Bailin 是一个**完全本地运行**的开源 Windows 桌面 AI 角色伴侣。它做两件事：\n\n1. **造一个 ta** — 输入名字，60 秒（快速）或 5–8 分钟（深度），蒸馏心智框架 + 表达 DNA + 像素形象。\n2. **请 ta 上桌** — 桌宠常驻屏幕右下角；`Ctrl + Shift + P` 或点击桌宠唤起聊天；单击系统托盘图标打开设置 \u002F 角色仓库。\n\n> [!TIP]\n> 不是「让 AI 表演成 XX」，而是「让 AI 用 XX 的视角看你的问题」。\n\n---\n\n## 核心功能\n\n| 能力 | 说明 |\n| --- | --- |\n| **快速 \u002F 深度造人** | 快速模式 ~60s；深度模式 6 Agent 调研 + 质量自检 |\n| **像素桌宠** | DSL 或 hatch-pet 图集；透明置顶、可拖拽、透明区鼠标穿透 |\n| **视角型对话** | 心智模型 + 决策启发式 + 表达 DNA 组装 system prompt |\n| **本地记忆** | 用户画像自动学习，可编辑 \u002F 清空 |\n| **主动陪伴** | 可选智能截图 whisper + 独立气泡窗 |\n| **零订阅** | 自带 OpenAI \u002F Anthropic \u002F 兼容 API Key；Windows DPAPI 加密 |\n\n**快捷键**\n\n| 操作 | 快捷键 \u002F 入口 |\n| --- | --- |\n| 唤起 \u002F 关闭聊天 | `Ctrl + Shift + P` |\n| 打开设置 \u002F 角色仓库 | 单击系统托盘图标 |\n| 关闭聊天窗 | `Esc` |\n\n---\n\n## 快速开始\n\n> [!NOTE]\n> 推荐从 [Releases](https:\u002F\u002Fgithub.com\u002FWINDGAND\u002FBailin\u002Freleases\u002Flatest) 下载 **Bailin-Setup-0.0.1.exe**（Windows x64）。亦可按下方步骤源码构建。\n\n### 环境要求\n\n- Windows 10 \u002F 11\n- [Node.js](https:\u002F\u002Fnodejs.org\u002F) ≥ 20.10\n- [pnpm](https:\u002F\u002Fpnpm.io\u002F) 9（`corepack enable`）\n\n### 安装与运行\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FWINDGAND\u002FBailin.git\ncd Bailin\npnpm install          # 自动 build packages + rebuild better-sqlite3\npnpm dev              # Vite + tsc watch + Electron\n```\n\n首次启动会进入**首启向导**：免责声明 → 配置 API Key → 创建或导入角色 → 桌宠上桌。\n\n开发调试可在项目根目录配置 `.env.dev`（参考 `.env.dev.example`）注入 LLM 凭据。\n\n---\n\n## 使用场景\n\n### 写东西卡住了\n\n你在改一份重要文档，思路乱了。按 `Ctrl + Shift + P`，把「核心想表达 X，但写出来很啰嗦，怎么砍？」扔给桌面上的思维顾问 —— ta 会从自己的视角给你结构建议，而不是泛泛的 AI 腔。\n\n### 决策需要换角度\n\n你在犹豫一个职业选择。问 ta：「这件事的反向思考是什么？」—— 三个反向问题往往比直接给答案更有用。\n\n### 桌面需要一点陪伴\n\n工作累了一天，和 ta 说几句不咸不淡的话。ta 不会说教、不会偏离人设，桌面也不会那么冷。\n\n---\n\n## 产品体验\n\n从造人到上桌，四步闭环：\n\n### 1. 创建角色\n\n首启向导或设置 → 创建：选来源（公众人物 \u002F 虚构 \u002F 原创）与定位（思维顾问 \u002F 情感陪伴），可选参考图，快速或深度创建。\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Fcreate.png\" alt=\"创建角色 · 快速与深度两种模式\" width=\"640\" \u002F>\n\u003C\u002Fp>\n\n> 内置 starter 列表默认为空，可在 `apps\u002Fdesktop\u002Fsrc\u002Fshared\u002Fstarters.ts` 追加 `CharacterBundle`。\n\n### 2. 角色仓库\n\n搜索、切换当前桌宠、查看心智模型摘要，或重画形象 \u002F 换参考图。\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Flibrary.png\" alt=\"角色仓库 · 列表与详情\" width=\"720\" \u002F>\n\u003C\u002Fp>\n\n### 3. 桌宠上桌\n\n像素小人出现在桌面右下角 —— 可拖拽，透明区域不挡操作。\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Fpet.png\" alt=\"像素桌宠\" width=\"280\" \u002F>\n\u003C\u002Fp>\n\n### 4. 随手唤起聊天\n\n聊天窗附着在桌宠旁，流式 Markdown 回复，不抢工作焦点。\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Fchat.png\" alt=\"聊天窗 · 桌宠与对话同框\" width=\"720\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Fchat-trump.png\" alt=\"聊天窗 · 另一个角色示例\" width=\"720\" \u002F>\n\u003C\u002Fp>\n\n\u003Cdetails>\n\u003Csummary>\u003Cstrong>更多设置截图\u003C\u002Fstrong>\u003C\u002Fsummary>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Flibrary-chat-preview.png\" alt=\"角色仓库内嵌聊天预览\" width=\"720\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Fuser-profile.png\" alt=\"用户画像 · 自动学习与记忆\" width=\"640\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Fdesktop-companion.png\" alt=\"桌宠与陪伴 · 大小与主动气泡\" width=\"640\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Fmodel-api.png\" alt=\"模型与 API Key 配置\" width=\"640\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Fsettings.png\" alt=\"外观与语言设置\" width=\"640\" \u002F>\n\u003C\u002Fp>\n\n\u003C\u002Fdetails>\n\n---\n\n## 受启发而非模仿\n\n百灵不在 AI 里塞「XX 的常用台词」—— 那样越聊越像劣质 cosplay。\n\n百灵蒸馏的是**思维骨架**：\n\n- **心智模型** — ta 看世界用的几把尺子\n- **决策启发式** — 岔路口的习惯判断\n- **表达 DNA** — 句子的节奏、标志性短语、回避的话题\n- **内在张力** — 矛盾与未解之处\n\nLLM 拿到骨架后，**用 ta 的角度看你的问题**，而不是模仿 ta 演戏。\n\n> 受 [女娲 Skill](https:\u002F\u002Fgithub.com\u002Falchaincyf\u002Fnuwa-skill)「造人术」启发，产品化为可随手用的桌面伙伴。\n\n---\n\n## 隐私与本地优先\n\n- **零订阅** — 自带任意兼容 API Key\n- **完全本地** — 角色、对话、用户画像存于本机 SQLite，不上报遥测\n- **Key 加密** — Windows DPAPI，渲染进程不接触明文 Key\n- **一键清空** — 设置里可清掉所有数据与 Key\n\n数据目录：`%APPDATA%\u002FBailin\u002F`（卸载时删除该文件夹即可完全退出）\n\n---\n\n## 致谢\n\n| 项目 | 致谢内容 | 链接 |\n| --- | --- | --- |\n| **女娲 · 造人术 Skill** by 花叔 | 人格蒸馏方法论与深度调研编排 | [alchaincyf\u002Fnuwa-skill](https:\u002F\u002Fgithub.com\u002Falchaincyf\u002Fnuwa-skill) |\n| **hatch-pet · 桌宠像素孵化 SKILL** | canonical 立绘 + 9 行 strip + atlas 拼图范式 | [openai\u002Fskills · hatch-pet](https:\u002F\u002Fgithub.com\u002Fopenai\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002F.curated\u002Fhatch-pet\u002FSKILL.md) |\n\n像素美术参考开源 chibi sprite 风格惯例（非具体作品照搬）。若觉得百灵有意思，**请给上游项目点 star**。\n\n---\n\n## 免责声明\n\n> [!IMPORTANT]\n> 请在使用前完整阅读本节。继续使用本工具即视为你已阅读并同意以下条款。\n\n### 1. 关于本工具的性质\n\n百灵 Bailin 是一个**完全本地运行**的开源工具。它本身不提供任何角色内容，**所有角色都由你（终端用户）自行输入、自行生成**。本工具：\n\n- 仅承载技术能力（蒸馏、渲染、对话编排），**不预设、不分发**任何特定真人 \u002F IP 角色素材\n- 仅在你**自己的电脑、用你自己的 LLM API Key** 调用模型；作者**不接触**你的对话内容\n- 所有生成结果均强制标注 **「受其启发，非本人 \u002F 非官方 \u002F 非授权」** 硬标识\n- 角色形象采用**像素抽象化**处理，不构成原型外貌的精确复刻\n\n### 2. 关于真实人物\n\n若角色受**任何真实人物**启发，请自行评估所在司法辖区的肖像权、名誉权、隐私权等规定。\n\n- ❌ 不得伪装成 ta 的真实观点 \u002F 声明 \u002F 立场\n- ❌ 不得用于诽谤、攻击、煽动、性化、骚扰\n- ❌ 不得未经授权用于商业、营销、宣传\n- ⚠️ 强烈建议：对在世人士仅作个人学习参考，不公开传播\n\n### 3. 关于虚构 \u002F IP 角色\n\n- ✅ 可以：仅供**个人欣赏、学习、研究**的私人使用\n- ❌ 不可以：公开分发含他人 IP 的 `.bailin` 角色包；在视频 \u002F 直播 \u002F 社交媒体商业化使用\n- ⚠️ 若 IP 持有方明确反对二创，请尊重并停止使用\n\n### 4. 关于参考图\n\n上传图片须为你拥有版权、公共领域、合理使用范围，或已获授权的内容。启用 Vision 时，图像按 LLM 服务商规则上传至其 API。\n\n### 5. 关于内置示例\n\n当前开源版默认**不包含**内置示例（`STARTER_BUNDLES` 为空）。若自行追加 starter，请遵守上述边界。\n\n### 6. 作者责任范围\n\n本工具以 **MIT License** 开源，按「现状」提供，**不提供任何明示或默示担保**。作者不对用户使用产生的法律后果承担责任。\n\n### 7. 下架与争议处理\n\n异议或下架请求请通过 GitHub Issue（标题前缀 `[Takedown]`）提交，附身份证明、异议对象与诉求。收到合理凭证后 **7 个工作日内**响应。\n\n---\n\n## 开发者文档\n\n\u003Cdetails>\n\u003Csummary>\u003Cstrong>安装、构建、协议与验证 — 点击展开\u003C\u002Fstrong>\u003C\u002Fsummary>\n\n### 仓库结构\n\n```\nbailin\u002F\n├── apps\u002Fdesktop\u002F                 # Electron 应用（main \u002F preload \u002F renderer）\n├── packages\u002F\n│   ├── character-protocol\u002F       # CharacterCard \u002F SpriteProgram schema\n│   ├── prompts\u002F                  # 蒸馏 \u002F 调研 \u002F 对话 \u002F hatch-pet 提示词\n│   ├── sprite-runtime\u002F           # DSL 渲染器 + 状态机 + guard 沙箱\n│   └── pet-atlas-tools\u002F          # hatch-pet atlas 裁帧 \u002F 拼图 \u002F 校验\n├── assets\u002F                      # README 用截图\n├── apps\u002Fdesktop\u002Fsrc\u002Fshared\u002Fstarters.ts  # 可选内置 starter（默认空）\n└── scripts\u002F\n    └── verify\u002F                   # 离线回归脚本（无需 Electron；多数需先 pnpm build）\n```\n\n### 常用命令\n\n```bash\npnpm build            # packages + main + preload + renderer\npnpm typecheck        # 全仓类型检查\npnpm dev              # 开发模式\n```\n\n### 架构概要\n\n| 层级 | 职责 |\n| --- | --- |\n| **Main** | 托盘 \u002F 快捷键、LocalVault（SQLite）、LLMAdapter、BailinOrchestrator、CharacterRuntime、DPAPI |\n| **Pet \u002F Chat \u002F Settings \u002F Bubble** | 四窗口 MPA；Pet 用 Canvas + Worker 跑 SpriteProgram |\n| **packages\u002F** | 协议、提示词、渲染运行时与图集工具 — 与 Electron 外壳分离 |\n\n一个角色 = **`CharacterBundle = { card, sprite, runtime }`**（见 `packages\u002Fcharacter-protocol`）。\n\n| 部分 | 作用 |\n| --- | --- |\n| **CharacterCard** | 人格：心智模型、启发式、表达 DNA |\n| **SpriteProgram** | 形象：DSL JSON 或 hatch-pet atlas |\n| **RuntimeConfig** | 温度、上下文等运行参数 |\n\n**设计原则**：协议优先（变更须升 `schemaVersion`）；Sprite 在 Worker 沙箱执行；零云服务前提。\n\n### 验证脚本\n\n先构建主进程与 packages 产物，再运行（均不启动 Electron）：\n\n```bash\npnpm build\n```\n\n**核心 smoke（改 atlas \u002F sprite \u002F adapter 后建议跑）：**\n\n```bash\nnode scripts\u002Fverify\u002Fverify-hatch-pet.mjs          # atlas 裁帧 \u002F 拼图 \u002F schema\nnode scripts\u002Fverify\u002Fverify-sprite-builder.mjs     # sprite-builder + schema\nnode scripts\u002Fverify\u002Fverify-llm-multimodal.mjs     # 多模态请求体（mock fetch）\nnode scripts\u002Fverify\u002Fverify-starters.mjs             # starter \u002F 程序化 sprite 质量门槛\n```\n\n**更多离线回归：**\n\n```bash\nnode scripts\u002Fverify\u002Fverify-character-names.mjs\nnode scripts\u002Fverify\u002Fverify-character-quote.mjs\nnode scripts\u002Fverify\u002Fverify-merge-research.mjs\nnode scripts\u002Fverify\u002Fverify-profile-extraction.mjs\nnode scripts\u002Fverify\u002Fverify-web-search-strictness.mjs\nnode scripts\u002Fverify\u002Fverify-pet-window-bounds.mjs\nnode scripts\u002Fverify\u002Fverify-pet-clamp-stability.mjs\nnode scripts\u002Fverify\u002Fverify-chat-turn-delete.mjs\nnode scripts\u002Fverify\u002Fverify-segment-buffer.mjs\nnode scripts\u002Fverify\u002Fverify-create-pipeline-fallback.mjs   # 1–3 步离线；第 4 步生图需 .env.dev（可跳过）\n```\n\n`verify-hatch-pet` 会在 `.smoke-out\u002F` 写出样例 PNG（已 gitignore，可删）。\n\n无障碍自动扫描（需 `pnpm dev` 已启动）：\n\n```bash\ncd apps\u002Fdesktop\npnpm add -D puppeteer axe-core   # 首次\nnode .\u002Fscripts\u002Fa11y-scan.mjs\n```\n\n### 数据目录\n\n```\n%APPDATA%\u002FBailin\u002F\n├── vault.db\n└── research\u002F\u003CcharId>\u002F    # 深度蒸馏调研存档\n```\n\n\u003C\u002Fdetails>\n\n---\n\n## 路线图\n\n| 阶段 | 主题 | 代表能力 |\n| --- | --- | --- |\n| **v0.x**（现在） | MVP 闭环 | 快速造人、桌宠、本地记忆、Windows、自带 Key |\n| **v1.0** | 体验提升 | 深度造人完善、对话 UX、自动更新（opt-in） |\n| **v1.1** | 多角色 | 多只桌宠同时在桌 |\n| **v1.2+** | 养成 \u002F 陪伴 | 关系记忆、主动气泡增强 |\n| **v2.0+** | 平台化 | `.bailin` 角色包（仅原创 \u002F 公域） |\n| **v3.0+** | 跨端 | macOS \u002F Linux、移动端伴侣 |\n\n---\n\n## 参与贡献\n\n仓库处于早期 **v0.0.1**，欢迎：\n\n- 像素 sprite 风格 \u002F 调色板扩展\n- 新的 perspective skill（**仅原创 \u002F 公共领域人物**）\n- Bug fix（附复现步骤 + 系统环境）\n- 文档 \u002F 翻译\n\n请遵守 [免责声明](#免责声明)；**含他人 IP 角色素材的 PR 一律不予合并**。\n\n---\n\n## Star History\n\n\u003Ca href=\"https:\u002F\u002Fwww.star-history.com\u002F?repos=WINDGAND%2FBailin&type=date&legend=top-left\">\n \u003Cpicture>\n   \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=WINDGAND\u002FBailin&type=date&theme=dark&legend=top-left\" \u002F>\n   \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=WINDGAND\u002FBailin&type=date&legend=top-left\" \u002F>\n   \u003Cimg alt=\"Star History Chart\" src=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=WINDGAND\u002FBailin&type=date&legend=top-left\" \u002F>\n \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n---\n\n\u003Cp align=\"center\">\n  \u003Csub>桌面上的百变魂灵 · MIT 开源 · 不收一分订阅\u003C\u002Fsub>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\u003Csub>文档最后审阅：2026-06-22\u003C\u002Fsub>\u003C\u002Fp>\n","百灵 Bailin 是一个开源的本地化 Windows 桌面 AI 角色伴侣，支持快速（约60秒）或深度构建具备独立心智模型与像素形象的视角型 AI 桌宠。核心功能包括本地运行、透明置顶像素桌宠、Ctrl+Shift+P 快捷唤起视角对话、基于用户画像的本地记忆、智能截图 whisper 及 API Key 本地加密管理。所有 LLM 调用依赖用户自配 OpenAI\u002FAnthropic 等兼容接口，全程离线处理敏感数据。适用于写作卡点时获取结构化建议、决策前进行多角度思辨、或日常轻量陪伴等办公与个人场景。",2,"2026-07-08 04:29:55","CREATED_QUERY"]