首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >技能装了却不被调用:触发机制与四十条清单上限

技能装了却不被调用:触发机制与四十条清单上限

原创
作者头像
当月光落下
修改于 2026-09-28 13:34:03
修改于 2026-09-28 13:34:03
230
举报

《WorkBuddy 七层实操笔记》系列第 3 篇 · 作者:当月光落下 · 首发于腾讯云开发者社区。 全系列基于一台真实机器的逐条实测,记录哪些机制符合直觉、哪些相反,以及每条结论是在踩过什么坑之后才成立的。 系列目录:

  1. 七层能力模型:把 AI 助手从「能用」拆到「会搭」
  2. 信息该放哪:七个存放位置与一条晋升阶梯
  3. 技能装了却不被调用:触发机制与四十条清单上限 ← 本篇
  4. 让 AI 够得着外部数据:连接器、MCP 与一次自建实践
  5. 资料库不是网盘(上):七种节点、三层 block 与 database
  6. 资料库不是网盘(下):page 发布、检索与 doc 修订流
  7. 到点自己干活:自动化的三条执行链与五条军规
  8. 专家是角色滤镜,不是记忆分片:兼谈多设备同步的盲区
  9. 四十一条实测踩坑清单:每条都标了根因和正解
  10. 按收益排序的上手路径,与五份可直接复制的模板

L1 技能层:把重复工作流固化

技能是什么

定义

技能(Skill)= 可高频复用的标准操作流程,应具备明确的唤起方式(description,可选 triggers 列表)、输入输出结构与版本号。

与记忆的分界

维度

记忆

技能

回答什么

是什么(事实)

怎么做(流程)

例子

「某类分析要排除某种噪声报警」

「这类分析的七个步骤」

固化门槛

立即

同一流程做过 3 次以上

存放级别:判据是「跟谁走」

级别

路径

跟谁走

判据

用户级

~/.workbuddy/skills/

跟人走

换个项目还要用吗

项目级

{工作空间}/.workbuddy/skills/

跟项目走

本项目特有、要随项目交付或给同事吗

一条容易搞错的说法

很多人以为「用户级」的「用户」指的是账号。实测不是——用户级 = 本机用户目录。

反证很简单:如果技能会自动上行到账号,那就不需要额外搭一套版本库同步了。而且实测换设备后技能并不会自动出现,必须靠自建同步链路复制过去。

⇒ 把技能从项目级提到用户级,只解决「本机内跨工作空间可见」,一步也不解决「换设备 / PC 关机」。 后者属于 L7 的问题。

两个控制字段:决定技能会不会被自动执行

误解

「技能只是候选项,跑不跑看模型临场判断。」

真相

默认情况下,模型可以自主调用技能(model_invocation 默认开启)。要让某个技能只能手动触发,必须显式设置:

frontmatter 字段

作用

disable-model-invocation: true

禁止模型自主调用,只能由人显式触发

triggers: [...]

显式声明触发词,提高命中率

description

常驻上下文,是默认的匹配依据

什么技能该设禁止自主调用

一旦误触发后果严重的技能。典型例子:批量提交类(向外部平台批量登记)、批量删除/覆盖类。这类「跑批」技能,宁可麻烦一次手动触发,也不能让它在不恰当的时机自己跑起来。

反过来,交付检查类、素材整理类这类「跑一下只有好处」的技能,应当保持自主调用开启。

一个实际观察

实测某环境中,只有 1 个技能设了 disable-model-invocation(正确),只有 4 个技能用了 triggers——其余十几个全靠 description 自然匹配,命中率有很大不确定性。

加固办法很便宜:给高频且容易漏的技能补上 triggers,把常见的说法列全。这几乎不占上下文(常驻的只有 name + description),但能显著提高命中率。

同步 ≠ 发布:两条独立通道,别混

代码语言:txt
复制
【通道 A · 多端同步】我的技能 → 我的另一台设备
     手段:自建版本库(git)
     失败后果:换设备技能直接消失

【通道 B · 分发与安装】别人的技能 ⇄ 我
     手段:技能市场
     方向:安装 = 拉副本到本地,本地改了不上行
     当前:可用的消费者通道(能搜、能装)

误解

「本地改了技能要发布一下,免得影响其他用户。」

真相:方向反了

  1. 安装到本地的是副本。 改本地副本不会上行到市场,天然隔离——「影响其他用户」这个风险根本不存在,不需要靠发布来避免。
  2. 真正的风险是反向的:市场那边更新到新版本了,你本地还是安装那一刻的旧快照,不会自动更新 → 版本漂移。
  3. 「发布」只对发布者有意义。如果你只有「搜索 / 安装」权限,那你现在是消费者,不是发布者。

正确表述

本地修改天然不影响他人(安全);但上游更新也不会自动回流(漂移)。 养成本地重度改造的习惯前,先记一笔来源与版本,需要时手动重装比对。

可分享性 = 可移植性

「能不能分享给别人」这个问题的实质是:技能里有没有「只对我成立」的东西。 检查清单:

  1. 绝对路径(用户名、盘符)
  2. 内网 IP 与服务地址
  3. 未在技能文档中解释的业务术语缩写
  4. 只在特定网络里可达的服务
  5. 特定目录结构假设

一个实测数据点

某环境实测 14 个技能里 12 个含本机绝对路径。做「路径可移植化改造」这件事,本质上就是在买可分享性的入场券——两件事是同一件事。

可移植化改造的三种模式(可复用)

模式

适用

写法

A · Shell 里用环境变量

技能文档里的 bash 命令

PY="USERPROFILE/.../python.exe"** **[ -f "PY" ] || PY="$(command -v python3)"

B · PowerShell 里用 env

技能文档里的 PowerShell 命令

env:NODE_PATH = "env:USERPROFILE...\node_modules"

C · 环境变量覆盖 + 默认值兜底

业务数据路径(盘符可能变,无法推导)

BASE = os.environ.get("XXX_DATA_DIR", r"E:\默认位置")

一个差点改错的判断

直觉方案是「把绝对路径换成 python 命令」。实测后否决:系统解释器里没装依赖包,脚本必崩。 虚拟环境的绝对路径必须保留,只是要动态化 + 加兜底。

另外:判「文件存在」用 [ -f ] 而不是 [ -x ]——在某些 Windows 文件系统上 -x 行为不稳定。

技能层的完整判据(沉淀)

维度

判据

何时固化成技能

同一流程做过 3 次以上

放用户级还是项目级

跟人走 / 跟项目走

能否分享

无本机依赖(绝对路径 / 内网 IP / 未解释术语)

唤起方式

description(+ 可选 triggers)

输入输出

在 description 中写明「典型输入 / 输出」

版本

version 字段;市场来源另记元数据

同步

必须进版本库,否则换设备就丢

技能正文的两条纪律(实测踩出来的)

  1. 正文不写人名。 写了具体人名会被记忆体检脚本判为「一次性内容残留」,且破坏可移植性——改成「用户」即可。
  2. 技能只写「怎么做 + 为什么」,不沉淀一次性业务结果(批次、条数、耗时、成功率)。这些归项目日志。

文中所有「实测」「xx KB」「xx 个」这类数量,均来自某一台真实机器的快照,请当作方法示范而非通用阈值;真正通用的是判据与因果关系。


原创声明

本文系「当月光落下」原创,首发于腾讯云开发者社区。内容来自作者在实际使用中的逐条实测整理, 所有结论均有本机实机验证或真实接口调用支撑;文中出现的数量均为特定环境下的实测快照, 仅作方法示范,不作为通用阈值。

如需转载,请注明作者「当月光落下」及首发出处,未经许可不得用于商业用途。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 《WorkBuddy 七层实操笔记》系列第 3 篇 · 作者:当月光落下 · 首发于腾讯云开发者社区。 全系列基于一台真实机器的逐条实测,记录哪些机制符合直觉、哪些相反,以及每条结论是在踩过什么坑之后才成立的。 系列目录:
    • L1 技能层:把重复工作流固化
      • 技能是什么
      • 两个控制字段:决定技能会不会被自动执行
      • 同步 ≠ 发布:两条独立通道,别混
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档