@ian-pascoe/pi-minimal-subagents 0.6.2 → 0.6.4

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 CHANGED
@@ -178,15 +178,18 @@ lists: `"read"` grants `read`, `grep`, `find`, and `ls`; `"modify"` adds
178
178
  named ordinary tool and does not expand a preset. Coordinator tools are
179
179
  injected separately according to delegation and must not appear in `tools`;
180
180
  misuse returns an actionable error. Use the string preset when a child needs
181
- the complete read-only discovery bundle. Child sessions load the Root Agent's
181
+ the complete discovery bundle. Child sessions load the Root Agent's
182
182
  configured settings and extensions, excluding the recursive
183
183
  `pi-minimal-subagents` entrypoint. Project Context controls only project-scoped
184
184
  AGENTS instructions and skills; omitting it retains user instructions and
185
185
  skills plus project settings, extensions, providers, and tools. A configured
186
- `pi-codex-conversion` adapter replaces a complete granted tool group only; a
187
- read-only child retains Pi's read tools instead of gaining an arbitrary shell.
188
- Status reports effective adapter tools while the Launch Contract continues to
189
- record the originally granted capability names.
186
+ `pi-codex-conversion` adapter replaces a complete granted tool group only,
187
+ including the `"read"` preset's `read`, `grep`, `find`, and `ls` tools. Exact
188
+ tool arrays are replaced only when they contain the complete source group.
189
+ Because Codex performs discovery through `exec_command`, an adapted `"read"`
190
+ preset is not an enforced read-only boundary. Status reports effective adapter
191
+ tools while the Launch Contract continues to record the originally granted
192
+ capability names.
190
193
 
191
194
  `agent_message` reports whether a message was delivered through an active
192
195
  parent wait, queued for the recipient, or failed. `subagent_wait` can return an
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ian-pascoe/pi-minimal-subagents",
3
- "version": "0.6.2",
3
+ "version": "0.6.4",
4
4
  "private": false,
5
5
  "description": "Persistent nested subagents with bounded delegation for Pi",
6
6
  "keywords": [
@@ -85,8 +85,12 @@ import type {
85
85
  const EXTENSION_ENTRYPOINT = fileURLToPath(new URL("./index.ts", import.meta.url));
86
86
  const CODEX_CONVERSION_TOOL_ADAPTER_SOURCE = "npm:@howaboua/pi-codex-conversion";
87
87
  const CODEX_CONVERSION_TOOL_REPLACEMENTS = [
88
+ {
89
+ sourceToolNames: ["read", "grep", "find", "ls"],
90
+ runtimeToolNames: ["exec_command", "write_stdin"],
91
+ },
88
92
  { sourceToolNames: ["bash"], runtimeToolNames: ["exec_command", "write_stdin"] },
89
- { sourceToolNames: ["bash", "edit", "write"], runtimeToolNames: ["apply_patch"] },
93
+ { sourceToolNames: ["edit", "write"], runtimeToolNames: ["apply_patch"] },
90
94
  { sourceToolNames: ["bash", "edit", "write"], runtimeToolNames: ["exec", "wait"] },
91
95
  { sourceToolNames: ["bash", "edit", "write"], runtimeToolNames: ["notebook"] },
92
96
  ] as const;
@@ -90,7 +90,7 @@ export interface RuntimeToolReplacement {
90
90
  export interface RuntimeToolAdapter {
91
91
  /** Every tool registered by the adapter, used to defer initial tool selection until it loads. */
92
92
  readonly toolNames: readonly string[];
93
- /** Capability-preserving replacements recognized for this adapter. */
93
+ /** Runtime replacements recognized for this adapter. */
94
94
  readonly replacements: readonly RuntimeToolReplacement[];
95
95
  }
96
96
 
@@ -1039,7 +1039,7 @@ export class PiAgentSessionFactory implements AgentSessionFactory {
1039
1039
  agentDir: this.options.agentDir,
1040
1040
  model,
1041
1041
  thinkingLevel: agent.launch_contract.thinking_level,
1042
- tools: adaptRuntimeTools ? undefined : allowedToolNames,
1042
+ tools: [...allowedToolNames, ...adapterToolNames],
1043
1043
  customTools: coordinatorTools,
1044
1044
  resourceLoader,
1045
1045
  sessionManager,