
【导语:George Larson在每月7美元的VPS上部署AI代理构建数字门卫,连接到IRC服务器和GitHub仓库。该代理能依据代码回答访客问题,在架构、模型选择、安全策略等方面有独特设计,为个人作品集交互带来新变革。】

George Larson在每月7美元的VPS上部署了AI代理,构建了独特的数字门卫系统。该系统设置了两道安全防线,由nullclaw和ironclaw两个代理及两台服务器组成。nullclaw是面向公众的门卫,运行在最小化边缘服务器上,是678 KB的Zig二进制文件,约占1 MB内存,负责问候访客、回答项目问题并克隆仓库证实说法。ironclaw部署在更强大服务器上,可访问电子邮件等私有信息,处理复杂询问。

选择IRC协议有三个原因。一是符合整体风格,个人作品集网站采用终端用户界面,嵌入IRC客户端与之相符;二是完全自主可控,相关服务器、客户端和代理都部署在自己的基础设施上,无第三方API更改使用条款等问题;三是协议成熟稳定,有30年历史,简单易懂,无供应商锁定问题,代理可通过Web客户端与访客交流,也能通过终端上的irssi与本人交流。
通信栈各组件小巧、可自行托管且易替换。Ergo作为IRC服务器,单个Go二进制文件占用2.7 MB内存;gamja是Web IRC客户端,构建后大小为152 KB;nullclaw是AI代理运行时环境,4 MB的Zig二进制文件,峰值内存使用约1 MB。总体二进制文件大小不到10 MB,空闲时内存占用不到5 MB,可在最便宜的VPS套餐上运行。

在模型选择上,采用分层设计。对话层使用Haiku 4.5,用于问候访客、初步分类和回答简单问题,响应时间亚秒级,每次对话成本只需几美分;工具使用层Sonnet 4.6作为备用,在需要克隆仓库等操作时发挥作用,仅在推理时产生成本。设置每天2美元的成本上限,通过分层推理机制将每日成本控制在预算内。

服务器进行了严格的安全加固。SSH配置使用非根用户通过密钥认证登录,禁用root登录;防火墙仅开放三个端口;使用Cloudflare代理处理TLS终止等;nullclaw在受监控模式下运行,有严格命令白名单;设置成本上限,记录审计日志,启用自动更新和TLS加密并自动续期。即使服务器被攻破,影响范围也有限。
在转接过程中,Nully有严格限制措施。仅特定类型请求转接到ironclaw,拒绝访客任意指令,ironclaw的A2A端点通过防火墙限制仅允许Tailscale网络访问,两个代理都在受监控模式下运行,有严格命令白名单。

nullclaw支持Google的A2A协议,但缺少客户端,于是开发了客户端。通过a2a_call工具向远程代理发送请求,解析任务响应。ironclaw上的nullclaw实例将大语言模型提供商配置为指向ironclaw自己的网关,作为透传层,借用推理管道响应,无需复制凭证和单独跟踪预算,拥有API密钥的代理负责支付推理费用。
编辑观点:George Larson的数字门卫系统在低成本下实现了强大功能,其架构设计、模型选择、安全策略等方面都有创新,为个人作品集与访客交互提供了新范例,也为AI代理应用提供了有益参考。
1827

被折叠的 条评论
为什么被折叠?



