pi-codex-auto-review 0.1.3 → 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.
Files changed (128) hide show
  1. package/NOTICE +4 -2
  2. package/README.ko.md +85 -0
  3. package/README.md +51 -52
  4. package/dist/approval-commands.d.ts +3 -3
  5. package/dist/approval-commands.js +161 -34
  6. package/dist/approval-commands.js.map +1 -1
  7. package/dist/approval-settings.d.ts +1 -1
  8. package/dist/approval-settings.js +17 -10
  9. package/dist/approval-settings.js.map +1 -1
  10. package/dist/approvals.d.ts +10 -9
  11. package/dist/approvals.js +196 -75
  12. package/dist/approvals.js.map +1 -1
  13. package/dist/audit.d.ts +1 -1
  14. package/dist/audit.js +37 -13
  15. package/dist/audit.js.map +1 -1
  16. package/dist/cli.js +63 -34
  17. package/dist/cli.js.map +1 -1
  18. package/dist/context-files.d.ts +2 -2
  19. package/dist/context-files.js +40 -19
  20. package/dist/context-files.js.map +1 -1
  21. package/dist/contracts.d.ts +39 -39
  22. package/dist/contracts.js +117 -51
  23. package/dist/contracts.js.map +1 -1
  24. package/dist/index.d.ts +9 -9
  25. package/dist/index.js +147 -43
  26. package/dist/index.js.map +1 -1
  27. package/dist/pi-host.js +3 -3
  28. package/dist/pi-host.js.map +1 -1
  29. package/dist/policy/domains.js +17 -7
  30. package/dist/policy/domains.js.map +1 -1
  31. package/dist/policy/index.d.ts +7 -7
  32. package/dist/policy/index.js +382 -139
  33. package/dist/policy/index.js.map +1 -1
  34. package/dist/policy/paths.js +31 -18
  35. package/dist/policy/paths.js.map +1 -1
  36. package/dist/policy/rule-engine.d.ts +2 -0
  37. package/dist/policy/rule-engine.js +283 -0
  38. package/dist/policy/rule-engine.js.map +1 -0
  39. package/dist/policy/rule-types.d.ts +30 -0
  40. package/dist/policy/rule-types.js +2 -0
  41. package/dist/policy/rule-types.js.map +1 -0
  42. package/dist/policy/rules-sync.d.ts +1 -0
  43. package/dist/policy/rules-sync.js +14 -0
  44. package/dist/policy/rules-sync.js.map +1 -0
  45. package/dist/policy/rules-worker.d.ts +1 -0
  46. package/dist/policy/rules-worker.js +14 -0
  47. package/dist/policy/rules-worker.js.map +1 -0
  48. package/dist/policy/rules.d.ts +4 -31
  49. package/dist/policy/rules.js +126 -38
  50. package/dist/policy/rules.js.map +1 -1
  51. package/dist/policy/shell.js +70 -41
  52. package/dist/policy/shell.js.map +1 -1
  53. package/dist/policy/starlark/builtins.d.ts +6 -0
  54. package/dist/policy/starlark/builtins.js +764 -0
  55. package/dist/policy/starlark/builtins.js.map +1 -0
  56. package/dist/policy/starlark/evaluator.d.ts +18 -0
  57. package/dist/policy/starlark/evaluator.js +518 -0
  58. package/dist/policy/starlark/evaluator.js.map +1 -0
  59. package/dist/policy/starlark/lexer.d.ts +14 -0
  60. package/dist/policy/starlark/lexer.js +189 -0
  61. package/dist/policy/starlark/lexer.js.map +1 -0
  62. package/dist/policy/starlark/parser.d.ts +140 -0
  63. package/dist/policy/starlark/parser.js +508 -0
  64. package/dist/policy/starlark/parser.js.map +1 -0
  65. package/dist/policy/starlark/validation.d.ts +4 -0
  66. package/dist/policy/starlark/validation.js +183 -0
  67. package/dist/policy/starlark/validation.js.map +1 -0
  68. package/dist/policy/starlark/values.d.ts +46 -0
  69. package/dist/policy/starlark/values.js +363 -0
  70. package/dist/policy/starlark/values.js.map +1 -0
  71. package/dist/reports.d.ts +1 -1
  72. package/dist/reports.js +66 -30
  73. package/dist/reports.js.map +1 -1
  74. package/dist/review/context.d.ts +16 -3
  75. package/dist/review/context.js +254 -48
  76. package/dist/review/context.js.map +1 -1
  77. package/dist/review/investigation.d.ts +2 -2
  78. package/dist/review/investigation.js +57 -16
  79. package/dist/review/investigation.js.map +1 -1
  80. package/dist/review/lifecycle.d.ts +1 -1
  81. package/dist/review/lifecycle.js +72 -29
  82. package/dist/review/lifecycle.js.map +1 -1
  83. package/dist/review/policy.js +27 -5
  84. package/dist/review/policy.js.map +1 -1
  85. package/dist/review/upstream-policy.js +1 -1
  86. package/dist/review/upstream-policy.js.map +1 -1
  87. package/dist/review/user-input.d.ts +5 -0
  88. package/dist/review/user-input.js +54 -0
  89. package/dist/review/user-input.js.map +1 -0
  90. package/dist/reviewer.d.ts +16 -6
  91. package/dist/reviewer.js +258 -70
  92. package/dist/reviewer.js.map +1 -1
  93. package/dist/signals.js +24 -9
  94. package/dist/signals.js.map +1 -1
  95. package/dist/startup.d.ts +4 -4
  96. package/dist/startup.js +139 -41
  97. package/dist/startup.js.map +1 -1
  98. package/dist/tools/controller.d.ts +19 -13
  99. package/dist/tools/controller.js +460 -118
  100. package/dist/tools/controller.js.map +1 -1
  101. package/dist/tools/environment.d.ts +1 -0
  102. package/dist/tools/environment.js +5 -0
  103. package/dist/tools/environment.js.map +1 -1
  104. package/dist/tools/executor.d.ts +1 -1
  105. package/dist/tools/executor.js +45 -28
  106. package/dist/tools/executor.js.map +1 -1
  107. package/dist/tools/external.d.ts +9 -8
  108. package/dist/tools/external.js +22 -11
  109. package/dist/tools/external.js.map +1 -1
  110. package/dist/tools/mcp.d.ts +6 -6
  111. package/dist/tools/mcp.js +208 -79
  112. package/dist/tools/mcp.js.map +1 -1
  113. package/dist/tools/mutation-queue.js.map +1 -1
  114. package/docs/publishing.ko.md +114 -0
  115. package/docs/publishing.md +49 -47
  116. package/docs/security/dependencies.ko.md +54 -0
  117. package/docs/security/dependencies.md +27 -26
  118. package/docs/testing/auto-review-protection.ko.md +158 -0
  119. package/docs/testing/auto-review-protection.md +105 -97
  120. package/docs/usage.ko.md +242 -0
  121. package/docs/usage.md +127 -111
  122. package/package.json +106 -95
  123. package/dist/native/darwin-arm64/artifact.json +0 -5
  124. package/dist/native/darwin-arm64/pi-guard-execpolicy +0 -0
  125. package/dist/native/linux-x64/artifact.json +0 -5
  126. package/dist/native/linux-x64/pi-guard-execpolicy +0 -0
  127. package/native/execpolicy/LICENSE +0 -201
  128. package/native/execpolicy/NOTICE +0 -6
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/tools/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/tools/controller.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export declare function reviewEnvironment(environment?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
2
+ export declare function redactedEnvironmentNames(environment?: NodeJS.ProcessEnv): string[];
@@ -3,4 +3,9 @@ const PRIVATE_ENV = /(?:TOKEN|SECRET|PASSWORD|CREDENTIAL|API_KEY|AUTH|^AWS_|^AZU
3
3
  export function reviewEnvironment(environment = {}) {
4
4
  return Object.fromEntries(Object.entries(environment).filter(([key, value]) => !PRIVATE_ENV.test(key) && value !== undefined));
5
5
  }
6
+ export function redactedEnvironmentNames(environment = {}) {
7
+ return Object.keys(environment)
8
+ .filter((key) => PRIVATE_ENV.test(key) && environment[key] !== undefined)
9
+ .sort();
10
+ }
6
11
  //# sourceMappingURL=environment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/tools/environment.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,MAAM,WAAW,GAAG,wQAAwQ,CAAC;AAC7R,MAAM,UAAU,iBAAiB,CAAC,cAAiC,EAAE;IACnE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC;AAChI,CAAC"}
1
+ {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/tools/environment.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,MAAM,WAAW,GACb,wQAAwQ,CAAC;AAC7Q,MAAM,UAAU,iBAAiB,CAC7B,cAAiC,EAAE;IAEnC,OAAO,MAAM,CAAC,WAAW,CACrB,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAC9B,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,SAAS,CAClE,CACJ,CAAC;AACN,CAAC;AACD,MAAM,UAAU,wBAAwB,CACpC,cAAiC,EAAE;IAEnC,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;SAC1B,MAAM,CACH,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,SAAS,CACnE;SACA,IAAI,EAAE,CAAC;AAChB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type ExecutionOptions, type Json, type PermissionDelta, type PermissionProfile, type WorkerJob } from '../contracts.js';
1
+ import { type ExecutionOptions, type Json, type PermissionDelta, type PermissionProfile, type WorkerJob } from "../contracts.js";
2
2
  export interface ToolExecutor {
3
3
  execute(job: WorkerJob, profile: PermissionProfile, delta: PermissionDelta, options?: ExecutionOptions): Promise<Json>;
4
4
  close(): Promise<void>;
@@ -1,13 +1,18 @@
1
- import { access, mkdir, readFile, readdir, stat, writeFile } from 'node:fs/promises';
2
- import { createLocalBashOperations, createReadToolDefinition, createWriteToolDefinition, createEditToolDefinition, createGrepToolDefinition, createFindToolDefinition, createLsToolDefinition, } from '@earendil-works/pi-coding-agent';
3
- import { GuardError, } from '../contracts.js';
1
+ import { access, mkdir, readdir, readFile, stat, writeFile, } from "node:fs/promises";
2
+ import { createEditToolDefinition, createFindToolDefinition, createGrepToolDefinition, createLocalBashOperations, createLsToolDefinition, createReadToolDefinition, createWriteToolDefinition, } from "@earendil-works/pi-coding-agent";
3
+ import { GuardError, } from "../contracts.js";
4
4
  /** Approval is handled by the controller; Pi owns ordinary tool execution. */
5
5
  export class PiExecutor {
6
6
  stopped = new AbortController();
7
7
  active = new Set();
8
- get activeInvocationCount() { return this.active.size; }
8
+ get activeInvocationCount() {
9
+ return this.active.size;
10
+ }
9
11
  async execute(job, _profile, _delta, options = {}) {
10
- const signal = AbortSignal.any([this.stopped.signal, ...(options.signal ? [options.signal] : [])]);
12
+ const signal = AbortSignal.any([
13
+ this.stopped.signal,
14
+ ...(options.signal ? [options.signal] : []),
15
+ ]);
11
16
  signal.throwIfAborted();
12
17
  const task = this.run(job, options, signal);
13
18
  this.active.add(task);
@@ -21,54 +26,66 @@ export class PiExecutor {
21
26
  async run(job, options, signal) {
22
27
  if (options.delegate)
23
28
  return options.delegate(signal);
24
- if (job.kind === 'shell') {
25
- const result = await createLocalBashOperations({ shellPath: job.shellPath }).exec(job.command, job.cwd, {
26
- signal, timeout: options.timeoutSeconds ?? job.timeoutSeconds,
27
- env: options.env ?? job.env, onData: options.onData ?? (() => { }),
29
+ if (job.kind === "shell") {
30
+ const result = await createLocalBashOperations({
31
+ shellPath: job.shellPath,
32
+ }).exec(job.command, job.cwd, {
33
+ signal,
34
+ timeout: options.timeoutSeconds ?? job.timeoutSeconds,
35
+ env: options.env ?? job.env,
36
+ onData: options.onData ?? (() => { }),
28
37
  });
29
38
  return result;
30
39
  }
31
- if (job.kind === 'file') {
40
+ if (job.kind === "file") {
32
41
  let result;
33
42
  switch (job.operation) {
34
- case 'read':
35
- result = { data: (await readFile(job.path, { signal })).toString('base64') };
43
+ case "read":
44
+ result = {
45
+ data: (await readFile(job.path, { signal })).toString("base64"),
46
+ };
36
47
  break;
37
- case 'write':
38
- await writeFile(job.path, job.content ?? '', { signal });
48
+ case "write":
49
+ await writeFile(job.path, job.content ?? "", { signal });
39
50
  result = null;
40
51
  break;
41
- case 'mkdir':
52
+ case "mkdir":
42
53
  await mkdir(job.path, { recursive: true });
43
54
  result = null;
44
55
  break;
45
- case 'access':
56
+ case "access":
46
57
  await access(job.path);
47
58
  result = null;
48
59
  break;
49
- case 'stat':
50
- result = { isDirectory: (await stat(job.path)).isDirectory() };
60
+ case "stat":
61
+ result = {
62
+ isDirectory: (await stat(job.path)).isDirectory(),
63
+ };
51
64
  break;
52
- case 'list':
65
+ case "list":
53
66
  result = await readdir(job.path);
54
67
  break;
55
- default: throw new GuardError('INVALID_EXECUTION', 'Unknown file operation');
68
+ default:
69
+ throw new GuardError("INVALID_EXECUTION", "Unknown file operation");
56
70
  }
57
71
  signal.throwIfAborted();
58
72
  return result;
59
73
  }
60
74
  const factories = {
61
- read: createReadToolDefinition, write: createWriteToolDefinition,
62
- edit: createEditToolDefinition, grep: createGrepToolDefinition,
63
- find: createFindToolDefinition, ls: createLsToolDefinition,
75
+ read: createReadToolDefinition,
76
+ write: createWriteToolDefinition,
77
+ edit: createEditToolDefinition,
78
+ grep: createGrepToolDefinition,
79
+ find: createFindToolDefinition,
80
+ ls: createLsToolDefinition,
64
81
  };
65
- if (job.tool === 'bash')
66
- throw new GuardError('INVALID_EXECUTION', 'Use the shell execution path');
67
- const definition = factories[job.tool](job.cwd, job.tool === 'read' ? job.options : undefined);
68
- return await definition.execute(job.toolCallId, job.args, signal, options.onUpdate, undefined);
82
+ if (job.tool === "bash")
83
+ throw new GuardError("INVALID_EXECUTION", "Use the shell execution path");
84
+ const definition = factories[job.tool](job.cwd, job.tool === "read" ? job.options : undefined);
85
+ return (await definition.execute(job.toolCallId, job.args, signal, options.onUpdate, undefined));
69
86
  }
70
87
  async close() {
71
- this.stopped.abort(new GuardError('CANCELLED', 'Tool execution stopped'));
88
+ this.stopped.abort(new GuardError("CANCELLED", "Tool execution stopped"));
72
89
  await Promise.allSettled([...this.active]);
73
90
  }
74
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/tools/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/tools/executor.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,24 @@
1
- import { AsyncLocalStorage } from 'node:async_hooks';
2
- import type { ToolAnnotations } from '@earendil-works/pi-coding-agent';
3
- import { type GuardAction, type Json, type PolicyDecision } from '../contracts.js';
4
- import type { GuardSettings } from '../policy/index.js';
1
+ import { AsyncLocalStorage } from "node:async_hooks";
2
+ import type { ToolAnnotations } from "@earendil-works/pi-coding-agent";
3
+ import { type GuardAction, type Json, type PolicyDecision } from "../contracts.js";
4
+ import type { GuardSettings } from "../policy/index.js";
5
5
  export interface ExternalToolIdentity {
6
- readonly kind: 'mcp' | 'extension';
6
+ readonly kind: "mcp" | "extension";
7
7
  readonly server: string;
8
8
  readonly tool: string;
9
9
  readonly registration: string;
10
10
  readonly connectorId?: string;
11
11
  readonly account?: string;
12
- readonly approvalMode?: 'auto' | 'prompt' | 'writes' | 'approve';
12
+ readonly connectedAccountEmail?: string;
13
+ readonly approvalMode?: "auto" | "prompt" | "writes" | "approve";
13
14
  readonly annotations?: ToolAnnotations;
14
15
  readonly requiresUserInput?: boolean;
15
16
  readonly isSensitiveAction?: boolean;
16
17
  readonly requiresStrictReview?: boolean;
17
18
  }
18
19
  /** Literal ordering of Codex mcp_tool_call.rs requires_mcp_tool_approval. */
19
- export declare function requiresMcpApproval(annotations?: ToolAnnotations, mode?: ExternalToolIdentity['approvalMode']): boolean;
20
- export declare function externalPolicy(action: GuardAction, identity: ExternalToolIdentity, settings: GuardSettings): PolicyDecision;
20
+ export declare function requiresMcpApproval(annotations?: ToolAnnotations, mode?: ExternalToolIdentity["approvalMode"]): boolean;
21
+ export declare function externalPolicy(action: GuardAction, identity: ExternalToolIdentity, _settings: GuardSettings): PolicyDecision;
21
22
  export interface ExternalInvocation {
22
23
  readonly toolCallId: string;
23
24
  readonly identity: ExternalToolIdentity;
@@ -1,23 +1,34 @@
1
- import { AsyncLocalStorage } from 'node:async_hooks';
2
- import { decision, immutable } from '../contracts.js';
1
+ import { AsyncLocalStorage } from "node:async_hooks";
2
+ import { decision, immutable, } from "../contracts.js";
3
3
  /** Literal ordering of Codex mcp_tool_call.rs requires_mcp_tool_approval. */
4
- export function requiresMcpApproval(annotations = {}, mode = 'auto') {
5
- if (mode === 'prompt')
4
+ export function requiresMcpApproval(annotations = {}, mode = "auto") {
5
+ if (mode === "prompt")
6
6
  return true;
7
- if (mode === 'writes')
7
+ if (mode === "writes")
8
8
  return annotations.readOnlyHint !== true;
9
- if (mode === 'approve')
9
+ if (mode === "approve")
10
10
  return false;
11
11
  if (annotations.destructiveHint === true)
12
12
  return true;
13
13
  if (annotations.readOnlyHint === true)
14
14
  return false;
15
- return (annotations.destructiveHint ?? true) || (annotations.openWorldHint ?? true);
15
+ return ((annotations.destructiveHint ?? true) ||
16
+ (annotations.openWorldHint ?? true));
16
17
  }
17
- export function externalPolicy(action, identity, settings) {
18
- const isFresh = identity.requiresStrictReview === true || identity.isSensitiveAction === true || identity.requiresUserInput === true;
19
- const shouldReview = isFresh || requiresMcpApproval(identity.annotations, identity.approvalMode);
20
- return immutable({ ...decision(action, shouldReview ? 'ask' : 'allow', shouldReview ? 'Review the exact registered external action' : 'Registered external tool approval policy permits this action'), approvalCategory: 'mcp_elicitations', requiresFreshReview: isFresh, requiresUserInput: identity.requiresUserInput === true });
18
+ export function externalPolicy(action, identity, _settings) {
19
+ const isFresh = identity.requiresStrictReview === true ||
20
+ identity.isSensitiveAction === true ||
21
+ identity.requiresUserInput === true;
22
+ const shouldReview = isFresh ||
23
+ requiresMcpApproval(identity.annotations, identity.approvalMode);
24
+ return immutable({
25
+ ...decision(action, shouldReview ? "ask" : "allow", shouldReview
26
+ ? "Review the exact registered external action"
27
+ : "Registered external tool approval policy permits this action"),
28
+ approvalCategory: "mcp_elicitations",
29
+ requiresFreshReview: isFresh,
30
+ requiresUserInput: identity.requiresUserInput === true,
31
+ });
21
32
  }
22
33
  /** The invocation comes from the final execute wrapper, never from model arguments. */
23
34
  export const externalInvocations = new AsyncLocalStorage();
@@ -1 +1 @@
1
- {"version":3,"file":"external.js","sourceRoot":"","sources":["../../src/tools/external.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAoD,MAAM,iBAAiB,CAAC;AAgBxG,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAAC,cAA+B,EAAE,EAAE,OAA6C,MAAM;IACxH,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,WAAW,CAAC,YAAY,KAAK,IAAI,CAAC;IAChE,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,WAAW,CAAC,eAAe,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACtD,IAAI,WAAW,CAAC,YAAY,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACpD,OAAO,CAAC,WAAW,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC;AACtF,CAAC;AACD,MAAM,UAAU,cAAc,CAAC,MAAmB,EAAE,QAA8B,EAAE,QAAuB;IACzG,MAAM,OAAO,GAAG,QAAQ,CAAC,oBAAoB,KAAK,IAAI,IAAI,QAAQ,CAAC,iBAAiB,KAAK,IAAI,IAAI,QAAQ,CAAC,iBAAiB,KAAK,IAAI,CAAC;IACrI,MAAM,YAAY,GAAG,OAAO,IAAI,mBAAmB,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjG,OAAO,SAAS,CAAC,EAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,6CAA6C,CAAC,CAAC,CAAC,8DAA8D,CAAC,EAAE,gBAAgB,EAAC,kBAAkB,EAAE,mBAAmB,EAAC,OAAO,EAAE,iBAAiB,EAAC,QAAQ,CAAC,iBAAiB,KAAK,IAAI,EAAC,CAAC,CAAC;AAClU,CAAC;AASD,uFAAuF;AACvF,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,iBAAiB,EAAsB,CAAC"}
1
+ {"version":3,"file":"external.js","sourceRoot":"","sources":["../../src/tools/external.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EACH,QAAQ,EAER,SAAS,GAGZ,MAAM,iBAAiB,CAAC;AAiBzB,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAC/B,cAA+B,EAAE,EACjC,OAA6C,MAAM;IAEnD,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,WAAW,CAAC,YAAY,KAAK,IAAI,CAAC;IAChE,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,WAAW,CAAC,eAAe,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACtD,IAAI,WAAW,CAAC,YAAY,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACpD,OAAO,CACH,CAAC,WAAW,CAAC,eAAe,IAAI,IAAI,CAAC;QACrC,CAAC,WAAW,CAAC,aAAa,IAAI,IAAI,CAAC,CACtC,CAAC;AACN,CAAC;AACD,MAAM,UAAU,cAAc,CAC1B,MAAmB,EACnB,QAA8B,EAC9B,SAAwB;IAExB,MAAM,OAAO,GACT,QAAQ,CAAC,oBAAoB,KAAK,IAAI;QACtC,QAAQ,CAAC,iBAAiB,KAAK,IAAI;QACnC,QAAQ,CAAC,iBAAiB,KAAK,IAAI,CAAC;IACxC,MAAM,YAAY,GACd,OAAO;QACP,mBAAmB,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACrE,OAAO,SAAS,CAAC;QACb,GAAG,QAAQ,CACP,MAAM,EACN,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAC9B,YAAY;YACR,CAAC,CAAC,6CAA6C;YAC/C,CAAC,CAAC,8DAA8D,CACvE;QACD,gBAAgB,EAAE,kBAAkB;QACpC,mBAAmB,EAAE,OAAO;QAC5B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,KAAK,IAAI;KACzD,CAAC,CAAC;AACP,CAAC;AAYD,uFAAuF;AACvF,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,iBAAiB,EAAsB,CAAC"}
@@ -1,14 +1,14 @@
1
- import { type InlineExtension, type McpExtensionOptions, type ToolDefinition } from '@earendil-works/pi-coding-agent';
2
- import type { GuardController } from './controller.js';
3
- import { type ExternalToolIdentity } from './external.js';
4
- type Tool = ToolDefinition<any, any, any>;
1
+ import { type ExtensionAPI, type InlineExtension, type McpExtensionOptions } from "@earendil-works/pi-coding-agent";
2
+ import type { GuardController } from "./controller.js";
3
+ import { type ExternalToolIdentity } from "./external.js";
4
+ type RegisteredToolDefinition = Parameters<ExtensionAPI["registerTool"]>[0];
5
5
  export interface ExternalExtension {
6
6
  readonly extension: InlineExtension;
7
7
  /** Trusted adapter metadata; model arguments and tool-result text never supply this. */
8
- readonly identifyTool: (definition: Tool) => ExternalToolIdentity;
8
+ readonly identifyTool: (definition: RegisteredToolDefinition) => ExternalToolIdentity;
9
9
  }
10
10
  export declare function guardedExternalExtension(input: ExternalExtension, controller: () => GuardController): InlineExtension;
11
- export type McpToolPolicies = Readonly<Record<string, Partial<Pick<ExternalToolIdentity, 'approvalMode'>>>>;
11
+ export type McpToolPolicies = Readonly<Record<string, Partial<Pick<ExternalToolIdentity, "approvalMode">>>>;
12
12
  /**
13
13
  * Pi 0.99.1 exports the extension API but not its default transport/config helpers.
14
14
  * This small, version-qualified seam preserves the SDK's transport, config and OAuth implementation.