@descryy/mcp 0.11.3 → 0.11.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +20 -20
- package/dist/action-handshake.d.ts +0 -38
- package/dist/action-handshake.d.ts.map +0 -1
- package/dist/action-handshake.js +0 -127
- package/dist/action-handshake.js.map +0 -1
- package/dist/bin/descry-mcp.d.ts +0 -7
- package/dist/bin/descry-mcp.d.ts.map +0 -1
- package/dist/bin/descry-mcp.js +0 -72
- package/dist/bin/descry-mcp.js.map +0 -1
- package/dist/browser/auth.d.ts +0 -84
- package/dist/browser/auth.d.ts.map +0 -1
- package/dist/browser/auth.js +0 -233
- package/dist/browser/auth.js.map +0 -1
- package/dist/browser/capability-probe.d.ts +0 -109
- package/dist/browser/capability-probe.d.ts.map +0 -1
- package/dist/browser/capability-probe.js +0 -201
- package/dist/browser/capability-probe.js.map +0 -1
- package/dist/browser/driver.d.ts +0 -570
- package/dist/browser/driver.d.ts.map +0 -1
- package/dist/browser/driver.js +0 -116
- package/dist/browser/driver.js.map +0 -1
- package/dist/browser/evidence.d.ts +0 -28
- package/dist/browser/evidence.d.ts.map +0 -1
- package/dist/browser/evidence.js +0 -82
- package/dist/browser/evidence.js.map +0 -1
- package/dist/browser/fake-driver.d.ts +0 -116
- package/dist/browser/fake-driver.d.ts.map +0 -1
- package/dist/browser/fake-driver.js +0 -416
- package/dist/browser/fake-driver.js.map +0 -1
- package/dist/browser/fault-attribution.d.ts +0 -178
- package/dist/browser/fault-attribution.d.ts.map +0 -1
- package/dist/browser/fault-attribution.js +0 -266
- package/dist/browser/fault-attribution.js.map +0 -1
- package/dist/browser/graph-write.d.ts +0 -45
- package/dist/browser/graph-write.d.ts.map +0 -1
- package/dist/browser/graph-write.js +0 -103
- package/dist/browser/graph-write.js.map +0 -1
- package/dist/browser/identity-graph-write.d.ts +0 -55
- package/dist/browser/identity-graph-write.d.ts.map +0 -1
- package/dist/browser/identity-graph-write.js +0 -45
- package/dist/browser/identity-graph-write.js.map +0 -1
- package/dist/browser/page-probe.d.ts +0 -81
- package/dist/browser/page-probe.d.ts.map +0 -1
- package/dist/browser/page-probe.js +0 -202
- package/dist/browser/page-probe.js.map +0 -1
- package/dist/browser/playwright-driver.d.ts +0 -114
- package/dist/browser/playwright-driver.d.ts.map +0 -1
- package/dist/browser/playwright-driver.js +0 -1479
- package/dist/browser/playwright-driver.js.map +0 -1
- package/dist/browser/provider.d.ts +0 -26
- package/dist/browser/provider.d.ts.map +0 -1
- package/dist/browser/provider.js +0 -14
- package/dist/browser/provider.js.map +0 -1
- package/dist/browser/reach-recording-session.d.ts +0 -44
- package/dist/browser/reach-recording-session.d.ts.map +0 -1
- package/dist/browser/reach-recording-session.js +0 -143
- package/dist/browser/reach-recording-session.js.map +0 -1
- package/dist/browser/reachability.d.ts +0 -168
- package/dist/browser/reachability.d.ts.map +0 -1
- package/dist/browser/reachability.js +0 -294
- package/dist/browser/reachability.js.map +0 -1
- package/dist/browser/registry.d.ts +0 -126
- package/dist/browser/registry.d.ts.map +0 -1
- package/dist/browser/registry.js +0 -177
- package/dist/browser/registry.js.map +0 -1
- package/dist/browser/scenario-provenance.d.ts +0 -23
- package/dist/browser/scenario-provenance.d.ts.map +0 -1
- package/dist/browser/scenario-provenance.js +0 -73
- package/dist/browser/scenario-provenance.js.map +0 -1
- package/dist/browser/scenario-resolve.d.ts +0 -28
- package/dist/browser/scenario-resolve.d.ts.map +0 -1
- package/dist/browser/scenario-resolve.js +0 -96
- package/dist/browser/scenario-resolve.js.map +0 -1
- package/dist/browser/scenario-runner.d.ts +0 -72
- package/dist/browser/scenario-runner.d.ts.map +0 -1
- package/dist/browser/scenario-runner.js +0 -353
- package/dist/browser/scenario-runner.js.map +0 -1
- package/dist/browser/stack-parser.d.ts +0 -19
- package/dist/browser/stack-parser.d.ts.map +0 -1
- package/dist/browser/stack-parser.js +0 -85
- package/dist/browser/stack-parser.js.map +0 -1
- package/dist/browser/tool-support.d.ts +0 -71
- package/dist/browser/tool-support.d.ts.map +0 -1
- package/dist/browser/tool-support.js +0 -216
- package/dist/browser/tool-support.js.map +0 -1
- package/dist/browser/url-scheme.d.ts +0 -14
- package/dist/browser/url-scheme.d.ts.map +0 -1
- package/dist/browser/url-scheme.js +0 -38
- package/dist/browser/url-scheme.js.map +0 -1
- package/dist/browser/wait-target.d.ts +0 -37
- package/dist/browser/wait-target.d.ts.map +0 -1
- package/dist/browser/wait-target.js +0 -54
- package/dist/browser/wait-target.js.map +0 -1
- package/dist/cancellation.d.ts +0 -20
- package/dist/cancellation.d.ts.map +0 -1
- package/dist/cancellation.js +0 -41
- package/dist/cancellation.js.map +0 -1
- package/dist/capped.d.ts +0 -17
- package/dist/capped.d.ts.map +0 -1
- package/dist/capped.js +0 -15
- package/dist/capped.js.map +0 -1
- package/dist/credential-store.d.ts +0 -22
- package/dist/credential-store.d.ts.map +0 -1
- package/dist/credential-store.js +0 -33
- package/dist/credential-store.js.map +0 -1
- package/dist/disclosure-ledger.d.ts +0 -14
- package/dist/disclosure-ledger.d.ts.map +0 -1
- package/dist/disclosure-ledger.js +0 -18
- package/dist/disclosure-ledger.js.map +0 -1
- package/dist/evidence/observed-route-evidence.d.ts +0 -25
- package/dist/evidence/observed-route-evidence.d.ts.map +0 -1
- package/dist/evidence/observed-route-evidence.js +0 -76
- package/dist/evidence/observed-route-evidence.js.map +0 -1
- package/dist/heap.d.ts +0 -61
- package/dist/heap.d.ts.map +0 -1
- package/dist/heap.js +0 -82
- package/dist/heap.js.map +0 -1
- package/dist/heartbeat.d.ts +0 -46
- package/dist/heartbeat.d.ts.map +0 -1
- package/dist/heartbeat.js +0 -66
- package/dist/heartbeat.js.map +0 -1
- package/dist/index.d.ts +0 -32
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -19
- package/dist/index.js.map +0 -1
- package/dist/module-trust.d.ts +0 -37
- package/dist/module-trust.d.ts.map +0 -1
- package/dist/module-trust.js +0 -77
- package/dist/module-trust.js.map +0 -1
- package/dist/path-confinement.d.ts +0 -31
- package/dist/path-confinement.d.ts.map +0 -1
- package/dist/path-confinement.js +0 -44
- package/dist/path-confinement.js.map +0 -1
- package/dist/planner/predict-then-propose.d.ts +0 -134
- package/dist/planner/predict-then-propose.d.ts.map +0 -1
- package/dist/planner/predict-then-propose.js +0 -138
- package/dist/planner/predict-then-propose.js.map +0 -1
- package/dist/planner/propose-journey.d.ts +0 -75
- package/dist/planner/propose-journey.d.ts.map +0 -1
- package/dist/planner/propose-journey.js +0 -96
- package/dist/planner/propose-journey.js.map +0 -1
- package/dist/protocol.d.ts +0 -57
- package/dist/protocol.d.ts.map +0 -1
- package/dist/protocol.js +0 -90
- package/dist/protocol.js.map +0 -1
- package/dist/registry.d.ts +0 -103
- package/dist/registry.d.ts.map +0 -1
- package/dist/registry.js +0 -319
- package/dist/registry.js.map +0 -1
- package/dist/render.d.ts +0 -580
- package/dist/render.d.ts.map +0 -1
- package/dist/render.js +0 -867
- package/dist/render.js.map +0 -1
- package/dist/runtime-registry.d.ts +0 -22
- package/dist/runtime-registry.d.ts.map +0 -1
- package/dist/runtime-registry.js +0 -142
- package/dist/runtime-registry.js.map +0 -1
- package/dist/sandbox-defaults.d.ts +0 -41
- package/dist/sandbox-defaults.d.ts.map +0 -1
- package/dist/sandbox-defaults.js +0 -14
- package/dist/sandbox-defaults.js.map +0 -1
- package/dist/scenarios/browser-run-plan-projection.d.ts +0 -161
- package/dist/scenarios/browser-run-plan-projection.d.ts.map +0 -1
- package/dist/scenarios/browser-run-plan-projection.js +0 -264
- package/dist/scenarios/browser-run-plan-projection.js.map +0 -1
- package/dist/scenarios/credential-ref.d.ts +0 -102
- package/dist/scenarios/credential-ref.d.ts.map +0 -1
- package/dist/scenarios/credential-ref.js +0 -148
- package/dist/scenarios/credential-ref.js.map +0 -1
- package/dist/scenarios/index.d.ts +0 -7
- package/dist/scenarios/index.d.ts.map +0 -1
- package/dist/scenarios/index.js +0 -7
- package/dist/scenarios/index.js.map +0 -1
- package/dist/scenarios/parse.d.ts +0 -18
- package/dist/scenarios/parse.d.ts.map +0 -1
- package/dist/scenarios/parse.js +0 -212
- package/dist/scenarios/parse.js.map +0 -1
- package/dist/scenarios/scenario.d.ts +0 -93
- package/dist/scenarios/scenario.d.ts.map +0 -1
- package/dist/scenarios/scenario.js +0 -27
- package/dist/scenarios/scenario.js.map +0 -1
- package/dist/scenarios/secret-ref.d.ts +0 -86
- package/dist/scenarios/secret-ref.d.ts.map +0 -1
- package/dist/scenarios/secret-ref.js +0 -125
- package/dist/scenarios/secret-ref.js.map +0 -1
- package/dist/scenarios/storage.d.ts +0 -21
- package/dist/scenarios/storage.d.ts.map +0 -1
- package/dist/scenarios/storage.js +0 -103
- package/dist/scenarios/storage.js.map +0 -1
- package/dist/server.d.ts +0 -61
- package/dist/server.d.ts.map +0 -1
- package/dist/server.js +0 -541
- package/dist/server.js.map +0 -1
- package/dist/session.d.ts +0 -243
- package/dist/session.d.ts.map +0 -1
- package/dist/session.js +0 -602
- package/dist/session.js.map +0 -1
- package/dist/tools/alias-kit.d.ts +0 -29
- package/dist/tools/alias-kit.d.ts.map +0 -1
- package/dist/tools/alias-kit.js +0 -21
- package/dist/tools/alias-kit.js.map +0 -1
- package/dist/tools/aliases.d.ts +0 -42
- package/dist/tools/aliases.d.ts.map +0 -1
- package/dist/tools/aliases.js +0 -52
- package/dist/tools/aliases.js.map +0 -1
- package/dist/tools/analyze-workspace.d.ts +0 -52
- package/dist/tools/analyze-workspace.d.ts.map +0 -1
- package/dist/tools/analyze-workspace.js +0 -207
- package/dist/tools/analyze-workspace.js.map +0 -1
- package/dist/tools/analyze.d.ts +0 -163
- package/dist/tools/analyze.d.ts.map +0 -1
- package/dist/tools/analyze.js +0 -724
- package/dist/tools/analyze.js.map +0 -1
- package/dist/tools/browser-click.d.ts +0 -18
- package/dist/tools/browser-click.d.ts.map +0 -1
- package/dist/tools/browser-click.js +0 -110
- package/dist/tools/browser-click.js.map +0 -1
- package/dist/tools/browser-close-session.d.ts +0 -39
- package/dist/tools/browser-close-session.d.ts.map +0 -1
- package/dist/tools/browser-close-session.js +0 -120
- package/dist/tools/browser-close-session.js.map +0 -1
- package/dist/tools/browser-fill.d.ts +0 -18
- package/dist/tools/browser-fill.d.ts.map +0 -1
- package/dist/tools/browser-fill.js +0 -117
- package/dist/tools/browser-fill.js.map +0 -1
- package/dist/tools/browser-navigate.d.ts +0 -15
- package/dist/tools/browser-navigate.d.ts.map +0 -1
- package/dist/tools/browser-navigate.js +0 -104
- package/dist/tools/browser-navigate.js.map +0 -1
- package/dist/tools/browser-read.d.ts +0 -33
- package/dist/tools/browser-read.d.ts.map +0 -1
- package/dist/tools/browser-read.js +0 -113
- package/dist/tools/browser-read.js.map +0 -1
- package/dist/tools/browser-run-scenario.d.ts +0 -28
- package/dist/tools/browser-run-scenario.d.ts.map +0 -1
- package/dist/tools/browser-run-scenario.js +0 -206
- package/dist/tools/browser-run-scenario.js.map +0 -1
- package/dist/tools/browser-save-scenario.d.ts +0 -19
- package/dist/tools/browser-save-scenario.d.ts.map +0 -1
- package/dist/tools/browser-save-scenario.js +0 -447
- package/dist/tools/browser-save-scenario.js.map +0 -1
- package/dist/tools/browser-select.d.ts +0 -20
- package/dist/tools/browser-select.d.ts.map +0 -1
- package/dist/tools/browser-select.js +0 -120
- package/dist/tools/browser-select.js.map +0 -1
- package/dist/tools/browser-snapshot.d.ts +0 -46
- package/dist/tools/browser-snapshot.d.ts.map +0 -1
- package/dist/tools/browser-snapshot.js +0 -127
- package/dist/tools/browser-snapshot.js.map +0 -1
- package/dist/tools/browser-start-session.d.ts +0 -24
- package/dist/tools/browser-start-session.d.ts.map +0 -1
- package/dist/tools/browser-start-session.js +0 -622
- package/dist/tools/browser-start-session.js.map +0 -1
- package/dist/tools/browser-submit.d.ts +0 -18
- package/dist/tools/browser-submit.d.ts.map +0 -1
- package/dist/tools/browser-submit.js +0 -106
- package/dist/tools/browser-submit.js.map +0 -1
- package/dist/tools/browser-type.d.ts +0 -18
- package/dist/tools/browser-type.d.ts.map +0 -1
- package/dist/tools/browser-type.js +0 -115
- package/dist/tools/browser-type.js.map +0 -1
- package/dist/tools/browser-wait-for.d.ts +0 -45
- package/dist/tools/browser-wait-for.d.ts.map +0 -1
- package/dist/tools/browser-wait-for.js +0 -150
- package/dist/tools/browser-wait-for.js.map +0 -1
- package/dist/tools/browser.d.ts +0 -69
- package/dist/tools/browser.d.ts.map +0 -1
- package/dist/tools/browser.js +0 -386
- package/dist/tools/browser.js.map +0 -1
- package/dist/tools/chain.d.ts +0 -41
- package/dist/tools/chain.d.ts.map +0 -1
- package/dist/tools/chain.js +0 -105
- package/dist/tools/chain.js.map +0 -1
- package/dist/tools/change-scope.d.ts +0 -25
- package/dist/tools/change-scope.d.ts.map +0 -1
- package/dist/tools/change-scope.js +0 -110
- package/dist/tools/change-scope.js.map +0 -1
- package/dist/tools/code-context.d.ts +0 -83
- package/dist/tools/code-context.d.ts.map +0 -1
- package/dist/tools/code-context.js +0 -416
- package/dist/tools/code-context.js.map +0 -1
- package/dist/tools/contracts.d.ts +0 -74
- package/dist/tools/contracts.d.ts.map +0 -1
- package/dist/tools/contracts.js +0 -196
- package/dist/tools/contracts.js.map +0 -1
- package/dist/tools/cross-pr.d.ts +0 -178
- package/dist/tools/cross-pr.d.ts.map +0 -1
- package/dist/tools/cross-pr.js +0 -321
- package/dist/tools/cross-pr.js.map +0 -1
- package/dist/tools/disclosure.d.ts +0 -75
- package/dist/tools/disclosure.d.ts.map +0 -1
- package/dist/tools/disclosure.js +0 -288
- package/dist/tools/disclosure.js.map +0 -1
- package/dist/tools/draw-conclusion.d.ts +0 -55
- package/dist/tools/draw-conclusion.d.ts.map +0 -1
- package/dist/tools/draw-conclusion.js +0 -259
- package/dist/tools/draw-conclusion.js.map +0 -1
- package/dist/tools/git-context.d.ts +0 -39
- package/dist/tools/git-context.d.ts.map +0 -1
- package/dist/tools/git-context.js +0 -364
- package/dist/tools/git-context.js.map +0 -1
- package/dist/tools/git-diff.d.ts +0 -45
- package/dist/tools/git-diff.d.ts.map +0 -1
- package/dist/tools/git-diff.js +0 -338
- package/dist/tools/git-diff.js.map +0 -1
- package/dist/tools/git-history.d.ts +0 -16
- package/dist/tools/git-history.d.ts.map +0 -1
- package/dist/tools/git-history.js +0 -86
- package/dist/tools/git-history.js.map +0 -1
- package/dist/tools/history.d.ts +0 -34
- package/dist/tools/history.d.ts.map +0 -1
- package/dist/tools/history.js +0 -121
- package/dist/tools/history.js.map +0 -1
- package/dist/tools/impact.d.ts +0 -46
- package/dist/tools/impact.d.ts.map +0 -1
- package/dist/tools/impact.js +0 -225
- package/dist/tools/impact.js.map +0 -1
- package/dist/tools/index.d.ts +0 -59
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/index.js +0 -70
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/kit.d.ts +0 -165
- package/dist/tools/kit.d.ts.map +0 -1
- package/dist/tools/kit.js +0 -153
- package/dist/tools/kit.js.map +0 -1
- package/dist/tools/link-workspace.d.ts +0 -24
- package/dist/tools/link-workspace.d.ts.map +0 -1
- package/dist/tools/link-workspace.js +0 -131
- package/dist/tools/link-workspace.js.map +0 -1
- package/dist/tools/lookup.d.ts +0 -19
- package/dist/tools/lookup.d.ts.map +0 -1
- package/dist/tools/lookup.js +0 -63
- package/dist/tools/lookup.js.map +0 -1
- package/dist/tools/mark-incident.d.ts +0 -28
- package/dist/tools/mark-incident.d.ts.map +0 -1
- package/dist/tools/mark-incident.js +0 -188
- package/dist/tools/mark-incident.js.map +0 -1
- package/dist/tools/merged-browser.d.ts +0 -11
- package/dist/tools/merged-browser.d.ts.map +0 -1
- package/dist/tools/merged-browser.js +0 -20
- package/dist/tools/merged-browser.js.map +0 -1
- package/dist/tools/merged-context.d.ts +0 -11
- package/dist/tools/merged-context.d.ts.map +0 -1
- package/dist/tools/merged-context.js +0 -21
- package/dist/tools/merged-context.js.map +0 -1
- package/dist/tools/merged-observe.d.ts +0 -13
- package/dist/tools/merged-observe.d.ts.map +0 -1
- package/dist/tools/merged-observe.js +0 -21
- package/dist/tools/merged-observe.js.map +0 -1
- package/dist/tools/merged-workspace.d.ts +0 -14
- package/dist/tools/merged-workspace.d.ts.map +0 -1
- package/dist/tools/merged-workspace.js +0 -21
- package/dist/tools/merged-workspace.js.map +0 -1
- package/dist/tools/observe-runtime.d.ts +0 -250
- package/dist/tools/observe-runtime.d.ts.map +0 -1
- package/dist/tools/observe-runtime.js +0 -1753
- package/dist/tools/observe-runtime.js.map +0 -1
- package/dist/tools/observe-tests.d.ts +0 -57
- package/dist/tools/observe-tests.d.ts.map +0 -1
- package/dist/tools/observe-tests.js +0 -368
- package/dist/tools/observe-tests.js.map +0 -1
- package/dist/tools/observe.d.ts +0 -28
- package/dist/tools/observe.d.ts.map +0 -1
- package/dist/tools/observe.js +0 -330
- package/dist/tools/observe.js.map +0 -1
- package/dist/tools/pr-analysis.d.ts +0 -189
- package/dist/tools/pr-analysis.d.ts.map +0 -1
- package/dist/tools/pr-analysis.js +0 -299
- package/dist/tools/pr-analysis.js.map +0 -1
- package/dist/tools/pre-push.d.ts +0 -168
- package/dist/tools/pre-push.d.ts.map +0 -1
- package/dist/tools/pre-push.js +0 -416
- package/dist/tools/pre-push.js.map +0 -1
- package/dist/tools/predict-reach.d.ts +0 -57
- package/dist/tools/predict-reach.d.ts.map +0 -1
- package/dist/tools/predict-reach.js +0 -159
- package/dist/tools/predict-reach.js.map +0 -1
- package/dist/tools/propagation.d.ts +0 -37
- package/dist/tools/propagation.d.ts.map +0 -1
- package/dist/tools/propagation.js +0 -162
- package/dist/tools/propagation.js.map +0 -1
- package/dist/tools/propose-journey.d.ts +0 -16
- package/dist/tools/propose-journey.d.ts.map +0 -1
- package/dist/tools/propose-journey.js +0 -121
- package/dist/tools/propose-journey.js.map +0 -1
- package/dist/tools/prove-reach.d.ts +0 -74
- package/dist/tools/prove-reach.d.ts.map +0 -1
- package/dist/tools/prove-reach.js +0 -286
- package/dist/tools/prove-reach.js.map +0 -1
- package/dist/tools/questions.d.ts +0 -30
- package/dist/tools/questions.d.ts.map +0 -1
- package/dist/tools/questions.js +0 -232
- package/dist/tools/questions.js.map +0 -1
- package/dist/tools/refusal-fetch.d.ts +0 -35
- package/dist/tools/refusal-fetch.d.ts.map +0 -1
- package/dist/tools/refusal-fetch.js +0 -103
- package/dist/tools/refusal-fetch.js.map +0 -1
- package/dist/tools/runtime-incident.d.ts +0 -33
- package/dist/tools/runtime-incident.d.ts.map +0 -1
- package/dist/tools/runtime-incident.js +0 -67
- package/dist/tools/runtime-incident.js.map +0 -1
- package/dist/tools/runtime-journey-drive.d.ts +0 -102
- package/dist/tools/runtime-journey-drive.d.ts.map +0 -1
- package/dist/tools/runtime-journey-drive.js +0 -247
- package/dist/tools/runtime-journey-drive.js.map +0 -1
- package/dist/tools/scope.d.ts +0 -45
- package/dist/tools/scope.d.ts.map +0 -1
- package/dist/tools/scope.js +0 -186
- package/dist/tools/scope.js.map +0 -1
- package/dist/tools/similar-incidents.d.ts +0 -43
- package/dist/tools/similar-incidents.d.ts.map +0 -1
- package/dist/tools/similar-incidents.js +0 -179
- package/dist/tools/similar-incidents.js.map +0 -1
- package/dist/tools/validate.d.ts +0 -133
- package/dist/tools/validate.d.ts.map +0 -1
- package/dist/tools/validate.js +0 -442
- package/dist/tools/validate.js.map +0 -1
- package/dist/tools/verb.d.ts +0 -46
- package/dist/tools/verb.d.ts.map +0 -1
- package/dist/tools/verb.js +0 -78
- package/dist/tools/verb.js.map +0 -1
- package/dist/tools/verification-status.d.ts +0 -38
- package/dist/tools/verification-status.d.ts.map +0 -1
- package/dist/tools/verification-status.js +0 -203
- package/dist/tools/verification-status.js.map +0 -1
- package/dist/tools/verify-claim.d.ts +0 -29
- package/dist/tools/verify-claim.d.ts.map +0 -1
- package/dist/tools/verify-claim.js +0 -220
- package/dist/tools/verify-claim.js.map +0 -1
- package/dist/tools/workspace.d.ts +0 -28
- package/dist/tools/workspace.d.ts.map +0 -1
- package/dist/tools/workspace.js +0 -101
- package/dist/tools/workspace.js.map +0 -1
- package/dist/transport.d.ts +0 -32
- package/dist/transport.d.ts.map +0 -1
- package/dist/transport.js +0 -85
- package/dist/transport.js.map +0 -1
- package/dist/workspace-index.d.ts +0 -164
- package/dist/workspace-index.d.ts.map +0 -1
- package/dist/workspace-index.js +0 -381
- package/dist/workspace-index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/tools/analyze.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `browser_click`: clicks a ref the agent has seen from a snapshot, never a
|
|
3
|
-
* raw selector. Consent (DEC-380) is granted once at
|
|
4
|
-
* `browser_start_session` — a verb cannot mint consent for itself, and refuses with none on record. A stale ref (superseded snapshot) also refuses.
|
|
5
|
-
*/
|
|
6
|
-
import type { BrowserEvidenceReport } from "../browser/evidence.ts";
|
|
7
|
-
import { type BrowserGraphWrite } from "../browser/graph-write.ts";
|
|
8
|
-
import { type ToolDefinition } from "./kit.ts";
|
|
9
|
-
export interface BrowserClickData {
|
|
10
|
-
readonly sessionId: string;
|
|
11
|
-
readonly ref: string;
|
|
12
|
-
readonly url: string;
|
|
13
|
-
readonly evidence: BrowserEvidenceReport;
|
|
14
|
-
/** Graph nodes this action's own requests reached, and any R4 edges it witnessed. */
|
|
15
|
-
readonly graph: BrowserGraphWrite;
|
|
16
|
-
}
|
|
17
|
-
export declare const browserClickTool: ToolDefinition;
|
|
18
|
-
//# sourceMappingURL=browser-click.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser-click.d.ts","sourceRoot":"","sources":["../../src/tools/browser-click.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAEpE,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAGnF,OAAO,EAAoC,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAGjF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,qFAAqF;IACrF,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;CACnC;AA8FD,eAAO,MAAM,gBAAgB,EAAE,cAe9B,CAAC"}
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `browser_click`: clicks a ref the agent has seen from a snapshot, never a
|
|
3
|
-
* raw selector. Consent (DEC-380) is granted once at
|
|
4
|
-
* `browser_start_session` — a verb cannot mint consent for itself, and refuses with none on record. A stale ref (superseded snapshot) also refuses.
|
|
5
|
-
*/
|
|
6
|
-
import { browserAnswer, emptyEvidence, mutationRefusal, observeAndCorrelate, useSession } from "../browser/tool-support.js";
|
|
7
|
-
import { NO_GRAPH_WRITE } from "../browser/graph-write.js";
|
|
8
|
-
import { UnknownElementRefError } from "../browser/driver.js";
|
|
9
|
-
import { CANCELLED_STATE, cancellationHeadline, cancellationNotes } from "../cancellation.js";
|
|
10
|
-
import { requiredString } from "./kit.js";
|
|
11
|
-
const SCHEMA = {
|
|
12
|
-
type: "object",
|
|
13
|
-
properties: {
|
|
14
|
-
sessionId: {
|
|
15
|
-
type: "string",
|
|
16
|
-
description: "REQUIRED. The id returned by browser_start_session.",
|
|
17
|
-
},
|
|
18
|
-
ref: {
|
|
19
|
-
type: "string",
|
|
20
|
-
description: "REQUIRED. An element ref from a browser_snapshot reply. Refs are issued per snapshot and are " +
|
|
21
|
-
"invalidated by navigation — a stale ref is refused rather than resolved against whatever now " +
|
|
22
|
-
"matches it, so take a fresh snapshot after the page changes.",
|
|
23
|
-
},
|
|
24
|
-
confirmToken: {
|
|
25
|
-
type: "string",
|
|
26
|
-
description: "Not normally needed. Consent is granted once, for the whole session, by browser_start_session, " +
|
|
27
|
-
"so this call performs its action directly. The field is declared because the handshake reads it " +
|
|
28
|
-
"for every action-class tool.",
|
|
29
|
-
},
|
|
30
|
-
},
|
|
31
|
-
required: ["sessionId", "ref"],
|
|
32
|
-
additionalProperties: false,
|
|
33
|
-
};
|
|
34
|
-
async function run(args, ctx) {
|
|
35
|
-
const sessionId = requiredString(args, "sessionId");
|
|
36
|
-
const ref = requiredString(args, "ref");
|
|
37
|
-
// Checked before the session is touched: this verb changes a running
|
|
38
|
-
// application and the caller said stop. Session stays open — it belongs
|
|
39
|
-
// to browser_start_session's consent, not this call.
|
|
40
|
-
if (ctx.signal.aborted) {
|
|
41
|
-
return browserAnswer({
|
|
42
|
-
ctx,
|
|
43
|
-
state: CANCELLED_STATE,
|
|
44
|
-
headline: cancellationHeadline("no click was performed"),
|
|
45
|
-
notes: cancellationNotes("The element was not clicked.", "The browser session is still open and can still be used."),
|
|
46
|
-
data: { sessionId, ref, url: "", evidence: emptyEvidence(), graph: NO_GRAPH_WRITE },
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
const found = await useSession(ctx.session.browserSessions(), sessionId);
|
|
50
|
-
if (!found.ok) {
|
|
51
|
-
return browserAnswer({
|
|
52
|
-
ctx,
|
|
53
|
-
state: found.dead.state,
|
|
54
|
-
headline: found.dead.headline,
|
|
55
|
-
notes: found.dead.notes,
|
|
56
|
-
data: { sessionId, ref, url: "", evidence: found.dead.evidence, graph: NO_GRAPH_WRITE },
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
const { entry } = found;
|
|
60
|
-
// Consent and safetyLevel are independent and both must pass; consent was granted at session start.
|
|
61
|
-
const refused = mutationRefusal(entry);
|
|
62
|
-
if (refused !== null) {
|
|
63
|
-
return browserAnswer({
|
|
64
|
-
ctx,
|
|
65
|
-
state: "refused",
|
|
66
|
-
headline: `${entry.profile?.name ?? "This environment"} is read-only.`,
|
|
67
|
-
notes: [refused],
|
|
68
|
-
data: { sessionId, ref, url: entry.page.currentUrl(), evidence: emptyEvidence(), graph: NO_GRAPH_WRITE },
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
try {
|
|
72
|
-
ctx.progress(`Clicking`);
|
|
73
|
-
await entry.page.click(ref);
|
|
74
|
-
}
|
|
75
|
-
catch (error) {
|
|
76
|
-
if (!(error instanceof UnknownElementRefError))
|
|
77
|
-
throw error;
|
|
78
|
-
return browserAnswer({
|
|
79
|
-
ctx,
|
|
80
|
-
state: "refused",
|
|
81
|
-
headline: `"${ref}" is not an element in this session's current snapshot.`,
|
|
82
|
-
notes: [error.message],
|
|
83
|
-
data: { sessionId, ref, url: entry.page.currentUrl(), evidence: emptyEvidence(), graph: NO_GRAPH_WRITE },
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
const observed = await observeAndCorrelate(ctx, entry);
|
|
87
|
-
return browserAnswer({
|
|
88
|
-
ctx,
|
|
89
|
-
headline: `Clicking on ${entry.page.currentUrl()}.`,
|
|
90
|
-
notes: observed.notes,
|
|
91
|
-
data: { sessionId, ref, url: entry.page.currentUrl(), evidence: observed.evidence, graph: observed.graph },
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
export const browserClickTool = {
|
|
95
|
-
name: "browser_click",
|
|
96
|
-
title: "click an element the agent has seen",
|
|
97
|
-
description: "Click an element in an open browser session, named by a ref from a browser_snapshot reply. Returns " +
|
|
98
|
-
"whatever the page produced as a result — console errors and failed requests, raw and untriaged. " +
|
|
99
|
-
"Refused when the session's environment profile declares safetyLevel \"readOnly\".",
|
|
100
|
-
class: "action",
|
|
101
|
-
tier: "evidence",
|
|
102
|
-
version: "1.0.0",
|
|
103
|
-
inputSchema: SCHEMA,
|
|
104
|
-
run,
|
|
105
|
-
// Undefined, always: session already confirmed at browser_start_session —
|
|
106
|
-
// a verb that could mint its own consent would be a gate that only
|
|
107
|
-
// catches callers who weren't going to abuse it.
|
|
108
|
-
describeAction: () => undefined,
|
|
109
|
-
};
|
|
110
|
-
//# sourceMappingURL=browser-click.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser-click.js","sourceRoot":"","sources":["../../src/tools/browser-click.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `browser_close_session` — returns the final flush, not an acknowledgement: evidence
|
|
3
|
-
* captured then dropped with nothing to disclose it is worse than never captured.
|
|
4
|
-
* Closing an already-gone session is NOT an error — an agent whose session timed out
|
|
5
|
-
* gets "here's why, here's what it saw," not a failure to handle.
|
|
6
|
-
*
|
|
7
|
-
* ## This is also where §4.1's reachability report surfaces
|
|
8
|
-
*
|
|
9
|
-
* "Every session ends with: how many interactive elements were seen, how many
|
|
10
|
-
* were actionable, how many screens were gated, what was skipped and why." The
|
|
11
|
-
* end of the session is here, so the report is here — in `data` for a caller
|
|
12
|
-
* that reads structure, and in `notes` for one that reads prose, because a
|
|
13
|
-
* coverage figure a reader has to go looking for is a coverage figure nobody
|
|
14
|
-
* reads.
|
|
15
|
-
*
|
|
16
|
-
* It comes off the reap record rather than being computed on this path, so the
|
|
17
|
-
* three teardowns nobody asked for carry it too: a session reaped on an idle
|
|
18
|
-
* timeout can still say what it reached. **One gap, stated rather than
|
|
19
|
-
* discovered:** a session that is reaped and never closed by a caller has a
|
|
20
|
-
* report that nothing renders. Until an idle reap has a reply of its own to
|
|
21
|
-
* ride on, that report exists and is unread. */
|
|
22
|
-
import type { BrowserEvidenceReport } from "../browser/evidence.ts";
|
|
23
|
-
import { type ReachabilityReport } from "../browser/reachability.ts";
|
|
24
|
-
import { type ToolContext, type ToolDefinition } from "./kit.ts";
|
|
25
|
-
import type { ToolAnswer } from "../render.ts";
|
|
26
|
-
export interface BrowserCloseSessionData {
|
|
27
|
-
readonly sessionId: string;
|
|
28
|
-
/** How the session ended — closed here, or already gone and why. */
|
|
29
|
-
readonly endedBy: "thisCall" | "idleTimeout" | "clientDisconnect" | "crashed" | "alreadyClosed";
|
|
30
|
-
readonly evidence: BrowserEvidenceReport;
|
|
31
|
-
/** What this session reached, and what it did not. Coverage — a separate axis
|
|
32
|
-
* from the five report categories (rule 6), never a verdict on the app. */
|
|
33
|
-
readonly reachability: ReachabilityReport;
|
|
34
|
-
}
|
|
35
|
-
/** Exported so `browser-read.ts` can dispatch the "close" verb to this exact body — the merge
|
|
36
|
-
* reuses this function rather than reimplementing it (mcp-surface-consolidation.md). */
|
|
37
|
-
export declare function run(args: Record<string, unknown>, ctx: ToolContext): Promise<ToolAnswer<BrowserCloseSessionData>>;
|
|
38
|
-
export declare const browserCloseSessionTool: ToolDefinition;
|
|
39
|
-
//# sourceMappingURL=browser-close-session.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser-close-session.d.ts","sourceRoot":"","sources":["../../src/tools/browser-close-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;gDAoBgD;AAGhD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGxF,OAAO,EAAkB,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AACjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,aAAa,GAAG,kBAAkB,GAAG,SAAS,GAAG,eAAe,CAAC;IAChG,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC;gFAC4E;IAC5E,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;CAC3C;AAgBD;yFACyF;AACzF,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAyDvH;AAED,eAAO,MAAM,uBAAuB,EAAE,cAarC,CAAC"}
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `browser_close_session` — returns the final flush, not an acknowledgement: evidence
|
|
3
|
-
* captured then dropped with nothing to disclose it is worse than never captured.
|
|
4
|
-
* Closing an already-gone session is NOT an error — an agent whose session timed out
|
|
5
|
-
* gets "here's why, here's what it saw," not a failure to handle.
|
|
6
|
-
*
|
|
7
|
-
* ## This is also where §4.1's reachability report surfaces
|
|
8
|
-
*
|
|
9
|
-
* "Every session ends with: how many interactive elements were seen, how many
|
|
10
|
-
* were actionable, how many screens were gated, what was skipped and why." The
|
|
11
|
-
* end of the session is here, so the report is here — in `data` for a caller
|
|
12
|
-
* that reads structure, and in `notes` for one that reads prose, because a
|
|
13
|
-
* coverage figure a reader has to go looking for is a coverage figure nobody
|
|
14
|
-
* reads.
|
|
15
|
-
*
|
|
16
|
-
* It comes off the reap record rather than being computed on this path, so the
|
|
17
|
-
* three teardowns nobody asked for carry it too: a session reaped on an idle
|
|
18
|
-
* timeout can still say what it reached. **One gap, stated rather than
|
|
19
|
-
* discovered:** a session that is reaped and never closed by a caller has a
|
|
20
|
-
* report that nothing renders. Until an idle reap has a reply of its own to
|
|
21
|
-
* ride on, that report exists and is unread. */
|
|
22
|
-
import { evidenceNotes } from "../browser/evidence.js";
|
|
23
|
-
import { reachabilityNotes } from "../browser/reachability.js";
|
|
24
|
-
import { reachEstimateNotes } from "../browser/capability-probe.js";
|
|
25
|
-
import { browserAnswer, reportOf } from "../browser/tool-support.js";
|
|
26
|
-
import { requiredString } from "./kit.js";
|
|
27
|
-
const SCHEMA = {
|
|
28
|
-
type: "object",
|
|
29
|
-
properties: {
|
|
30
|
-
sessionId: {
|
|
31
|
-
type: "string",
|
|
32
|
-
description: "REQUIRED. The id returned by browser_start_session. Closing a session that has already ended is " +
|
|
33
|
-
"safe and returns what it observed, so there is no need to check first.",
|
|
34
|
-
},
|
|
35
|
-
},
|
|
36
|
-
required: ["sessionId"],
|
|
37
|
-
additionalProperties: false,
|
|
38
|
-
};
|
|
39
|
-
/** Exported so `browser-read.ts` can dispatch the "close" verb to this exact body — the merge
|
|
40
|
-
* reuses this function rather than reimplementing it (mcp-surface-consolidation.md). */
|
|
41
|
-
export async function run(args, ctx) {
|
|
42
|
-
const sessionId = requiredString(args, "sessionId");
|
|
43
|
-
const registry = ctx.session.browserSessions();
|
|
44
|
-
const alreadyReaped = registry.reaped(sessionId);
|
|
45
|
-
ctx.progress(`Closing browser session ${sessionId}`);
|
|
46
|
-
const observation = await registry.close(sessionId);
|
|
47
|
-
const evidence = reportOf(observation);
|
|
48
|
-
// Read after the close, never before: a live session's report is still
|
|
49
|
-
// accumulating, and the reap record is the one place all four teardowns meet.
|
|
50
|
-
const reachability = (alreadyReaped ?? registry.reaped(sessionId))?.reachability ?? EMPTY_REACHABILITY;
|
|
51
|
-
const endedBy = alreadyReaped === undefined ? "thisCall" : alreadyReaped.reason === "closed" ? "alreadyClosed" : alreadyReaped.reason;
|
|
52
|
-
const notes = [
|
|
53
|
-
...evidenceNotes(evidence),
|
|
54
|
-
...reachabilityNotes(reachability),
|
|
55
|
-
...(reachability.estimate === null ? [] : reachEstimateNotes(reachability.estimate)),
|
|
56
|
-
];
|
|
57
|
-
// B1, rule 7: a storage state the caller asked for and did not get is a
|
|
58
|
-
// fact about this run, and the only moment it can be reported is here.
|
|
59
|
-
const saveFailure = registry.reaped(sessionId)?.storageStateSaveFailure ?? null;
|
|
60
|
-
if (saveFailure !== null) {
|
|
61
|
-
notes.push(`This session's storage state was NOT saved: ${saveFailure}. A later session pointed at that file will ` +
|
|
62
|
-
"refuse to start rather than drive the logged-out surface, but nothing was written and the login " +
|
|
63
|
-
"performed in this session is gone.");
|
|
64
|
-
}
|
|
65
|
-
if (alreadyReaped !== undefined) {
|
|
66
|
-
notes.push(`This session had already ended (${endedBy}). Anything it observed before it went is included here ` +
|
|
67
|
-
"rather than discarded.");
|
|
68
|
-
}
|
|
69
|
-
// C4: the wall goes in the headline, not only in the notes. A caller that
|
|
70
|
-
// reads one line of a reply is the caller this exists for — a session that
|
|
71
|
-
// never got into the application must not be able to render as a routine
|
|
72
|
-
// close with a reach percentage underneath it.
|
|
73
|
-
const walled = reachability.wall === null
|
|
74
|
-
? ""
|
|
75
|
-
: reachability.wall.kind === "challenge"
|
|
76
|
-
? " It did not get past a human-verification challenge, so the application behind it was not analysed."
|
|
77
|
-
: " It saw only the logged-out surface, so the application behind the sign-in was not analysed.";
|
|
78
|
-
return browserAnswer({
|
|
79
|
-
ctx,
|
|
80
|
-
headline: (alreadyReaped === undefined
|
|
81
|
-
? `Closed browser session ${sessionId}.`
|
|
82
|
-
: `Browser session ${sessionId} had already ended (${endedBy}).`) + walled,
|
|
83
|
-
notes,
|
|
84
|
-
data: { sessionId, endedBy, evidence, reachability },
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
export const browserCloseSessionTool = {
|
|
88
|
-
name: "browser_close_session",
|
|
89
|
-
title: "Close a browser session",
|
|
90
|
-
description: "Tear down an open browser session and return everything it observed but had not yet reported, plus a " +
|
|
91
|
-
"reachability report: how many interactive elements the session saw, how many it could actually operate, " +
|
|
92
|
-
"which regions it could not enter and why, and what it skipped. That report is coverage, not a verdict — it " +
|
|
93
|
-
"never says the parts it reached are correct. Safe to call on a session that has already ended.",
|
|
94
|
-
class: "stateful-read",
|
|
95
|
-
tier: "evidence",
|
|
96
|
-
version: "1.0.0",
|
|
97
|
-
inputSchema: SCHEMA,
|
|
98
|
-
run,
|
|
99
|
-
};
|
|
100
|
-
/** A session with no reap record — only reachable if a close raced a registry
|
|
101
|
-
* that never held the session. Empty rather than absent so the reply's shape
|
|
102
|
-
* does not depend on a race, and the statement it carries says plainly that
|
|
103
|
-
* nothing was reached. */
|
|
104
|
-
const EMPTY_REACHABILITY = {
|
|
105
|
-
screens: [],
|
|
106
|
-
elementsSeen: 0,
|
|
107
|
-
elementsActionable: 0,
|
|
108
|
-
elementsSavable: 0,
|
|
109
|
-
blocked: [],
|
|
110
|
-
actionsAttempted: 0,
|
|
111
|
-
actionsSucceeded: 0,
|
|
112
|
-
failures: [],
|
|
113
|
-
gated: [],
|
|
114
|
-
skipped: [],
|
|
115
|
-
estimate: null,
|
|
116
|
-
wall: null,
|
|
117
|
-
statement: "This session read no screen, so it reached none of the application. That is a statement about coverage " +
|
|
118
|
-
"and not about the application.",
|
|
119
|
-
};
|
|
120
|
-
//# sourceMappingURL=browser-close-session.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser-close-session.js","sourceRoot":"","sources":["../../src/tools/browser-close-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/** `browser_fill` sets a field's value directly. Consent is granted once, at
|
|
2
|
-
* `browser_start_session` (DEC-380) — this is `class: "action"` but `describeAction` returns
|
|
3
|
-
* `undefined`; a verb cannot mint its own consent, so it refuses with no consent record. A ref
|
|
4
|
-
* must come from a snapshot the agent actually saw, never a raw selector. Fires **no key
|
|
5
|
-
* events**: autocomplete, per-char validation and debounced search never run — use browser_type. */
|
|
6
|
-
import type { BrowserEvidenceReport } from "../browser/evidence.ts";
|
|
7
|
-
import { type BrowserGraphWrite } from "../browser/graph-write.ts";
|
|
8
|
-
import { type ToolDefinition } from "./kit.ts";
|
|
9
|
-
export interface BrowserFillData {
|
|
10
|
-
readonly sessionId: string;
|
|
11
|
-
readonly ref: string;
|
|
12
|
-
readonly url: string;
|
|
13
|
-
readonly evidence: BrowserEvidenceReport;
|
|
14
|
-
/** Graph nodes this action's own requests reached, and any R4 edges it witnessed. */
|
|
15
|
-
readonly graph: BrowserGraphWrite;
|
|
16
|
-
}
|
|
17
|
-
export declare const browserFillTool: ToolDefinition;
|
|
18
|
-
//# sourceMappingURL=browser-fill.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser-fill.d.ts","sourceRoot":"","sources":["../../src/tools/browser-fill.ts"],"names":[],"mappings":"AAAA;;;;qGAIqG;AAErG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAEpE,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAGnF,OAAO,EAAoC,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAGjF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,qFAAqF;IACrF,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;CACnC;AAsGD,eAAO,MAAM,eAAe,EAAE,cAe7B,CAAC"}
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
/** `browser_fill` sets a field's value directly. Consent is granted once, at
|
|
2
|
-
* `browser_start_session` (DEC-380) — this is `class: "action"` but `describeAction` returns
|
|
3
|
-
* `undefined`; a verb cannot mint its own consent, so it refuses with no consent record. A ref
|
|
4
|
-
* must come from a snapshot the agent actually saw, never a raw selector. Fires **no key
|
|
5
|
-
* events**: autocomplete, per-char validation and debounced search never run — use browser_type. */
|
|
6
|
-
import { browserAnswer, emptyEvidence, mutationRefusal, observeAndCorrelate, useSession } from "../browser/tool-support.js";
|
|
7
|
-
import { NO_GRAPH_WRITE } from "../browser/graph-write.js";
|
|
8
|
-
import { UnknownElementRefError } from "../browser/driver.js";
|
|
9
|
-
import { CANCELLED_STATE, cancellationHeadline, cancellationNotes } from "../cancellation.js";
|
|
10
|
-
import { requiredString } from "./kit.js";
|
|
11
|
-
const SCHEMA = {
|
|
12
|
-
type: "object",
|
|
13
|
-
properties: {
|
|
14
|
-
sessionId: {
|
|
15
|
-
type: "string",
|
|
16
|
-
description: "REQUIRED. The id returned by browser_start_session.",
|
|
17
|
-
},
|
|
18
|
-
ref: {
|
|
19
|
-
type: "string",
|
|
20
|
-
description: "REQUIRED. An element ref from a browser_snapshot reply. Refs are issued per snapshot and are " +
|
|
21
|
-
"invalidated by navigation — a stale ref is refused rather than resolved against whatever now " +
|
|
22
|
-
"matches it, so take a fresh snapshot after the page changes.",
|
|
23
|
-
},
|
|
24
|
-
text: {
|
|
25
|
-
type: "string",
|
|
26
|
-
description: "REQUIRED. The value to put in the field, REPLACING whatever is there. Set directly, so the page " +
|
|
27
|
-
"sees no keydown, keypress or keyup at all — if the field has an autocomplete, per-character " +
|
|
28
|
-
"validation or a debounced search, none of it will fire. Use browser_type for those.",
|
|
29
|
-
},
|
|
30
|
-
confirmToken: {
|
|
31
|
-
type: "string",
|
|
32
|
-
description: "Not normally needed. Consent is granted once, for the whole session, by browser_start_session, " +
|
|
33
|
-
"so this call performs its action directly. The field is declared because the handshake reads it " +
|
|
34
|
-
"for every action-class tool.",
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
required: ["sessionId", "ref", "text"],
|
|
38
|
-
additionalProperties: false,
|
|
39
|
-
};
|
|
40
|
-
async function run(args, ctx) {
|
|
41
|
-
const sessionId = requiredString(args, "sessionId");
|
|
42
|
-
const ref = requiredString(args, "ref");
|
|
43
|
-
const text = requiredString(args, "text");
|
|
44
|
-
// Checked before the session is touched: the caller said stop, so nothing happens. The session
|
|
45
|
-
// itself stays open — it belongs to browser_start_session's consent, not to this call.
|
|
46
|
-
if (ctx.signal.aborted) {
|
|
47
|
-
return browserAnswer({
|
|
48
|
-
ctx,
|
|
49
|
-
state: CANCELLED_STATE,
|
|
50
|
-
headline: cancellationHeadline("no field was filled"),
|
|
51
|
-
notes: cancellationNotes("The field was left as it was.", "The browser session is still open and can still be used."),
|
|
52
|
-
data: { sessionId, ref, url: "", evidence: emptyEvidence(), graph: NO_GRAPH_WRITE },
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
const found = await useSession(ctx.session.browserSessions(), sessionId);
|
|
56
|
-
if (!found.ok) {
|
|
57
|
-
return browserAnswer({
|
|
58
|
-
ctx,
|
|
59
|
-
state: found.dead.state,
|
|
60
|
-
headline: found.dead.headline,
|
|
61
|
-
notes: found.dead.notes,
|
|
62
|
-
data: { sessionId, ref, url: "", evidence: found.dead.evidence, graph: NO_GRAPH_WRITE },
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
const { entry } = found;
|
|
66
|
-
// Consent and safetyLevel are independent and both must pass. Consent was
|
|
67
|
-
// granted at session start; this is the other half.
|
|
68
|
-
const refused = mutationRefusal(entry);
|
|
69
|
-
if (refused !== null) {
|
|
70
|
-
return browserAnswer({
|
|
71
|
-
ctx,
|
|
72
|
-
state: "refused",
|
|
73
|
-
headline: `${entry.profile?.name ?? "This environment"} is read-only.`,
|
|
74
|
-
notes: [refused],
|
|
75
|
-
data: { sessionId, ref, url: entry.page.currentUrl(), evidence: emptyEvidence(), graph: NO_GRAPH_WRITE },
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
try {
|
|
79
|
-
ctx.progress(`Filling`);
|
|
80
|
-
await entry.page.fill(ref, text);
|
|
81
|
-
}
|
|
82
|
-
catch (error) {
|
|
83
|
-
if (!(error instanceof UnknownElementRefError))
|
|
84
|
-
throw error;
|
|
85
|
-
return browserAnswer({
|
|
86
|
-
ctx,
|
|
87
|
-
state: "refused",
|
|
88
|
-
headline: `"${ref}" is not an element in this session's current snapshot.`,
|
|
89
|
-
notes: [error.message],
|
|
90
|
-
data: { sessionId, ref, url: entry.page.currentUrl(), evidence: emptyEvidence(), graph: NO_GRAPH_WRITE },
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
const observed = await observeAndCorrelate(ctx, entry);
|
|
94
|
-
return browserAnswer({
|
|
95
|
-
ctx,
|
|
96
|
-
headline: `Filling on ${entry.page.currentUrl()}.`,
|
|
97
|
-
notes: observed.notes,
|
|
98
|
-
data: { sessionId, ref, url: entry.page.currentUrl(), evidence: observed.evidence, graph: observed.graph },
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
export const browserFillTool = {
|
|
102
|
-
name: "browser_fill",
|
|
103
|
-
title: "set a field's value directly",
|
|
104
|
-
description: "Set a field's value in an open browser session, replacing what is there. Fires no key events at all: " +
|
|
105
|
-
"the value is set directly, so an autocomplete, per-character validation or debounced search attached " +
|
|
106
|
-
"to that field will not run. Use browser_type when the page reacts to typing. Refused when the " +
|
|
107
|
-
"session's environment profile declares safetyLevel \"readOnly\".",
|
|
108
|
-
class: "action",
|
|
109
|
-
tier: "evidence",
|
|
110
|
-
version: "1.0.0",
|
|
111
|
-
inputSchema: SCHEMA,
|
|
112
|
-
run,
|
|
113
|
-
// Undefined, always: consent lives at browser_start_session — a verb that could mint its own
|
|
114
|
-
// consent would be a gate only honest callers respect.
|
|
115
|
-
describeAction: () => undefined,
|
|
116
|
-
};
|
|
117
|
-
//# sourceMappingURL=browser-fill.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser-fill.js","sourceRoot":"","sources":["../../src/tools/browser-fill.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/** `browser_navigate` moves an open session to another page. Cross-origin navigate refuses —
|
|
2
|
-
* never re-prompts — since navigation is the one place a session's consent could otherwise widen
|
|
3
|
-
* into a general-purpose browser. `class: "stateful-read"`: it changes what later calls see, but
|
|
4
|
-
* the developer's approval was already stated at `browser_start_session`. */
|
|
5
|
-
import { type ToolContext, type ToolDefinition } from "./kit.ts";
|
|
6
|
-
import type { ToolAnswer } from "../render.ts";
|
|
7
|
-
import { type BrowserPageData } from "./browser-snapshot.ts";
|
|
8
|
-
/** Deliberately the same shape `browser_snapshot` returns — an alias, not a re-declaration, so the
|
|
9
|
-
* two cannot drift. */
|
|
10
|
-
export type BrowserNavigateData = BrowserPageData;
|
|
11
|
-
/** Exported so `browser-read.ts` can dispatch the "navigate" verb to this exact body — the merge
|
|
12
|
-
* reuses this function rather than reimplementing it (mcp-surface-consolidation.md). */
|
|
13
|
-
export declare function run(args: Record<string, unknown>, ctx: ToolContext): Promise<ToolAnswer<BrowserNavigateData>>;
|
|
14
|
-
export declare const browserNavigateTool: ToolDefinition;
|
|
15
|
-
//# sourceMappingURL=browser-navigate.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser-navigate.d.ts","sourceRoot":"","sources":["../../src/tools/browser-navigate.ts"],"names":[],"mappings":"AAAA;;;8EAG8E;AAM9E,OAAO,EAAkB,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AACjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAY,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEvE;wBACwB;AACxB,MAAM,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAyBlD;yFACyF;AACzF,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAgEnH;AAED,eAAO,MAAM,mBAAmB,EAAE,cAYjC,CAAC"}
|