openpencil/tools
Kayshen-X 79beee711f feat(mcp): capability profile and scope enforcement for the online /mcp surface
A public bearer client previously reached the full 160-tool catalog,
including save_document (fs::write at a caller-chosen path), the
process-global codegen plan store, and host diagnostics. Online mode
now classifies every tool by surface in one reviewable table and denies
the 17 that touch the daemon host (filesystem, outbound fetch,
unscoped globals, diagnostics, future process spawn) in both tools/list
and tools/call — refusal happens before argument parsing, so traversal
payloads never reach a handler. mcp:read/mcp:write scopes gate write
tools ahead of dispatch (deny-then-scope, so a filesystem tool reports
denial rather than inviting a bigger token); session cookies keep full
scope and unclassified static tools fail the build. Local and managed
catalogs are unchanged. The deployment-boundaries script now refuses
direct invocation instead of green-exiting with every helper missing.
2026-08-08 14:34:03 +08:00
..
bundle-macos.sh feat(collab): add authenticated p2p collaboration 2026-07-29 00:06:58 +08:00
check-collab-deployment-boundaries.sh feat(mcp): capability profile and scope enforcement for the online /mcp surface 2026-08-08 14:34:03 +08:00
check-collab-security-boundaries-cases.sh test(desktop): align collab boundary self-test fixtures with the gate 2026-08-08 11:52:34 +08:00
check-collab-security-boundaries.sh refactor(desktop): extract collab runtime into op-collab-host crate 2026-08-07 19:55:26 +08:00
check-collab-security-boundaries.test.sh test(desktop): align collab boundary self-test fixtures with the gate 2026-08-08 11:52:34 +08:00
check-jian-boundaries.sh fix(editor): improve import and generation reliability 2026-07-21 06:34:53 +08:00
check-macos-bundle-plist.sh feat(collab): add authenticated p2p collaboration 2026-07-29 00:06:58 +08:00
check-macos-bundle-plist.test.sh feat(collab): add authenticated p2p collaboration 2026-07-29 00:06:58 +08:00
check-op-auth-prebuilt.sh feat(collab): add authenticated p2p collaboration 2026-07-29 00:06:58 +08:00
check-op-auth-prebuilt.test.sh feat(collab): add authenticated p2p collaboration 2026-07-29 00:06:58 +08:00
check-text-measure.sh fix(renderer): measure chrome text in its painted font 2026-08-07 02:00:23 +08:00
check-version-sync-policy.test-cases.sh fix: enforce centralized version inputs 2026-07-15 21:17:21 +08:00
check-version-sync.sh fix(cli): version guard tolerates and fixtures include the extension manifest 2026-08-07 22:02:37 +08:00
check-version-sync.test.sh fix(cli): version guard tolerates and fixtures include the extension manifest 2026-08-07 22:02:37 +08:00
check-wasm-bundle.sh merge: land the align-branch work onto the refreshed base 2026-07-03 00:08:17 +08:00
check-web-browser-smoke.sh test(web): add rust web browser smoke 2026-06-20 19:24:59 +08:00
check-web-server-headless.sh refactor(host): rename op-web-daemon crate to op-host-services 2026-06-19 22:35:22 +08:00
check-widget-boundary.sh feat(sdk): add op-web-sdk read-only web viewer crate 2026-06-19 17:52:12 +08:00
convert-locales.py feat(i18n): complete locale coverage across menus, providers, and panels 2026-07-26 11:24:06 +08:00
fetch-skia-artifact.sh build(step-1b): add tools/fetch-skia-artifact.sh (Variant A release path) 2026-05-09 21:04:00 +08:00
macos-local-network-plist.sh feat(collab): add authenticated p2p collaboration 2026-07-29 00:06:58 +08:00
merge-settings-i18n.py fix(agent): retire gemini cli provider, add antigravity and grok build 2026-07-24 21:11:15 +08:00
package-op-auth-prebuilt.sh feat(collab): add authenticated p2p collaboration 2026-07-29 00:06:58 +08:00