用 OpenClaw 搭建多 Agent 办公室:一个 SRE 的自定义实践
本文记录了我在一台 Mac mini 上,用 OpenClaw + Docker + 本地 GPU 搭建多 Agent 协作系统的过程。不是教程,是实践笔记。
为什么是 OpenClaw
作为 SRE,我对工具的要求很简单:可控、可观测、能自托管。市面上的 AI Agent 平台大�…
Welcome to my personal blog! Here I share tech articles, life insights and interesting ideas.
本文记录了我在一台 Mac mini 上,用 OpenClaw + Docker + 本地 GPU 搭建多 Agent 协作系统的过程。不是教程,是实践笔记。
作为 SRE,我对工具的要求很简单:可控、可观测、能自托管。市面上的 AI Agent 平台大�…
JMS 是一个 Go 写的 JumpServer CLI 客户端,日常用于 SRE 运维。经过多轮迭代,已经具备了相当丰富的功能:WebSocket 终端、exec 单命令执行、SFTP 文件传输、Miller Column TUI 资产浏览器、AI Panel(通过 Claude API 在终端内提供 AI 辅…
我们用 LiteLLM 搭建了一个 LLM Proxy Gateway,通过 Kustomize 的 base + instances 结构在同一个 Kubernetes namespace 里部署多个实例,共享一个 PostgreSQL 做统一的 API key 管理和用量追踪:
| 实例 | 域名 | 上游 | Provider | |——|——|——|…
我有一个 Go 写的 JumpServer CLI 工具 (jms),内嵌了 AI Panel 功能,通过 Anthropic Claude API 在终端内提供 AI 辅助诊断。原本直连 Anthropic API 一切正常,但当我把请求路由到 LiteLLM 代理时,接连遇到了三个兼容性问题。
这些问题…
JMS 是一个 JumpServer CLI 客户端,通过 WebSocket 连接远程终端。最近在终端内嵌入了一个 AI Panel(Ctrl+] 唤起),让 Claude 能直接在终端会话中辅助诊断问题。
这篇文章拆解 AI 部分的核心设计:Agent Loop 如何运转、SSE 流式�…
我写了一个 JumpServer CLI 客户端 (jms-cli),通过 WebSocket 连接 JumpServer KOKO 终端。连接在大约 15-20 秒后必定断开,困扰了我很长时间。
KOKO 每 5 秒发送 WebSocket ping,客户端必须及时回复 pong。通过 pcap 抓包分析,发现 pong…
Testing PlantUML rendering:
@startuml
Alice -> Bob: Authentication Request
Bob --> Alice: Authentication Response
Alice -> Bob: Another authentication Request
Alice <-- Bob: Another authentication Response
@enduml
将 AI 大模型与 Live2D 角色结合,让 AI 根据对话内容驱动角色的表情和身体动作,是一个看起来很自然但实现起来坑很多的需求。本文记录在实践中遇到的核心难点和对应的解法。
一个 C…