@selesai/code 0.8.2 → 0.8.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/CHANGELOG.md +15 -0
- package/README.md +4 -2
- package/dist/cli/args.d.ts +2 -0
- package/dist/cli/args.js +18 -0
- package/dist/cli/config-selector.js +2 -2
- package/dist/cli/startup-ui.d.ts +1 -1
- package/dist/cli/startup-ui.js +2 -2
- package/dist/core/keybindings.d.ts +44 -4
- package/dist/core/llama/provider.js +22 -7
- package/dist/core/model-resolver.js +2 -0
- package/dist/core/model-runtime.d.ts +4 -2
- package/dist/core/model-runtime.js +23 -2
- package/dist/core/remote-catalog-provider.js +72 -67
- package/dist/core/settings-manager.d.ts +8 -0
- package/dist/core/settings-manager.js +18 -0
- package/dist/extensions/handoff-new.ts +1 -1
- package/dist/extensions/inline-skills.test.ts +1 -0
- package/dist/extensions/inline-skills.ts +1 -1
- package/dist/extensions/pi-intercom/CHANGELOG.md +25 -3
- package/dist/extensions/pi-intercom/README.md +34 -15
- package/dist/extensions/pi-intercom/broker/broker.ts +38 -141
- package/dist/extensions/pi-intercom/broker/client-liveness.test.ts +173 -0
- package/dist/extensions/pi-intercom/broker/client.ts +78 -150
- package/dist/extensions/pi-intercom/broker/extension-state.ts +18 -7
- package/dist/extensions/pi-intercom/broker/framing.ts +1 -1
- package/dist/extensions/pi-intercom/broker/protocol.ts +182 -0
- package/dist/extensions/pi-intercom/broker/spawn.test.ts +106 -7
- package/dist/extensions/pi-intercom/broker/spawn.ts +37 -11
- package/dist/extensions/pi-intercom/config.test.ts +8 -10
- package/dist/extensions/pi-intercom/config.ts +3 -3
- package/dist/extensions/pi-intercom/index.ts +218 -147
- package/dist/extensions/pi-intercom/intercom.integration.test.ts +891 -103
- package/dist/extensions/pi-intercom/package.json +3 -2
- package/dist/extensions/pi-intercom/project-agent.test.ts +145 -0
- package/dist/extensions/pi-intercom/project-agent.ts +324 -0
- package/dist/extensions/pi-intercom/reply-tracker.test.ts +86 -1
- package/dist/extensions/pi-intercom/reply-tracker.ts +41 -9
- package/dist/extensions/pi-intercom/skills/pi-intercom/SKILL.md +49 -9
- package/dist/extensions/pi-intercom/test/inline-message.test.ts +9 -9
- package/dist/extensions/pi-intercom/types.ts +3 -1
- package/dist/extensions/pi-intercom/ui/inline-message.ts +7 -7
- package/dist/extensions/pi-powerline-footer/.github/workflows/test.yml +2 -2
- package/dist/extensions/pi-powerline-footer/CHANGELOG.md +15 -1
- package/dist/extensions/pi-powerline-footer/README.md +20 -37
- package/dist/extensions/pi-powerline-footer/bash-mode/completion.ts +40 -25
- package/dist/extensions/pi-powerline-footer/bash-mode/editor.ts +149 -18
- package/dist/extensions/pi-powerline-footer/bash-mode/types.ts +1 -0
- package/dist/extensions/pi-powerline-footer/editor-performance.ts +99 -0
- package/dist/extensions/pi-powerline-footer/git-status.ts +15 -0
- package/dist/extensions/pi-powerline-footer/index.ts +394 -586
- package/dist/extensions/pi-powerline-footer/package.json +5 -6
- package/dist/extensions/pi-powerline-footer/powerline-config.ts +0 -18
- package/dist/extensions/pi-powerline-footer/queue/store.ts +8 -56
- package/dist/extensions/pi-powerline-footer/queue/types.ts +1 -2
- package/dist/extensions/pi-powerline-footer/segments.ts +0 -3
- package/dist/extensions/pi-powerline-footer/tests/bash-mode.test.ts +231 -1
- package/dist/extensions/pi-powerline-footer/tests/custom-items.test.ts +5 -19
- package/dist/extensions/pi-powerline-footer/tests/editor-performance.test.ts +43 -0
- package/dist/extensions/pi-powerline-footer/tests/fixed-editor-border.test.ts +2 -2
- package/dist/extensions/pi-powerline-footer/tests/git-optional-locks.test.ts +64 -0
- package/dist/extensions/pi-powerline-footer/tests/guide.test.ts +1 -1
- package/dist/extensions/pi-powerline-footer/tests/jump-shortcuts.test.ts +86 -19
- package/dist/extensions/pi-powerline-footer/tests/queue-store.test.ts +19 -149
- package/dist/extensions/pi-powerline-footer/tests/remaining-regressions.test.ts +6 -0
- package/dist/extensions/pi-powerline-footer/tests/usage-display.test.ts +5 -5
- package/dist/extensions/pi-powerline-footer/tsconfig.json +1 -1
- package/dist/extensions/pi-powerline-footer/types.ts +1 -2
- package/dist/extensions/pi-subagents/CHANGELOG.md +202 -14
- package/dist/extensions/pi-subagents/README.md +65 -1614
- package/dist/extensions/pi-subagents/agents/builder.md +0 -1
- package/dist/extensions/pi-subagents/agents/delegate.md +14 -0
- package/dist/extensions/pi-subagents/agents/oracle.md +74 -0
- package/dist/extensions/pi-subagents/agents/reviewer.md +78 -0
- package/dist/extensions/pi-subagents/agents/scout.md +50 -0
- package/dist/extensions/pi-subagents/agents/worker.md +58 -0
- package/dist/extensions/pi-subagents/docs/configuration.md +328 -0
- package/dist/extensions/pi-subagents/docs/extension-api.md +308 -0
- package/dist/extensions/pi-subagents/docs/missions.md +119 -0
- package/dist/extensions/pi-subagents/docs/models.md +192 -0
- package/dist/extensions/pi-subagents/docs/observability.md +174 -0
- package/dist/extensions/pi-subagents/docs/tool-reference.md +343 -0
- package/dist/extensions/pi-subagents/docs/watchdog.md +176 -0
- package/dist/extensions/pi-subagents/docs/workflows.md +163 -0
- package/dist/extensions/pi-subagents/inspector-runner.mjs +11 -0
- package/dist/extensions/pi-subagents/package-lock.json +152 -194
- package/dist/extensions/pi-subagents/package.json +9 -10
- package/dist/extensions/pi-subagents/prompts/gather-context-and-clarify.md +1 -1
- package/dist/extensions/pi-subagents/prompts/parallel-cleanup.md +9 -9
- package/dist/extensions/pi-subagents/prompts/parallel-research.md +6 -6
- package/dist/extensions/pi-subagents/prompts/parallel-review.md +8 -8
- package/dist/extensions/pi-subagents/prompts/review-loop.md +12 -12
- package/dist/extensions/pi-subagents/skills/pi-subagents/SKILL.md +22 -17
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/constraints-and-recipes.md +77 -72
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/execution-controls.md +177 -69
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/management-authoring-rpc.md +28 -8
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/prompting-and-roles.md +88 -66
- package/dist/extensions/pi-subagents/src/agents/agent-management.ts +3 -3
- package/dist/extensions/pi-subagents/src/agents/agent-refinements.ts +624 -0
- package/dist/extensions/pi-subagents/src/agents/agents.ts +29 -16
- package/dist/extensions/pi-subagents/src/agents/frontmatter.ts +7 -3
- package/dist/extensions/pi-subagents/src/agents/proactive-skills.ts +2 -2
- package/dist/extensions/pi-subagents/src/agents/skills.ts +2 -9
- package/dist/extensions/pi-subagents/src/api/delegation.ts +1 -2
- package/dist/extensions/pi-subagents/src/api/project-panes.ts +30 -0
- package/dist/extensions/pi-subagents/src/extension/config.ts +56 -8
- package/dist/extensions/pi-subagents/src/extension/control-notices.ts +2 -2
- package/dist/extensions/pi-subagents/src/extension/fanout-child.ts +51 -26
- package/dist/extensions/pi-subagents/src/extension/index.ts +119 -50
- package/dist/extensions/pi-subagents/src/extension/public-execution.ts +72 -0
- package/dist/extensions/pi-subagents/src/extension/rpc.ts +15 -15
- package/dist/extensions/pi-subagents/src/extension/schemas.ts +58 -21
- package/dist/extensions/pi-subagents/src/extension/subagent-guide.ts +39 -0
- package/dist/extensions/pi-subagents/src/extension/tool-description.ts +47 -25
- package/dist/extensions/pi-subagents/src/inspectors/herdr/actions.ts +3 -3
- package/dist/extensions/pi-subagents/src/inspectors/herdr/project-panes.ts +460 -64
- package/dist/extensions/pi-subagents/src/intercom/native-supervisor-channel.ts +102 -4
- package/dist/extensions/pi-subagents/src/missions/actions.ts +77 -16
- package/dist/extensions/pi-subagents/src/missions/goal-driver.ts +162 -0
- package/dist/extensions/pi-subagents/src/missions/lifecycle.ts +65 -14
- package/dist/extensions/pi-subagents/src/missions/store.ts +147 -5
- package/dist/extensions/pi-subagents/src/missions/types.ts +58 -3
- package/dist/extensions/pi-subagents/src/missions/workflow-state.ts +256 -0
- package/dist/extensions/pi-subagents/src/profiles/profiles.ts +8 -8
- package/dist/extensions/pi-subagents/src/runs/background/active-run-index.ts +42 -0
- package/dist/extensions/pi-subagents/src/runs/background/async-execution.ts +41 -7
- package/dist/extensions/pi-subagents/src/runs/background/async-job-tracker.ts +294 -134
- package/dist/extensions/pi-subagents/src/runs/background/async-resume.ts +19 -3
- package/dist/extensions/pi-subagents/src/runs/background/async-status.ts +39 -6
- package/dist/extensions/pi-subagents/src/runs/background/completion-replay.ts +267 -0
- package/dist/extensions/pi-subagents/src/runs/background/control-channel.ts +145 -60
- package/dist/extensions/pi-subagents/src/runs/background/result-watcher.ts +114 -6
- package/dist/extensions/pi-subagents/src/runs/background/resume-guidance.ts +33 -0
- package/dist/extensions/pi-subagents/src/runs/background/retained-children.ts +68 -0
- package/dist/extensions/pi-subagents/src/runs/background/run-id-resolver.ts +71 -0
- package/dist/extensions/pi-subagents/src/runs/background/run-status.ts +21 -2
- package/dist/extensions/pi-subagents/src/runs/background/scheduled-runs.ts +42 -14
- package/dist/extensions/pi-subagents/src/runs/background/stale-run-reconciler.ts +12 -24
- package/dist/extensions/pi-subagents/src/runs/background/steering.ts +7 -5
- package/dist/extensions/pi-subagents/src/runs/background/subagent-runner.ts +152 -68
- package/dist/extensions/pi-subagents/src/runs/background/subagent-wait.ts +17 -4
- package/dist/extensions/pi-subagents/src/runs/background/wait-completions.ts +146 -0
- package/dist/extensions/pi-subagents/src/runs/background/wait-subscriptions.ts +21 -5
- package/dist/extensions/pi-subagents/src/runs/foreground/async-dismiss-action.ts +85 -0
- package/dist/extensions/pi-subagents/src/runs/foreground/async-steering-action.ts +43 -18
- package/dist/extensions/pi-subagents/src/runs/foreground/chain-clarify.ts +20 -19
- package/dist/extensions/pi-subagents/src/runs/foreground/chain-execution.ts +3 -0
- package/dist/extensions/pi-subagents/src/runs/foreground/execution.ts +55 -26
- package/dist/extensions/pi-subagents/src/runs/foreground/foreground-history.ts +137 -0
- package/dist/extensions/pi-subagents/src/runs/foreground/subagent-executor.ts +798 -112
- package/dist/extensions/pi-subagents/src/runs/foreground/workflow-foreground-steering.ts +187 -0
- package/dist/extensions/pi-subagents/src/runs/shared/acceptance.ts +165 -22
- package/dist/extensions/pi-subagents/src/runs/shared/dynamic-fanout.ts +1 -1
- package/dist/extensions/pi-subagents/src/runs/shared/mcp-direct-tool-allowlist.ts +2 -0
- package/dist/extensions/pi-subagents/src/runs/shared/model-fallback.ts +9 -5
- package/dist/extensions/pi-subagents/src/runs/shared/model-scope.ts +12 -2
- package/dist/extensions/pi-subagents/src/runs/shared/parallel-utils.ts +1 -0
- package/dist/extensions/pi-subagents/src/runs/shared/pi-args.ts +465 -116
- package/dist/extensions/pi-subagents/src/runs/shared/pi-spawn.ts +10 -10
- package/dist/extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.ts +189 -32
- package/dist/extensions/pi-subagents/src/runs/shared/task-intent.ts +2 -2
- package/dist/extensions/pi-subagents/src/runs/shared/worktree.ts +3 -3
- package/dist/extensions/pi-subagents/src/shared/artifacts.ts +128 -3
- package/dist/extensions/pi-subagents/src/shared/display-text.ts +100 -0
- package/dist/extensions/pi-subagents/src/shared/file-coalescer.ts +9 -0
- package/dist/extensions/pi-subagents/src/shared/fork-context.ts +13 -0
- package/dist/extensions/pi-subagents/src/shared/formatters.ts +4 -6
- package/dist/extensions/pi-subagents/src/shared/prompt-resources.ts +51 -0
- package/dist/extensions/pi-subagents/src/shared/settings.ts +41 -11
- package/dist/extensions/pi-subagents/src/shared/types.ts +100 -3
- package/dist/extensions/pi-subagents/src/shared/utf8.ts +11 -0
- package/dist/extensions/pi-subagents/src/shared/utils.ts +43 -33
- package/dist/extensions/pi-subagents/src/slash/delegation-adapters.ts +1 -14
- package/dist/extensions/pi-subagents/src/slash/inline-subagents.ts +1 -1
- package/dist/extensions/pi-subagents/src/slash/prompt-template-bridge.ts +14 -12
- package/dist/extensions/pi-subagents/src/slash/prompt-workflows.ts +176 -21
- package/dist/extensions/pi-subagents/src/slash/slash-bridge.ts +12 -6
- package/dist/extensions/pi-subagents/src/slash/slash-commands.ts +52 -18
- package/dist/extensions/pi-subagents/src/slash/slash-live-state.ts +36 -5
- package/dist/extensions/pi-subagents/src/tui/fleet-status.ts +30 -16
- package/dist/extensions/pi-subagents/src/tui/fleet.ts +151 -31
- package/dist/extensions/pi-subagents/src/tui/render.ts +201 -68
- package/dist/extensions/pi-subagents/src/types/pi-runtime-compat.d.ts +0 -6
- package/dist/extensions/pi-subagents/src/watchdog/change-signature.ts +5 -4
- package/dist/extensions/pi-subagents/src/watchdog/lsp-diagnostics.ts +0 -1
- package/dist/extensions/pi-subagents/src/workflows/scripted-workflow.ts +313 -25
- package/dist/extensions/pi-subagents/test/e2e/real-session-subagent.test.ts +15 -15
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/bun/cli.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/bun/register-bedrock.d.ts +2 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/bun/restore-sandbox-env.d.ts +17 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/cli/args.d.ts +57 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/cli/config-selector.d.ts +16 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/cli/file-processor.d.ts +15 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/cli/initial-message.d.ts +18 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/cli/list-models.d.ts +9 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/cli/project-trust.d.ts +10 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/cli/session-picker.d.ts +10 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/cli/startup-ui.d.ts +20 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/cli.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/config.d.ts +96 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/agent-session-runtime.d.ts +119 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/agent-session-services.d.ts +85 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/agent-session.d.ts +620 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/auth-guidance.d.ts +5 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/auth-storage.d.ts +56 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/bash-executor.d.ts +32 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/cache-stats.d.ts +49 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/compaction/branch-summarization.d.ts +93 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/compaction/compaction.d.ts +128 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/compaction/index.d.ts +7 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/compaction/utils.d.ts +38 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/defaults.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/diagnostics.d.ts +15 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/event-bus.d.ts +9 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/exec.d.ts +29 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/experimental.d.ts +2 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/export-html/ansi-to-html.d.ts +22 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/export-html/index.d.ts +37 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/export-html/tool-renderer.d.ts +34 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/extensions/index.d.ts +12 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/extensions/loader.d.ts +23 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/extensions/runner.d.ts +171 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/extensions/types.d.ts +1261 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/extensions/wrapper.d.ts +20 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/footer-data-provider.d.ts +54 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/http-dispatcher.d.ts +22 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/index.d.ts +13 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/keybindings.d.ts +358 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/messages.d.ts +77 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/model-config.d.ts +512 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/model-registry.d.ts +43 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/model-resolver.d.ts +121 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/model-runtime.d.ts +82 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/models-store.d.ts +17 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/output-guard.d.ts +7 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/package-manager.d.ts +210 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/project-trust.d.ts +15 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/prompt-templates.d.ts +54 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/provider-attribution.d.ts +4 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/provider-composer.d.ts +55 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/radius.d.ts +2 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/remote-catalog-provider.d.ts +5 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/resolve-config-value.d.ts +30 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/resource-loader.d.ts +206 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/runtime-credentials.d.ts +15 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/sdk.d.ts +106 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/session-cwd.d.ts +19 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/session-manager.d.ts +356 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/settings-manager.d.ts +297 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/skills.d.ts +60 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/slash-commands.d.ts +15 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/source-info.d.ts +18 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/system-prompt.d.ts +28 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/telemetry.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/timings.d.ts +10 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/bash.d.ts +68 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/edit-diff.d.ts +106 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/edit.d.ts +51 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/file-mutation-queue.d.ts +6 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/find.d.ts +35 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/grep.d.ts +37 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/index.d.ts +40 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/ls.d.ts +37 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/output-accumulator.d.ts +52 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/path-utils.d.ts +10 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/read.d.ts +35 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/render-utils.d.ts +24 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/tool-definition-wrapper.d.ts +14 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/truncate.d.ts +70 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/tools/write.d.ts +26 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/trust-manager.d.ts +36 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/core/usage-totals.d.ts +19 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/extensions/index.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/extensions/llama/client.d.ts +61 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/extensions/llama/huggingface.d.ts +23 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/extensions/llama/index.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/extensions/llama/provider.d.ts +10 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/extensions/llama/ui.d.ts +42 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/index.d.ts +35 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/main.d.ts +12 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/migrations.d.ts +33 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/index.d.ts +9 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/armin.d.ts +34 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/assistant-message.d.ts +22 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/bash-execution.d.ts +34 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/bordered-loader.d.ts +16 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/branch-summary-message.d.ts +16 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/compaction-summary-message.d.ts +16 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/config-selector.d.ts +102 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/countdown-timer.d.ts +14 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/custom-editor.d.ts +21 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/custom-entry.d.ts +19 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/custom-message.d.ts +20 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/daxnuts.d.ts +23 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/diff.d.ts +12 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/dynamic-border.d.ts +15 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/earendil-announcement.d.ts +5 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/extension-editor.d.ts +22 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/extension-input.d.ts +23 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/extension-selector.d.ts +26 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/first-time-setup.d.ts +25 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/footer.d.ts +32 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/index.d.ts +34 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/keybinding-hints.d.ts +13 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/login-dialog.d.ts +52 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/model-selector.d.ts +54 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/oauth-selector.d.ts +33 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/scoped-models-selector.d.ts +42 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/session-selector-search.d.ts +23 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/session-selector.d.ts +95 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/settings-selector.d.ts +77 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/show-images-selector.d.ts +10 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/skill-invocation-message.d.ts +17 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/status-indicator.d.ts +28 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/theme-selector.d.ts +11 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/thinking-selector.d.ts +11 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/tool-execution.d.ts +63 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/tree-selector.d.ts +94 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/trust-selector.d.ts +23 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/user-message-selector.d.ts +30 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/user-message.d.ts +14 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/components/visual-truncate.d.ts +24 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/interactive-mode.d.ts +394 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/model-search.d.ts +12 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/theme/theme-controller.d.ts +29 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/interactive/theme/theme.d.ts +120 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/print-mode.d.ts +28 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/rpc/jsonl.d.ts +17 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/rpc/rpc-client.d.ts +246 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/rpc/rpc-mode.d.ts +20 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/modes/rpc/rpc-types.d.ts +457 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/package-manager-cli.d.ts +8 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/rpc-entry.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/ansi.d.ts +2 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/changelog.d.ts +22 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/child-process.d.ts +18 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/clipboard-image.d.ts +11 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/clipboard-native.d.ts +11 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/clipboard.d.ts +4 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/deprecation.d.ts +4 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/exif-orientation.d.ts +5 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/frontmatter.d.ts +8 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/fs-watch.d.ts +5 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/git.d.ts +26 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/html.d.ts +7 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/image-convert.d.ts +10 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/image-process.d.ts +18 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/image-resize-core.d.ts +30 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/image-resize-worker.d.ts +2 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/image-resize.d.ts +16 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/json.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/mime.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/open-browser.d.ts +9 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/paths.d.ts +31 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/photon.d.ts +21 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/pi-user-agent.d.ts +2 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/shell.d.ts +31 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/sleep.d.ts +5 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/syntax-highlight.d.ts +12 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/tools-manager.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/version-check.d.ts +15 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/dist/utils/windows-self-update.d.ts +3 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/index.mjs +84 -0
- package/dist/extensions/pi-subagents/test/fixtures/pi-coding-agent-shim/package.json +14 -0
- package/dist/extensions/pi-subagents/test/integration/acceptance-file-report.test.ts +15 -15
- package/dist/extensions/pi-subagents/test/integration/async-execution.test.ts +411 -300
- package/dist/extensions/pi-subagents/test/integration/async-job-tracker.test.ts +309 -123
- package/dist/extensions/pi-subagents/test/integration/async-status.test.ts +99 -56
- package/dist/extensions/pi-subagents/test/integration/chain-clarify.test.ts +62 -16
- package/dist/extensions/pi-subagents/test/integration/chain-execution.test.ts +159 -108
- package/dist/extensions/pi-subagents/test/integration/detect-error.test.ts +1 -1
- package/dist/extensions/pi-subagents/test/integration/external-cli-runner.test.ts +4 -2
- package/dist/extensions/pi-subagents/test/integration/fork-context-execution.test.ts +56 -56
- package/dist/extensions/pi-subagents/test/integration/intercom-result-delivery.test.ts +114 -45
- package/dist/extensions/pi-subagents/test/integration/parallel-execution.test.ts +57 -19
- package/dist/extensions/pi-subagents/test/integration/render-fork-badge.test.ts +106 -106
- package/dist/extensions/pi-subagents/test/integration/render-widget.test.ts +416 -106
- package/dist/extensions/pi-subagents/test/integration/result-watcher.test.ts +287 -17
- package/dist/extensions/pi-subagents/test/integration/single-execution.test.ts +809 -87
- package/dist/extensions/pi-subagents/test/integration/slash-commands.test.ts +107 -20
- package/dist/extensions/pi-subagents/test/integration/slash-live-state.test.ts +9 -9
- package/dist/extensions/pi-subagents/test/integration/template-resolution.test.ts +26 -6
- package/dist/extensions/pi-subagents/test/integration/top-level-async.test.ts +2 -2
- package/dist/extensions/pi-subagents/test/support/helpers.ts +2 -0
- package/dist/extensions/pi-subagents/test/support/mock-pi-script.mjs +1 -1
- package/dist/extensions/pi-subagents/test/support/ts-loader.mjs +0 -8
- package/dist/extensions/pi-subagents/test/unit/acceptance.test.ts +163 -58
- package/dist/extensions/pi-subagents/test/unit/agent-disabled.test.ts +15 -15
- package/dist/extensions/pi-subagents/test/unit/agent-eject-disable.test.ts +66 -66
- package/dist/extensions/pi-subagents/test/unit/agent-frontmatter.test.ts +334 -248
- package/dist/extensions/pi-subagents/test/unit/agent-management.test.ts +52 -52
- package/dist/extensions/pi-subagents/test/unit/agent-memory.test.ts +26 -26
- package/dist/extensions/pi-subagents/test/unit/agent-overrides.test.ts +99 -99
- package/dist/extensions/pi-subagents/test/unit/agent-refinements.test.ts +160 -0
- package/dist/extensions/pi-subagents/test/unit/agent-selection.test.ts +9 -9
- package/dist/extensions/pi-subagents/test/unit/artifacts.test.ts +43 -1
- package/dist/extensions/pi-subagents/test/unit/async-execution.test.ts +36 -10
- package/dist/extensions/pi-subagents/test/unit/async-interrupt-action.test.ts +387 -30
- package/dist/extensions/pi-subagents/test/unit/async-permission-session.test.ts +9 -9
- package/dist/extensions/pi-subagents/test/unit/async-recovery-descriptor.test.ts +2 -2
- package/dist/extensions/pi-subagents/test/unit/async-resume.test.ts +94 -40
- package/dist/extensions/pi-subagents/test/unit/background-work.test.ts +5 -3
- package/dist/extensions/pi-subagents/test/unit/builtin-agent-documentation.test.ts +7 -7
- package/dist/extensions/pi-subagents/test/unit/capability-ceiling-agent-allowlist.test.ts +19 -19
- package/dist/extensions/pi-subagents/test/unit/chain-append.test.ts +19 -19
- package/dist/extensions/pi-subagents/test/unit/chain-root-attachment.test.ts +9 -9
- package/dist/extensions/pi-subagents/test/unit/chain-serializer.test.ts +20 -20
- package/dist/extensions/pi-subagents/test/unit/child-transcript.test.ts +9 -9
- package/dist/extensions/pi-subagents/test/unit/compaction-resume.test.ts +35 -5
- package/dist/extensions/pi-subagents/test/unit/completion-dedupe.test.ts +2 -2
- package/dist/extensions/pi-subagents/test/unit/completion-guard.test.ts +52 -52
- package/dist/extensions/pi-subagents/test/unit/completion-replay.test.ts +187 -0
- package/dist/extensions/pi-subagents/test/unit/control-channel.test.ts +125 -71
- package/dist/extensions/pi-subagents/test/unit/control-notices.test.ts +18 -3
- package/dist/extensions/pi-subagents/test/unit/default-extensions.test.ts +12 -12
- package/dist/extensions/pi-subagents/test/unit/delegation-api.test.ts +17 -23
- package/dist/extensions/pi-subagents/test/unit/doctor.test.ts +1 -1
- package/dist/extensions/pi-subagents/test/unit/dynamic-fanout.test.ts +25 -25
- package/dist/extensions/pi-subagents/test/unit/extra-agent-dirs.test.ts +3 -3
- package/dist/extensions/pi-subagents/test/unit/file-coalescer.test.ts +15 -0
- package/dist/extensions/pi-subagents/test/unit/fleet-status.test.ts +62 -44
- package/dist/extensions/pi-subagents/test/unit/fleet.test.ts +329 -37
- package/dist/extensions/pi-subagents/test/unit/foreground-control.test.ts +4 -4
- package/dist/extensions/pi-subagents/test/unit/foreground-tool-call-compaction.test.ts +37 -0
- package/dist/extensions/pi-subagents/test/unit/herdr-inspector-bootstrap.test.ts +69 -0
- package/dist/extensions/pi-subagents/test/unit/herdr-inspector.test.ts +79 -2
- package/dist/extensions/pi-subagents/test/unit/herdr-status-bridge.test.ts +102 -49
- package/dist/extensions/pi-subagents/test/unit/index-child-registration.test.ts +98 -32
- package/dist/extensions/pi-subagents/test/unit/intercom-bridge.test.ts +5 -5
- package/dist/extensions/pi-subagents/test/unit/mission-goal-driver.test.ts +116 -0
- package/dist/extensions/pi-subagents/test/unit/mission-lifecycle.test.ts +55 -7
- package/dist/extensions/pi-subagents/test/unit/mission-store.test.ts +289 -13
- package/dist/extensions/pi-subagents/test/unit/model-fallback.test.ts +28 -1
- package/dist/extensions/pi-subagents/test/unit/model-scope-settings.test.ts +2 -2
- package/dist/extensions/pi-subagents/test/unit/model-scope.test.ts +11 -2
- package/dist/extensions/pi-subagents/test/unit/native-supervisor-channel.test.ts +84 -10
- package/dist/extensions/pi-subagents/test/unit/nested-control.test.ts +122 -8
- package/dist/extensions/pi-subagents/test/unit/nested-events.test.ts +8 -8
- package/dist/extensions/pi-subagents/test/unit/notify.test.ts +24 -24
- package/dist/extensions/pi-subagents/test/unit/package-manifest.test.ts +16 -2
- package/dist/extensions/pi-subagents/test/unit/parallel-handoff.test.ts +7 -7
- package/dist/extensions/pi-subagents/test/unit/parallel-utils.test.ts +10 -10
- package/dist/extensions/pi-subagents/test/unit/path-handling.test.ts +3 -3
- package/dist/extensions/pi-subagents/test/unit/path-resolution.test.ts +26 -17
- package/dist/extensions/pi-subagents/test/unit/pi-args-permission-system.test.ts +405 -0
- package/dist/extensions/pi-subagents/test/unit/pi-args.test.ts +357 -92
- package/dist/extensions/pi-subagents/test/unit/pi-coding-agent-dir.test.ts +22 -6
- package/dist/extensions/pi-subagents/test/unit/pi-spawn.test.ts +6 -6
- package/dist/extensions/pi-subagents/test/unit/preflight.test.ts +43 -43
- package/dist/extensions/pi-subagents/test/unit/proactive-skills.test.ts +13 -13
- package/dist/extensions/pi-subagents/test/unit/process-terminal.test.ts +4 -4
- package/dist/extensions/pi-subagents/test/unit/profiles.test.ts +19 -19
- package/dist/extensions/pi-subagents/test/unit/project-panes-public-api.test.ts +243 -0
- package/dist/extensions/pi-subagents/test/unit/prompt-template-bridge.test.ts +68 -168
- package/dist/extensions/pi-subagents/test/unit/prompt-workflows.test.ts +58 -15
- package/dist/extensions/pi-subagents/test/unit/public-execution.test.ts +40 -0
- package/dist/extensions/pi-subagents/test/unit/reads-resolution.test.ts +66 -0
- package/dist/extensions/pi-subagents/test/unit/render-helpers.test.ts +47 -28
- package/dist/extensions/pi-subagents/test/unit/result-intercom.test.ts +12 -12
- package/dist/extensions/pi-subagents/test/unit/retained-children.test.ts +57 -0
- package/dist/extensions/pi-subagents/test/unit/rpc.test.ts +107 -27
- package/dist/extensions/pi-subagents/test/unit/run-id-resolver.test.ts +1 -1
- package/dist/extensions/pi-subagents/test/unit/run-status.test.ts +56 -50
- package/dist/extensions/pi-subagents/test/unit/scheduled-runs.test.ts +69 -28
- package/dist/extensions/pi-subagents/test/unit/scheduled-store-root.test.ts +67 -0
- package/dist/extensions/pi-subagents/test/unit/schemas.test.ts +59 -44
- package/dist/extensions/pi-subagents/test/unit/scripted-workflow.test.ts +424 -49
- package/dist/extensions/pi-subagents/test/unit/skills-fallback.test.ts +23 -1
- package/dist/extensions/pi-subagents/test/unit/slash-bridge.test.ts +32 -5
- package/dist/extensions/pi-subagents/test/unit/stale-run-reconciler.test.ts +13 -13
- package/dist/extensions/pi-subagents/test/unit/steering-action.test.ts +120 -91
- package/dist/extensions/pi-subagents/test/unit/steering.test.ts +2 -2
- package/dist/extensions/pi-subagents/test/unit/subagent-action-recovery.test.ts +85 -0
- package/dist/extensions/pi-subagents/test/unit/subagent-control.test.ts +35 -35
- package/dist/extensions/pi-subagents/test/unit/subagent-guide.test.ts +24 -0
- package/dist/extensions/pi-subagents/test/unit/subagent-prompt-runtime.test.ts +312 -22
- package/dist/extensions/pi-subagents/test/unit/subagent-wait.test.ts +150 -15
- package/dist/extensions/pi-subagents/test/unit/task-intent.test.ts +26 -26
- package/dist/extensions/pi-subagents/test/unit/timeout-defaults.test.ts +73 -0
- package/dist/extensions/pi-subagents/test/unit/tool-description.test.ts +76 -25
- package/dist/extensions/pi-subagents/test/unit/turn-budget.test.ts +5 -5
- package/dist/extensions/pi-subagents/test/unit/wait-subscriptions.test.ts +55 -6
- package/dist/extensions/pi-subagents/test/unit/watchdog-child-status.test.ts +13 -13
- package/dist/extensions/pi-subagents/test/unit/watchdog-lsp-diagnostics.test.ts +1 -1
- package/dist/extensions/pi-subagents/test/unit/watchdog-runtime.test.ts +1 -1
- package/dist/extensions/pi-subagents/test/unit/watchdog-settings.test.ts +8 -8
- package/dist/extensions/pi-subagents/test/unit/widget-nested-render.test.ts +6 -6
- package/dist/extensions/pi-subagents/test/unit/workflow-chat-progress.test.ts +138 -11
- package/dist/extensions/pi-subagents/test/unit/workflow-graph.test.ts +8 -8
- package/dist/extensions/pi-subagents/test/unit/workflow-launch-params.test.ts +113 -0
- package/dist/extensions/pi-subagents/test/unit/worktree.test.ts +7 -7
- package/dist/extensions/pi-subagents/test/unit/writer-budget-guidance.test.ts +6 -6
- package/dist/extensions/workflow/extension.ts +21 -19
- package/dist/extensions/workflow/modes.ts +65 -0
- package/dist/index.d.ts +1 -1
- package/dist/main.js +1 -0
- package/dist/modes/interactive/components/settings-selector.d.ts +6 -2
- package/dist/modes/interactive/components/settings-selector.js +20 -0
- package/dist/modes/interactive/interactive-mode.d.ts +28 -0
- package/dist/modes/interactive/interactive-mode.js +214 -28
- package/dist/modes/interactive/theme/dark.json +1 -0
- package/dist/modes/interactive/theme/light.json +1 -0
- package/dist/modes/interactive/theme/theme-controller.d.ts +3 -0
- package/dist/modes/interactive/theme/theme-controller.js +10 -1
- package/dist/modes/interactive/theme/theme.d.ts +2 -2
- package/dist/modes/interactive/theme/theme.js +24 -6
- package/dist/skills/pi-subagents/SKILL.md +20 -15
- package/dist/skills/pi-subagents/references/constraints-and-recipes.md +77 -83
- package/dist/skills/pi-subagents/references/execution-controls.md +215 -106
- package/dist/skills/pi-subagents/references/management-authoring-rpc.md +29 -9
- package/dist/skills/pi-subagents/references/prompting-and-roles.md +58 -43
- package/docs/keybindings.md +35 -7
- package/docs/plans/workflow-autoloop-reference.md +192 -0
- package/docs/plans/workflow-subagent-consolidation-planb.md +374 -0
- package/docs/plans/workflow-subagent-scripted-merge.md +406 -0
- package/docs/settings.md +16 -14
- package/docs/usage.md +5 -0
- package/package.json +5 -5
- package/dist/extensions/pi-powerline-footer/fixed-editor/cluster.ts +0 -113
- package/dist/extensions/pi-powerline-footer/fixed-editor/terminal-split.ts +0 -1080
- package/dist/extensions/pi-powerline-footer/tests/fixed-editor.test.ts +0 -1452
- package/dist/extensions/workflow/adapter.ts +0 -949
- package/dist/extensions/workflow/modes/loop.ts +0 -74
- package/dist/extensions/workflow/modes/prototype.ts +0 -170
- package/dist/extensions/workflow/modes/quicktype.ts +0 -150
- package/dist/extensions/workflow/modes/task.ts +0 -105
- package/dist/extensions/workflow/run-state.ts +0 -124
- package/dist/extensions/workflow/state-machine.ts +0 -484
- package/dist/extensions/workflow/validators.ts +0 -42
|
@@ -232,7 +232,7 @@ describe("detectSubagentError", { skip: !available ? "utils not importable" : un
|
|
|
232
232
|
// ---- Real-world regression test ----
|
|
233
233
|
|
|
234
234
|
it("real-world: 19-read review run with trailing EISDIR", () => {
|
|
235
|
-
// Simulate the actual _impl-
|
|
235
|
+
// Simulate the actual _impl-reviewer run that produced a false positive
|
|
236
236
|
const readResults = Array.from({ length: 18 }, (_, i) =>
|
|
237
237
|
toolResult("read", `contents of file ${i + 1}`),
|
|
238
238
|
);
|
|
@@ -4,6 +4,7 @@ import * as fs from "node:fs";
|
|
|
4
4
|
import * as os from "node:os";
|
|
5
5
|
import * as path from "node:path";
|
|
6
6
|
import { afterEach, describe, it } from "node:test";
|
|
7
|
+
import { fileURLToPath } from "node:url";
|
|
7
8
|
|
|
8
9
|
const tempDirs: string[] = [];
|
|
9
10
|
afterEach(() => {
|
|
@@ -12,7 +13,7 @@ afterEach(() => {
|
|
|
12
13
|
|
|
13
14
|
function runProcess(command: string, args: string[], cwd: string): Promise<number | null> {
|
|
14
15
|
return new Promise((resolve, reject) => {
|
|
15
|
-
const child = spawn(command, args, { cwd, stdio: "inherit", shell: false
|
|
16
|
+
const child = spawn(command, args, { cwd, stdio: "inherit", shell: false });
|
|
16
17
|
child.once("error", reject);
|
|
17
18
|
child.once("close", resolve);
|
|
18
19
|
});
|
|
@@ -45,7 +46,8 @@ describe("external CLI async lifecycle", () => {
|
|
|
45
46
|
resultMode: "single",
|
|
46
47
|
}));
|
|
47
48
|
const repo = path.resolve(import.meta.dirname, "../..");
|
|
48
|
-
const
|
|
49
|
+
const jitiCli = path.join(path.dirname(fileURLToPath(import.meta.resolve("jiti/package.json"))), "lib", "jiti-cli.mjs");
|
|
50
|
+
const exitCode = await runProcess(process.execPath, [jitiCli, path.join(repo, "src/runs/background/subagent-runner.ts"), configPath], repo);
|
|
49
51
|
assert.equal(exitCode, 0);
|
|
50
52
|
const status = JSON.parse(fs.readFileSync(path.join(asyncDir, "status.json"), "utf-8"));
|
|
51
53
|
assert.equal(status.state, "complete");
|
|
@@ -335,14 +335,14 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
335
335
|
const { manager, openedPaths, branchedLeafIds } = makeForkingSessionManagerRecorder({ sessionFile: parentSessionFile, leafId: "leaf-current" });
|
|
336
336
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
337
337
|
agents: [
|
|
338
|
-
{ name: "
|
|
338
|
+
{ name: "worker", description: "Worker", defaultContext: "fork" },
|
|
339
339
|
],
|
|
340
340
|
projectAgentsDir: null,
|
|
341
341
|
}));
|
|
342
342
|
|
|
343
343
|
const result = await executor.execute(
|
|
344
344
|
"id",
|
|
345
|
-
{ agent: "
|
|
345
|
+
{ agent: "worker", task: "test" },
|
|
346
346
|
new AbortController().signal,
|
|
347
347
|
undefined,
|
|
348
348
|
makeCtx(manager),
|
|
@@ -376,14 +376,14 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
376
376
|
};
|
|
377
377
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
378
378
|
agents: [
|
|
379
|
-
{ name: "
|
|
379
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "anthropic/claude-sonnet-4-5:high", thinking: "high" },
|
|
380
380
|
],
|
|
381
381
|
projectAgentsDir: null,
|
|
382
382
|
}));
|
|
383
383
|
|
|
384
384
|
const result = await executor.execute(
|
|
385
385
|
"id",
|
|
386
|
-
{ agent: "
|
|
386
|
+
{ agent: "worker", task: "test" },
|
|
387
387
|
new AbortController().signal,
|
|
388
388
|
undefined,
|
|
389
389
|
makeCtx(manager),
|
|
@@ -433,7 +433,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
433
433
|
};
|
|
434
434
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
435
435
|
agents: [
|
|
436
|
-
{ name: "
|
|
436
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "openai/gpt-5-mini:high", fallbackModels: ["anthropic/claude-sonnet-4:low"], thinking: "high" },
|
|
437
437
|
],
|
|
438
438
|
projectAgentsDir: null,
|
|
439
439
|
}));
|
|
@@ -449,7 +449,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
449
449
|
};
|
|
450
450
|
const result = await executor.execute(
|
|
451
451
|
"id",
|
|
452
|
-
{ agent: "
|
|
452
|
+
{ agent: "worker", task: "test" },
|
|
453
453
|
new AbortController().signal,
|
|
454
454
|
undefined,
|
|
455
455
|
ctx,
|
|
@@ -482,7 +482,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
482
482
|
};
|
|
483
483
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
484
484
|
agents: [
|
|
485
|
-
{ name: "
|
|
485
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "openai/gpt-5-mini:high", thinking: "high" },
|
|
486
486
|
],
|
|
487
487
|
projectAgentsDir: null,
|
|
488
488
|
}));
|
|
@@ -495,7 +495,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
495
495
|
};
|
|
496
496
|
const result = await executor.execute(
|
|
497
497
|
"id",
|
|
498
|
-
{ agent: "
|
|
498
|
+
{ agent: "worker", task: "test" },
|
|
499
499
|
new AbortController().signal,
|
|
500
500
|
undefined,
|
|
501
501
|
ctx,
|
|
@@ -516,7 +516,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
516
516
|
const manager = makeSignedThinkingSessionManager(childSessionFile);
|
|
517
517
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
518
518
|
agents: [
|
|
519
|
-
{ name: "
|
|
519
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "openai/gpt-5-mini:high", thinking: "high" },
|
|
520
520
|
],
|
|
521
521
|
projectAgentsDir: null,
|
|
522
522
|
modelScope: { enforce: true, allow: ["anthropic/*"] },
|
|
@@ -533,7 +533,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
533
533
|
try {
|
|
534
534
|
const result = await executor.execute(
|
|
535
535
|
"id",
|
|
536
|
-
{ agent: "
|
|
536
|
+
{ agent: "worker", task: "test" },
|
|
537
537
|
new AbortController().signal,
|
|
538
538
|
undefined,
|
|
539
539
|
ctx,
|
|
@@ -554,7 +554,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
554
554
|
const manager = makeSignedThinkingSessionManager(childSessionFile);
|
|
555
555
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
556
556
|
agents: [
|
|
557
|
-
{ name: "
|
|
557
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "openai/gpt-5-mini", thinking: "high" },
|
|
558
558
|
],
|
|
559
559
|
projectAgentsDir: null,
|
|
560
560
|
modelScope: { enforce: true, allow: ["anthropic/*"] },
|
|
@@ -572,7 +572,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
572
572
|
for (const model of ["", "inherit"]) {
|
|
573
573
|
const result = await executor.execute(
|
|
574
574
|
"id",
|
|
575
|
-
{ agent: "
|
|
575
|
+
{ agent: "worker", task: "test", model },
|
|
576
576
|
new AbortController().signal,
|
|
577
577
|
undefined,
|
|
578
578
|
ctx,
|
|
@@ -612,7 +612,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
612
612
|
};
|
|
613
613
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
614
614
|
agents: [
|
|
615
|
-
{ name: "
|
|
615
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "anthropic/claude-sonnet-4-5:high", thinking: "high" },
|
|
616
616
|
],
|
|
617
617
|
projectAgentsDir: null,
|
|
618
618
|
}));
|
|
@@ -625,7 +625,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
625
625
|
};
|
|
626
626
|
const result = await executor.execute(
|
|
627
627
|
"id",
|
|
628
|
-
{ agent: "
|
|
628
|
+
{ agent: "worker", task: "test" },
|
|
629
629
|
new AbortController().signal,
|
|
630
630
|
undefined,
|
|
631
631
|
ctx,
|
|
@@ -633,7 +633,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
633
633
|
|
|
634
634
|
assert.equal(result.isError, undefined);
|
|
635
635
|
const text = result.content.filter((block) => block.type === "text").map((block) => block.text).join("\n");
|
|
636
|
-
assert.equal(text.includes("fork context forced thinking off for
|
|
636
|
+
assert.equal(text.includes("fork context forced thinking off for worker (child 0)"), true);
|
|
637
637
|
});
|
|
638
638
|
|
|
639
639
|
it("resolves inherit before classifying a forked child", async () => {
|
|
@@ -641,7 +641,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
641
641
|
const manager = makeSignedThinkingSessionManager(childSessionFile);
|
|
642
642
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
643
643
|
agents: [
|
|
644
|
-
{ name: "
|
|
644
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", thinking: "high" },
|
|
645
645
|
],
|
|
646
646
|
projectAgentsDir: null,
|
|
647
647
|
}));
|
|
@@ -655,7 +655,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
655
655
|
|
|
656
656
|
const result = await executor.execute(
|
|
657
657
|
"id",
|
|
658
|
-
{ agent: "
|
|
658
|
+
{ agent: "worker", task: "test", model: "inherit" },
|
|
659
659
|
new AbortController().signal,
|
|
660
660
|
undefined,
|
|
661
661
|
ctx,
|
|
@@ -671,7 +671,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
671
671
|
const manager = makeSignedThinkingSessionManager(childSessionFile);
|
|
672
672
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
673
673
|
agents: [
|
|
674
|
-
{ name: "
|
|
674
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "anthropic/claude-sonnet-4-5", thinking: "high" },
|
|
675
675
|
],
|
|
676
676
|
projectAgentsDir: null,
|
|
677
677
|
}));
|
|
@@ -688,7 +688,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
688
688
|
|
|
689
689
|
const result = await executor.execute(
|
|
690
690
|
"id",
|
|
691
|
-
{ tasks: [{ agent: "
|
|
691
|
+
{ tasks: [{ agent: "worker", task: "test", model: "" }] },
|
|
692
692
|
new AbortController().signal,
|
|
693
693
|
undefined,
|
|
694
694
|
ctx,
|
|
@@ -706,7 +706,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
706
706
|
const manager = makeSignedThinkingSessionManager(childSessionFile);
|
|
707
707
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
708
708
|
agents: [
|
|
709
|
-
{ name: "
|
|
709
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "openai/gpt-5-mini", thinking: "high" },
|
|
710
710
|
],
|
|
711
711
|
projectAgentsDir: null,
|
|
712
712
|
}));
|
|
@@ -719,7 +719,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
719
719
|
|
|
720
720
|
const result = await executor.execute(
|
|
721
721
|
"id",
|
|
722
|
-
{ tasks: [{ agent: "
|
|
722
|
+
{ tasks: [{ agent: "worker", task: "test", model: "" }] },
|
|
723
723
|
new AbortController().signal,
|
|
724
724
|
undefined,
|
|
725
725
|
ctx,
|
|
@@ -737,7 +737,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
737
737
|
const manager = makeSignedThinkingSessionManager(childSessionFile);
|
|
738
738
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
739
739
|
agents: [
|
|
740
|
-
{ name: "
|
|
740
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "anthropic/claude-sonnet-4-5:high", thinking: "high" },
|
|
741
741
|
],
|
|
742
742
|
projectAgentsDir: null,
|
|
743
743
|
}));
|
|
@@ -763,7 +763,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
763
763
|
|
|
764
764
|
const result = await executor.execute(
|
|
765
765
|
"id",
|
|
766
|
-
{ agent: "
|
|
766
|
+
{ agent: "worker", task: "test", clarify: true },
|
|
767
767
|
new AbortController().signal,
|
|
768
768
|
undefined,
|
|
769
769
|
ctx,
|
|
@@ -783,7 +783,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
783
783
|
const manager = makeSignedThinkingSessionManager(childSessionFile);
|
|
784
784
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
785
785
|
agents: [
|
|
786
|
-
{ name: "
|
|
786
|
+
{ name: "worker", description: "Worker", defaultContext: "fork", model: "anthropic/claude-sonnet-4-5:high", thinking: "high" },
|
|
787
787
|
],
|
|
788
788
|
projectAgentsDir: null,
|
|
789
789
|
}));
|
|
@@ -796,7 +796,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
796
796
|
|
|
797
797
|
const result = await executor.execute(
|
|
798
798
|
"id",
|
|
799
|
-
{ agent: "
|
|
799
|
+
{ agent: "worker", task: "test" },
|
|
800
800
|
new AbortController().signal,
|
|
801
801
|
undefined,
|
|
802
802
|
ctx,
|
|
@@ -804,7 +804,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
804
804
|
|
|
805
805
|
assert.equal(result.isError, true);
|
|
806
806
|
const text = result.content.filter((block) => block.text).map((block) => block.text).join("\n");
|
|
807
|
-
assert.equal(text.includes("fork context forced thinking off for
|
|
807
|
+
assert.equal(text.includes("fork context forced thinking off for worker (child 0)"), true);
|
|
808
808
|
});
|
|
809
809
|
|
|
810
810
|
it("keeps default-fork context on run-path errors", async () => {
|
|
@@ -812,7 +812,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
812
812
|
const { manager } = makeForkingSessionManagerRecorder({ sessionFile: parentSessionFile, leafId: "leaf-current" });
|
|
813
813
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
814
814
|
agents: [
|
|
815
|
-
{ name: "
|
|
815
|
+
{ name: "worker", description: "Worker", defaultContext: "fork" },
|
|
816
816
|
],
|
|
817
817
|
projectAgentsDir: null,
|
|
818
818
|
}));
|
|
@@ -824,7 +824,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
824
824
|
|
|
825
825
|
const result = await executor.execute(
|
|
826
826
|
"id",
|
|
827
|
-
{ agent: "
|
|
827
|
+
{ agent: "worker" },
|
|
828
828
|
new AbortController().signal,
|
|
829
829
|
undefined,
|
|
830
830
|
ctx,
|
|
@@ -840,14 +840,14 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
840
840
|
const { manager, openedPaths, branchedLeafIds } = makeForkingSessionManagerRecorder({ sessionFile: parentSessionFile, leafId: "leaf-current" });
|
|
841
841
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
842
842
|
agents: [
|
|
843
|
-
{ name: "
|
|
843
|
+
{ name: "oracle", description: "Oracle", defaultContext: "fork" },
|
|
844
844
|
],
|
|
845
845
|
projectAgentsDir: null,
|
|
846
846
|
}));
|
|
847
847
|
|
|
848
848
|
const result = await executor.execute(
|
|
849
849
|
"id",
|
|
850
|
-
{ agent: "
|
|
850
|
+
{ agent: "oracle", task: "test", context: "fresh" },
|
|
851
851
|
new AbortController().signal,
|
|
852
852
|
undefined,
|
|
853
853
|
makeCtx(manager),
|
|
@@ -866,7 +866,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
866
866
|
const { manager, openedPaths, branchedLeafIds } = makeForkingSessionManagerRecorder({ sessionFile: parentSessionFile, leafId: "leaf-current" });
|
|
867
867
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
868
868
|
agents: [
|
|
869
|
-
{ name: "
|
|
869
|
+
{ name: "worker", description: "Worker", defaultContext: "fork" },
|
|
870
870
|
{ name: "second", description: "Second" },
|
|
871
871
|
],
|
|
872
872
|
projectAgentsDir: null,
|
|
@@ -874,7 +874,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
874
874
|
|
|
875
875
|
const result = await executor.execute(
|
|
876
876
|
"id",
|
|
877
|
-
{ tasks: [{ agent: "
|
|
877
|
+
{ tasks: [{ agent: "worker", task: "one" }, { agent: "second", task: "two" }] },
|
|
878
878
|
new AbortController().signal,
|
|
879
879
|
undefined,
|
|
880
880
|
makeCtx(manager),
|
|
@@ -898,7 +898,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
898
898
|
const { manager, openedPaths } = makeForkingSessionManagerRecorder({ sessionFile: parentSessionFile, leafId: "leaf-current" });
|
|
899
899
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
900
900
|
agents: [
|
|
901
|
-
{ name: "
|
|
901
|
+
{ name: "worker", description: "Worker", defaultContext: "fork" },
|
|
902
902
|
{ name: "second", description: "Second" },
|
|
903
903
|
],
|
|
904
904
|
projectAgentsDir: null,
|
|
@@ -906,7 +906,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
906
906
|
|
|
907
907
|
const result = await executor.execute(
|
|
908
908
|
"id",
|
|
909
|
-
{ tasks: [{ agent: "
|
|
909
|
+
{ tasks: [{ agent: "worker", task: "one" }, { agent: "second", task: "two" }], context: "fresh" },
|
|
910
910
|
new AbortController().signal,
|
|
911
911
|
undefined,
|
|
912
912
|
makeCtx(manager),
|
|
@@ -924,14 +924,14 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
924
924
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
925
925
|
agents: [
|
|
926
926
|
{ name: "echo", description: "Echo" },
|
|
927
|
-
{ name: "
|
|
927
|
+
{ name: "worker", description: "Worker", defaultContext: "fork" },
|
|
928
928
|
],
|
|
929
929
|
projectAgentsDir: null,
|
|
930
930
|
}));
|
|
931
931
|
|
|
932
932
|
const result = await executor.execute(
|
|
933
933
|
"id",
|
|
934
|
-
{ chain: [{ agent: "echo", task: "scan" }, { agent: "
|
|
934
|
+
{ chain: [{ agent: "echo", task: "scan" }, { agent: "worker", task: "write" }], clarify: false },
|
|
935
935
|
new AbortController().signal,
|
|
936
936
|
undefined,
|
|
937
937
|
makeCtx(manager),
|
|
@@ -965,15 +965,15 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
965
965
|
};
|
|
966
966
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
967
967
|
agents: [
|
|
968
|
-
{ name: "
|
|
969
|
-
{ name: "
|
|
968
|
+
{ name: "scout", description: "Scout", defaultContext: "fresh" },
|
|
969
|
+
{ name: "worker", description: "Worker", defaultContext: "fork" },
|
|
970
970
|
],
|
|
971
971
|
projectAgentsDir: null,
|
|
972
972
|
}));
|
|
973
973
|
|
|
974
974
|
const result = await executor.execute(
|
|
975
975
|
"id",
|
|
976
|
-
{ tasks: [{ agent: "
|
|
976
|
+
{ tasks: [{ agent: "scout", task: "scan" }, { agent: "worker", task: "write" }] },
|
|
977
977
|
new AbortController().signal,
|
|
978
978
|
undefined,
|
|
979
979
|
makeCtx(manager),
|
|
@@ -1000,8 +1000,8 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1000
1000
|
};
|
|
1001
1001
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
1002
1002
|
agents: [
|
|
1003
|
-
{ name: "
|
|
1004
|
-
{ name: "
|
|
1003
|
+
{ name: "scout", description: "Scout", defaultContext: "fresh" },
|
|
1004
|
+
{ name: "worker", description: "Worker", defaultContext: "fork" },
|
|
1005
1005
|
],
|
|
1006
1006
|
projectAgentsDir: null,
|
|
1007
1007
|
}));
|
|
@@ -1010,11 +1010,11 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1010
1010
|
"id",
|
|
1011
1011
|
{
|
|
1012
1012
|
chain: [
|
|
1013
|
-
{ agent: "
|
|
1014
|
-
{ agent: "
|
|
1013
|
+
{ agent: "scout", task: "scan" },
|
|
1014
|
+
{ agent: "worker", task: "write" },
|
|
1015
1015
|
{
|
|
1016
1016
|
expand: { from: { output: "items", path: "$" } },
|
|
1017
|
-
parallel: { agent: "
|
|
1017
|
+
parallel: { agent: "scout", task: "inspect item" },
|
|
1018
1018
|
collect: { as: "inspections" },
|
|
1019
1019
|
},
|
|
1020
1020
|
],
|
|
@@ -1041,7 +1041,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1041
1041
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
1042
1042
|
agents: [
|
|
1043
1043
|
{ name: "producer", description: "Producer", defaultContext: "fresh" },
|
|
1044
|
-
{ name: "
|
|
1044
|
+
{ name: "worker", description: "Worker", defaultContext: "fork" },
|
|
1045
1045
|
],
|
|
1046
1046
|
projectAgentsDir: null,
|
|
1047
1047
|
}));
|
|
@@ -1053,10 +1053,10 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1053
1053
|
{ agent: "producer", task: "produce", as: "items", outputSchema: { type: "object" } },
|
|
1054
1054
|
{
|
|
1055
1055
|
expand: { from: { output: "items", path: "/items" }, item: "item", key: "/id", maxItems: 3 },
|
|
1056
|
-
parallel: { agent: "
|
|
1056
|
+
parallel: { agent: "worker", task: "inspect {item.id}" },
|
|
1057
1057
|
collect: { as: "inspections" },
|
|
1058
1058
|
},
|
|
1059
|
-
{ agent: "
|
|
1059
|
+
{ agent: "worker", task: "final" },
|
|
1060
1060
|
],
|
|
1061
1061
|
clarify: false,
|
|
1062
1062
|
},
|
|
@@ -1074,13 +1074,13 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1074
1074
|
it("reports unknown top-level parallel agents before default-fork preconditions", async () => {
|
|
1075
1075
|
const { manager } = makeSessionManagerRecorder({ sessionFile: undefined, leafId: "leaf-current" });
|
|
1076
1076
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
1077
|
-
agents: [{ name: "
|
|
1077
|
+
agents: [{ name: "worker", description: "Worker", defaultContext: "fork" }],
|
|
1078
1078
|
projectAgentsDir: null,
|
|
1079
1079
|
}));
|
|
1080
1080
|
|
|
1081
1081
|
const result = await executor.execute(
|
|
1082
1082
|
"id",
|
|
1083
|
-
{ tasks: [{ agent: "
|
|
1083
|
+
{ tasks: [{ agent: "worker", task: "one" }, { agent: "missing", task: "two" }] },
|
|
1084
1084
|
new AbortController().signal,
|
|
1085
1085
|
undefined,
|
|
1086
1086
|
makeCtx(manager),
|
|
@@ -1446,7 +1446,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1446
1446
|
|
|
1447
1447
|
it("keeps inherited model-scope warnings non-fatal in async parallel conversion", { skip: !asyncAvailable ? "jiti not available" : undefined }, async () => {
|
|
1448
1448
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
1449
|
-
agents: [{ name: "
|
|
1449
|
+
agents: [{ name: "worker", description: "Worker", model: "openai/gpt-5-mini" }],
|
|
1450
1450
|
projectAgentsDir: null,
|
|
1451
1451
|
modelScope: { enforce: true, allow: ["anthropic/*"] },
|
|
1452
1452
|
}));
|
|
@@ -1462,7 +1462,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1462
1462
|
try {
|
|
1463
1463
|
const result = await executor.execute(
|
|
1464
1464
|
"id",
|
|
1465
|
-
{ tasks: [{ agent: "
|
|
1465
|
+
{ tasks: [{ agent: "worker", task: "test" }], async: true },
|
|
1466
1466
|
new AbortController().signal,
|
|
1467
1467
|
undefined,
|
|
1468
1468
|
ctx,
|
|
@@ -1478,7 +1478,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1478
1478
|
|
|
1479
1479
|
it("keeps inherited model-scope warnings non-fatal after Clarify switches parallel work to background", { skip: !asyncAvailable ? "jiti not available" : undefined }, async () => {
|
|
1480
1480
|
const executor = makeExecutorWithDiscoverAgents(() => ({
|
|
1481
|
-
agents: [{ name: "
|
|
1481
|
+
agents: [{ name: "worker", description: "Worker", model: "openai/gpt-5-mini" }],
|
|
1482
1482
|
projectAgentsDir: null,
|
|
1483
1483
|
modelScope: { enforce: true, allow: ["anthropic/*"] },
|
|
1484
1484
|
}));
|
|
@@ -1503,7 +1503,7 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1503
1503
|
try {
|
|
1504
1504
|
const result = await executor.execute(
|
|
1505
1505
|
"id",
|
|
1506
|
-
{ tasks: [{ agent: "
|
|
1506
|
+
{ tasks: [{ agent: "worker", task: "test" }], clarify: true },
|
|
1507
1507
|
new AbortController().signal,
|
|
1508
1508
|
undefined,
|
|
1509
1509
|
ctx,
|
|
@@ -1863,14 +1863,14 @@ describe("fork context execution wiring", { skip: !available ? "subagent executo
|
|
|
1863
1863
|
process.env.USERPROFILE = tempHome;
|
|
1864
1864
|
const worktreeDir = path.join(tempDir, "worktree");
|
|
1865
1865
|
fs.mkdirSync(worktreeDir, { recursive: true });
|
|
1866
|
-
writeProjectOverride(tempDir, "
|
|
1867
|
-
writeProjectOverride(worktreeDir, "
|
|
1866
|
+
writeProjectOverride(tempDir, "reviewer", "openai/gpt-5-main");
|
|
1867
|
+
writeProjectOverride(worktreeDir, "reviewer", "openai/gpt-5-worktree");
|
|
1868
1868
|
const executor = makeExecutor();
|
|
1869
1869
|
|
|
1870
1870
|
try {
|
|
1871
1871
|
const result = await executor.execute(
|
|
1872
1872
|
"id",
|
|
1873
|
-
{ action: "get", agent: "
|
|
1873
|
+
{ action: "get", agent: "reviewer", cwd: "worktree" },
|
|
1874
1874
|
new AbortController().signal,
|
|
1875
1875
|
undefined,
|
|
1876
1876
|
makeCtx(makeSessionManagerRecorder().manager),
|