Skip to content

wynxing/NeoCompanion

Repository files navigation

NeoCompanion

Status Version License

一个融入桌面的 AI 助手——状态融入壁纸,轻交互近在手边,编辑留给面板。


为什么做 NeoCompanion

市面上的效率工具,要么太冷,要么太吵。

太冷——番茄钟和待办应用是冰冷的数字看板。它们记录你做了什么,但不会在意你做得怎样。完不成任务只会看到红色逾期标记,没有鼓励,没有节奏感。

太吵——AI 陪伴产品以娱乐为导向,主动找你聊天、推送内容、索要关注。它们需要你"打开"才能开始,关掉就消失,存在感为零。

NeoCompanion 的回答:做一个温感效率工具——用轻量打扰的方式监督学习,用正反馈的方式维持节奏,用持续在场的方式建立信任。不是冰冷的看板,也不是话多的玩伴,而是一个懂分寸的搭档


它做什么

NeoCompanion 的界面分为三层,各司其职:

┌───────────────────────────────────────────────────┐
│  用户应用窗口 (VS Code, 浏览器等)                    │  ← 最高层
├───────────────────────────────────────────────────┤
│  悬浮层:助手形象 · 语音气泡 · Hook 角标             │  ← 交互入口
├───────────────────────────────────────────────────┤
│  桌面图标层                                        │  ← 系统层
├───────────────────────────────────────────────────┤
│  壁纸层:天气时间 · 任务进度 · 专注主控盘 · 助手寄语  │  ← 状态画布 + 轻交互
├───────────────────────────────────────────────────┤
│  原始壁纸                                          │  ← 最底层
└───────────────────────────────────────────────────┘
                                              按需弹出 → 面板层:任务管理 · AI 对话 · 设置 · Hook 审批
做什么 不做什么
壁纸层 天气、时间、任务进度、专注主控盘——回到桌面一瞥即知,轻交互近在手边 不编辑、不输入、不常驻弹窗
悬浮层 助手形象、语音反馈、Hook 角标通知——所有交互的入口 不编辑、不弹大面板
面板层 任务管理、AI 对话、设置配置、Hook 审批——按需弹出 不常驻、不遮挡

这意味着:

  • 零操作感知——你不需要"打开"任何东西就能知道专注了多久、还有什么任务没做。壁纸就是你的仪表盘。
  • 就近轻交互——专注计时、任务跳转,在壁纸层点击即可,不用切窗口。复杂操作仍走助手或面板。
  • 一触即达交互——番茄钟、待办勾选、AI 对话,点助手即可,不用切窗口。
  • 不在桌面也在——助手以 Hook 角标(类似手机 App 红点)提醒你有编译结果、服务器状态待处理,不打断你的工作流。

核心特性

🎭 可配置的助手人设

soul.md 让你定义助手是谁、怎么说话、怎么反馈。默认温和专业,你可以调成更轻松、更简洁、甚至更话唠的风格。贴心但不过分亲密。

# soul.md(用户可自定义,放在 ~/.NeoCompanion/soul.md)

## 你是谁
你是 NeoCompanion,一个桌面上的智能助手。你温和、专业、偶尔轻松。
你不撒娇、不卖萌、不哭闹。你像一个靠谱的搭档——话不多,但总在关键时候出现。

## 你与用户的关系
你是用户的效率和状态伙伴。你关心用户的工作节奏,但不会过度介入。

🖼️ 壁纸即仪表盘

专注主控盘、未完成任务、天气时间、助手寄语、氛围色调——全部融入壁纸背景。轻交互近在手边——点击专注盘开始/暂停、点击任务跳转面板、一键切换沉浸模式。

⏱️ 陪伴式专注

助手与你同步进入番茄钟。专注时安静陪伴,分心时温和提醒一次,完成时简短肯定。不是监督你,是陪你。

🔌 开放的 Hook 系统

你的构建脚本、CI 流水线、服务器监控,都可以通过一行命令推送到助手:

# 编译成功,助手欢呼;部署失败,助手提醒
echo '{"state":"success","description":"Build pass"}' > ~/.NeoCompanion/hooks/build.json

你的工具链有了表情。

🔒 本地优先,隐私可控

业务数据和索引默认存储在本地,不需要注册账户。窗口检测可开关,应用黑名单可配置;只有用户启用云端 Chat 或 Embedding Provider 后,对应的问答上下文或待向量化文本才会发送给该服务,并在设置中明确展示边界。


能力模型

NeoCompanion 的能力由浅入深分为四层:

+-------------------------------------------------------+
|  1. Assistant Layer (助手悬浮交互 / TTS 语音 / 壁纸状态)   |
|-------------------------------------------------------|
|  2. Routine Layer   (番茄钟 / 待办清单 / 天气 / 助手日志)  |
|-------------------------------------------------------|
|  3. Knowledge & AI  (项目 / 笔记 / 看板 / 混合检索 / AI)  |
|-------------------------------------------------------|
|  4. Hook & System   (安全 Hook API / 本地状态感知与记忆)    |
+-------------------------------------------------------+

助手交互层——2D 精灵图帧动画,桌面常驻,支持拖拽、置顶、多种动作响应。形象不一定是人物——可以是动物、机器人、抽象图形。配合 TTS 语音和状态化情绪反馈,贴心但不过分亲密。

日常琐碎陪伴层——陪伴式番茄钟、助手待办清单、天气碎碎念、助手工作日志。

知识与 AI 层——在单一本地工作空间中组织项目、Markdown 笔记、任务与看板;通过全文检索和向量检索为 AI 对话提供可核验的本地上下文。

Hook 与系统层——本地 Hook(HTTP / WebSocket 已实现;UDS / File Watcher / MQTT 规划中);浮动权限审批气泡;本地隐私感知引擎;本地长期记忆。


阶段路线

🚀 v1:助手最小闭环

桌面常驻悬浮助手的基本 2D 精灵图形态、语音 TTS 播报。助手番茄钟、待办、天气碎碎念。壁纸层 MVP(天气时间 + 专注主控盘 + 热区轻交互)。Hook 角标通知。

📚 v2:本地知识工作空间

项目、Markdown 笔记、统一任务与看板形成可用闭环。SQLite FTS5 提供本地全文搜索,sqlite-vec 提供可选向量检索;AI 回答展示可点击来源。Embedding 未配置或失败时自动降级为全文搜索。通用 Hook API 与权限审批能力继续独立演进。

🧠 v3:知识增强的长期陪伴

增加本地文件夹同步、多格式导入和本地 embedding 模型;将用户主动维护的知识与助手长期记忆分开治理,并在明确授权下形成有来源、可追溯的个性化交互。


技术栈

技术
桌面运行时 Tauri v2 (Rust)
前端 UI Vue 3 + Vite + Pinia + TanStack Query
本地服务 Fastify (TypeScript Sidecar)
数据库 SQLite (node:sqlite + FTS5 + sqlite-vec)
AI 聊天模型适配器 + OpenAI-compatible Embedding Adapter

架构核心:Tauri (Rust) 提供系统级能力与系统钥匙链 → Fastify (TypeScript) 处理业务逻辑、知识索引与 AI 调度 → Vue 提供 UI → SQLite 统一存储业务数据。知识工作空间已接入 FTS5 全文索引、可选 sqlite-vec 混合检索、文件镜像与带来源的 RAG。

详见 系统架构设计


项目文档

文档 说明
具体能力构思 核心产品规划与详细设计说明
产品需求文档 系统能力边界、多层能力模型定义
系统架构设计 Tauri + Fastify + Vue 多端通信、数据流、Hook 审批架构
壁纸层状态显示 WorkerW 嵌入方案、壁纸组件设计、三层职责划分
助手人设配置 soul.md 文件规格、人设可配置系统、热加载机制
开发环境搭建 本地开发环境、依赖、运行命令
Sidecar API 参考 REST API 与 WebSocket 消息说明
TTS 配置指南 MiMo TTS 接入与故障排查
测试说明 测试策略与命令
术语表 项目术语与弃用词汇
已知 TODO 文档与代码不一致的待办清单
贡献指南 如何参与项目
更新日志 版本发布记录

License

MIT

About

Character for you

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors