@oh-my-pi/pi-agent-core 18.17.0 → 18.18.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.
@@ -1132,8 +1132,15 @@ export interface AgentTool<TParameters extends TSchema = TSchema, TDetails = any
1132
1132
  */
1133
1133
  approvalCacheTargets?: (args: unknown) => readonly string[] | undefined;
1134
1134
  /**
1135
- * Paths a call reads beyond its working directory, matched against restricted folders when it
1136
- * reports no `approvalCacheTargets`. Unlike cache targets they never key a remembered grant.
1135
+ * Capture per-invocation targets after extension preflight, before final approval and execution.
1136
+ * The coding-agent wrapper calls this once with the final approval args, even without a prompt
1137
+ * or restricted folders. Restriction queries and approval details may then read the binding.
1138
+ */
1139
+ bindApprovalTargets?: (args: unknown) => void;
1140
+ /**
1141
+ * Query paths a call reads beyond its working directory, matched against restricted folders when
1142
+ * it reports no `approvalCacheTargets`. Never capture bindings here: this also runs before preflight.
1143
+ * Unlike cache targets these paths never key a remembered grant.
1137
1144
  */
1138
1145
  approvalRestrictionPaths?: (args: unknown) => readonly string[] | undefined;
1139
1146
  /** The main execution callback for this tool. */
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@oh-my-pi/pi-agent-core",
4
- "version": "18.17.0",
4
+ "version": "18.18.0",
5
5
  "description": "General-purpose agent with transport abstraction, state management, and attachment support",
6
6
  "homepage": "https://omp.sh",
7
7
  "author": {
@@ -38,16 +38,16 @@
38
38
  "fmt": "oxfmt --no-error-on-unmatched-pattern 'src/**/*.{ts,tsx}' '{test,bench,examples,scripts}/**/*.ts' '*.ts'"
39
39
  },
40
40
  "dependencies": {
41
- "@oh-my-pi/pi-ai": "18.17.0",
42
- "@oh-my-pi/pi-catalog": "18.17.0",
43
- "@oh-my-pi/pi-natives": "18.17.0",
44
- "@oh-my-pi/pi-utils": "18.17.0",
45
- "@oh-my-pi/pi-wire": "18.17.0",
46
- "@oh-my-pi/snapcompact": "18.17.0",
41
+ "@oh-my-pi/pi-ai": "18.18.0",
42
+ "@oh-my-pi/pi-catalog": "18.18.0",
43
+ "@oh-my-pi/pi-natives": "18.18.0",
44
+ "@oh-my-pi/pi-utils": "18.18.0",
45
+ "@oh-my-pi/pi-wire": "18.18.0",
46
+ "@oh-my-pi/snapcompact": "18.18.0",
47
47
  "@opentelemetry/api": "^1.9.1"
48
48
  },
49
49
  "devDependencies": {
50
- "@oh-my-pi/omptype": "18.17.0",
50
+ "@oh-my-pi/omptype": "18.18.0",
51
51
  "@opentelemetry/context-async-hooks": "2.9.0",
52
52
  "@opentelemetry/sdk-trace-base": "2.9.0",
53
53
  "@types/bun": "^1.3.14"
package/src/types.ts CHANGED
@@ -1276,8 +1276,16 @@ export interface AgentTool<
1276
1276
  approvalCacheTargets?: (args: unknown) => readonly string[] | undefined;
1277
1277
 
1278
1278
  /**
1279
- * Paths a call reads beyond its working directory, matched against restricted folders when it
1280
- * reports no `approvalCacheTargets`. Unlike cache targets they never key a remembered grant.
1279
+ * Capture per-invocation targets after extension preflight, before final approval and execution.
1280
+ * The coding-agent wrapper calls this once with the final approval args, even without a prompt
1281
+ * or restricted folders. Restriction queries and approval details may then read the binding.
1282
+ */
1283
+ bindApprovalTargets?: (args: unknown) => void;
1284
+
1285
+ /**
1286
+ * Query paths a call reads beyond its working directory, matched against restricted folders when
1287
+ * it reports no `approvalCacheTargets`. Never capture bindings here: this also runs before preflight.
1288
+ * Unlike cache targets these paths never key a remembered grant.
1281
1289
  */
1282
1290
  approvalRestrictionPaths?: (args: unknown) => readonly string[] | undefined;
1283
1291