Skip to content
Agentmart
Submit a tool

excel-background-verification

Verify pi4office work against a real local Excel desktop host while keeping Excel in the background.

Skill by e1wayt1cket

IndexedMIT★ 2
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/e1wayt1cket-excel-background-verification

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Verify pi4office work against a real local Excel desktop host while keeping Excel in the background. Use after changes to workbook tools, recovery, taskpane UI, Office.js host behavior, chart/image paths, or any adversarial verification where browser-only tests are insufficient.

Use cases: spreadsheets, design, data

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/excel-background-verification

What's inside

Skill name
excel-background-verification
Description
Verify pi4office work against a real local Excel desktop host while keeping Excel in the background. Use after changes to workbook tools, recovery, taskpane UI, Office.js host behavior, chart/image paths, or any adversarial verification where browser-only tests are insufficient.
License
MIT
Instructions
150 lines in SKILL.md · view on GitHub

Before installing

  • Instructions call the network

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Excel Background Verification

Use this skill to verify work in **real Excel with the real pi4office taskpane** without taking over the user's foreground app.

The workflow has two channels:

1. **Computer-use observation** (`pi-computer-use`, strict AX mode) verifies the Excel window/taskpane visually and semantically while asserting the foreground app does not change.
2. **Taskpane background bridge** lets the real taskpane run Office.js probes, controlled scratch writes, and optional prompt submissions from inside Excel via a tokened loopback HTTPS server.

Do not use raw keyboard/mouse/coordinate actions in this workflow. If a step requires foreground focus or raw input, stop and report that the background lane cannot verify that path.

## Prerequisites

- Excel has the dev manifest sideloaded, pointing to `https://localhost:3141/src/taskpane.html`.
- `cert.pem` and `key.pem` exist in the repo root and are trusted by the local WebView.
- `pi-computer-use.app` has macOS Accessibility + Screen Recording permissions.
- Run from the repo root.

## Start the bridge + dev server

```bash
TOKEN_FILE=$(mktemp /tmp/pi-background-verify-token.XXXXXX)
chmod 600 "$TOKEN_FILE"
TOKEN=$(node scripts/background-verify-bridge-server.mjs token)
printf '%s' "$TOKEN" > "$TOKEN_FILE"

PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" \
PI_BACKGROUND_VERIFY_HOST=localhost \
  npm run background:verify:bridge \
  > /tmp/pi-background-verify-bridge-server.log 2>&1 &
echo $! > /tmp/pi-background-verify-bridge-server.pid

VITE_PI_BACKGROUND_VERIFY_URL=https://localhost:3157 \
VITE_PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" \
  npm run dev \
  > /tmp/pi4office-vite-background-verify.log 2>&1 &
echo $! > /tmp/pi4office-vite-background-verify.pid
```

Check server health:

```bash
curl -k https://localhost:3157/health
```

If `clients` is empty, reload the taskpane without foregrounding Excel: use `pi-computer-use` in strict AX mode to press the Pi taskpane close button, then press the ribbon **Open Pi** button. Do not use raw input fallbacks.

If `clients` lists more than one taskpane, pass `--clientId <id-from-health>` to mutating `background:verify:command` calls so writes target the intended workbook. The server refuses untargeted commands when multiple live clients are connected.

## Computer-use observe lane

Run Pi in strict AX mode and allow only observation/search tools unless a semantic AX button press is explicitly required:

```bash
PI_COMPUTER_USE_STEALTH=1 PI_COMPUTER_USE_STRICT_AX=1 \
pi --tools list_apps,list_windows,observe,search_ui,inspect_ui \
  --no-context-files --no-skills \
  -p 'Use only computer-use tools. Do not focus any window and do not call act. Report the frontmost app, observe Microsoft Excel, and find evidence of Pi for Office, Open Pi, the taskpane prompt, model/status footer, and any feature under test.'
```

Required evidence:

- Excel window title/id and `isOnscreen=true`.
- Taskpane evidence (`Pi for Office`, `Open Pi`, prompt/model/status or feature-specific text).
- Frontmost app before/after is the same non-Excel app.
- Optional screenshot saved with a helper script or `observe` image.

## Taskpane bridge commands

The taskpane bridge commands run in the real Excel taskpane process. Use them to **mutate scratch workbook state, read it back, and clean up**; passive read-only probes are only the baseline evidence.

```bash
TOKEN=$(cat "$TOKEN_FILE")

PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- status
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- officeProbe
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- readUsedRange
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- readRange '{"address":"Sheet1!A1:B5"}'
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- listCharts
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- configureProxy \
  '{"enabled":true,"url":"https://localhost:3003"}'
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- selectModel \
  '{"provider":"openai-codex","modelId":"gpt-5.6-sol"}'
```

### Controlled write smoke

Run this whenever the change affects workbook IO, Office.js host behavior, recovery, chart/range tools, or anything where browser-only tests are too weak:

```bash
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- workbookWriteProbe \
  '{"sheetName":"_pi_background_verify","keepSheet":false}'
```

`workbookWriteProbe` creates or reuses a scratch sheet, writes a marker + numeric inputs + formula, reads the resulting range, then deletes the created scratch sheet or restores the previous scratch range. Its output is the minimum proof that the real hidden taskpane can write to and read from the real workbook without foregrounding Excel.

For custom setup/assert/cleanup:

```bash
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- writeRange \
  '{"address":"Sheet1!A1:B2","values":[["pi background smoke",2],["sum",3]]}'
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- readRange '{"address":"Sheet1!A1:B2"}'
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- clearRange '{"address":"Sheet1!A1:B2","applyTo":"contents"}'
```

When the product path itself is under test, submit an actual prompt through the sidebar instead of only calling Office.js helpers:

```bash
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- submitPrompt \
  '{"text":"Write SMOKE into A1, then report exactly what changed.","waitForIdle":true,"timeoutMs":120000}'
PI_BACKGROUND_VERIFY_TOKEN="$TOKEN" PI_BACKGROUND_VERIFY_HOST=localhost npm run background:verify:command -- readRange '{"address":"Sheet1!A1"}'
```

Use the outputs as verification artifacts:

- `status`: proves taskpane origin, hidden/background visibility, Office/Excel globals, active runtime/model, input state.
- `officeProbe`: proves Office.js can read the real workbook from the hidden taskpane.
- `workbookWriteProbe`: proves the hidden taskpane can perform reversible real workbook writes and read back formula results.
- `writeRange` / `clearRange`: deterministic setup and cleanup for feature-specific smoke tests.

From e1wayt1cket/pi4office, MIT.

Signals

Stars
2
Forks
0
Open issues
0
Last commit (this folder)
Aug 7, 2026 (2 months ago)
Last release
Aug 13, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from e1wayt1cket

Cite this page

excel-background-verification skill. Agent Mart. https://agentmart.dev/skills/e1wayt1cket-excel-background-verification (last updated 2026-10-24)