gl-recon – 总账对账与科目余额核对 Skill

3周前更新 8 0 0 0

gl-recon 是帮助 AI Agent 执行总账科目余额核对与勾稽分析的财务对账 Skill,用于比对不同来源的会计科目数据、定位差异并辅助完成 GL 对账流程。

Skill 安装

多 Agent 安装
npx skills add https://github.com/anthropics/financial-services-plugins --skill gl-recon

使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。

Skill 调研报告

Skill 详细介绍

gl-recon 是 Anthropic 官方 financial-services-plugins 仓库中的一个 Skill,定位是总账核对(General Ledger Reconciliation,简称 GL Recon)。它面向财务、会计和审计场景,主要解决的是把两套或多套账务数据进行比对、找出差异、定位差异原因这一类高频但繁琐的工作。

它不是一个独立的会计软件,也不是 ERP 或记账系统。它本质上是一套面向 AI Agent 的结构化指令与工作流:安装后,Agent 会获得「按总账核对思路处理任务」的能力,能够按照固定的方法步骤去读取数据、比对科目余额、标记不匹配项、生成差异说明和核对底稿。

核心用途

  • 总账与明细账之间的余额核对
  • 银行流水 / 对账单与账面记录的核对
  • 内部往来、关联方科目的双边核对
  • 期初、期末余额的跨期间一致性检查
  • 差异项的识别、分类和说明生成

主要解决什么问题

传统做法里,财务人员要把两套数据导进 Excel,手动做 VLOOKUP、透视表、条件格式高亮,再逐条追差异。数据量一大,公式维护成本很高,而且每次换一批数据都要重做一遍。gl-recon 把「核对逻辑」固化成 Skill,让 Agent 按照同一套规则反复执行,减少重复搭建表格的工作。

安装后 Agent 增加的能力

  • 识别用户提供的账务数据结构(科目、期间、金额、方向等)
  • 按核对任务组织比对流程,而不是随意分析
  • 输出结构化的差异清单,而不是一段笼统的结论
  • 对差异给出可能原因的初步归类(如时间差、方向错误、遗漏、重复记账)
  • 生成可以直接用于复核的核对说明文本

它不是什么

  • 不是记账软件,不会自动做会计分录
  • 不是审计底稿系统,不替代专业审计判断
  • 不是数据源工具,不会自己去银行或 ERP 拉数据
  • 不是财务合规认证工具,不保证结果符合任何具体准则

典型使用场景

  • 月度结账前的科目余额核对
  • 月度银行对账
  • 集团内部往来对账(母公司 vs 子公司)
  • 审计过程中抽样核对与差异追踪
  • 历史账目整理和一次性批量核对

适合哪些用户

  • 财务共享中心的核算岗
  • 企业财务经理 / 会计主管
  • 审计、内审人员
  • 需要频繁做对账的财务分析人员
  • 正在把财务流程接入 AI Agent 的团队

不适合哪些需求

  • 需要自动生成纳税申报表
  • 需要做企业估值、投资分析
  • 需要操作实际 ERP 系统的记账模块
  • 需要替代财务人员做出最终核对结论的场景

与普通 Agent 自身能力的区别

普通的通用 Agent 你给它两段账务数据,它也能对比。但对比逻辑、输出格式、差异分类口径每次都不稳定。gl-recon 的价值在于把这套流程标准化:同样是两套账,用 gl-recon 触发时,Agent 会按照预设的核对方法论来处理,输出结构更接近真实财务人员的工作习惯,而不是一段自由发挥的分析。

Skill 安全评估

总体判断:gl-recon 来自 Anthropic 官方 monorepo(anthropics/financial-services-plugins),来源可信度较高,其本身是提示词 / 工作流性质的 Skill,不包含独立可执行二进制,风险主要来自你交给 Agent 的财务数据,而不是 Skill 本身。

来源可信度

  • 仓库归属 Anthropic 官方组织,非个人或第三方镜像
  • 属于 finance 类官方插件集合,主要面向 Claude / Claude Code 使用
  • 相比来源不明的 Skill 仓库,供应链风险明显更低

真正的风险点:数据敏感性

这是 finance 类 Skill 最关键的安全问题。你用它处理的内容通常是:

  • 科目余额表、明细账
  • 银行流水、对账单
  • 内部往来数据
  • 可能包含账户号、客户名、金额明细

这些数据一旦进入云端模型上下文,就等于离开了本地环境。风险不在 Skill,而在你把什么数据交给谁。

实操建议:

  • 真实生产账目优先在符合公司数据合规要求的模型环境下处理
  • 测试阶段用脱敏数据(科目名保留、金额随机化、账号打码)
  • 不要为了核对方便,把客户身份信息、银行账号一并粘贴进去

文件读写权限

如果 Agent 环境允许它读取本地文件(如 Excel、CSV),它会读入整份文件内容,其中可能包含超出核对需要的行和列。建议:

  • 只提供核对必需的工作表 / 列
  • 提前裁剪掉无关的敏感字段
  • 核对完成后及时清理临时文件

Shell 与自动执行

gl-recon 本身是分析型 Skill,不需要 Shell 权限就能完成核对逻辑。如果 Agent 为了读 Excel 而自动执行脚本或安装依赖,这是 Agent 行为,不是 Skill 要求。

降低风险的做法:

  • 关闭「自动执行 Shell」权限,由你手动运行必要的转换命令
  • 只让 Agent 负责核对与差异说明,数据格式转换自己完成

输出可信度

核对结果依赖你给的数据质量。如果输入数据本身有重复行、方向口径不一致、科目映射不统一,Agent 会基于错误输入给出错误差异。这不是安全问题,但是实务上很容易踩的坑——核对结果必须由人复核后才能作为正式结论。

结论

  • Skill 本身:来源可信,无独立可执行代码,风险低
  • 主要风险:你交给它的财务数据敏感性,以及输出结果需要人工复核
  • 是否安全,取决于你是否在合规环境下处理真实账目

Skill 使用要求

一、Agent / 客户端

gl-recon 属于 Anthropic 官方 financial-services-plugins 集合,最直接的使用环境是 Claude Code,在该环境下加载和调用最顺畅。其他支持 Skills / 自定义指令加载机制的 Agent(如 Codex、Cursor、Trae、OpenClaw、WorkBuddy 等)通常也可以尝试使用,但官方没有公布完整的第三方兼容列表,不同 Agent 的 Skill 加载方式和兼容程度可能不同,具体以对应 Agent 当前版本为准。

二、运行环境 / 依赖

项目 要求
Agent Claude Code 优先,其他支持 Skill 机制的环境可尝试
Node.js / Python Skill 本身不强制要求;仅在需要脚本处理 Excel / CSV 时由 Agent 环境决定
数据文件 通常需要以 Agent 可读的格式提供(如 CSV、Markdown 表格、或粘贴的表格文本)
网络 使用云端模型时必需;本地模型环境下不需要

具体版本要求官方未在 Skill 层面硬性规定。

三、权限

  • 文件读取:可选。如果直接把核对数据粘贴给 Agent,可以不用文件读取权限
  • 文件写入:可选。需要 Agent 输出差异清单文件时才需要
  • Shell:不需要。核对逻辑本身是分析型任务
  • 网络:取决于使用的模型是否为云端

四、账号 / API Key

gl-recon Skill 本身不要求额外的账号或 API Key。它需要的是:

  • 一个能加载该 Skill 的 Agent 环境(Claude Code 或其他兼容环境)
  • 模型访问能力(Anthropic API Key 或对应 Agent 的模型配置)

这两项是 Agent 环境层面的要求,不是 gl-recon 特有的。

最小使用条件

  1. 一个能加载 Skill 的 Agent 环境(优先 Claude Code)
  2. 可用的模型访问配置
  3. 两套待核对的账务数据,格式清晰
  4. 明确核对口径:核对哪两个对象、核对哪些科目、核对哪个期间

Skill 安装、使用与卸载教程

一、安装

可以直接复制本页面提供的 Skill 安装指令,粘贴到对应 Agent 或终端执行。LemonAIKit 页面已经给出了针对 gl-recon 的具体安装命令,按页面提示操作即可,这里不再重复长篇安装步骤。

如果你不确定自己的 Agent 该如何安装,可以直接问当前 Agent:

如何安装 anthropics/financial-services-plugins#gl-recon?

如何在 Claude Code 中安装 anthropics/financial-services-plugins#gl-recon?

如何在 Cursor 中安装 anthropics/financial-services-plugins#gl-recon?

让 Agent 根据自己的 Skill 加载和管理机制来指导安装,比照搬某个固定命令更稳妥。gl-recon 属于 Anthropic 官方插件集合,安装时需要确保来源是 anthropics/financial-services-plugins 这个官方仓库,而不是第三方镜像或转载版本。

二、安装后如何使用

安装完成后,Agent 会在相关任务中具备 gl-recon 对应的核对工作流能力。触发方式通常是在对话中明确提到该 Skill,或描述一个明确的核对任务。适合交给它的任务类型:

  • 两套账务数据之间的科目余额核对
  • 银行流水与账面记录的差异比对
  • 内部往来对账
  • 差异清单生成与差异原因归类

向 Agent 描述需求时,尽量说清三件事:核对哪两个对象、核对哪些科目、核对哪个期间。例如:

使用 gl-recon,帮我把这份明细账和总账的月末余额核对一下,列出所有不一致的科目。

使用 gl-recon,对比这两份银行流水和账面记录,找出未匹配的交易并说明可能原因。

使用 gl-recon,核对 A 公司和 B 公司之间的内部往来科目,输出差异清单。

如果数据量较大,建议分批次核对(比如按科目或按期间),这样差异定位更清晰,也更容易人工复核。

三、卸载

gl-recon 的卸载方式取决于你所用的 Agent 的 Skill 管理机制:

  • 使用对应 Agent 或 Skill 管理器提供的删除方式移除该 Skill
  • 或者直接询问当前 Agent: 

    如何卸载 anthropics/financial-services-plugins#gl-recon?

不同 Agent 的 Skill 安装位置和管理方式可能不同,如果没有统一卸载命令,直接让 Agent 引导移除通常比手动查找目录更省事。卸载不会影响你的原始账务数据文件。

常见问题

1. gl-recon 和普通的「让 AI 帮我对比两张表」有什么区别?

普通对比每次输出逻辑不稳定,差异分类口径也会变。gl-recon 把总账核对的流程固化为结构化工作流,输出格式、差异归类口径更一致,更接近财务人员实际的核对习惯。

2. 中国大陆使用有网络要求吗?

如果使用云端模型(如 Claude 官方服务),需要能正常访问对应的模型 API。本地部署或国内模型环境下则取决于该环境的网络配置。Skill 本身不包含额外的国内专用 endpoint 或镜像要求。

3. 安装后 Agent 没识别到 Skill 怎么办?

常见原因:Skill 未放在 Agent 期望的目录、Agent 版本过旧不支持 Skill 机制、或加载后未重启会话。可以询问当前 Agent: 

为什么我在 Claude Code 中看不到 anthropics/financial-services-plugins#gl-recon?

 让 Agent 根据自身机制诊断。

4. 可以同时安装到多个 Agent 吗?

可以。Skill 是以文件形式存在于各 Agent 的环境中,多个 Agent 各自安装一份即可,互不影响。

5. Skill 更新后需要重新安装吗?

取决于你的安装方式。如果是通过官方源拉取或由 Agent 的 Skill 管理器维护,可能会随更新同步;如果是手动复制的快照,需要重新获取最新版本。具体以你使用的安装方式为准。

6. gl-recon 会直接修改我的账务文件吗?

不会自动修改原始文件。它主要做读取与比对,输出差异清单或说明。是否会写入新文件,取决于你是否授予 Agent 写文件权限,以及你如何向它描述任务。

7. gl-recon 的输出可以直接作为审计结论吗?

不建议。它的输出是辅助核对的差异清单和原因归类,属于工作底稿的原料,最终结论仍需财务或审计人员复核确认。

Skill 更新日志

版本列表
无版本号
删除 claude-for-financial-advisors 目录 (#354) 删除 anthropics/financial-services 中的 financial advisors 目录
无版本号
build-manifest:将凭据放在 URL fragment 中,而不是查询字符串中 (#356) * build-manifest:将凭据放在 URL fragment 中,而不是查询字符串中 Claude for Office 从 URL fragment 读取 manifest 设置;查询字符串中的凭据在那里已被弃用,并将从 2026-10-19 起被忽略 (anthropics/office-agent#2857)。Fragment 不会在 HTTP 请求中发送。 Co-Authored-By: Claude Claude-Session: https://claude.ai/code/session_01LTWZSYSeY8PZFPmQ3PXJin * manifest 文档:精简 fragment 说明 Co-Authored-By: Claude Claude-Session: https://claude.ai/code/session_01LTWZSYSeY8PZFPmQ3PXJin * build-manifest:将 FRAGMENT_KEYS 重命名为 SENSITIVE_KEYS Co-Authored-By: Claude Claude-Session: https://claude.ai/code/session_01LTWZSYSeY8PZFPmQ3PXJin --------- Co-authored-by: Claude
无版本号
access_policies:记录并验证 file_path 标识符 (#352) 管理员现在可以编写匹配打开文档路径的加载项访问规则,适用于无法携带敏感度标签的文件(例如,在网络共享上)。 - access-policies.md:一个路径示例、语法和运算符条目,以及一条涵盖路径如何比较及其限制的规则。 - build-manifest.mjs:接受 file_path 与 equals | startsWith 搭配使用,并在其用于 uploaded_file 时发出警告,因为在那里它永远无法匹配。
无版本号
移除 claude-for-financial-advisors 市场条目 (#351) 插件目录保留;仅移除市场列表以避免重复列表。
无版本号
推出 Claude for Financial Advisors (#350) 添加 Claude for Financial Advisors 插件
无版本号
移除 wealth-management 插件 (#349)
无版本号
claude-for-msft-365-install:记录 web_search disabled_features slug (#329) docs:记录 web_search disabled_features slug (0.1.11) 该加载项现在在 disabled_features 中强制执行 web_search:它会移除 原生 web_search/web_fetch 服务器工具和用户开关,同时保留代码 执行。将其添加到强制 slug 表中,并附上配对 指南(mcp_servers 用于网络内替代搜索工具),同时添加到 构建脚本的提示中。
无版本号
manifest:识别 available_models 配置键 (#311) * manifest:识别 available_models 配置键 将 available_models 添加到 KEYS 验证器(逗号分隔的 id 或 JSON id 数组 / {id,label} 对象数组,与加载项的解析器保持一致),并在 manifest.md 和 bootstrap.md 中记录。替换 #294 中已弃用的 disabled_models/additional_models 组合:available_models 是 单一覆盖列表,因此管理员声明完整选择器,而不是差异。 No-Verification-Needed:直接针对有效和无效输入运行了 build-manifest.mjs * 将 claude-for-msft-365-install 升级到 0.1.9 No-Verification-Needed:仅版本升级
无版本号
fix:更新关于 Foundry 的文档 (#323)
无版本号
manifest:添加 access_policies 键和引导式 access-policies 命令 (#307) * manifest:添加 access_policies 键和引导式 access-policies 命令文档 添加 access_policies 配置键——一个由 allow/deny 语句组成的 JSON 数组,取代 disabled_features,并可按 Purview 敏感度标签将规则限定到 文档。构建脚本识别 该键(对 JSON 数组进行仅警告的形状检查),manifest.md 将其与 disabled_features 一起记录,并且新增的 access-policies 命令会引导 管理员完成获取标签 GUID、选择语句,以及在发布前需要解释的匹配规则。 * 验证 access_policies 语句结构;记录语法和 slug 构建脚本现在解析 access_policies,并对每条不符合语法的语句 发出警告——错误的 effect、未知的 resource 或 identifier 类型、 identifier 类型不支持的运算符(GUID 仅接受 equals | exists)、空的 identifiers 数组、空白的 action slug。这些 正是加载项会静默丢弃的形状,因此构建是唯一能捕获它们的 地方;无法解析的值是致命错误。 文档:向 access-policies.md 添加语句语法参考和完整 feature-slug 列表, 将 manifest.md 中的 disabled_features 表与 全部四个 slug 同步,向 bootstrap.md 添加缺失的 access_policies 字段, 并修复父标签前缀示例以包含 " - " 分隔符。
无版本号
添加只读加载项数据导出;加固缓存清理脚本 (#302) * 添加只读加载项数据导出;加固缓存清理脚本 聊天历史、技能、MCP 注册和记忆仅存在于用户机器上的浏览器 存储中。添加 export-addin-data.{sh,ps1} 以在重建前复制它们, 并修复与其相邻的缓存清理脚本。 clear-addin-cache.sh 以区分大小写的方式匹配加载项 ID,但 Office 会以 manifest 所携带的任意大小写命名 wef 文件。小写 GUID 会报告 "already clear" 并以 0 退出,从而将管理员引向会破坏 Windows 上聊天历史的 全文件夹清除。改为不区分大小写匹配,并在两个平台上让未命中打印 NOT cleared 并以非零退出。 clear-addin-cache.ps1 在 Windows PowerShell 5.1 上从未能解析:无 BOM 的 .ps1 中的 em dash 会被解码为 ANSI,变成包含引号的乱码,从而在文件中间终止字符串。所有 .ps1 文件现在都是纯 ASCII,并且 check.py 会拒绝没有 UTF-8 BOM 的 .ps1 中的非 ASCII 字节。 另外: - export:从 WebKit 的二进制 origin 文件中解析端口。丢弃它会使 同一主机上的两个 origin 在一个导出文件夹中冲突,并静默 覆盖第一个。 - export:包含 localStorage,其中保存设置、推理配置, 以及 onboarding/terms 标志。 - export:在给定 --out 却未导出任何内容时现在以非零退出,因此 "先导出再清除" 不能将空备份视为成功。 - export:数据库复制失败不再中止运行;包含 撇号的路径可以正常工作。 - export.ps1:在 Copy-Item -Recurse 前清空目标,否则重新运行时 会嵌套而不是刷新;为名称被压缩隐藏的存储添加 -IncludeAll; 先扫描未压缩的 LevelDB 文件。 - clear.ps1:要求 -Id 为 GUID,因为 Remove-Item -Path 会展开通配符; 为 Remove-ItemProperty 转义值名称。 - clear.sh:也扫描 Outlook,并保护接受值的标志。 - 记录为什么替换或重新安装 manifest 永远不会移动数据。 已在 macOS 上针对实时加载项数据验证,并在 Windows 主机上针对 Windows PowerShell 5.1 验证。 * 将 Windows localStorage 导出为整个按配置文件存储 localStorage 保存设置、推理/客户配置,以及 onboarding + terms-accepted 标志——这些都不在 IndexedDB 中——因此没有它的导出 会让重建后的机器重新进行 onboarding。 Chromium 为每个配置文件保留一个由每个 origin 共享的 LevelDB,因此无法 将其过滤为单个加载项。与其丢弃它,不如整体复制,每个 Office 账户一次,放在该账户的 origin 文件夹旁边。因此它也包含其他 origin 的设置:每次运行都会打印大小,包括无参数 预览,帮助文本会明确说明,并且如果数据政策禁止,可以直接从导出中删除该文件夹。 - 复制到临时名称并仅在成功时替换。先删除目标意味着锁定的 LOCK 文件(Office 仍在运行)会让导出既没有新副本, 也没有之前良好的副本。失败现在会被计数并 报告为 INCOMPLETE,且以非零退出,与 macOS 脚本一致。 - 基于唯一配置文件列表驱动复制,而不是按存储循环,这样 唯一存储无法通过 origin 名称解析的配置文件仍会保留其设置。 - 在列表模式下也报告,与 macOS 一致——无参数运行 被宣传为打印其发现的内容。 - .SYNOPSIS/.DESCRIPTION 不再声称只复制 Claude 的数据。 - 更正 export-data 文档:导出树为可读性重新标记, 不是路径镜像,因此不能逐字复制回去。 已在 Windows 主机上针对 Windows PowerShell 5.1 验证:每个 配置文件复制一次,重新运行时保持扁平,存在真实 LevelDB 内容,在列表模式下披露且不写入任何内容。
无版本号
manifest:添加 gateway_auth_source=entra;新增 entra-app.md 注册文档 (#281) * manifest:添加 gateway_auth_source=entra 参数 + Entra 应用注册文档(包括 GCC High) - build-manifest.mjs:识别 gateway_auth_source;要求 entra_scope(→ graph_client_id,entra_sso=1);如果与 gateway_token 搭配则警告;删除过时的 'graph_client_id 仅适用于 Outlook' 说明 - manifest.md:新增 '使用 Entra 令牌作为你的网关凭据' 部分,包含整合后的 Entra 应用注册清单(SPA 重定向 URI、Expose an API、管理员同意、v2 令牌、网关侧验证)以及 GCC High/DoD 子部分(portal.azure.us、.us issuer/JWKS) * manifest.md:列出两个 NAA 重定向 URI(brk-multihub + https 回退) 清单只列出了 https://.../msal-redirect.html SPA 回退。桌面 Office 和 Outlook Web 使用 NAA broker,它要求将 brk-multihub://pivot.claude.ai 注册为 SPA——没有它,登录会失败并显示 AADSTS50011。两者都需要:brk-multihub 用于 NAA,https 用于未注入 NAA 桥接的 Excel/Word/PPT Office-Web 回退。还将早先的 'Bring your own Entra app' 说明指向清单,而不是(不完整地)重复。 * 将 Entra 应用注册拆分到 commands/entra-app.md manifest.md 现在记录这些参数的作用;entra-app.md 记录如何注册应用(重定向 URI、按用例权限表、管理员同意、令牌版本、后端验证、GCC-High/DoD、故障排除)。从每个需要你自己的应用的 manifest.md 部分链接:graph_client_id、entra_scope、gateway_auth_source、sovereign clouds。
无版本号
添加主权/国家云(GCC-High、DoD、21Vianet)文档和 graph_cloud 验证 (#268) * docs(claude-for-msft-365-install):通过 graph_cloud 枚举支持主权云 Outlook 加载项现在通过单个 graph_cloud manifest 参数(global | us-gov-high | us-gov-dod | china)支持 GCC-High、DoD 和 21Vianet 租户,该参数映射到固定的 Graph + Entra 端点对——无需管理员提供 URL。让安装插件了解它: - commands/manifest.md:按租户的 graph_cloud 表;DoD 必须始终设置它 (与 GCC High 共享 authority host);非全球云需要 BYO graph_client_id;该枚举还管理 Word/Excel/PowerPoint Entra SSO。 - scripts/build-manifest.mjs:注册 graph_cloud,并在 无法识别的值或没有 graph_client_id 的非全球云上硬失败, 与加载项的加载时检查保持一致,以便管理员在构建 时看到错误,而不是部署后看到 AADSTS 代码。参数构建已提取 到导出的 buildParams() 以便测试。 - scripts/build-manifest.test.mjs:node:test 套件——默认查询字符串 不变,接受所有枚举值,拒绝错误值和已移除的 URL 参数。 - .github/workflows/plugin-validate.yml:在每个 PR 上运行测试套件。 * 删除 manifest 脚本测试——graph_cloud 验证是两个内联检查
无版本号
将 Box 添加到 MCP 集成 (#187) * 将 Box 添加到 MCP 集成 * 将 Box 添加到 mcp.json
无版本号
为所有市场插件条目添加 displayName (#247) * 为所有市场插件条目添加 displayName * 将固定的 Claude Code CLI 升级到 2.1.143 以支持市场 displayName
无版本号
在托管代理部署上标记 metadata.anthropic_cookbook (#245)
无版本号
fix(plugins):添加 SKILL.md frontmatter,修复 hooks.json,去重 spglobal MCP (#243) 市场加载器在同步时拒绝了 20 个插件中的 9 个: - 29 个 vertical-plugin SKILL.md 源没有 YAML frontmatter—— 技能名称/描述作为裸 `description:` 行位于正文中, 在 `# Title` H1 之后。合成了正确的 `--- name/description ---` frontmatter(name = 技能目录,description = 现有正文文本), 与可加载技能匹配(例如 fund-admin/accrual-schedule)。代理 包已通过 scripts/sync-agent-skills.py 重新同步(12 份副本)。 - 4 个 hooks/hooks.json 是 `[]`;加载器要求 JSON 对象。 改为 `{ "hooks": {} }`——investment-banking 已使用且 同步正常的形式。 - partner-built/spglobal 在 plugin.json 内联和 .mcp.json 中都定义了 `spglobal` MCP 服务器(完全相同)。删除内联副本; .mcp.json 是规范位置。 scripts/check.py:OK——80 个文件,0 个问题。 Co-authored-by: Jake Marsh
无版本号
fix(ci):plugin-validate 缓存修复 + msft-365 README 更新 (#239) * fix(ci):缓存 claude 二进制目录,而不仅仅是悬空符号链接 ~/.local/bin/claude 是指向 ~/.local/share/claude/versions/ 的符号链接。 仅缓存符号链接会在缓存命中时恢复一个悬空链接,因此 `claude` 会以退出码 127 失败。同时缓存带版本的目录并提升 缓存键(-v2)以丢弃损坏的已保存条目。 * docs(claude-for-msft-365-install):添加更新 + bootstrap 部分,调试命令行
无版本号
fix(plugins):修复损坏的 hooks.json + 添加 plugin-validate CI (#232) fix(plugins):hooks.json 必须是 {"hooks": {}} 而不是 [];添加 plugin-validate CI private-equity、financial-analysis、 equity-research 和 wealth-management 中的空数组 hooks.json 导致这些插件 加载失败("Hook load failed: expected object, received array")。在全部四个中将 [] 替换为 最小有效的 {"hooks": {}} 对象。 添加 plugin-validate 工作流,在每次 PR 和 push 时对市场 manifest 和每个插件运行官方 `claude plugin validate`,这样格式错误的 manifest 会在 CI 中失败,而不是到达用户。 CLI 从官方二进制渠道安装并缓存,以 固定版本为键,因此热缓存会完全跳过下载。
无版本号
feat(repo):插件版本升级钩子 + CI 兜底;claude-in-office Wef 旁加载调试 (#208) * feat(repo):插件版本升级钩子 + CI 兜底,修复安装文档/远程 * docs(claude-in-office):添加 Wef 注册表 + wef-folder 旁加载(Windows + macOS)用于本地调试 * ci:使用 actions/checkout@v4 而不是固定 SHA * docs(claude-in-office):将旁加载清理限定到特定 manifest,而不是 wef 文件夹 * docs(claude-in-office):将缓存清理限定到带保护的 wef 内容,而不是对 caches/wef 目录执行 rm -rf * docs(claude-in-office):按加载项 Id 定位缓存清理,保持 wef 中的其他加载项不受影响 * feat(claude-in-office):添加 clear-addin-cache 脚本(mac/win),按 ID 定位,默认 dry-run * fix(claude-in-office):Windows 旁加载清理基于注册表,ID 优先;直接编辑(不使用 office-addin-dev-settings);记录已部署缓存注意事项 * docs(claude-in-office):澄清按 ID 精准删除本地/旁加载 manifest 是安全的;MS 警告仅适用于已部署缓存 * feat(claude-in-office):添加 sideload-addin 脚本(mac/win),由 ID 派生,默认 dry-run;debug.md 指向脚本对 * feat(claude-in-office):旁加载直接安装(去掉 dry-run);dry-run 仅保留在破坏性的 clear-addin-cache 上 * docs(claude-in-office):将清理后重启应用设为明确步骤,而不是埋在一行中
无版本号
docs(claude-in-office):澄清 entra_scope——多 scope 支持,更宽松的验证 (#195) 加载项现在接受 entra_scope 为逗号/空白分隔列表,并且 不再要求 URI 形状的值(Entra 验证 scope 语法,而不是 构建脚本)。更新文档和 build-manifest 验证以匹配: - build-manifest.mjs:entra_scope 模式放宽为任意非空白字符串; graph_client_id 配对检查不变。 - manifest.md:记录多 scope 列表语法和同资源 约束;澄清构建脚本强制执行配对,而不是格式。 - bootstrap.md:说明 scp 是空格分隔列表,可包含多个 scope。 - debug.md:添加 Silent SSO / Entra 令牌失败故障排除部分 (AADSTS50194、entra_scope-without-graph_client_id、silent-then-popup)。
无版本号
feat(claude-in-office):添加 disabled_features manifest 参数 (#154)
无版本号
docs(claude-in-office):记录 allow_1p manifest 参数 (#153) * docs(claude-in-office):记录 allow_1p manifest 参数 * chore(claude-in-office):将插件版本升级到 0.1.1
无版本号
feat(claude-in-office):Outlook manifest 支持 (#127) build-manifest.mjs 现在接受 host 参数(office | outlook)。 outlook host 会获取 manifest-outlook-3p.xml,它使用 Microsoft 的 MailApp schema,无法与 Excel/Word/PowerPoint 使用的 TaskPaneApp manifest 共享文件。 - URL_SLOTS 正则现在为 /g,因此所有三个 Outlook 任务窗格 URL 条目 (FormSettings + V1_0 + V1_1 Resources)都会接收配置参数,而 不仅仅是第一个匹配项。 - 新增 graph_client_id 键,适用于自带 Entra 应用用于 Microsoft Graph 的组织,而不是同意 Anthropic 的多租户应用。 - 使用 outlook host 的 aws_* 键会快速失败:Outlook 目前 不支持 Bedrock。 - consent.md 增加 Outlook Graph 管理员同意 URL(Mail.ReadWrite、 Calendars.Read、People.Read、User.Read、offline_access)以及 自带 Entra 应用的替代方案。 - manifest.md 和 setup.md 记录 host 参数、按 host 的文件 拆分,并引导管理员在生成 Outlook manifest 前完成同意步骤。
无版本号
重构仓库并添加命名代理 (#81) - 将垂直插件从仓库根目录移动到 plugins/vertical-plugins/,将合作方 插件移动到 plugins/partner-built/ - 在 plugins/agent-plugins/ 下添加 10 个命名、自包含的代理插件 (Pitch Agent、Market Researcher、Earnings Reviewer、Model Builder、 Meeting Prep、GL Reconciler、Month-End Closer、Statement Auditor、 Valuation Reviewer、KYC Screener)——每个都捆绑自己的技能,因此可以 独立安装 - 添加 managed-agent-cookbooks/(每个代理一个),包含子代理隔离 和用于 /v1/agents 部署的引导示例 - 添加 fund-admin 和 operations 垂直插件,使 finance-ops/onboarding 代理附带真实领域技能 - 添加 scripts/(check.py manifest lint、sync-agent-skills.py、 deploy-managed-agent.sh、orchestrate.py 参考循环、 test-cookbooks.sh) - 添加 .github/workflows/secret-scan.yml(gitleaks + 内部引用 grep) - 将代理工具授权收紧为仅声明的 MCP——任何代理中都没有 Bash、WebFetch 或未声明的 mcp__* 引用 - 向 README 添加 not-investment-advice 免责声明 - 将 claude-in-office 重命名为 claude-for-msft-365-install(内容 不变)
无版本号
feat(claude-in-office):添加 entra_scope manifest 参数用于访问令牌引导认证 (#79) * feat(claude-in-office):添加 entra_scope manifest 参数用于访问令牌引导认证 * docs(claude-in-office):说明 entra_scope 资源应用的 accessTokenAcceptedVersion
无版本号
docs(claude-in-office):记录用于 BYO Entra 应用的 graph_client_id manifest 参数 (#78)
无版本号
docs(claude-in-office):记录 otlp_resource_attributes 配置键 (#73) 将新的 `otlp_resource_attributes` 键(逗号分隔的 k=v,格式与 OTEL_RESOURCE_ATTRIBUTES 相同)添加到: - build-manifest.mjs KEYS 验证器 - manifest.md / bootstrap.md 遥测部分 - update-user-attrs.md 键表 与 anthropics/office-agent OA-336 配对。
无版本号
feat(manifest):添加 inference_headers 配置键 (#68) 加载项附加到其发送到已配置网关的每个请求的额外 HTTP 头的 JSON 对象。让企业网关无需在前面放置注入头的代理即可接收 会计或路由标签。 - build-manifest.mjs:KEYS 验证器条目 - manifest.md / bootstrap.md / update-user-attrs.md:用 示例和保留头列表记录
无版本号
fix(manifest):不区分大小写地接受 gateway_auth_header 和 gateway_api_format (#65)

暂无评论

none
暂无评论...