@astralyn/pi 1.4.10 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +88 -0
- package/dist/bundle/chunks/anthropic-messages-G5ZGBHOH.js +6 -0
- package/dist/bundle/chunks/azure-openai-responses-EMPTMYNF.js +2 -0
- package/dist/bundle/chunks/bedrock-converse-stream.js +22 -15
- package/dist/bundle/chunks/chunk-AXX7FFFD.js +2 -0
- package/dist/bundle/chunks/chunk-FNGB3ASD.js +2 -0
- package/dist/bundle/chunks/chunk-FPALVF3F.js +4 -0
- package/dist/bundle/chunks/chunk-H3UF54OB.js +9 -0
- package/dist/bundle/chunks/chunk-IC6JXX2J.js +10 -0
- package/dist/bundle/chunks/{chunk-UCH27AVQ.js → chunk-IRUUTK4W.js} +1 -1
- package/dist/bundle/chunks/{chunk-MZJC45TM.js → chunk-J7L6O5XA.js} +3 -3
- package/dist/bundle/chunks/{chunk-DLVLAQEG.js → chunk-KBFO53OG.js} +3 -3
- package/dist/bundle/chunks/{chunk-TPVFPFJP.js → chunk-P7VXFB2M.js} +1 -1
- package/dist/bundle/chunks/chunk-PSYLMRL6.js +9 -0
- package/dist/bundle/chunks/chunk-QNZARXLE.js +82 -0
- package/dist/bundle/chunks/chunk-R3YHAMWH.js +1503 -0
- package/dist/bundle/chunks/chunk-RAIYJ5FC.js +4 -0
- package/dist/bundle/chunks/{chunk-OV2VMHBX.js → chunk-SR6EWNPW.js} +1 -1
- package/dist/bundle/chunks/chunk-TA3YH2ZI.js +16 -0
- package/dist/bundle/chunks/{chunk-MF3T3ETJ.js → chunk-THAJ4BZF.js} +58 -62
- package/dist/bundle/chunks/{chunk-24FY4C5S.js → chunk-TRSJS3FM.js} +1 -1
- package/dist/bundle/chunks/chunk-ZRI3ICDE.js +2 -0
- package/dist/bundle/chunks/{cli-MBFCFGI2.js → cli-LAZQG54B.js} +11 -9
- package/dist/bundle/chunks/{cloudflare-workers-ai-system-one-7BKATOEJ.js → cloudflare-workers-ai-system-one-4L2ABUJE.js} +1 -1
- package/dist/bundle/chunks/{execute-FQKRO4XJ.js → execute-ACWDKC3C.js} +1 -1
- package/dist/bundle/chunks/github-copilot.js +1 -1
- package/dist/bundle/chunks/{google-generative-ai-HTUSU45F.js → google-generative-ai-OOVDGS5W.js} +1 -1
- package/dist/bundle/chunks/{google-vertex-AVQV4P76.js → google-vertex-IK5RNG7J.js} +1 -1
- package/dist/bundle/chunks/image-resize-worker.js +1 -1
- package/dist/bundle/chunks/kimi-coding.js +1 -1
- package/dist/bundle/chunks/{llama-cpp-classify-27QYLJZY.js → llama-cpp-classify-XHAVT37C.js} +1 -1
- package/dist/bundle/chunks/meta.js +1 -1
- package/dist/bundle/chunks/mistral-conversations-Z56KY4OJ.js +5 -0
- package/dist/bundle/chunks/{openai-codex-responses-Q25MHDFX.js → openai-codex-responses-5NAH3SK6.js} +1 -1
- package/dist/bundle/chunks/openai-completions-S7S6PO3J.js +7 -0
- package/dist/bundle/chunks/{openai-decisions-3WYFPGSK.js → openai-decisions-7A36EAHE.js} +1 -1
- package/dist/bundle/chunks/{openai-responses-E4BNZIQK.js → openai-responses-ZQRZJKH4.js} +1 -1
- package/dist/bundle/chunks/{openrouter-images-CBP3OPOD.js → openrouter-images-X7PX72ON.js} +1 -1
- package/dist/bundle/chunks/pi-messages-TXNWPLI4.js +8 -0
- package/dist/bundle/chunks/radius.js +1 -1
- package/dist/bundle/chunks/{runtime-3RPOJS5T.js → runtime-X3XOMNXQ.js} +1 -1
- package/dist/bundle/chunks/{typesafe-system-one-BNICP2LS.js → typesafe-system-one-XJGMSHWL.js} +1 -1
- package/dist/bundle/chunks/virtual-modules-T2KLVAFL.js +2 -0
- package/dist/bundle/cli.js +1 -1
- package/dist/bundle/index.js +1 -1
- package/dist/bundle/rpc-entry.js +1 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +8 -7
- package/dist/cli/args.js.map +1 -1
- package/dist/config.d.ts +10 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +24 -5
- package/dist/config.js.map +1 -1
- package/dist/core/agent-session-runtime.d.ts +0 -5
- package/dist/core/agent-session-runtime.d.ts.map +1 -1
- package/dist/core/agent-session-runtime.js +12 -28
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session.d.ts +21 -14
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +67 -96
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/compaction/branch-summarization.d.ts +4 -2
- package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
- package/dist/core/compaction/branch-summarization.js +16 -4
- package/dist/core/compaction/branch-summarization.js.map +1 -1
- package/dist/core/exec.d.ts +9 -1
- package/dist/core/exec.d.ts.map +1 -1
- package/dist/core/exec.js +104 -60
- package/dist/core/exec.js.map +1 -1
- package/dist/core/export-html/template.css +9 -0
- package/dist/core/export-html/template.js +165 -45
- package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
- package/dist/core/export-html/tool-renderer.js +5 -0
- package/dist/core/export-html/tool-renderer.js.map +1 -1
- package/dist/core/extensions/index.d.ts +2 -2
- package/dist/core/extensions/index.d.ts.map +1 -1
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/core/extensions/loader.d.ts.map +1 -1
- package/dist/core/extensions/loader.js +20 -12
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/extensions/pi-ai-extension-view.d.ts +19 -0
- package/dist/core/extensions/pi-ai-extension-view.d.ts.map +1 -0
- package/dist/core/extensions/pi-ai-extension-view.js +22 -0
- package/dist/core/extensions/pi-ai-extension-view.js.map +1 -0
- package/dist/core/extensions/runner.d.ts +0 -1
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js +7 -12
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/extensions/types.d.ts +41 -23
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/extensions/virtual-modules.d.ts.map +1 -1
- package/dist/core/extensions/virtual-modules.js +8 -7
- package/dist/core/extensions/virtual-modules.js.map +1 -1
- package/dist/core/mcp-servers.d.ts +11 -4
- package/dist/core/mcp-servers.d.ts.map +1 -1
- package/dist/core/mcp-servers.js +15 -5
- package/dist/core/mcp-servers.js.map +1 -1
- package/dist/core/model-config.d.ts +1678 -2029
- package/dist/core/model-config.d.ts.map +1 -1
- package/dist/core/model-config.js +2 -3
- package/dist/core/model-config.js.map +1 -1
- package/dist/core/model-resolver.d.ts.map +1 -1
- package/dist/core/model-resolver.js +16 -10
- package/dist/core/model-resolver.js.map +1 -1
- package/dist/core/package-manager.d.ts +14 -0
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js +160 -46
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/pi-ai-schemas.d.ts +163 -0
- package/dist/core/pi-ai-schemas.d.ts.map +1 -0
- package/dist/core/pi-ai-schemas.js +21 -0
- package/dist/core/pi-ai-schemas.js.map +1 -0
- package/dist/core/pi-manifest.d.ts +1 -0
- package/dist/core/pi-manifest.d.ts.map +1 -1
- package/dist/core/pi-manifest.js +4 -0
- package/dist/core/pi-manifest.js.map +1 -1
- package/dist/core/project-trust.js +1 -1
- package/dist/core/project-trust.js.map +1 -1
- package/dist/core/quiescence.d.ts +24 -0
- package/dist/core/quiescence.d.ts.map +1 -0
- package/dist/core/quiescence.js +81 -0
- package/dist/core/quiescence.js.map +1 -0
- package/dist/core/resource-loader.d.ts +4 -1
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +41 -28
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +3 -1
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-manager.d.ts +7 -0
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +32 -13
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/settings-manager.d.ts +2 -0
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +11 -0
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/settings-schema.d.ts +4 -2
- package/dist/core/settings-schema.d.ts.map +1 -1
- package/dist/core/settings-schema.js +8 -1
- package/dist/core/settings-schema.js.map +1 -1
- package/dist/core/skills.d.ts.map +1 -1
- package/dist/core/skills.js +6 -14
- package/dist/core/skills.js.map +1 -1
- package/dist/core/slash-command-name.d.ts +6 -0
- package/dist/core/slash-command-name.d.ts.map +1 -0
- package/dist/core/slash-command-name.js +11 -0
- package/dist/core/slash-command-name.js.map +1 -0
- package/dist/core/slash-commands.js +2 -2
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/source-info.d.ts +9 -0
- package/dist/core/source-info.d.ts.map +1 -1
- package/dist/core/source-info.js +13 -0
- package/dist/core/source-info.js.map +1 -1
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +5 -6
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/tasks/codec.d.ts +14 -0
- package/dist/core/tasks/codec.d.ts.map +1 -1
- package/dist/core/tasks/codec.js +57 -4
- package/dist/core/tasks/codec.js.map +1 -1
- package/dist/core/tasks/delivery.d.ts +4 -20
- package/dist/core/tasks/delivery.d.ts.map +1 -1
- package/dist/core/tasks/delivery.js +5 -58
- package/dist/core/tasks/delivery.js.map +1 -1
- package/dist/core/tasks/limits.d.ts +3 -19
- package/dist/core/tasks/limits.d.ts.map +1 -1
- package/dist/core/tasks/limits.js +3 -24
- package/dist/core/tasks/limits.js.map +1 -1
- package/dist/core/tasks/record.d.ts +1 -7
- package/dist/core/tasks/record.d.ts.map +1 -1
- package/dist/core/tasks/record.js +0 -18
- package/dist/core/tasks/record.js.map +1 -1
- package/dist/core/tasks/reminder.d.ts +3 -2
- package/dist/core/tasks/reminder.d.ts.map +1 -1
- package/dist/core/tasks/reminder.js +4 -3
- package/dist/core/tasks/reminder.js.map +1 -1
- package/dist/core/tasks/runtime.d.ts +1 -14
- package/dist/core/tasks/runtime.d.ts.map +1 -1
- package/dist/core/tasks/runtime.js +3 -96
- package/dist/core/tasks/runtime.js.map +1 -1
- package/dist/core/tasks/session.d.ts +9 -5
- package/dist/core/tasks/session.d.ts.map +1 -1
- package/dist/core/tasks/session.js +22 -24
- package/dist/core/tasks/session.js.map +1 -1
- package/dist/core/tasks/types.d.ts +3 -92
- package/dist/core/tasks/types.d.ts.map +1 -1
- package/dist/core/tasks/types.js +3 -3
- package/dist/core/tasks/types.js.map +1 -1
- package/dist/core/tools/bash.d.ts +8 -7
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +6 -5
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/edit.d.ts +3 -3
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +2 -4
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/find.d.ts +2 -2
- package/dist/core/tools/find.d.ts.map +1 -1
- package/dist/core/tools/find.js.map +1 -1
- package/dist/core/tools/grep.d.ts +2 -2
- package/dist/core/tools/grep.d.ts.map +1 -1
- package/dist/core/tools/grep.js +1 -1
- package/dist/core/tools/grep.js.map +1 -1
- package/dist/core/tools/ls.d.ts +2 -2
- package/dist/core/tools/ls.d.ts.map +1 -1
- package/dist/core/tools/ls.js.map +1 -1
- package/dist/core/tools/powershell.d.ts +1 -5
- package/dist/core/tools/powershell.d.ts.map +1 -1
- package/dist/core/tools/read.d.ts +2 -2
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/render-utils.d.ts +4 -6
- package/dist/core/tools/render-utils.d.ts.map +1 -1
- package/dist/core/tools/render-utils.js +19 -41
- package/dist/core/tools/render-utils.js.map +1 -1
- package/dist/core/tools/renderers/bash.d.ts.map +1 -1
- package/dist/core/tools/renderers/bash.js +3 -25
- package/dist/core/tools/renderers/bash.js.map +1 -1
- package/dist/core/tools/renderers/write.d.ts.map +1 -1
- package/dist/core/tools/renderers/write.js +18 -19
- package/dist/core/tools/renderers/write.js.map +1 -1
- package/dist/core/tools/shell-execution.d.ts +20 -13
- package/dist/core/tools/shell-execution.d.ts.map +1 -1
- package/dist/core/tools/shell-execution.js +165 -183
- package/dist/core/tools/shell-execution.js.map +1 -1
- package/dist/core/tools/shell-tool.d.ts +9 -14
- package/dist/core/tools/shell-tool.d.ts.map +1 -1
- package/dist/core/tools/shell-tool.js +38 -66
- package/dist/core/tools/shell-tool.js.map +1 -1
- package/dist/core/tools/tool-definition-wrapper.d.ts +14 -4
- package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
- package/dist/core/tools/tool-definition-wrapper.js +2 -3
- package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
- package/dist/core/tools/write.d.ts +2 -2
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js.map +1 -1
- package/dist/core/trust-manager.d.ts.map +1 -1
- package/dist/core/trust-manager.js +30 -13
- package/dist/core/trust-manager.js.map +1 -1
- package/dist/core/usage-totals.d.ts +0 -9
- package/dist/core/usage-totals.d.ts.map +1 -1
- package/dist/core/usage-totals.js +24 -91
- package/dist/core/usage-totals.js.map +1 -1
- package/dist/extensions/agent/activity-lines.d.ts +2 -3
- package/dist/extensions/agent/activity-lines.d.ts.map +1 -1
- package/dist/extensions/agent/activity-lines.js +5 -9
- package/dist/extensions/agent/activity-lines.js.map +1 -1
- package/dist/extensions/agent/activity.d.ts +0 -2
- package/dist/extensions/agent/activity.d.ts.map +1 -1
- package/dist/extensions/agent/activity.js +1 -1
- package/dist/extensions/agent/activity.js.map +1 -1
- package/dist/extensions/agent/progress.d.ts +0 -3
- package/dist/extensions/agent/progress.d.ts.map +1 -1
- package/dist/extensions/agent/progress.js +2 -8
- package/dist/extensions/agent/progress.js.map +1 -1
- package/dist/extensions/agent/render.js +1 -1
- package/dist/extensions/agent/render.js.map +1 -1
- package/dist/extensions/agent/tool.d.ts.map +1 -1
- package/dist/extensions/agent/tool.js +0 -6
- package/dist/extensions/agent/tool.js.map +1 -1
- package/dist/{core/isolated-session.d.ts → extensions/agent/worker-session.d.ts} +6 -6
- package/dist/extensions/agent/worker-session.d.ts.map +1 -0
- package/dist/{core/isolated-session.js → extensions/agent/worker-session.js} +9 -9
- package/dist/extensions/agent/worker-session.js.map +1 -0
- package/dist/extensions/agent/worker.d.ts +0 -3
- package/dist/extensions/agent/worker.d.ts.map +1 -1
- package/dist/extensions/agent/worker.js +2 -3
- package/dist/extensions/agent/worker.js.map +1 -1
- package/dist/extensions/btw/agent.d.ts.map +1 -1
- package/dist/extensions/btw/agent.js +2 -1
- package/dist/extensions/btw/agent.js.map +1 -1
- package/dist/extensions/cached-compaction/render.d.ts.map +1 -1
- package/dist/extensions/cached-compaction/render.js +3 -3
- package/dist/extensions/cached-compaction/render.js.map +1 -1
- package/dist/extensions/cached-compaction/summary.d.ts +1 -1
- package/dist/extensions/cached-compaction/summary.d.ts.map +1 -1
- package/dist/extensions/cached-compaction/summary.js +13 -16
- package/dist/extensions/cached-compaction/summary.js.map +1 -1
- package/dist/extensions/codemode/renderer.d.ts.map +1 -1
- package/dist/extensions/codemode/renderer.js +6 -2
- package/dist/extensions/codemode/renderer.js.map +1 -1
- package/dist/extensions/codemode/tool.d.ts +2 -1
- package/dist/extensions/codemode/tool.d.ts.map +1 -1
- package/dist/extensions/codemode/tool.js +33 -8
- package/dist/extensions/codemode/tool.js.map +1 -1
- package/dist/extensions/deepwiki/schema.d.ts.map +1 -1
- package/dist/extensions/deepwiki/schema.js +1 -1
- package/dist/extensions/deepwiki/schema.js.map +1 -1
- package/dist/extensions/llama/ui.d.ts.map +1 -1
- package/dist/extensions/llama/ui.js +16 -4
- package/dist/extensions/llama/ui.js.map +1 -1
- package/dist/extensions/mcp/cli.d.ts.map +1 -1
- package/dist/extensions/mcp/cli.js +34 -8
- package/dist/extensions/mcp/cli.js.map +1 -1
- package/dist/extensions/mcp/oauth.d.ts +1 -1
- package/dist/extensions/mcp/oauth.d.ts.map +1 -1
- package/dist/extensions/mcp/oauth.js +36 -13
- package/dist/extensions/mcp/oauth.js.map +1 -1
- package/dist/extensions/mcp/ui.d.ts +1 -0
- package/dist/extensions/mcp/ui.d.ts.map +1 -1
- package/dist/extensions/mcp/ui.js +33 -24
- package/dist/extensions/mcp/ui.js.map +1 -1
- package/dist/extensions/run-summary/index.d.ts +1 -1
- package/dist/extensions/run-summary/index.d.ts.map +1 -1
- package/dist/extensions/run-summary/index.js +11 -23
- package/dist/extensions/run-summary/index.js.map +1 -1
- package/dist/extensions/statusline/usage.d.ts.map +1 -1
- package/dist/extensions/statusline/usage.js +2 -1
- package/dist/extensions/statusline/usage.js.map +1 -1
- package/dist/extensions/tasks/tool/actions.d.ts +1 -2
- package/dist/extensions/tasks/tool/actions.d.ts.map +1 -1
- package/dist/extensions/tasks/tool/actions.js +7 -79
- package/dist/extensions/tasks/tool/actions.js.map +1 -1
- package/dist/extensions/tasks/tool/constants.d.ts +1 -3
- package/dist/extensions/tasks/tool/constants.d.ts.map +1 -1
- package/dist/extensions/tasks/tool/constants.js +1 -3
- package/dist/extensions/tasks/tool/constants.js.map +1 -1
- package/dist/extensions/tasks/tool/schema.d.ts +1 -2
- package/dist/extensions/tasks/tool/schema.d.ts.map +1 -1
- package/dist/extensions/tasks/tool/schema.js +7 -15
- package/dist/extensions/tasks/tool/schema.js.map +1 -1
- package/dist/extensions/tasks/tool/types.d.ts +1 -19
- package/dist/extensions/tasks/tool/types.d.ts.map +1 -1
- package/dist/extensions/tasks/tool/types.js.map +1 -1
- package/dist/extensions/tasks/tool.d.ts +1 -2
- package/dist/extensions/tasks/tool.d.ts.map +1 -1
- package/dist/extensions/tasks/tool.js +2 -4
- package/dist/extensions/tasks/tool.js.map +1 -1
- package/dist/extensions/tasks/ui/completion-render.d.ts +5 -1
- package/dist/extensions/tasks/ui/completion-render.d.ts.map +1 -1
- package/dist/extensions/tasks/ui/completion-render.js +25 -70
- package/dist/extensions/tasks/ui/completion-render.js.map +1 -1
- package/dist/extensions/tasks/ui/inspector.d.ts +1 -1
- package/dist/extensions/tasks/ui/inspector.d.ts.map +1 -1
- package/dist/extensions/tasks/ui/inspector.js +0 -6
- package/dist/extensions/tasks/ui/inspector.js.map +1 -1
- package/dist/extensions/tasks/ui/manager.d.ts +1 -1
- package/dist/extensions/tasks/ui/manager.d.ts.map +1 -1
- package/dist/extensions/tasks/ui/manager.js.map +1 -1
- package/dist/extensions/tasks/ui/render.d.ts +2 -16
- package/dist/extensions/tasks/ui/render.d.ts.map +1 -1
- package/dist/extensions/tasks/ui/render.js +3 -79
- package/dist/extensions/tasks/ui/render.js.map +1 -1
- package/dist/extensions/tasks/ui/views.d.ts +2 -4
- package/dist/extensions/tasks/ui/views.d.ts.map +1 -1
- package/dist/extensions/tasks/ui/views.js +3 -7
- package/dist/extensions/tasks/ui/views.js.map +1 -1
- package/dist/extensions/tool-presentation/fallback.d.ts.map +1 -0
- package/dist/{modes/interactive/tool-view → extensions/tool-presentation}/fallback.js +5 -5
- package/dist/extensions/tool-presentation/fallback.js.map +1 -0
- package/dist/extensions/tool-presentation/index.js +1 -1
- package/dist/extensions/tool-presentation/index.js.map +1 -1
- package/dist/{modes/interactive/tool-view → extensions/tool-presentation}/shell.d.ts +1 -1
- package/dist/extensions/tool-presentation/shell.d.ts.map +1 -0
- package/dist/{modes/interactive/tool-view → extensions/tool-presentation}/shell.js +3 -3
- package/dist/extensions/tool-presentation/shell.js.map +1 -0
- package/dist/extensions/tool-search/tool.d.ts +21 -6
- package/dist/extensions/tool-search/tool.d.ts.map +1 -1
- package/dist/extensions/tool-search/tool.js +104 -36
- package/dist/extensions/tool-search/tool.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +15 -8
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts +5 -3
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +61 -45
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/config-selector-skills.d.ts +54 -0
- package/dist/modes/interactive/components/config-selector-skills.d.ts.map +1 -0
- package/dist/modes/interactive/components/config-selector-skills.js +178 -0
- package/dist/modes/interactive/components/config-selector-skills.js.map +1 -0
- package/dist/modes/interactive/components/config-selector.d.ts +2 -11
- package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/config-selector.js +31 -181
- package/dist/modes/interactive/components/config-selector.js.map +1 -1
- package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-editor.js +7 -0
- package/dist/modes/interactive/components/custom-editor.js.map +1 -1
- package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-entry.js +2 -1
- package/dist/modes/interactive/components/custom-entry.js.map +1 -1
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-message.js +2 -1
- package/dist/modes/interactive/components/custom-message.js.map +1 -1
- package/dist/modes/interactive/components/extension-editor.d.ts +2 -0
- package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-editor.js +4 -0
- package/dist/modes/interactive/components/extension-editor.js.map +1 -1
- package/dist/modes/interactive/components/login-dialog.d.ts +5 -0
- package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
- package/dist/modes/interactive/components/login-dialog.js +103 -10
- package/dist/modes/interactive/components/login-dialog.js.map +1 -1
- package/dist/modes/interactive/components/markdown-transform.d.ts +2 -1
- package/dist/modes/interactive/components/markdown-transform.d.ts.map +1 -1
- package/dist/modes/interactive/components/markdown-transform.js +3 -2
- package/dist/modes/interactive/components/markdown-transform.js.map +1 -1
- package/dist/modes/interactive/components/model-selector.d.ts +1 -0
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/model-selector.js +17 -6
- package/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.d.ts +1 -0
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.js +13 -4
- package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.d.ts +1 -0
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +14 -3
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/session-selector-search.d.ts +4 -0
- package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector-search.js +86 -22
- package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts +2 -1
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector.js +15 -23
- package/dist/modes/interactive/components/session-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-submenu.js +2 -0
- package/dist/modes/interactive/components/settings-submenu.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts +7 -0
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +48 -9
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector.d.ts +1 -0
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector.js +5 -6
- package/dist/modes/interactive/components/tree-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts +1 -0
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.js +9 -1
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message.d.ts +3 -1
- package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message.js +4 -2
- package/dist/modes/interactive/components/user-message.js.map +1 -1
- package/dist/modes/interactive/editor-host.d.ts.map +1 -1
- package/dist/modes/interactive/editor-host.js +3 -2
- package/dist/modes/interactive/editor-host.js.map +1 -1
- package/dist/modes/interactive/external-editor.d.ts +1 -0
- package/dist/modes/interactive/external-editor.d.ts.map +1 -1
- package/dist/modes/interactive/external-editor.js +17 -5
- package/dist/modes/interactive/external-editor.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +8 -12
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +169 -112
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/model-search.d.ts +10 -0
- package/dist/modes/interactive/model-search.d.ts.map +1 -1
- package/dist/modes/interactive/model-search.js +21 -0
- package/dist/modes/interactive/model-search.js.map +1 -1
- package/dist/modes/interactive/theme/theme.d.ts +10 -0
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +30 -23
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/interactive/tool-view/chat.d.ts +2 -2
- package/dist/modes/interactive/tool-view/chat.d.ts.map +1 -1
- package/dist/modes/interactive/tool-view/chat.js +22 -19
- package/dist/modes/interactive/tool-view/chat.js.map +1 -1
- package/dist/modes/interactive/transcript-layout.d.ts +2 -0
- package/dist/modes/interactive/transcript-layout.d.ts.map +1 -1
- package/dist/modes/interactive/transcript-layout.js +5 -2
- package/dist/modes/interactive/transcript-layout.js.map +1 -1
- package/dist/modes/print-mode.d.ts.map +1 -1
- package/dist/modes/print-mode.js +1 -0
- package/dist/modes/print-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-client.d.ts +9 -1
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client.js +23 -23
- package/dist/modes/rpc/rpc-client.js.map +1 -1
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-mode.js +1 -3
- package/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/dist/package-manager-cli.d.ts.map +1 -1
- package/dist/package-manager-cli.js +55 -4
- package/dist/package-manager-cli.js.map +1 -1
- package/dist/utils/ansi.d.ts.map +1 -1
- package/dist/utils/ansi.js +5 -2
- package/dist/utils/ansi.js.map +1 -1
- package/dist/utils/clipboard-command.d.ts.map +1 -1
- package/dist/utils/clipboard-command.js +4 -0
- package/dist/utils/clipboard-command.js.map +1 -1
- package/dist/utils/git.d.ts +1 -1
- package/dist/utils/git.d.ts.map +1 -1
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/image-resize-core.d.ts.map +1 -1
- package/dist/utils/image-resize-core.js +5 -3
- package/dist/utils/image-resize-core.js.map +1 -1
- package/dist/utils/open-browser.d.ts.map +1 -1
- package/dist/utils/open-browser.js +4 -1
- package/dist/utils/open-browser.js.map +1 -1
- package/dist/utils/paths.d.ts +17 -0
- package/dist/utils/paths.d.ts.map +1 -1
- package/dist/utils/paths.js +42 -1
- package/dist/utils/paths.js.map +1 -1
- package/dist/utils/shell.d.ts.map +1 -1
- package/dist/utils/shell.js +14 -0
- package/dist/utils/shell.js.map +1 -1
- package/dist/utils/syntax-highlight.d.ts +5 -0
- package/dist/utils/syntax-highlight.d.ts.map +1 -1
- package/dist/utils/syntax-highlight.js +7 -0
- package/dist/utils/syntax-highlight.js.map +1 -1
- package/dist/utils/tools-manager.d.ts.map +1 -1
- package/dist/utils/tools-manager.js +30 -35
- package/dist/utils/tools-manager.js.map +1 -1
- package/dist/utils/usage.d.ts +5 -0
- package/dist/utils/usage.d.ts.map +1 -0
- package/dist/utils/usage.js +16 -0
- package/dist/utils/usage.js.map +1 -0
- package/docs/bundled/README.md +1 -1
- package/docs/bundled/extensions/agent.md +7 -7
- package/docs/bundled/extensions/run-summary.md +4 -4
- package/docs/bundled/extensions/statusline.md +1 -1
- package/docs/bundled/tasks.md +12 -27
- package/docs/bundled/tool-presentation.md +2 -2
- package/docs/custom-provider.md +1 -1
- package/docs/environment-variables.md +2 -0
- package/docs/extensions.md +41 -28
- package/docs/keybindings.md +1 -1
- package/docs/llama-cpp.md +17 -12
- package/docs/mcp.md +6 -4
- package/docs/models-configuration.md +1 -1
- package/docs/models.md +7 -85
- package/docs/packages.md +26 -1
- package/docs/rpc.md +1 -1
- package/docs/sdk.md +10 -8
- package/docs/session-format.md +3 -3
- package/docs/sessions.md +10 -0
- package/docs/settings.md +5 -4
- package/docs/terminal-setup.md +2 -2
- package/docs/tmux.md +6 -0
- package/docs/tui.md +12 -7
- package/docs/usage.md +19 -9
- package/docs/windows.md +29 -0
- package/examples/extensions/README.md +2 -1
- package/examples/extensions/custom-provider-anthropic/index.ts +27 -31
- package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
- package/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/examples/extensions/debug-provider.ts +2 -2
- package/examples/extensions/gondolin/package-lock.json +19 -29
- package/examples/extensions/gondolin/package.json +2 -2
- package/examples/extensions/preset.ts +2 -0
- package/examples/extensions/reload-runtime.ts +17 -5
- package/examples/extensions/tools.ts +2 -0
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/package.json +11 -12
- package/schemas/models.schema.json +36 -36
- package/schemas/settings.schema.json +17 -0
- package/dist/bundle/chunks/anthropic-messages-HWL6AS7T.js +0 -6
- package/dist/bundle/chunks/azure-openai-responses-4YYPDYV5.js +0 -2
- package/dist/bundle/chunks/chunk-6GTUUUCJ.js +0 -1499
- package/dist/bundle/chunks/chunk-6JS2SOFO.js +0 -11
- package/dist/bundle/chunks/chunk-ANCZPKX7.js +0 -2
- package/dist/bundle/chunks/chunk-FEZ5RM2B.js +0 -2
- package/dist/bundle/chunks/chunk-LPF7HQ3S.js +0 -4
- package/dist/bundle/chunks/chunk-MMNIHCU7.js +0 -2
- package/dist/bundle/chunks/chunk-R267VV5T.js +0 -82
- package/dist/bundle/chunks/chunk-RVKT7OUB.js +0 -9
- package/dist/bundle/chunks/chunk-SA2AQYEI.js +0 -7
- package/dist/bundle/chunks/chunk-ZAIGBRV5.js +0 -16
- package/dist/bundle/chunks/mistral-conversations-V2JJTMJ5.js +0 -5
- package/dist/bundle/chunks/openai-completions-TXZXILJR.js +0 -7
- package/dist/bundle/chunks/pi-messages-LBJQ4NGP.js +0 -8
- package/dist/bundle/chunks/virtual-modules-6IJ6V2CG.js +0 -2
- package/dist/core/isolated-session.d.ts.map +0 -1
- package/dist/core/isolated-session.js.map +0 -1
- package/dist/core/tasks/wait.d.ts +0 -19
- package/dist/core/tasks/wait.d.ts.map +0 -1
- package/dist/core/tasks/wait.js +0 -45
- package/dist/core/tasks/wait.js.map +0 -1
- package/dist/modes/interactive/tool-view/fallback.d.ts.map +0 -1
- package/dist/modes/interactive/tool-view/fallback.js.map +0 -1
- package/dist/modes/interactive/tool-view/shell.d.ts.map +0 -1
- package/dist/modes/interactive/tool-view/shell.js.map +0 -1
- package/dist/modes/interactive/tool-view/tool-execution.d.ts +0 -14
- package/dist/modes/interactive/tool-view/tool-execution.d.ts.map +0 -1
- package/dist/modes/interactive/tool-view/tool-execution.js +0 -13
- package/dist/modes/interactive/tool-view/tool-execution.js.map +0 -1
- package/dist/utils/path-identity.d.ts +0 -12
- package/dist/utils/path-identity.d.ts.map +0 -1
- package/dist/utils/path-identity.js +0 -63
- package/dist/utils/path-identity.js.map +0 -1
- package/docs/images/doom-extension.png +0 -0
- package/docs/images/exy.png +0 -0
- package/examples/extensions/sandbox/index.ts +0 -321
- package/examples/extensions/sandbox/package-lock.json +0 -92
- package/examples/extensions/sandbox/package.json +0 -19
- package/npm-shrinkwrap.json +0 -4207
- /package/dist/{modes/interactive/tool-view → extensions/tool-presentation}/fallback.d.ts +0 -0
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* TUI component for managing package resources (enable/disable)
|
|
3
3
|
*/
|
|
4
|
-
import { homedir } from "node:os";
|
|
5
4
|
import { basename, dirname, join, relative } from "node:path";
|
|
6
5
|
import { Container, getKeybindings, Input, matchesKey, Spacer, truncateToWidth, visibleWidth, } from "@earendil-works/pi-tui";
|
|
7
6
|
import { CONFIG_DIR_NAME } from "../../../config.js";
|
|
8
7
|
import { DefaultPackageManager, } from "../../../core/package-manager.js";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import { canonicalizePath, isLocalPath, resolvePath } from "../../../utils/paths.js";
|
|
8
|
+
import { readSkillDisableModelInvocation } from "../../../core/skills.js";
|
|
9
|
+
import { BUILTIN_PATH_PREFIX, getResourcePathKey } from "../../../core/source-info.js";
|
|
10
|
+
import { isLocalPath, resolvePath, shortenHomePath } from "../../../utils/paths.js";
|
|
13
11
|
import { theme } from "../theme/theme.js";
|
|
12
|
+
import { collapsePackageEntry, SkillRows } from "./config-selector-skills.js";
|
|
14
13
|
import { DynamicBorder } from "./dynamic-border.js";
|
|
15
14
|
import { keyHint, rawKeyHint } from "./keybinding-hints.js";
|
|
16
15
|
function hasResourcePattern(patterns, pattern) {
|
|
@@ -21,11 +20,6 @@ function hasResourcePattern(patterns, pattern) {
|
|
|
21
20
|
}
|
|
22
21
|
return false;
|
|
23
22
|
}
|
|
24
|
-
/** The invocation override that pins a skill state; Off and inherit leave invocation to the defaults. */
|
|
25
|
-
function stateInvocation(state) {
|
|
26
|
-
return state === "on" ? "model-and-user" : state === "user-only" ? "user-only" : undefined;
|
|
27
|
-
}
|
|
28
|
-
const RESOURCE_TYPES = ["extensions", "skills", "prompts", "themes"];
|
|
29
23
|
const RESOURCE_TYPE_LABELS = {
|
|
30
24
|
extensions: "Extensions",
|
|
31
25
|
skills: "Skills",
|
|
@@ -33,19 +27,7 @@ const RESOURCE_TYPE_LABELS = {
|
|
|
33
27
|
themes: "Themes",
|
|
34
28
|
};
|
|
35
29
|
function formatBaseDir(baseDir) {
|
|
36
|
-
const
|
|
37
|
-
let displayPath;
|
|
38
|
-
if (baseDir === homeDir) {
|
|
39
|
-
displayPath = "~";
|
|
40
|
-
}
|
|
41
|
-
else if (baseDir.startsWith(homeDir)) {
|
|
42
|
-
// Replace home prefix with ~, normalize separators for display
|
|
43
|
-
const rest = baseDir.slice(homeDir.length);
|
|
44
|
-
displayPath = `~${rest.replace(/\\/g, "/")}`;
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
displayPath = baseDir.replace(/\\/g, "/");
|
|
48
|
-
}
|
|
30
|
+
const displayPath = shortenHomePath(baseDir).replace(/\\/g, "/");
|
|
49
31
|
return displayPath.endsWith("/") ? displayPath : `${displayPath}/`;
|
|
50
32
|
}
|
|
51
33
|
function getGroupLabel(metadata, agentDir) {
|
|
@@ -190,7 +172,16 @@ class ResourceList {
|
|
|
190
172
|
this.writeScope = writeScope;
|
|
191
173
|
this.inheritedEnabledByKey = this.buildInheritedEnabledMap(groupsByScope.global);
|
|
192
174
|
this.packageManager = new DefaultPackageManager({ cwd, agentDir, settingsManager });
|
|
193
|
-
this.
|
|
175
|
+
this.skills = new SkillRows({
|
|
176
|
+
writeScope: () => this.writeScope,
|
|
177
|
+
getProjectOverrideState: (item) => this.getProjectOverrideState(item),
|
|
178
|
+
setProjectResourceOverride: (item, state) => this.setProjectResourceOverride(item, state),
|
|
179
|
+
setGlobalEnabled: (item, enabled) => item.metadata.origin === "top-level"
|
|
180
|
+
? this.toggleTopLevelResource(item, enabled)
|
|
181
|
+
: this.togglePackageResource(item, enabled),
|
|
182
|
+
getInheritedEnabled: (item) => this.getInheritedEnabled(item),
|
|
183
|
+
isInheritedGlobalItem: (item) => this.isInheritedGlobalItem(item),
|
|
184
|
+
}, settingsManager, this.packageManager);
|
|
194
185
|
this.searchInput = new Input();
|
|
195
186
|
// 8 lines of chrome: top spacer + top border + spacer + header (2 lines) + spacer + bottom spacer + bottom border
|
|
196
187
|
const chrome = 8;
|
|
@@ -418,18 +409,8 @@ class ResourceList {
|
|
|
418
409
|
this.filterItems(this.searchInput.getValue());
|
|
419
410
|
}
|
|
420
411
|
toggleResource(item) {
|
|
421
|
-
if (item.resourceType === "skills")
|
|
422
|
-
|
|
423
|
-
const state = this.getNextProjectSkillOverrideState(item);
|
|
424
|
-
if (!this.setProjectSkillOverride(item, state))
|
|
425
|
-
return undefined;
|
|
426
|
-
return state === "inherit" ? this.getInheritedSkillEffectiveState(item) !== "off" : state !== "off";
|
|
427
|
-
}
|
|
428
|
-
const currentState = this.getSkillEffectiveState(item);
|
|
429
|
-
const nextState = currentState === "on" ? "user-only" : currentState === "user-only" ? "off" : "on";
|
|
430
|
-
this.setGlobalSkillEffectiveState(item, nextState);
|
|
431
|
-
return nextState !== "off";
|
|
432
|
-
}
|
|
412
|
+
if (item.resourceType === "skills")
|
|
413
|
+
return this.skills.toggle(item);
|
|
433
414
|
if (this.writeScope === "project") {
|
|
434
415
|
const state = this.getNextOverrideState(item);
|
|
435
416
|
if (!this.setProjectResourceOverride(item, state))
|
|
@@ -541,81 +522,9 @@ class ResourceList {
|
|
|
541
522
|
this.settingsManager.setPackages(packages);
|
|
542
523
|
}
|
|
543
524
|
}
|
|
544
|
-
setGlobalSkillEffectiveState(item, state) {
|
|
545
|
-
const enabled = state !== "off";
|
|
546
|
-
if (item.metadata.origin === "top-level")
|
|
547
|
-
this.toggleTopLevelResource(item, enabled);
|
|
548
|
-
else
|
|
549
|
-
this.togglePackageResource(item, enabled);
|
|
550
|
-
this.setSkillInvocationOverride(item, "user", stateInvocation(state));
|
|
551
|
-
}
|
|
552
|
-
setProjectSkillOverride(item, state) {
|
|
553
|
-
const loadState = state === "inherit" ? "inherit" : state === "off" ? "unload" : "load";
|
|
554
|
-
if (!this.setProjectResourceOverride(item, loadState))
|
|
555
|
-
return false;
|
|
556
|
-
this.setSkillInvocationOverride(item, "project", stateInvocation(state));
|
|
557
|
-
return true;
|
|
558
|
-
}
|
|
559
|
-
/** Runs after the load write, which creates the package entry a project override needs. */
|
|
560
|
-
setSkillInvocationOverride(item, scope, override) {
|
|
561
|
-
const layer = this.skillInvocation.layer(scope, item.metadata);
|
|
562
|
-
if (!layer)
|
|
563
|
-
return;
|
|
564
|
-
const overrides = withInvocation(layer, item.path, override);
|
|
565
|
-
if (item.metadata.origin === "top-level") {
|
|
566
|
-
if (scope === "project")
|
|
567
|
-
this.settingsManager.setProjectSkillInvocationOverrides(overrides);
|
|
568
|
-
else
|
|
569
|
-
this.settingsManager.setSkillInvocationOverrides(overrides);
|
|
570
|
-
return;
|
|
571
|
-
}
|
|
572
|
-
const settings = scope === "project" ? this.settingsManager.getProjectSettings() : this.settingsManager.getGlobalSettings();
|
|
573
|
-
const packages = [...(settings.packages ?? [])];
|
|
574
|
-
const pkgIndex = this.skillInvocation.findPackage(scope, item.metadata);
|
|
575
|
-
const current = packages[pkgIndex];
|
|
576
|
-
if (current === undefined || (typeof current === "string" && !overrides))
|
|
577
|
-
return;
|
|
578
|
-
const pkg = typeof current === "string" ? { source: current } : { ...current };
|
|
579
|
-
pkg.skillInvocationOverrides = overrides;
|
|
580
|
-
if (overrides || RESOURCE_TYPES.some((key) => pkg[key] !== undefined))
|
|
581
|
-
packages[pkgIndex] = pkg;
|
|
582
|
-
else if (scope === "project" && pkg.autoload === false)
|
|
583
|
-
packages.splice(pkgIndex, 1);
|
|
584
|
-
else
|
|
585
|
-
packages[pkgIndex] = pkg.source;
|
|
586
|
-
if (scope === "project")
|
|
587
|
-
this.settingsManager.setProjectPackages(packages);
|
|
588
|
-
else
|
|
589
|
-
this.settingsManager.setPackages(packages);
|
|
590
|
-
}
|
|
591
525
|
renderCheckbox(item) {
|
|
592
|
-
if (item.resourceType === "skills")
|
|
593
|
-
|
|
594
|
-
const state = this.getProjectSkillOverrideState(item);
|
|
595
|
-
if (state === "on")
|
|
596
|
-
return theme.fg("success", "[+]");
|
|
597
|
-
if (state === "user-only")
|
|
598
|
-
return theme.fg("accent", "[u]");
|
|
599
|
-
if (state === "off")
|
|
600
|
-
return theme.fg("warning", "[-]");
|
|
601
|
-
if (state === "load") {
|
|
602
|
-
const effectiveState = this.getSkillEffectiveState(item);
|
|
603
|
-
if (effectiveState === "user-only")
|
|
604
|
-
return theme.fg("accent", "[u]");
|
|
605
|
-
if (effectiveState === "off")
|
|
606
|
-
return theme.fg("warning", "[-]");
|
|
607
|
-
return theme.fg("success", "[+]");
|
|
608
|
-
}
|
|
609
|
-
const inheritedState = this.getInheritedSkillEffectiveState(item);
|
|
610
|
-
return theme.fg("dim", inheritedState === "on" ? "[x]" : inheritedState === "user-only" ? "[u]" : "[ ]");
|
|
611
|
-
}
|
|
612
|
-
const state = this.getSkillEffectiveState(item);
|
|
613
|
-
if (state === "on")
|
|
614
|
-
return theme.fg("success", "[x]");
|
|
615
|
-
if (state === "user-only")
|
|
616
|
-
return theme.fg("accent", "[u]");
|
|
617
|
-
return theme.fg("dim", "[ ]");
|
|
618
|
-
}
|
|
526
|
+
if (item.resourceType === "skills")
|
|
527
|
+
return this.skills.checkbox(item);
|
|
619
528
|
if (this.writeScope === "project") {
|
|
620
529
|
const state = this.getProjectOverrideState(item);
|
|
621
530
|
if (state === "load")
|
|
@@ -627,21 +536,8 @@ class ResourceList {
|
|
|
627
536
|
return item.enabled ? theme.fg("success", "[x]") : theme.fg("dim", "[ ]");
|
|
628
537
|
}
|
|
629
538
|
getItemSuffix(item) {
|
|
630
|
-
if (item.resourceType === "skills")
|
|
631
|
-
|
|
632
|
-
const state = this.getProjectSkillOverrideState(item);
|
|
633
|
-
if (state === "on")
|
|
634
|
-
return theme.fg("muted", " project on");
|
|
635
|
-
if (state === "user-only")
|
|
636
|
-
return theme.fg("muted", " project user only");
|
|
637
|
-
if (state === "off")
|
|
638
|
-
return theme.fg("muted", " project off");
|
|
639
|
-
if (state === "load")
|
|
640
|
-
return theme.fg("muted", " project load");
|
|
641
|
-
return this.isInheritedGlobalItem(item) ? theme.fg("dim", " inherited global") : "";
|
|
642
|
-
}
|
|
643
|
-
return this.getSkillEffectiveState(item) === "user-only" ? theme.fg("accent", " user only") : "";
|
|
644
|
-
}
|
|
539
|
+
if (item.resourceType === "skills")
|
|
540
|
+
return this.skills.suffix(item);
|
|
645
541
|
if (this.writeScope !== "project")
|
|
646
542
|
return "";
|
|
647
543
|
const state = this.getProjectOverrideState(item);
|
|
@@ -652,51 +548,11 @@ class ResourceList {
|
|
|
652
548
|
return this.isInheritedGlobalItem(item) ? theme.fg("dim", " inherited global") : "";
|
|
653
549
|
}
|
|
654
550
|
isDimmedItem(item) {
|
|
655
|
-
if (
|
|
656
|
-
return
|
|
657
|
-
return
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
}
|
|
661
|
-
/** The state settings give a skill in the current mode; global mode ignores project settings. */
|
|
662
|
-
getSkillEffectiveState(item) {
|
|
663
|
-
const scopes = this.writeScope === "project" ? ["project", "user"] : ["user"];
|
|
664
|
-
return resolveSkillEffectiveState({
|
|
665
|
-
enabled: item.enabled,
|
|
666
|
-
invocationOverride: this.skillInvocation.resolve(item.path, item.metadata, scopes),
|
|
667
|
-
frontmatterDisableModelInvocation: item.frontmatterDisableModelInvocation,
|
|
668
|
-
});
|
|
669
|
-
}
|
|
670
|
-
getInheritedSkillEffectiveState(item) {
|
|
671
|
-
return resolveSkillEffectiveState({
|
|
672
|
-
enabled: this.getInheritedEnabled(item),
|
|
673
|
-
invocationOverride: this.skillInvocation.resolve(item.path, item.metadata, ["user"]),
|
|
674
|
-
frontmatterDisableModelInvocation: item.frontmatterDisableModelInvocation,
|
|
675
|
-
});
|
|
676
|
-
}
|
|
677
|
-
getNextProjectSkillOverrideState(item) {
|
|
678
|
-
const states = ["on", "user-only", "off"];
|
|
679
|
-
const inheritedIndex = states.indexOf(this.getInheritedSkillEffectiveState(item));
|
|
680
|
-
const sequence = [...states.slice(inheritedIndex + 1), ...states.slice(0, inheritedIndex + 1)];
|
|
681
|
-
const current = this.getProjectSkillOverrideState(item);
|
|
682
|
-
if (current === "inherit")
|
|
683
|
-
return sequence[0];
|
|
684
|
-
if (current === "load")
|
|
685
|
-
return "inherit";
|
|
686
|
-
const currentIndex = sequence.indexOf(current);
|
|
687
|
-
return sequence[currentIndex + 1] ?? "inherit";
|
|
688
|
-
}
|
|
689
|
-
getProjectSkillOverrideState(item) {
|
|
690
|
-
if (this.writeScope !== "project")
|
|
691
|
-
return "inherit";
|
|
692
|
-
const loadState = this.getProjectOverrideState(item);
|
|
693
|
-
if (loadState === "unload")
|
|
694
|
-
return "off";
|
|
695
|
-
const layer = this.skillInvocation.layer("project", item.metadata);
|
|
696
|
-
const invocation = layer ? matchInvocation(layer, item.path).override : undefined;
|
|
697
|
-
if (invocation)
|
|
698
|
-
return invocation === "user-only" ? "user-only" : "on";
|
|
699
|
-
return loadState;
|
|
551
|
+
if (item.resourceType === "skills")
|
|
552
|
+
return this.skills.dimmed(item);
|
|
553
|
+
return (this.writeScope === "project" &&
|
|
554
|
+
this.isInheritedGlobalItem(item) &&
|
|
555
|
+
this.getProjectOverrideState(item) === "inherit");
|
|
700
556
|
}
|
|
701
557
|
setProjectResourceOverride(item, state) {
|
|
702
558
|
return item.metadata.origin === "top-level"
|
|
@@ -734,7 +590,7 @@ class ResourceList {
|
|
|
734
590
|
}
|
|
735
591
|
setProjectPackageOverride(item, state) {
|
|
736
592
|
const packages = [...(this.settingsManager.getProjectSettings().packages ?? [])];
|
|
737
|
-
let pkgIndex = packages.findIndex((pkg) => this.
|
|
593
|
+
let pkgIndex = packages.findIndex((pkg) => this.packageSourceStringMatches(item.metadata.source, this.getItemScope(item), typeof pkg === "string" ? pkg : pkg.source, "project"));
|
|
738
594
|
if (pkgIndex === -1) {
|
|
739
595
|
if (state === "inherit")
|
|
740
596
|
return false;
|
|
@@ -753,13 +609,7 @@ class ResourceList {
|
|
|
753
609
|
if (state !== "inherit")
|
|
754
610
|
updated.push(`${state === "load" ? "+" : "-"}${pattern}`);
|
|
755
611
|
pkg[item.resourceType] = updated.length > 0 ? updated : undefined;
|
|
756
|
-
|
|
757
|
-
pkg.skillInvocationOverrides === undefined) {
|
|
758
|
-
if (pkg.autoload === false)
|
|
759
|
-
packages.splice(pkgIndex, 1);
|
|
760
|
-
else
|
|
761
|
-
packages[pkgIndex] = pkg.source;
|
|
762
|
-
}
|
|
612
|
+
collapsePackageEntry(packages, pkgIndex, "project");
|
|
763
613
|
this.settingsManager.setProjectPackages(packages);
|
|
764
614
|
return true;
|
|
765
615
|
}
|
|
@@ -840,7 +690,7 @@ class ResourceList {
|
|
|
840
690
|
return { source: relative(this.getTopLevelBaseDir("project"), sourcePath) || ".", autoload: false };
|
|
841
691
|
}
|
|
842
692
|
/** Package entries match by the identity package loading dedupes on, so `npm:pkg@1` and `npm:pkg` are one package. */
|
|
843
|
-
|
|
693
|
+
packageSourceStringMatches(leftSource, leftScope, rightSource, rightScope) {
|
|
844
694
|
return (this.packageManager.getPackageIdentity(leftSource, leftScope) ===
|
|
845
695
|
this.packageManager.getPackageIdentity(rightSource, rightScope));
|
|
846
696
|
}
|
|
@@ -848,13 +698,13 @@ class ResourceList {
|
|
|
848
698
|
const settings = targetScope === "project"
|
|
849
699
|
? this.settingsManager.getProjectSettings()
|
|
850
700
|
: this.settingsManager.getGlobalSettings();
|
|
851
|
-
return (settings.packages ?? []).find((pkg) => this.
|
|
701
|
+
return (settings.packages ?? []).find((pkg) => this.packageSourceStringMatches(item.metadata.source, this.getItemScope(item), typeof pkg === "string" ? pkg : pkg.source, targetScope));
|
|
852
702
|
}
|
|
853
703
|
getPatternEntryTarget(entry) {
|
|
854
704
|
return entry.startsWith("!") || entry.startsWith("+") || entry.startsWith("-") ? entry.slice(1) : entry;
|
|
855
705
|
}
|
|
856
706
|
getResourceItemKey(item) {
|
|
857
|
-
return `${item.resourceType}:${
|
|
707
|
+
return `${item.resourceType}:${getResourcePathKey(item.path)}`;
|
|
858
708
|
}
|
|
859
709
|
getItemScope(item) {
|
|
860
710
|
return item.metadata.scope === "project" ? "project" : "user";
|