1. 项目概述从聊天机器人到超级AI助理的蜕变如果你在2024年之前就接触过AI聊天机器人那你很可能听说过一个叫chatgpt-on-wechat的开源项目。它曾经是很多开发者和个人用户将大模型接入微信、飞书等即时通讯工具的首选方案。但如果你最近再去看会发现它已经“消失”了——取而代之的是一个名为CowAgent的全新项目。这不仅仅是换个名字那么简单而是一次从“对话机器人”到“超级AI助理”的彻底进化。我最早接触这个项目时它还只是一个简单的、基于OpenAI API的微信聊天机器人。当时觉得挺有意思能自动回复消息但也就仅此而已了。后来随着大模型能力的爆发和Agent概念的兴起我发现简单的“一问一答”已经不够用了。我需要一个能帮我规划任务、操作电脑、管理文件、甚至能自己学习新技能的“数字伙伴”。而CowAgent正是这个需求的产物。简单来说CowAgent是一个基于大模型的、开源的AI Agent框架。它最核心的转变是从一个被动的“应答机”变成了一个能主动思考、规划并执行复杂任务的“智能体”。你可以把它想象成一个24小时待命的、住在你电脑或服务器里的全能助理。它不仅能和你聊天更能理解你的意图拆解复杂指令比如“帮我整理上个月的销售数据做个图表然后发邮件给老板”然后调用各种工具读写文件、执行命令、操作浏览器去一步步完成。更重要的是它拥有“长期记忆”和“个人知识库”能记住你们之前的对话、你教给它的东西并不断学习和成长。这个项目吸引我的地方在于它的“全栈”和“轻量”。所谓“全栈”是指它几乎覆盖了一个AI助理所需的所有核心能力多模型支持国内外主流厂商几乎全包、多通道接入微信、飞书、钉钉、QQ、网页等、内置工具系统、可扩展的技能框架。而“轻量”则体现在它的部署和配置上。相比一些动辄需要Kubernetes集群的复杂Agent系统CowAgent通过一个简单的config.json文件和几条命令就能跑起来对个人开发者和中小团队非常友好。接下来我将以一个实际部署并深度使用了数月的开发者视角为你彻底拆解CowAgent。我会从它的核心架构设计讲起带你一步步完成从环境准备到高级功能调优的全过程并分享我在实际使用中踩过的坑和总结出的实战技巧。无论你是想给自己打造一个私人AI助手还是为企业内部构建一个自动化流程引擎这篇文章都能给你提供一份可靠的“操作手册”。2. 核心架构与设计思路拆解为什么CowAgent能“干活”在深入配置和实操之前我们有必要先理解CowAgent是怎么“想事情”和“做事情”的。这决定了我们后续如何更好地使用和定制它。传统的聊天机器人其工作流是线性的用户输入 - 模型生成回复 - 输出给用户。而CowAgent引入的Agent智能体模式则是一个循环的、带有“反思”和“规划”能力的决策系统。2.1 Agent模式从“应答”到“执行”的范式转变当你开启config.json中的agent: true时CowAgent就从一个聊天机器人切换到了一个任务执行引擎。它的核心工作流程可以概括为以下几步任务理解与规划收到你的指令例如“查看我桌面上的‘报告草稿.docx’总结核心观点并生成一个Markdown格式的摘要保存到‘总结’文件夹”。Agent首先会调用大模型来分析这个指令将其拆解成一系列可执行的子任务。比如a) 定位文件b) 读取内容c) 总结观点d) 格式化输出e) 创建目录如果需要f) 保存文件。工具调用与执行规划完成后Agent会检查它拥有的“工具箱”。CowAgent内置了丰富的工具如read_file读文件、write_file写文件、execute_shell执行终端命令、browse_web操作浏览器等。它会根据规划按顺序调用合适的工具。例如先调用execute_shell在终端执行ls ~/Desktop来查找文件再用read_file读取内容。观察与反思每执行完一个工具Agent都会收到工具的“执行结果”比如文件内容、命令输出。它会结合之前的对话历史和当前结果判断任务是否完成或者下一步该做什么。如果中途出错比如文件不存在它会尝试重新规划或向你请求更多信息。循环直至完成这个“规划 - 执行 - 观察 - 再规划”的循环会一直持续直到任务被标记为完成或者达到预设的最大步数agent_max_steps。实操心得理解“思考过程”在Web控制台如果你开启了enable_thinking: true就能看到模型完整的推理链。这对于调试复杂任务至关重要。你能看到Agent为什么选择某个工具它是如何解析你的模糊指令的。有一次我让它“把上个月的日志里错误最多的前三个服务找出来”它先是规划用execute_shell去统计发现不行然后转而尝试用Python写个小脚本。通过观察思考过程我才意识到我的指令在系统层面有多模糊从而学会了给出更精确的指令。2.2 记忆系统让AI拥有“上下文”和“经验”记忆是Agent区别于普通对话的核心。CowAgent实现了三层记忆结构这直接决定了它的“智商”和“情商”。核心记忆存储在SQLite数据库中。这是最高优先级的记忆包括你与Agent的关键对话、它做出的重要决策、你教给它的规则比如“我习惯把周报放在~/Documents/Weekly”。这部分记忆在每次对话时都会被优先检索和加载。日级记忆按天存储的对话日志。这相当于Agent的“日记”记录了每天发生的所有交互细节。当进行长期、跨天的任务时Agent可以翻阅这些“日记”来保持连续性。梦境蒸馏这是一个非常巧妙的设计。想象一下人睡觉时会整理白天的记忆强化重要的淡化琐碎的。“梦境蒸馏”模块会定期可配置运行使用大模型对海量的日级记忆进行总结、提炼生成高度概括的“核心要点”并存入核心记忆。这有效解决了大模型上下文长度有限的问题避免了记忆被无关对话稀释。踩坑记录记忆的“双刃剑”效应记忆功能很强大但也可能带来麻烦。有一次我在测试时告诉Agent“我的项目代码都在/home/test/目录下”。后来我迁移了项目到/workspace/但忘记更新它的记忆。结果它之后所有关于文件的操作都跑去旧目录导致一连串的“FileNotFoundError”。教训是对于关键的环境信息变更最好通过Web控制台的“系统设定”功能明确地更新它的记忆或者直接清空相关记忆重新开始。2.3 技能系统无限扩展的“超能力”如果说内置工具是Agent的“标准装备”那么Skills就是可以随时安装的“技能卡”或“插件”。CowAgent的Skill系统是其高扩展性的体现。Skill Hub官方维护的一个开源技能广场。你可以像手机安装App一样通过Web控制台或CLI命令一键搜索和安装技能。比如安装一个“股票查询”技能Agent就能帮你查股价安装一个“图像生成”技能它就能根据描述画画。自定义技能你可以用Python编写自己的Skill。一个Skill本质上就是一个定义了工具函数的模块。Agent在规划任务时会将自己所有的内置工具和已安装的技能工具都纳入考虑范围。这意味着你可以为Agent赋予任何你想要的能力比如连接公司内部数据库、调用特定的云服务API等。对话创造技能这是CowAgent一个很酷的特性。你可以直接告诉它“创建一个技能功能是获取指定城市的实时天气。”它会引导你提供必要的API信息然后尝试自动生成这个技能的代码框架。虽然生成的代码可能需要人工润色但这大大降低了技能开发的门槛。架构设计总结CowAgent通过Agent决策循环赋予其“思考”能力通过三层记忆系统赋予其“经验”和“连续性”通过可扩展的技能框架赋予其“无限可能”。这三者共同构成了一个能够真正“干活”的超级助理的基石。理解了这些我们在配置和使用时就能有的放矢知道每个参数调整会影响系统的哪个部分。3. 从零开始环境部署与核心配置实战理论讲完了我们动手把它跑起来。CowAgent支持多种部署方式为了获得最完整的系统访问能力尤其是文件操作和终端命令我强烈推荐使用源码部署。Docker方式更适合快速体验或仅使用对话功能。3.1 基础环境搭建一步也不能错假设我们在一个干净的Ubuntu 22.04服务器或本地Linux/Mac环境上操作。第一步搞定Python环境CowAgent支持Python 3.7到3.13。我推荐使用Python 3.10或3.11它们在稳定性和库兼容性上表现最好。使用pyenv或conda管理多版本Python是个好习惯。# 检查Python版本 python3 --version # 如果版本不符使用pyenv安装示例 curl https://pyenv.run | bash # 将pyenv初始化命令加入shell配置文件如 ~/.bashrc echo export PATH$HOME/.pyenv/bin:$PATH ~/.bashrc echo eval $(pyenv init -) ~/.bashrc echo eval $(pyenv virtualenv-init -) ~/.bashrc source ~/.bashrc # 安装Python 3.11 pyenv install 3.11.9 pyenv global 3.11.9第二步获取项目代码直接从GitHub克隆主仓库。如果网络不畅可以使用Gitee的镜像源。git clone https://github.com/zhayujie/CowAgent cd CowAgent第三步安装依赖这是最容易出错的环节。务必按顺序操作。# 1. 安装核心依赖必须 pip3 install -r requirements.txt # 如果速度慢使用国内镜像 # pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple # 2. 安装可选依赖强烈建议 # 这里面包含了一些通道如飞书WebSocket和高级功能所需的库 pip3 install -r requirements-optional.txt # 3. 安装Cow CLI工具强烈推荐 # 这会将cow命令安装到你的系统路径极大方便后续管理 pip3 install -e .避坑指南依赖安装失败requirements.txt里库很多偶尔会有某个库因为网络或版本问题安装失败。不要慌打开这个文件找到失败的那一行通常终端会报错暂时用#注释掉它然后重新运行安装命令。大部分情况下缺少一两个非核心依赖不影响主体运行可以事后单独处理。常见的“钉子户”可能是某些需要系统库的包如cryptography。在Ubuntu上你可以先运行sudo apt-get update sudo apt-get install -y build-essential libssl-dev libffi-dev python3-dev来安装编译环境。第四步浏览器工具安装按需如果你希望Agent能操作浏览器进行网页自动化如爬取数据、填写表单需要额外安装Playwright。cow install-browser这个命令会自动安装Playwright并下载Chromium浏览器。在国内环境它会自动使用国内镜像加速非常贴心。3.2 核心配置文件解析你的AI助理“入职手册”项目根目录下的config-template.json是配置模板。我们的第一步就是复制它并创建自己的config.json。cp config-template.json config.json现在用你喜欢的编辑器打开config.json。这个文件就是AI助理的“大脑初始化设定”。我们来逐一拆解最关键的部分。第一部分选择你的“大脑”模型配置模型决定了AI的“智力”水平。CowAgent支持众多厂商我的建议是优先考虑成本、响应速度和上下文长度。对于Agent模式模型需要较强的推理和规划能力。根据我的实测以下是性价比和效果都不错的选择国产首选性价比高MiniMax-M2.7来自MiniMax在中文理解和逻辑推理上表现优异价格适中速度很快。是我的主力测试模型。glm-5.1智谱GLM的最新版综合能力强尤其在代码和数学推理上不错。kimi-k2.6月之暗面的Kimi超长上下文是巨大优势可达百万token适合处理非常长的文档或历史记录。国际巨头能力顶尖claude-sonnet-4-6Anthropic的Claude在复杂指令遵循和安全性上口碑很好但价格较贵且对国内网络可能不友好。gpt-5.4-miniOpenAI的GPT-5.4系列中的“迷你版”在保持强大能力的同时成本比标准版低很多是平衡性能和预算的好选择。配置示例以MiniMax为例{ model: MiniMax-M2.7, minimax_api_key: 你的MiniMax API Key, agent: true, agent_max_context_tokens: 50000, agent_max_steps: 20 }agent_max_context_tokens: Agent模式下的上下文令牌上限。超出后记忆系统会启动智能压缩。如果你的任务非常复杂可以适当调高但要注意成本。agent_max_steps: 单次任务最大决策步数。防止Agent陷入死循环。对于简单任务10步足够复杂任务可以设到30或更高。第二部分选择你的“工作方式”通道配置通道决定了你如何与AI助理交互。本地开发/测试直接用channel_type: terminal或web。Web控制台功能最全推荐。个人日常使用channel_type: weixin微信扫码。最方便手机电脑都能用。团队协作channel_type: feishu飞书或dingtalk钉钉。需要去对应开放平台创建应用获取App ID和Secret。一个强大的技巧多通道并行。你可以用逗号分隔多个通道让AI助理同时服务多个平台。{ channel_type: weixin, web, terminal }这样你可以在微信上给它发任务在Web端查看它的思考过程和记忆同时在终端进行调试。第三部分高级功能开关speech_recognition/voice_reply_voice: 语音识别与回复。开启后你可以直接发语音消息。注意语音识别目前依赖OpenAI Whisper会产生额外API调用且无法匹配触发前缀如机器人开启后会对所有语音消息响应请谨慎在群聊中开启。use_linkai: 是否使用LinkAI平台。这是一个聚合平台提供了统一的API来调用上述所有模型并且集成了知识库、工作流等高级功能。如果你不想一个个去申请各家API或者想用更高级的Agent技能可以开启此项并配置linkai_api_key。3.3 首次启动与验证配置好config.json后就可以启动了。# 使用Cow CLI启动推荐方便管理 cow start # 或者直接运行 python3 app.py启动成功后终端会显示服务运行的日志。默认情况下Web控制台会在http://localhost:9899启动。打开浏览器访问http://localhost:9899/chat。首次使用Web控制台如果设置了web_password需要先登录。进入后你应该能看到一个简洁的聊天界面。先和它打个招呼测试基础对话是否正常。点击左侧菜单查看“模型”、“通道”、“技能”、“记忆”等管理页面是否正常加载。在“系统设定”里你可以给AI助理一个初始身份和职责描述这会影响它的行为风格。实操现场记录启动失败排查第一次启动时我遇到了ImportError: cannot import name ... from pydantic。这是典型的依赖版本冲突。解决方法是指定兼容的版本。我执行了pip3 install pydantic1.10.13解决了问题。如果遇到类似问题去项目GitHub的Issues里搜索错误关键词通常能找到解决方案。养成看日志 (cow logs或直接看终端输出) 的习惯是排查问题的第一步。4. 核心功能深度使用与调优基础跑通后我们来挖掘CowAgent那些真正提升生产力的核心功能。4.1 技能系统的实战安装、使用与自研技能是CowAgent的“应用商店”。我们以安装一个实用的“天气查询”技能为例。方式一通过Web控制台安装最简单进入Web控制台的“技能”页面。点击“从Skill Hub安装”。在搜索框输入“weather”通常会找到相关的天气技能。点击“安装”。CowAgent会自动从GitHub或Skill Hub拉取技能代码并注册。方式二通过CLI命令安装# 列出可安装的技能 cow skill list --hub # 安装指定技能假设技能ID是cow-weather cow skill install cow-weather安装完成后无需重启服务技能即刻生效。你可以直接问AI助理“今天北京天气怎么样”它会自动调用天气技能来获取信息并回答你。技能的工作原理每个技能包本质上是一个Python模块里面包含了一个或多个“工具函数”。安装时CowAgent会将这些工具函数注册到全局工具列表中。当Agent进行任务规划时它会检索所有可用工具内置的技能的选择最合适的来调用。开发自己的技能 假设你想让Agent能查询公司内部的服务器状态。你可以创建一个my_server_skill目录。my_server_skill/ ├── __init__.py ├── config.json └── skill.py在skill.py中定义一个工具函数import requests from cow.skills import BaseSkill, tool class MyServerSkill(BaseSkill): tool def get_server_status(self, server_ip: str) - str: 获取指定IP服务器的状态模拟。 Args: server_ip: 服务器IP地址 Returns: 服务器状态信息字符串 # 这里应该是你调用内部API的逻辑这里用模拟 # response requests.get(fhttp://internal-api/status/{server_ip}) # return response.json() return f服务器 {server_ip} 状态运行正常CPU负载 15%内存使用率 60%。在config.json中定义技能元信息。然后将整个目录放到Agent的工作空间默认是~/cow/skills/下或者在Web控制台通过“本地安装”上传。Agent在下次规划时就能使用get_server_status这个工具了。经验之谈技能设计的“道”设计技能时最重要的原则是“工具函数要单一、明确、可复用”。不要写一个“处理服务器所有事务”的大函数而应该拆分成get_server_status,restart_server,deploy_to_server等多个小工具。这样Agent在规划时更能精准匹配。另外工具函数的文档字符串括起来的部分非常重要Agent主要靠它来理解这个工具是干什么的、需要什么参数。务必用清晰、准确的语言描述。4.2 记忆与知识库打造你的“第二大脑”记忆系统让AI助理不再是“金鱼脑”。但如何有效利用它呢1. 主动管理核心记忆 在Web控制台的“记忆”页面你可以查看、搜索、编辑或删除核心记忆条目。例如你可以手动添加一条记忆“用户张三的周报模板路径是/templates/weekly_report.md”。之后当你对AI助理说“帮张三生成周报”它就有可能去那个路径找模板。2. 利用知识库进行深度信息管理 知识库是比记忆更结构化的信息存储。你可以将文档、笔记、邮件等任何文本资料“喂”给AI助理它会自动提取关键信息建立索引和关联。导入知识在Web控制台“知识库”页面支持直接粘贴文本、上传TXT/PDF/Markdown文件或者提供一个URL让它去抓取。对话式管理你可以直接说“把我刚才发给你的那篇关于量子计算的论文摘要保存到知识库标签设为‘物理学’、‘前沿科技’。” 它会自动执行。信息检索当你后续提问“量子计算目前的主要挑战是什么”时AI助理会优先从你的知识库里寻找相关信息来组织答案让回答更贴近你的个人资料库。3. 梦境蒸馏的配置与观察 梦境蒸馏是自动运行的但你可以在config.json中调整其频率需要查阅高级配置。更重要的是观察它产生了什么。定期查看核心记忆里那些被“蒸馏”出来的摘要你能了解AI助理认为哪些信息是重要的。这反过来可以帮你优化与它的交互方式——多提供它认为重要的信息。踩坑记录知识库的“幻觉”与“冲突”知识库不是万能的。我遇到过两种情况一是AI助理过于依赖知识库中的旧信息而忽略了当前对话中我提供的新指令比如我更新了数据但它还引用旧报告。二是当知识库内容与通用模型知识冲突时它有时会混淆。解决方案一是保持知识库的更新及时清理过时内容二是在提问时可以明确指令“请基于我知识库里‘2024年Q3销售数据’这份文档结合我们刚才讨论的新策略做一份分析。” 给出明确的来源指引。4.3 工具调用与安全边界CowAgent内置的工具非常强大尤其是execute_shell执行Shell命令和browse_web控制浏览器。这意味着AI助理几乎拥有和你当前运行用户同等的系统权限。安全第一准则绝不在公网可访问的服务器上以root权限运行CowAgent。强烈建议为CowAgent创建一个专用的、低权限的系统用户。sudo useradd -m -s /bin/bash cowagent sudo passwd cowagent # 然后切换到这个用户去部署和运行 su - cowagent仔细审查你安装的第三方技能。恶意的技能代码可以执行任意操作。使用agent_workspace将工作空间限制在一个特定目录如~/cow_workspace避免Agent误操作系统关键文件。工具使用的实战技巧对于文件操作Agent擅长处理结构化的文本文件如CSV、JSON、Markdown。对于二进制文件如图片、视频它通常只能进行移动、复制等元操作无法理解内容除非借助专门的图像识别技能。对于Shell命令尽量让Agent执行确定性的、非交互式的命令。例如“ls -la” 是安全的“rm -rf /” 是灾难性的。虽然Agent有安全机制会拒绝明显危险的命令但不要完全依赖它。对于浏览器操作browse_web工具基于Playwright可以模拟点击、输入、滚动等。非常适合自动化一些固定的网页操作流程比如每天登录某个内部系统下载报表。你需要为它提供清晰、具体的操作步骤描述。5. 高级部署、监控与故障排查当你想把CowAgent用于更严肃的生产环境或团队共享时需要考虑更多。5.1 生产环境部署建议使用系统服务管理不要再用python3 app.py这种前台运行方式。使用cow start它本身会转入后台但更规范的做法是配置成系统服务如systemd。创建/etc/systemd/system/cowagent.service[Unit] DescriptionCowAgent AI Assistant Afternetwork.target [Service] Typesimple Usercowagent # 使用专用用户 WorkingDirectory/path/to/CowAgent EnvironmentPATH/home/cowagent/.pyenv/versions/3.11.9/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin ExecStart/home/cowagent/.pyenv/versions/3.11.9/bin/cow start Restarton-failure RestartSec5s [Install] WantedBymulti-user.target然后启用并启动sudo systemctl daemon-reload sudo systemctl enable cowagent sudo systemctl start cowagent sudo systemctl status cowagent配置反向代理与HTTPS如果Web控制台需要对公网开放务必使用Nginx/Apache配置反向代理并申请SSL证书启用HTTPS。# Nginx 配置示例 server { listen 443 ssl; server_name your-domain.com; ssl_certificate /path/to/cert.pem; ssl_certificate_key /path/to/key.pem; location / { proxy_pass http://127.0.0.1:9899; 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; } }日志与监控CowAgent的日志默认输出到标准输出和文件。使用cow logs查看。对于生产环境建议将日志接入ELKElasticsearch, Logstash, Kibana或类似监控系统便于排查问题和分析使用情况。5.2 常见问题与排查清单以下是我在长期使用中总结的“病历本”问题现象可能原因排查步骤与解决方案启动失败报错ImportError1. Python版本不对。2. 依赖未安装或版本冲突。3. 系统缺少某些库。1.python3 --version确认版本在3.7-3.13。2. 重新执行pip3 install -r requirements.txt注意错误信息。3. 对于Linux安装build-essential,libssl-dev等开发包。Web控制台无法访问1. 服务未启动。2. 防火墙/安全组未放行端口。3. 配置了错误的channel_type。1.cow status或 ps auxAI助理不回复消息1. 模型API Key错误或余额不足。2. 通道配置错误如飞书App Secret不对。3. Agent模式陷入循环或达到最大步数。1. 去对应模型平台检查API Key状态和余额。2. 在Web控制台测试对话如果Web正常则是通道问题。检查通道配置文档。3. 查看日志 (cow logs)看是否一直在“思考”但无输出尝试调高agent_max_steps或简化指令。执行Shell命令失败1. 运行用户权限不足。2. 命令路径不存在。3. 命令本身需要交互式输入。1. 检查whoami确认运行用户避免在Docker中以root运行但映射了低权限目录。2. 使用绝对路径或确保命令在$PATH中。3. Agent无法处理需要终端交互的命令如vim,top。记忆似乎没起作用1. 记忆功能未开启或配置错误。2. 记忆检索策略问题未命中关键词。3. 上下文太长旧记忆被压缩或丢弃。1. 确认agent为true且工作空间agent_workspace可写。2. 在Web控制台“记忆”页面搜索相关关键词看是否有记录。尝试在对话中使用更明确的关键词。3. 调高agent_max_context_tokens或主动在对话中提醒它“回忆一下我们之前关于XXX的讨论”。安装技能失败1. 网络问题无法连接GitHub或Skill Hub。2. 技能代码与当前CowAgent版本不兼容。3. 技能依赖未安装。1. 检查网络或尝试从Gitee镜像安装如果技能支持。2. 查看技能页面是否标注了兼容的CowAgent版本。3. 查看安装日志手动安装缺失的Python包 (pip3 install package_name)。5.3 性能调优与成本控制响应速度如果感觉Agent思考慢可以尝试以下方法换用更快的模型如MiniMax-M2.7-highspeed高速版或glm-4-flash。关闭enable_thinking深度思考展示这能减少流式传输的等待感。适当降低agent_max_steps避免它在简单任务上过度规划。Token成本Agent模式因为要多轮调用和长上下文Token消耗比普通聊天高。选择性价比模型如上文提到的MiniMax-M2.7、glm-5.1、gpt-5.4-mini。善用上下文压缩agent_max_context_tokens不要设得过高让记忆系统去自动提炼关键信息。清晰指令模糊的指令会导致Agent进行大量无意义的规划步骤消耗Token。给你的指令加上明确的目标和约束条件。监控用量定期去各模型平台查看API使用量和费用。走到这一步你的CowAgent应该已经是一个稳定、能干且听话的超级助理了。从最初的一个简单聊天机器人框架到如今能规划、能记忆、能学习、能执行复杂任务的智能体这个项目的进化轨迹也正是AI应用发展的一个缩影。开源项目的魅力在于你不仅是使用者也可以是贡献者。如果在使用中发现了Bug或者有好的Skill创意不妨去GitHub上提交Issue或PR。这个数字伙伴的能力边界最终是由我们所有使用者共同塑造的。