Skip to content
Back to skills

Xb Role Knowledge

ASecurity

调用受用户配置约束:高自动、中先确认、低须明确开启;用户指定其他技能时禁止接管。为 xbskill 补充、校验、匹配并回流岗位专业知识。仅在用户明确要求补充、修订、停用或回测岗位知识,或由已经选定的 xbskill 当前专科作为隐藏支持层解析岗位知识包时使用;普通岗位任务不得把它路由成第二个当前专科,也不用于静态岗位百科。

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 19, 2026
ai-agentspythongogit

Security analysis

A100/100

Pro scans all 15 files and shows the line behind each finding

Scanned September 19, 2026

npx -y skills add dennydkt/xbskill --skill xb-role-knowledge --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Xb Role Knowledge?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Xb Role Knowledge
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/dennydkt-xb-role-knowledge/badge)](https://www.skillsdirectory.com/skills/dennydkt-xb-role-knowledge)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: xb-role-knowledge
description: 调用受用户配置约束:高自动、中先确认、低须明确开启;用户指定其他技能时禁止接管。为 xbskill 补充、校验、匹配并回流岗位专业知识。仅在用户明确要求补充、修订、停用或回测岗位知识,或由已经选定的 xbskill 当前专科作为隐藏支持层解析岗位知识包时使用;普通岗位任务不得把它路由成第二个当前专科,也不用于静态岗位百科。
---

# xbskill 岗位知识补充

调用前先读 `../xbskill/references/interaction-settings.md`,按用户已选调用强度和保存提示执行;明确指定其他技能或拒绝 XB 时退出。未初始化时只允许配置与说明,禁止代选或先执行后确认。

把岗位知识做成会参加当前任务的 `RoleKnowledgeUnit`。运行时返回最小 `RoleKnowledgePacket` 给当前专科;建设时把真实案例、固定来源、边界和现实反馈做成可校验单元。

当前内置目录 2.0.0 含 15 个 active 单元,覆盖数据、产品研发、职能、金融投研、营销五类岗位族;`upstream_sync.py` 能对固定提交、许可、allowlist 与证据坐标做离线校验/在线检查并只生成不可信候选,真正更新仍必须经过单元翻译、四类陌生试跑、独立八门评审和全目录激活门。

直接调用本 Skill 时先读 [../xbskill/references/contracts.md](../xbskill/references/contracts.md)、[../xbskill/references/resolution-standard.md](../xbskill/references/resolution-standard.md) 与 [../xbskill/references/runtime-compatibility.md](../xbskill/references/runtime-compatibility.md)。对象、字段、错误码和持久化约定见 [references/role-knowledge-protocol.md](references/role-knowledge-protocol.md);内置单元见 [references/builtin-role-knowledge.json](references/builtin-role-knowledge.json),目录、运行时 Packet/Trace、冻结证据与内置来源注册表结构分别见 [references/role-knowledge.schema.json](references/role-knowledge.schema.json)、[references/role-knowledge-runtime.schema.json](references/role-knowledge-runtime.schema.json)、[references/role-knowledge-evidence.schema.json](references/role-knowledge-evidence.schema.json) 和 [references/builtin-source-registry.schema.json](references/builtin-source-registry.schema.json)。上游仓库固定账及其结构见 [references/upstream-role-sources.json](references/upstream-role-sources.json) 与 [references/upstream-role-sources.schema.json](references/upstream-role-sources.schema.json)。用 [scripts/role_knowledge.py](scripts/role_knowledge.py) 校验和匹配,用 [scripts/upstream_sync.py](scripts/upstream_sync.py) 检查或生成外部候选;不能只凭阅读目录、下载仓库或显示来源名声称知识已参与。

以下命令里的 `<PYTHON3>` 按运行时兼容契约解析为当前平台的 Python 3.10+ 启动命令。契约缺失或解析失败时,报告精确错误并停止脚本操作。

## 触发与核心模型

有两种调用方式:

1. **运行支持**:当前 `xb-*` 专科已经选定,岗位知识会改变本题的专业观察或做法。此时本 Skill 是支持子调用,返回包后结束;当前专科不切换、不让用户重述上下文。
2. **知识补充**:用户明确要新增、修订、失效或回测岗位知识。此时本 Skill 可成为当前专科,完成“缺口—来源—单元—试跑—激活—回流”的建设闭环。

核心链:

`真实岗位任务 → 知识缺口 → 固定证据/案例 → 候选单元 → 匹配试跑 → 独立评审 → 激活 → 当前任务使用 → 现实结果回流 → 修订/失效`

岗位名、企业类别、资历、GitHub stars 或工具功能列表都不能直接生成专业结论。实际责任、当前问题信号、生命周期和证据适用范围共同决定是否命中。

## 可观察信号词典

以下任一信号出现时,检查是否需要岗位知识包:

- 同一个表面任务在不同岗位会有不同责任、失败语义、产物或验收。
- 用户要求“按专业做法”“补充这个岗位的知识”“把这次经验沉淀进去”。
- 通用建议能说通,但无法回答先看什么、怎样区分原因、谁能决定、交付什么、怎样知道现实有效。
- 已有岗位图谱只给检查面,当前任务需要可执行的专业分支。
- 现实结果推翻了已激活单元,或来源、制度、版本、角色边界发生变化。

以下情况不加载:答案简单唯一且岗位不改变动作;只因用户自报职位而展示知识;需要的是本地制度或法律结论但尚无当前真源;单元排除信号已命中。

## 运行支持:让知识参加当前任务

### 1. 建最小请求

从 `RoleContext` 和当前问题建立 JSON 请求,只填已知事实;组织类别不进入专业匹配。最少包含:

```json
{
  "schema_version": 1,
  "current_specialist": "xb-data",
  "job_family": "data",
  "role": "数据工程师",
  "task_family": "数据管道回填",
  "lifecycle_stage": "运行与恢复",
  "proficiency_mode": "S1_working",
  "problem": "任务显示成功,但下游发现重复和漏数,需要安全回填",
  "signals": ["DAG 成功但数据错", "重复", "漏数", "回填"],
  "actual_constraints": [],
  "knowledge_requirement": "required",
  "required_unit_ids": [],
  "max_units": 1
}
```

缺少角色、岗位族或真正会改变匹配的字段时,沿 `role-context-model.md` 每轮只问一个问题;能形成安全的唯一动作就停。

`actual_constraints` 不是自由文本标签。只有项目本地知识需要精确范围匹配时,才放入带证据的对象。`rule_scope.value` 只能是项目单元所绑定 `scope_binding` 的确定性 SHA-256;该对象同时固定项目 ID、packet 文件与摘要、完整权威裁决摘要、claim ID 与完整语义摘要、岗位族、角色、任务族和生命周期,不能手写或只哈希范围名称:

```json
[{"kind":"rule_scope","value":"sha256:<64位小写摘要>","evidence_date":"2026-08-11","evidence_ref":"knowledge/packets/<packet-id>.json"}]
```

`kind` 只能是 `legal_entity / jurisdiction / system_version / rule_scope`。`rule_scope` 同时精确绑定 packet 路径与权威裁决日期;`scope_kind` 固定为 `project_rule`。原始组织标签或其手工摘要没有完整结构绑定,所以“国企、外企、SOE/SOEs、政府部门、某大型国有企业”等类别或同义改写即使漏过友好提示正则,也不能参与岗位知识命中或覆盖。

`init-project` 生成的 `project_scope_id` 绑定项目解析后的绝对根路径;把整个本地目录复制到另一项目也会响亮失败。项目搬迁后必须在新根重新初始化、重新绑定来源包并重跑证据门,不能沿用旧摘要。

### 2. 机械校验与匹配

使用绝对请求路径;不传项目根时只读取随包发布的内置目录:

```text
<PYTHON3> <本Skill绝对路径>/scripts/role_knowledge.py validate
<PYTHON3> <本Skill绝对路径>/scripts/role_knowledge.py resolve --context <绝对request.json> --output <绝对packet.json>
```

只有用户明确给出项目根且希望使用本地增补时才加 `--project-root <绝对项目根>`。显式给了项目根但本地目录未初始化,必须报 `E_PROJECT_UNINITIALIZED`;不能静默回到内置目录并假装加载了本地知识。

### 3. 岗位知识参与闭环

命中后,当前专科必须在内部保留这条追踪链,并以 `verify-trace` 同时读取实际交付物、核对其 SHA-256 与逐字片段、再对当前目录重放后才算已应用:

`unit_id → 本轮新增观察 → 至少两个竞争解释 → 区分动作 → 条件分支 → 产物字段 → 验证 → 现实反馈`

知识只有在至少改变以下一项时才算参加:观察字段、竞争解释、辨别动作、分支、权限边界、动作、产物字段、验收或反馈。Trace 还必须把专业 effect、六项权限、全部风险门和当前阶段适配绑定到交付物中的真实片段,而且每个片段必须逐项包含对应 effect 的原始内容;无关通用段落不能替它作证。六权与风险门以 `RoleKnowledgePacket 1.3` 的固定机器策略为唯一权限真源:AI 只可提出,决定/授权/执行/复核/风险接受由对应人类主体保留;职责原文和风险触发原文都标为 `authority_effect=false`,不能改写机器策略。只在答案末尾列来源、复述岗位常识、填写“result.changed”式形式字段或显示“已加载”均视为未参与。

当前专科消费 `RoleKnowledgePacket.active_injection`,结合本地事实重新推导;不得把单元当万能模板。必须显形采用的 `unit_id`、关键条件和会推翻它的新证据,但不必向用户展示整包 JSON。

```text
<PYTHON3> <本Skill绝对路径>/scripts/role_knowledge.py verify-trace --packet <绝对packet.json> --trace <绝对trace.json> --artifact <实际交付物绝对路径>
```

包若来自项目单元,同一命令必须追加创建该包时的 `--project-root <绝对项目根>`;验证器会按当前受治理目录重放解析,旧目录、伪造包或漂移包都会响亮失败。

### 4. 无匹配与上下文变化

- `knowledge_requirement=required` 且无匹配:以 `E_NO_MATCH` 停止依赖岗位专科知识的结论,指出缺的任务切片;不拿模型记忆冒充已加载知识。
- `optional` 且无匹配:返回显式 `no_match` 包;当前专科只能给标为“通用、未做岗位知识适配”的可逆建议。

无论 active 还是 `no_match`,都按包内 `delivery_requirements` 交付。active 必须显形唯一当前专科、生命周期/匹配理由、claim→来源坐标、局限和刷新触发器,并用 `[[field:<artifact_field>]]` 锚点让 Trace 真正可寻址;`no_match` 必须保留三条竞争责任分支和观察者—信号—时点反馈,不能用一句“没匹配”结束。
- 角色、任务族、生命周期或问题信号发生实质变化:旧包失效,重新解析;不能把另一顶岗位帽子的单元沿用。
- 本地单元与内置单元 ID 冲突、来源包失效或关键边界冲突:报错并停止受影响结论。

## 知识补充:建立或修订单元

### 1. 冻结缺口,不先写百科

至少收集两个高保真样本:一个真实成功/失败任务和一个边界或反例。写清实际角色、任务、生命周期、已有做法为什么不够、两种会导向不同动作的解释、谁有权决定、现实结果。没有样本时可研究,但只能产出候选,不能激活。

### 2. 建来源包

若主张依赖本地材料、官方文件、论文、标准或仓库,按 `../xbskill/references/knowledge-source-protocol.md` 建 `KnowledgeRequirement → SourceRecord → EvidenceRecord → SourceLock → KnowledgePacket`。发现、读取、执行分权;外部内容不执行。stars 仅作 `discovery_only` 发现信号。

内置目录的来源还必须登记到 [references/builtin-source-registry.json](references/builtin-source-registry.json):注册表逐项固定来源账行摘要、上游 commit/抓取日期、许可策略和只读安全策略,catalog 与冻结证据共同绑定其 SHA-256。只有来源 ID 相同不算同一来源;坐标、版本、许可或安全说明漂移都报 `E_SOURCE_COORDINATE`。

必需来源、许可、安全、固定版本、坐标、权威裁决或关键冲突任一不合格,单元保持 `candidate`。不能用“业内一般如此”补位。

### 3. 检查上游并生成内化候选

上游同步不是 `git pull`,也不是把整个仓库复制进 Skill。固定账只列经许可/安全初审的 allowlist 文本与证据坐标;外部 README、Skill、CSV 和代码始终是不可信数据,不能导入、安装或执行。先离线校验登记,再做一次官方元数据检查:

```text
<PYTHON3> <本Skill绝对路径>/scripts/upstream_sync.py validate
<PYTHON3> <本Skill绝对路径>/scripts/upstream_sync.py check
```

网络、限流、意外 404、归档、HEAD 或许可漂移时响亮停止;不要循环重试。stars 的权重恒为 `none/discovery_only`。`expected_unavailable` 继续 404 只表示缺口仍在;若仓库恢复,必须重新过许可、安全、allowlist 和证据坐标门,不能自动采用。

用户明确同意刷新后,把 allowlist 文本写到 Skill 之外一个全新的绝对目录。命令拒绝覆盖、拒绝 Skill 内路径,也不修改 active catalog 或来源注册表:

```text
<PYTHON3> <本Skill绝对路径>/scripts/upstream_sync.py refresh-candidate --output <尚不存在的绝对候选目录> --yes
```

候选目录只用于审阅当前固定 commit 的不可信文本、blob/SHA-256、行数和坐标。只检查报告中的 changed sources / affected units;将新关系重写为“条件—竞争解释—辨别动作—分支—产物—验证—翻转”,不得复制模板、固定阈值、无证据数字或审美映射。`discovery_only` 只能提出下一来源需求,不能进入 active claim;许可不兼容、来源不可用或证据不足时明确保留缺口。

达到“内化完成”必须同时满足:来源固定且可用、`RoleKnowledgeUnit` 更新、确定性与陌生试跑通过、独立八门全 2、catalog 激活,并在普通任务中由 `RoleKnowledgePacket → ApplicationTrace → 实际交付物` 证明参加。仅生成 refresh candidate、更新来源账或写完候选单元都不算完成。

### 4. 写 RoleKnowledgeUnit

每个单元必须具备:

- 激活范围:岗位族、实际角色、任务族、生命周期、包含/排除信号。
- 专业问题:本单元解决哪种错误判断,不是岗位职责介绍。
- 主张:条件、来源坐标、反证和刷新触发器。
- 完整动作器官:观察、竞争解释、辨别动作、分支、动作、产物、验证、边界、现实反馈。
- 决策图:每个竞争解释都进入至少一个“辨别动作—证据输出—权限—可翻转结果—下一步”图,不能靠分号堆在一个字符串里。
- S0/S1/S2 适配:只改变帮助粒度和用户保留动作,不降低专业正确性与安全线。
- 权限边界:AI、用户、负责人和有权主体分别能做什么;所有精确阈值与组织安排必须有依据或标待校准。

先在项目目录沉淀时,用户明确确认项目根后初始化:

```text
<PYTHON3> <本Skill绝对路径>/scripts/role_knowledge.py init-project --project-root <绝对项目根> --yes
```

该命令只创建标明 `governance_complete=false` 的空候选目录,不表示已经有岗位知识。项目单元写入 `<project>/memory/xbskill/role-knowledge/catalog.json`;`active` 项目单元必须绑定同项目 `<project>/memory/xbskill/knowledge/packets/` 下经验证的 `KnowledgePacket`,同时固定 packet 文件 SHA-256、lock ID/digest、全部 claim ID、authority scope 原文摘要和裁决时间。项目目录、knowledge root、packet 与证据若经 junction/symlink 解析到项目外,必须报 `E_PATH_BOUNDARY`。

若要发布为 xbskill 内置知识,则修改本 Skill 的内置目录与来源账,运行完整套件发布门;不能把某家公司流程、个人信息或内部材料带入公开内置目录。

### 5. 试跑、评审、激活

对每个候选至少做:

1. 正向匹配:该岗位该任务能命中,并改变一条实际动作链。
2. 负向隔离:相似岗位或不相关任务不命中。
3. 阶段分化:S0 与 S2 的帮助方式不同,但权限和验证不缩水。
4. 反例翻转:排除信号或新事实能阻止/推翻单元。
5. 陌生回答者试跑:不读取验收观察;独立评审者按 G/C/A/P/S/E/R/V 八门评分。

修订已发布的内置目录时,先用 [scripts/prepare_candidate.py](scripts/prepare_candidate.py) 生成新候选;它移除旧发布绑定与旧证据引用,绝不复制“已通过”状态:

```text
<PYTHON3> <本Skill绝对路径>/scripts/prepare_candidate.py --catalog <当前内置catalog绝对路径> --output <同目录的新候选绝对路径> --catalog-version <新候选版本>
```

再用 [scripts/deterministic_test.py](scripts/deterministic_test.py) 对候选目录冻结前四类结构与匹配证据;它只在测试进程内把候选视为可匹配,不会改目录状态,也不能替代陌生试跑:

```text
<PYTHON3> <本Skill绝对路径>/scripts/deterministic_test.py --catalog <绝对catalog.json> --output <新的绝对evidence.json> --actor-id <稳定测试者别名>
```

项目候选必须在 deterministic、blind fixture 和 activation 三步都追加同一个 `--project-root <绝对项目根>`;任何一步缺失都停止,不能把本地范围默认为全局。

陌生试跑输入用 [scripts/blind_fixture.py](scripts/blind_fixture.py) 生成;每个需要新证据的单元固定生成 `positive_s0 / positive_s2 / negative / overturn` 四题,其中 S0/S2 使用同一专业事实。文件只含用户题目、目标单元绑定和经候选解析出的运行包,不含 `tests/review` 或评分标准。内容、版本、引用来源行或运行包变化的单元必须生成新文件并换陌生回答者,禁止在旧冻结答案上补写。

八门全部为 2 才可把候选改为 `active`。测试和评审必须写入冻结证据登记,引用具体记录 ID 并校验文件 SHA-256;首次失败、修改原因和冻结重测都要保留。作者补写答案或回答者看到评分标准的轮次不得计入发布证据。

需要合并确定性记录、陌生答案和独立评审时,使用 [scripts/assemble_evidence.py](scripts/assemble_evidence.py);它会校验三方 case 对齐、Trace、文本摘要和身份分离,任一盲测非全 2 仍会生成失败记录但返回非零,目录不得激活。

只有合并登记全过后,才用 [scripts/activate_catalog.py](scripts/activate_catalog.py) 生成一个新的激活候选文件;它要求四类陌生题八门全 2,精确核对 candidate catalog digest 与每个 `unit_id@version+unit_digest`,拒绝覆盖原文件、拒绝非候选输入,并在写出前按登记摘要重新跑完整激活门。项目目录还必须传 `--project-root`。生成文件仍须经过独立 diff 复核,不能把命令成功等同现实有效。

当一次更新只改变少数单元时,可对 `deterministic_test.py` 与 `blind_fixture.py` 重复传 `--unit-id <changed-id>`,但两者仍用完整候选目录匹配和固定原始目录索引。先按上面的 `assemble_evidence.py` 合并这些变化单元的新证据,再用 [scripts/merge_incremental_evidence.py](scripts/merge_incremental_evidence.py) 复用未变单元的旧冻结记录:

```text
<PYTHON3> <本Skill绝对路径>/scripts/merge_incremental_evidence.py \
  --candidate <完整新候选绝对路径> \
  --previous-catalog <旧 active catalog 绝对路径> \
  --previous-evidence <旧 evidence 绝对路径> \
  --previous-source-registry <旧来源注册表绝对路径> \
  --current-source-registry <新来源注册表绝对路径> \
  --current-evidence <变化单元的新证据绝对路径> \
  --output <新的完整证据绝对路径> --yes
```

复用不是免测:只有 `id + version + reviewable_unit_digest` 完全相同、该单元引用的每条来源记录在新旧注册表逐对象相同、旧四类确定性/答案/全 2 独立评审完整,并能在新完整目录中逐题重放时才允许。旧答案文本、hash、时间和身份原样保留;任一字段漂移即要求该单元重新外测。合并器最后对 15/全部候选重放,不能用差分范围绕过完整激活门。

## 匹配与条件分支

- 默认选一个主单元,最多两个;能覆盖当前瓶颈就不注入岗位全景。
- 实际角色、岗位族与已填写的生命周期是硬门;任务词或问题信号至少命中一项。`required_unit_ids` 只用于调用方已明确知道单元 ID 的情况,仍不能绕过角色、任务/信号、生命周期和排除信号,也不能被 `max_units` 静默截断。
- 项目单元不能用同 ID 覆盖内置单元;修订用新 ID 和 `supersedes`,保留来源、范围与失效条件。
- 企业类别完全不参与专业单元得分。只有 `evidenced` 的组织基因可在专业包形成后调整沟通、授权路径或制品包装,不能改写专业事实。
- 多角色任务一次只按当前责任帽子解析;换帽子即重建请求。

## 微型边界例

**正例**:数据工程师说“DAG 绿但下游重复”。命中管道正确性单元后,当前 `xb-data`/`xb-it` 不再只查任务状态,而会增加部分成功语义、幂等重跑、消费者侧核验与回填/回滚决定包。

**反例**:产品经理只让把已经确认的三句话排成邮件。岗位知识不会改变答案,直接由 `xb-writing` 完成,不加载产品发现单元。

**边界例**:行政用户问某事业单位采购是否必须走特定程序。内置单元只能要求核验实际实体、资金、现行制度和有权者,不能凭“事业单位”给法律结论;缺当前真源时停止正式动作。

## 验证、失败与翻转

交付前检查:

1. 是运行支持还是知识补充?当前专科是否保持唯一?
2. 命中的单元是否实际改变了一条动作链,而非只被引用?
3. 是否保留至少两个竞争解释、一个辨别动作和会翻转判断的证据?
4. 阶段适配是否保留用户判断、验证和授权责任?
5. 本地制度、精确阈值和组织职责是否有当前证据;类别是否只作问题种子?
6. 是否给出当前产物边界与下一现实反馈点,没有把包生成写成现实问题已解决?

`validate`、`resolve`、独立行为试跑任一失败都不得声称知识已激活。来源过期、现实反复证伪、角色边界变化、反指标游戏或验证结果恶化时,将单元降为 `stale`/`rejected`,回到补充流程;不得静默换成模型先验。

Files in this skill

  • SKILL.md21.6 KB
  • agents/openai.yaml308 B
  • references/builtin-source-registry.json15.9 KB
  • references/builtin-source-registry.schema.json3 KB
  • references/role-knowledge-evidence.schema.json4.1 KB
  • references/role-knowledge-protocol.md18.7 KB
  • references/role-knowledge-runtime.schema.json19.9 KB
  • references/role-knowledge.schema.json12.4 KB
  • references/round9-failed-evidence/rk-blind-reviews-20260811-round9-diff.json10.6 KB
  • references/round9-failed-evidence/rk-deterministic-evidence-20260811-round9-diff.json30.3 KB
  • references/upstream-role-sources.json46.4 KB
  • references/upstream-role-sources.schema.json9.3 KB
  • scripts/activate_catalog.py7.7 KB
  • scripts/assemble_evidence.py22.1 KB
  • scripts/blind_fixture.py6.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.