@weavetab/skills 2.5.0-beta.4 → 2.5.0-beta.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/README.md +16 -16
- package/bin/cli.js +17 -17
- package/browser/dom-strategy.md +1 -1
- package/browser/form-automation.md +1 -1
- package/browser/interaction-pipeline.md +1 -1
- package/browser/tab-and-window.md +1 -1
- package/desktop/desktop-targeting.md +1 -1
- package/desktop/electron-discovery.md +1 -1
- package/developer/github-forensics.md +1 -1
- package/dist/bundled/weavetab-all.md +1704 -1699
- package/dist/bundled/weavetab-browser.md +23 -23
- package/dist/bundled/weavetab-desktop.md +13 -13
- package/dist/bundled/weavetab-developer.md +8 -8
- package/dist/bundled/weavetab-documents.md +13 -13
- package/dist/bundled/weavetab-memory.md +182 -182
- package/dist/bundled/weavetab-network-and-perf.md +19 -19
- package/dist/bundled/weavetab-plugins.md +62 -57
- package/dist/bundled/weavetab-resilience.md +18 -18
- package/dist/bundled/weavetab-security.md +13 -13
- package/dist/granular/browser_dom-strategy.md +1 -1
- package/dist/granular/browser_form-automation.md +1 -1
- package/dist/granular/browser_interaction-pipeline.md +1 -1
- package/dist/granular/browser_tab-and-window.md +1 -1
- package/dist/granular/desktop_desktop-targeting.md +1 -1
- package/dist/granular/desktop_electron-discovery.md +1 -1
- package/dist/granular/developer_github-forensics.md +1 -1
- package/dist/granular/documents_canvas-and-visual-capture.md +1 -1
- package/dist/granular/documents_office-document-ingestion.md +1 -1
- package/dist/granular/memory_selector-memory-system.md +1 -1
- package/dist/granular/memory_session-trail.md +2 -2
- package/dist/granular/memory_site-learning.md +1 -1
- package/dist/granular/network-and-perf_device-and-environment.md +1 -1
- package/dist/granular/network-and-perf_network-intercept-and-mock.md +2 -2
- package/dist/granular/network-and-perf_performance-and-vitals.md +1 -1
- package/dist/granular/plugins_hooks-and-overrides.md +2 -3
- package/dist/granular/plugins_plugin-runtime.md +63 -60
- package/dist/granular/resilience_loop-breaker.md +1 -1
- package/dist/granular/resilience_session-time-travel.md +1 -1
- package/dist/granular/resilience_stale-ref-recovery.md +1 -1
- package/dist/granular/security_rbac-and-policies.md +1 -1
- package/dist/granular/security_secret-containment-protocol.md +1 -1
- package/documents/canvas-and-visual-capture.md +1 -1
- package/documents/office-document-ingestion.md +1 -1
- package/evals/evaluator.js +2 -2
- package/evals/scenarios.json +8 -7
- package/memory/selector-memory-system.md +1 -1
- package/memory/session-trail.md +2 -2
- package/memory/site-learning.md +1 -1
- package/network-and-perf/device-and-environment.md +1 -1
- package/network-and-perf/network-intercept-and-mock.md +2 -2
- package/network-and-perf/performance-and-vitals.md +1 -1
- package/package.json +73 -73
- package/plugins/hooks-and-overrides.md +2 -3
- package/plugins/plugin-runtime.md +63 -60
- package/resilience/loop-breaker.md +1 -1
- package/resilience/session-time-travel.md +1 -1
- package/resilience/stale-ref-recovery.md +1 -1
- package/security/rbac-and-policies.md +1 -1
- package/security/secret-containment-protocol.md +1 -1
- package/skills.json +426 -431
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# Weavetab Domain Profile: PLUGINS
|
|
2
|
-
|
|
3
|
-
Generated for @weavetab/skills v2.5.0-beta.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
## hooks-and-overrides
|
|
7
|
-
|
|
1
|
+
# Weavetab Domain Profile: PLUGINS
|
|
2
|
+
|
|
3
|
+
Generated for @weavetab/skills v2.5.0-beta.5
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
## hooks-and-overrides
|
|
7
|
+
|
|
8
8
|
# Plugin Hooks & Lifecycle Overrides
|
|
9
9
|
|
|
10
10
|
Plugins built with `@weavetab/sdk` register lifecycle hooks that run before and after tool executions. Understanding these hooks helps agents interpret metadata and custom tool responses.
|
|
@@ -26,53 +26,58 @@ Plugins built with `@weavetab/sdk` register lifecycle hooks that run before and
|
|
|
26
26
|
|
|
27
27
|
## 2. Agent Operational Awareness
|
|
28
28
|
|
|
29
|
-
When plugins are active, tool return payloads may include an optional `_pluginMetadata` object containing trace IDs, custom metrics, or security audit timestamps. Agents should treat this object as informational telemetry.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
## plugin-runtime
|
|
33
|
-
|
|
34
|
-
# Plugin Runtime:
|
|
35
|
-
|
|
36
|
-
Weavetab features an extensible plugin architecture powered by `@weavetab/sdk`.
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## 1.
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
29
|
+
When plugins are active, tool return payloads may include an optional `_pluginMetadata` object containing trace IDs, custom metrics, or security audit timestamps. Agents should treat this object as informational telemetry.
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
## plugin-runtime
|
|
33
|
+
|
|
34
|
+
# Plugin Runtime: Weavetab Plugin Architecture
|
|
35
|
+
|
|
36
|
+
Weavetab features an extensible plugin architecture powered by `@weavetab/sdk`. All installed plugins are loaded automatically at server startup — their tools appear directly in the MCP tool list alongside built-in tools. Agents never need to discover or activate plugins manually.
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 1. How Plugin Tools Appear
|
|
41
|
+
|
|
42
|
+
Plugin tools are first-class MCP tools. If `@weavetab/plugin-recaptcha-solver` is installed, `captcha_solve_token` appears in the tool list immediately on startup — no discovery step needed.
|
|
43
|
+
|
|
44
|
+
There are **no** `list_plugins` or `load_plugin` tools. Managing plugins is a CLI operation:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
# Install a plugin (restart required)
|
|
48
|
+
weavetab plugin add @weavetab/plugin-youtube
|
|
49
|
+
|
|
50
|
+
# Remove a plugin
|
|
51
|
+
weavetab plugin rm @weavetab/plugin-youtube
|
|
52
|
+
|
|
53
|
+
# List installed plugins
|
|
54
|
+
weavetab plugin list
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## 2. Plugin Permission Model
|
|
60
|
+
|
|
61
|
+
Every plugin declares what it can do in `weavetab.json`. The runtime enforces this at load time:
|
|
62
|
+
|
|
63
|
+
| Permission | What it gates |
|
|
64
|
+
|---|---|
|
|
65
|
+
| `tools.add: true` | Plugin can register new MCP tools |
|
|
66
|
+
| `tools.override: ["browser_navigate"]` | Plugin can wrap/replace that built-in tool |
|
|
67
|
+
| `tools.remove: ["browser_pdf"]` | Plugin can disable that built-in tool |
|
|
68
|
+
| `hooks.onBeforeAction: true` | Plugin can intercept all tool calls before execution |
|
|
69
|
+
| `hooks.onAfterAction: true` | Plugin can inspect/transform all tool results |
|
|
70
|
+
|
|
71
|
+
Plugins that attempt to exceed their declared permissions are blocked with a stderr warning — they do not crash.
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 3. Trust Tiers
|
|
76
|
+
|
|
77
|
+
| Tier | Badge | Condition |
|
|
78
|
+
|---|---|---|
|
|
79
|
+
| Official | `✚ [Official]` | `@weavetab/plugin-*` packages |
|
|
80
|
+
| Verified | `✔ [Verified]` | Listed in the Weavetab verified registry |
|
|
81
|
+
| Unverified | `⚠ [Unverified]` | Unknown community package |
|
|
82
|
+
|
|
83
|
+
Unverified plugins are loaded but their permissions are logged visibly at startup for user review.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# Weavetab Domain Profile: RESILIENCE
|
|
2
|
-
|
|
3
|
-
Generated for @weavetab/skills v2.5.0-beta.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
## loop-breaker
|
|
7
|
-
|
|
1
|
+
# Weavetab Domain Profile: RESILIENCE
|
|
2
|
+
|
|
3
|
+
Generated for @weavetab/skills v2.5.0-beta.5
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
## loop-breaker
|
|
7
|
+
|
|
8
8
|
# Loop Breaker & CAPTCHA Escalation Protocol
|
|
9
9
|
|
|
10
10
|
Agents can get trapped in repetitive click loops when a button does not advance the state (e.g. failing silent validation, unhandled reCAPTCHA challenges, or modals swallowing events). Weavetab actively monitors repetitive patterns and provides circuit breakers.
|
|
@@ -54,11 +54,11 @@ Invoke `browser_captcha` to analyze and manage the challenge:
|
|
|
54
54
|
|
|
55
55
|
### Action Strategy:
|
|
56
56
|
1. If the challenge is interactive and requires human intervention (e.g. image classification), inform the user cleanly or request human bypass.
|
|
57
|
-
2. If the challenge is a simple checkbox Turnstile widget, pass `"action": "solve"` or click the detected widget ref with `browser_click`.
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
## session-time-travel
|
|
61
|
-
|
|
57
|
+
2. If the challenge is a simple checkbox Turnstile widget, pass `"action": "solve"` or click the detected widget ref with `browser_click`.
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
## session-time-travel
|
|
61
|
+
|
|
62
62
|
# Session Time-Travel & Instant State Rollback
|
|
63
63
|
|
|
64
64
|
In complex multi-step workflows (e.g. checkout funnels, multi-page configuration wizards, onboarding questionnaires), an error at Step 7 traditionally forces an agent to reload the root URL, re-authenticate, and waste 10+ turns repeating steps.
|
|
@@ -172,11 +172,11 @@ Query or clear `localStorage` and `sessionStorage` keys:
|
|
|
172
172
|
"action": "get",
|
|
173
173
|
"key": "authToken"
|
|
174
174
|
}
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
## stale-ref-recovery
|
|
179
|
-
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
## stale-ref-recovery
|
|
179
|
+
|
|
180
180
|
# Stale Ref Recovery & SPA Hydration Resilience
|
|
181
181
|
|
|
182
182
|
In modern Single Page Applications (built with React, Next.js, Vue, Nuxt, Svelte), DOM nodes are frequently destroyed and recreated during client-side hydration or reactive state updates. This often causes `STALE_ELEMENT_REFERENCE` or `NODE_DETACHED` errors when an agent attempts an action.
|
|
@@ -213,4 +213,4 @@ If an action returns `ERROR: STALE_ELEMENT_REFERENCE` because all 4 recovery tie
|
|
|
213
213
|
|
|
214
214
|
1. **Do NOT Repeat the Identical Call**: Retrying the exact same stale `ref` (`w:14`) will fail again.
|
|
215
215
|
2. **Execute a Fast Targeted Lookup**: Run `browser_find` with the text of the button or input field.
|
|
216
|
-
3. **Execute the Action on the New Handle**: Use the updated handle returned by `browser_find`.
|
|
216
|
+
3. **Execute the Action on the New Handle**: Use the updated handle returned by `browser_find`.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# Weavetab Domain Profile: SECURITY
|
|
2
|
-
|
|
3
|
-
Generated for @weavetab/skills v2.5.0-beta.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
## rbac-and-policies
|
|
7
|
-
|
|
1
|
+
# Weavetab Domain Profile: SECURITY
|
|
2
|
+
|
|
3
|
+
Generated for @weavetab/skills v2.5.0-beta.5
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
## rbac-and-policies
|
|
7
|
+
|
|
8
8
|
# Role-Based Access Control (RBAC) & Agent Guardrails
|
|
9
9
|
|
|
10
10
|
Weavetab allows developers to run untrusted or lower-privilege subagents within strict security boundaries to prevent accidental destructive operations or data leaks.
|
|
@@ -35,11 +35,11 @@ If an agent attempts an action outside its allocated role tier:
|
|
|
35
35
|
### Protocol:
|
|
36
36
|
1. Do not retry the denied tool.
|
|
37
37
|
2. Delegate the interactive action to the parent agent or primary operator.
|
|
38
|
-
3. Limit your output to findings gathered via read-only tools (`browser_scrape`, `browser_map`, `browser_inspect`).
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
## secret-containment-protocol
|
|
42
|
-
|
|
38
|
+
3. Limit your output to findings gathered via read-only tools (`browser_scrape`, `browser_map`, `browser_inspect`).
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
## secret-containment-protocol
|
|
42
|
+
|
|
43
43
|
# Secret Containment Protocol & Zero-Bleed Execution
|
|
44
44
|
|
|
45
45
|
AI agent transcripts, LLM providers, and tool logs represent massive attack surfaces for credential leaks. Weavetab enforces a hardware-grade **Zero-Bleed Security Guarantee** for sensitive inputs.
|
|
@@ -84,4 +84,4 @@ When `browser_type_secret` is invoked:
|
|
|
84
84
|
> - `browser_fill`
|
|
85
85
|
> - `browser_eval`
|
|
86
86
|
>
|
|
87
|
-
> Doing so causes plaintext secrets to enter unmasked transcripts and tool logs.
|
|
87
|
+
> Doing so causes plaintext secrets to enter unmasked transcripts and tool logs.
|
|
@@ -12,7 +12,7 @@ tools:
|
|
|
12
12
|
- "browser_recording"
|
|
13
13
|
- "browser_automation"
|
|
14
14
|
- "browser_thoughts"
|
|
15
|
-
weavetab: ">=2.5.0-beta.
|
|
15
|
+
weavetab: ">=2.5.0-beta.5"
|
|
16
16
|
---
|
|
17
17
|
|
|
18
18
|
# Session Trails & Deterministic Macro Compilation
|
|
@@ -49,7 +49,7 @@ Or pass `dry_run: true` to inspect the compiled macro steps before running them:
|
|
|
49
49
|
"success": true,
|
|
50
50
|
"steps_completed": 0,
|
|
51
51
|
"compiled_steps": [
|
|
52
|
-
{ "tool": "
|
|
52
|
+
{ "tool": "browser_navigate", "args": { "url": "https://analytics.example.com" } },
|
|
53
53
|
{ "tool": "browser_fill", "args": { "ref": "w:12", "value": "metrics" } },
|
|
54
54
|
{ "tool": "click_and_wait", "args": { "ref": "w:15" } }
|
|
55
55
|
],
|
|
@@ -10,7 +10,7 @@ triggers:
|
|
|
10
10
|
- "network waterfall"
|
|
11
11
|
tools:
|
|
12
12
|
- "browser_network_intercept"
|
|
13
|
-
weavetab: ">=2.5.0-beta.
|
|
13
|
+
weavetab: ">=2.5.0-beta.5"
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
# Network Interception, Mocking & TLS Forensics
|
|
@@ -61,7 +61,7 @@ Extract cryptographic handshake metadata, cipher suites, expiration dates, and m
|
|
|
61
61
|
```json
|
|
62
62
|
{
|
|
63
63
|
"action": "auditTls",
|
|
64
|
-
"url": "https://weavetab.
|
|
64
|
+
"url": "https://weavetab.dev"
|
|
65
65
|
}
|
|
66
66
|
```
|
|
67
67
|
|
|
@@ -1,60 +1,63 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: plugin-runtime
|
|
3
|
-
domain: plugins
|
|
4
|
-
triggers:
|
|
5
|
-
- "
|
|
6
|
-
- "
|
|
7
|
-
- "
|
|
8
|
-
- "
|
|
9
|
-
- "
|
|
10
|
-
tools:
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
1
|
+
---
|
|
2
|
+
id: plugin-runtime
|
|
3
|
+
domain: plugins
|
|
4
|
+
triggers:
|
|
5
|
+
- "what plugins are installed"
|
|
6
|
+
- "weavetab plugin"
|
|
7
|
+
- "extend mcp"
|
|
8
|
+
- "plugin tools"
|
|
9
|
+
- "plugin permissions"
|
|
10
|
+
tools: []
|
|
11
|
+
weavetab: ">=2.5.0-beta.5"
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Plugin Runtime: Weavetab Plugin Architecture
|
|
15
|
+
|
|
16
|
+
Weavetab features an extensible plugin architecture powered by `@weavetab/sdk`. All installed plugins are loaded automatically at server startup — their tools appear directly in the MCP tool list alongside built-in tools. Agents never need to discover or activate plugins manually.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 1. How Plugin Tools Appear
|
|
21
|
+
|
|
22
|
+
Plugin tools are first-class MCP tools. If `@weavetab/plugin-recaptcha-solver` is installed, `captcha_solve_token` appears in the tool list immediately on startup — no discovery step needed.
|
|
23
|
+
|
|
24
|
+
There are **no** `list_plugins` or `load_plugin` tools. Managing plugins is a CLI operation:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
# Install a plugin (restart required)
|
|
28
|
+
weavetab plugin add @weavetab/plugin-youtube
|
|
29
|
+
|
|
30
|
+
# Remove a plugin
|
|
31
|
+
weavetab plugin rm @weavetab/plugin-youtube
|
|
32
|
+
|
|
33
|
+
# List installed plugins
|
|
34
|
+
weavetab plugin list
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 2. Plugin Permission Model
|
|
40
|
+
|
|
41
|
+
Every plugin declares what it can do in `weavetab.json`. The runtime enforces this at load time:
|
|
42
|
+
|
|
43
|
+
| Permission | What it gates |
|
|
44
|
+
|---|---|
|
|
45
|
+
| `tools.add: true` | Plugin can register new MCP tools |
|
|
46
|
+
| `tools.override: ["browser_navigate"]` | Plugin can wrap/replace that built-in tool |
|
|
47
|
+
| `tools.remove: ["browser_pdf"]` | Plugin can disable that built-in tool |
|
|
48
|
+
| `hooks.onBeforeAction: true` | Plugin can intercept all tool calls before execution |
|
|
49
|
+
| `hooks.onAfterAction: true` | Plugin can inspect/transform all tool results |
|
|
50
|
+
|
|
51
|
+
Plugins that attempt to exceed their declared permissions are blocked with a stderr warning — they do not crash.
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## 3. Trust Tiers
|
|
56
|
+
|
|
57
|
+
| Tier | Badge | Condition |
|
|
58
|
+
|---|---|---|
|
|
59
|
+
| Official | `✚ [Official]` | `@weavetab/plugin-*` packages |
|
|
60
|
+
| Verified | `✔ [Verified]` | Listed in the Weavetab verified registry |
|
|
61
|
+
| Unverified | `⚠ [Unverified]` | Unknown community package |
|
|
62
|
+
|
|
63
|
+
Unverified plugins are loaded but their permissions are logged visibly at startup for user review.
|
package/evals/evaluator.js
CHANGED
|
@@ -16,8 +16,8 @@ const OFFICIAL_TOOLS = new Set([
|
|
|
16
16
|
"browser_screenshot", "browser_viewport", "browser_clipboard", "browser_inspect",
|
|
17
17
|
"browser_extract_design", "browser_automation", "browser_recording",
|
|
18
18
|
"browser_detect", "browser_performance",
|
|
19
|
-
"browser_github", "browser_office", "browser_emulate",
|
|
20
|
-
"
|
|
19
|
+
"browser_github", "browser_office", "browser_emulate",
|
|
20
|
+
"browser_checkpoint", "browser_pattern_learn"
|
|
21
21
|
]);
|
|
22
22
|
|
|
23
23
|
const BANNED_TOOLS = [
|