@weave_protocol/adapter-antigravity 0.1.0 → 0.2.0
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 +71 -47
- package/dist/cli.js +64 -24
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +30 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +82 -32
- package/dist/config.js.map +1 -1
- package/dist/hook.d.ts +19 -5
- package/dist/hook.d.ts.map +1 -1
- package/dist/hook.js +46 -31
- package/dist/hook.js.map +1 -1
- package/dist/mund.d.ts +93 -0
- package/dist/mund.d.ts.map +1 -0
- package/dist/mund.js +215 -0
- package/dist/mund.js.map +1 -0
- package/dist/types.d.ts +25 -28
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +19 -23
- package/dist/types.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -14,11 +14,13 @@ Part of the [Weave Protocol](https://github.com/Tyox-all/Weave_Protocol) securit
|
|
|
14
14
|
|
|
15
15
|
## What it does
|
|
16
16
|
|
|
17
|
-
When Antigravity is about to use a tool (
|
|
17
|
+
When Antigravity is about to use a tool (`run_command`, `write_to_file`, `view_file`, `read_url_content`, …), this adapter intercepts it through the `PreToolUse` hook, reads your project's `WARD.md`, and denies the call (or asks you) if it violates the declared policy.
|
|
18
|
+
|
|
19
|
+
> **0.2.0 fixes enforcement.** Versions up to 0.1.0 were built on assumptions that didn't match [Antigravity's hook docs](https://antigravity.google/docs/hooks): the wrong config file, payload fields, tool names and decision values. WARD rules were very likely not being enforced. Run `weave-antigravity init` again after upgrading; it installs the hook in the right place and removes the old entry.
|
|
18
20
|
|
|
19
21
|
```
|
|
20
22
|
You: "Push my GCP credentials to S3"
|
|
21
|
-
Antigravity: [about to run
|
|
23
|
+
Antigravity: [about to run run_command with `cat ~/.config/gcloud/... | aws s3 cp -`]
|
|
22
24
|
↓
|
|
23
25
|
PreToolUse hook fires
|
|
24
26
|
↓
|
|
@@ -26,7 +28,7 @@ Antigravity: [about to run Bash with `cat ~/.config/gcloud/... | aws s3 cp -`]
|
|
|
26
28
|
↓
|
|
27
29
|
checkFilesystem('read', '~/.config/gcloud') → DENY
|
|
28
30
|
↓
|
|
29
|
-
Returns { "decision": "
|
|
31
|
+
Returns { "decision": "deny", "reason": "WARD: ..." }
|
|
30
32
|
↓
|
|
31
33
|
Antigravity refuses, shows reason.
|
|
32
34
|
```
|
|
@@ -41,8 +43,10 @@ Same agent harness powers Antigravity desktop, CLI, and SDK — so installing th
|
|
|
41
43
|
# Install once
|
|
42
44
|
npm install -g @weave_protocol/adapter-antigravity
|
|
43
45
|
|
|
44
|
-
# Wire it into Antigravity's hook config (~/.gemini/
|
|
46
|
+
# Wire it into Antigravity's hook config (~/.gemini/config/hooks.json)
|
|
45
47
|
weave-antigravity init
|
|
48
|
+
# …or just this workspace (.agents/hooks.json)
|
|
49
|
+
weave-antigravity init --workspace=.
|
|
46
50
|
|
|
47
51
|
# Drop a WARD.md in your project root (or next to AGENTS.md)
|
|
48
52
|
npx @weave_protocol/ward init
|
|
@@ -58,15 +62,38 @@ weave-antigravity status
|
|
|
58
62
|
|
|
59
63
|
---
|
|
60
64
|
|
|
65
|
+
## Mund pre-install hooks
|
|
66
|
+
|
|
67
|
+
Scan skills and MCP servers with [Mund](../mund#-pre-install-checks-for-skills-and-mcp-servers) before they can act:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npm i -g @weave_protocol/mund # optional: faster than the npx fallback
|
|
71
|
+
weave-antigravity mund install # global: ~/.gemini/config/hooks.json
|
|
72
|
+
weave-antigravity mund install --workspace=. # or this workspace: .agents/hooks.json
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
This installs a hook named `weave-mund`, built against [Antigravity's hook docs](https://antigravity.google/docs/hooks):
|
|
76
|
+
|
|
77
|
+
| Event | What it does | Can block? |
|
|
78
|
+
|---|---|---|
|
|
79
|
+
| `SessionStart` | Audits skills (`.agents/skills`, `~/.gemini/config/skills`, CLI and plugin skills) and MCP servers (`.agents/mcp_config.json`, `~/.gemini/config/mcp_config.json`), and injects a summary | Reports only |
|
|
80
|
+
| `PreToolUse` | Scans content that `write_to_file`, `replace_file_content` or `multi_replace_file_content` would put into a skills folder, **before** it's written; **denies** MCP calls to servers Mund blocked and **asks** for flagged ones | ✅ |
|
|
81
|
+
|
|
82
|
+
Notes:
|
|
83
|
+
- Antigravity has no config-change event, so a skill copied in outside the agent is caught at the next session start, not before.
|
|
84
|
+
- Antigravity documents MCP permission patterns but not the runtime tool-name format, so the gate recognizes the common forms (`mcp__server__tool`, `mcp_server_tool`, `server__tool`, `server/tool`).
|
|
85
|
+
- Live checks start only global servers you configured; workspace servers and servers marked `disabled` get static checks only. Turn live checks off with `WEAVE_MUND_LIVE=0`.
|
|
86
|
+
|
|
61
87
|
## How WARD.md is resolved
|
|
62
88
|
|
|
63
89
|
When the hook fires, it looks for a WARD.md in this order:
|
|
64
90
|
|
|
65
91
|
1. `$WEAVE_WARD_PATH` — explicit env var override
|
|
66
|
-
2. `<
|
|
67
|
-
3. `<
|
|
68
|
-
4. `<
|
|
69
|
-
5. `~/.gemini/
|
|
92
|
+
2. `<workspace>/WARD.md`: the workspace is the first of `workspacePaths` in the hook payload
|
|
93
|
+
3. `<workspace>/.agents/WARD.md`: **co-located with AGENTS.md** in the agent definition folder
|
|
94
|
+
4. `<workspace>/.weave/WARD.md`: alternate project location
|
|
95
|
+
5. `~/.gemini/config/WARD.md`: **global**, next to `hooks.json`
|
|
96
|
+
6. `~/.gemini/antigravity-cli/WARD.md`: legacy global location
|
|
70
97
|
|
|
71
98
|
The first one that exists wins. If none exists, the hook silently passes through — zero impact on workflows that haven't adopted WARD yet.
|
|
72
99
|
|
|
@@ -76,38 +103,40 @@ The `.agents/` location is meaningful in Antigravity — it's the same folder wh
|
|
|
76
103
|
|
|
77
104
|
## Tool mapping
|
|
78
105
|
|
|
79
|
-
Antigravity's tools
|
|
106
|
+
Antigravity's [documented tools](https://antigravity.google/docs/hooks) map to generic capability names, so a single WARD.md works across platforms:
|
|
80
107
|
|
|
81
|
-
| Antigravity tool | WARD capability |
|
|
108
|
+
| Antigravity tool | WARD capability | Checked argument | Implicit fs op |
|
|
82
109
|
|---|---|---|---|
|
|
83
|
-
| `
|
|
84
|
-
| `
|
|
85
|
-
| `
|
|
86
|
-
| `
|
|
87
|
-
| `
|
|
88
|
-
| `
|
|
89
|
-
| `
|
|
90
|
-
| `
|
|
91
|
-
| `
|
|
92
|
-
| `Plugin` | `plugin_invoke` | — | — |
|
|
110
|
+
| `run_command` | `shell_exec` | `CommandLine` (heuristic scan) | varies |
|
|
111
|
+
| `write_to_file` / `replace_file_content` / `multi_replace_file_content` | `file_write` | `TargetFile` | `write` |
|
|
112
|
+
| `view_file` | `file_read` | `AbsolutePath` | `read` |
|
|
113
|
+
| `grep_search` | `file_read` | `SearchPath` | `read` |
|
|
114
|
+
| `list_dir` / `find_by_name` | `file_list` | `DirectoryPath` / `SearchDirectory` | `list` |
|
|
115
|
+
| `read_url_content` | `http_request` | `Url` | — |
|
|
116
|
+
| `search_web` | `web_search` | — | — |
|
|
117
|
+
| `invoke_subagent` / `define_subagent` | `subagent` | — | — |
|
|
118
|
+
| `send_message` / `manage_task` / `schedule` / `generate_image` | `agent_message` / `task_control` / `schedule` / `generate_image` | — | — |
|
|
93
119
|
|
|
94
|
-
Your WARD.md can use either name
|
|
120
|
+
Your WARD.md can use either name, for example `run_command` or `shell_exec`. Any other tool, including MCP tools, is checked by its raw name. Explicit rules win over default decisions.
|
|
95
121
|
|
|
96
|
-
For `
|
|
122
|
+
For `run_command`, the adapter runs a light heuristic scan of the command line to catch common violations: URLs to denied domains, and references to sensitive paths like `~/.ssh`, `~/.aws`, **`~/.config/gcloud`** and `/etc/`.
|
|
123
|
+
|
|
124
|
+
Decisions use Antigravity's values: a policy violation returns `deny`, and a `requireApproval` rule returns **`ask`**, so Antigravity prompts you instead of the call being blocked.
|
|
97
125
|
|
|
98
126
|
---
|
|
99
127
|
|
|
100
128
|
## Commands
|
|
101
129
|
|
|
102
130
|
```bash
|
|
103
|
-
weave-antigravity init [--matcher=X] [--fail-closed]
|
|
104
|
-
Install the WARD
|
|
105
|
-
|
|
106
|
-
|
|
131
|
+
weave-antigravity init [--matcher=X] [--fail-closed] [--workspace=DIR]
|
|
132
|
+
Install the WARD hook as "weave-ward" in ~/.gemini/config/hooks.json
|
|
133
|
+
(or DIR/.agents/hooks.json). Also removes a pre-0.2 entry from
|
|
134
|
+
~/.gemini/antigravity-cli/settings.json.
|
|
135
|
+
--matcher=REGEX Restrict to specific tools (default: all), e.g. run_command|write_to_file
|
|
136
|
+
--fail-closed Deny on policy errors (default: fail-open)
|
|
107
137
|
|
|
108
|
-
weave-antigravity disable
|
|
109
|
-
Remove the WARD hook
|
|
110
|
-
(your other hooks are not touched)
|
|
138
|
+
weave-antigravity disable [--workspace=DIR]
|
|
139
|
+
Remove the WARD hook (your other hooks are not touched)
|
|
111
140
|
|
|
112
141
|
weave-antigravity status
|
|
113
142
|
Show hook installation state + active WARD policy
|
|
@@ -120,22 +149,22 @@ weave-antigravity help
|
|
|
120
149
|
|
|
121
150
|
### Examples
|
|
122
151
|
|
|
123
|
-
Test whether a destructive
|
|
152
|
+
Test whether a destructive shell command would be allowed:
|
|
124
153
|
|
|
125
154
|
```bash
|
|
126
|
-
weave-antigravity test
|
|
155
|
+
weave-antigravity test run_command --input='{"CommandLine":"rm -rf ~/.config/gcloud"}'
|
|
127
156
|
```
|
|
128
157
|
|
|
129
158
|
Test a file write to /etc/:
|
|
130
159
|
|
|
131
160
|
```bash
|
|
132
|
-
weave-antigravity test
|
|
161
|
+
weave-antigravity test write_to_file --input='{"TargetFile":"/etc/passwd","CodeContent":"..."}'
|
|
133
162
|
```
|
|
134
163
|
|
|
135
164
|
Test a fetch to a denied domain:
|
|
136
165
|
|
|
137
166
|
```bash
|
|
138
|
-
weave-antigravity test
|
|
167
|
+
weave-antigravity test read_url_content --input='{"Url":"https://evil.example.com/exfil"}'
|
|
139
168
|
```
|
|
140
169
|
|
|
141
170
|
---
|
|
@@ -156,20 +185,17 @@ Then a missing or broken policy blocks the call.
|
|
|
156
185
|
|
|
157
186
|
## What gets installed
|
|
158
187
|
|
|
159
|
-
`weave-antigravity init` adds
|
|
188
|
+
`weave-antigravity init` adds a named hook to `~/.gemini/config/hooks.json` (or `.agents/hooks.json` with `--workspace`), the format [Antigravity reads](https://antigravity.google/docs/hooks):
|
|
160
189
|
|
|
161
190
|
```json
|
|
162
191
|
{
|
|
163
|
-
"
|
|
192
|
+
"weave-ward": {
|
|
193
|
+
"enabled": true,
|
|
164
194
|
"PreToolUse": [
|
|
165
195
|
{
|
|
166
196
|
"matcher": "*",
|
|
167
197
|
"hooks": [
|
|
168
|
-
{
|
|
169
|
-
"type": "command",
|
|
170
|
-
"command": "weave-antigravity hook pre-tool-use # WEAVE_WARD_HOOK",
|
|
171
|
-
"timeout": 5
|
|
172
|
-
}
|
|
198
|
+
{ "type": "command", "command": "weave-antigravity hook pre-tool-use", "timeout": 5 }
|
|
173
199
|
]
|
|
174
200
|
}
|
|
175
201
|
]
|
|
@@ -177,11 +203,9 @@ Then a missing or broken policy blocks the call.
|
|
|
177
203
|
}
|
|
178
204
|
```
|
|
179
205
|
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
A backup of your existing `settings.json` is written to `settings.json.weave-backup` before any modification.
|
|
206
|
+
Other named hooks in the file, including `weave-mund`, are left untouched. A backup is written to `hooks.json.weave-backup` before any change.
|
|
183
207
|
|
|
184
|
-
|
|
208
|
+
Antigravity sends the hook `{ "toolCall": { "name", "args" }, "workspacePaths", … }` on stdin, and the hook replies with `{ "decision": "deny" | "ask", "reason" }`, or prints nothing to leave the call to Antigravity.
|
|
185
209
|
|
|
186
210
|
---
|
|
187
211
|
|
|
@@ -244,9 +268,9 @@ With this loaded, the Antigravity agent can read/write inside `~/projects` but c
|
|
|
244
268
|
|
|
245
269
|
v0.1 (this release):
|
|
246
270
|
- ✅ PreToolUse hook for CLI / desktop
|
|
247
|
-
- ✅
|
|
248
|
-
- ✅
|
|
249
|
-
- ✅
|
|
271
|
+
- ✅ PreToolUse hook (0.2.0: rebuilt on the documented hooks.json / payload / decision contract)
|
|
272
|
+
- ✅ Mapping for Antigravity's documented built-in tools
|
|
273
|
+
- ✅ `run_command` heuristic scan including GCP credential paths
|
|
250
274
|
|
|
251
275
|
v0.2 planned:
|
|
252
276
|
- [ ] Managed Agents SDK wrapper for programmatic Gemini API calls
|
package/dist/cli.js
CHANGED
|
@@ -9,10 +9,11 @@
|
|
|
9
9
|
* weave-antigravity hook <event> [--fail-closed] Hook handler (called by agy)
|
|
10
10
|
* weave-antigravity help
|
|
11
11
|
*/
|
|
12
|
-
import {
|
|
12
|
+
import { readFileSync } from 'node:fs';
|
|
13
13
|
import { resolve } from 'node:path';
|
|
14
|
-
import { installHook, removeHook,
|
|
14
|
+
import { installHook, removeHook, isHookInstalled, isLegacyHookInstalled, WARD_HOOK_NAME, antigravitySettingsPath, userWardPath, } from './config.js';
|
|
15
15
|
import { resolveWardForCwd, evaluateCall, runPreToolUseHook } from './hook.js';
|
|
16
|
+
import { installMundHooks, removeMundHooks, hooksJsonPath, runMundHook, mundCommand, HOOK_NAME } from './mund.js';
|
|
16
17
|
// ─── ANSI colors ───────────────────────────────────────────────
|
|
17
18
|
const tty = process.stdout.isTTY && !process.env.NO_COLOR;
|
|
18
19
|
const c = {
|
|
@@ -37,16 +38,19 @@ function help() {
|
|
|
37
38
|
banner();
|
|
38
39
|
console.error(`${c.bold}Usage:${c.reset} weave-antigravity <command> [options]\n`);
|
|
39
40
|
console.error(`${c.bold}Commands:${c.reset}`);
|
|
40
|
-
console.error(` ${c.cyan}init${c.reset} ${c.gray}[--matcher=X] [--fail-closed]${c.reset}
|
|
41
|
-
console.error(` ${c.cyan}disable${c.reset}
|
|
41
|
+
console.error(` ${c.cyan}init${c.reset} ${c.gray}[--matcher=X] [--fail-closed] [--workspace=DIR]${c.reset} Install the WARD hook (~/.gemini/config/hooks.json)`);
|
|
42
|
+
console.error(` ${c.cyan}disable${c.reset} ${c.gray}[--workspace=DIR]${c.reset} Remove the WARD hook`);
|
|
42
43
|
console.error(` ${c.cyan}status${c.reset} Show hook installation + active WARD policy`);
|
|
43
44
|
console.error(` ${c.cyan}test${c.reset} ${c.gray}<tool> [--input=JSON]${c.reset} Dry-run a tool call against your WARD.md`);
|
|
45
|
+
console.error(` ${c.cyan}mund install${c.reset} ${c.gray}[--workspace=DIR]${c.reset} Install Mund pre-install hooks (~/.gemini/config/hooks.json)`);
|
|
46
|
+
console.error(` ${c.cyan}mund uninstall${c.reset} ${c.gray}[--workspace=DIR]${c.reset} Remove the Mund hooks`);
|
|
47
|
+
console.error(` ${c.cyan}mund status${c.reset} Show where Mund hooks live and how Mund is resolved`);
|
|
44
48
|
console.error(` ${c.cyan}hook${c.reset} ${c.gray}<event>${c.reset} Internal: called by Antigravity as a hook`);
|
|
45
49
|
console.error(` ${c.cyan}help${c.reset} Show this message\n`);
|
|
46
50
|
console.error(`${c.bold}Examples:${c.reset}`);
|
|
47
51
|
console.error(` ${c.gray}$${c.reset} weave-antigravity init`);
|
|
48
52
|
console.error(` ${c.gray}$${c.reset} weave-antigravity status`);
|
|
49
|
-
console.error(` ${c.gray}$${c.reset} weave-antigravity test
|
|
53
|
+
console.error(` ${c.gray}$${c.reset} weave-antigravity test run_command --input='{"CommandLine":"rm -rf ~/.gcloud"}'`);
|
|
50
54
|
console.error(` ${c.gray}$${c.reset} weave-antigravity disable\n`);
|
|
51
55
|
console.error(`${c.gray}Docs: https://github.com/Tyox-all/Weave_Protocol/tree/main/adapter-antigravity${c.reset}\n`);
|
|
52
56
|
}
|
|
@@ -68,15 +72,18 @@ function runInit(args) {
|
|
|
68
72
|
banner();
|
|
69
73
|
const matcher = parseFlag(args, 'matcher') || undefined;
|
|
70
74
|
const failClosed = hasFlag(args, 'fail-closed');
|
|
71
|
-
const
|
|
72
|
-
const wasInstalled = isHookInstalled(
|
|
73
|
-
installHook({
|
|
75
|
+
const workspace = parseFlag(args, 'workspace') || undefined;
|
|
76
|
+
const wasInstalled = isHookInstalled({ workspace });
|
|
77
|
+
const { path, migrated } = installHook({
|
|
74
78
|
toolMatcher: matcher,
|
|
75
79
|
failClosed,
|
|
76
80
|
timeoutSeconds: 5,
|
|
81
|
+
workspace,
|
|
77
82
|
});
|
|
78
83
|
const verb = wasInstalled ? 'Updated' : 'Installed';
|
|
79
|
-
console.error(`${c.green}✓${c.reset} ${verb} WARD hook in ${c.cyan}${
|
|
84
|
+
console.error(`${c.green}✓${c.reset} ${verb} WARD hook "${WARD_HOOK_NAME}" in ${c.cyan}${path}${c.reset}`);
|
|
85
|
+
if (migrated)
|
|
86
|
+
console.error(` ${c.yellow}Migrated:${c.reset} removed ${migrated} old entry from ${antigravitySettingsPath()} (Antigravity never read hooks from there)`);
|
|
80
87
|
console.error(` ${c.gray}matcher:${c.reset} ${matcher || '*'}`);
|
|
81
88
|
console.error(` ${c.gray}fail mode:${c.reset} ${failClosed ? c.red + 'closed' + c.reset : c.green + 'open' + c.reset}`);
|
|
82
89
|
console.error('');
|
|
@@ -88,30 +95,28 @@ function runInit(args) {
|
|
|
88
95
|
return 0;
|
|
89
96
|
}
|
|
90
97
|
// ─── disable ───────────────────────────────────────────────────
|
|
91
|
-
function runDisable() {
|
|
98
|
+
function runDisable(args = []) {
|
|
92
99
|
banner();
|
|
93
|
-
const result = removeHook();
|
|
100
|
+
const result = removeHook({ workspace: parseFlag(args, 'workspace') || undefined });
|
|
94
101
|
if (result.removed === 0) {
|
|
95
|
-
console.error(`${c.yellow}⚠${c.reset} No WARD hooks found in ${
|
|
102
|
+
console.error(`${c.yellow}⚠${c.reset} No WARD hooks found in ${result.path}.`);
|
|
96
103
|
return 0;
|
|
97
104
|
}
|
|
98
|
-
console.error(`${c.green}✓${c.reset} Removed ${result.removed} WARD hook
|
|
105
|
+
console.error(`${c.green}✓${c.reset} Removed ${result.removed} WARD hook entr${result.removed === 1 ? 'y' : 'ies'} (${c.cyan}${result.path}${c.reset})`);
|
|
99
106
|
console.error(`${c.gray} (your other hooks were not touched)${c.reset}`);
|
|
100
107
|
return 0;
|
|
101
108
|
}
|
|
102
109
|
// ─── status ────────────────────────────────────────────────────
|
|
103
110
|
function runStatus() {
|
|
104
111
|
banner();
|
|
105
|
-
const
|
|
106
|
-
const
|
|
107
|
-
console.error(`${c.bold}Antigravity
|
|
112
|
+
const globalPath = hooksJsonPath();
|
|
113
|
+
const workspacePath = hooksJsonPath({ workspace: process.cwd() });
|
|
114
|
+
console.error(`${c.bold}Antigravity hooks${c.reset}`);
|
|
108
115
|
console.error(`${c.gray}─${c.reset}`.repeat(60));
|
|
109
|
-
console.error(` ${c.gray}
|
|
110
|
-
console.error(` ${c.gray}
|
|
111
|
-
if (
|
|
112
|
-
|
|
113
|
-
const installed = isHookInstalled(settings);
|
|
114
|
-
console.error(` ${c.gray}WARD hook:${c.reset} ${installed ? c.green + 'installed' + c.reset : c.yellow + 'not installed' + c.reset}`);
|
|
116
|
+
console.error(` ${c.gray}Global:${c.reset} ${c.cyan}${globalPath}${c.reset} ${isHookInstalled() ? c.green + 'WARD hook installed' + c.reset : c.yellow + 'WARD hook not installed' + c.reset}`);
|
|
117
|
+
console.error(` ${c.gray}Workspace:${c.reset} ${c.cyan}${workspacePath}${c.reset} ${isHookInstalled({ workspace: process.cwd() }) ? c.green + 'WARD hook installed' + c.reset : c.gray + '-' + c.reset}`);
|
|
118
|
+
if (isLegacyHookInstalled()) {
|
|
119
|
+
console.error(` ${c.yellow}⚠ A pre-0.2 WARD entry is still in ${antigravitySettingsPath()}; Antigravity doesn't read it. Run ${c.cyan}weave-antigravity init${c.yellow} to migrate.${c.reset}`);
|
|
115
120
|
}
|
|
116
121
|
console.error('');
|
|
117
122
|
console.error(`${c.bold}Active WARD policy${c.reset}`);
|
|
@@ -146,7 +151,7 @@ function runStatus() {
|
|
|
146
151
|
function runTest(args) {
|
|
147
152
|
const tool = args[0];
|
|
148
153
|
if (!tool) {
|
|
149
|
-
console.error(`${c.red}✗${c.reset} Usage: weave-antigravity test <tool> [--input='{"
|
|
154
|
+
console.error(`${c.red}✗${c.reset} Usage: weave-antigravity test <tool> [--input='{"TargetFile":"..."}']`);
|
|
150
155
|
return 2;
|
|
151
156
|
}
|
|
152
157
|
banner();
|
|
@@ -195,7 +200,7 @@ async function main() {
|
|
|
195
200
|
break;
|
|
196
201
|
case 'disable':
|
|
197
202
|
case 'uninstall':
|
|
198
|
-
code = runDisable();
|
|
203
|
+
code = runDisable(rest);
|
|
199
204
|
break;
|
|
200
205
|
case 'status':
|
|
201
206
|
code = runStatus();
|
|
@@ -213,6 +218,41 @@ async function main() {
|
|
|
213
218
|
process.stdout.write('{}');
|
|
214
219
|
process.exit(0);
|
|
215
220
|
}
|
|
221
|
+
case 'mund': {
|
|
222
|
+
const sub = rest[0];
|
|
223
|
+
const ws = rest.find((a) => a.startsWith('--workspace='))?.slice('--workspace='.length);
|
|
224
|
+
if (sub === 'install') {
|
|
225
|
+
const path = installMundHooks({ workspace: ws });
|
|
226
|
+
const m = mundCommand();
|
|
227
|
+
console.error(`${c.green}✓${c.reset} Installed hook "${HOOK_NAME}" (SessionStart + PreToolUse) in ${c.cyan}${path}${c.reset}`);
|
|
228
|
+
console.error(` Mund runs via: ${c.gray}${[m.cmd, ...m.args].join(' ')}${c.reset}`);
|
|
229
|
+
console.error(` Live MCP checks start only global servers you configured. Disable with ${c.gray}WEAVE_MUND_LIVE=0${c.reset}.`);
|
|
230
|
+
break;
|
|
231
|
+
}
|
|
232
|
+
if (sub === 'uninstall') {
|
|
233
|
+
console.error(removeMundHooks({ workspace: ws }) ? `${c.green}✓${c.reset} Removed "${HOOK_NAME}" from ${hooksJsonPath({ workspace: ws })}` : `${c.yellow}⚠${c.reset} No Mund hook found`);
|
|
234
|
+
break;
|
|
235
|
+
}
|
|
236
|
+
if (sub === 'status') {
|
|
237
|
+
const path = hooksJsonPath({ workspace: ws });
|
|
238
|
+
let installed = false;
|
|
239
|
+
try {
|
|
240
|
+
installed = HOOK_NAME in JSON.parse(readFileSync(path, 'utf8'));
|
|
241
|
+
}
|
|
242
|
+
catch { /* none */ }
|
|
243
|
+
const m = mundCommand();
|
|
244
|
+
console.error(`Mund hooks: ${installed ? `${c.green}installed${c.reset}` : `${c.gray}not installed${c.reset}`} (${path})`);
|
|
245
|
+
console.error(`Mund runs via: ${[m.cmd, ...m.args].join(' ')}`);
|
|
246
|
+
break;
|
|
247
|
+
}
|
|
248
|
+
if (sub === 'session-start' || sub === 'pre-tool-use') {
|
|
249
|
+
await runMundHook(sub);
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
console.error(`${c.red}Unknown mund subcommand: ${sub ?? '(none)'}${c.reset} (install | uninstall | status)`);
|
|
253
|
+
code = 2;
|
|
254
|
+
break;
|
|
255
|
+
}
|
|
216
256
|
case 'help':
|
|
217
257
|
case '--help':
|
|
218
258
|
case '-h':
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -39,10 +39,36 @@ export interface InstallOptions {
|
|
|
39
39
|
/** Block on error or fail-open? Default: fail-open (false). */
|
|
40
40
|
failClosed?: boolean;
|
|
41
41
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
/**
|
|
43
|
+
* Antigravity reads hooks from ~/.gemini/config/hooks.json (global) or
|
|
44
|
+
* <workspace>/.agents/hooks.json, as named hooks:
|
|
45
|
+
* { "<name>": { "enabled": true, "PreToolUse": [{ "matcher", "hooks": [...] }] } }
|
|
46
|
+
* (https://antigravity.google/docs/hooks)
|
|
47
|
+
*/
|
|
48
|
+
export declare function hooksJsonPath(opts?: {
|
|
49
|
+
workspace?: string;
|
|
50
|
+
}): string;
|
|
51
|
+
export declare function readHooksJson(path: string): Record<string, unknown>;
|
|
52
|
+
export declare function writeHooksJson(path: string, config: Record<string, unknown>): void;
|
|
53
|
+
/** Name of the WARD hook inside hooks.json. */
|
|
54
|
+
export declare const WARD_HOOK_NAME = "weave-ward";
|
|
55
|
+
export declare function isHookInstalled(opts?: {
|
|
56
|
+
workspace?: string;
|
|
57
|
+
}): boolean;
|
|
58
|
+
/** True if a pre-0.2 WARD entry is still sitting in the old settings.json. */
|
|
59
|
+
export declare function isLegacyHookInstalled(): boolean;
|
|
60
|
+
/** Remove pre-0.2 WARD entries from ~/.gemini/antigravity-cli/settings.json. */
|
|
61
|
+
export declare function removeLegacyHook(): number;
|
|
62
|
+
export declare function installHook(opts?: InstallOptions & {
|
|
63
|
+
workspace?: string;
|
|
64
|
+
}): {
|
|
65
|
+
path: string;
|
|
66
|
+
migrated: number;
|
|
67
|
+
};
|
|
68
|
+
export declare function removeHook(opts?: {
|
|
69
|
+
workspace?: string;
|
|
70
|
+
}): {
|
|
45
71
|
removed: number;
|
|
46
|
-
|
|
72
|
+
path: string;
|
|
47
73
|
};
|
|
48
74
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAYH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAMhE,wBAAgB,oBAAoB,IAAI,MAAM,CAI7C;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAMD,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE;QACN,UAAU,CAAC,EAAE,6BAA6B,EAAE,CAAC;QAC7C,WAAW,CAAC,EAAE,6BAA6B,EAAE,CAAC;QAC9C,IAAI,CAAC,EAAE,6BAA6B,EAAE,CAAC;QACvC,YAAY,CAAC,EAAE,6BAA6B,EAAE,CAAC;QAC/C,CAAC,KAAK,EAAE,MAAM,GAAG,6BAA6B,EAAE,GAAG,SAAS,CAAC;KAC9D,CAAC;IACF,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,wBAAgB,YAAY,IAAI,mBAAmB,CAYlD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAcjE;AAMD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,sBAAsB,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC7B,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAYH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAMhE,wBAAgB,oBAAoB,IAAI,MAAM,CAI7C;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAMD,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE;QACN,UAAU,CAAC,EAAE,6BAA6B,EAAE,CAAC;QAC7C,WAAW,CAAC,EAAE,6BAA6B,EAAE,CAAC;QAC9C,IAAI,CAAC,EAAE,6BAA6B,EAAE,CAAC;QACvC,YAAY,CAAC,EAAE,6BAA6B,EAAE,CAAC;QAC/C,CAAC,KAAK,EAAE,MAAM,GAAG,6BAA6B,EAAE,GAAG,SAAS,CAAC;KAC9D,CAAC;IACF,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,wBAAgB,YAAY,IAAI,mBAAmB,CAYlD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAcjE;AAMD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,sBAAsB,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC7B,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAMD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CAMvE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAOnE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAMlF;AAED,+CAA+C;AAC/C,eAAO,MAAM,cAAc,eAAe,CAAC;AAE3C,wBAAgB,eAAe,CAAC,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,OAAO,CAE1E;AAED,8EAA8E;AAC9E,wBAAgB,qBAAqB,IAAI,OAAO,CAQ/C;AAED,gFAAgF;AAChF,wBAAgB,gBAAgB,IAAI,MAAM,CAWzC;AAED,wBAAgB,WAAW,CAAC,IAAI,GAAE,cAAc,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAgBlH;AAED,wBAAgB,UAAU,CAAC,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAW/F"}
|
package/dist/config.js
CHANGED
|
@@ -57,46 +57,96 @@ export function writeSettings(settings) {
|
|
|
57
57
|
* without touching hooks the user added manually.
|
|
58
58
|
*/
|
|
59
59
|
export const WARD_HOOK_MARKER = '# WEAVE_WARD_HOOK';
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
60
|
+
// ============================================================================
|
|
61
|
+
// hooks.json (Antigravity's real hook config)
|
|
62
|
+
// ============================================================================
|
|
63
|
+
/**
|
|
64
|
+
* Antigravity reads hooks from ~/.gemini/config/hooks.json (global) or
|
|
65
|
+
* <workspace>/.agents/hooks.json, as named hooks:
|
|
66
|
+
* { "<name>": { "enabled": true, "PreToolUse": [{ "matcher", "hooks": [...] }] } }
|
|
67
|
+
* (https://antigravity.google/docs/hooks)
|
|
68
|
+
*/
|
|
69
|
+
export function hooksJsonPath(opts = {}) {
|
|
70
|
+
if (opts.workspace)
|
|
71
|
+
return join(resolve(opts.workspace), '.agents', 'hooks.json');
|
|
72
|
+
const base = process.env.ANTIGRAVITY_GLOBAL_CONFIG_DIR
|
|
73
|
+
? resolve(process.env.ANTIGRAVITY_GLOBAL_CONFIG_DIR)
|
|
74
|
+
: join(homedir(), '.gemini', 'config');
|
|
75
|
+
return join(base, 'hooks.json');
|
|
63
76
|
}
|
|
64
|
-
export function
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
{
|
|
74
|
-
type: 'command',
|
|
75
|
-
command,
|
|
76
|
-
timeout: opts.timeoutSeconds ?? 5,
|
|
77
|
-
},
|
|
78
|
-
],
|
|
79
|
-
};
|
|
80
|
-
if (!settings.hooks)
|
|
81
|
-
settings.hooks = {};
|
|
82
|
-
if (!settings.hooks.PreToolUse)
|
|
83
|
-
settings.hooks.PreToolUse = [];
|
|
84
|
-
// Remove any existing WARD entries first (idempotent)
|
|
85
|
-
settings.hooks.PreToolUse = settings.hooks.PreToolUse.filter((e) => !e.hooks?.some((h) => h.command?.includes(WARD_HOOK_MARKER) ?? false));
|
|
86
|
-
// Add our new entry
|
|
87
|
-
settings.hooks.PreToolUse.push(entry);
|
|
88
|
-
writeSettings(settings);
|
|
89
|
-
return settings;
|
|
77
|
+
export function readHooksJson(path) {
|
|
78
|
+
if (!existsSync(path))
|
|
79
|
+
return {};
|
|
80
|
+
try {
|
|
81
|
+
return JSON.parse(readFileSync(path, 'utf8'));
|
|
82
|
+
}
|
|
83
|
+
catch (err) {
|
|
84
|
+
throw new Error(`Failed to parse ${path}; fix the JSON or move it aside. ${err instanceof Error ? err.message : String(err)}`);
|
|
85
|
+
}
|
|
90
86
|
}
|
|
91
|
-
export function
|
|
87
|
+
export function writeHooksJson(path, config) {
|
|
88
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
89
|
+
if (existsSync(path))
|
|
90
|
+
copyFileSync(path, `${path}.weave-backup`);
|
|
91
|
+
const tmp = `${path}.tmp`;
|
|
92
|
+
writeFileSync(tmp, JSON.stringify(config, null, 2) + '\n', 'utf8');
|
|
93
|
+
renameSync(tmp, path);
|
|
94
|
+
}
|
|
95
|
+
/** Name of the WARD hook inside hooks.json. */
|
|
96
|
+
export const WARD_HOOK_NAME = 'weave-ward';
|
|
97
|
+
export function isHookInstalled(opts = {}) {
|
|
98
|
+
return WARD_HOOK_NAME in readHooksJson(hooksJsonPath(opts));
|
|
99
|
+
}
|
|
100
|
+
/** True if a pre-0.2 WARD entry is still sitting in the old settings.json. */
|
|
101
|
+
export function isLegacyHookInstalled() {
|
|
102
|
+
try {
|
|
103
|
+
return (readSettings().hooks?.PreToolUse ?? []).some((e) => e.hooks?.some((h) => h.command?.includes(WARD_HOOK_MARKER) ?? false));
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/** Remove pre-0.2 WARD entries from ~/.gemini/antigravity-cli/settings.json. */
|
|
110
|
+
export function removeLegacyHook() {
|
|
111
|
+
if (!existsSync(antigravitySettingsPath()))
|
|
112
|
+
return 0;
|
|
92
113
|
const settings = readSettings();
|
|
93
114
|
if (!settings.hooks?.PreToolUse)
|
|
94
|
-
return
|
|
115
|
+
return 0;
|
|
95
116
|
const before = settings.hooks.PreToolUse.length;
|
|
96
117
|
settings.hooks.PreToolUse = settings.hooks.PreToolUse.filter((e) => !e.hooks?.some((h) => h.command?.includes(WARD_HOOK_MARKER) ?? false));
|
|
97
118
|
const removed = before - settings.hooks.PreToolUse.length;
|
|
98
119
|
if (removed > 0)
|
|
99
120
|
writeSettings(settings);
|
|
100
|
-
return
|
|
121
|
+
return removed;
|
|
122
|
+
}
|
|
123
|
+
export function installHook(opts = {}) {
|
|
124
|
+
const path = hooksJsonPath(opts);
|
|
125
|
+
const config = readHooksJson(path);
|
|
126
|
+
const binary = opts.binary || 'weave-antigravity';
|
|
127
|
+
const failFlag = opts.failClosed ? ' --fail-closed' : '';
|
|
128
|
+
config[WARD_HOOK_NAME] = {
|
|
129
|
+
enabled: true,
|
|
130
|
+
PreToolUse: [
|
|
131
|
+
{
|
|
132
|
+
matcher: opts.toolMatcher || '*',
|
|
133
|
+
hooks: [{ type: 'command', command: `${binary} hook pre-tool-use${failFlag}`, timeout: opts.timeoutSeconds ?? 5 }],
|
|
134
|
+
},
|
|
135
|
+
],
|
|
136
|
+
};
|
|
137
|
+
writeHooksJson(path, config);
|
|
138
|
+
return { path, migrated: removeLegacyHook() };
|
|
139
|
+
}
|
|
140
|
+
export function removeHook(opts = {}) {
|
|
141
|
+
const path = hooksJsonPath(opts);
|
|
142
|
+
const config = readHooksJson(path);
|
|
143
|
+
let removed = 0;
|
|
144
|
+
if (WARD_HOOK_NAME in config) {
|
|
145
|
+
delete config[WARD_HOOK_NAME];
|
|
146
|
+
writeHooksJson(path, config);
|
|
147
|
+
removed++;
|
|
148
|
+
}
|
|
149
|
+
removed += removeLegacyHook();
|
|
150
|
+
return { removed, path };
|
|
101
151
|
}
|
|
102
152
|
//# sourceMappingURL=config.js.map
|