@ory/antigravity 0.12.0 → 0.13.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 +20 -20
- package/dist/cli/assets.js +3 -3
- package/dist/cli/main.d.ts +5 -5
- package/dist/cli/main.js +23 -17
- package/dist/cli/setup.d.ts +4 -4
- package/dist/cli/setup.js +6 -6
- package/dist/handlers.js +1 -1
- package/package.json +6 -5
package/README.md
CHANGED
|
@@ -20,7 +20,7 @@ Security and developer experience for [Google Antigravity](https://antigravity.g
|
|
|
20
20
|
Run one command. It installs the plugin (registering it with Antigravity via `agy plugin install`) and walks you through connecting:
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
|
-
npx -y -p @ory/antigravity ory-
|
|
23
|
+
npx -y -p @ory/antigravity ory-agy install
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
You'll be asked how you want to connect — **press Enter for the default**:
|
|
@@ -32,7 +32,7 @@ You'll be asked how you want to connect — **press Enter for the default**:
|
|
|
32
32
|
That's it. Confirm everything landed with:
|
|
33
33
|
|
|
34
34
|
```bash
|
|
35
|
-
npx -y -p @ory/antigravity ory-
|
|
35
|
+
npx -y -p @ory/antigravity ory-agy status
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
`status` is your one-stop check: what's configured, who's signed in, which tools are covered by permissions, plugin + skill registration, and recent activity. Anything not set up yet shows as `(unset)`.
|
|
@@ -42,11 +42,11 @@ Re-run install with `--reconfigure` to change your connection later, or `--no-co
|
|
|
42
42
|
<details>
|
|
43
43
|
<summary>No <code>agy</code> binary? Install into <code>.agents/</code> directly</summary>
|
|
44
44
|
|
|
45
|
-
If the `agy` binary isn't on your `PATH`, `ory-
|
|
45
|
+
If the `agy` binary isn't on your `PATH`, `ory-agy-setup` writes the plugin bundle straight into your project's `.agents/` directory (`plugin.json`, `hooks.json`, `mcp_config.json`, `skills/`, `commands/`). Because `.agents/` is shared with your own configuration, setup merges rather than overwrites — it only touches Ory-owned entries and leaves your hook rules and MCP servers intact. Uninstall is the mirror image: it removes only the Ory entries.
|
|
46
46
|
|
|
47
47
|
```bash
|
|
48
|
-
npx -y -p @ory/antigravity ory-
|
|
49
|
-
npx -y -p @ory/antigravity ory-
|
|
48
|
+
npx -y -p @ory/antigravity ory-agy-setup [--project-dir <path>]
|
|
49
|
+
npx -y -p @ory/antigravity ory-agy uninstall
|
|
50
50
|
```
|
|
51
51
|
|
|
52
52
|
</details>
|
|
@@ -67,11 +67,11 @@ The plugin hooks into these Antigravity lifecycle events: `SessionStart` (check
|
|
|
67
67
|
|
|
68
68
|
Everything the plugin does is observable out of the box — no configuration required:
|
|
69
69
|
|
|
70
|
-
- **Status at a glance.** `npx -y -p @ory/antigravity ory-
|
|
70
|
+
- **Status at a glance.** `npx -y -p @ory/antigravity ory-agy status` shows what's configured, who's signed in, how many built-in tools your permissions cover, and the most recent tool-call activity.
|
|
71
71
|
- **Live traces.** Every tool call is recorded as an OpenTelemetry-style span. Watch them stream as the agent works:
|
|
72
72
|
|
|
73
73
|
```bash
|
|
74
|
-
npx -y -p @ory/antigravity ory-
|
|
74
|
+
npx -y -p @ory/antigravity ory-agy watch
|
|
75
75
|
```
|
|
76
76
|
|
|
77
77
|
Spans are also written to `~/.config/ory-agent-plugins/antigravity/ory-agent-trace.ndjson` (NDJSON, one span per line) — tail that file, or point `OTEL_EXPORTER_OTLP_ENDPOINT` at a collector to ship them straight to Jaeger, Honeycomb, or Grafana.
|
|
@@ -82,7 +82,7 @@ Everything the plugin does is observable out of the box — no configuration req
|
|
|
82
82
|
When the watch-mode logs look right, turn on blocking with one command (setup already granted you the built-in tools):
|
|
83
83
|
|
|
84
84
|
```bash
|
|
85
|
-
npx -y -p @ory/antigravity ory-
|
|
85
|
+
npx -y -p @ory/antigravity ory-agy permissions enforce
|
|
86
86
|
```
|
|
87
87
|
|
|
88
88
|
Now a denied tool is actually blocked and Antigravity shows why (the `deny_reason`). Go back to watch mode anytime with `permissions observe`. Use `permissions status` to see what's covered and `permissions bootstrap` to (re-)grant the built-in tools (`run_command`, `view_file`, `write_to_file`, …) — or add permissions for MCP-server tools by hand, or via the Ory MCP server right from inside Antigravity.
|
|
@@ -108,7 +108,7 @@ The local Ory runs entirely on your laptop:
|
|
|
108
108
|
The guided setup covers most people. For scripted or CI setups, or to point at an existing Ory Network project, configure directly. Settings are saved to `~/.config/ory-agent-plugins/config.json` and shared across all your Ory agent plugins; environment variables win when both are set.
|
|
109
109
|
|
|
110
110
|
```bash
|
|
111
|
-
npx -y -p @ory/antigravity ory-
|
|
111
|
+
npx -y -p @ory/antigravity ory-agy configure \
|
|
112
112
|
--project-url https://<slug>.projects.oryapis.com \
|
|
113
113
|
--oauth2-client-id <login client id> \
|
|
114
114
|
--user-login
|
|
@@ -143,14 +143,14 @@ With nothing configured, the plugin still loads and runs in **pass-through mode*
|
|
|
143
143
|
## Commands
|
|
144
144
|
|
|
145
145
|
```
|
|
146
|
-
ory-
|
|
147
|
-
ory-
|
|
148
|
-
ory-
|
|
149
|
-
ory-
|
|
150
|
-
ory-
|
|
151
|
-
ory-
|
|
152
|
-
ory-
|
|
153
|
-
ory-
|
|
146
|
+
ory-agy install | uninstall Install/remove; --reconfigure re-runs setup, --no-configure skips it
|
|
147
|
+
ory-agy status Show configuration, identities, permission coverage, recent activity
|
|
148
|
+
ory-agy watch Tail the live trace stream (OTel spans)
|
|
149
|
+
ory-agy permissions <cmd> status | bootstrap | observe (watch) | enforce (block)
|
|
150
|
+
ory-agy configure <flags> Point at a project by hand (--project-url, --oauth2-client-id, --user-login, --audit-only)
|
|
151
|
+
ory-agy agent <status|unregister> Manage the agent's own auto-created identity
|
|
152
|
+
ory-agy local <up|down|status|…> Run / manage a local Ory in Docker
|
|
153
|
+
ory-agy-setup Install into .agents/ directly (no agy binary)
|
|
154
154
|
```
|
|
155
155
|
|
|
156
156
|
All prefixed with `npx -y -p @ory/antigravity`.
|
|
@@ -158,10 +158,10 @@ All prefixed with `npx -y -p @ory/antigravity`.
|
|
|
158
158
|
## Troubleshooting
|
|
159
159
|
|
|
160
160
|
- **`/ory:local-up` fails** — make sure Docker is running and ports `4000`, `4455`, and `16686` are free.
|
|
161
|
-
- **Browser sign-in loops** — reset with `ory-
|
|
162
|
-
- **`npx` grabbed an old version** — force the latest: `npx -y -p @ory/antigravity@latest ory-
|
|
161
|
+
- **Browser sign-in loops** — reset with `ory-agy agent unregister` and try again.
|
|
162
|
+
- **`npx` grabbed an old version** — force the latest: `npx -y -p @ory/antigravity@latest ory-agy …`.
|
|
163
163
|
- **A tool was unexpectedly blocked** — because Antigravity blocks by default, first confirm the hook is answering: set `ORY_AGENT_DEBUG=true` and check the logs for hook errors. Then verify the user has `use` on the tool with `permissions status`.
|
|
164
|
-
- **Want to see what's happening** — `npx -y -p @ory/antigravity ory-
|
|
164
|
+
- **Want to see what's happening** — `npx -y -p @ory/antigravity ory-agy status` for a snapshot, `npx -y -p @ory/antigravity ory-agy watch` for the live trace stream, or set `ORY_AGENT_DEBUG=true` for a verbose log. Traces and logs live under `~/.config/ory-agent-plugins/antigravity/` (see [See what's happening](#see-whats-happening)).
|
|
165
165
|
|
|
166
166
|
## Learn more
|
|
167
167
|
|
package/dist/cli/assets.js
CHANGED
|
@@ -59,13 +59,13 @@ const fs = __importStar(require("node:fs"));
|
|
|
59
59
|
const path = __importStar(require("node:path"));
|
|
60
60
|
const argus_1 = require("@ory/argus");
|
|
61
61
|
const PACKAGE_NAME = "@ory/antigravity";
|
|
62
|
-
const HOOK_BIN_NAME = "ory-
|
|
62
|
+
const HOOK_BIN_NAME = "ory-agy-hook";
|
|
63
63
|
const MCP_PACKAGE_NAME = "@ory/mcp-server";
|
|
64
64
|
const MCP_BIN_NAME = "ory-mcp-server";
|
|
65
65
|
/** Plugin / rule / MCP-server id. */
|
|
66
66
|
exports.PLUGIN_NAME = "ory";
|
|
67
67
|
const RENDER_OPTS = {
|
|
68
|
-
binName: "ory-
|
|
68
|
+
binName: "ory-agy",
|
|
69
69
|
packageName: PACKAGE_NAME,
|
|
70
70
|
};
|
|
71
71
|
/**
|
|
@@ -83,7 +83,7 @@ function readPackageVersion() {
|
|
|
83
83
|
}
|
|
84
84
|
/**
|
|
85
85
|
* Render hooks.json. The hook command is a self-contained
|
|
86
|
-
* `npx -y -p @ory/antigravity@<version> ory-
|
|
86
|
+
* `npx -y -p @ory/antigravity@<version> ory-agy-hook` so the
|
|
87
87
|
* binary need not be on PATH after install. `matcher: ".*"` matches every
|
|
88
88
|
* tool name on the tool events.
|
|
89
89
|
*/
|
package/dist/cli/main.d.ts
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* Main CLI for @ory/antigravity.
|
|
4
4
|
*
|
|
5
5
|
* Usage:
|
|
6
|
-
* npx ory-
|
|
7
|
-
* npx ory-
|
|
8
|
-
* npx ory-
|
|
9
|
-
* npx ory-
|
|
10
|
-
* npx ory-
|
|
6
|
+
* npx ory-agy install Install the Ory plugin into Antigravity
|
|
7
|
+
* npx ory-agy uninstall Remove the plugin
|
|
8
|
+
* npx ory-agy configure Set or view Ory credentials
|
|
9
|
+
* npx ory-agy setup [--project-dir] Write the bundle into .agents (fallback)
|
|
10
|
+
* npx ory-agy status Show plugin status
|
|
11
11
|
*/
|
|
12
12
|
export {};
|
package/dist/cli/main.js
CHANGED
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
* Main CLI for @ory/antigravity.
|
|
5
5
|
*
|
|
6
6
|
* Usage:
|
|
7
|
-
* npx ory-
|
|
8
|
-
* npx ory-
|
|
9
|
-
* npx ory-
|
|
10
|
-
* npx ory-
|
|
11
|
-
* npx ory-
|
|
7
|
+
* npx ory-agy install Install the Ory plugin into Antigravity
|
|
8
|
+
* npx ory-agy uninstall Remove the plugin
|
|
9
|
+
* npx ory-agy configure Set or view Ory credentials
|
|
10
|
+
* npx ory-agy setup [--project-dir] Write the bundle into .agents (fallback)
|
|
11
|
+
* npx ory-agy status Show plugin status
|
|
12
12
|
*/
|
|
13
13
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
14
|
if (k2 === undefined) k2 = k;
|
|
@@ -65,7 +65,7 @@ function main() {
|
|
|
65
65
|
case "install":
|
|
66
66
|
(0, argus_1.beginDeferNextSteps)();
|
|
67
67
|
install(args);
|
|
68
|
-
(0, argus_1.runPostInstall)("ory-
|
|
68
|
+
(0, argus_1.runPostInstall)("ory-agy", "antigravity", args).then(() => process.exit(0), (err) => {
|
|
69
69
|
console.error(err.message ?? err);
|
|
70
70
|
process.exit(1);
|
|
71
71
|
});
|
|
@@ -78,16 +78,16 @@ function main() {
|
|
|
78
78
|
});
|
|
79
79
|
break;
|
|
80
80
|
case "configure":
|
|
81
|
-
(0, argus_1.runConfigureCommand)("ory-
|
|
81
|
+
(0, argus_1.runConfigureCommand)("ory-agy", args);
|
|
82
82
|
break;
|
|
83
83
|
case "agent":
|
|
84
|
-
(0, argus_1.runAgentCommand)("ory-
|
|
84
|
+
(0, argus_1.runAgentCommand)("ory-agy", args).then((code) => process.exit(code), (err) => {
|
|
85
85
|
console.error(err.message ?? err);
|
|
86
86
|
process.exit(1);
|
|
87
87
|
});
|
|
88
88
|
break;
|
|
89
89
|
case "permissions":
|
|
90
|
-
(0, argus_1.runPermissionsCommand)("ory-
|
|
90
|
+
(0, argus_1.runPermissionsCommand)("ory-agy", "antigravity", args).then((code) => process.exit(code), (err) => {
|
|
91
91
|
console.error(err.message ?? err);
|
|
92
92
|
process.exit(1);
|
|
93
93
|
});
|
|
@@ -102,7 +102,7 @@ function main() {
|
|
|
102
102
|
});
|
|
103
103
|
break;
|
|
104
104
|
case "local":
|
|
105
|
-
(0, argus_1.runLocalCommand)("ory-
|
|
105
|
+
(0, argus_1.runLocalCommand)("ory-agy", args).catch((err) => {
|
|
106
106
|
console.error(err.message ?? err);
|
|
107
107
|
process.exit(1);
|
|
108
108
|
});
|
|
@@ -110,6 +110,11 @@ function main() {
|
|
|
110
110
|
case "watch":
|
|
111
111
|
(0, argus_1.runWatchCommand)("antigravity", args);
|
|
112
112
|
break;
|
|
113
|
+
case "version":
|
|
114
|
+
case "--version":
|
|
115
|
+
case "-v":
|
|
116
|
+
process.exit((0, argus_1.runVersionCommand)("ory-agy", args, { packageRoot: PACKAGE_ROOT }));
|
|
117
|
+
break;
|
|
113
118
|
case "help":
|
|
114
119
|
case "--help":
|
|
115
120
|
case "-h":
|
|
@@ -137,7 +142,7 @@ function install(args) {
|
|
|
137
142
|
console.log("");
|
|
138
143
|
console.log("Ory plugin installed.");
|
|
139
144
|
printQuickstart();
|
|
140
|
-
(0, argus_1.printEnvHelp)("ory-
|
|
145
|
+
(0, argus_1.printEnvHelp)("ory-agy");
|
|
141
146
|
return;
|
|
142
147
|
}
|
|
143
148
|
console.error("");
|
|
@@ -174,7 +179,7 @@ function printQuickstart() {
|
|
|
174
179
|
console.log(" 3. Set ORY_USER_LOGIN=true to enable the interactive PKCE browser login.");
|
|
175
180
|
}
|
|
176
181
|
async function status() {
|
|
177
|
-
await (0, argus_1.runStatusCommand)("ory-
|
|
182
|
+
await (0, argus_1.runStatusCommand)("ory-agy", "antigravity", {
|
|
178
183
|
title: "Google Antigravity",
|
|
179
184
|
printPluginSection: () => {
|
|
180
185
|
console.log("Plugin bundle:");
|
|
@@ -187,10 +192,10 @@ async function status() {
|
|
|
187
192
|
}
|
|
188
193
|
function help() {
|
|
189
194
|
console.log(`
|
|
190
|
-
ory-
|
|
195
|
+
ory-agy — Ory plugin for Google Antigravity
|
|
191
196
|
|
|
192
197
|
Usage:
|
|
193
|
-
npx -y -p @ory/antigravity ory-
|
|
198
|
+
npx -y -p @ory/antigravity ory-agy <command> [options]
|
|
194
199
|
|
|
195
200
|
Commands:
|
|
196
201
|
install Install the Ory plugin into Antigravity (agy plugin install)
|
|
@@ -201,6 +206,7 @@ Commands:
|
|
|
201
206
|
setup [--project-dir] Write the plugin bundle into .agents directly (fallback)
|
|
202
207
|
status Show plugin status and configuration
|
|
203
208
|
watch [trace-file] Tail the trace stream (OTel spans) live
|
|
209
|
+
version Show version and the ory-agent-plugins build commit
|
|
204
210
|
local <cmd> Manage local Ory dev environment (up, down, status, seed, ...)
|
|
205
211
|
|
|
206
212
|
After installing, the plugin hooks into these Antigravity lifecycle events:
|
|
@@ -209,9 +215,9 @@ After installing, the plugin hooks into these Antigravity lifecycle events:
|
|
|
209
215
|
PostToolUse Audit log tool executions
|
|
210
216
|
|
|
211
217
|
Examples:
|
|
212
|
-
npx -y -p @ory/antigravity ory-
|
|
213
|
-
npx -y -p @ory/antigravity ory-
|
|
214
|
-
npx -y -p @ory/antigravity ory-
|
|
218
|
+
npx -y -p @ory/antigravity ory-agy install # Install plugin
|
|
219
|
+
npx -y -p @ory/antigravity ory-agy status # Check configuration
|
|
220
|
+
npx -y -p @ory/antigravity ory-agy uninstall # Remove plugin
|
|
215
221
|
`);
|
|
216
222
|
}
|
|
217
223
|
main();
|
package/dist/cli/setup.d.ts
CHANGED
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
* reads hooks, MCP config, skills, and commands from.
|
|
9
9
|
*
|
|
10
10
|
* Usage:
|
|
11
|
-
* npx ory-
|
|
12
|
-
* npx ory-
|
|
13
|
-
* npx ory-
|
|
14
|
-
* npx ory-
|
|
11
|
+
* npx ory-agy-setup # write into ./.agents
|
|
12
|
+
* npx ory-agy-setup --project-dir /repo
|
|
13
|
+
* npx ory-agy-setup --print # print bundle paths, don't write
|
|
14
|
+
* npx ory-agy-setup --uninstall # remove Ory bundle files
|
|
15
15
|
*/
|
|
16
16
|
export {};
|
package/dist/cli/setup.js
CHANGED
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
* reads hooks, MCP config, skills, and commands from.
|
|
10
10
|
*
|
|
11
11
|
* Usage:
|
|
12
|
-
* npx ory-
|
|
13
|
-
* npx ory-
|
|
14
|
-
* npx ory-
|
|
15
|
-
* npx ory-
|
|
12
|
+
* npx ory-agy-setup # write into ./.agents
|
|
13
|
+
* npx ory-agy-setup --project-dir /repo
|
|
14
|
+
* npx ory-agy-setup --print # print bundle paths, don't write
|
|
15
|
+
* npx ory-agy-setup --uninstall # remove Ory bundle files
|
|
16
16
|
*/
|
|
17
17
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
18
|
if (k2 === undefined) k2 = k;
|
|
@@ -57,7 +57,7 @@ function getAgentsDir(args) {
|
|
|
57
57
|
}
|
|
58
58
|
function main() {
|
|
59
59
|
if (process.argv.includes("--help") || process.argv.includes("-h")) {
|
|
60
|
-
(0, argus_1.printSetupHelp)("ory-
|
|
60
|
+
(0, argus_1.printSetupHelp)("ory-agy-setup", "Google Antigravity");
|
|
61
61
|
process.exit(0);
|
|
62
62
|
}
|
|
63
63
|
const args = (0, argus_1.parseSetupArgs)();
|
|
@@ -78,7 +78,7 @@ function main() {
|
|
|
78
78
|
}
|
|
79
79
|
(0, assets_js_1.installAntigravityOryAssets)(agentsDir);
|
|
80
80
|
console.log(`Ory plugin bundle installed to ${agentsDir}`);
|
|
81
|
-
(0, argus_1.printNextSteps)("Google Antigravity", "npx -y -p @ory/antigravity ory-
|
|
81
|
+
(0, argus_1.printNextSteps)("Google Antigravity", "npx -y -p @ory/antigravity ory-agy-setup --uninstall", { binName: "ory-agy", harness: "antigravity" });
|
|
82
82
|
}
|
|
83
83
|
main();
|
|
84
84
|
// When invoked directly as the `-setup` bin with `--uninstall`, also clear
|
package/dist/handlers.js
CHANGED
|
@@ -65,7 +65,7 @@ async function handleSessionStart(input, client, deps) {
|
|
|
65
65
|
// session always proceeds. Tool-call enforcement is unaffected.
|
|
66
66
|
const userGate = deps.userLogin ?? argus_1.ensureUserAuthenticated;
|
|
67
67
|
const decision = await userGate(client, {
|
|
68
|
-
binName: "ory-
|
|
68
|
+
binName: "ory-agy",
|
|
69
69
|
harness: HARNESS,
|
|
70
70
|
allowBlock: false,
|
|
71
71
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ory/antigravity",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"description": "Ory plugin for Google Antigravity: scaffolding skills, a local Ory instance, and authentication, authorization, and audit for every tool call",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://github.com/ory/ory-agent-plugins/tree/main/packages/antigravity",
|
|
@@ -62,9 +62,9 @@
|
|
|
62
62
|
}
|
|
63
63
|
},
|
|
64
64
|
"bin": {
|
|
65
|
-
"ory-
|
|
66
|
-
"ory-
|
|
67
|
-
"ory-
|
|
65
|
+
"ory-agy": "dist/cli/main.js",
|
|
66
|
+
"ory-agy-hook": "dist/hook.js",
|
|
67
|
+
"ory-agy-setup": "dist/cli/setup.js"
|
|
68
68
|
},
|
|
69
69
|
"files": [
|
|
70
70
|
"dist",
|
|
@@ -72,7 +72,8 @@
|
|
|
72
72
|
"!dist/**/*.tsbuildinfo"
|
|
73
73
|
],
|
|
74
74
|
"dependencies": {
|
|
75
|
-
"
|
|
75
|
+
"reo-census": "^1.2.8",
|
|
76
|
+
"@ory/argus": "0.13.0"
|
|
76
77
|
},
|
|
77
78
|
"devDependencies": {
|
|
78
79
|
"typescript": "^6.0.2",
|