Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

菜鸡Bot Logo

菜鸡Bot · 个人 AI 助手

跑在自己设备上、用微信指挥的私人助理

日程看板 · 支付宝/微信账单记账 · 美音英语陪练 · 定时抓取同步 · DeepSeek 驱动 · 一键自更新

CI License MIT Node 22+ pnpm TypeScript DeepSeek macOS 15+ Last commit

快速安装 · macOS 完整部署 · 功能 · 架构 · Skills · 更新 · 故障排查 · 上游文档

Important

本项目是 OpenClaw(MIT)的个人定制版。内部标识刻意保持与上游一致——npm 包名 openclaw、状态目录 ~/.openclaw、环境变量前缀 OPENCLAW_*、插件协议——这样腾讯官方微信插件和整个官方插件生态都能直接装。换掉的只有用户看得见的部分:名称、logo、CLI banner、Web UI、macOS App。上游文档 docs.openclaw.ai 对本项目同样适用。


快速安装(另一台电脑照这个来)

0. 前置

依赖 版本 安装
Node.js 22.22.3+ / 24.15+ / 25.9+ macOS brew install node;Windows 官网安装包
pnpm 10+ npm i -g pnpm
git 任意 macOS 自带;Windows 装 Git for Windows
Xcode 命令行工具 仅 macOS App 需要 xcode-select --install

检查:

node -v && pnpm -v && git --version

1. 拉代码、装依赖、构建

git clone https://github.com/SuperGokou/personalclaw.git
cd personalclaw
pnpm install
pnpm build

首次构建约 2–3 分钟。

2. 填密钥(.env,永不入库)

在仓库根目录新建 .env

# 必填:DeepSeek API key(https://platform.deepseek.com)
DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxxxx

# 选填:启用 junanex 定时同步时才需要
JUNANEX_USERNAME=你的junanex账号
JUNANEX_PASSWORD=你的junanex密码

Warning

.env 已在 .gitignore 中。任何密钥都不要写进 openclaw.json、skills 或提交信息里。

3. 初始化

node openclaw.mjs onboard --install-daemon

向导里:

  • 模型选 DeepSeek API key(自动读取 .env),默认模型 deepseek/deepseek-v4-flash
  • 助手名字填 菜鸡Bot(写进工作区 IDENTITY.md,决定它怎么自称)
  • --install-daemon 注册后台服务,开机自启(macOS launchd)

4. 应用推荐配置

config/caiji-bot.example.json5 里的片段合并进 ~/.openclaw/openclaw.json,然后重启:

node openclaw.mjs gateway restart
node openclaw.mjs gateway status

5. 打开控制台

node openclaw.mjs dashboard      # 浏览器打开 http://localhost:18789

到这里 CLI + Web 控制台已经能用了。微信、看板、桌面 App 按下面的章节继续。


功能一览

功能 怎么用 实现
📅 日程管理 微信说「明天下午3点开会」→ 自动建卡 + 到点提醒 skills/schedule-assistant + workboard 看板 + cron
💰 记账 把支付宝/微信官方账单 CSV 发给它 → 自动解析分类去重,出月报 skills/bookkeeping,账本存 ~/.openclaw/ledger/
🗣️ 英语陪练 说「陪我练英语」→ 美音语音对话 + 纠错 + 地道表达 skills/english-tutor + Edge TTS en-US-AriaNeural
📦 junanex 同步 定时抓账户数据 → 推到 shuangshuangstore 的 dashboard 分支 skills/junanex-sync + 浏览器工具
⬆️ 自更新 微信发「更新」或跑 openclaw update,带进度条 skills/self-update
📲 微信远程控制 手机扫码登录,随时随地发指令 腾讯官方插件 @tencent-weixin/openclaw-weixin
🧠 DeepSeek 驱动 默认 deepseek/deepseek-v4-flash(快且便宜) OpenAI 兼容接口,可随时切 pro
🖥️ 桌面 App /Applications 里双击菜鸡Bot 图标 Swift 原生菜单栏 + Dock 应用

系统架构

flowchart LR
    WeChat["微信(手机)"]
    Browser["Control UI<br/>localhost:18789"]
    MacApp["菜鸡Bot.app<br/>Dock · 菜单栏 · 快速聊天"]
    CLI["openclaw CLI"]

    subgraph GW["Gateway(本机常驻服务)"]
        Channels["Channels<br/>微信 · WebChat"]
        Agent["Agent Loop<br/>会话 · 工具 · 记忆"]
        Cron["Cron 调度器<br/>提醒 · 定时任务"]
        Skills["Skills<br/>日程 · 记账 · 陪练 · 同步 · 更新"]
        Channels --> Agent
        Cron --> Agent
        Agent --> Skills
    end

    DeepSeek["DeepSeek V4 Flash<br/>OpenAI 兼容"]
    TTS["Edge Neural TTS<br/>en-US-AriaNeural"]
    Board[("Workboard 看板<br/>~/.openclaw")]
    Ledger[("账本 JSONL<br/>~/.openclaw/ledger")]
    Junanex["junanex.com"]
    GitRepo["shuangshuangstore<br/>feature/junanex-dashboard"]

    WeChat <-->|"扫码登录 · 私聊"| Channels
    Browser <-->|"WebSocket"| GW
    MacApp <--> GW
    CLI --> GW
    Agent -->|"推理"| DeepSeek
    Agent -->|"语音条"| TTS
    Skills --> Board
    Skills --> Ledger
    Skills -->|"浏览器抓取"| Junanex
    Skills -->|"commit + push"| GitRepo
Loading

一条微信消息的旅程

sequenceDiagram
    autonumber
    participant U as 你(微信)
    participant C as 微信 Channel
    participant A as Agent
    participant M as DeepSeek
    participant S as Skill
    participant K as Cron / 看板

    U->>C: 「明天下午3点开会」
    C->>A: 入站消息(视为不可信输入)
    A->>M: 带上下文与可用工具推理
    M-->>A: 选定 schedule-assistant
    A->>S: 解析时间、事项
    S->>K: 建看板卡片 + 注册提醒任务
    S-->>A: 执行结果
    A-->>C: 「已记下:明天 15:00 开会,14:30 提醒你」
    C-->>U: 微信回复
    Note over K: 次日 14:30 触发
    K->>A: 提醒任务到点
    A-->>U: 主动微信推送提醒
Loading

微信接入

node openclaw.mjs plugins install "@tencent-weixin/openclaw-weixin"
node openclaw.mjs channels login --channel openclaw-weixin

手机微信扫码即可。

Note

该插件由腾讯维护,走 iLink API:只支持私聊,不支持群聊。登录 token 存在 ~/.openclaw,不要把这台机器的状态目录同步给别人。陌生发信人默认需要审批:node openclaw.mjs pairing approve openclaw-weixin <code>

日程看板

node openclaw.mjs plugins enable workboard
node openclaw.mjs gateway restart

Control UI 左侧出现 Kanban 看板,状态流 triage → todo → scheduled → running → done

桌面 App(macOS)

bash scripts/install-caiji-mac-app.sh

编译并安装到 /Applications/CaijiBot.app。Finder、Dock、Spotlight 里显示为菜鸡Bot(图标就是上面那只小菜鸡):

  • 双击图标启动,Dock 出现图标,点击打开主窗口
  • 菜单栏常驻图标,⌥ Space 唤出快速聊天
  • 首次启动会依次询问通知/麦克风/屏幕录制权限,按需允许

Note

App 内的 Sparkle 自动更新已关闭——上游的更新源会把菜鸡Bot 覆盖成原版 OpenClaw。App 与 Gateway 的更新统一走 openclaw update


Skills(自定义能力)

Skills 是 markdown 目录(SKILL.md + 可选脚本),与 Claude Code skills 同构,放在 skills/ 下:

Skill 触发词 说明
schedule-assistant 明天…开会 / 提醒我 / 今天有什么安排 建卡、定提醒、查日程
bookkeeping 记账 / 导入账单 / 本月花了多少 账单解析入账与月报
english-tutor 陪我练英语 / English practice 美音语音陪练
junanex-sync 同步 junanex / 定时任务 抓数据并推送分支
self-update 更新 / 升级 后台跑更新并回报结果

记账账单自测(不依赖真实数据):

node skills/bookkeeping/scripts/ledger.mjs self-test

账单从哪导出:

  • 支付宝:App → 我的 → 账单 → 右上角 … → 开具交易流水证明 → 用于个人对账(邮箱收 CSV)
  • 微信:我 → 服务 → 钱包 → 账单 → 常见问题 → 下载账单 → 用于个人对账(邮箱收带密码 zip)

更新

node openclaw.mjs update

git 模式更新,分步带进度条:

[████████░░░░░░░░░░░░] 4/10 40%  ✓ Installing dependencies (12.4s)

拉本仓库 main → 装依赖 → 构建 → doctor 自检 → 重启 gateway;任何一步失败自动回滚。也可以直接在微信里说「更新」。


目录结构

personalclaw/
├── src/                 # Gateway 核心:channels / agents / cron / tools / cli
├── ui/                  # Control UI(Vite + Lit)
├── extensions/          # 官方插件(deepseek、workboard、browser、tts…)
├── skills/              # 技能,含本项目自定义的 5 个
├── apps/macos/          # macOS 原生 App(Swift)
├── config/              # 配置示例
├── scripts/             # 构建与打包脚本(含 install-caiji-mac-app.sh)
├── SETUP-MAC.md         # macOS 完整部署手册
└── .env                 # 你的密钥(不入库)

故障排查

node openclaw.mjs doctor            # 全面自检 + 自动修复
node openclaw.mjs gateway status    # 服务状态
node openclaw.mjs channels status   # 微信等渠道状态
node openclaw.mjs update status     # 当前版本与可用更新
症状 处理
pnpm install 报 Node 版本 升级到 Node 22.22.3+ / 24.15+ / 25.9+
构建失败 pnpm store prune && rm -rf node_modules && pnpm install
控制台打不开 node openclaw.mjs gateway restart,确认 18789 端口没被占用
微信掉线 重新扫码:node openclaw.mjs channels login --channel openclaw-weixin
模型报错 检查 .envDEEPSEEK_API_KEY,再 node openclaw.mjs doctor
没有语音回复 node openclaw.mjs tts status,确认 provider 是 microsoft

安全

  • 所有入站消息按不可信输入处理;未知发信人默认需要配对审批
  • 密钥只走 .env / 系统环境变量,绝不入库
  • 工具默认在本机执行;对外暴露 Gateway 前请先读上游安全指南

License

MIT。原始版权归 OpenClaw Foundation,见 LICENSETHIRD_PARTY_NOTICES.md

About

No description, website, or topics provided.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages