热爱技术,追求卓越
不断求索,精益求精

CowAgent 全攻略:桌面版开箱即用 + Docker 服务器部署 + 记忆/知识库/定时任务全解析

最近花了几天时间,在自己的云服务器上用 Docker 部署了一套 CowAgent,绑定微信当私人助理用,顺便拿它管知识库、写日记、定时提醒。用下来体验不错,成本也可控。

写这篇之前先说个重要发现:CowAgent 现在有桌面版了,macOS 和 Windows 都能直接下载安装,开箱即用——不用装 Python,不用碰命令行。所以这篇我分成两条路线写:

  • 想省事 → 走第一部分,桌面版,10 分钟能用上
  • 想 7×24 跑在服务器 / 接微信 → 跳到第二部分,Docker 部署

两条路线装的是同一个东西,能力完全一致,只是运行位置不同。

一句话结论:CowAgent 不是”聊天机器人”,而是一个能主动规划任务、操作计算机、自己创建技能、还带长期记忆的个人 AI Agent。个人用桌面版最舒服,团队/服务器用命令行部署更灵活。


一、桌面版:下载即用(推荐先试这个)

为什么推荐先试桌面版

官方文档原话是:“内置 Agent 运行环境,不需要手动安装 Python 或依赖,下载安装即可运行你的本地超级 AI 助理。”

它和命令行部署最大的差别:

桌面版 命令行部署
上手难度 下载 → 安装 → 用 要懂 Docker 或命令行
运行位置 你自己的电脑 服务器 / 本机
适合场景 个人日常使用 7×24 长跑、深度定制
更新 内置自动更新,一键升级 cow update
数据 配置 ~/.cow,工作区 ~/cow 同左(Docker 挂载到宿主机)

下载安装

下载页:https://cowagent.ai/download/

macOS
1. 打开下载页,按芯片选版本 —— Apple Silicon(M1/M2/M3/M4)下 arm64,Intel 下 x64
2. 打开 .dmg,把 CowAgent 拖进 Applications
3. 从启动台或 Applications 启动

Windows
1. 下载 Windows 安装包(.exe),要求 Windows 10/11 x64
2. 运行安装程序,按提示走(可以自选安装目录)
3. 从桌面或开始菜单启动

安装完第一次打开会有引导流程,界面语言跟随系统,也支持手动切换。

桌面版独有的几个好功能

  • 语音输入:聊天框里有个语音按钮,说完直接转成文字发出去(v2.1.7 新增)
  • 任务通知:Agent 跑完长任务会弹系统通知 + 提示音,你可以走开干别的
  • 扫码接通道:在 App 里直接扫码就能接微信等通道,不用改配置文件
  • 可视化配置:配置、模型、知识库、定时任务、技能、记忆,都有原生界面,和 Web 控制台一致
  • 登录自启:系统设置里可开(默认关)
  • 日志下载:出问题可以直接在界面里下载运行日志

一个实用小技巧:用浏览器打开

桌面客户端启动后会在本地监听 9876 端口,它的后端就是同一个 Web 控制台。所以客户端开着的时候,你也可以直接用浏览器打开:

http://localhost:9876

体验完全一样。手机上如果想用,把电脑当跳板或者直接部署到服务器更合适。

💡 如果 9876 端口被占(Windows 上常见于 Hyper-V/WSL2 预留端口段),客户端会自动换一个端口,正常启动。实际用的端口写在 run.logLocal access 那行。想固定的话,在 config.json 里设 web_port

数据存在哪

桌面版所有数据都在你本机,两个目录:

  • 配置目录~/.cow(家目录下),存 config.json(模型 Key、通道配置)、日志、缓存
  • 工作区:默认 ~/cow,存对话记录、知识库、记忆、技能、定时任务

⚠️ 卸载客户端不会删这两个目录,数据会保留,重装后还在。想彻底清理或迁移到别的设备,自己手动备份/删除对应文件夹。


二、Docker 部署:7×24 跑在服务器上

桌面版够个人用了,但如果你想要:手机上随时用、接微信、或者让它一直在线干活,那就得部署到服务器。我选的是 Docker。

部署前要知道的 3 件事

1. 环境要求

项目 要求
操作系统 Linux / macOS / Windows
Python(源码部署) 3.7 ~ 3.13,官方推荐 3.9
Docker Docker + docker-compose
GPU 不需要。模型都是调云端 API
磁盘 可选装浏览器工具多占约 300MB(Playwright + Chromium),不需要可跳过

官方文档没有给出 CPU / 内存的具体推荐值,只说可以跑在个人电脑或服务器上 7×24 运行。我自己的机器是 2 核 4G 的轻量云服务器,跑起来毫无压力——因为真正的算力都在云端模型那边,本地只是个”调度中枢”。

2. 三种部署方式怎么选

方式 适合谁 特点
一键脚本 想最快跑起来 自动装依赖、clone、配置、启动,最省事
Docker 服务器部署(我选的) 环境干净、数据可持久化、升级不怕丢数据
源码 要深度改造 官方原话:Agent 模式下更推荐源码部署,能获得更多系统访问能力

3. 成本预期

先说结论:便宜,但 Agent 模式比普通聊天费 token。官方 README 有一句免责声明原文:

Agent mode consumes substantially more tokens than regular chat — pick models that balance quality and cost.

我实测:用 DeepSeek,一整天高频对话下来,花费两块多。这个量级对个人使用基本无感。

Step 1:拉取 compose 文件

curl -O https://cdn.link-ai.tech/code/cow/docker-compose.yml

这个 compose 文件里有两个 volume 挂载,是整个部署最关键的地方,务必理解:

宿主机目录 容器内路径 存什么
./cow /home/agent/cow 工作区:技能、记忆、知识库、mcp.json、会话产物
./cow-data /home/agent/.cow 数据目录config.json、运行日志、通道凭据

💡 官方把这两个目录刻意分开,是为了镜像升级时不丢数据。你的知识库、记忆、配置全在宿主机上,容器随时可以删掉重建。这两个目录默认创建在 docker-compose.yml 旁边,别删

Step 2:填配置

编辑 docker-compose.yml,核心配置项如下(逐个解释):

environment:
  # ---- 渠道 ----
  CHANNEL_TYPE: 'web, weixin'        # 同时开 Web 控制台和微信
  # ---- 模型 ----
  MODEL: 'deepseek-v4-flash'
  DEEPSEEK_API_KEY: 'sk-xxxxxxxx'
  DEEPSEEK_API_BASE: 'https://api.deepseek.com/v1'
  # ---- Web 控制台 ----
  WEB_HOST: '0.0.0.0'                # 关键!默认 127.0.0.1 只能本机访问
  WEB_PASSWORD: '你的访问密码'         # 公网必须设,否则谁都能进
  # ---- Agent 能力 ----
  AGENT: 'True'
  AGENT_PERMISSION_MODE: 'full-access'
  AGENT_MAX_CONTEXT_TOKENS: 50000
  AGENT_MAX_CONTEXT_TURNS: 20
  AGENT_MAX_STEPS: 20
  SELF_EVOLUTION_ENABLED: 'True'      # 自进化:Agent 会自己改进
  # ---- 数据目录 ----
  COW_DATA_DIR: '/home/agent/.cow'

两个必改项

  1. DEEPSEEK_API_KEY —— 去 platform.deepseek.com 申请,充点钱就行
  2. WEB_HOST127.0.0.1 改成 0.0.0.0,并务必设 WEB_PASSWORD

⚠️ 安全提醒WEB_HOST=0.0.0.0 意味着暴露到公网。如果你不设密码,等于把一台能执行命令的机器敞开给人用。官方文档原话是”强烈建议设置 web_password 启用鉴权”。

Step 3:启动

sudo docker compose up -d
sudo docker logs -f chatgpt-on-wechat

看到启动日志正常,浏览器打开 http://你的服务器IP:9899 就能进控制台。

⚠️ 别忘了在云服务商的安全组和服务器防火墙里放行 9899 端口,否则打不开。更稳妥的做法是只对你的 IP 开放。

Step 4(可选):绑定域名 + 反向代理

我的做法是用子域名 i.lovecto.cn 解析到服务器,再配一层 Nginx 反代,这样访问更顺手、也方便上 HTTPS。

注意:官方文档里没有用于 CowAgent 的 Nginx 反代配置示例(只在功能描述里提过 Agent 能”配置 Nginx”)。下面是我的配置,属于社区实践,供参考:

server {
    listen 443 ssl http2;
    server_name i.lovecto.cn;

    ssl_certificate     /etc/nginx/ssl/fullchain.pem;
    ssl_certificate_key /etc/nginx/ssl/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:9899;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 600s;   # Agent 任务耗时长,这个务必加大
    }
}

配好之后,就能随时随地用 https://i.lovecto.cn 访问了,手机浏览器也能用,很方便。


三、绑定微信(重点:先看风险)

这一步是 CowAgent 最吸引人的功能,也是最容易出事的功能。

绑定方式

方式 A(推荐):Web 控制台 → Channels → Connect Channel → 选 WeChat → 扫码
方式 Bconfig.json 里设 {"channel_type": "weixin"},启动后终端会出二维码

要点:

  • 微信客户端要求 ≥ 8.0.69
  • 二维码约 2 分钟有效,过期自动刷新
  • 凭据持久化在 ~/.weixin_cow_credentials.json,重启会复用,不用反复扫码
  • 会话过期(errcode -14)时会自动清掉旧凭据、重新弹二维码,不用手动干预
  • 登录后通讯录会多出一个机器人(可搜”微信ClawBot”),支持 1 对 1 收发文字/图片/文件/视频,语音只能收(内置识别),不支持群聊
  • 走的是官方 API,不需要公网 IP

⚠️ 但是,微信这条路有封号风险

官方文档说”走官方 API,安全使用”,但 GitHub Issues 里能看到另一面,必须如实告诉你:

  • Issue #2460「微信登录成功后立刻被踢下线」,官方明确回复:“暂时请勿尝试接入 wx 通道,请使用公众号、飞书等其他通道”
  • Issue #1788:1 天后个人微信自动断开,需要重新扫码
  • Discussions 里有一条更直接的反馈:「docker 部署后,扫码直接就被腾讯识别外挂封号了」

我的建议

  • 服务器上这台,我实际用的是「Web 控制台 + 微信」,微信通道我会用小号,绝不用主力号
  • 如果只是自己用,Web 控制台完全够——手机浏览器打开就是移动端体验,不折腾微信更省心
  • 要给团队/客户用,走公众号或飞书通道,稳得多

四、真正让它好用的三件事:记忆、知识库、定时任务

装完只是”能用”,下面这三个机制才是”好用”的关键。

① 三层记忆 —— 它会记住你

层级 文件 内容
核心记忆 ~/cow/MEMORY.md 长期偏好、重要决策、关键事实(每次对话都注入)
日级记忆 ~/cow/memory/YYYY-MM-DD.md 每天的对话摘要和关键事件
梦境日记 ~/cow/memory/dreams/YYYY-MM-DD.md 记忆蒸馏过程的副产品

记忆是自动写入的,不需要你手动维护,触发时机有三个:

  • 对话上下文被裁剪时,被丢弃的内容由 LLM 总结写入日级记忆
  • 每天 23:55 自动做一次全天总结
  • 模型 API 上下文溢出时紧急保存

更妙的是 Deep Dream(记忆蒸馏):每天总结完成后自动运行,把零散的日级记忆”蒸馏”进 MEMORY.md,去重、合并、剪枝,还会生成一篇梦境日记记录它整理时发现的洞察。

刚部署完可以手动触发一次,把历史全量蒸馏:

/memory dream 30

(参数是最近 N 天,默认 3,最大 30。也可以在配置里用 deep_dream_enabled 单独开关。)

💡 检索用的是混合检索:向量语义 0.7 + 关键词 BM25 0.3。日级记忆有 30 天半衰期,会自然淡出;核心记忆不衰减。

② 知识库 —— 它帮你整理资料

记忆是”按时间线”的流水账,知识库是”按主题”的结构化档案。区别在这:

知识库 knowledge/ 记忆 memory/
组织方式 按主题,互相链接 按时间线,按日期分文件
写入方式 Agent 主动结构化 上下文裁剪时自动总结
内容性质 精炼的知识 原始对话摘要
典型场景 学习笔记、技术文档、项目知识 对话历史、事件记录

用起来很简单:你丢一篇文章链接给它说”存一下”,它会自动提取要点、分类、打标签、写进知识库并建立交叉引用。目录结构是灵活的(默认 concepts/entities/sources/,可自定义)。

控制台里的「知识」模块还能可视化知识图谱,看页面之间的关联,挺直观。

💡 v2.1.3 起,知识库支持在建面里直接新建/导入文档,索引会根据实际目录树自动重建(以前会出现索引漂移、文档丢失的问题);向量化也统一走了同一个 embedding provider,是真正的语义向量,不再退化成关键词搜索。

③ 定时任务 —— 每天自动给你干活

这是我用得最多的功能。创建任务直接用自然语言说就行:

"每天早上 9 点给我发一份天气报告"
"每 2 小时检查一次服务器状态"
"明天下午 3 点提醒我开会"

支持三种调度模式:一次性、固定间隔、Cron 表达式。

两个细节值得注意:

  • 定时任务跑在隔离会话里,内部规划过程不会污染你的聊天,但最终结果会写回你的真实会话——所以你可以接着问”上一条第 2 点再展开讲讲”
  • 每个会话默认只保留最近 3 对定时任务消息,更旧的自动清理,不会刷屏

五、Skill 机制:让它自己长本事

CowAgent 的技能(Skill)本质上是一份”说明书 + 脚本”的封装。安装方式统一:

# 聊天里用
/skill install pptx
/skill list --remote          # 看市场里有什么
/skill info <name>            # 看详情
/skill enable|disable|uninstall <name>

安装来源支持四种:

  • Skill Hub/skill install pptx
  • GitHub/skill install larksuite/cli 或直接给 GitHub 目录 URL
  • ClawHub / LinkAI/skill install clawhub:<name>
  • 任意 URL(zip 或 SKILL.md):/skill install https://xxx/pptx.zip

内置了三个:skill-creator(对话式造技能)、knowledge-wiki(维护知识库)、image-generation(生成图片)。

💡 一个提醒:Skill 只是”说明书 + 脚本”,它不能凭空变出 API 能力。比如你想让它配图,前提是你得先配好某个图像模型的 API Key。


六、说点实话:它的问题和边界

关于多用户隔离,比一年前好多了

早期版本有个明显痛点:多人共用一个 Agent 时,记忆和知识库是全部共享的,谁都能看到谁的内容。

好消息是 v2.1.7(2026.08.20) 补上了一块关键能力——多工作区 + 会话级权限模式

  • Agent 不再绑死在一个目录,你可以建多个项目工作区,每个会话绑定自己的工作区(Web 控制台和桌面版都支持)
  • 每个会话有独立的权限等级:只读 / 工作区可写 / 完全访问,默认模式也可设
  • 会话按工作区分组,支持置顶、重命名、删除

但要说清楚:记忆、技能、知识库仍然共享在系统工作区(默认 ~/cow)里。所以现在的隔离是”工作区 + 权限”层面,不是”记忆/知识库”层面的完全隔离。

官方 README 里把 “workspaces / 角色权限 / 审计日志” 列为企业版付费能力,也说明开源版在权限治理上仍有边界。

我的结论

  • 个人自用 ✅ 完全够,桌面版一装就能用
  • 想要工作区/权限隔离 ✅ 现在可以做到,多开几个会话就行
  • 记忆和知识库也彻底互不可见 → 还是得每人单独部署一套,或者等它出 SaaS/企业版

界面门槛比想象中低

我之前以为这东西只适合程序员,其实桌面版把门槛降得很低——GUI、开箱即用、自动更新、扫码接通道。命令行部署那套才需要技术基础。

GitHub Discussions 里确实有人问”为什么一直提示 permission denied”、”如何在目录下执行命令”,但那大多是命令行部署的同志。用桌面版基本碰不到。

官方文档有几处数据打架

比如 agent_max_context_tokens 这个默认值,模板文件写 64000,手动安装文档写 40000,记忆文档写 50000;agent_max_steps 模板写 30、文档写 15。以你项目里实际的 config.py 为准,别死磕文档。

那到底适合谁?

适合 不适合
人群 所有人——桌面版零门槛;服务器部署适合有 Docker 基础的人 ——
场景 个人助理、知识库、日记、自动化任务 需要记忆/知识库级严格隔离的团队
渠道 Web 控制台、飞书、公众号、Telegram 拿个人主力微信做机器人
成本 能接受每天几块钱的 API 费用 想零成本白嫖(本地模型另说)

七、常用命令速查

# 进程管理
cow start / stop / restart
cow status          # 看状态
cow logs            # 看日志
cow update          # 升级
cow install-browser # 装浏览器工具(约 300MB)

# 没装 CLI 时的兜底
./run.sh <command>

# 对话内命令
/skill list --remote       # 看技能市场
/memory dream 30           # 蒸馏最近 30 天记忆
/context                   # 看上下文占用
/compact                   # 手动压缩上下文
/clear                     # 清空上下文
/knowledge list            # 看知识库目录
/config agent_max_steps 50 # 在线改配置

写在最后

CowAgent 给我的感觉是:它是目前开源里”个人 Agent”完成度很高的一个——记忆、知识库、技能、定时任务、多渠道,一套齐活;而且桌面版让它从”程序员玩具”变成了”普通人也能用的工具”。

但它也清楚自己的边界:单机、单人为主,记忆层级的严格隔离要上企业版。想拿它做团队协作平台,现在还不是时候。

如果你也对 AI Agent 感兴趣,最省事的路径是:先去下载桌面版玩十分钟,觉得有意思了,再考虑搬到服务器上 7×24 跑。

装的时候记得:微信用小号,密码一定要设

有问题欢迎评论区交流。


参考与来源:

  • CowAgent 官方仓库:https://github.com/zhayujie/CowAgent
  • 官方文档:https://docs.cowagent.ai/
  • 桌面版下载:https://cowagent.ai/download/
  • 官方 docker-compose:https://cdn.link-ai.tech/code/cow/docker-compose.yml
  • 微信通道及封号相关 Issue:#2460、#1788
赞(0)

热爱技术 追求卓越 精益求精

登录

找回密码

注册