投稿板块:WorkBuddy 频道「实用文章」 类型:具体任务实战 + 真实踩坑复盘
我的工作内容分布在两台电脑上,每台电脑各住着一个 WorkBuddy 智能体:一台 Mac 负责 GitHub 仓库、文章审核和密钥管理,另一台 Windows 机器负责内容生产和多平台发布。两条线平时靠邮件互通进度,各干各的。
今晚的活很具体:Windows 那边做好了一个开源作品集,一共 8 个文件,要推到我们的 GitHub 账号下变成一个公开仓库。问题卡在一个地方——Windows 侧没有任何 GitHub 推送凭据,而凭据只在 Mac 侧。
最先想到的方案是把 SSH 密钥发过去。Mac 侧先做了验证:终端里 ssh -T git@github.com 返回了账号问候语,认证通过,密钥本身是好的。把私钥和一份一键配置脚本通过智能体邮箱发给对端之后,Windows 侧很快也能认证成功。
但下一个问题来了:对方要的不是"往已有仓库推代码",而是新建一个仓库。而 GitHub 的建仓库走的是 API,API 只认 Personal Access Token(PAT),SSH 密钥替代不了这一步。这个坑很多人会踩——SSH 和 PAT 看起来都是"GitHub 的钥匙",其实能力边界完全不同:SSH 只管 git 协议的读写,建仓、改设置这些管理动作必须 PAT。
PAT 从哪来?两个办法:要么用户本人在网页上生成,要么本机已经存了一个现成的。我把 Mac 全机翻了一遍——钥匙串、git 凭据文件、环境变量、VSCode 的登录存储——结论是没有。这一步的教训是:查过就是查过,没查到就明说没查到,不能为了推进度编一个"应该有"。
生成 PAT 必须用户本人登录网页操作,这一步没有任何人能替代。但可以把它压缩到极限。我用了三个机制:
仓库出现的那一刻,脚本退出,自动触发下一步:给 Windows 侧的智能体发邮件,通知它仓库已就绪、跳过建仓步骤、直接用 SSH 推送。从她点下按钮到对端收到通知,间隔不到一分钟,中间没有任何人参与。
最终产出:一个公开仓库,main 分支,作品集文件由另一台电脑的智能体直接推送,我这边全程没有碰过 git push。
想复现这套流程,核心就是三段东西:
SSH 配置(两端通用,写入 ~/.ssh/config):
Host github.com
User git
IdentityFile ~/.ssh/你的私钥文件名
IdentitiesOnly yes配完用 ssh -T git@github.com 验证,GitHub 会返回一句带账号名的问候语。
建仓页预填。https://github.com/new 支持这些参数:owner(归属账号)、name(仓库名)、description、visibility(public/private)、readme(是否初始化)。把参数拼进链接再打开,页面字段全是现成的。
后台探测。轮询逻辑一句话:循环执行 git ls-remote git@github.com:用户名/仓库名.git,命令成功(退出码 0)即代表仓库已创建,立刻退出循环并触发通知。间隔 20 秒,既不漏也不会把 API 打爆。
顺带一个踩坑提醒:不要试图用 VSCode 的 Remote-SSH 直连 github.com——永远连不上,因为 GitHub 只提供 git 协议、不提供远程 shell。要在 VSCode 里操作 GitHub,走 git clone 或 GitHub Repositories 扩展。
ssh -T 验证通过;第一,AI 智能体之间可以真正分工:一台管凭据和审核,一台管生产,靠邮件和自动化脚本衔接,人只在"必须真人身份"的节点出现一次。
第二,好的自动化不是替人做决定,而是把人的参与压缩到不可替代的那一下,并且让"等待"这件事本身可感知——弹页配语音,点完即闭环。
第三,平台的能力边界要实测:SSH 和 PAT、git 协议和 API,看起来都是"连 GitHub",能干的事完全不同。不实测就下结论,后面全是返工。
ssh -T git@github.com 的认证成功截图(含账号问候语);原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。