3月14日碎片:按摩小插曲和我的满分女朋友

难得的周末,和女朋友约好一起去按摩放松,本来是抱着瘫一下午的期待去的,结果开场就踩了雷。 给我安排的技师手劲大得离谱,按得我龇牙咧嘴,疼到最后实在忍不了,火气一下就上来了,直接摆脸让技师别按了,走人。 没一会主管过来打圆场,说给我换个经验丰富的技师,今天这单全免。那时候我还在气头上,头摇得像拨浪鼓,满脑子都是不想按了要走人。 还是我女朋友懂事,轻轻拉了拉我胳膊,给了双方台阶下,说换个技师再按半小时就好。 换的新技师手法果然舒服很多,最后结账的时候他们也真的免了单。现在回头想想,要是只有我自己在,今天肯定要闹得不欢而散,还好有她在旁边帮我兜着,全程陪着我哄我,怎么会有这么好的女朋友啊。 按摩结束我们找了家小酒馆喝酒,今天点的酒味道意外的不错,下次还要带她再来:

2026年3月14日 · 1 分钟 · 6 字 · Liu

OpenClaw实战:用ADB+本地OCR打造全自动安卓设备智能管理助手

前言:ADB的痛点是什么? ADB(Android Debug Bridge)几乎是所有安卓玩机党、测试工程师的必备工具,我们可以用它执行截图、点击、安装应用、文件传输等几乎所有手机操作,但它有一个最大的短板:它只能执行命令,没法"看到"手机屏幕上的内容。 很多时候我们想做自动化操作,都会卡在"判断当前屏幕有什么"这一步:比如想跳过开屏广告,你得先知道"跳过"按钮在什么位置;想自动签到,得先识别到"签到"按钮有没有出现;想批量提取截图里的文字,得手动一张张复制。 今天我们就用OpenClaw的两个现成技能:ADB工具集 + 本地PaddleOCR,组合出一个完全本地化、零API费用、隐私安全的全自动安卓设备管理助手,实现"识别→决策→操作"的完整闭环。 一、整体方案设计 整个架构非常简单,三层结构完全跑在本地,不需要任何云端服务: 1 2 3 4 ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ ADB交互层 │ → │ PaddleOCR识别层 │ → │ OpenClaw逻辑层 │ │ (手机操作) │ │(文字+坐标识别) │ │(规则判断+调度)│ └─────────────────┘ └─────────────────┘ └─────────────────┘ 各层职责: ADB层:负责和安卓设备交互,支持截图、点击、滑动、启动应用、拉取/推送文件、执行Shell命令等所有ADB原生能力 OCR层:基于本地PaddleOCR实现,识别截图中的文字内容和对应坐标位置,全程本地运行,不会上传任何图片到第三方 逻辑层:OpenClaw作为调度中心,把两个能力串联起来,支持自定义规则,甚至可以用自然语言直接控制(比如"帮我把手机里的所有账单截图文字提取出来") 二、前置环境准备 2.1 技能安装 首先确保你已经在OpenClaw中安装了两个必备技能: 1 2 3 4 5 # 安装ADB工具集技能 openclaw skills install adb # 安装本地PaddleOCR技能 openclaw skills install paddle-ocrv5 安装完成后运行openclaw skills list确认两个技能状态都是✓ ready。 2.2 ADB设备连接 安卓手机开启「开发者选项」→ 打开「USB调试」,用USB连接电脑,或者通过Wi-Fi无线连接 执行adb devices确认设备已经连接成功,能看到设备ID输出 (可选)配置ADB路径到系统环境变量,或者在TOOLS.md中配置你的ADB实际路径 2.3 本地OCR服务启动 PaddleOCR技能默认会启动本地MCP服务在端口18080,启动后可以通过lsof -i:18080确认服务正常运行。 ...

2026年3月9日 · 2 分钟 · 423 字 · Liu

OpenClaw 多智能体路由:构建企业级 AI 协作基础设施

引言 随着 AI 智能体(Agent)在企业场景中的广泛应用,单一智能体已难以满足复杂业务需求。如何在同一基础设施上运行多个独立的 AI 智能体,并让它们协同工作,成为现代 AI 架构设计的核心挑战。 OpenClaw 的多智能体路由(Multi-Agent Routing)系统正是为解决这一问题而生。本文将深入解析其架构设计、核心概念与最佳实践,帮助读者构建企业级的多智能体协作基础设施。 什么是"一个智能体"? 在 OpenClaw 的语境中,一个智能体(Agent) 是一个完全独立、自包含的"大脑",拥有以下核心资源: 1. 独立工作空间(Workspace) 每个智能体拥有专属的目录结构: 1 2 3 4 5 6 ~/.openclaw/workspace-<agentId>/ ├── AGENTS.md # 智能体行为规范 ├── SOUL.md # 人格与个性定义 ├── USER.md # 用户信息 ├── TOOLS.md # 工具使用说明 └── ... # 其他工作文件 这些文件定义了智能体的"身份"——它如何思考、如何回应、拥有哪些工具能力。 2. 独立状态目录(AgentDir) 1 2 3 4 ~/.openclaw/agents/<agentId>/agent/ ├── auth-profiles.json # 认证配置(各频道账号) ├── models.json # 模型注册表 └── config/ # 智能体专属配置 关键原则:认证信息是按智能体隔离的。一个智能体的 Telegram 账号不会自动共享给另一个智能体。如需共享,必须显式复制 auth-profiles.json。 ...

2026年3月7日 · 4 分钟 · 698 字 · Liu

OpenClaw Skill 介绍:Healthcheck 主机安全加固

OpenClaw Skill 介绍:Healthcheck 主机安全加固 简介 Healthcheck 是一个专业的 OpenClaw Skill,用于主机安全加固和风险容忍度配置。当你需要对运行 OpenClaw 的机器(笔记本、工作站、树莓派、VPS)进行安全审计、防火墙/SSH/更新加固、风险评估、暴露审查、OpenClaw cron 定时检查或版本状态检查时,这个工具就是你的最佳选择。 核心功能 🔍 安全审计 系统安全状况评估 漏洞扫描和检测 配置安全检查 权限和访问控制审查 🛡️ 主机加固 防火墙规则配置 SSH 安全设置 自动更新配置 服务最小化 📊 风险评估 风险容忍度配置 暴露面分析 威胁建模 安全建议生成 ⏰ 定时检查 OpenClaw 安全审计定时任务 版本状态检查 健康状态监控 使用方法 基础命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 # 运行基础安全审计 openclaw security audit # 深度安全审计 openclaw security audit --deep # 查看系统状态 openclaw status # 深度系统状态 openclaw status --deep # 检查健康状况 openclaw health --json # 查看更新状态 openclaw update status 定时任务管理 1 2 3 4 5 6 7 8 9 10 11 # 列出所有定时任务 openclaw cron list # 添加定时任务 openclaw cron add --name "daily-audit" --schedule "0 9 * * *" --command "openclaw security audit" # 查看定时任务运行记录 openclaw cron runs # 立即运行定时任务 openclaw cron run <job-id> 工作流程 Healthcheck Skill 遵循严格的工作流程: ...

2025年3月6日 · 2 分钟 · 280 字 · Liu

OpenClaw Skill 介绍:Weather 天气查询

OpenClaw Skill 介绍:Weather 天气查询 简介 Weather 是一个简单但实用的 OpenClaw Skill,用于查询天气信息。它通过 wttr.in 服务获取天气数据,无需 API 密钥即可使用。 功能特点 🌍 支持全球任意地点的天气查询 🌡️ 实时温度、体感温度、湿度、风速 📅 3天天气预报 🌅 日出日落时间 🌙 月相信息 💨 空气质量指数(部分城市) 使用方法 基础查询 1 2 3 4 5 6 7 8 9 10 11 # 查询当前位置天气 curl wttr.in # 查询指定城市 curl wttr.in/Beijing curl wttr.in/London curl wttr.in/"New York" # 使用中文城市名 curl wttr.in/北京 curl wttr.in/上海 格式化输出 1 2 3 4 5 6 7 8 9 10 11 12 13 14 # 简洁模式(单行输出) curl "wttr.in/Beijing?format=3" # 自定义格式 curl "wttr.in/Beijing?format=%l:+%c+%t+%w+%h" # 常用格式变量 # %l - 地点 # %c - 天气状况 # %t - 温度 # %f - 体感温度 # %w - 风速 # %h - 湿度 # %p - 降水概率 JSON 输出 1 2 # 获取 JSON 格式数据 curl "wttr.in/Beijing?format=j1" 图片输出 1 2 # 获取 PNG 图片 curl "wttr.in/Beijing.png" -o weather.png 机场代码查询 1 2 3 4 5 6 7 # 使用 IATA 机场代码 curl wttr.in/PEK # 北京首都机场 curl wttr.in/PVG # 上海浦东机场 curl wttr.in/HKG # 香港机场 curl wttr.in/NRT # 东京成田机场 curl wttr.in/LHR # 伦敦希思罗机场 curl wttr.in/JFK # 纽约肯尼迪机场 在 OpenClaw 中使用 1 2 3 4 5 # 询问 OpenClaw 天气 @weather 北京今天天气怎么样? # 或直接使用命令 curl -s "wttr.in/Beijing?format=3" 注意事项 🆓 完全免费,无需注册或 API 密钥 🌍 支持全球 200,000+ 城市 🌐 支持多语言输出 ⏱️ 数据来自世界各地的气象站,通常每 1-2 小时更新 📊 预报准确度随时间递减,3天内的预报最可靠 相关链接 wttr.in 官方文档 GitHub 仓库 简单、实用、免费 —— 这就是 Weather Skill 的魅力所在! ...

2025年3月6日 · 2 分钟 · 215 字 · Liu

OpenClaw Skill 介绍:Coding Agent 编程助手

OpenClaw Skill 介绍:Coding Agent 编程助手 什么是 Coding Agent? coding-agent 是一个 OpenClaw Skill,它允许你将编程任务委托给 Codex、Claude Code、Pi 等 AI 编程助手。无论是构建新功能、审查 PR、重构大型代码库,还是需要文件探索的迭代式编码,这个 Skill 都能帮上忙。 核心特性 1. 支持多种 AI 编程助手 工具 说明 Codex OpenAI 的编程助手,支持 GPT-5.2-codex Claude Code Anthropic 的 Claude 编程助手 Pi 轻量级编程助手 OpenCode 开源替代方案 2. 灵活的工作模式 单次执行模式: 适合快速任务 执行完自动退出 适合脚本和自动化 后台模式: 适合长时间运行的任务 可以监控进度 支持随时介入 3. 安全的执行环境 工作目录限制:Agent 只能在指定目录内工作 Git 沙箱:需要 git 目录才能运行 权限控制:支持自动审批或手动确认 使用方法 快速开始 单次执行(推荐用于简单任务) 1 2 3 4 5 # 基本用法 - 在临时目录执行 SCRATCH=$(mktemp -d) && cd $SCRATCH && git init && codex exec "Your prompt here" # 在实际项目中执行(带 PTY) bash pty:true workdir:~/Projects/myproject command:"codex exec 'Add error handling to the API calls'" 后台模式(适合长时间任务) 1 2 3 4 # 启动后台任务(带 PTY) bash pty:true workdir:~/project background:true command:"codex exec --full-auto 'Build a snake game'" # 返回的 sessionId 用于后续管理 监控和管理后台任务 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 # 查看所有运行中的会话 process action:list # 查看特定会话的日志 process action:log sessionId:XXX # 检查会话是否还在运行 process action:poll sessionId:XXX # 向会话发送输入(如果 Agent 提问) process action:write sessionId:XXX data:"y" # 发送输入并按回车 process action:submit sessionId:XXX data:"yes" # 终止会话 process action:kill sessionId:XXX 实用场景 场景 1:快速原型开发 1 2 3 4 5 # 创建一个临时目录并初始化 git SCRATCH=$(mktemp -d) && cd $SCRATCH && git init # 让 Codex 快速构建一个原型 codex exec --full-auto "Build a React todo app with TypeScript" 场景 2:代码重构 1 2 # 在现有项目中重构代码 bash pty:true workdir:~/project command:"codex exec --full-auto 'Refactor the authentication module to use JWT'" 场景 3:PR 审查 ⚠️ 重要:不要在 OpenClaw 的项目目录中审查 PR! ...

2025年3月6日 · 3 分钟 · 446 字 · Liu

OpenClaw Skill 介绍:Tavily 智能搜索

OpenClaw Skill 介绍:Tavily 智能搜索 什么是 Tavily Search? tavily-search 是一个 OpenClaw Skill,它使用 Tavily API 提供实时网络搜索、内容提取和研究能力。当你需要搜索网页、查找信息、研究主题或从 URL 提取内容时,可以使用这个工具。 核心功能 1. 智能网页搜索 Tavily Search 提供强大的搜索能力: 实时搜索:获取最新的网络信息 智能排序:AI 优化的搜索结果排序 深度搜索:支持基础模式和高级模式 结果丰富:包含标题、摘要、URL 和相关内容 2. 内容提取 从任意网页提取干净的内容: 文章提取:自动识别正文内容 去噪处理:移除广告、导航等无关内容 格式保留:保持原始排版和结构 批量处理:支持多个 URL 同时提取 3. 研究能力 专为深度研究设计的功能: 多源聚合:从多个来源整合信息 相关性分析:AI 评估内容相关性 引用追踪:方便验证信息来源 主题发现:自动识别相关主题 使用方法 环境配置 在使用之前,需要设置 API 密钥: 1 2 3 4 5 # 设置环境变量 export TAVILY_API_KEY="your-api-key-here" # 或者在 ~/.bashrc 或 ~/.zshrc 中添加 echo 'export TAVILY_API_KEY="your-api-key-here"' >> ~/.bashrc 获取 API 密钥:访问 https://tavily.com 注册免费账户 ...

2025年3月6日 · 2 分钟 · 242 字 · Liu

OpenClaw Skill 介绍:协作式博客写作工具

OpenClaw Skill 介绍:协作式博客写作工具 什么是协作式博客写作工具? collab-blog-writer 是一个 OpenClaw Skill,它通过多轮对话与用户共同创作博客文章。这个工具支持主题搜索、内容扩充、反复确认,最终自动发布到 Hugo 博客仓库并推送到远端。 核心功能 1. 五阶段写作流程 阶段 1:需求确认 询问博客主题/方向 了解目标读者群体 确认文章风格(技术/随笔/教程/观点等) 确定文章长度预期 阶段 2:大纲制定 根据需求制定文章大纲 向用户展示大纲并征求意见 根据反馈调整大纲 获得用户对大纲的最终确认 阶段 3:内容创作 按章节逐步撰写内容 每完成一个主要部分向用户展示 根据用户反馈修改 主动搜索补充信息丰富内容 阶段 4:完善优化 添加标题、标签、分类 优化开头和结尾 检查排版和格式 用户最终确认 阶段 5:发布部署 生成 Hugo 格式的文章文件 保存到博客 content/posts/ 目录 提交到本地 Git 仓库 推送到远端 GitHub 仓库 2. 智能交互原则 主动确认:每个重要决策都获得用户明确确认 分步展示:按章节/段落逐步展示,给用户消化和反馈的时间 内容扩充:主动使用搜索工具查找相关信息 灵活调整:根据用户反馈随时调整方向 技术实现 文章文件格式 生成的文章使用 Hugo Front Matter 格式: 1 2 3 4 5 6 7 8 9 --- title: "文章标题" date: 2024-03-05T10:00:00+08:00 draft: false tags: ["标签1", "标签2"] categories: ["分类"] --- # 正文内容... 发布路径 文章保存到:~/myblog/content/posts/<文章文件名>.md ...

2025年3月6日 · 1 分钟 · 156 字 · Liu

从ACM笔记到AI协作者:一个程序员的十年工作流变迁

从ACM笔记到AI协作者:一个程序员的十年工作流变迁 一、引言:那个在图书馆抄笔记的下午 前几天整理GitHub仓库,我无意中点开了那个叫ACM-Notes的repo。看着里面密密麻麻的Markdown文件——从《算法导论》的读书笔记,到ACM竞赛的题解,再到后来工作用的技术积累——我突然愣住了。 那是2017年的夏天,我坐在学校图书馆的角落里,笔记本上抄满了红黑树的旋转操作。旁边摊着从CSDN打印出来的博客,上面还贴着手写的便利贴。为了搞懂一道动态规划的变种题,我在知乎、GitHub、各大OJ之间来回切换浏览器标签,从下午两点折腾到晚上十点。 那时候,写一篇像样的技术博客,真的是个体力活。 二、碎片时代的困境:我们在信息海洋里溺水 现在想想,那种"到处查资料"的过程,本质上是在对抗知识的碎片化。 互联网把知识的门槛降到了最低,任何人都可以发声。这当然是好事,但它也带来了一个副作用:真正有价值的信息,被淹没在了噪音的海洋里。 我记得最清楚的是准备ACM省赛那会儿。为了掌握图论那一块,我需要学最短路、最小生成树、网络流、二分图匹配……每个算法我都能找到十几篇教程,但问题是: 有些教程只讲原理不给代码 有些给了代码但不讲复杂度 有些复杂度分析错了 有些用的数据结构太老,现在根本没人用 我不得不打开七八个网页,交叉对比,自己拼凑出一个"相对正确"的版本。然后还要自己写代码验证,发现某个边界情况没考虑到,再回去查…… 那个过程,就像是站在一个巨大的图书馆里,书都摆在那里,但你不知道哪几本应该放在一起读。更糟糕的是,有些书里的内容是错的,但你一开始并不知道。 三、创作的孤独时刻:面对空白文档的焦虑 除了技术学习,写作本身也是一场孤独的战斗。 我以前写博客,经常要面对那种空白页面的恐惧感。脑子里明明有一些模糊的想法,但就是不知道如何把它们变成流畅的文字。越是焦虑,越是写不出来;越是写不出来,越是焦虑。 印象最深的是2019年,我想写一篇关于深度学习入门的博客。那个选题本身并不复杂,但我就是写不出来。我坐在电脑前,从晚上八点折腾到凌晨一点,文档里只有断断续续的几百字,而且自己读起来都觉得别扭。 那种挫败感很难形容。不是简单的"写不出来",而是一种更深层的自我怀疑——我是不是根本就不适合写东西?为什么别人能写出那么流畅的文章,我就不行? 后来我读了一些作家的访谈,发现原来每个人都经历过这种"灵感枯竭"的困境。村上春树说他写小说时,有时候一整天只能写出一页,而且那一页还经常要删掉重写。JK罗琳说她写《哈利波特》时,经常坐在咖啡馆里盯着空白文档发呆,几个小时写不出一个字。 原来,创作的孤独是普遍存在的。区别只是,有些人学会了与这种孤独相处,有些人找到了突破的方法。 四、AI带来的协作新范式:从搜索到对话 我第一次真正意识到AI可能改变我的工作方式,是在2023年初。 那时候ChatGPT刚刚发布不久,我抱着试试看的心态注册了一个账号。起初只是让它帮忙翻译几段英文文档,或者润色一下邮件。但渐渐地,我发现它能做的事情远不止这些。 有一次,我遇到一个算法问题,是一个图论相关的变种题目。按照以前的习惯,我会先去Google搜题解,然后去LeetCode看讨论区,再去GitHub找类似的实现,整个过程可能要花两三个小时。 但那次,我试着把题目描述直接发给了AI,问它"这道题可以用什么思路解决"。 让我惊讶的是,它不仅给出了清晰的解题思路,还主动询问我是想了解具体的代码实现,还是想先理解算法的原理。当我说"我想理解原理"时,它用非常通俗的语言解释了相关的图论概念,甚至还举了几个生活中的例子帮助我理解。 整个过程大概就花了二十分钟,而且我得到的不是一个死记硬背的答案,而是真正理解了背后的逻辑。 那一刻,我突然意识到:我获取知识的方式,可能正在发生根本性的改变。 以前,我面对的是一个由无数网页、文档、代码片段组成的静态信息网络,我需要自己去筛选、判断、整合。而现在,我面对的是一个可以与我对话、理解我的上下文、根据我的需求动态调整输出的智能体。 这种转变,就像是从在图书馆里独自翻阅书籍,变成了有一个知识渊博的朋友随时与我讨论问题。前者当然有其价值,但后者的体验和效率,显然是更高维度的。 后来,我开始更多地尝试用这种方式来学习和工作。遇到不懂的技术概念,我不再先去搜博客或看文档,而是直接问AI,让它用通俗易懂的方式解释。需要写一个工具脚本,我不再去GitHub上找类似的代码然后改一改,而是直接描述需求,让AI帮我生成一个基础版本,然后我再根据需要进行调整。 这种改变带来的不仅仅是效率的提升。更重要的是,它让我从"信息的搜集者"变成了"知识的对话者"。 五、个人工作流的重构:效率与质量的双重提升 基于这些改变,我的工作流已经彻底重构。 以前的工作流: 有了一个想法或需求 花大量时间搜索资料 试图从碎片中拼凑出完整图景 独自面对创作任务,承受心理压力 最终产出可能不够理想 现在的工作流: 有了一个想法或需求 与AI对话,快速澄清和细化需求 让AI帮助设计系统化的解决方案 与AI协作完成创作,不断迭代优化 AI辅助检查和完善最终产出 这个新的工作流不仅效率更高,更重要的是质量也有了显著提升。因为我可以: 更系统地思考问题 获取更丰富和准确的信息 在创作过程中得到即时的反馈和建议 不断优化和迭代直到满意 更重要的是,这个过程变得轻松和愉快了。以前面对复杂任务时的那种焦虑感和孤独感大大减轻了,因为我知道,我始终有一个可以对话的伙伴。 六、未来展望:家中的智能协作者 写到这里,我不禁开始想象未来的场景。 现在的AI助手主要还存在于数字世界——我们在屏幕上与它们对话,它们帮助我们处理信息、创作内容、解决问题。但这显然不是终点。 想象一下,当你回到家中,有一个智能机器人可以通过自然语言与你交流,理解你的需求,并执行复杂的自动化任务。这听起来像是科幻电影的场景,但实际上,实现这一目标所需的技术正在快速成熟。 关键在于"Skill"这个概念。 就像我在电脑上编写Skill来扩展AI的能力一样,未来的家用机器人也将通过Skill来学习如何执行各种任务。不同的是,这些Skill将不仅仅处理数字信息,还将涉及与物理世界的交互。 想象一下这样的场景: 你对家中的智能机器人说:“我今晚想做一道意大利面,要简单快速的,你帮我准备一下。” 机器人通过内置的"烹饪助手"Skill执行以下工作流: 首先,它快速搜索适合初学者的意大利面食谱,同时检查你厨房中现有的食材库存。然后,它生成一个购物清单,列出你还需要购买的食材,并按照超市的区域进行分类,方便你快速找到。 接下来,它将烹饪步骤按照时间线重新组织,最大化效率。比如,它会告诉你"在煮水的同时可以切洋葱",“酱料煮的时候可以去煮面条”。 当你开始烹饪时,机器人通过语音实时指导每一步,回答你的问题。如果你问"这个酱汁要煮多久?",它会立即给出准确的回答。 整个过程中,你不需要去搜索食谱、计算时间、记忆步骤,只需要与机器人自然对话,告诉它你的需求,它就会帮你处理所有的细节。 这不仅仅是简单的自动化,而是真正意义上的智能协作——机器人理解你的意图,根据具体情境做出判断,并执行复杂的任务序列。 而这样的场景,不只是烹饪。 想象一下,当你需要准备一个重要的工作汇报时,机器人可以帮助你收集数据、分析趋势、制作图表,甚至根据你的演讲风格为你撰写讲稿。 ...

2025年3月6日 · 1 分钟 · 94 字 · Liu