win11本地部署openclaw实操第2集-让小龙虾具有telegram机器人能力和搜索网站能力

1 按照第一集的部署完成后,我们就开始考虑给小龙虾增加telegram机器人和搜索网站能力,实现效果如下:

在这里插入图片描述


在这里插入图片描述

2 telegram机器人能力部署

C:\Users\Administrator.openclaw的配置文件openclaw.json

在这里插入图片描述


在这里插入图片描述

增加一段内容

"channels":{"telegram":{"enabled": true, "dmPolicy":"pairing", "botToken":"你的telegram机器人的token", "groupPolicy":"allowlist", "streamMode":"partial", "network":{"autoSelectFamily":true}, "proxy":"http://你的代理IP:你的代理端口", "actions":{"reactions": true, "sendMessage": true, "deleteMessage": true, "sticker":true}}}, 

五、对接 Telegarm 电报机器人

打开你的 Telegram,搜索 @BotFather,发送 /newbot,来创建一个新的机器人,按提示设置:

在这里插入图片描述

给 Bot 起个名字,比如我设置为 人工智能我来了

在这里插入图片描述

设置用户名(必须以 bot 结尾,比如Renggongai0219Bot )

最后会给你一串 Token:你的token

输入 token 进行对接,并进入到刚才创建的机器人里,第一次打开会显示还未正式对接,但是会在里面提供配对码,比如我的是 Pairing code: 你的token

XX

现在只需重新打开一个新的 Powershell 窗口,然后在里面输入配对命令即可

openclaw pairing approve telegram 这里填写你的配对码 
在这里插入图片描述

当你看到这个界面的话说明已经和Telegram配对成功了!

版本升级到3.12后配置有点不一样了

1.打开 Telegram → 搜索 @userinfobot → 发送 /start → 机器人会直接回复你的数字 ID(格式:Id: 1987654321)。

在这里插入图片描述

2.1 openclaw配置

openclaw onboard
◇ Telegram allowFrom (numeric sender id; @username resolves to id)
│ XXXXXX(输入上图ID的数字)

3 搜索网站能力部署

C:\Users\Administrator.openclaw的配置文件openclaw.json

在这里插入图片描述


在这里插入图片描述

增加一段内容

"tools":{"web":{"search":{}, "fetch":{"maxChars":20000, "timeoutSeconds":30, "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}}}, 

4 openclaw.json配置文件全部内容

{"meta":{"lastTouchedVersion":"2026.2.19-2", "lastTouchedAt":"2026-02-21T06:04:19.113Z"}, "wizard":{"lastRunAt":"2026-02-21T06:04:19.057Z", "lastRunVersion":"2026.2.19-2", "lastRunCommand":"onboard", "lastRunMode":"local"}, "logging":{"level":"info"}, "models":{"providers":{"ollama":{"baseUrl":"http://127.0.0.1:11434/v1", "apiKey":"ollama-local", "api":"openai-completions", "models":[{"id":"gpt-oss:20b", "name":"gpt-oss:20b", "reasoning": false, "input":["text"], "cost":{"input":0, "output":0, "cacheRead":0, "cacheWrite":0}, "contextWindow":131072, "maxTokens":16384}]}}}, "agents":{"defaults":{"model":{"primary":"ollama/gpt-oss:20b"}, "models":{"ollama/gpt-oss:20b":{}}, "workspace":"C:\\Users\\Administrator\\.openclaw\\workspace", "compaction":{"mode":"safeguard"}, "maxConcurrent":4, "subagents":{"maxConcurrent":8}}}, "tools":{"web":{"search":{}, "fetch":{"maxChars":20000, "timeoutSeconds":30, "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}}}, "messages":{"ackReactionScope":"group-mentions"}, "commands":{"native":"auto", "nativeSkills":"auto", "restart":true}, "hooks":{"internal":{"enabled": true, "entries":{"boot-md":{"enabled":true}, "session-memory":{"enabled":true}}}}, "channels":{"telegram":{"enabled": true, "dmPolicy":"pairing", "botToken":"用你自己的代替", "groupPolicy":"allowlist", "streamMode":"partial", "network":{"autoSelectFamily":true}, "proxy":"http://127.0.0.1:7897", "actions":{"reactions": true, "sendMessage": true, "deleteMessage": true, "sticker":true}}}, "gateway":{"port":18789, "mode":"local", "bind":"loopback", "auth":{"mode":"token", "token":"用你自己的代替"}, "tailscale":{"mode":"off", "resetOnExit":false}, "remote":{"url":"ws://127.0.0.1:18789", "token":"你设置的密码代替"}, "nodes":{"denyCommands":["camera.snap", "camera.clip", "screen.record", "calendar.add", "contacts.add", "reminders.add"]}}, "skills":{"install":{"nodeManager":"npm"}}, "plugins":{"entries":{"telegram":{"enabled":true}}}}

Read more

Flutter 三方库 dart_test_utils 的鸿蒙化适配指南 - 实现具备单元测试增强与 Mock 逻辑简化的质量保障体系、支持端侧测试用例工程化流水线实战

Flutter 三方库 dart_test_utils 的鸿蒙化适配指南 - 实现具备单元测试增强与 Mock 逻辑简化的质量保障体系、支持端侧测试用例工程化流水线实战

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 dart_test_utils 的鸿蒙化适配指南 - 实现具备单元测试增强与 Mock 逻辑简化的质量保障体系、支持端侧测试用例工程化流水线实战 前言 在进行 Flutter for OpenHarmony 开发时,高质量的测试是确保应用在复杂分布式环境下不退化的唯一手段。虽然 Dart 自带了 test 库,但在处理一些重复的测试脚手架代码(如日期 Mock、随机数据生成、异常断言增强)时,依然显得繁琐。dart_test_utils 是一款旨在为 Dart 测试注入更高生产力的辅助库。本文将探讨如何在鸿蒙端构建极致、专业的测试保障体系。 一、原直观解析 / 概念介绍 1.1 基础原理 该库提供了一系列针对测试用例编写的“

【Linux系统编程】(四十二)吃透线程互斥!从原理到实战,手把手教你玩转 Linux 下的互斥锁

【Linux系统编程】(四十二)吃透线程互斥!从原理到实战,手把手教你玩转 Linux 下的互斥锁

目录 前言 一、线程互斥的核心概念:搞懂这些,才算入门 1.1 共享资源与临界资源 1.2 临界区 1.3 互斥的定义 1.4 原子性:互斥的底层要求 二、多线程共享资源的坑:亲眼看看问题出在哪 2.1 问题代码:未加互斥的售票系统 2.2 编译运行与异常结果 2.3 问题根源:三步分析 (1)线程调度的随机性 (2)耗时操作放大了竞争问题 (3)ticket--本身不是原子操作 2.4 解决问题的核心要求 三、Linux 下的互斥量:mutex 的使用全解析 3.1 互斥量的类型与核心接口

Flutter 组件 shelf_router 的适配 鸿蒙Harmony 实战 - 驾驭官方标准路由器架构、实现鸿蒙端 HTTP 流量精密分发与逻辑路由审计方案

Flutter 组件 shelf_router 的适配 鸿蒙Harmony 实战 - 驾驭官方标准路由器架构、实现鸿蒙端 HTTP 流量精密分发与逻辑路由审计方案

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 组件 shelf_router 的适配 鸿蒙Harmony 实战 - 驾驭官方标准路由器架构、实现鸿蒙端 HTTP 流量精密分发与逻辑路由审计方案 前言 在鸿蒙(OpenHarmony)生态的分布式业务中继、政务级内嵌 API 管理平台以及需要承载大规模高频交互请求的各类全栈式应用开发中,“路由的精确支配与逻辑安全性”是决定系统架构稳健性的命门所在。面对包含上百个 RESTful 端点的复杂服务模型、需要动态解析包含 UUID、日期等多种格式的 URL 参数,或者是需要针对鸿蒙手机与智慧大屏执行差异化的路由匹配。如果仅仅依靠原始的字符串拆分或低性能的手写拦截逻辑。不仅会导致路由解析执行效率的低下,更会因为缺乏一套工业级的“官方契约”规范。引发鸿蒙端微服务接口在面对异常报文时的逻辑脆弱性风险。 我们需要一种“官方背书、匹配闭环”的路由艺术。 shelf_router 是一套由 Dart 官方团队维护的、

Flutter 三方库 functional_enum 的鸿蒙化适配指南 - 实现具备函数式特性的增强枚举类型、支持模式匹配(Pattern Matching)与状态机逻辑简化实战

Flutter 三方库 functional_enum 的鸿蒙化适配指南 - 实现具备函数式特性的增强枚举类型、支持模式匹配(Pattern Matching)与状态机逻辑简化实战

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 functional_enum 的鸿蒙化适配指南 - 实现具备函数式特性的增强枚举类型、支持模式匹配(Pattern Matching)与状态机逻辑简化实战 前言 在进行 Flutter for OpenHarmony 开发时,虽然 Dart 2.17+ 引入了增强型枚举(Enhanced Enums),但在处理需要类似 Rust 或 Swift 那样的代数数据类型(ADT)、复杂的模式匹配以及枚举关联逻辑的声明式映射时,代码依然会显得琐碎。functional_enum 是一款旨在为 Dart 枚举注入函数式灵魂的工具库。本文将探讨如何在鸿蒙端利用此库构建极致、优雅的状态建模体系。 一、原直观解析 / 概念介绍 1.1 基础原理