Levon's Blog

微信: L6241425

1. 介绍

1.1 Why Hermes Not Openclaw

  1. 真·持久记忆  跨会话记住你的偏好和项目(MEMORY.md/USER.md 机制),FTS5 全文检索,10 万条记录搜索约 10ms。而 OpenClaw 的记忆是它的公认弱项——有跑过 1000+ 实例的托管商实测吐槽 “ 会话经常像在跟一个陌生人说话 “。
  2. 自主学习闭环  干完难活自动写下 SKILL.md,越用越聪明,技能兼容 agentskills.io 开放标准。OpenClaw 的技能主要靠 ClawHub 装、靠人配。
  3. 安全默认值更好  容器隔离(只读根目录/降权/PID 限制)+ 敏感操作审批 + 默认禁私网 URL 防 SSRF
  4. 轻快省  3GB 内存就舒服、近即时启动,托管成本约省 30%;内置模型路由(按价格/延迟自动 fallback),适合 24/7 挂机跑定时任务。
阅读全文 »

第一次看到 DeepSeek Harness,我以为它只是给 DeepSeek 模型套了一层 Web UI。真正跑起来以后,我才发现重点不在模型,而在模型之外的那一层:它决定 Agent 能看到哪些文件、可以调用什么工具、怎样执行命令,以及每次行动如何被记录和约束。

DeepSeek Harness(命令名 dsh)就是这层执行框架。官方把它概括为 “ 一切皆插件 “:模型适配器、工具、会话、沙箱、存储、调度和 UI 都可以替换或重组。

可以先这样理解:

1
2
Agent = 模型 + Harness
Harness = 工作区 + 工具 + 权限 + 会话 + 执行循环 + UI
阅读全文 »

1. 什么是 AI Agent?

如果把传统的大语言模型(LLM)比作一个 “ 缸中大脑 “——知识渊博、文笔出众,但只能被动回答问题、无法主动与真实世界交互;那么 AI Agent(智能体) 就是给这个大脑装上了眼睛、双手和记事本,让它能够自主感知环境、进行规划并使用工具去完成复杂的现实目标。

阅读全文 »

1. 极简 Agent

很多人以为 Agent 底层有某种魔法,其实本质上就是一个 while 驱动的状态循环:

1
2
3
4
5
6
7
8
9
10
11
用户提问 

[LLM 决策] → 是否需要工具?
├── 否(直接回答) → 输出并结束循环
└── 是(返回函数名与参数)

[本地 Python 执行函数]

[将执行结果塞回上下文 messages]

[回到 LLM 决策,继续下一轮思考]
阅读全文 »

解释 Agent 沙盒的安全边界与常见实现,并结合 Codex 源码说明权限配置、平台后端、审批策略与 Full Access 的关系。

阅读全文 »

www.liuvv.com 的证书以前经常过期。表面看像是「域名在 Cloudflare,证书却没续上」,但真实结构并非如此:Cloudflare 只负责 DNS,访客真正访问的是腾讯云 CDN,浏览器看到的证书也安装在腾讯云 CDN 上。

本文记录一套适配该场景的免费自动化方案:GitHub Actions 定时运行 acme.sh,通过 Cloudflare DNS-01 验证申请 Let’s Encrypt 证书,再调用腾讯云 SSL/CDN API,把证书部署到 www.liuvv.com 的 CDN 加速域名。

阅读全文 »

你在编辑器里跟 AI 说「帮我把这个函数改改」,AI 真的去读了文件、改了代码。这件事背后至少有三个角色:编辑器、AI 程序,以及读文件改文件的那些能力。ACP(Agent Client Protocol)管的是第一段——编辑器和 AI 程序之间怎么说话。

阅读全文 »

单表过了千万行,查询变慢、索引胀、删旧数据删到手酸,这几件事经常一块来。第一反应往往是「要不要分表、分库分表」——其实 PostgreSQL 原生分区(L1)往往就够:应用里还是查一张 orders,库在底下拆成很多小表;查某个月,就只碰那个月的小表。

下文分两段:§1 先在同一维度上区分 L1 分区 / L2 同库分表 / L3 分库分表,环境按 PostgreSQL 14+。

阅读全文 »

1. 为什么我们没有直接用 Logs Insights

我第一次看到这套日志搜索方案时,其实有点疑惑:AWS 已经有 CloudWatch Logs Insights,为什么还要自己搭一条 Firehose -> S3 -> EC2 -> ripgrep 的链路?

后来把代码和部署手册看完,答案反而很朴素。我们不是想重新做一个日志平台,只是想解决一个更窄的问题:开发排查线上问题时,能不能低成本地搜最近几天的历史日志,而且不要每次手一抖就把账单扫上去。

阅读全文 »

1. 为什么我说 Runway 是把 Terraform 当库用

我以前对 Terraform 的默认理解很简单:业务仓库里放 .tf 文件,CI 跑 terraform plan,合并后再跑 terraform apply。Atlantis、Terraform Cloud、Spacelift 大多都是这个路子。

Runway 不是这么做的。

业务方只写 runway.yaml。Terraform 模块跟 Go server 一起被编进二进制里。部署时,server 解压模块、拼出一份临时的根 .tf,再启动一个 Terraform 子进程去 apply

所以这里说“把 Terraform 当库用”,不是说 Go 代码里真的 import terraform。它的意思是:Terraform 仍然是执行引擎,但模块版本、调用时机、输入生成、日志输出,都被平台代码接管了。

这篇记录我读这套设计时真正卡住的几个点:模块怎么塞进二进制,为什么解压目录不能随机,为什么 HCL 只是字符串模板,跨 stack 引用为什么一会儿走 Terraform、一会儿走 Go 代码。

阅读全文 »
0%