
Security News
arXiv Is Rate Limiting Authors Following a Flood of AI Slop Submissions
arXiv now limits authors to two submissions a month as AI slop overwhelms moderators, delays good papers, and sparks debate over applying the limit to everyone.
@booklib/claude-ado-confirm-hook
Advanced tools
Native macOS confirmation dialog for Azure DevOps MCP write operations in Claude Code
Native macOS dialog for reviewing Azure DevOps MCP write operations before they execute. See what's changing, approve or cancel.
| Update — word-level diff | Create — field summary | Batch update — table view |
|---|---|---|
![]() | ![]() | ![]() |
The Azure DevOps MCP server lets Claude Code create, update, and link work items directly. But write operations execute immediately — no visual preview of what's about to change.
This hook intercepts MCP write calls and shows a native macOS dialog with:
npx @booklib/claude-ado-confirm-hook
This copies the hook files to .claude/hooks/, compiles the native dialog, and prints the settings config to add.
If you prefer not to use npm:
mkdir -p .claude/hooks
curl -sL https://raw.githubusercontent.com/ZLStas/claude-code-ado-confirm-hook/main/hooks/ado-confirm.sh -o .claude/hooks/ado-confirm.sh
curl -sL https://raw.githubusercontent.com/ZLStas/claude-code-ado-confirm-hook/main/hooks/ado-confirm-dialog.py -o .claude/hooks/ado-confirm-dialog.py
curl -sL https://raw.githubusercontent.com/ZLStas/claude-code-ado-confirm-hook/main/hooks/ado-webview.swift -o .claude/hooks/ado-webview.swift
chmod +x .claude/hooks/ado-confirm.sh .claude/hooks/ado-confirm-dialog.py
swiftc -framework Cocoa -framework WebKit -O -o .claude/hooks/ado-webview .claude/hooks/ado-webview.swift
Add to .claude/settings.local.json:
{
"hooks": {
"PreToolUse": [
{
"matcher": "mcp__azure-devops__wit_create_work_item|mcp__azure-devops__wit_update_work_item|mcp__azure-devops__wit_update_work_items_batch|mcp__azure-devops__wit_add_child_work_items|mcp__azure-devops__wit_add_work_item_comment|mcp__azure-devops__repo_create_pull_request|mcp__azure-devops__wit_work_items_link|mcp__azure-devops__wit_add_artifact_link|mcp__azure-devops__repo_create_branch",
"hooks": [
{
"type": "command",
"command": ".claude/hooks/ado-confirm.sh",
"timeout": 30000,
"statusMessage": "Awaiting confirmation for Azure DevOps action..."
}
]
}
]
}
}
The hook reads your org name and access token from .mcp.json automatically — no hardcoded config needed.
The dialog appears on your current screen — no desktop switching.
swiftc).mcp.json| File | What it does |
|---|---|
ado-confirm.sh | Hook entry point. Enriches payloads with current values for diffs. |
ado-confirm-dialog.py | Builds HTML for each operation type. Handles diff, batch fetch, name normalization. |
ado-webview.swift | Native macOS window with WKWebView. Renders HTML, handles Approve/Cancel. |
MIT
FAQs
Native macOS confirmation dialog for Azure DevOps MCP write operations in Claude Code
We found that @booklib/claude-ado-confirm-hook demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
arXiv now limits authors to two submissions a month as AI slop overwhelms moderators, delays good papers, and sparks debate over applying the limit to everyone.

Research
/Security News
A new GhostAction wave hits hundreds of GitHub repos, expanding CI/CD secret theft to cloud and AI credentials in source code and git history.

Research
/Security News
Tensorlake npm SDK version 0.5.144 was compromised in a ChainDrop / Shai-Hulud attack, delivering credential-stealing malware.