@weave_protocol/adapter-antigravity 0.1.0 → 0.2.1
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 +75 -47
- package/dist/cli.js +65 -25
- 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 +20 -6
- package/dist/hook.d.ts.map +1 -1
- package/dist/hook.js +51 -34
- package/dist/hook.js.map +1 -1
- package/dist/mund.d.ts +95 -0
- package/dist/mund.d.ts.map +1 -0
- package/dist/mund.js +225 -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 +23 -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,44 @@ 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
|
-
| `
|
|
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
|
+
| `read_file` (agy CLI) | `file_read` | `Path` (workspace-relative paths resolved) | `read` |
|
|
115
|
+
| `write_file` / `edit_file` (agy CLI) | `file_write` | `Path` (workspace-relative paths resolved) | `write` |
|
|
116
|
+
| `list_dir` / `find_by_name` | `file_list` | `DirectoryPath` / `SearchDirectory` | `list` |
|
|
117
|
+
| `read_url_content` | `http_request` | `Url` | — |
|
|
118
|
+
| `search_web` | `web_search` | — | — |
|
|
119
|
+
| `invoke_subagent` / `define_subagent` | `subagent` | — | — |
|
|
120
|
+
| `send_message` / `manage_task` / `schedule` / `generate_image` | `agent_message` / `task_control` / `schedule` / `generate_image` | — | — |
|
|
93
121
|
|
|
94
|
-
|
|
122
|
+
The `agy` CLI (1.4.x) uses its own file tools, `read_file`, `write_file` and `edit_file`; their names and arguments were observed in a live session, not taken from the docs. Allowed calls produce no output: `agy` treats a bare `{}` as a deny.
|
|
95
123
|
|
|
96
|
-
|
|
124
|
+
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.
|
|
125
|
+
|
|
126
|
+
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/`.
|
|
127
|
+
|
|
128
|
+
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
129
|
|
|
98
130
|
---
|
|
99
131
|
|
|
100
132
|
## Commands
|
|
101
133
|
|
|
102
134
|
```bash
|
|
103
|
-
weave-antigravity init [--matcher=X] [--fail-closed]
|
|
104
|
-
Install the WARD
|
|
105
|
-
|
|
106
|
-
|
|
135
|
+
weave-antigravity init [--matcher=X] [--fail-closed] [--workspace=DIR]
|
|
136
|
+
Install the WARD hook as "weave-ward" in ~/.gemini/config/hooks.json
|
|
137
|
+
(or DIR/.agents/hooks.json). Also removes a pre-0.2 entry from
|
|
138
|
+
~/.gemini/antigravity-cli/settings.json.
|
|
139
|
+
--matcher=REGEX Restrict to specific tools (default: all), e.g. run_command|write_to_file
|
|
140
|
+
--fail-closed Deny on policy errors (default: fail-open)
|
|
107
141
|
|
|
108
|
-
weave-antigravity disable
|
|
109
|
-
Remove the WARD hook
|
|
110
|
-
(your other hooks are not touched)
|
|
142
|
+
weave-antigravity disable [--workspace=DIR]
|
|
143
|
+
Remove the WARD hook (your other hooks are not touched)
|
|
111
144
|
|
|
112
145
|
weave-antigravity status
|
|
113
146
|
Show hook installation state + active WARD policy
|
|
@@ -120,22 +153,22 @@ weave-antigravity help
|
|
|
120
153
|
|
|
121
154
|
### Examples
|
|
122
155
|
|
|
123
|
-
Test whether a destructive
|
|
156
|
+
Test whether a destructive shell command would be allowed:
|
|
124
157
|
|
|
125
158
|
```bash
|
|
126
|
-
weave-antigravity test
|
|
159
|
+
weave-antigravity test run_command --input='{"CommandLine":"rm -rf ~/.config/gcloud"}'
|
|
127
160
|
```
|
|
128
161
|
|
|
129
162
|
Test a file write to /etc/:
|
|
130
163
|
|
|
131
164
|
```bash
|
|
132
|
-
weave-antigravity test
|
|
165
|
+
weave-antigravity test write_to_file --input='{"TargetFile":"/etc/passwd","CodeContent":"..."}'
|
|
133
166
|
```
|
|
134
167
|
|
|
135
168
|
Test a fetch to a denied domain:
|
|
136
169
|
|
|
137
170
|
```bash
|
|
138
|
-
weave-antigravity test
|
|
171
|
+
weave-antigravity test read_url_content --input='{"Url":"https://evil.example.com/exfil"}'
|
|
139
172
|
```
|
|
140
173
|
|
|
141
174
|
---
|
|
@@ -156,20 +189,17 @@ Then a missing or broken policy blocks the call.
|
|
|
156
189
|
|
|
157
190
|
## What gets installed
|
|
158
191
|
|
|
159
|
-
`weave-antigravity init` adds
|
|
192
|
+
`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
193
|
|
|
161
194
|
```json
|
|
162
195
|
{
|
|
163
|
-
"
|
|
196
|
+
"weave-ward": {
|
|
197
|
+
"enabled": true,
|
|
164
198
|
"PreToolUse": [
|
|
165
199
|
{
|
|
166
200
|
"matcher": "*",
|
|
167
201
|
"hooks": [
|
|
168
|
-
{
|
|
169
|
-
"type": "command",
|
|
170
|
-
"command": "weave-antigravity hook pre-tool-use # WEAVE_WARD_HOOK",
|
|
171
|
-
"timeout": 5
|
|
172
|
-
}
|
|
202
|
+
{ "type": "command", "command": "weave-antigravity hook pre-tool-use", "timeout": 5 }
|
|
173
203
|
]
|
|
174
204
|
}
|
|
175
205
|
]
|
|
@@ -177,11 +207,9 @@ Then a missing or broken policy blocks the call.
|
|
|
177
207
|
}
|
|
178
208
|
```
|
|
179
209
|
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
A backup of your existing `settings.json` is written to `settings.json.weave-backup` before any modification.
|
|
210
|
+
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
211
|
|
|
184
|
-
|
|
212
|
+
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
213
|
|
|
186
214
|
---
|
|
187
215
|
|
|
@@ -244,9 +272,9 @@ With this loaded, the Antigravity agent can read/write inside `~/projects` but c
|
|
|
244
272
|
|
|
245
273
|
v0.1 (this release):
|
|
246
274
|
- ✅ PreToolUse hook for CLI / desktop
|
|
247
|
-
- ✅
|
|
248
|
-
- ✅
|
|
249
|
-
- ✅
|
|
275
|
+
- ✅ PreToolUse hook (0.2.0: rebuilt on the documented hooks.json / payload / decision contract)
|
|
276
|
+
- ✅ Mapping for Antigravity's documented built-in tools
|
|
277
|
+
- ✅ `run_command` heuristic scan including GCP credential paths
|
|
250
278
|
|
|
251
279
|
v0.2 planned:
|
|
252
280
|
- [ ] 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();
|
|
@@ -210,9 +215,44 @@ async function main() {
|
|
|
210
215
|
await runPreToolUseHook(failClosed);
|
|
211
216
|
return;
|
|
212
217
|
}
|
|
213
|
-
|
|
218
|
+
// Print nothing: agy 1.4.x treats a bare `{}` as a deny.
|
|
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":";AACA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAgB,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,WAAW,EACX,UAAU,EACV,YAAY,EACZ,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE/E,kEAAkE;AAClE,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC1D,MAAM,CAAC,GAAG;IACR,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3B,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;IAC1B,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;IACzB,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC1B,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC7B,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC3B,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC3B,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;CAC5B,CAAC;AAEF,SAAS,MAAM;IACb,OAAO,CAAC,KAAK,CAAC;EACd,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,yBAAyB,CAAC,CAAC,KAAK;EAC/C,CAAC,CAAC,IAAI,kEAAkE,CAAC,CAAC,KAAK;CAChF,CAAC,CAAC;AACH,CAAC;AAED,kEAAkE;AAClE,SAAS,IAAI;IACX,MAAM,EAAE,CAAC;IACT,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,KAAK,0CAA0C,CAAC,CAAC;IACnF,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,gCAAgC,CAAC,CAAC,KAAK,wCAAwC,CAAC,CAAC;IAClI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,kDAAkD,CAAC,CAAC;IAC9F,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,KAAK,0EAA0E,CAAC,CAAC;IACrH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,wBAAwB,CAAC,CAAC,KAAK,mDAAmD,CAAC,CAAC;IACrI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,kEAAkE,CAAC,CAAC;IACtI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,oDAAoD,CAAC,CAAC;IAC7F,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,yBAAyB,CAAC,CAAC;IAC/D,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,2BAA2B,CAAC,CAAC;IACjE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,uEAAuE,CAAC,CAAC;IAC7G,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,8BAA8B,CAAC,CAAC;IACpE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,iFAAiF,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;AACvH,CAAC;AAED,kEAAkE;AAClE,SAAS,SAAS,CAAC,IAAc,EAAE,IAAY;IAC7C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,GAAG,CAAC;YAAE,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,OAAO,CAAC,IAAc,EAAE,IAAY;IAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,kEAAkE;AAClE,SAAS,OAAO,CAAC,IAAc;IAC7B,MAAM,EAAE,CAAC;IACT,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,SAAS,CAAC;IACxD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAE/C,WAAW,CAAC;QACV,WAAW,EAAE,OAAO;QACpB,UAAU;QACV,cAAc,EAAE,CAAC;KAClB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;IACpD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,iBAAiB,CAAC,CAAC,IAAI,GAAG,uBAAuB,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC5G,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,KAAK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;IACjE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,KAAK,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACzH,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACvB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,gCAAgC,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,KAAK,qBAAqB,CAAC,CAAC;IAC7J,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,KAAK,gEAAgE,CAAC,CAAC;IAClI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,2BAA2B,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC;IACnG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kEAAkE;AAClE,SAAS,UAAU;IACjB,MAAM,EAAE,CAAC;IACT,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,4BAA4B,uBAAuB,EAAE,GAAG,CAAC,CAAC;QAC9F,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,YAAY,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC,IAAI,GAAG,uBAAuB,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACtI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,wCAAwC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC1E,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kEAAkE;AAClE,SAAS,SAAS;IAChB,MAAM,EAAE,CAAC;IACT,MAAM,YAAY,GAAG,uBAAuB,EAAE,CAAC;IAC/C,MAAM,MAAM,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IAExC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,yBAAyB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3D,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,GAAG,oBAAoB,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACnG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAE9H,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC5C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,KAAK,SAAS,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,eAAe,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9I,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACvD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACzD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe;gBAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/I,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;YAC/E,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACjI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;YACzF,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,YAAY,EAAE,IAAI,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/F,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3F,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,KAAK,aAAa,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,GAAG,WAAW,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/G,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,GAAG,QAAQ,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7G,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,yBAAyB,CAAC,CAAC,KAAK,IAAI,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChH,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kEAAkE;AAClE,SAAS,OAAO,CAAC,IAAc;IAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,uEAAuE,CAAC,CAAC;QAC1G,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,EAAE,CAAC;IAET,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,SAAS,GAA4B,EAAE,CAAC;IAC5C,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,6BAA6B,CAAC,CAAC;YAChE,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,uDAAuD,CAAC,CAAC;QAC7F,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9H,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG;QACf,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,IAAI,EAAE,CAAC,CAAC,GAAG;QACX,gBAAgB,EAAE,CAAC,CAAC,MAAM;KAClB,CAAC;IACX,MAAM,OAAO,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC;IAEjE,OAAO,CAAC,KAAK,CAAC,aAAa,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9H,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,kEAAkE;AAClE,KAAK,UAAU,IAAI;IACjB,MAAM,CAAC,EAAE,AAAD,EAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACxC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,CAAC;QACH,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,MAAM;gBACT,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,SAAS,CAAC;YACf,KAAK,WAAW;gBACd,IAAI,GAAG,UAAU,EAAE,CAAC;gBACpB,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,GAAG,SAAS,EAAE,CAAC;gBACnB,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBAChD,IAAI,KAAK,KAAK,cAAc,IAAI,CAAC,KAAK,EAAE,CAAC;oBACvC,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;oBACpC,OAAO;gBACT,CAAC;gBACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,KAAK,MAAM,CAAC;YACZ,KAAK,QAAQ,CAAC;YACd,KAAK,IAAI,CAAC;YACV,KAAK,SAAS;gBACZ,IAAI,EAAE,CAAC;gBACP,MAAM;YACR;gBACE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,oBAAoB,GAAG,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;gBAC7D,IAAI,EAAE,CAAC;gBACP,IAAI,GAAG,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,KAAK,IAAI,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9F,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,GAAG,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,IAAI,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG;AAEH,OAAO,EAAc,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,WAAW,EACX,UAAU,EAEV,eAAe,EACf,qBAAqB,EACrB,cAAc,EACd,uBAAuB,EAEvB,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAElH,kEAAkE;AAClE,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC1D,MAAM,CAAC,GAAG;IACR,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3B,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;IAC1B,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;IACzB,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC1B,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC7B,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC3B,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;IAC3B,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;CAC5B,CAAC;AAEF,SAAS,MAAM;IACb,OAAO,CAAC,KAAK,CAAC;EACd,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,yBAAyB,CAAC,CAAC,KAAK;EAC/C,CAAC,CAAC,IAAI,kEAAkE,CAAC,CAAC,KAAK;CAChF,CAAC,CAAC;AACH,CAAC;AAED,kEAAkE;AAClE,SAAS,IAAI;IACX,MAAM,EAAE,CAAC;IACT,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,KAAK,0CAA0C,CAAC,CAAC;IACnF,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,kDAAkD,CAAC,CAAC,KAAK,uDAAuD,CAAC,CAAC;IACnK,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,KAAK,gCAAgC,CAAC,CAAC;IACjH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,KAAK,0EAA0E,CAAC,CAAC;IACrH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,wBAAwB,CAAC,CAAC,KAAK,mDAAmD,CAAC,CAAC;IACrI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,KAAK,kEAAkE,CAAC,CAAC;IACxJ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,KAAK,yBAAyB,CAAC,CAAC;IACjH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,KAAK,6EAA6E,CAAC,CAAC;IAC7H,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,kEAAkE,CAAC,CAAC;IACtI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,oDAAoD,CAAC,CAAC;IAC7F,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,yBAAyB,CAAC,CAAC;IAC/D,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,2BAA2B,CAAC,CAAC;IACjE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,kFAAkF,CAAC,CAAC;IACxH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,8BAA8B,CAAC,CAAC;IACpE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,iFAAiF,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;AACvH,CAAC;AAED,kEAAkE;AAClE,SAAS,SAAS,CAAC,IAAc,EAAE,IAAY;IAC7C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,GAAG,CAAC;YAAE,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,OAAO,CAAC,IAAc,EAAE,IAAY;IAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,kEAAkE;AAClE,SAAS,OAAO,CAAC,IAAc;IAC7B,MAAM,EAAE,CAAC;IACT,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,SAAS,CAAC;IACxD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAEhD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,SAAS,CAAC;IAC5D,MAAM,YAAY,GAAG,eAAe,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAEpD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC;QACrC,WAAW,EAAE,OAAO;QACpB,UAAU;QACV,cAAc,EAAE,CAAC;QACjB,SAAS;KACV,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;IACpD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,eAAe,cAAc,QAAQ,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3G,IAAI,QAAQ;QAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,YAAY,CAAC,CAAC,KAAK,YAAY,QAAQ,mBAAmB,uBAAuB,EAAE,4CAA4C,CAAC,CAAC;IAC1K,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,KAAK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;IACjE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,KAAK,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACzH,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACvB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,gCAAgC,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,KAAK,qBAAqB,CAAC,CAAC;IAC7J,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,KAAK,gEAAgE,CAAC,CAAC;IAClI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,2BAA2B,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC;IACnG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kEAAkE;AAClE,SAAS,UAAU,CAAC,OAAiB,EAAE;IACrC,MAAM,EAAE,CAAC;IACT,MAAM,MAAM,GAAG,UAAU,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC;IACpF,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,4BAA4B,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;QAChF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,YAAY,MAAM,CAAC,OAAO,kBAAkB,MAAM,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;IACzJ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,wCAAwC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC1E,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kEAAkE;AAClE,SAAS,SAAS;IAChB,MAAM,EAAE,CAAC;IACT,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,aAAa,GAAG,aAAa,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAElE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,GAAG,UAAU,GAAG,CAAC,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,yBAAyB,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACtM,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,GAAG,aAAa,GAAG,CAAC,CAAC,KAAK,KAAK,eAAe,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7M,IAAI,qBAAqB,EAAE,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,sCAAsC,uBAAuB,EAAE,sCAAsC,CAAC,CAAC,IAAI,yBAAyB,CAAC,CAAC,MAAM,eAAe,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACnM,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACvD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACzD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe;gBAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/I,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;YAC/E,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACjI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;YACzF,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,YAAY,EAAE,IAAI,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/F,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3F,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,KAAK,aAAa,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,GAAG,WAAW,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/G,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,GAAG,QAAQ,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7G,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,yBAAyB,CAAC,CAAC,KAAK,IAAI,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChH,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kEAAkE;AAClE,SAAS,OAAO,CAAC,IAAc;IAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,wEAAwE,CAAC,CAAC;QAC3G,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,EAAE,CAAC;IAET,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,SAAS,GAA4B,EAAE,CAAC;IAC5C,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,6BAA6B,CAAC,CAAC;YAChE,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,uDAAuD,CAAC,CAAC;QAC7F,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9H,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG;QACf,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,IAAI,EAAE,CAAC,CAAC,GAAG;QACX,gBAAgB,EAAE,CAAC,CAAC,MAAM;KAClB,CAAC;IACX,MAAM,OAAO,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC;IAEjE,OAAO,CAAC,KAAK,CAAC,aAAa,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9H,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,kEAAkE;AAClE,KAAK,UAAU,IAAI;IACjB,MAAM,CAAC,EAAE,AAAD,EAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACxC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,CAAC;QACH,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,MAAM;gBACT,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,SAAS,CAAC;YACf,KAAK,WAAW;gBACd,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,GAAG,SAAS,EAAE,CAAC;gBACnB,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBAChD,IAAI,KAAK,KAAK,cAAc,IAAI,CAAC,KAAK,EAAE,CAAC;oBACvC,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;oBACpC,OAAO;gBACT,CAAC;gBACD,yDAAyD;gBACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACxF,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,MAAM,IAAI,GAAG,gBAAgB,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;oBACjD,MAAM,CAAC,GAAG,WAAW,EAAE,CAAC;oBACxB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,oBAAoB,SAAS,oCAAoC,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC/H,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;oBACrF,OAAO,CAAC,KAAK,CAAC,4EAA4E,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;oBAChI,MAAM;gBACR,CAAC;gBACD,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;oBACxB,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,aAAa,SAAS,UAAU,aAAa,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,sBAAsB,CAAC,CAAC;oBAC3L,MAAM;gBACR,CAAC;gBACD,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACrB,MAAM,IAAI,GAAG,aAAa,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC9C,IAAI,SAAS,GAAG,KAAK,CAAC;oBACtB,IAAI,CAAC;wBAAC,SAAS,GAAG,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;oBAC7F,MAAM,CAAC,GAAG,WAAW,EAAE,CAAC;oBACxB,OAAO,CAAC,KAAK,CAAC,eAAe,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,KAAK,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC;oBAC3H,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAChE,MAAM;gBACR,CAAC;gBACD,IAAI,GAAG,KAAK,eAAe,IAAI,GAAG,KAAK,cAAc,EAAE,CAAC;oBACtD,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC;oBACvB,OAAO;gBACT,CAAC;gBACD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,4BAA4B,GAAG,IAAI,QAAQ,GAAG,CAAC,CAAC,KAAK,iCAAiC,CAAC,CAAC;gBAC9G,IAAI,GAAG,CAAC,CAAC;gBACT,MAAM;YACR,CAAC;YACD,KAAK,MAAM,CAAC;YACZ,KAAK,QAAQ,CAAC;YACd,KAAK,IAAI,CAAC;YACV,KAAK,SAAS;gBACZ,IAAI,EAAE,CAAC;gBACP,MAAM;YACR;gBACE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,oBAAoB,GAAG,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;gBAC7D,IAAI,EAAE,CAAC;gBACP,IAAI,GAAG,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,KAAK,IAAI,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9F,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,GAAG,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,IAAI,EAAE,CAAC"}
|
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
|