Skip to content
Legal
Skill

/legal-harness-init

面向法律工作者初始化或增量治理 AGENTS.md/CLAUDE.md:识别当前 AI harness,区分用户级、项目级和团队级指令,生成最小法律安全基线,安全合并受管区块,并在新会话中验证权限、保密、信息缺口和回溯行为。用户明确提到法律工作且要配置 harness、AGENTS.md、CLAUDE.md、agent 协作规则或 AI 使用基线时使用。不要用于合同审查、案件分析、文书起草、项目脚手架或 Skill 开发。

BOOST
From plugin
legal-skills
73766 skills
Install
$ npx -y skills add cat-xierluo/legal-skills --skill legal-harness-init --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/legal-harness-init

Context preview

The summary Claude sees to decide when to auto-load this skill.

面向法律工作者初始化或增量治理 AGENTS.md/CLAUDE.md:识别当前 AI harness,区分用户级、项目级和团队级指令,生成最小法律安全基线,安全合并受管区块,并在新会话中验证权限、保密、信息缺口和回溯行为。用户明确提到法律工作且要配置 harness、AGENTS.md、CLAUDE.md、agent 协作规则或 AI 使用基线时使用。不要用于合同审查、案件分析、文书起草、项目脚手架或 Skill 开发。

SKILL.md

legal-harness-init.SKILL.md
name: legal-harness-init
description: 面向法律工作者初始化或增量治理 AGENTS.md/CLAUDE.md:识别当前 AI harness,区分用户级、项目级和团队级指令,生成最小法律安全基线,安全合并受管区块,并在新会话中验证权限、保密、信息缺口和回溯行为。用户明确提到法律工作且要配置 harness、AGENTS.md、CLAUDE.md、agent 协作规则或 AI 使用基线时使用。不要用于合同审查、案件分析、文书起草、项目脚手架或 Skill 开发。
version: "0.5.2"
license: MIT
author: 杨卫薪律师(微信ywxlaw)
homepage: https://github.com/cat-xierluo/legal-skills

Legal Harness Init

把法律人的稳定协作要求写成可加载、可增量更新、可验证的 harness 指令。完成不等于“文件已写入”;必须区分:

1. `CONFIG_WRITTEN`:文件与受管区块存在。 2. `INSTRUCTIONS_LOADED`:新会话报告了精确加载来源。 3. `BEHAVIOR_VERIFIED`:新会话通过四类行为探针。

<!-- skill-lint:constraint COMPLETION-STATUS-NO-OVERCLAIM --> 如果无法启动新会话,必须报告 `CONFIG_WRITTEN` + `NOT_VERIFIED`,不得声称配置已经生效。

适用边界

在以下条件同时满足时使用:

  • 用户是律师、法务、合规、知识产权或其他法律工作者;
  • 用户要建立或更新 AI 协作规则、AGENTS.md、CLAUDE.md 或 harness 基线。

不要用于:

  • 合同审查、案件研判、检索、文书起草等法律业务;
  • `.claude/`、`.codex/`、skills、docs 等项目脚手架初始化(改用 `project-init`);
  • Skill 或代码开发。

输入参数

| 参数 | 默认值 | 说明 | |---|---|---| | `--guide-mode` | `quick` | `quick` / `guided` / `team` | | `--level` | 自动判断 | `user` / `project`;team 模式按组织→项目→个人处理 | | `--platforms` | 当前 runtime + 可写已安装平台 | 平台 key,逗号分隔 | | `--runtime` | 自动检测 | 调用方明确知道当前平台时传给 `detect.sh` | | `--project-type` | 询问 | `litigation` / `transactional` / `ip` / `in-house` / `research`;只路由问题,不提供标准答案 | | `--privacy-mode` | `strict` | `strict` / `local` / `team` | | `--mode` | `create` | `create` / `update` / `append`;三者均只 upsert 受管区块 | | `--block-id` | 按模块指定 | 稳定 marker id,见“受管区块” | | `--dry-run` | 否 | 只展示候选 diff,不写入 | | `--model` | env 白名单探测 | init-environment 受管区块需要时兜底;`ANTHROPIC_MODEL` / `OPENAI_MODEL` / `CLAUDE_MODEL` / `GLM_MODEL` / `MY_MODEL` 命中即用 | | `--action` | `init` | record-init-env.sh 的操作类型:`init` / `update` / `append` | | `--record-init-env` | `true` | write.sh 真实落盘后是否自动调 record-init-env.sh;`true` / `false`;批量场景可关 | | `--init-action` | `init` | write.sh 自动调 record-init-env.sh 时传的操作类型 |

将旧参数 `--preset` 解释为 `--project-type`,并提示新名称;项目类型只决定追问路线,不能替用户填答案。

第一步:检测环境

运行:

bash scripts/detect.sh
# 调用方明确知道当前平台时:
bash scripts/detect.sh --runtime codex

读取 schema v3 的:

  • `runtime_candidates`:候选平台、信号、置信度、是否可写;
  • `current_runtime`:只在显式声明或最高置信度唯一命中时设置;
  • `harnesses_detected`:已安装平台;
  • `project_level`:AGENTS.md / CLAUDE.md 与 `project-init` 复合证据。

检测脚本只读取已知目录、文件存在性、行数及 runtime 环境变量是否存在,不读取环境变量值、配置正文、Token 或凭证。详见 [references/03-harness-detection.md](references/03-harness-detection.md)。

第二步:选择引导模式与隐私模式

quick:5 分钟最小安全基线

默认使用。用一轮最多 5 个问题确认:

1. 角色和主要工作类型是什么? 2. 常见交付物及期望格式是什么? 3. AI 可做、必须先确认、绝对禁止的动作分别是什么? 4. 采用 `strict`、`local` 还是 `team` 隐私模式? 5. 哪些决策、证据变化、期限和交付版本需要留痕,项目已有哪个权威载体?

每组答案只解释一句“为何需要”。不要跳过必要安全问题,也不要强迫用户完成全部教学章节。生成 M1、M2、M3、法律安全基线和 M5;项目级再生成最小 M6—M8。

guided:逐模块共同设计

按 M1→M8 逐项引导,参考 [references/04-modules.md](references/04-modules.md) 与 `templates/modules/`。用户卡住时给候选维度,不替用户决定,不直接套用范例。

team:三层治理

先读取 [references/20-team-layering.md](references/20-team-layering.md),分别确认:

  • 组织层:稳定且不可被项目弱化的安全、保密、审批与工具政策;
  • 项目层:事项范围、阶段、事实入口、时限与项目工作流;
  • 个人层:表达、格式与非强制偏好。

<!-- skill-lint:constraint TEAM-LAYER-PRECEDENCE --> 在平台允许配置的同一治理范围内,冲突时必须遵循法律安全边界/组织强制政策 > 项目具体规则 > 个人偏好;同层冲突请求负责人确认并留痕。AGENTS.md/CLAUDE.md 是持久默认基线,不得把这条团队层规则解释成对平台指令层级或用户当前明确授权的通用改写。

三档隐私模式

按 [references/18-privacy-and-context.md](references/18-privacy-and-context.md) 执行:

  • `strict`:AGENTS.md 只写项目代号、类型、阶段、关键时点和规则,不写真实当事人、案号、金额、联系方式或身份号码。
  • `local`:真实事实写入权限为 `0600` 且被 `.gitignore` 排除的 `.legal-context.local.md`;AGENTS.md 只保留入口和按需读取规则。
  • `team`:真实事实只进入组织批准的受控团队载体;AGENTS.md 记录载体路径、访问条件和脱敏/对外规则,不记录凭证或高敏个人身份号。

第三步:生成法律安全基线

<!-- skill-lint:constraint PRIVACY-MINIMUM-CONTEXT --> M4/M5 必须覆盖四项契约,且项目配置不得直接包含凭证、高敏身份号或与协作无关的可识别案件信息:

  • 权限契约:读、写、外发、提交、删除、支付分别需要什么授权;外部或不可逆动作必须逐项确认。
  • 保密契约:默认最小必要上下文;禁止把客户材料、身份号码、凭证或未脱敏事实写入公开配置、日志、提交或外部服务。
  • 溯源契约:区分材料事实、推断与建议;法律结论保留来源、时间和适用范围;信息不足时明确缺口。
  • 人工裁决契约:AI 不作最终法律判断;期限、金额、主体、法条引用和对外交付必须由指定人员复核。

回溯载体按事实性质选择,并优先复用项目已有权威来源:

  • 决策/取舍 → 已有 `DECISIONS.md` 或项目指定决策载体;
  • 证据材料新增、来源或证明目的变化 → 证据目录/证据索引/项目指定证据日志;
  • 期限与责任人 → 已有 `TASKS.md`、期限台账或经授权的日历;
  • 交付物版本和用户可见变化 → `CHANGELOG.md` 或项目指定交付记录。

项目未启用某类文件时先询问或标记待补充,不为形式完整创建空文档。详见 [references/06-audit-trail-contract.md](references/06-audit-trail-contract.md)。

第四步:生成最小项目上下文

M6—M8 默认只生成:

# 项目:{项目代号}

- 类型:{项目类型}
- 阶段:{当前阶段}
- 关键时点:{日期 + 事项;未知则写待补充}
- 受控事实入口:{不需要则写“无”}
- 文件结构与权威载体:{沿用项目现有约定}

不要默认询问或写入完整当事人、真实案号、金额、统一社会信用代码。确需使用真实事实时,根据隐私模式写入受控载体。项目类型只用于决定下一条必要问题,参见 [references/12-module-project-context.md](references/12-module-project-context.md) 和 [references/13-module-case-facts.md](references/13-module-case-facts.md)。

若检测到 `project-init` 复合证据,只补法律安全、回溯和受控上下文入口,不改项目脚手架。

第五步:用稳定受管区块预览

每个模块使用固定 `block-id`,一次只更新一个逻辑区块:

| 内容 | block-id | |---|---| | 角色 | `m1-role` | | 工作流 | `m2-workflow` | | 协作偏好 | `m3-collab-style` | | 法律安全基线(含 M4) | `legal-safety-baseline` | | 回溯契约 | `m5-traceability` | | 项目上下文 | `m6-project-context` | | 受控事实入口 | `m7-fact-entry` | | 文件结构 | `m8-file-structure` | | 初始化环境(受 `legal-harness-init` 自动 append) | `init-environment` |

<!-- skill-lint:constraint MANAGED-BLOCK-SAFE-UPSERT --> `write.sh` 必须自动添加形如 `<!-- legal-harness-init:m1-role:start -->` 的唯一成对 marker,并按实际目标路径去重;内容临时文件不得自行添加外层 marker。先运行内容校验,再用 `--dry-run` 展示合并候选 diff。

第六步:校验并安全写入

bash scripts/validate-content.sh \
  --file <模块内容文件> \
  --privacy-mode <strict|local|team>

bash scripts/write.sh \
  --content-file <模块内容文件> \
  --level <user|project> \
  --platforms <key,key> \
  --mode <create|update|append> \
  --block-id <稳定-id> \
  --privacy-mode <strict|local|team> \
  --project-dir <项目路径> \
  --dry-run

确认 diff 后去掉 `--dry-run`。脚本必须:

  • 按实际目标路径去重;Codex + OpenClaw 同指向项目 `AGENTS.md` 时只写一次;
  • 校验 marker 与敏感信息后,在目标同目录构造候选并原子替换;
  • 保存首次写入前的 `.bak.legal-harness-init` 及权限/哈希元数据,并为每次变化保存唯一快照;
  • 将用户级配置、原始备份、快照和元数据收紧为 `0600`;
  • 第二次写入相同内容时报告 `unchanged`,不产生新快照。

需要回退时:

bash scripts/restore.sh --target <AGENTS.md-or-CLAUDE.md>

平台路径与非 AGENTS.md 模式限制见 [scripts/README.md](scripts/README.md)。

第六步半:记录初始化环境

`write.sh` 真实落盘后(v0.4.2+)**已自动调一次** `record-init-env.sh

Read more
Ships withlegal-skills

面向法律人的 Skills 集合。

Get the whole plugin

Other skills on legal-skills.

agent-email
Skill

agent-email

Agent 专用邮箱统一管理:让 Claude Code、Codex 等平台的 Agent 用一套命令收发邮件、整理收件箱、分发任务。支持网易 ClawEmail(claw.163.com)和腾讯 Agent Mail(QQ…

apple-smart-schedule
Skill

apple-smart-schedule

把一句自然语言(机票/高铁/开庭/会议/截止日期/聚会/看病等)或一张票据截图,自动变成苹果「日历」事件 + 一串按事件类型智能提前的「提醒事项」。在 macOS 上运行、经 iCloud 同步到 iPhone/iPad。当用户说「帮我加个日程/提醒」「机票…

case-dashboard
Skill

case-dashboard

律师案件看板。本地零依赖看板服务(案件总览、任务三态看板、期限预警、进度写回)+周研判分析。当用户说"打开看板/dashboard/案件面板/看下案件进度/给我案件周报研判"时使用。案件状态写入与上下文管理用 case-progress(/progress…

case-progress
Skill

case-progress

案件进度与状态台账管理。案件 case.yaml 的唯一写入引擎(新增任务、推进任务、登记期限、更新案件阶段、校验、存量迁移),Agent 会话的进度加载与写回契约,以及案件进度监控对账。当用户或 Agent…

code2patent
Skill

code2patent

从已开发代码项目中提取技术实现证据,围绕候选专利方案生成算法/软件类说明书式技术交底书,并以“权利要求布局卡 →…