MoreRSS

site iconelmagnifico | 云浅雪修改

程序员,架构师,无人机集群表演设计师,嵌入式工程师,maya插件开发者,多智能体研究者,独立游戏爱好者。
请复制 RSS 到你的阅读器,或快速订阅到 :

Inoreader Feedly Follow Feedbin Local Reader

elmagnifico | 云浅雪的 RSS 预览

自建OpenClaw

2026-02-25 00:00:00

Foreword

之前实践了MCP、Skills,最近又出来了OpenClaw,大火了一把,再来看一下OpenClaw又能干些啥吧

OpenClaw

历史

OpenClaw之前叫ClawdBot,是单独对接Claude的,但是由于瞬间爆火,对于谷歌服务大量访问,再加上Logo稍微有点侵权,直接把对应使用者的账号全封禁了,自然也就停止对谷歌系的支持,后续Meta、OpenAI都在大力招揽OpenClaw的团队,对应OpenClaw的创始人Peter,Peter后来直接投奔OpenAI了,站在了Google系的对面。

Peter在OpenClaw之前已经是一个传奇人物了,之前是做PDF相关渲染的组件的,基本上所有移动端使用的都是他的组件,很是牛逼

Peter之前写的代码是那种锱铢必较的风格,反而是到了OpenClaw这里,看了对他的采访,他已经不在意代码细节了,全都给AI去写了,自己只管功能和效果是否正确了,走向了另外一个极端,稍微有点奇怪,不太符合人物弧光。

OpenClaw就是他做一个AI助手,本质上就是希望AI可以帮自己直接完成事情,至于中间的过程也完全交给AI自己去迭代自己,而不需要人工介入,类似Manus那种,但是工作范围更广。

OpenClaw能火,其实也是建立在之前的MCP、Skills之上的,如果没有前面的软件能力开放,那么这个AI助手也巧妇难为无米之炊。

在MCP时我就预言了日后大模型供应商就会提供入口把其他软件接入进来,这么久都没有几家做出来像样的东西。一直到OpenClaw,刚好切入了这个点,同时他又符合大家对于AI助理需求的一些点:

  • 开源,不会突然消失或者收费或者没人维护
  • 自托管,不需要云服务,跑自己的机器就行了,隐私什么的都存储在本地
  • 模型可选,如果是模型商的入口,那必然会屏蔽其他家的模型形成垄断,但是开源不会,甚至允许你接入各种不同的模型
  • 可以操作本地OS,包括Windows、Linux、Android、IOS,真的像是个人在操作了

这是AI助理最基础几点要求,OpenClaw都满足了,再往大里说:

  • 多模型路由,不同任务可以走不同模型,可以配置
  • 技能扩展,可以接入MCP、Skills,各种插件,并且现在已有插件市场类的商店了

大模型从简单的语言对话,一下子跳跃到可以帮你直接干活了,不再拘泥于你要自己写好各种Skills、Prompt或者去调用MCP再完成一个任务了,从只能程序员使用或者有类似程序员能力的人使用,使用者一下扩展了很多,类似国内的这些模型,搞点奶茶、点外卖等等

OpenClaw从IM端入手,IM刚好就是人最多的,而不是类似大模型商,非要用户下一个新的APP,用他们的程序进入到AI助手的环境中,刚好保持了用户习惯,对于用户来说没有APP迁移和学习成本。

核心工作原理

image-20260225181928842

我们都知道和大模型交流要有上下文,而且如果上下文特别多的情况下,会导致很久之前的重要信息被顶替。而如果真的使用OpenClaw作为AI助理,那无可避免的是上下文可能会特别多,这种情况下就需要额外的一些办法,把AI和你的对话或者工作内容等等关键事项,作为智能体的记忆存储下来

image-20260225170919635

工作流

并不是说有了OpenClaw,就什么都可以做了,本质上还是类似Skills,需要你建立对应的工作流,然后让AI助理自动进行一些定期任务

如果是IM接入,那么对应的,它内部也可以做一个CRM系统,记住你的社交关系等内容,帮你定时提醒维护客户关系或者开会、用户反馈等事宜

image-20260225171056574

类似的知识库也能直接给OpenClaw去记录甚至分享给其他人,相当于内部构建一个RAG,他甚至和上面的内容结合以后就可以分享给你的同事、朋友,让助理帮你分享对应内容(有时候你自己想不起来具体细节)

image-20260225171255310

对应的到软件工程这里,也可以构建一个类似的工作流,直接让他来完成工作内容,甚至我们啥都不用干都可以,举个例子:

image-20260225174021824

只要用户issues提的比较完整,剩下靠AI自己去处理,那么很多简单的问题都可以快速处理完

部署

这里就不在云上部署了,而是直接部署在本地,OpenClaw面向国外更多一些,这里和Telegram结合进行说明

下载代码

git clone https://github.com/openclaw/openclaw.git
cd openclaw
git checkout v2026.2.24

启动Docker编译脚本(其实没必要,直接拉云端最新的就行)

./docker-setup.sh

这里是官方一键启动的脚本,他会自动创建好,并且返回给你的登录地址和token,这里时gateway token,最好保留住,以后也有可能会用到

winpty docker compose run --rm openclaw-cli onboard

这里可能会出问题,建议用winpty包一层再执行onboard

image-20260225183509934

需要你同意协议或者权限,这里注意是使用方向键确认,空格键选择,选好一些基础信息就可以启动了,这里选择用千问模型

  • 会提示你需要登录千问的授权和token,授权以后就可以下一步了

image-20260225184057359

选择对接的IM,可以看到竟然有飞书,企微、微信、钉钉什么的都还没有支持(可以通过插件支持)

这里选择Telegram,然后去Telegram与@BotFather对话,创建一个新的bot,并起名

/newbot

完成以后就拿到了Telegram的bot token,输回命令行。

后续是配置Skills还有一些基础功能,默认选择就行了

  • 默认端口可能在windows容易出错,建议选择手动配置修改一下端口

修改端口在openclaw的根目录下的 .env文件里

OPENCLAW_CONFIG_DIR=/c/Users/elmag/.openclaw
OPENCLAW_WORKSPACE_DIR=/c/Users/elmag/.openclaw/workspace
OPENCLAW_GATEWAY_PORT=28789
OPENCLAW_BRIDGE_PORT=28790
OPENCLAW_GATEWAY_BIND=lan
OPENCLAW_GATEWAY_TOKEN=9a40ed6a9e0e0fe01420dd676b273953bc2f7c47412e12a23adb8eb893c35380
OPENCLAW_IMAGE=openclaw:local
OPENCLAW_EXTRA_MOUNTS=
OPENCLAW_HOME_VOLUME=
OPENCLAW_DOCKER_APT_PACKAGES=

  • 这里的token可能会过期,每次重新生成以后,这里的token不会被更新
2026-02-25 20:42:21 2026-02-25T12:42:21.921+00:00 Gateway failed to start: Error: non-loopback Control UI requires gateway.controlUi.allowedOrigins (set explicit origins), or set gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback=true to use Host-header origin fallback mode

启动以后还会遇到一个情况,说白了跨域访问不允许,所以需要增加一个controlUi的配置项,指明访问域

增加访问域的配置文件一般是在这个目录下,真实的token是存储在这个json中的,前面onboard的流程中的配置项都存储在这里

C:\Users\你的用户米\.openclaw\openclaw.json

image-20260225205900549

    "controlUi": {
      "allowedOrigins": [
        "http://127.0.0.1:28789",
        "http://localhost:28789"
      ]
    }

加上这部分配置以后就能正常访问了

正常启动以后默认地址是这里,然后登录进去就可以配置他了

http://127.0.0.1:18789/

第一次登录以后会提示离线、未授权

image-20260225205000096

需要输入gateway的token以后,连接

image-20260225205201495

接着看到提示需要配对,这里需要先查看OpenClaw内部被请求的设备是谁

docker compose exec openclaw-gateway sh -c "node /app/dist/index.js devices list --token 你gateway的token"

正常会返回类似这样的一个东西,这里的Request 就是我们要的东西

Pending (1)
┌──────────────────────────────────────┬──────────────────────────────────┬──────────┬────────────┬──────────┬────────┐
│ Request                              │ Device                           │ Role     │ IP         │ Age      │ Flags  │
├──────────────────────────────────────┼──────────────────────────────────┼──────────┼────────────┼──────────┼────────┤
│ 9656c4a9-9ac6-4672-9315-ce47db26555c │ 3515c8425c3786148673e3e6ec5bf9f3 │ operator │ 172.18.0.1 │ just now │        │
│                                      │ 1fa70ec8dcc55085ce6ab6b8c536b79d │          │            │          │        │
└──────────────────────────────────────┴──────────────────────────────────┴──────────┴────────────┴──────────┴────────┘

接着允许这个请求

docker compose exec openclaw-gateway sh -c "node /app/dist/index.js devices approve <Request ID> --token 你gateway的token"

然后就能看到我们的网关UI正常匹配了,可以直接通过这个页面进行聊天

image-20260225223544468

同理,此时和Telegram的机器人对话会提示要求配对

image-20260225220631828

配对需要执行Cli的配对命令

docker compose run --rm openclaw-cli pairing approve Telegram NXYWNNRU
Approved Telegram sender 457350036.

正确以后会提示Approved的信息,到这里Telegram的bot就能正常工作了

测试

image-20260225220921237

刚开始初始化阶段需要给他一个名称和提供一些基础信息,然后可以看到私人助理此时已经正常运行了。

剩下你就可以把工作流或者一些要他做的事情通过对话的方式告诉他,让他执行了

简单工作流,让助手提醒我写Blog

image-20260225225120345

可以看到OpenClaw在我没做任何配置的情况下,就可以理解自然语言的任务,并且根据这个任务进行几轮迭代,然后把最优的结果输出给你

剩下你就可以发挥自己的想象力了,把很多东西扔给他去做

网关页面的聊天,同样正常可以操作了

image-20260225223901662

常见问题

image-20260225181438514

如果直接用windows git bash执行会出现无法选择yes或者no,下面的QuickStart也不能选择,这里最好用winpty包一下再执行,这样交互UI就正常了

winpty docker compose run --rm openclaw-cli onboard

启动以后提示,要么是端口被占用,要么是端口就不允许用

Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:18790 -> 127.0.0.1:0: listen tcp 0.0.0.0:18790: bind: An attempt was made to access a socket in a way forbidden by its access permissions.

端口被占用比较好解决,看哪个程序然后把他干掉就行了。

但是端口不允许用,我第一次碰到,windows下查看保留端口,就能看到刚好把18790这个附近的端口保留了

netsh int ipv4 show excludedportrange protocol=tcp

协议 tcp 端口排除范围

开始端口    结束端口
----------    --------
      5357        5357
     17945       18044
     18045       18144
     18145       18244
     18245       18344
     18345       18444
     18445       18544
     18545       18644
     18645       18744
     18745       18844
     50000       50059     *

要么去掉这里的端口,要么在openclaw里选择manual手动配置,然后改这个端口号

  • 一般不建议动保留端口,可能其他使用的程序会出问题

image-20260225192549047

当发现这个问题的时候,推荐修改.env文件内的端口号

如果使用类似Telegram的方式操作容器内部的openclaw获取设备列表会报错,这个是因为内部设备列表的路径里没加上openclaw的环境变量

$ docker compose exec openclaw-gateway openclaw devices list
OCI runtime exec failed: exec failed: unable to start container process: exec: "openclaw": executable file not found in $PATH: unknown

所以实际操作的时候直接用调用node去操作了,而不是用openclaw

gateway connect failed: Error: unauthorized: gateway token mismatch (set gateway.remote.token to match gateway.auth.token)
[openclaw] CLI failed: Error: gateway closed (1008): unauthorized: gateway token mismatch (set gateway.remote.token to match gateway.auth.token)
Gateway target: ws://127.0.0.1:18789
Source: local loopback
Config: /home/node/.openclaw/openclaw.json
Bind: lan
    at Object.onClose (file:///app/dist/call-CmI9Jmad.js:444:10)
    at WebSocket.<anonymous> (file:///app/dist/client-Bri_7bSd.js:2128:23)
    at WebSocket.emit (node:events:519:28)
    at WebSocket.emitClose (/app/node_modules/.pnpm/[email protected]/node_modules/ws/lib/websocket.js:273:10)
    at Socket.socketOnClose (/app/node_modules/.pnpm/[email protected]/node_modules/ws/lib/websocket.js:1346:15)
    at Socket.emit (node:events:519:28)
    at TCP.<anonymous> (node:net:346:12)

出现这个错误是因为你在宿主机器上访问容器内的OpenClaw时,他认为你是个外人,不认识你,所以需要你附带操作的token才允许你交互

OpenClaw用他自己的一键Docker配置反而整的更麻烦了,特别是他的gateway竟然和OpenClaw是分离的两个东西,要单独授权,这个就有点太麻烦了。

  • 以前的经验都是这个gateway UI和OpenClaw是一体的,不需要额外的授权或者什么的,在这里反复折腾了老半天

Summary

Skills中就已经可以搭建基础工作流了,只是这个工作流触发或者执行时还是有很多地方需要人工审核或者启动,而OpenClaw相当于是一个For循环,允许这个东西自动工作了,权限更大,甚至能力也可以自动补充,而不需要Skills里面给他一个个增加这种能力,确实更进一步了。

但是在OpenClaw这么强大的同时,也要谨慎,因为他的权限过大,很容易在AI理解出错的情况下,做出来一些很奇葩的事情,比如直接给你东西删除了,覆盖了,或者公开了什么私密的东西。

同时看似OpenClaw轻而易举的就完成了某些事情,但是也要注意到实际后面的token消耗,由于我只是体验,走的本身是千问的免费token,实际这个任务量大了以后根本顶不住

image-20260225230308015

这里看到一次消耗了10-15k tokens,这已经非常夸张了,如果你自己写个skill,把刚才对应的能力写成代码,估计用不了这么多

同样的由于OpenClaw可以直接接入IM工具,最好是给他一个新的账号类似TG的bot,而不是把你自己的账号给了OpenClaw。

  • 给自己账号有一个好处,有可能真的可以把OpenClaw变成自己的数字人,甚至自己的语气、习惯和很多内容都可以让他模仿和学习,如果你完全不在意自己的隐私的话

在Windows下用Docker部署还是有点太绕了,建议还是直接部署到云服务或者内网的其他机器上去,Windows的部署体验还是比较繁琐,要解决的问题一个接一个。或者是直接原生部署,不要用Docker,这样就不存在OpenClaw和Gateway还互相不认识的情况了

目前比较划算的部署方式就是利用一些比较大的订阅服务,持续消费token,而不是买token,大工程消耗量有点惊人

看到这个助理还支持米家的大模型了,可惜米家的开放性还是差了一点,如果是用HA的话,直接可以让助理接入家庭,作为家庭管家,然后你就可以让管家自己操作对应空间内的智能家居了,其实还是挺好的,直接跳过那一堆设备联动,让管家自己来判断和操作即可

Quote

https://www.v2ex.com/t/1193787#reply19

https://www.ifanr.com/1655353?utm_source=rss&utm_medium=rss&utm_campaign=

https://www.youtube.com/watch?v=8kNv3rjQaVA

https://docs.openclaw.ai/start/getting-started

Su7 Ultra 赛道总结

2026-02-24 00:00:00

Foreword

年过完了,总结一下今年玩车事宜

1.31 小米官方赛道日

第二次小米珠海赛道日,本来没抢到名额,后来点进去一看有人退了,刚好捡漏报上了。

PPT 总算换成了有经验的人来讲。第一次庆磊那场讲得挺糊弄的,后来出了不少事。这次没经验的新手都被要求认真听完,该注意的点都讲了,还请了十个教练,A 组新手基本挨个上车指导。

不过桩桶摆放还是有点问题,放在路肩上,开得快的要吃路肩,桩桶就会被带到路中间——大直道 200 多时速的那种,一言难尽。

好在有教练和各方面兜底,没出大事故,进波波池的不少,但车损都很小。

这次比之前快了不到 1s,跑出 1:49,勉强进了一分五十,感觉还有不少提升空间。

带了老爹老妈去赛道体验了一下。一开始主办方不让带人,还好提前买了保险,又是录视频又是签后果自负,总算能正常带人上去了。没 push,只是让老爹感受了一下 260 公里每小时的速度。同场还有车主带了父亲来,但他不够强硬,最后还是没给他带上路。其实之前都随便带人的,也没人管,只是我刚好借头盔被看到了

懂车帝 - 车手启航计划

紧接着又有懂车帝的赛道日。和之前一样,要先发文章再选人,我把之前的文章让 AI 融合了一篇发到懂车帝,结果被推荐了,流量挺大(7w+),提前就锁定了报名席位。

31f25d8ea1a0965f8c8b999254251d1

车手启航计划主要是给新手体验用的,可以慢慢走赛道,有点意思。平常都开得太快,很难慢下来仔细看路。模拟器里的赛道和现实差别不小:模拟器里路都是平整的,现实中珠海赛道维护得其实挺差,很多路段都有起伏,会直接影响电控。

教练是真正的 1V1 指导,每辆车都跟,就是只有 2 圈,有点少,拿不到完整圈速。不过教练还是有点用,指出我几个弯走线不对,后面练习节试了一下,但车太多,没跑出圈速,还是 1:50。

这次嘉宾是 杨慢慢追风逐日,给他看了不少 Ultra 的车载,他点评了一下,也分享了比较快的 GT3 车载,挺有收获。

懂车帝的活动基本都免费,连早餐、午餐都包,体验确实不错,小米还得好好学。当天还碰到 盛嘉成 在拍 U9X 的片子,现场还有一辆 U9,为了给它充电甚至单独拉了一台充电保障车过来,挺牛的。

车手启航计划是 L1 级别,懂车帝后面还有 L2、L3 更高级的培训,可以期待。唯一的问题是活动在 APP 里搜不到,活动海报也不知道是从哪儿发出来的。

GT7 - Su7 Ultra 上线

image-20260224102159477

之前一直说 Su7 Ultra 要上 GT7,拖了很久,总算来了。本以为会以 DLC 形式加入,结果只是给一张奖券,有点拉。拿奖券报名折腾了半天,也就对应游戏里一点货币而已。

image-20260224102223196

之前没玩过 GT7,专门借了台 PS5 来玩。不得不说 GT7 确实有点东西,各个品牌在游戏里都有数字博物馆,只是小米这个有点抽象:很多页面全是手机,最后几页才是车,甚至还能在游戏里直接登录小米官网。

画质、手感都一般,路感不够清晰,压路肩的反馈不明显。当然也可能是模拟器适配的问题,但我这已经是官方适配了。

GT7 对新手比较友好的一点是,默认有过弯自动减速,可以一路踩死油门,只管走线就行。雨战里算是第一次真正感受到漂移,反打救了几次车,漂移有点入门感觉了。

赛道总结

赛道日统计

5.25,ZIC官方 5.31,麻涌TopOne 8.24,ZIC官方 10.24,PT赛道日 11.20,懂车帝 12.8,PT赛道日 12.27,小米 1.27,PT赛道日 1.31,小米 2.7,懂车帝

今年一共去了十个赛道日,圈速从第一次的 2:15 跑到现在的 1:49,算是勉勉强强入门(杨慢慢说现实赛道至少得跑个三四百圈才算入门,我现实只有七十多圈,模拟器大概快两千圈了)。

装备统计

轮毂统计: 325后轮毂2个 305后轮毂2个 265前轮毂4个

赛轮散件: 赛轮PT01 265轮胎2个

赛轮全新1套: 赛轮PT01 325轮胎2个 赛轮PT01 265轮胎2个

赛轮半新1套: 赛轮PT01 325轮胎2个 赛轮PT01 265轮胎2个

长续航1套: 倍耐力小米原厂长续航305轮胎2个 倍耐力小米原厂长续航265轮胎2个

卫途残废1套: 卫途P1 305轮胎2个,已磨平 卫途P1 265轮胎2个,已磨平

费用统计

  • 参加各种赛道日:约 1w
  • 轮胎、轮毂:约 2w
  • 刹车片(换过一次):接近 1w
  • 衍生费用(住宿、路费、保险等):小于 1w

总体大概 4w 多,还算能接受。26 年再玩一年估计也在 10w 以内,算比较有性价比的玩法了。

保险

新年车的保险也要续费了。因为出了两次险,保费只降了 2k,对比其他人还是偏高一点。

image-20260224112308283

和小地方比,这车险价格就差得多了。

Summary

年前基本就这么多赛道日了,下次赛道日可能就是四五月份了,据说保时捷包场了一两个月,是真的牛逼。

西双版纳/海南自驾游-计划版

2026-02-05 00:00:00

Foreword

原计划是从深圳自驾往返西双版纳,把沿途的一些城市和景点顺路串起来,玩一圈。

我不喜欢寒冷,所以春节这个时间点,海南和西双版纳天气差不多,只是西双版纳早晚比较冷,中午比较热,海南则是一整天都比较合适,这两个地方都可以选择去自驾一下。

趣兜风

自驾最大的麻烦,就是所有路线、节奏、景点都要自己规划。想着能不能偷个懒,就去翻了一圈市面上的自驾类 APP,看能不能直接「抄作业」——要么自动规划,要么用别人现成的路书。

这类 APP 里,比较常见的就是「趣兜风」「趣自驾」「xx路书」。趣兜风 算是功能相对完整的:可以用 AI 生成路线,也可以配置一些偏好,选项稍微多一点。不过这类功能基本都要会员,好在会员也不用正价买,咸鱼上搞个一周的就行。

实际试下来,生成的路书和可调的选项还是太少。自动规划的深圳→西双版纳路线,一上来就给了一个 11 天 的方案,直接离谱。更别说后面还要返程。有些景点更是「默认必带」,不管你选不选,几乎每条路线都带着,给人的感觉就是:商家交了保护费,APP 这边就死命往你路线上塞。

AI 生成的途经点看着很「智能」,比如你删掉了一整天,它会帮你重新算一条路。但这只是表面上的,实际上你删掉的那个点,在线路上还是会经过,该走的路一米不少,体验挺离谱的。

如果你删掉的是「当天的结束点」,第二天的起点依然是那个被删掉的结束点,完全没有「自动补齐」的能力,只能自己手动挪,很无语。

至于其他人发布的路书,想找到和自己起点、终点都匹配的那条,基本是碰运气。搜索功能也非常难用,没办法按「起点 + 目的地」来筛选,大多数时候都只是看个热闹。

看上去 APP 里有个「社区」,但点开一看,很多路线和自己的需求都对不上;不少内容看起来像是 AI 挤出来的:景点描述、游玩内容来来回回就那几句。社区里的 Top 帖子大多是三四年前的老内容,也没什么持续运营的感觉。

路线之外,还有一个「伴游」功能,类似语音导游。声音听起来像是提前录好的,不像是现编的,这部分倒是挺有意思的,适合「走到哪听到哪」。只是有些讲解内容本身和时效性强相关,现在再听已经有点过期了。

西双版纳

去程(计划)

大致设想是分段推进,沿途顺路逛几处城市和景点:

  • 崇左:明仕田园、德天瀑布
  • 靖西:通灵大峡谷(峡谷 + 瀑布,其实和德天有点冲突,可以视情况取舍)
  • 蒙自:南湖公园(夜景)、碧色寨
  • 建水:建水古城、紫陶街
  • 普洱:那柯里茶马驿站、景迈山茶林文化景区
  • 景洪:曼听御花园、总佛寺、傣乡水城、勐捧路、江边夜市(夜景)、星光夜市(夜景)、西双版纳勐泐文化旅游区
  • 勐仑:中科院植物园(日、夜游)
  • 勐海:景真八角亭、中缅第一寨勐景来景区

按天粗略拆开,大概是这样的节奏:

  • D1 深圳 → 崇左:基本纯赶路,当天到崇左休整。
  • D2 崇左周边:明仕田园 + 德天瀑布,晚上直接拉车到蒙自。
  • D3 蒙自 → 建水:白天在蒙自逛南湖公园、碧色寨,晚上去建水古城,住建水。
  • D4 建水 → 普洱 / 景迈山:上午逛建水紫陶街,然后一路向西去普洱,那柯里茶马驿站,继续上景迈山寨,晚上在周边找个地方落脚。
  • D5 普洱 / 景迈山 → 勐海 → 景洪:先去勐海的景真八角亭,再转去中缅第一寨勐景来景区,晚上赶到景洪。
  • D6–D7 景洪:在景洪「随缘乱逛」,上述那一串景点按心情排两天。
  • D8 勐仑:中科院植物园,白天 + 夜游基本能耗掉一整天。
  • D9 返程起步:如果不休息,理论上这天就可以开始全速往回赶路了。

中间视路况和实际体力,还有些机动空间,可以留给补觉或者临时插入小景点。

这个计划里基本没有大堵车的场景,如果春节大堵车估计就不够用了

备选路径 / 景点

地图上顺手又挑了一些看起来不错的点,但综合距离、内容重复度之后,暂时放弃了:

  • 崇左:安平仙河、太平古城
  • 南宁
  • 昆明:海埂大坝(看海鸥)、洛龙公园(樱花节)、西山景区(缆车)、捞鱼河湿地公园、昆明老街、五里多农博广场
  • 广南县:坝美世外桃源景区
  • 丘北县:普者黑、青龙山
  • 元阳县:哈尼梯田风景区
  • 墨江北县:回归线标志园

这些地方要么有点绕远,要么和已有景点类型上高度重合,就先从本次规划里剔除了,留着以后单独规划一条线再去。

返程(计划)

返程这段,本来是想「补课」一下几个听说过很多次,但一直没去的海边城市:

  • 防城港市
  • 钦州:三娘湾
  • 北海:北海银滩

如果按照去程 + 返程的完整方案来走,保守估计得 11–12 天 才能比较从容地跑完,春节这种高峰期基本就是硬刚人流量了。

海南

既然西双版纳比三亚人还多,那我就顺手看了一下同一时期海南自驾的情况,发现「上岛容易,下岛很难」——上岛时间相对宽裕,但回程下岛的车票基本要提前很久抢,不然就会卡在岛上。

从深圳开车去海南,大致是两种思路:

  • 徐闻 上船;
  • 北海 上船;

但从实际船期来看,回程基本还是 优先从徐闻走,北海似乎没有返程的车票。

订票渠道主要是几个小程序:

  • 琼州海峡轮渡管家
  • 徐闻港
  • 新海港

网上有些指南会提到「封关后,内地车辆需要办理 海南省自驾游车辆临时通行证」,但实际查下来:

  • 官方完全没有这类说法;
  • 实际规则是「内地车在岛内限行 120 天」,这个时间对绝大多数自驾行程来说已经绰绰有余;

所以基本可以认为那类「临时通行证」是谣传或者过时信息,不用太在意。

Summary

路线、时间、备选方案都大致规划完之后,又去翻了一下去年春节的实况:

  • 西双版纳春节人流量比三亚还夸张;
  • 各种游记里普遍是「堵得水泄不通」的描述;

想了想,春节这种时间点开长途自驾,虽然风景肯定不错,但光是堵车、人挤人,就足够把体验打到及格线以下了。

所以这次还是先按下不表,等以后挑个淡季,再慢慢把这条线补上,可能更适合。

Quote

https://baa.yiche.com/haiou/thread-49189440.html

https://mbd.baidu.com/newspage/data/dtlandingsuper?nid=dt_4518015290943294545&sourceFrom=search_a

https://www.bilibili.com/video/BV1NJw5e5E5U/

https://mbd.baidu.com/newspage/data/dtlandingsuper?nid=dt_5368825321327812859&sourceFrom=search_a

2025游戏短评

2026-01-28 00:00:00

Foreword

又到了一年一度短评环节

Steam 自建的 2025 年游戏回顾

https://s.team/y25/kwqdrkq?l=schinese

今年游玩

今年一共玩了 30 款游戏,比去年还少一些,七成都是新游戏。今年还是太忙了,加上练车、弄一些其他的事,游戏时间就偏少了。

大江湖之苍龙与白鸟

image-20250122172524627

这游戏刚出时就遇到更换发行商,导致一直跳票,本来是和大侠同时期的游戏,一直拖到了大侠都出DLC了,这游戏才出正式版。

整体不错,没想到 24 年竟然有人做出来当年金庸群侠传的感觉,味道比神仙醋做的更正宗,文本确实可以,不过也有点可惜,游戏本可以做得更好的,运营宣发经历了很多变数导致游戏实际销量不行。有些设定过于 old school 了,如果可以重新稍微改变一下数值,升级困难、刷级也很麻烦,新一代稍微降低一点点数值的膨胀,应该是非常不错的。

ZERO Sievert/零希沃特

img

当时玩的时候刚好是鸭科夫出 Demo,鸭科夫和零希沃特二选一,我选了零希沃特。像素风,但是硬核,搜打撤,游戏确实做得不错,作为独立游戏挺好的。可惜开发时间太长,又过于硬核,劝退了很多人,有点可惜。对比之下,鸭科夫能爆火,而同类型的它只能默默无闻。

雾锁王国

image-20250122171401542

一直等不到正式版,但是也直接玩了,游戏有点缝合,但是本质上还是不错的,地图超级大,肝度拉满,联机版塞尔达。虽然没正式版,但是最终 boss 基本有了,勉强打过了,游戏里还有好几块未开发完成的区域。槽点就是小副本简直恶心人,各种绕路、各种解密,又臭又长,如果他解谜水平有塞尔达 5% 我估计就很好了,全都是要跳跃,反复跑趟子,考验视力的解密,搞多了真的难受。

鸭科夫

img

25 年爆火的游戏,Demo 时就已经非常火爆了,口碑爆棚。正式版游戏品质还不错,兼顾了搜打撤和画质,同时游戏难度又处于老少皆宜、随时可调的状态,内容里还有一些梗和有意思的小点,很快就出圈了。地图不算多,剧情也不长,配合一些 mod 以后,甚至可以 mod 联机,很有意思。

如果日后再出一个官方联机版,那就完美了,mod级的东西,可用性还是太差了。

蜡笔小新-煤炭镇的小白

img

第一次玩蜡笔小新,发现是个收集、跑圈子的游戏,看来只适合小孩子玩

巴别塔 :混乱的幸存者

img

类吸血鬼幸存者,但是可以刷装备,词缀又类似暗黑,以为很好玩,其实一般般,数值设计有问题,局外成长吓死人。

绝世好武功

image-20250122173111981

我以为等了一年多能咋样,现在看还是一坨。

bug太多了,数值不合理的地方也太多了,主线引导一坨,莫名其妙的问题,内置帮助里也是一堆错误的地方或者是描述根本对不上的,如果不去群里问,根本不知道下一步咋弄。

我感觉制作组自己都没玩过,我都不知道这是咋开发出来的,建议别买

游戏有一些亮点,但是不多,可玩性还是太差了,缝了一堆乱七八糟的东西,东拼西凑的,对整体可玩性的帮助太少了,建议重做,好好梳理一下

卡死的 NPC 很多,好几个 NPC 莫名其妙站在那里,动也不动,死也不会死,不知道在干啥,反正就是风雨无阻我就站着。

数值上的问题就更多了,王八拳秒天下,其他武功烂的一比,好歹平衡一下啥都能玩啊。

一旦被通缉,要去大内消罪恶,然后进入死循环,一堆人绑上你,蜘蛛人啊,战斗打到没完没了。

如果你招募了NPC,他如果还是剧情npc,触发剧情直接复刻一个一模一样的

类似的细节问题真的太多了,不像是一个开发了一年的作品

剧情也短的不行,大部分奇遇也找不到攻略或者说明,真的有点难受,网上过期的内容比比皆是

各种莫名其妙的按钮,开启势力,根npc对话修复奇遇,这得是多偷懒才能把这种东西写到和npc互动的对话里啊,你加个事件检测不行嘛?再差加个定时检测不行嘛,代入感奇差

看他的功能设计,就和新手不负责的产品一样,只做制作人提到的点,多一点思考都没有,很多设定比demo还demo。

神力科莎 Assetto Corsa

img

今年练车的时候玩了好久,配合 CM 使用,总体体验还是非常不错的,画面够看,老机器运行也没啥问题,不得不说经典还是经典。

Monster Hunter Wilds

image-20250122165921390

怪猎荒野试玩时就卡卡的,各种三角形,硬是顶着老机器打通了,体验极差。后面换了新机器,发现还是一样,破游戏就是不能优化了呗,有点无语,这代荒野没有肝的动力了,内容过少,每次更新玩个一两天就弃坑了

动物栏:桌面牧场

img

桌面养动物游戏,可玩点略少,挂机也就那样,不如其他游戏

Sephiria

image-20250122164847406

像素风的Roguelite游戏,游戏难度比较高,也是背包管理类型,格子各种搭配可以组合出来一些特效,手感也不错。

后期难度极高,打了好多次,还是靠轮椅勉强过的,各种攻略视频很多,总体很不错。

枪豆人

img

多人乘船,后坐力会互相影响,要有人要控船,有人要打怪,还有各种机制,挺欢乐的小游戏,掌握技巧以后就是流程有点短了,没玩够的感觉

PEAK

img

攀岩游戏,但是把,感觉合作性还是有点低,没有队友也能攀,不用机制也能玩,只要你愿意绕路就行,给玩家的引导或者攀爬的动力有点不足,爬完一个又一个,问题是啥也没得到,奖励机制太弱了。

梦之形

image-20250122170240448

梦之形,总算出了,期待了一年,一经发售就小火了一下,正式版中套路更多了,难度也更高一些,玩了好久总算把所有人的成就都解锁了。角色还是有点不太平衡,游戏内关卡还是少了一点,后续每次都是重复内容了。

死亡日:狂杀末路

img

幸存者版的搜打撤结合了一下加拿大的死亡之路的意思,无脑,简单,就是内容还是少了点,后期爽度拉满,boss太弱了,只要遇到基本秒死。

巨人杀手:暗黑之潮

img

高清版幸存者,游戏还行,玩多了这个类型,稍微有点腻了,没有做出什么新东西

Ratopia

img

鼠托邦,横板类缺氧、环世界的游戏,生存压力啥的都还好,一开始不知道机制重开了好几把,后续会了以后就不难了。

可以控制女王做一些类似泰拉瑞亚的冒险,就是这部分内容稍微有点少,而且也比较简单,如果再完善完善可能比较有意思。

Sons Of The Forest

img

森林之子,森林一直都没玩,直接玩森林之子,难度就还好,四个人随便群殴,很少团灭,带个NPC很弱智,也很脆,动不动就死了还得用代码复活,指挥NPC干活也有点鸡肋,好多事情都干不了

地图超级大,很多物品都隐藏在各个洞穴里,洞穴冒险超级掉san值,滑翔伞以后,总算是可以快速移动了,一直到通关才会传送,问题是这会已经要退游了,传送还有啥用。

森林系列特色估计就是这个洞穴冒险了,其他游戏很少有这样的。

满庭芳:宋上繁华

img

这是我玩的最难受的模拟经营游戏了,这个游戏数值不知道是不是有啥大病,把经济系统设计得非常脆弱,普通模拟经营就是面多了加水,水多了加面就行了,很少会崩溃。但是它不行,就算是低难度,这个平衡只要被破坏了,你还没及时发现,那就无力回天,直接进入恶循环,再也爬不出来了。至于后续更新的一些官职挑战,还是一个问题,这个数值设计有大问题,几年内就要上交一个特别不合理的数值的财政收入,你这当的是官嘛,一切要为这个财政收入努力,也太离谱了。

唯一有点意思的就是画风了,古建筑风格,很独特,很中国。

战地风云™ 6

img

战地 6 免费体验的时候玩了几天,还行,挂没太注意到。好久不玩 FPS,枪法太烂了,对枪经常打不过,只能靠一些小众点位去偷鸡。

不正经的卡牌传说

img

抄袭传奇,素材、音效、数值

抄你好歹改改传奇的一些垃圾设定啊,好家伙全部照搬

道士招了狗不能招骷髅,必须要退游戏才能召骷髅;进洞视野一个大黑圈,有毛病嘛?想增加代入感,你都选卡牌了,还代入感个毛线啊;蜡烛毛用没有,并不能点亮洞穴,设定完全是怕脑袋乱来,内测测了个毛线

打boss,就是拼血药,血药不能停,有血药你就能耗死boss,纯弱智设定

槽点实在太多了,说不完,只能说一个人做的游戏,连基础游戏的体验和玩法乐趣都没搞明白就做了

这个游戏群就是一群舔狗,还都是老登;作者直言不卖3w份,不更新游戏,是玩家该了你的

  • 国产游戏最大的问题就是群蜜罐,一群人舔得作者舒服了,不知道外面世界是啥样了都

狗屎,爆率低到离谱,开了加速 = 我的游戏时间 *10,你都打不全你要的套装;新开的暗殿也是一坨狗屎;

作者套皮传奇的数据、模型、音效等等内容,奇葩言论实在是太多了。

游戏模型人物是个卡牌在城镇里走路,很奇怪,但是游戏还是有一点小火的。

这么多年传奇的受众一直都在,他们从未被满足,也不会被满足,所以他刚好切中了这个小小的赛道,做的几个游戏都是传奇套皮,而玩他游戏的也一直都是这么群人。

往好里说这个游戏也确实是保持了当年的味道,传奇不就是一个你愿意付出时间去打怪,不断的刷,就能看到你人物的成长嘛,只要你努力,付出就会有汇报,只是比较慢而已,对比抽卡等等这种完全靠运气的东西,这种机制是稳定的,符合人性的。

酒馆好时光

img

模拟酒馆的游戏,不过内容还是太少了,没啥难度

无尽之潮

img

游戏有点意思,但是节奏有点太快了,割草是爽,但是超级割草就有点不爽了。然后游戏内很多机制都是有bug或者是不生效的,游戏引导又没有,剧情也基本没有,玩起来怪怪的。

他想做类似POE的游戏,只是画面、手感等等入门门槛都没弄好,成长曲线也是,刷起来没快感,只是无尽的通关通关。数值设定上也有些不合理的地方,竟然有指数级计算的效果,那其他东西基本都成了摆设。

有意思的地方在于你可以无缝切换机体,就是切换角色,build,但是,但是这个游戏完全没有利用这个机制的意思,是完全没有,这种特性很不一样,但是没抓住。

失落城堡2

img

前几年刚出Demo的时候玩了一下,那会一堆bug,现在还没做完,但是很接近1.0版本了。又尝试了一下,发现现在的失落城堡,已经很像2D平面版得怪猎了,武器模仿的像,甚至有些小机制也是怪猎系列的东西。

通关还是可以的,曲线也平滑,局外成长很快就能刷满了,最高难度也能消化得了。

我们到了吗

img

RV there yet,这个英文名起的超级好,还是个双关谐音梗。游戏就是大家合作开着房车翻山越岭,到达一个又一个检查点,房车视野很差,还是手动挡,各种牵引过关,还是很有意思的。

恶意不息

img

万万没想到,有人做了45度俯视角下的老头环,关键他还能4人联机,还能刷装备、素材,这就有意思了。游戏是开放世界,地图做的挺不错的,就是这个45度俯视角经常遮挡关键地方或者误判角度,导致跳跃失误。

能刷怪、能组build、还有小副本,整体成长很线性,就是限制进入世界的4个人,必须锁死这个坑位,每次换人都得踢掉一个加一个,这个有点过度设计了,就变成一个房间可以最多4个人加入就好了,不锁坑位就行了。

而且其实这个游戏更多人应该也是可以一起玩的,没必要强行限定4人。

游戏剧情也挺长的,开放世界,一个地图无缝接着另一个地图,游戏内武器超级丰富,想玩啥都可以,问题修复的很快,基本一天一个版本,持续在修,只是游戏在刚开始阶段没设计好,有很多差评,但是现在接近1.0版本了,基本都是好评

已买待玩

无主之地4

img

本来要联机的,但是无主4自己作死,不支持3080以下的显卡,不给优化,属实离谱,欠骂。日后有空了再玩吧

iRacing

img

近年崛起的Esports游戏,很接近正规的现实赛车,据说手感、拟真程度都比AC好,但是竟然2025年还有游戏是订阅制,而且游戏内还得内购各种车或者赛道,挺离谱的。

新游期待

主要是一些Demo游戏的游玩体验,感觉不错

Underboard

img

Rogue的自走棋,比我以前玩过的稍微好一点,看后续正式版怎么样,距离发售没几天了

Chained Beasts

img

又是一个锁链游戏,但是这次是四个人随机链接在一起,角斗场里RogueLite,坚持到最后,Demo体验还可以,稍微简单了一些,看看正式版是否还会丰富一下内容。

旅人竞技场

img

单人角斗场RogueLite,要build,但是Demo还是内容少了点,手感也有点差,看正式版吧

腐朽默示

img

之前一直说试玩版不能联机,缺了点东西。这次可以联机了,但是限制2人,还是不错的,玩起来挺有意思的

就是Demo版本数值设计上还是有点问题,这个人走出家没几分钟就要吃要喝,简直是个饭桶。

罗马之城 Nova Roma

img

罗马时代的模拟经营游戏,难度也不高,有意思的点在于可以引水,可以造水坝,主动控水,人工建湖

DDoD

img

测试内容太少了,走到安全区域就不知道干啥了,其他的搜、打僵尸就还行吧

Schedule I

img

绝命毒师电子模拟版,就是没中文,玩起来稍微有点难受

我不是魔王

img

土豆兄弟联机版,网络太差了,联机体验一坨,其他的大差不差、

风暴怕死队

img

类失落城堡1的游戏,手感真好,Demo的流程也非常长,局外成长比较少,曲线平滑,玩了还想玩那种,期待正式版

冒险家商店

img

Demo有点无聊,就是卖东西,配装,打怪,卖东西全自动,没啥操作感,和你是不似乎店主一点关系都没有。

配装也很无聊,就那么几个东西可以来回倒腾一下,打怪也是全自动,让你选个门,门都是一样的选他干啥?

over the hill

img

类似RV there yet,但这次是越野车

Grounded 2

img

禁闭求生出2了,可惜还是EA,游戏还是半成品,刚出就被骂惨了,等他1.0完善再体验吧

云之国2

img

看起来像塞尔达的联机版,画风也比较像,期待正式版,目前已经EA可玩了

放置之路:古神复苏

img

流放之路,放置版,等个Demo看看水平吧

侠影录

img

有点当年剑侠情缘的感觉,但是暖雪版

极限竞速:地平线6

img

这作来到了日本,东京,算是JDM朝圣了,非常期待,五月份就能玩了

拾光旅人

img

类似房车旅行,但是能自己改造房车,探索世界

太吾绘卷

img

还有一个太吾绘卷也要正式版了,距离他第一次发售已经要8年了,这八年真是不容易啊,把一个游戏做到极致。

从一个人做到一个团队,经历了风风雨雨,团队算是组好了,后面再研发新的游戏估计思路就好多了,开发也更平顺了。

Summary

今年的游戏体验整体,玩得不多但挑得更狠,真正合我胃口的,还是那些有自己味道、能长期刷、肯用心打磨细节的小而精作品;大作和套皮作品,只要在优化或数值上稍有不慎,就会被毫不留情地拉黑。

期待26年的新游戏,独立游戏也越来越好了,很小众的赛道只要找对了,就是有人买单的

Agent Skills实践

2026-01-23 00:00:00

Foreword

最近 Skills 稍微有点火,哪哪都是在讨论。这里我也结合一下日常工作的实际场景来实践一下,看看 Agent Skills 能干些啥,以及它和之前说过的 MCP 有什么区别。

Skills

https://github.com/anthropics/skills

Skills是由Anthropic提出的,官方给了开源的skills的模板,很快就接入了其他各大模型

核心概念

Agent Skills 是一个用于为 AI 智能体扩展专门能力的开放标准。Skills 会把特定领域的知识和工作流封装起来,智能体可以调用这些 Skills 来执行对应的任务。

大白话解说:Skills 就是把平常我们命令 AI 去做的一些「复合模板 + Prompt + 规则」的事情,收敛成一个技能。这件事本身可能很复杂(需要若干步骤才能做完),也可能比较简单,一个命令就能搞定。

再说一下就是套路或者方法论,只要是有迹可循,可以模仿完成,并且有条理清晰的步骤的事情,它就可以变成一个Skill。

举个例子,我平常写 Blog 文章,经常需要 AI 帮我找一下错别字,拼音很容易打错了,自己又不一定能发现。我自己常用的 Prompt 就是下面这样,其实挺简单的:

帮我检查一下当前文档中是否存在的书写错误的情况,并修改,忽略标点符号、中英混排的问题

平常这种 Prompt,要么就单纯存一份 Prompt,要么弄成一条规则,但每次还是得手动提醒 Agent 去触发这个流程。

那如果这个 Prompt 再复杂一点,比如还想让 Agent 帮我再润色一下文章,那我就还得再提一个 Prompt:

阅读当前文档,并模仿文档中书写的风格和语气,对全文进行润色,忽略标点符号、中英混排的问题

你可能会说,直接把这两个 Prompt 合并不就完了?确实可以,但有些时候,你可能并不想让它帮你润色。

也可能有些时候,你只是想让它顺手帮你改一下标点符号。这种情况下,这个 Prompt 每次都不太一样,但来来回回核心就那两句。

这个时候,按照 Skills 的思路,我们就可以把这几个 Prompt 抽出来,转化成一个 Skill。以后要用的时候只需要一句话就能触发,不用再反复粘贴那几段文字。

Cursor实践

按照上面的例子,我就用 Cursor 实践一下。其他 Agent 的使用方式大同小异,这里就不逐个展开了。

image-20260123152037745

Cursor Settings中新建一个Skills,其实只是问了一下Agent,用处不大

需要先了解一些信息,以便创建合适的技能。

请提供:

1.技能名称和用途:这个技能要做什么?解决什么问题?

2.存储位置:

  • 个人技能(~/.cursor/skills/):所有项目可用

  • 项目技能(.cursor/skills/):仅当前项目

3.触发场景:什么情况下应自动使用这个技能?

4.具体需求:需要哪些特殊知识、工具或流程?

5.输出格式:是否有特定模板、格式或风格要求?

直接访问Cursor官方说明

https://cursor.com/cn/docs/context/skills

先在当前项目路径下新建一个 skills 的存储路径:

.cursor/skills/

一个完整一点的 skills 目录结构大概是下面这样,这里先看个概念:

.cursor/
└── skills/
    └── ArticleReview/
        ├── SKILL.md

SKILL.md 按照下面的内容来写,格式和我这篇文章类似,也是用 YAML 在开头做一些基础说明:

  • disable-model-invocation 关闭自动调用,这里不关闭,允许
---
name: ArticleReview
description: 文章内容审查
disable-model-invocation: false
---

# 文章内容审查

为 Agent 提供的详细指令。

## 使用时机

- 在以下情况使用此技能
- 如果文档名称符合“年-月-日-文章标题”的规则,类似:2015-11-11-RaspberryStartup-5
- 如果只是要审查文章,那么只用执行指令的1、2、3步骤即可
- 如果要审查润色文章,那么执行所有步骤

## 指令

- 1.帮我检查一下当前文档中是否存在的书写错误的情况
- 2.忽略标点符号、中英混排的问题
- 3.完成上述检查和修改后,先向我简要汇报修改点,等待我确认
- 4.阅读当前文档,并模仿文档中书写的风格和语气,对全文进行润色

不小心手误打错了,Cursor 也会直接帮你检查并给出优化建议。

image-20260123162144404

正确识别以后,就可以在这里看到我们刚才创建的 Skills 了:

image-20260123171105353

接着试一下,看能否正常触发我们刚刚配置好的「审查流程」:

image-20260123171153095

确认没问题之后,一个简单的 Skill 就算搭建完成了。如果后面还有类似的工作流,就可以直接在这个模板的基础上继续拓展。

进阶

.cursor/
└── skills/
    └── ArticleReview/
        ├── SKILL.md
        ├── scripts/
        │   ├── deploy.sh
        │   └── validate.py
        ├── references/
        │   └── REFERENCE.md
        └── assets/
            └── config-template.json

上面的例子还是比较简单的。如果我们希望把技能做得更复杂、更模块化,可以使用类似上面这样的目录结构:

同样的所有说明都是在SKILL.md中,在这里对内部的脚本、工具、参考元、素材等内容进行引用或者说明,这部分内容就会作为Prompt喂给Agent,说明中可以直接使用相对路径来调用其他内容

其次,SKILL中也可以调用MCP指令等内容

不仅如此,还可以再进一步,这是一个SKILL,但是如果是多个呢?

.cursor/
└── skills/
    └── ArticleReview1/
        ├── SKILL.md
        ├── S1.md
        ├── S2.md
        ├── S3.md

如果你把一整个步骤写得特别细、特别多,这会导致 Token 消耗一下就特别多,而实际上只需要执行其中某一条或者某几条的时候,SKILL 就会显得有点过于臃肿了。

SKILL.md就提供了类似目录的方式,你可以把一个方式方法拆解成N个步骤,然后每个步骤给他一个单独的md文档,具体执行的时候,只有被选中的这个步骤细节才会被作为Prompt喂给AI,这样Token消耗量就下去了

他就有点类似于经验书了,可以按照门类或者方法细节,逐步进行归类说明,相当于是把你的人类经验提供给了Agent,这样他就能帮你按照你的方法去实现任务目标了。

更复杂的功能,参考官方模板和示例,已经给的比较全了,干各种事情都有

image-20260123214937144

与MCP区别

感觉之前对于MCP的预判说大了,MCP对比Skills有点更底层了,它更像是把不同软件或者接口串联起来的工具,更接近开发层面,而Skills则是更接近用户侧的东西,把AI玩出花来。

MCP为Skills提供了底层技术支持,Skills则是把底层接口的各种玩法进行总结,这样用户侧就可以非常简单的让AI介入到自己的工作或者生活中,真正的实现提效

Summary

Agent Skills 确实挺不错,其实有点像是各种AI综合赋能的平台,通过无码化或者低代码化快速将一些常用的功能进行综合。他们的实现思路都是比较类似的,只是Agent Skills更文本化,门槛更低一些,不需要你真的懂底下的技术层面的内容,你只要把你能套路化、模板化的经验公式说清楚,AI就能帮你完成。

Quote

v2ex里这个帖子讲的也太抽象了,明明是个很简单的概念

https://www.v2ex.com/t/1187373

RGB灯光修正

2026-01-20 00:00:00

Foreword

RGB或者RGBW类似的多通道光源数据校准流程总结一下,之前一直把各种修正混在一起,实际上每个阶段都应该只做各自阶段的事情,混入别的东西就会导致最终输出跑偏

RGB光源

一般来说是两层进行处理,先处理感官层面的数据,此时不带有任何物理上的修正,这是我们理想的颜色应该有的样子,而后才是将这个理论值输出到现实中时需要处理的修正

感官层

为什么要先走感观层,因为我们很多时候在软件或者屏幕上看到的数值是被编码过的,比如PS、Maya、3DMax等等设计软件,大多数软件本身在显示这个颜色的时候就已经应用了Gamma编码(sRGB),然后才给你看到的(实际上是操作系统、屏幕等等处理过后的)

而你要把看到的编码后的数据还原到硬件上时,你就得走反向流程,你得先解码成真实的物理输出,再让设备显示。

Gamma解码

感官层修正是比较简单的,把Gamma应用上去就行了

img

人眼对亮度的感知是非线性的,所以要通过Gamma进行修正,一般选取标准 Gamma值:2.2(sRGB)或 2.4(Rec.709)

# Gamma校正公式
def gamma_correct(value, gamma=2.2):
    if value <= 0.04045:
        return value / 12.92
    else:
        return ((value + 0.055) / 1.055) ** gamma
    
# 或者简化的幂函数(适用于某些场景)
def gamma_correct_simple(value, gamma=2.2):
    return value ** (1.0 / gamma)

前者分段函数是为了更好地处理精度问题,保证函数连续可导,这几个值基本都是经验值,用于高亮和低亮的区分点。

value输入的就是亮度,不是简单的RGB,所以感官层最好使用的数据是HSL,而不是RGB,更符合感官计算的流程

CIE色度图/颜色空间

接下来就是把要输出的颜色转换到标准的颜色空间中,一般用CIE色度图就行,此时得到的就是一组线性的数据了,如果物理器件本身也是线性的就可以直接输出。

但是现实往往不是这样的,现实中颜色空间是有限的,可能你要输出一个超过颜色空间的颜色,那么此时就需要做颜色空间转换,转换逻辑也很简单,两个颜色空间做映射,然后越界的点去找最近的邻接点即可,这样可以最大程度降低色准偏差

物理层

Gamma计算后的数据要输出到物理层时,需要计算各种校正数据,比如温度、比如通道本身的色偏和光强差异,此时就要把HSL转换成RGB这种方式输出给物理器件

3D LUT

LUT主要是处理光源本身的偏移和不对齐的情况,实际是RGB输出,所以是3D,如果有更多颜色通道可能是4D、5D、6D等

简单说就是真实输出,然后反向测量输出的RGB到底是多少,从而得到一张大映射表,如果全量采样,花费的时间就太长了,所以一般都是精简采样,4×4×4(粗校准)、16×16×16(4096个采样点)、32×32×32、64×64×64(高精度),然后采样点插值一般使用三线性,直接取输入点周围的八个顶点,然后按比例插值即可。

但是这个测量其实也非常困难,因为本身光源就受到温度影响,你亮1s和亮0.5s测量的结果都是不一样的,所以要做好控制变量,对于测量环境的要求非常高。

当测量完LUT就得到了这个光源的颜色空间,对于非显示器这种级别,大部分点光源的色谱空间可能都有比较大的缺陷,某些颜色是无法还原的

温漂

在测量LUT时需要严格控制温度(因为温度会影响测量结果),但实际使用时还会遇到温漂的问题,因为三个RGB通道,可能输出功率不同,热量分布不均匀,而输出灯光本身受温度影响的偏移又非常明显,这就还需要单独测量温漂曲线,看每个通道与温漂的关系。

一般来说温度不会混到和LUT一起测量,多一个维度会导致LUT表爆炸(变成4D、5D等),温漂都是基于单通道进行测量,看每个通道在对应的温度下,输出的光强变化的情况,拟合成一个二次曲线或者映射表进行使用。实际使用时,通常是在应用LUT之后再根据当前温度应用温漂修正。

混光

混光的问题,这里只是单独提出来说一下,实际上混光是硬件本身的物理特性,光会溢出激活旁边的通道。如果LUT是在完整测量了实际输出(包含混光效果)的基础上建立的,那混光的影响就已经被包含在LUT里了。但有时候混光可能会单独处理:一般情况下单通道输出的时候,颜色并不纯粹,光会溢出激活旁边的通道,所以单通道里往往都混了一部分其他通道的颜色,特别是光强越高,混入的越多,但是异色光占比反而是在光强比较低时,占比比较高,光强高了以后占比就急速衰减了。

还有一个特殊情况,如果是RGBW或者RGBWY等,这种情况下,别人实现一般都是把W和Y单独使用,而不是把WY拆成RGB以后再和主RGB进行混光,主要还是以各自需求为准。

Summary

整个校准流程的顺序应该是:

  1. 感官层:输入理想的颜色值(HSL或RGB),应用Gamma校正
  2. 转换:将校正后的HSL转换为RGB(如果需要)
  3. LUT映射:通过3D LUT将理想的RGB值映射到实际硬件能输出的RGB值(这一步已经包含了混光的影响)
  4. 温漂修正:根据当前温度对每个通道进行光强修正

关键是要保证每个阶段只做自己该做的事,不要混在一起处理,否则会导致最终输出跑偏。