跳到正文
cccskills
免费在 GitHub 公开

verify

Verify changes to Office add-in administration scripts using a temporary home directory. It covers syntax checks, cache-clearing behavior, identifier handling, and storage comparisons to check that removing add-in manifests preserves chat history.

中文简介正在准备中。当前显示英语简介。

原文查看原文说明

Verify changes to the claude-for-msft-365-install admin scripts and commands by driving them against an isolated fake $HOME.

集成工具ExcelPowerPoint
查看安装方法

适用场景

  • Testing cache-clearing changes in a temporary home directory
  • Checking that deletion affects only the selected add-in
  • Checking that chat history remains after manifest removal
  • Validating PowerShell syntax and behavior on Windows

包含的文件(1)

  • SKILL.md4.1 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Verifying claude-for-msft-365-install

This plugin is admin CLI tooling, not an app. There is nothing to build and no server to boot. The surface is the terminal: scripts/*.sh on macOS, scripts/*.ps1 on Windows.

Lint gate

python3 scripts/check.py           # from the REPO ROOT, not the plugin dir
bash -n claude-for-msft-365-install/scripts/<script>.sh

check.py lints every manifest and self-installs the pre-commit hook that patch-bumps .claude-plugin/plugin.json. Run it before committing.

Drive the scripts against a fake $HOME

Every macOS script resolves Office paths from $HOME, so overriding it gives a throwaway sandbox — you can exercise the destructive --apply paths without touching real Office data.

S=<scratchpad>/sandbox
for app in Excel Word Powerpoint; do
  mkdir -p "$S/Library/Containers/com.microsoft.$app/Data/Documents/wef"
done
printf '<x/>' > "$S/Library/Containers/com.microsoft.Excel/Data/Documents/wef/aaaaaaaa-1111-1111-1111-111111111111.manifest-a.xml"

HOME=$S ./scripts/clear-addin-cache.sh                      # list
HOME=$S ./scripts/clear-addin-cache.sh --id <GUID>          # dry-run
HOME=$S ./scripts/clear-addin-cache.sh --id <GUID> --apply  # destructive

Seed at least two IDs across two apps, with mixed upper/lowercase. Both properties have caught real bugs: cross-app blast radius, and a case-sensitive glob that reported "already clear" and sent admins to a folder-wide wipe.

Prove storage is retained

The load-bearing claim of this plugin is that clearing a manifest never touches the user's chat history. Verify it by snapshot-diffing both trees around the operation, against the real $HOME:

snap() {
  for app in Excel Word Powerpoint; do
    find "$HOME/Library/Containers/com.microsoft.$app/Data/Library/WebKit/WebsiteData" \
         -type f -exec stat -f '%N %z %m' {} \; 2>/dev/null
    find "$HOME/Library/Containers/com.microsoft.$app/Data/Documents/wef" \
         -type f -exec stat -f 'WEF %N %z' {} \; 2>/dev/null
  done | sort
}
snap > before.txt;  <run the script>;  snap > after.txt;  diff before.txt after.txt

Manifests live in Data/Documents/wef; storage lives in Data/Library/WebKit/WebsiteData. Different subtrees — the diff should show only the manifest you removed. Restore any planted files and re-diff to confirm you left the machine as you found it.

Gotchas

  • The Bash tool runs zsh. Scripts are #!/usr/bin/env bash; test bash-only behaviour (shopt, glob semantics) inside bash <<'EOF' … EOF, not inline.

  • PRAGMA integrity_check and SELECT count(*) fail on exported IndexedDB files with no such collation sequence: IDBKEY. That is WebKit's custom collation, not corruption — it fails on the source file too. Verify completeness with SELECT sum(length(value)) FROM Records; on both sides.

  • Never claim the .ps1 scripts work without running them on Windows. macOS has no PowerShell, so a .ps1 change verified only here is unverified. Run it on a real Windows host against Windows PowerShell 5.1, and always include a parse check before the behavioural ones:

    $e = $null
    [System.Management.Automation.PSParser]::Tokenize(
      (Get-Content -Raw .\clear-addin-cache.ps1), [ref]$e) | Out-Null
    if ($e.Count) { $e | ForEach-Object { $_.Message } } else { 'parse ok' }
    

    A file can be perfectly fine on macOS and fail to parse outright on Windows (see the ASCII note below), so parsing is the first thing to establish.

  • .ps1 files must be pure ASCII (enforced by scripts/check.py). Windows PowerShell 5.1 reads a BOM-less .ps1 as ANSI, so an em dash decodes to mojibake containing ", which terminates a string and breaks the parse. clear-addin-cache.ps1 shipped broken this way and no macOS check caught it.

  • Probe the arg parser. --flag as the final argument makes shift 2 fail under set -e and exits 1 with no output; each flag needs a [ $# -ge 2 ] guard.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Complete an existing financial model template by entering historical data and forecast assumptions, then linking the income statement, balance sheet, and cash flow statement with formulas. Check statement balances, cash consistency, and scenario behavior as each section is completed.

中文简介正在准备中。当前显示英语简介。

  • Complete a partially filled financial model
  • Link forecasts across three financial statements
  • Check balance sheet and cash flow consistency
anthropics/financial-services4万2026年9月22日 更新

Prepare a period-end accrual schedule for expenses incurred but not yet fully recorded. Apply company policy, subtract amounts already booked, cite supporting records, and draft journal entries for controller approval, including reversal notes where required.

中文简介正在准备中。当前显示英语简介。

  • Preparing an accrual schedule for month-end close
  • Calculating audit fee, bonus, or utilities accruals
  • Drafting journal entries with supporting references
anthropics/financial-services4万2026年9月22日 更新

Review quarterly updates and financials across portfolio companies to identify practical AI opportunities. Rank them by estimated profit impact, speed, and feasibility, then outline first steps and approaches that other companies can reuse.

中文简介正在准备中。当前显示英语简介。

  • Quarterly reviews of AI opportunities across portfolio companies
  • Prioritizing companies for AI investment and operational support
  • Finding ways to reuse successful AI projects across companies
anthropics/financial-services4万2026年9月22日 更新

audit-xls

免费

Check spreadsheet formulas for errors, broken references, inconsistent calculations, and unit mismatches. Review a selected range, one sheet, or an entire financial model, then receive findings ranked by severity with suggested fixes.

中文简介正在准备中。当前显示英语简介。

  • Checking formulas in a selected range
  • Investigating a balance sheet that does not balance
  • Reviewing a financial model before client delivery
anthropics/financial-services4万2026年9月22日 更新

Analyze price differences between bond futures and cash bonds, identify the cheapest bond to deliver, and compare implied financing rates with market rates. Present valuation tables and historical context to assess potential basis trades.

中文简介正在准备中。当前显示英语简介。

  • Comparing bond futures with cash bond prices
  • Identifying the cheapest bond to deliver
  • Comparing implied financing rates with market rates
anthropics/financial-services4万2026年9月22日 更新

Assess whether bonds are expensive, cheap, or fairly priced by comparing yields with government rates and credit risk benchmarks. Combine spread breakdowns, historical context, and interest rate scenarios into tables and a recommendation.

中文简介正在准备中。当前显示英语简介。

  • Comparing the relative value of candidate bonds
  • Separating credit risk from other yield differences
  • Estimating gains and losses under interest rate shifts
anthropics/financial-services4万2026年9月22日 更新

查看 anthropics 的全部技能

报告此技能的问题