@xingular/harness 2.0.0 → 2.0.1-unstable
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 +635 -0
- package/LICENSE +202 -0
- package/NOTICE.md +50 -0
- package/README.md +241 -90
- package/THIRD_PARTY_LICENSES.md +942 -0
- package/browser-extension/README.md +32 -0
- package/browser-extension/background.js +612 -0
- package/browser-extension/manifest.json +16 -0
- package/browser-extension/overlay.js +97 -0
- package/browser-extension/popup.css +19 -0
- package/browser-extension/popup.html +30 -0
- package/browser-extension/popup.js +101 -0
- package/browser-extension/site-access.js +63 -0
- package/builtin/skills/plugin-authoring/SKILL.md +53 -0
- package/dist/cli.js +32851 -17155
- package/dist/sdk/accounts/accounts.d.ts +195 -0
- package/dist/sdk/accounts/accounts.js +821 -0
- package/dist/sdk/accounts/choices.d.ts +41 -0
- package/dist/sdk/accounts/choices.js +89 -0
- package/dist/sdk/accounts/env.d.ts +78 -0
- package/dist/sdk/accounts/env.js +294 -0
- package/dist/sdk/accounts/secrets.d.ts +28 -0
- package/dist/sdk/accounts/secrets.js +147 -0
- package/dist/sdk/accounts/store.d.ts +139 -0
- package/dist/sdk/accounts/store.js +255 -0
- package/dist/sdk/agents/builtin.d.ts +2 -0
- package/dist/sdk/agents/builtin.js +50 -0
- package/dist/sdk/agents/narrow.d.ts +13 -0
- package/dist/sdk/agents/narrow.js +29 -0
- package/dist/sdk/agents/planResearch.d.ts +27 -0
- package/dist/sdk/agents/planResearch.js +82 -0
- package/dist/sdk/agents/profiles.d.ts +93 -0
- package/dist/sdk/agents/profiles.js +289 -0
- package/dist/sdk/annotations/bridge.d.ts +44 -0
- package/dist/sdk/annotations/bridge.js +268 -0
- package/dist/sdk/annotations/capture.d.ts +158 -0
- package/dist/sdk/annotations/capture.js +409 -0
- package/dist/sdk/annotations/delivery.d.ts +79 -0
- package/dist/sdk/annotations/delivery.js +163 -0
- package/dist/sdk/annotations/inspect.d.ts +10 -0
- package/dist/sdk/annotations/inspect.js +34 -0
- package/dist/sdk/annotations/isolated.d.ts +6 -0
- package/dist/sdk/annotations/isolated.js +51 -0
- package/dist/sdk/annotations/pageScript.d.ts +28 -0
- package/dist/sdk/annotations/pageScript.js +871 -0
- package/dist/sdk/annotations/part.d.ts +8 -0
- package/dist/sdk/annotations/part.js +126 -0
- package/dist/sdk/annotations/queue.d.ts +4 -0
- package/dist/sdk/annotations/queue.js +45 -0
- package/dist/sdk/annotations/serverMethods.d.ts +3 -0
- package/dist/sdk/annotations/serverMethods.js +66 -0
- package/dist/sdk/annotations/store.d.ts +159 -0
- package/dist/sdk/annotations/store.js +404 -0
- package/dist/sdk/browser/backend.d.ts +16 -0
- package/dist/sdk/browser/backend.js +17 -0
- package/dist/sdk/browser/config.d.ts +19 -0
- package/dist/sdk/browser/config.js +23 -0
- package/dist/sdk/browser/contracts.d.ts +19 -0
- package/dist/sdk/browser/contracts.js +116 -0
- package/dist/sdk/browser/diagnostics.d.ts +4 -0
- package/dist/sdk/browser/diagnostics.js +38 -0
- package/dist/sdk/browser/extension/bridge.d.ts +55 -0
- package/dist/sdk/browser/extension/bridge.js +336 -0
- package/dist/sdk/browser/extension/session.d.ts +50 -0
- package/dist/sdk/browser/extension/session.js +321 -0
- package/dist/sdk/browser/index.d.ts +33 -0
- package/dist/sdk/browser/index.js +105 -0
- package/dist/sdk/browser/network.d.ts +10 -0
- package/dist/sdk/browser/network.js +59 -0
- package/dist/sdk/browser/serverMethods.d.ts +3 -0
- package/dist/sdk/browser/serverMethods.js +10 -0
- package/dist/sdk/browser/session.d.ts +85 -0
- package/dist/sdk/browser/session.js +228 -0
- package/dist/sdk/browser/tools.d.ts +102 -0
- package/dist/sdk/browser/tools.js +257 -0
- package/dist/sdk/capabilities/api.d.ts +22 -0
- package/dist/sdk/capabilities/api.js +54 -0
- package/dist/sdk/capabilities/runSnapshot.d.ts +18 -0
- package/dist/sdk/capabilities/runSnapshot.js +53 -0
- package/dist/sdk/capabilities/types.d.ts +29 -0
- package/dist/sdk/capabilities/types.js +1 -0
- package/dist/sdk/cli.d.ts +2 -0
- package/dist/sdk/cli.js +172 -0
- package/dist/sdk/commands/extensionOwners.d.ts +4 -0
- package/dist/sdk/commands/extensionOwners.js +17 -0
- package/dist/sdk/commands/list.d.ts +3 -0
- package/dist/sdk/commands/list.js +90 -0
- package/dist/sdk/commands/promptLoader.d.ts +5 -0
- package/dist/sdk/commands/promptLoader.js +76 -0
- package/dist/sdk/commands/promptRoutes.d.ts +13 -0
- package/dist/sdk/commands/promptRoutes.js +46 -0
- package/dist/sdk/commands/registry.d.ts +299 -0
- package/dist/sdk/commands/registry.js +54 -0
- package/dist/sdk/commands/routes.d.ts +16 -0
- package/dist/sdk/commands/routes.js +33 -0
- package/dist/sdk/commands/runtimeRouter.d.ts +4 -0
- package/dist/sdk/commands/runtimeRouter.js +48 -0
- package/dist/sdk/computer/boundary.d.ts +40 -0
- package/dist/sdk/computer/boundary.js +79 -0
- package/dist/sdk/computer/contracts.d.ts +127 -0
- package/dist/sdk/computer/contracts.js +13 -0
- package/dist/sdk/computer/control.d.ts +34 -0
- package/dist/sdk/computer/control.js +112 -0
- package/dist/sdk/computer/screenshot.d.ts +32 -0
- package/dist/sdk/computer/screenshot.js +35 -0
- package/dist/sdk/computer/terminalCapture.d.ts +26 -0
- package/dist/sdk/computer/terminalCapture.js +64 -0
- package/dist/sdk/computer/volatileImages.d.ts +9 -0
- package/dist/sdk/computer/volatileImages.js +50 -0
- package/dist/sdk/context/attribution.d.ts +18 -0
- package/dist/sdk/context/attribution.js +295 -0
- package/dist/sdk/context/runDetails.d.ts +16 -0
- package/dist/sdk/context/runDetails.js +22 -0
- package/dist/sdk/context/types.d.ts +94 -0
- package/dist/sdk/context/types.js +10 -0
- package/dist/sdk/core/bus.d.ts +23 -0
- package/dist/sdk/core/bus.js +76 -0
- package/dist/sdk/core/caller.d.ts +22 -0
- package/dist/sdk/core/caller.js +16 -0
- package/dist/sdk/core/changes.d.ts +15 -0
- package/dist/sdk/core/changes.js +15 -0
- package/dist/sdk/core/commandBudget.d.ts +23 -0
- package/dist/sdk/core/commandBudget.js +62 -0
- package/dist/sdk/core/effort.d.ts +2 -0
- package/dist/sdk/core/effort.js +1 -0
- package/dist/sdk/core/env.d.ts +18 -0
- package/dist/sdk/core/env.js +8 -0
- package/dist/sdk/core/errors.d.ts +15 -0
- package/dist/sdk/core/errors.js +24 -0
- package/dist/sdk/core/frontmatter.d.ts +12 -0
- package/dist/sdk/core/frontmatter.js +50 -0
- package/dist/sdk/core/fs.d.ts +18 -0
- package/dist/sdk/core/fs.js +106 -0
- package/dist/sdk/core/index.d.ts +24 -0
- package/dist/sdk/core/index.js +203 -0
- package/dist/sdk/core/interactiveProfile.d.ts +46 -0
- package/dist/sdk/core/interactiveProfile.js +143 -0
- package/dist/sdk/core/links.d.ts +51 -0
- package/dist/sdk/core/links.js +155 -0
- package/dist/sdk/core/path.d.ts +7 -0
- package/dist/sdk/core/path.js +79 -0
- package/dist/sdk/core/projects.d.ts +18 -0
- package/dist/sdk/core/projects.js +67 -0
- package/dist/sdk/core/secrets.d.ts +2 -0
- package/dist/sdk/core/secrets.js +5 -0
- package/dist/sdk/core/shell.d.ts +20 -0
- package/dist/sdk/core/shell.js +73 -0
- package/dist/sdk/core/text.d.ts +7 -0
- package/dist/sdk/core/text.js +40 -0
- package/dist/sdk/core/workspace.d.ts +13 -0
- package/dist/sdk/core/workspace.js +88 -0
- package/dist/sdk/core/workspaceBashTool.d.ts +20 -0
- package/dist/sdk/core/workspaceBashTool.js +50 -0
- package/dist/sdk/core/workspaceSandbox.d.ts +41 -0
- package/dist/sdk/core/workspaceSandbox.js +360 -0
- package/dist/sdk/core/workspaceWriteOperations.d.ts +57 -0
- package/dist/sdk/core/workspaceWriteOperations.js +245 -0
- package/dist/sdk/doctor/checks.d.ts +5 -0
- package/dist/sdk/doctor/checks.js +270 -0
- package/dist/sdk/doctor/probe.d.ts +4 -0
- package/dist/sdk/doctor/probe.js +94 -0
- package/dist/sdk/doctor/serverMethods.d.ts +3 -0
- package/dist/sdk/doctor/serverMethods.js +8 -0
- package/dist/sdk/doctor/service.d.ts +23 -0
- package/dist/sdk/doctor/service.js +144 -0
- package/dist/sdk/doctor/types.d.ts +141 -0
- package/dist/sdk/doctor/types.js +29 -0
- package/dist/sdk/harness.d.ts +172 -0
- package/dist/sdk/harness.js +387 -0
- package/dist/sdk/history/lessonPrompt.d.ts +2 -0
- package/dist/sdk/history/lessonPrompt.js +15 -0
- package/dist/sdk/history/lessons.d.ts +52 -0
- package/dist/sdk/history/lessons.js +173 -0
- package/dist/sdk/history/recall.d.ts +68 -0
- package/dist/sdk/history/recall.js +199 -0
- package/dist/sdk/history/serverMethods.d.ts +3 -0
- package/dist/sdk/history/serverMethods.js +8 -0
- package/dist/sdk/history/trajectory.d.ts +7 -0
- package/dist/sdk/history/trajectory.js +218 -0
- package/dist/sdk/hub/catalog.json +123 -0
- package/dist/sdk/hub/cli.d.ts +7 -0
- package/dist/sdk/hub/cli.js +81 -0
- package/dist/sdk/hub/hub.d.ts +74 -0
- package/dist/sdk/hub/hub.js +476 -0
- package/dist/sdk/hub/schema.d.ts +280 -0
- package/dist/sdk/hub/schema.js +78 -0
- package/dist/sdk/hub/serverMethods.d.ts +3 -0
- package/dist/sdk/hub/serverMethods.js +11 -0
- package/dist/sdk/index.d.ts +80 -0
- package/dist/sdk/index.js +60 -0
- package/dist/sdk/mcp/connections.d.ts +83 -0
- package/dist/sdk/mcp/connections.js +676 -0
- package/dist/sdk/mcp/manager.d.ts +26 -0
- package/dist/sdk/mcp/manager.js +124 -0
- package/dist/sdk/mcp/oauth.d.ts +35 -0
- package/dist/sdk/mcp/oauth.js +171 -0
- package/dist/sdk/mcp/scopeMigration.d.ts +19 -0
- package/dist/sdk/mcp/scopeMigration.js +198 -0
- package/dist/sdk/mcp/serverMethods.d.ts +3 -0
- package/dist/sdk/mcp/serverMethods.js +22 -0
- package/dist/sdk/mcp/service.d.ts +160 -0
- package/dist/sdk/mcp/service.js +510 -0
- package/dist/sdk/mcp/types.d.ts +131 -0
- package/dist/sdk/mcp/types.js +49 -0
- package/dist/sdk/pi/retryPolicy.d.ts +19 -0
- package/dist/sdk/pi/retryPolicy.js +11 -0
- package/dist/sdk/pi/runtime.d.ts +14 -0
- package/dist/sdk/pi/runtime.js +31 -0
- package/dist/sdk/plugins/api.d.ts +66 -0
- package/dist/sdk/plugins/api.js +155 -0
- package/dist/sdk/plugins/attachments.d.ts +46 -0
- package/dist/sdk/plugins/attachments.js +111 -0
- package/dist/sdk/plugins/builtin.d.ts +7 -0
- package/dist/sdk/plugins/builtin.js +182 -0
- package/dist/sdk/plugins/builtinRegistry.d.ts +62 -0
- package/dist/sdk/plugins/builtinRegistry.js +77 -0
- package/dist/sdk/plugins/catalogue.d.ts +29 -0
- package/dist/sdk/plugins/catalogue.js +197 -0
- package/dist/sdk/plugins/cli.d.ts +13 -0
- package/dist/sdk/plugins/cli.js +188 -0
- package/dist/sdk/plugins/commandPrefix.d.ts +8 -0
- package/dist/sdk/plugins/commandPrefix.js +21 -0
- package/dist/sdk/plugins/discover.d.ts +48 -0
- package/dist/sdk/plugins/discover.js +230 -0
- package/dist/sdk/plugins/firstParty.d.ts +50 -0
- package/dist/sdk/plugins/firstParty.js +119 -0
- package/dist/sdk/plugins/hooks.d.ts +94 -0
- package/dist/sdk/plugins/hooks.js +162 -0
- package/dist/sdk/plugins/identity.d.ts +19 -0
- package/dist/sdk/plugins/identity.js +48 -0
- package/dist/sdk/plugins/install.d.ts +24 -0
- package/dist/sdk/plugins/install.js +160 -0
- package/dist/sdk/plugins/inventory.d.ts +22 -0
- package/dist/sdk/plugins/inventory.js +111 -0
- package/dist/sdk/plugins/manifest.d.ts +21 -0
- package/dist/sdk/plugins/manifest.js +94 -0
- package/dist/sdk/plugins/plugins.d.ts +106 -0
- package/dist/sdk/plugins/plugins.js +165 -0
- package/dist/sdk/plugins/proposals.d.ts +17 -0
- package/dist/sdk/plugins/proposals.js +147 -0
- package/dist/sdk/plugins/runtime.d.ts +9 -0
- package/dist/sdk/plugins/runtime.js +95 -0
- package/dist/sdk/plugins/surfaces.d.ts +5 -0
- package/dist/sdk/plugins/surfaces.js +11 -0
- package/dist/sdk/plugins/trust.d.ts +44 -0
- package/dist/sdk/plugins/trust.js +120 -0
- package/dist/sdk/plugins/types.d.ts +174 -0
- package/dist/sdk/plugins/types.js +7 -0
- package/dist/sdk/prompt/compile.d.ts +245 -0
- package/dist/sdk/prompt/compile.js +535 -0
- package/dist/sdk/prompt/reporting.d.ts +2 -0
- package/dist/sdk/prompt/reporting.js +94 -0
- package/dist/sdk/prompt/standard.d.ts +32 -0
- package/dist/sdk/prompt/standard.js +76 -0
- package/dist/sdk/refine/cli.d.ts +4 -0
- package/dist/sdk/refine/cli.js +186 -0
- package/dist/sdk/refine/demo.d.ts +21 -0
- package/dist/sdk/refine/demo.js +114 -0
- package/dist/sdk/refine/evidence.d.ts +55 -0
- package/dist/sdk/refine/evidence.js +330 -0
- package/dist/sdk/refine/host.d.ts +59 -0
- package/dist/sdk/refine/host.js +105 -0
- package/dist/sdk/refine/ledger.d.ts +48 -0
- package/dist/sdk/refine/ledger.js +76 -0
- package/dist/sdk/refine/library.d.ts +55 -0
- package/dist/sdk/refine/library.js +177 -0
- package/dist/sdk/refine/pi.d.ts +72 -0
- package/dist/sdk/refine/pi.js +248 -0
- package/dist/sdk/refine/prompts.d.ts +60 -0
- package/dist/sdk/refine/prompts.js +434 -0
- package/dist/sdk/refine/recursion.d.ts +113 -0
- package/dist/sdk/refine/recursion.js +258 -0
- package/dist/sdk/refine/runner.d.ts +83 -0
- package/dist/sdk/refine/runner.js +151 -0
- package/dist/sdk/refine/selection.d.ts +57 -0
- package/dist/sdk/refine/selection.js +251 -0
- package/dist/sdk/refine/serverMethods.d.ts +3 -0
- package/dist/sdk/refine/serverMethods.js +23 -0
- package/dist/sdk/refine/service.d.ts +115 -0
- package/dist/sdk/refine/service.js +280 -0
- package/dist/sdk/refine/suite.d.ts +67 -0
- package/dist/sdk/refine/suite.js +174 -0
- package/dist/sdk/refine/trajectory.d.ts +9 -0
- package/dist/sdk/refine/trajectory.js +73 -0
- package/dist/sdk/refine/types.d.ts +93 -0
- package/dist/sdk/refine/types.js +10 -0
- package/dist/sdk/remote/addresses.d.ts +19 -0
- package/dist/sdk/remote/addresses.js +52 -0
- package/dist/sdk/remote/pairing.d.ts +59 -0
- package/dist/sdk/remote/pairing.js +160 -0
- package/dist/sdk/remote/seal.d.ts +28 -0
- package/dist/sdk/remote/seal.js +84 -0
- package/dist/sdk/remote/server.d.ts +28 -0
- package/dist/sdk/remote/server.js +158 -0
- package/dist/sdk/remote/service.d.ts +125 -0
- package/dist/sdk/remote/service.js +330 -0
- package/dist/sdk/remote/webClient.d.ts +4 -0
- package/dist/sdk/remote/webClient.js +452 -0
- package/dist/sdk/server/methods.d.ts +3 -0
- package/dist/sdk/server/methods.js +365 -0
- package/dist/sdk/server/params.d.ts +4 -0
- package/dist/sdk/server/params.js +11 -0
- package/dist/sdk/server/remote.d.ts +19 -0
- package/dist/sdk/server/remote.js +109 -0
- package/dist/sdk/server/rpc.d.ts +20 -0
- package/dist/sdk/server/rpc.js +102 -0
- package/dist/sdk/server/serve.d.ts +13 -0
- package/dist/sdk/server/serve.js +25 -0
- package/dist/sdk/server/socket.d.ts +28 -0
- package/dist/sdk/server/socket.js +122 -0
- package/dist/sdk/sessions/approvals.d.ts +47 -0
- package/dist/sdk/sessions/approvals.js +119 -0
- package/dist/sdk/sessions/checkpoint.d.ts +7 -0
- package/dist/sdk/sessions/checkpoint.js +41 -0
- package/dist/sdk/sessions/compactionCheckpoint.d.ts +18 -0
- package/dist/sdk/sessions/compactionCheckpoint.js +79 -0
- package/dist/sdk/sessions/completionCheck.d.ts +51 -0
- package/dist/sdk/sessions/completionCheck.js +161 -0
- package/dist/sdk/sessions/continuation.d.ts +53 -0
- package/dist/sdk/sessions/continuation.js +90 -0
- package/dist/sdk/sessions/contracts.d.ts +991 -0
- package/dist/sdk/sessions/contracts.js +545 -0
- package/dist/sdk/sessions/control.d.ts +72 -0
- package/dist/sdk/sessions/control.js +158 -0
- package/dist/sdk/sessions/extensionUi.d.ts +19 -0
- package/dist/sdk/sessions/extensionUi.js +64 -0
- package/dist/sdk/sessions/goal.d.ts +145 -0
- package/dist/sdk/sessions/goal.js +405 -0
- package/dist/sdk/sessions/goalLoop.d.ts +37 -0
- package/dist/sdk/sessions/goalLoop.js +125 -0
- package/dist/sdk/sessions/goalPrompts.d.ts +4 -0
- package/dist/sdk/sessions/goalPrompts.js +93 -0
- package/dist/sdk/sessions/goalStop.d.ts +27 -0
- package/dist/sdk/sessions/goalStop.js +41 -0
- package/dist/sdk/sessions/history.d.ts +16 -0
- package/dist/sdk/sessions/history.js +68 -0
- package/dist/sdk/sessions/initialBash.d.ts +7 -0
- package/dist/sdk/sessions/initialBash.js +7 -0
- package/dist/sdk/sessions/lineageJoin.d.ts +2 -0
- package/dist/sdk/sessions/lineageJoin.js +61 -0
- package/dist/sdk/sessions/live.d.ts +101 -0
- package/dist/sdk/sessions/live.js +265 -0
- package/dist/sdk/sessions/planMode.d.ts +116 -0
- package/dist/sdk/sessions/planMode.js +281 -0
- package/dist/sdk/sessions/policy.d.ts +43 -0
- package/dist/sdk/sessions/policy.js +1 -0
- package/dist/sdk/sessions/pricing.d.ts +34 -0
- package/dist/sdk/sessions/pricing.js +40 -0
- package/dist/sdk/sessions/reasoningSummaries.d.ts +11 -0
- package/dist/sdk/sessions/reasoningSummaries.js +61 -0
- package/dist/sdk/sessions/registry.d.ts +124 -0
- package/dist/sdk/sessions/registry.js +392 -0
- package/dist/sdk/sessions/runIndex.d.ts +21 -0
- package/dist/sdk/sessions/runIndex.js +65 -0
- package/dist/sdk/sessions/runStore.d.ts +82 -0
- package/dist/sdk/sessions/runStore.js +393 -0
- package/dist/sdk/sessions/runner.d.ts +291 -0
- package/dist/sdk/sessions/runner.js +1040 -0
- package/dist/sdk/sessions/sessionState.d.ts +13 -0
- package/dist/sdk/sessions/sessionState.js +31 -0
- package/dist/sdk/sessions/sessions.d.ts +238 -0
- package/dist/sdk/sessions/sessions.js +923 -0
- package/dist/sdk/sessions/sideQuestionServerMethods.d.ts +3 -0
- package/dist/sdk/sessions/sideQuestionServerMethods.js +19 -0
- package/dist/sdk/sessions/sideQuestions.d.ts +66 -0
- package/dist/sdk/sessions/sideQuestions.js +290 -0
- package/dist/sdk/sessions/stallWatch.d.ts +35 -0
- package/dist/sdk/sessions/stallWatch.js +42 -0
- package/dist/sdk/sessions/subagentServerMethods.d.ts +3 -0
- package/dist/sdk/sessions/subagentServerMethods.js +41 -0
- package/dist/sdk/sessions/subagentService.d.ts +88 -0
- package/dist/sdk/sessions/subagentService.js +546 -0
- package/dist/sdk/sessions/subagents.d.ts +98 -0
- package/dist/sdk/sessions/subagents.js +136 -0
- package/dist/sdk/sessions/workSlice.d.ts +167 -0
- package/dist/sdk/sessions/workSlice.js +266 -0
- package/dist/sdk/sessions/workspaceBoundary.d.ts +15 -0
- package/dist/sdk/sessions/workspaceBoundary.js +46 -0
- package/dist/sdk/terminal/accountsMenu.d.ts +46 -0
- package/dist/sdk/terminal/accountsMenu.js +392 -0
- package/dist/sdk/terminal/browser.d.ts +62 -0
- package/dist/sdk/terminal/browser.js +41 -0
- package/dist/sdk/terminal/browserControl.d.ts +29 -0
- package/dist/sdk/terminal/browserControl.js +187 -0
- package/dist/sdk/terminal/cli.d.ts +20 -0
- package/dist/sdk/terminal/cli.js +121 -0
- package/dist/sdk/terminal/client.d.ts +20 -0
- package/dist/sdk/terminal/client.js +148 -0
- package/dist/sdk/terminal/commandHelp.d.ts +17 -0
- package/dist/sdk/terminal/commandHelp.js +20 -0
- package/dist/sdk/terminal/control.d.ts +4 -0
- package/dist/sdk/terminal/control.js +25 -0
- package/dist/sdk/terminal/controller.d.ts +136 -0
- package/dist/sdk/terminal/controller.js +579 -0
- package/dist/sdk/terminal/credentialStore.d.ts +4 -0
- package/dist/sdk/terminal/credentialStore.js +33 -0
- package/dist/sdk/terminal/daemon.d.ts +44 -0
- package/dist/sdk/terminal/daemon.js +264 -0
- package/dist/sdk/terminal/hubMenu.d.ts +10 -0
- package/dist/sdk/terminal/hubMenu.js +34 -0
- package/dist/sdk/terminal/launch.d.ts +5 -0
- package/dist/sdk/terminal/launch.js +27 -0
- package/dist/sdk/terminal/liveTerminal.d.ts +96 -0
- package/dist/sdk/terminal/liveTerminal.js +436 -0
- package/dist/sdk/terminal/logs.d.ts +14 -0
- package/dist/sdk/terminal/logs.js +59 -0
- package/dist/sdk/terminal/opentui/ansi.d.ts +25 -0
- package/dist/sdk/terminal/opentui/ansi.js +192 -0
- package/dist/sdk/terminal/opentui/model.d.ts +163 -0
- package/dist/sdk/terminal/opentui/model.js +484 -0
- package/dist/sdk/terminal/opentui/subagentsWidget.d.ts +28 -0
- package/dist/sdk/terminal/opentui/subagentsWidget.js +54 -0
- package/dist/sdk/terminal/opentui/theme.d.ts +47 -0
- package/dist/sdk/terminal/opentui/theme.js +93 -0
- package/dist/sdk/terminal/piExtension.d.ts +12 -0
- package/dist/sdk/terminal/piExtension.js +847 -0
- package/dist/sdk/terminal/pluginMenu.d.ts +34 -0
- package/dist/sdk/terminal/pluginMenu.js +101 -0
- package/dist/sdk/terminal/socket.d.ts +73 -0
- package/dist/sdk/terminal/socket.js +287 -0
- package/dist/sdk/terminal/standalone.d.ts +52 -0
- package/dist/sdk/terminal/standalone.js +329 -0
- package/dist/sdk/terminal/subagentMonitor.d.ts +62 -0
- package/dist/sdk/terminal/subagentMonitor.js +176 -0
- package/dist/sdk/terminal/terminals.d.ts +312 -0
- package/dist/sdk/terminal/terminals.js +1782 -0
- package/dist/sdk/terminal/toolName.d.ts +6 -0
- package/dist/sdk/terminal/toolName.js +12 -0
- package/dist/sdk/terminal/trajectory.d.ts +15 -0
- package/dist/sdk/terminal/trajectory.js +38 -0
- package/dist/sdk/terminal/tui/annotateCommand.d.ts +7 -0
- package/dist/sdk/terminal/tui/annotateCommand.js +36 -0
- package/dist/sdk/terminal/tui/annotateSend.d.ts +30 -0
- package/dist/sdk/terminal/tui/annotateSend.js +40 -0
- package/dist/sdk/terminal/tui/chrome.d.ts +68 -0
- package/dist/sdk/terminal/tui/chrome.js +182 -0
- package/dist/sdk/terminal/tui/clipboardFiles.d.ts +11 -0
- package/dist/sdk/terminal/tui/clipboardFiles.js +74 -0
- package/dist/sdk/terminal/tui/commandPages.d.ts +16 -0
- package/dist/sdk/terminal/tui/commandPages.js +136 -0
- package/dist/sdk/terminal/tui/commands.d.ts +71 -0
- package/dist/sdk/terminal/tui/commands.js +496 -0
- package/dist/sdk/terminal/tui/dialogGeometry.d.ts +27 -0
- package/dist/sdk/terminal/tui/dialogGeometry.js +52 -0
- package/dist/sdk/terminal/tui/dialogs.d.ts +81 -0
- package/dist/sdk/terminal/tui/dialogs.js +372 -0
- package/dist/sdk/terminal/tui/goalCommand.d.ts +19 -0
- package/dist/sdk/terminal/tui/goalCommand.js +83 -0
- package/dist/sdk/terminal/tui/harnessRuntime.d.ts +8 -0
- package/dist/sdk/terminal/tui/harnessRuntime.js +771 -0
- package/dist/sdk/terminal/tui/keybindings.d.ts +11 -0
- package/dist/sdk/terminal/tui/keybindings.js +49 -0
- package/dist/sdk/terminal/tui/list.d.ts +86 -0
- package/dist/sdk/terminal/tui/list.js +278 -0
- package/dist/sdk/terminal/tui/markdown.d.ts +16 -0
- package/dist/sdk/terminal/tui/markdown.js +55 -0
- package/dist/sdk/terminal/tui/modeChoices.d.ts +61 -0
- package/dist/sdk/terminal/tui/modeChoices.js +95 -0
- package/dist/sdk/terminal/tui/modelPicker.d.ts +55 -0
- package/dist/sdk/terminal/tui/modelPicker.js +150 -0
- package/dist/sdk/terminal/tui/mouse.d.ts +3 -0
- package/dist/sdk/terminal/tui/mouse.js +3 -0
- package/dist/sdk/terminal/tui/mouseReport.d.ts +30 -0
- package/dist/sdk/terminal/tui/mouseReport.js +80 -0
- package/dist/sdk/terminal/tui/page.d.ts +17 -0
- package/dist/sdk/terminal/tui/page.js +1 -0
- package/dist/sdk/terminal/tui/pageOverlay.d.ts +30 -0
- package/dist/sdk/terminal/tui/pageOverlay.js +183 -0
- package/dist/sdk/terminal/tui/pages/accountsPage.d.ts +76 -0
- package/dist/sdk/terminal/tui/pages/accountsPage.js +409 -0
- package/dist/sdk/terminal/tui/pages/agentsPage.d.ts +74 -0
- package/dist/sdk/terminal/tui/pages/agentsPage.js +193 -0
- package/dist/sdk/terminal/tui/pages/annotatePage.d.ts +148 -0
- package/dist/sdk/terminal/tui/pages/annotatePage.js +576 -0
- package/dist/sdk/terminal/tui/pages/browserPage.d.ts +87 -0
- package/dist/sdk/terminal/tui/pages/browserPage.js +739 -0
- package/dist/sdk/terminal/tui/pages/componentsPage.d.ts +47 -0
- package/dist/sdk/terminal/tui/pages/componentsPage.js +119 -0
- package/dist/sdk/terminal/tui/pages/contextPage.d.ts +91 -0
- package/dist/sdk/terminal/tui/pages/contextPage.js +585 -0
- package/dist/sdk/terminal/tui/pages/doctorPage.d.ts +39 -0
- package/dist/sdk/terminal/tui/pages/doctorPage.js +233 -0
- package/dist/sdk/terminal/tui/pages/followUpQueuePage.d.ts +34 -0
- package/dist/sdk/terminal/tui/pages/followUpQueuePage.js +130 -0
- package/dist/sdk/terminal/tui/pages/hubPage.d.ts +52 -0
- package/dist/sdk/terminal/tui/pages/hubPage.js +292 -0
- package/dist/sdk/terminal/tui/pages/logPage.d.ts +38 -0
- package/dist/sdk/terminal/tui/pages/logPage.js +189 -0
- package/dist/sdk/terminal/tui/pages/permissionsPage.d.ts +44 -0
- package/dist/sdk/terminal/tui/pages/permissionsPage.js +124 -0
- package/dist/sdk/terminal/tui/pages/pluginsPage.d.ts +65 -0
- package/dist/sdk/terminal/tui/pages/pluginsPage.js +519 -0
- package/dist/sdk/terminal/tui/pages/remoteControlPage.d.ts +32 -0
- package/dist/sdk/terminal/tui/pages/remoteControlPage.js +170 -0
- package/dist/sdk/terminal/tui/pages/settingsPage.d.ts +63 -0
- package/dist/sdk/terminal/tui/pages/settingsPage.js +103 -0
- package/dist/sdk/terminal/tui/pages/subagentsPage.d.ts +24 -0
- package/dist/sdk/terminal/tui/pages/subagentsPage.js +155 -0
- package/dist/sdk/terminal/tui/pages/textPage.d.ts +17 -0
- package/dist/sdk/terminal/tui/pages/textPage.js +52 -0
- package/dist/sdk/terminal/tui/pages/trajectoryPage.d.ts +66 -0
- package/dist/sdk/terminal/tui/pages/trajectoryPage.js +490 -0
- package/dist/sdk/terminal/tui/pages/usagePage.d.ts +45 -0
- package/dist/sdk/terminal/tui/pages/usagePage.js +397 -0
- package/dist/sdk/terminal/tui/pages/worktreesPage.d.ts +72 -0
- package/dist/sdk/terminal/tui/pages/worktreesPage.js +203 -0
- package/dist/sdk/terminal/tui/piAdapter.d.ts +17 -0
- package/dist/sdk/terminal/tui/piAdapter.js +46 -0
- package/dist/sdk/terminal/tui/planMode.d.ts +2 -0
- package/dist/sdk/terminal/tui/planMode.js +2 -0
- package/dist/sdk/terminal/tui/pluginCommands.d.ts +16 -0
- package/dist/sdk/terminal/tui/pluginCommands.js +41 -0
- package/dist/sdk/terminal/tui/qr.d.ts +4 -0
- package/dist/sdk/terminal/tui/qr.js +35 -0
- package/dist/sdk/terminal/tui/questionPicker.d.ts +20 -0
- package/dist/sdk/terminal/tui/questionPicker.js +150 -0
- package/dist/sdk/terminal/tui/questions.d.ts +21 -0
- package/dist/sdk/terminal/tui/questions.js +42 -0
- package/dist/sdk/terminal/tui/runtime.d.ts +117 -0
- package/dist/sdk/terminal/tui/runtime.js +544 -0
- package/dist/sdk/terminal/tui/search.d.ts +22 -0
- package/dist/sdk/terminal/tui/search.js +61 -0
- package/dist/sdk/terminal/tui/selection.d.ts +16 -0
- package/dist/sdk/terminal/tui/selection.js +16 -0
- package/dist/sdk/terminal/tui/sessionPicker.d.ts +40 -0
- package/dist/sdk/terminal/tui/sessionPicker.js +141 -0
- package/dist/sdk/terminal/tui/sessionUi.d.ts +3 -0
- package/dist/sdk/terminal/tui/sessionUi.js +30 -0
- package/dist/sdk/terminal/tui/settingsModel.d.ts +14 -0
- package/dist/sdk/terminal/tui/settingsModel.js +195 -0
- package/dist/sdk/terminal/tui/sideQuestion.d.ts +57 -0
- package/dist/sdk/terminal/tui/sideQuestion.js +241 -0
- package/dist/sdk/terminal/tui/skillInvocation.d.ts +28 -0
- package/dist/sdk/terminal/tui/skillInvocation.js +63 -0
- package/dist/sdk/terminal/tui/status.d.ts +18 -0
- package/dist/sdk/terminal/tui/status.js +67 -0
- package/dist/sdk/terminal/tui/theme.d.ts +54 -0
- package/dist/sdk/terminal/tui/theme.js +185 -0
- package/dist/sdk/terminal/tui/thinkingLevels.d.ts +11 -0
- package/dist/sdk/terminal/tui/thinkingLevels.js +31 -0
- package/dist/sdk/terminal/tui/treeModel.d.ts +79 -0
- package/dist/sdk/terminal/tui/treeModel.js +483 -0
- package/dist/sdk/terminal/tui/treePicker.d.ts +49 -0
- package/dist/sdk/terminal/tui/treePicker.js +251 -0
- package/dist/sdk/terminal/tui/ui.d.ts +49 -0
- package/dist/sdk/terminal/tui/ui.js +149 -0
- package/dist/sdk/terminal/tui/variantCommands.d.ts +32 -0
- package/dist/sdk/terminal/tui/variantCommands.js +359 -0
- package/dist/sdk/terminal/tui/workingStatus.d.ts +9 -0
- package/dist/sdk/terminal/tui/workingStatus.js +229 -0
- package/dist/sdk/terminal/variantControl.d.ts +24 -0
- package/dist/sdk/terminal/variantControl.js +145 -0
- package/dist/sdk/tools/askUser.d.ts +6 -0
- package/dist/sdk/tools/askUser.js +92 -0
- package/dist/sdk/tools/defaultSkills.d.ts +23 -0
- package/dist/sdk/tools/defaultSkills.js +46 -0
- package/dist/sdk/tools/definitions.d.ts +32 -0
- package/dist/sdk/tools/definitions.js +133 -0
- package/dist/sdk/tools/dispatch.d.ts +16 -0
- package/dist/sdk/tools/dispatch.js +92 -0
- package/dist/sdk/tools/getCapabilities.d.ts +31 -0
- package/dist/sdk/tools/getCapabilities.js +34 -0
- package/dist/sdk/tools/harnessTools.d.ts +8 -0
- package/dist/sdk/tools/harnessTools.js +20 -0
- package/dist/sdk/tools/sessionName.d.ts +16 -0
- package/dist/sdk/tools/sessionName.js +78 -0
- package/dist/sdk/tools/spawnSubagent.d.ts +4 -0
- package/dist/sdk/tools/spawnSubagent.js +63 -0
- package/dist/sdk/tools/todo.d.ts +15 -0
- package/dist/sdk/tools/todo.js +66 -0
- package/dist/sdk/tools/types.d.ts +48 -0
- package/dist/sdk/tools/types.js +1 -0
- package/dist/sdk/usage/analytics.d.ts +20 -0
- package/dist/sdk/usage/analytics.js +151 -0
- package/dist/sdk/usage/ledger.d.ts +38 -0
- package/dist/sdk/usage/ledger.js +142 -0
- package/dist/sdk/usage/limits/adapters.d.ts +11 -0
- package/dist/sdk/usage/limits/adapters.js +349 -0
- package/dist/sdk/usage/limits/capture.d.ts +8 -0
- package/dist/sdk/usage/limits/capture.js +47 -0
- package/dist/sdk/usage/limits/http.d.ts +12 -0
- package/dist/sdk/usage/limits/http.js +51 -0
- package/dist/sdk/usage/limits/normalize.d.ts +15 -0
- package/dist/sdk/usage/limits/normalize.js +211 -0
- package/dist/sdk/usage/limits/service.d.ts +30 -0
- package/dist/sdk/usage/limits/service.js +176 -0
- package/dist/sdk/usage/limits/types.d.ts +65 -0
- package/dist/sdk/usage/limits/types.js +1 -0
- package/dist/sdk/usage/serverMethods.d.ts +3 -0
- package/dist/sdk/usage/serverMethods.js +22 -0
- package/dist/sdk/usage/service.d.ts +32 -0
- package/dist/sdk/usage/service.js +66 -0
- package/dist/sdk/usage/settings.d.ts +7 -0
- package/dist/sdk/usage/settings.js +28 -0
- package/dist/sdk/usage/types.d.ts +60 -0
- package/dist/sdk/usage/types.js +4 -0
- package/dist/sdk/variant/components.d.ts +34 -0
- package/dist/sdk/variant/components.js +230 -0
- package/dist/sdk/variant/materialise.d.ts +66 -0
- package/dist/sdk/variant/materialise.js +81 -0
- package/dist/sdk/variant/migrate.d.ts +4 -0
- package/dist/sdk/variant/migrate.js +41 -0
- package/dist/sdk/variant/seed.d.ts +20 -0
- package/dist/sdk/variant/seed.js +116 -0
- package/dist/sdk/variant/store.d.ts +114 -0
- package/dist/sdk/variant/store.js +256 -0
- package/dist/sdk/variant/surface.d.ts +56 -0
- package/dist/sdk/variant/surface.js +81 -0
- package/dist/sdk/variant/trust.d.ts +27 -0
- package/dist/sdk/variant/trust.js +64 -0
- package/dist/sdk/variant/variant.d.ts +71 -0
- package/dist/sdk/variant/variant.js +331 -0
- package/dist/sdk/web/markdown.d.ts +10 -0
- package/dist/sdk/web/markdown.js +66 -0
- package/dist/sdk/web/part.d.ts +10 -0
- package/dist/sdk/web/part.js +6 -0
- package/dist/sdk/web/safeRequest.d.ts +34 -0
- package/dist/sdk/web/safeRequest.js +175 -0
- package/dist/sdk/web/search.d.ts +53 -0
- package/dist/sdk/web/search.js +168 -0
- package/dist/sdk/web/serverMethods.d.ts +3 -0
- package/dist/sdk/web/serverMethods.js +7 -0
- package/dist/sdk/web/text.d.ts +2 -0
- package/dist/sdk/web/text.js +7 -0
- package/dist/sdk/web/tools.d.ts +22 -0
- package/dist/sdk/web/tools.js +195 -0
- package/dist/sdk/web/turndown-plugin-gfm.d.ts +4 -0
- package/dist/sdk/wiki/notes.d.ts +68 -0
- package/dist/sdk/wiki/notes.js +297 -0
- package/dist/sdk/wiki/serverMethods.d.ts +3 -0
- package/dist/sdk/wiki/serverMethods.js +26 -0
- package/dist/sdk/worktrees/cli.d.ts +11 -0
- package/dist/sdk/worktrees/cli.js +146 -0
- package/dist/sdk/worktrees/copy.d.ts +9 -0
- package/dist/sdk/worktrees/copy.js +111 -0
- package/dist/sdk/worktrees/git.d.ts +18 -0
- package/dist/sdk/worktrees/git.js +89 -0
- package/dist/sdk/worktrees/serverMethods.d.ts +3 -0
- package/dist/sdk/worktrees/serverMethods.js +30 -0
- package/dist/sdk/worktrees/service.d.ts +73 -0
- package/dist/sdk/worktrees/service.js +483 -0
- package/dist/sdk/worktrees/setup.d.ts +23 -0
- package/dist/sdk/worktrees/setup.js +65 -0
- package/dist/sdk/worktrees/snapshot.d.ts +16 -0
- package/dist/sdk/worktrees/snapshot.js +83 -0
- package/dist/sdk/worktrees/types.d.ts +91 -0
- package/dist/sdk/worktrees/types.js +1 -0
- package/dist/sdk/world/actions.d.ts +23 -0
- package/dist/sdk/world/actions.js +31 -0
- package/dist/sdk/world/cli.d.ts +12 -0
- package/dist/sdk/world/cli.js +166 -0
- package/dist/sdk/world/images.d.ts +20 -0
- package/dist/sdk/world/images.js +48 -0
- package/dist/sdk/world/untrusted.d.ts +12 -0
- package/dist/sdk/world/untrusted.js +20 -0
- package/dist/sdk/world/world.d.ts +75 -0
- package/dist/sdk/world/world.js +117 -0
- package/dist/terminal-opentui.js +30986 -0
- package/dist/terminal-pi.js +3008 -610
- package/docs/README.md +45 -1
- package/docs/architecture/00-overview.md +171 -0
- package/docs/architecture/01-extension-points.md +78 -0
- package/docs/architecture/02-sessions-and-runs.md +505 -0
- package/docs/architecture/03-variants.md +122 -0
- package/docs/architecture/04-prompt.md +277 -0
- package/docs/architecture/05-refinement.md +134 -0
- package/docs/architecture/06-plugins-and-capabilities.md +208 -0
- package/docs/architecture/07-tools-and-gate.md +245 -0
- package/docs/architecture/08-memory-and-history.md +100 -0
- package/docs/architecture/09-accounts-and-connectors.md +153 -0
- package/docs/architecture/10-server-protocol.md +403 -0
- package/docs/architecture/11-terminal.md +555 -0
- package/docs/architecture/12-storage.md +118 -0
- package/docs/architecture/13-world-tools.md +114 -0
- package/docs/architecture/14-surfaces-and-parity.md +151 -0
- package/docs/architecture/15-remote-control.md +120 -0
- package/docs/architecture/README.md +143 -0
- package/docs/architecture/proposals/PROP-0001-reporting-section.md +106 -0
- package/docs/architecture/proposals/PROP-0002-retain-rollout-workspaces.md +104 -0
- package/docs/architecture/proposals/PROP-0003-executor-settings.md +81 -0
- package/docs/architecture/proposals/PROP-0004-flexible-reporting-guidance.md +71 -0
- package/docs/architecture/proposals/PROP-0005-xharness-cli-name.md +78 -0
- package/docs/architecture/proposals/PROP-0006-run-checklist.md +72 -0
- package/docs/architecture/proposals/PROP-0007-run-continuation.md +80 -0
- package/docs/architecture/proposals/PROP-0008-lessons-from-runs.md +80 -0
- package/docs/architecture/proposals/PROP-0009-foundation-and-variants.md +78 -0
- package/docs/architecture/proposals/PROP-0010-session-names.md +73 -0
- package/docs/architecture/proposals/PROP-0011-doctor.md +63 -0
- package/docs/architecture/proposals/PROP-0012-release-baseline.md +56 -0
- package/docs/architecture/proposals/PROP-0013-resource-browser.md +58 -0
- package/docs/architecture/proposals/PROP-0014-fullscreen-browser-tabs.md +58 -0
- package/docs/architecture/proposals/PROP-0015-one-capability-surface.md +88 -0
- package/docs/architecture/proposals/PROP-0016-managed-worktrees.md +156 -0
- package/docs/architecture/proposals/PROP-0017-page-annotations.md +131 -0
- package/docs/architecture/proposals/PROP-0018-annotation-queue-and-app-targets.md +183 -0
- package/docs/architecture/proposals/PROP-0019-contextual-side-questions.md +122 -0
- package/docs/architecture/proposals/PROP-0020-builtin-feature-plugins.md +105 -0
- package/docs/architecture/proposals/PROP-0021-command-namespaces-and-duplicates.md +99 -0
- package/docs/architecture/proposals/PROP-0022-plan-only-questions.md +102 -0
- package/docs/architecture/proposals/PROP-0023-xagent-cli-name.md +61 -0
- package/docs/architecture/proposals/PROP-0024-question-sketch-previews.md +130 -0
- package/docs/architecture/proposals/PROP-0025-contextual-question-wireframes.md +49 -0
- package/docs/architecture/proposals/PROP-0026-connected-sketch-display.md +96 -0
- package/docs/architecture/proposals/PROP-0027-xingular-agent-product-identity.md +60 -0
- package/docs/architecture/proposals/PROP-0028-normalize-question-wireframes.md +55 -0
- package/docs/architecture/proposals/PROP-0029-agent-profiles.md +124 -0
- package/docs/architecture/proposals/PROP-0030-subagent-title.md +86 -0
- package/docs/architecture/proposals/PROP-0031-plugin-command-owner-namespaces.md +54 -0
- package/docs/architecture/proposals/PROP-0032-planning-quality.md +196 -0
- package/docs/architecture/proposals/PROP-0033-compaction-plan-checkpoints.md +75 -0
- package/docs/architecture/proposals/PROP-0034-conversation-fast-mode.md +120 -0
- package/docs/architecture/proposals/PROP-0035-retain-subagent-status.md +47 -0
- package/docs/architecture/proposals/PROP-0036-first-class-harness-commands.md +59 -0
- package/docs/architecture/proposals/PROP-0037-workspace-write-boundary.md +63 -0
- package/docs/architecture/proposals/PROP-0038-annotate-open-shadow-roots.md +73 -0
- package/docs/architecture/proposals/PROP-0039-workspace-boundary-hardening.md +139 -0
- package/docs/architecture/proposals/PROP-0040-one-launch-path.md +87 -0
- package/docs/architecture/proposals/PROP-0041-bounded-work-slices.md +260 -0
- package/docs/architecture/proposals/PROP-0042-usage-and-provider-limits.md +127 -0
- package/docs/architecture/proposals/PROP-0043-read-only-plan-bash.md +74 -0
- package/docs/architecture/proposals/PROP-0044-work-slice-defaults.md +93 -0
- package/docs/architecture/proposals/PROP-0045-rename-checklist-to-todo.md +132 -0
- package/docs/architecture/proposals/PROP-0046-progress-aware-stall-guards.md +82 -0
- package/docs/architecture/proposals/PROP-0047-plugins-hub-separation.md +122 -0
- package/docs/architecture/proposals/PROP-0048-simple-annotate.md +85 -0
- package/docs/architecture/proposals/PROP-0049-context-attribution.md +415 -0
- package/docs/architecture/proposals/PROP-0050-run-stop-codes-and-refusals.md +30 -0
- package/docs/architecture/proposals/PROP-0051-unfinished-run-handoff.md +110 -0
- package/docs/architecture/proposals/PROP-0052-terminal-refine-and-variant-switch.md +111 -0
- package/docs/architecture/proposals/README.md +123 -0
- package/docs/decisions/ADR-0001-owned-terminal.md +10 -3
- package/docs/decisions/ADR-0003-shared-asynchronous-subagents.md +3 -1
- package/docs/decisions/ADR-0004-fullscreen-terminal-layout.md +3 -2
- package/docs/decisions/ADR-0006-opentui-only-terminal.md +47 -0
- package/docs/decisions/ADR-0007-reporting-section.md +33 -0
- package/docs/decisions/ADR-0008-flexible-reporting-guidance.md +41 -0
- package/docs/decisions/ADR-0009-xharness-command.md +39 -0
- package/docs/decisions/ADR-0010-lessons-in-the-wiki.md +31 -0
- package/docs/decisions/ADR-0011-foundation-and-variants.md +28 -0
- package/docs/decisions/ADR-0012-native-session-names.md +34 -0
- package/docs/decisions/ADR-0013-doctor.md +27 -0
- package/docs/decisions/ADR-0014-public-release-baseline.md +22 -0
- package/docs/decisions/ADR-0015-resource-browser.md +28 -0
- package/docs/decisions/ADR-0016-fullscreen-browser-tabs.md +31 -0
- package/docs/decisions/ADR-0017-one-capability-surface.md +34 -0
- package/docs/decisions/ADR-0018-builtin-feature-plugins.md +35 -0
- package/docs/decisions/ADR-0019-managed-git-worktrees.md +31 -0
- package/docs/decisions/ADR-0020-page-annotations.md +37 -0
- package/docs/decisions/ADR-0021-required-command-namespaces.md +40 -0
- package/docs/decisions/ADR-0022-plan-only-question-tools.md +34 -0
- package/docs/decisions/ADR-0023-contextual-side-question-runs.md +35 -0
- package/docs/decisions/ADR-0024-xagent-command.md +40 -0
- package/docs/decisions/ADR-0025-question-choice-sketches.md +49 -0
- package/docs/decisions/ADR-0026-contextual-question-wireframes.md +58 -0
- package/docs/decisions/ADR-0027-connected-sketch-display.md +62 -0
- package/docs/decisions/ADR-0028-xingular-agent-product-identity.md +56 -0
- package/docs/decisions/ADR-0029-normalized-question-wireframe-borders.md +33 -0
- package/docs/decisions/ADR-0030-agent-profiles.md +43 -0
- package/docs/decisions/ADR-0031-plugin-command-owner-namespaces.md +37 -0
- package/docs/decisions/ADR-0032-compaction-run-checkpoints.md +35 -0
- package/docs/decisions/ADR-0033-plan-mode-research-delegation.md +47 -0
- package/docs/decisions/ADR-0034-first-class-harness-terminal-commands.md +25 -0
- package/docs/decisions/ADR-0035-one-launch-path.md +40 -0
- package/docs/decisions/ADR-0036-workspace-write-operation-boundary.md +54 -0
- package/docs/decisions/ADR-0037-usage-ledger-and-provider-limits.md +44 -0
- package/docs/decisions/ADR-0038-plan-bash-os-read-only.md +29 -0
- package/docs/decisions/ADR-0039-progress-aware-stall-guards.md +43 -0
- package/docs/decisions/ADR-0040-architecture-change-workflow.md +31 -0
- package/docs/decisions/ADR-0041-plugins-hub-separation.md +41 -0
- package/docs/decisions/ADR-0042-windows-shell-without-sandbox.md +40 -0
- package/docs/decisions/ADR-0043-parents-continue-stopped-subagents.md +49 -0
- package/docs/decisions/ADR-0044-annotations-pending-or-sent.md +24 -0
- package/docs/decisions/ADR-0045-default-plugin-authoring-skill.md +9 -0
- package/docs/decisions/ADR-0046-hash-bound-plugin-proposals.md +20 -0
- package/docs/decisions/ADR-0047-links-open-with-the-os-handler.md +47 -0
- package/docs/decisions/ADR-0048-required-skills-from-a-message.md +42 -0
- package/docs/decisions/ADR-0050-approved-window-screenshots.md +19 -0
- package/docs/decisions/ADR-0051-terminal-decision-wait.md +10 -0
- package/docs/decisions/ADR-0052-per-profile-subagent-budgets.md +25 -0
- package/docs/decisions/ADR-0053-no-repeated-work-guard.md +45 -0
- package/docs/decisions/ADR-0054-terminal-reply-heartbeat-and-stall.md +52 -0
- package/docs/decisions/ADR-0055-plan-output-repair.md +51 -0
- package/docs/decisions/ADR-0056-remote-control.md +53 -0
- package/docs/decisions/ADR-0057-structured-plan-outcomes.md +39 -0
- package/docs/decisions/ADR-0058-ask-user-only-plan-clarification.md +36 -0
- package/docs/decisions/ADR-0059-run-diagnostic-evidence.md +35 -0
- package/docs/decisions/ADR-0060-approvals-are-controls.md +40 -0
- package/docs/decisions/ADR-0061-strict-plugin-command-namespaces.md +41 -0
- package/docs/decisions/ADR-0062-shared-account-state.md +67 -0
- package/docs/decisions/ADR-0063-unfinished-work-handoffs.md +34 -0
- package/docs/decisions/ADR-0064-account-model-fallback-on-resume.md +79 -0
- package/docs/decisions/ADR-0065-variant-switch-at-turn-boundaries.md +31 -0
- package/docs/decisions/ADR-0066-guided-refinement-from-turn-snapshots.md +37 -0
- package/docs/decisions/ADR-0067-cache-stable-compaction-checkpoint.md +54 -0
- package/docs/decisions/ADR-0068-scope-and-completion-report.md +60 -0
- package/docs/decisions/ADR-0069-stop-gate-and-finish.md +136 -0
- package/docs/decisions/ADR-0070-terminal-slice-continuation.md +49 -0
- package/docs/decisions/ADR-0071-completion-check.md +104 -0
- package/docs/decisions/ADR-0072-codex-prompts-and-goal.md +108 -0
- package/docs/decisions/ADR-0073-large-reporting-prompt.md +89 -0
- package/docs/decisions/ADR-0074-report-content-not-report-blocks.md +90 -0
- package/docs/decisions/ADR-0075-no-todo-gate.md +84 -0
- package/docs/decisions/ADR-0076-codex-final-answer-verbatim.md +98 -0
- package/docs/decisions/ADR-0077-plan-runs-may-conclude-no-plan-needed.md +120 -0
- package/docs/decisions/ADR-0078-child-aware-stall-watch.md +46 -0
- package/docs/decisions/ADR-0079-phase-led-reporting-guidance.md +72 -0
- package/docs/decisions/ADR-0080-fixed-width-question-sketch-canvas.md +50 -0
- package/docs/decisions/ADR-0081-no-work-slice-budget-by-default.md +36 -0
- package/docs/decisions/ADR-0082-connected-brave-browser.md +72 -0
- package/docs/decisions/ADR-0083-one-live-session-runtime.md +256 -0
- package/docs/doctor.md +95 -0
- package/docs/experiments/EXP-0001-terminal-input-latency/plan.md +81 -0
- package/docs/experiments/EXP-0001-terminal-input-latency/results.md +46 -0
- package/docs/experiments/EXP-0002-opentui-typing-latency/plan.md +70 -0
- package/docs/experiments/EXP-0002-opentui-typing-latency/results.md +92 -0
- package/docs/experiments/EXP-0003-performance-audit/data/session-runtime-replication.json +420 -0
- package/docs/experiments/EXP-0003-performance-audit/data/session-runtime.json +420 -0
- package/docs/experiments/EXP-0003-performance-audit/data/terminal-compact.json +376 -0
- package/docs/experiments/EXP-0003-performance-audit/data/terminal-history.json +422 -0
- package/docs/experiments/EXP-0003-performance-audit/data/terminal-question.json +95 -0
- package/docs/experiments/EXP-0003-performance-audit/data/terminal-wide.json +1036 -0
- package/docs/experiments/EXP-0003-performance-audit/plan.md +109 -0
- package/docs/experiments/EXP-0003-performance-audit/results.md +151 -0
- package/docs/features/README.md +46 -0
- package/docs/features/automations/README.md +41 -0
- package/docs/features/cores/README.md +39 -0
- package/docs/features/google-harness2/README.md +52 -0
- package/docs/features/integrations/README.md +40 -0
- package/docs/features/interfaces/README.md +29 -0
- package/docs/features/memory/README.md +28 -0
- package/docs/future-work.md +48 -0
- package/docs/handoff-2026-10-25-app-parity-and-solo-tabs.md +202 -0
- package/docs/parity.md +158 -0
- package/docs/releases/1.0.0.md +40 -0
- package/docs/releases/1.1.1.md +28 -0
- package/docs/releases/1.2.0.md +49 -0
- package/docs/releases/1.3.0.md +21 -0
- package/docs/releases/1.3.1-unstable.1.md +8 -0
- package/docs/releases/1.3.1-unstable.2.md +11 -0
- package/docs/releases/1.3.1-unstable.3.md +54 -0
- package/docs/releases/1.3.1-unstable.4.md +56 -0
- package/docs/releases/1.3.1-unstable.5.md +53 -0
- package/docs/releases/1.3.1-unstable.6.md +31 -0
- package/docs/releases/1.3.1-unstable.7.md +17 -0
- package/docs/releases/1.3.1-unstable.8.md +19 -0
- package/docs/releases/1.3.1-unstable.9.md +54 -0
- package/docs/releases/1.4.0-unstable.md +25 -0
- package/docs/releases/1.5.0-unstable.md +32 -0
- package/docs/releases/1.5.1-unstable.md +24 -0
- package/docs/releases/1.6.0-unstable.md +59 -0
- package/docs/releases/2.0.1-unstable.md +63 -0
- package/docs/releases/4.0.0.md +47 -0
- package/docs/releases/README.md +49 -0
- package/docs/study/00-index.md +112 -0
- package/docs/study/STUDY-0003-long-horizon-runs.md +210 -0
- package/docs/study/STUDY-0004-turn-end-controls.md +130 -0
- package/docs/study/STUDY-0005-skill-installation-guidance.md +146 -0
- package/docs/study/STUDY-0006-reporting-prompts.md +119 -0
- package/docs/study/STUDY-0007-claude-code-prompt.md +162 -0
- package/docs/study/STUDY-0008-browser-control.md +281 -0
- package/docs/study/STUDY-0009-claude-code-reporting.md +205 -0
- package/docs/study/arms/00-matrix.md +20 -0
- package/docs/study/arms/01-system-prompt.md +211 -0
- package/docs/study/arms/02-tools.md +79 -0
- package/docs/study/arms/03-subagents.md +90 -0
- package/docs/study/arms/04-skills.md +81 -0
- package/docs/study/arms/05-context-management.md +90 -0
- package/docs/study/arms/06-memory.md +90 -0
- package/docs/study/arms/07-governance.md +71 -0
- package/docs/study/arms/08-execution.md +69 -0
- package/docs/study/arms/09-observability.md +60 -0
- package/docs/study/arms/10-refinement.md +110 -0
- package/docs/study/autonomous-engineering-sources.md +277 -0
- package/docs/study/autonomy-sources.md +147 -0
- package/docs/study/btw-comparison.md +37 -0
- package/docs/study/feature-gap-review.md +42 -0
- package/docs/study/insights.md +123 -0
- package/docs/study/proactive-autonomy.md +408 -0
- package/docs/study/roadmap.md +72 -0
- package/docs/study/sources/claude-code.md +56 -0
- package/docs/study/sources/deepseek-harness.md +102 -0
- package/docs/study/sources/harness2.md +50 -0
- package/docs/study/sources/kimi-cli.md +42 -0
- package/docs/study/sources/omp.md +93 -0
- package/docs/study/sources/opencode.md +43 -0
- package/docs/study/sources/openhands.md +46 -0
- package/docs/study/sources/smolagents.md +40 -0
- package/docs/study/sources/swe-agent.md +34 -0
- package/docs/study/tui-resource-browser.md +78 -0
- package/docs/system-prompt-design.md +196 -0
- package/docs/terminal-tui.md +887 -109
- package/package.json +46 -13
- package/src/accounts/accounts.test.ts +0 -419
- package/src/accounts/accounts.ts +0 -760
- package/src/accounts/env.test.ts +0 -95
- package/src/accounts/env.ts +0 -338
- package/src/accounts/secrets.ts +0 -50
- package/src/accounts/store.ts +0 -338
- package/src/capabilities/api.ts +0 -75
- package/src/capabilities/runSnapshot.ts +0 -59
- package/src/capabilities/types.ts +0 -34
- package/src/cli.ts +0 -118
- package/src/core/bus.test.ts +0 -22
- package/src/core/bus.ts +0 -49
- package/src/core/changes.ts +0 -33
- package/src/core/env.ts +0 -27
- package/src/core/errors.ts +0 -32
- package/src/core/frontmatter.ts +0 -47
- package/src/core/fs.test.ts +0 -38
- package/src/core/fs.ts +0 -92
- package/src/core/index.ts +0 -193
- package/src/core/path.test.ts +0 -14
- package/src/core/path.ts +0 -79
- package/src/core/projects.ts +0 -90
- package/src/core/text.ts +0 -39
- package/src/harness.ts +0 -322
- package/src/hub/catalog.json +0 -123
- package/src/hub/cli.ts +0 -59
- package/src/hub/hub.test.ts +0 -205
- package/src/hub/hub.ts +0 -256
- package/src/hub/schema.ts +0 -81
- package/src/index.ts +0 -80
- package/src/mcp/connections.ts +0 -641
- package/src/mcp/manager.ts +0 -130
- package/src/mcp/oauth.ts +0 -195
- package/src/mcp/scopeMigration.test.ts +0 -79
- package/src/mcp/scopeMigration.ts +0 -204
- package/src/mcp/service.test.ts +0 -422
- package/src/mcp/service.ts +0 -560
- package/src/mcp/types.ts +0 -118
- package/src/memory/api.test.ts +0 -82
- package/src/memory/api.ts +0 -303
- package/src/memory/blocks.test.ts +0 -78
- package/src/memory/blocks.ts +0 -408
- package/src/memory/caller.ts +0 -69
- package/src/memory/curation.test.ts +0 -206
- package/src/memory/curation.ts +0 -64
- package/src/memory/dispatch.ts +0 -64
- package/src/memory/facts.test.ts +0 -41
- package/src/memory/facts.ts +0 -248
- package/src/memory/graph.ts +0 -103
- package/src/memory/health.test.ts +0 -130
- package/src/memory/health.ts +0 -74
- package/src/memory/maintainer.ts +0 -272
- package/src/memory/maintenance.test.ts +0 -192
- package/src/memory/maintenance.ts +0 -679
- package/src/memory/migrate.ts +0 -79
- package/src/memory/operations.ts +0 -150
- package/src/memory/proposals.test.ts +0 -168
- package/src/memory/proposals.ts +0 -584
- package/src/memory/recall.test.ts +0 -115
- package/src/memory/recall.ts +0 -279
- package/src/memory/references.ts +0 -77
- package/src/memory/runContext.ts +0 -93
- package/src/memory/secrets.ts +0 -6
- package/src/memory/store.test.ts +0 -66
- package/src/memory/store.ts +0 -385
- package/src/memory/trajectory.test.ts +0 -178
- package/src/memory/trajectory.ts +0 -220
- package/src/memory/wiki.test.ts +0 -47
- package/src/memory/wiki.ts +0 -423
- package/src/memory/wikiIndex.test.ts +0 -88
- package/src/memory/wikiIndex.ts +0 -117
- package/src/plugins/api.ts +0 -181
- package/src/plugins/attachments.test.ts +0 -84
- package/src/plugins/attachments.ts +0 -141
- package/src/plugins/builtin.ts +0 -84
- package/src/plugins/catalogue.test.ts +0 -254
- package/src/plugins/catalogue.ts +0 -251
- package/src/plugins/cli.ts +0 -184
- package/src/plugins/discover.ts +0 -151
- package/src/plugins/firstParty.test.ts +0 -143
- package/src/plugins/firstParty.ts +0 -129
- package/src/plugins/hooks.test.ts +0 -250
- package/src/plugins/hooks.ts +0 -239
- package/src/plugins/identity.ts +0 -37
- package/src/plugins/install.test.ts +0 -107
- package/src/plugins/install.ts +0 -106
- package/src/plugins/inventory.ts +0 -123
- package/src/plugins/manifest.ts +0 -76
- package/src/plugins/plugins.test.ts +0 -205
- package/src/plugins/plugins.ts +0 -189
- package/src/plugins/proposal.ts +0 -121
- package/src/plugins/runtime.test.ts +0 -40
- package/src/plugins/runtime.ts +0 -82
- package/src/plugins/trust.ts +0 -142
- package/src/plugins/types.ts +0 -149
- package/src/prompt/compile.test.ts +0 -261
- package/src/prompt/compile.ts +0 -732
- package/src/server/methods.ts +0 -355
- package/src/server/remote.ts +0 -77
- package/src/server/rpc.ts +0 -116
- package/src/server/serve.ts +0 -28
- package/src/server/server.test.ts +0 -193
- package/src/sessions/approvals.test.ts +0 -49
- package/src/sessions/approvals.ts +0 -140
- package/src/sessions/contracts.ts +0 -336
- package/src/sessions/conversation.test.ts +0 -233
- package/src/sessions/extensionSession.test.ts +0 -74
- package/src/sessions/extensionUi.test.ts +0 -65
- package/src/sessions/extensionUi.ts +0 -102
- package/src/sessions/history.ts +0 -51
- package/src/sessions/lineageJoin.ts +0 -75
- package/src/sessions/policy.ts +0 -36
- package/src/sessions/pricing.ts +0 -60
- package/src/sessions/questionBatches.test.ts +0 -110
- package/src/sessions/reasoningSummaries.ts +0 -59
- package/src/sessions/registry.ts +0 -412
- package/src/sessions/runIndex.ts +0 -99
- package/src/sessions/runStore.test.ts +0 -152
- package/src/sessions/runStore.ts +0 -346
- package/src/sessions/runner.ts +0 -610
- package/src/sessions/runtimeResources.test.ts +0 -61
- package/src/sessions/sessions.test.ts +0 -588
- package/src/sessions/sessions.ts +0 -331
- package/src/sessions/subagentService.test.ts +0 -159
- package/src/sessions/subagentService.ts +0 -236
- package/src/sessions/subagents.ts +0 -97
- package/src/skills/registry.test.ts +0 -104
- package/src/skills/registry.ts +0 -413
- package/src/terminal/accountsMenu.test.ts +0 -225
- package/src/terminal/accountsMenu.ts +0 -382
- package/src/terminal/cli.ts +0 -149
- package/src/terminal/client.ts +0 -74
- package/src/terminal/control.test.ts +0 -23
- package/src/terminal/control.ts +0 -23
- package/src/terminal/controller.ts +0 -354
- package/src/terminal/hubMenu.ts +0 -24
- package/src/terminal/launch.test.ts +0 -25
- package/src/terminal/launch.ts +0 -48
- package/src/terminal/piExtension.lifecycle.test.ts +0 -55
- package/src/terminal/piExtension.ts +0 -295
- package/src/terminal/pluginControl.test.ts +0 -146
- package/src/terminal/pluginMenu.ts +0 -112
- package/src/terminal/socket.test.ts +0 -94
- package/src/terminal/socket.ts +0 -256
- package/src/terminal/standalone.test.ts +0 -167
- package/src/terminal/standalone.ts +0 -165
- package/src/terminal/terminal.test.ts +0 -534
- package/src/terminal/terminals.ts +0 -661
- package/src/terminal/trajectory.test.ts +0 -66
- package/src/terminal/trajectory.ts +0 -44
- package/src/terminal/tui/application.test.ts +0 -290
- package/src/terminal/tui/application.ts +0 -653
- package/src/terminal/tui/commands.test.ts +0 -278
- package/src/terminal/tui/commands.ts +0 -443
- package/src/terminal/tui/dialogs.ts +0 -301
- package/src/terminal/tui/editor.test.ts +0 -113
- package/src/terminal/tui/editor.ts +0 -109
- package/src/terminal/tui/keybindings.test.ts +0 -30
- package/src/terminal/tui/keybindings.ts +0 -59
- package/src/terminal/tui/piAdapter.ts +0 -62
- package/src/terminal/tui/planMode.test.ts +0 -10
- package/src/terminal/tui/planMode.ts +0 -12
- package/src/terminal/tui/presentation.test.ts +0 -79
- package/src/terminal/tui/questions.test.ts +0 -41
- package/src/terminal/tui/questions.ts +0 -47
- package/src/terminal/tui/runtime.socket.test.ts +0 -178
- package/src/terminal/tui/runtime.test.ts +0 -225
- package/src/terminal/tui/runtime.ts +0 -403
- package/src/terminal/tui/screen.test.ts +0 -143
- package/src/terminal/tui/screen.ts +0 -121
- package/src/terminal/tui/sessionUi.ts +0 -24
- package/src/terminal/tui/settings.test.ts +0 -150
- package/src/terminal/tui/settings.ts +0 -188
- package/src/terminal/tui/skillInvocation.test.ts +0 -71
- package/src/terminal/tui/skillInvocation.ts +0 -51
- package/src/terminal/tui/status.test.ts +0 -48
- package/src/terminal/tui/status.ts +0 -82
- package/src/terminal/tui/theme.ts +0 -185
- package/src/terminal/tui/tools.test.ts +0 -145
- package/src/terminal/tui/tools.ts +0 -142
- package/src/terminal/tui/trajectoryPanel.test.ts +0 -99
- package/src/terminal/tui/trajectoryPanel.ts +0 -226
- package/src/terminal/tui/transcript.test.ts +0 -39
- package/src/terminal/tui/transcript.ts +0 -135
- package/src/terminal/tui/ui.test.ts +0 -313
- package/src/terminal/tui/ui.ts +0 -166
- package/src/terminal/tui/welcome.ts +0 -102
- package/src/terminal/tui/workingStatus.test.ts +0 -44
- package/src/terminal/tui/workingStatus.ts +0 -238
- package/src/tools/askUser.test.ts +0 -69
- package/src/tools/askUser.ts +0 -59
- package/src/tools/definitions.ts +0 -228
- package/src/tools/maintenance.ts +0 -29
- package/src/tools/memoryTools.ts +0 -22
- package/src/tools/pluginPropose.ts +0 -41
- package/src/tools/registryWrite.test.ts +0 -101
- package/src/tools/registryWrite.ts +0 -182
- package/src/tools/spawnSubagent.ts +0 -47
- package/src/tools/types.ts +0 -41
- package/src/web/safeRequest.ts +0 -171
- package/src/web/text.ts +0 -53
- package/src/web/tools.ts +0 -134
- package/src/web/web.test.ts +0 -141
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# ADR-0016 — Full-screen browser with persistent resource tabs
|
|
2
|
+
|
|
3
|
+
Status: Accepted (user requested implementation of the agreed plan, 2026-10-23).
|
|
4
|
+
Related: [PROP-0014](../architecture/proposals/PROP-0014-fullscreen-browser-tabs.md),
|
|
5
|
+
[ADR-0015](ADR-0015-resource-browser.md).
|
|
6
|
+
|
|
7
|
+
## Context
|
|
8
|
+
|
|
9
|
+
The unified browser's centered layout and nested section/detail navigation leave little space
|
|
10
|
+
for inventory and inspection. The user wants one full-page workspace with resource-section tabs.
|
|
11
|
+
|
|
12
|
+
## Decision
|
|
13
|
+
|
|
14
|
+
Resource-browser commands use a full-screen surface with persistent section tabs. Wide terminals
|
|
15
|
+
show inventory beside an inspector containing metadata, actions and content. Compact terminals
|
|
16
|
+
show inline detail views under the same tab strip. Tab moves focus, arrows change a focused tab,
|
|
17
|
+
and mouse tab selection targets the section directly.
|
|
18
|
+
|
|
19
|
+
TerminalPage declares its presentation and optionally supports direct tab selection. Centered
|
|
20
|
+
presentation remains the default for other pages. Resource services keep their existing ownership.
|
|
21
|
+
|
|
22
|
+
## Alternatives
|
|
23
|
+
|
|
24
|
+
Keeping the centered panel restricts working space. Replacing the list with details at all widths
|
|
25
|
+
loses inventory context. Variant c1–c8 tabs do not match the selected resource-navigation intent.
|
|
26
|
+
|
|
27
|
+
## Consequences
|
|
28
|
+
|
|
29
|
+
The browser owns responsive inventory/inspector focus and preserves section search and selection.
|
|
30
|
+
Small terminals use compact tab navigation. There are no storage or protocol changes.
|
|
31
|
+
Verification belongs in the terminal guide and its automated page and PTY checks.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# ADR-0017 — One capability surface for the terminal and every host
|
|
2
|
+
|
|
3
|
+
Status: Accepted (owner approved the parity plan, 2026-10-23).
|
|
4
|
+
Related: [PROP-0015](../architecture/proposals/PROP-0015-one-capability-surface.md),
|
|
5
|
+
[PROP-0016](../architecture/proposals/PROP-0016-managed-worktrees.md),
|
|
6
|
+
[PROP-0017](../architecture/proposals/PROP-0017-page-annotations.md),
|
|
7
|
+
[14 Surfaces and parity](../architecture/14-surfaces-and-parity.md).
|
|
8
|
+
|
|
9
|
+
## Context
|
|
10
|
+
|
|
11
|
+
Capabilities grew in the App alone, so the Harness terminal could not do what the App did, and
|
|
12
|
+
ownership between the repositories was unclear. The owner wants the App to be a richer
|
|
13
|
+
presentation of the Harness, with the same capabilities as the terminal, and room for future
|
|
14
|
+
host-only surfaces such as interactive agent output.
|
|
15
|
+
|
|
16
|
+
## Decision
|
|
17
|
+
|
|
18
|
+
Every user capability is a Harness capability with a terminal surface (INV-PAR-1, INV-PAR-2).
|
|
19
|
+
Capabilities that need an operating-system object only a host has define a generic contract and a
|
|
20
|
+
terminal fallback (INV-PAR-3). Host-only surfaces own no capability and are registered by the host
|
|
21
|
+
with an owner decision (INV-PAR-4). Managed worktrees and page annotations move into the Harness
|
|
22
|
+
under PROP-0016 and PROP-0017. Orchestration across agents (organizations, routed chats, group
|
|
23
|
+
chats, delegated work queues) is not a Harness capability; the App removes it and keeps it only in
|
|
24
|
+
an archived version.
|
|
25
|
+
|
|
26
|
+
## Alternatives
|
|
27
|
+
|
|
28
|
+
Keeping the App as the full product leaves two products. Identical front ends cannot accommodate
|
|
29
|
+
presentation a terminal cannot show. Doing nothing lets the gap grow.
|
|
30
|
+
|
|
31
|
+
## Consequences
|
|
32
|
+
|
|
33
|
+
New user features start in the Harness with a terminal surface. The register `docs/parity.md`
|
|
34
|
+
tracks gaps until both surfaces pass. Hosts keep native bridges, windows and presentation.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# ADR-0018 — Built-in feature modules and namespaced commands
|
|
2
|
+
|
|
3
|
+
Status: Accepted (owner requested implementation of the plan, 2026-10-24).
|
|
4
|
+
Related: [PROP-0020](../architecture/proposals/PROP-0020-builtin-feature-plugins.md),
|
|
5
|
+
[06 Plugins and capabilities](../architecture/06-plugins-and-capabilities.md),
|
|
6
|
+
[11 Terminal](../architecture/11-terminal.md).
|
|
7
|
+
|
|
8
|
+
## Context
|
|
9
|
+
|
|
10
|
+
First-party plugin descriptors existed, but runtime assembly, server handlers and TUI command
|
|
11
|
+
dispatch were centralized in separate files. Plugin commands shared the same unprefixed namespace
|
|
12
|
+
as core commands. Duplicate Pi extension commands were silently assigned suffixes by the SDK.
|
|
13
|
+
|
|
14
|
+
## Decision
|
|
15
|
+
|
|
16
|
+
Use a typed internal registry for built-in plugin modules. Modules own their existing plugin
|
|
17
|
+
descriptor and may supply world parts, public method handlers, terminal command metadata and
|
|
18
|
+
lifecycle. Foundation keeps plugin loading and trust, capability attachment and gating, the TUI
|
|
19
|
+
framework, and the generic isolated browser engine. Plugin commands use `/plugin:<command>`;
|
|
20
|
+
duplicate names are rejected with owner diagnostics. The ownership taxonomy is documentation only.
|
|
21
|
+
|
|
22
|
+
Retire old unprefixed forms for doctor, worktree, trajectory, subagents, notes and annotate at the
|
|
23
|
+
cutover. Public server methods and stored data keep their current names and shapes.
|
|
24
|
+
|
|
25
|
+
## Alternatives
|
|
26
|
+
|
|
27
|
+
Keeping direct central dispatch preserves the current drift between plugin descriptions and
|
|
28
|
+
runtime ownership. Exposing categories in public metadata adds a schema without a runtime need.
|
|
29
|
+
Letting the SDK suffix duplicate commands makes their identity depend on extension load order.
|
|
30
|
+
|
|
31
|
+
## Consequences
|
|
32
|
+
|
|
33
|
+
New Harness-managed features register through the built-in plugin registry. The terminal owns the
|
|
34
|
+
page adapter and UI; feature plugins contribute namespaced command metadata. Embedding hosts see
|
|
35
|
+
the existing method table and capability contracts.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# ADR-0019 — Managed Git worktrees are a Harness capability
|
|
2
|
+
|
|
3
|
+
Status: Accepted (owner approved the parity plan, 2026-10-23).
|
|
4
|
+
Related: [PROP-0016](../architecture/proposals/PROP-0016-managed-worktrees.md),
|
|
5
|
+
[02 Sessions and runs](../architecture/02-sessions-and-runs.md),
|
|
6
|
+
[14 Surfaces and parity](../architecture/14-surfaces-and-parity.md).
|
|
7
|
+
|
|
8
|
+
## Context
|
|
9
|
+
|
|
10
|
+
Worktrees isolate source changes, but an App-only implementation leaves terminal users without
|
|
11
|
+
that capability and lets each host invent its own lifecycle and safety rules.
|
|
12
|
+
|
|
13
|
+
## Decision
|
|
14
|
+
|
|
15
|
+
The Harness owns the worktree registry, lifecycle, session leases, and server methods. Managed
|
|
16
|
+
worktrees are disposable detached checkouts in device-local state; permanent worktrees are retained.
|
|
17
|
+
Creating a worktree disables repository filters, carries source changes only under the defined
|
|
18
|
+
copy/apply rules, and runs setup scripts only after exact-text trust. Leases prevent concurrent
|
|
19
|
+
removal; removal snapshots recoverable work before deleting a checkout. Hosts call `worktrees.*`
|
|
20
|
+
rather than managing these records independently, and the terminal provides the reference surface.
|
|
21
|
+
|
|
22
|
+
## Alternatives
|
|
23
|
+
|
|
24
|
+
Keeping the feature in the App breaks terminal/host parity. Putting large worktree checkouts inside
|
|
25
|
+
source repositories pollutes them and makes the data visible to tools and editors. Platform-specific
|
|
26
|
+
copy-on-write clones were deferred in favor of Git's portable linked-worktree behavior.
|
|
27
|
+
|
|
28
|
+
## Consequences
|
|
29
|
+
|
|
30
|
+
`worktreeId` identifies a Harness-managed worktree in a run. Worktree state is device-local under
|
|
31
|
+
the Harness state directory. Hosts can present richer controls but do not own lifecycle or safety.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# ADR-0020 — Page annotations and delivery are Harness-owned
|
|
2
|
+
|
|
3
|
+
Status: Accepted (owner approved the parity plan and capture workflow, 2026-10-23).
|
|
4
|
+
Related: [PROP-0017](../architecture/proposals/PROP-0017-page-annotations.md),
|
|
5
|
+
[PROP-0018](../architecture/proposals/PROP-0018-annotation-queue-and-app-targets.md),
|
|
6
|
+
[07 Tools and the gate](../architecture/07-tools-and-the-gate.md),
|
|
7
|
+
[13 World tools](../architecture/13-world-tools.md),
|
|
8
|
+
[14 Surfaces and parity](../architecture/14-surfaces-and-parity.md).
|
|
9
|
+
|
|
10
|
+
## Context
|
|
11
|
+
|
|
12
|
+
Page annotations and the agent's ability to read or act on them must work in both the standalone
|
|
13
|
+
terminal and embedding hosts. Keeping the note store and tools inside one host would split state and
|
|
14
|
+
behavior; trusting arbitrary page-script output could let a page initiate unintended work.
|
|
15
|
+
|
|
16
|
+
## Decision
|
|
17
|
+
|
|
18
|
+
The Harness owns the canonical note store, sharing grants, page-note tools, queue and delivery
|
|
19
|
+
lifecycle, and generic capture contract. The terminal captures in its visible isolated browser; a
|
|
20
|
+
host supplies its own web-view or application-window adapter through the same contract. Capture
|
|
21
|
+
results are trusted only when they come from an isolated script world or the host's own UI; otherwise
|
|
22
|
+
sending requires person confirmation. Page-derived content remains untrusted in the delivered
|
|
23
|
+
instruction. A person controls sharing, queueing, confirmation, and resolution; the agent may mark a
|
|
24
|
+
shared note fixed but cannot resolve it or change grants.
|
|
25
|
+
|
|
26
|
+
## Alternatives
|
|
27
|
+
|
|
28
|
+
A terminal-only capture path would not support host web views. Host-owned stores and tools would
|
|
29
|
+
create different behavior and duplicated data. Trusting page content or automatically sending
|
|
30
|
+
unisolated results would grant a page authority it must not have.
|
|
31
|
+
|
|
32
|
+
## Consequences
|
|
33
|
+
|
|
34
|
+
Notes and grants have one Harness-owned representation and work through the terminal or a host.
|
|
35
|
+
Hosts retain ownership of native windows and browser UI while using Harness methods for notes,
|
|
36
|
+
sharing, and delivery. The server contract can represent capture targets without naming an
|
|
37
|
+
application.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# ADR-0021 — Required built-in commands use the bare namespace
|
|
2
|
+
|
|
3
|
+
Status: Superseded by [ADR-0031](ADR-0031-plugin-command-owner-namespaces.md).
|
|
4
|
+
Supersedes: The command-namespace portion of [ADR-0018](ADR-0018-builtin-feature-plugins.md).
|
|
5
|
+
Related: [PROP-0021](../architecture/proposals/PROP-0021-command-namespaces-and-duplicates.md),
|
|
6
|
+
[11 Terminal](../architecture/11-terminal.md),
|
|
7
|
+
[14 Surfaces and parity](../architecture/14-surfaces-and-parity.md).
|
|
8
|
+
|
|
9
|
+
## Context
|
|
10
|
+
|
|
11
|
+
The terminal has a set of required built-in features whose pages are part of normal Harness use.
|
|
12
|
+
Putting their commands behind `/plugin:` made them less direct to use. Separately, built-in and
|
|
13
|
+
loaded extension commands could both appear when their names matched a core command, alias or
|
|
14
|
+
prompt. Duplicate bridge registrations also exposed `/plugin:accounts`, `/plugin:hub`, and
|
|
15
|
+
`/plugin:plugins` beside their existing core commands.
|
|
16
|
+
|
|
17
|
+
## Decision
|
|
18
|
+
|
|
19
|
+
Commands owned by a required built-in plugin use the bare terminal namespace: `/subagents`,
|
|
20
|
+
`/trajectory`, `/doctor`, and `/worktree`. Optional built-in plugin commands, currently
|
|
21
|
+
`/plugin:notes` and `/plugin:annotate`, and Pi extension commands remain under `/plugin:<command>`.
|
|
22
|
+
Core commands `/accounts`, `/hub`, `/plugins`, and `/mcp` remain unprefixed.
|
|
23
|
+
|
|
24
|
+
An existing bare core command, alias, required built-in command, or loaded prompt reserves its
|
|
25
|
+
name. A colliding `/plugin:<name>` is absent from completion/help and direct invocation explains
|
|
26
|
+
which bare command to use. Duplicate extension registrations retain owner-path diagnostics. Remove
|
|
27
|
+
the bridge registrations that duplicate `/accounts`, `/hub`, and `/plugins`.
|
|
28
|
+
|
|
29
|
+
## Alternatives
|
|
30
|
+
|
|
31
|
+
Keeping all built-in commands namespaced preserves duplicate entries and makes required features
|
|
32
|
+
less direct to invoke. Unprefixing every built-in plugin command would also change the optional,
|
|
33
|
+
switchable Annotations commands. Suppressing only a fixed list of observed duplicate names would
|
|
34
|
+
allow the same problem to recur as plugins or prompts are added.
|
|
35
|
+
|
|
36
|
+
## Consequences
|
|
37
|
+
|
|
38
|
+
Required built-in command metadata determines the namespace used by terminal completion, help and
|
|
39
|
+
dispatch. A third-party extension whose command collides with a bare command or prompt must use a
|
|
40
|
+
different command name to expose both. There is no protocol or storage change.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# ADR-0022 — Question tools are available only in attended plan runs
|
|
2
|
+
|
|
3
|
+
Status: Accepted (owner requested implementation of PROP-0022, 2026-10-24).
|
|
4
|
+
Related: [PROP-0022](../architecture/proposals/PROP-0022-plan-only-questions.md),
|
|
5
|
+
[02 Sessions and runs](../architecture/02-sessions-and-runs.md),
|
|
6
|
+
[11 Terminal](../architecture/11-terminal.md),
|
|
7
|
+
[14 Surfaces and parity](../architecture/14-surfaces-and-parity.md).
|
|
8
|
+
|
|
9
|
+
## Context
|
|
10
|
+
|
|
11
|
+
Ordinary chat exposed the Harness-owned `ask_user` tool, while the terminal also activated its
|
|
12
|
+
single-question `ask_user_question` tool in normal mode. Hiding the required `ask-user` plugin would
|
|
13
|
+
also remove it from plan mode and contradict its required-plugin contract. The callable tool set
|
|
14
|
+
must instead be resolved by run mode.
|
|
15
|
+
|
|
16
|
+
## Decision
|
|
17
|
+
|
|
18
|
+
Newly resolved normal runs omit `ask_user` before their capability set is frozen, regardless of a
|
|
19
|
+
wider requested tool list. An attended plan run may receive it, subject to the caller's narrower
|
|
20
|
+
capabilities. Automatic, probe, improver and reflection runs do not receive it. In the terminal,
|
|
21
|
+
normal mode deactivates both question tools; a plan request temporarily enables the registered
|
|
22
|
+
question tools and restores the previous active set on success, error or interruption.
|
|
23
|
+
|
|
24
|
+
The required `ask-user` built-in remains attached and has no user-facing switch. Approval prompts
|
|
25
|
+
and ordinary assistant text are unaffected. A continuation preserves the earlier frozen capability
|
|
26
|
+
set; if that snapshot includes `ask_user`, an automatic or refinement-triggered continuation is
|
|
27
|
+
rejected with `continuation_mismatch` rather than silently narrowing the snapshot or allowing an
|
|
28
|
+
unattended question.
|
|
29
|
+
|
|
30
|
+
## Consequences
|
|
31
|
+
|
|
32
|
+
Normal and plan requests can have different provider tool schemas, so no cache-preservation claim is
|
|
33
|
+
made; measure any provider-cache effect only under `INV-PRM-8`. Existing records and attachments need
|
|
34
|
+
no migration. The App relies on the Harness-resolved tool set and adds no separate preference.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# ADR-0023: Contextual side questions are Harness runs
|
|
2
|
+
|
|
3
|
+
**Status:** Accepted
|
|
4
|
+
**Date:** 2026-10-24
|
|
5
|
+
**Proposal:** [PROP-0019](../architecture/proposals/PROP-0019-contextual-side-questions.md)
|
|
6
|
+
|
|
7
|
+
## Context
|
|
8
|
+
|
|
9
|
+
The terminal and App had separate `/btw` implementations. The terminal used a short, in-memory
|
|
10
|
+
Pi session; the App used a bounded, tracked run. Their answers could not consistently use the main
|
|
11
|
+
run's instructions or public tool evidence, and they had different lifecycle and observability.
|
|
12
|
+
|
|
13
|
+
## Decision
|
|
14
|
+
|
|
15
|
+
The Harness owns one side-question service. It creates an independent run with no variant and an
|
|
16
|
+
empty frozen capability set. The service uses a redacted projection of the main run's effective
|
|
17
|
+
prompt, visible transcript, and persisted public events, including tool inputs and results. It
|
|
18
|
+
excludes hidden reasoning and attachment bytes. Context is bounded, credential-like material is
|
|
19
|
+
redacted, and transcript/tool content cannot add permissions. Terminal and host surfaces use the
|
|
20
|
+
same service and ordinary run-event contract.
|
|
21
|
+
|
|
22
|
+
## Consequences
|
|
23
|
+
|
|
24
|
+
Side answers are separately recorded and can be inspected with ordinary run history and usage.
|
|
25
|
+
They never enter or steer the parent conversation. No persistent side-thread store or migration is
|
|
26
|
+
needed. The terminal presents a temporary scrollable dock; a host keeps its own presentation. The
|
|
27
|
+
App's read-only native file tools use the operating system's read boundary across absolute and home
|
|
28
|
+
paths; the App's host gate continues to protect edits, writes and shell commands.
|
|
29
|
+
|
|
30
|
+
## Rejected options
|
|
31
|
+
|
|
32
|
+
- Keeping a separate in-memory terminal session would preserve different answers and observability.
|
|
33
|
+
- Sending hidden reasoning, images or the main run's tools would expose more than a side answer
|
|
34
|
+
needs and could let it act independently.
|
|
35
|
+
- Persisting side threads would require retention, deletion and synchronization rules.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: ADR-0024
|
|
3
|
+
title: Publish the Harness CLI as xagent
|
|
4
|
+
status: accepted
|
|
5
|
+
created: 2026-10-24
|
|
6
|
+
updated: 2026-10-24
|
|
7
|
+
related: [PROP-0023]
|
|
8
|
+
supersedes: ADR-0009
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# ADR-0024 — Publish the Harness CLI as xagent
|
|
12
|
+
|
|
13
|
+
## Context and decision drivers
|
|
14
|
+
|
|
15
|
+
The Harness CLI's no-subcommand path starts the standalone OpenTUI terminal. The current executable
|
|
16
|
+
name, `xharness`, is being replaced by the requested shorter product command, `xagent`. The
|
|
17
|
+
published command is part of the package's public interface.
|
|
18
|
+
|
|
19
|
+
## Decision
|
|
20
|
+
|
|
21
|
+
Publish `@xingular/harness` with one executable, `xagent`, mapped to `dist/cli.js`. Invoking
|
|
22
|
+
`xagent` without arguments starts the existing OpenTUI terminal. Do not retain `xharness` as a
|
|
23
|
+
compatibility alias. Keep the package name, `terminal` alias, host subcommands, data/state directory
|
|
24
|
+
names, and `XINGULAR_HARNESS_*` environment variables unchanged.
|
|
25
|
+
|
|
26
|
+
This supersedes ADR-0009's executable-name decision and the `xharness` command-name portion of
|
|
27
|
+
ADR-0014. Other release-baseline decisions remain unchanged.
|
|
28
|
+
|
|
29
|
+
## Consequences
|
|
30
|
+
|
|
31
|
+
- Users and scripts that invoke `xharness` must migrate to `xagent`.
|
|
32
|
+
- No account, data, or state migration is required.
|
|
33
|
+
- If `xharness` has already been released, replacing it requires a new major version; this change is
|
|
34
|
+
intended for the unpublished 4.0.0 candidate.
|
|
35
|
+
|
|
36
|
+
## Implementation and verification
|
|
37
|
+
|
|
38
|
+
- The `bin` mapping and CLI help are tested by [`src/cli.test.ts`](../../src/cli.test.ts).
|
|
39
|
+
- The implementation and migration notes are tracked in
|
|
40
|
+
[PROP-0023](../architecture/proposals/PROP-0023-xagent-cli-name.md).
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: ADR-0025
|
|
3
|
+
title: Store bounded ASCII sketches with question requests
|
|
4
|
+
status: accepted
|
|
5
|
+
created: 2026-10-24
|
|
6
|
+
updated: 2026-10-24
|
|
7
|
+
related: [PROP-0024, INV-RUN-3, INV-PAR-1, INV-PAR-2]
|
|
8
|
+
supersedes: null
|
|
9
|
+
superseded_by: null
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# ADR-0025 — Store bounded ASCII sketches with question requests
|
|
13
|
+
|
|
14
|
+
**Accepted by the product owner on 2026-10-24.**
|
|
15
|
+
|
|
16
|
+
## Context
|
|
17
|
+
|
|
18
|
+
Choice labels and descriptions do not always communicate a layout or other compact visual
|
|
19
|
+
comparison. Both question surfaces need the same safely bounded representation, and the validated
|
|
20
|
+
`question.requested` event is the existing shared contract through which they receive choice data.
|
|
21
|
+
|
|
22
|
+
## Decision
|
|
23
|
+
|
|
24
|
+
- A question may set `uiSketch: true` to enable sketch previews. Each offered choice must then
|
|
25
|
+
provide its own `sketch`; without the flag, a choice must not provide a sketch.
|
|
26
|
+
- Sketches are literal text of 1–8 LF-separated lines, at most 32 printable ASCII characters per
|
|
27
|
+
line, with at least one visible character. The complete value is at most 263 bytes. Tabs, CR,
|
|
28
|
+
control characters, escape sequences and non-ASCII text are invalid. Valid text, including
|
|
29
|
+
interior blank lines and trailing spaces, is preserved exactly.
|
|
30
|
+
- Harness validates the flag/choice relationship and text bounds before emitting a request. The
|
|
31
|
+
persisted `question.requested` event may carry the metadata; `question.answered` and
|
|
32
|
+
`QuestionAnswer` remain unchanged. Older request events remain valid.
|
|
33
|
+
- The terminal and hosts render one shared monospace preview below the choices, following the
|
|
34
|
+
hovered or focused choice. They render the sketch as text, not Markdown, ANSI or executable rich
|
|
35
|
+
output.
|
|
36
|
+
|
|
37
|
+
## Consequences
|
|
38
|
+
|
|
39
|
+
- The existing event schema and persistence path carry the preview; no event kind, image type,
|
|
40
|
+
storage file or protocol version is added. No data migration is needed.
|
|
41
|
+
- Hosts mirror the optional schema fields. Surface parity requires the terminal and each host to
|
|
42
|
+
present the same choice sketches without changing answer semantics.
|
|
43
|
+
- The strict ASCII and dimension limits keep the diagram readable in a 40-column terminal and
|
|
44
|
+
prevent markup, terminal controls and unbounded content from entering the question surface.
|
|
45
|
+
|
|
46
|
+
## Implementation and verification
|
|
47
|
+
|
|
48
|
+
Implemented under [PROP-0024](../architecture/proposals/PROP-0024-question-sketch-previews.md).
|
|
49
|
+
Verification evidence is recorded with that proposal and in the App's implementation-stage log.
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: ADR-0026
|
|
3
|
+
title: Align question columns and preserve contextual ASCII wireframes
|
|
4
|
+
status: accepted
|
|
5
|
+
created: 2026-10-24
|
|
6
|
+
updated: 2026-10-24
|
|
7
|
+
related: [PROP-0025, ADR-0025, INV-RUN-3, INV-PAR-1, INV-PAR-2]
|
|
8
|
+
supersedes: null
|
|
9
|
+
superseded_by: null
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# ADR-0026 — Align question columns and preserve contextual ASCII wireframes
|
|
13
|
+
|
|
14
|
+
**Accepted by the product owner on 2026-10-24** through the plan “Fix TUI question columns and sketch previews”. This is foundation work.
|
|
15
|
+
|
|
16
|
+
## Context
|
|
17
|
+
|
|
18
|
+
Content-dependent choice rows do not align label and description boundaries. The original 32×8
|
|
19
|
+
sketch limit cannot express contextual UI panels, and a caption plus left rule adds redundant
|
|
20
|
+
preview chrome. ADR-0025 records the original sketch contract and its historical evidence; this
|
|
21
|
+
decision amends its bounds and presentation without replacing the optional sketch/answer model.
|
|
22
|
+
|
|
23
|
+
## Decision
|
|
24
|
+
|
|
25
|
+
- Use one measured layout across every choice: marker gutter, one-third label cell, two-cell gap,
|
|
26
|
+
remaining description cell. Wrap within cells, retain empty description cells, and never stack
|
|
27
|
+
columns at compact widths. Use `(Rec.)` when the label column is fewer than 14 cells and a compact
|
|
28
|
+
dock hint below 60 terminal columns.
|
|
29
|
+
- Accept 1–24 LF-separated lines of at most 80 printable ASCII characters each (1,943 bytes
|
|
30
|
+
maximum), with at least one visible character. Reject tabs, CR, controls, escapes and Unicode;
|
|
31
|
+
preserve whitespace literally. Both question tools and validated request events use these bounds.
|
|
32
|
+
- Ask models for contextual UI wireframes containing actual panel/table structure and neighboring
|
|
33
|
+
elements, consistent across alternatives. This is generation guidance, not schema enforcement.
|
|
34
|
+
- Render one shared border-only literal preview without a visible caption or extra left rule.
|
|
35
|
+
Preserve content without wrapping, reflow or truncation; bounded two-axis scrolling exposes
|
|
36
|
+
overflow. Hover/focus chooses the preview without changing the staged answer.
|
|
37
|
+
- Bound and vertically scroll the dock body, keeping tabs and answer/action controls outside it.
|
|
38
|
+
PageUp/PageDown and Ctrl+Home/End scroll that body while the dock is active. Shift+arrows pan the
|
|
39
|
+
sketch; ordinary arrows keep question/choice navigation. Bring focused choices and notes into view.
|
|
40
|
+
- Terminal and hosts accept the same metadata and preserve literal content. Host presentation may
|
|
41
|
+
differ, but the expanded contract requires acceptance on both surfaces under INV-PAR-1/2.
|
|
42
|
+
|
|
43
|
+
## Consequences
|
|
44
|
+
|
|
45
|
+
Existing sketches and events remain valid without a data rewrite. Readers enforcing the old limits
|
|
46
|
+
must update before accepting larger events; rolling readers back requires avoiding sketches above
|
|
47
|
+
those limits. `uiSketch` still requires a sketch on every choice and forbids sketches when disabled.
|
|
48
|
+
`question.answered`, `QuestionAnswer`, the gate, prompt compilation and storage ownership do not
|
|
49
|
+
change. No image format, event kind or executable rich-output contract is introduced.
|
|
50
|
+
|
|
51
|
+
## Implementation and verification
|
|
52
|
+
|
|
53
|
+
The accepted design is [PROP-0025](../architecture/proposals/PROP-0025-contextual-question-wireframes.md).
|
|
54
|
+
Implementation and isolated terminal/host acceptance are recorded in the
|
|
55
|
+
[retained verification](../evidence/terminal-question-wireframes/README.md), including four terminal
|
|
56
|
+
sizes, live resizing, sketch panning, literal persistence and the host's expanded-boundary fixture.
|
|
57
|
+
Earlier PROP-0024/ADR-0025 evidence remains historical; the new evidence does not claim live-model
|
|
58
|
+
diagram quality, every emulator's behavior or native Tauri presentation.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: ADR-0027
|
|
3
|
+
title: Project structural ASCII sketch lines into connected terminal borders
|
|
4
|
+
status: accepted
|
|
5
|
+
created: 2026-10-24
|
|
6
|
+
updated: 2026-10-24
|
|
7
|
+
related: [PROP-0026, ADR-0026, ADR-0029, ADR-0080, INV-RUN-3, INV-PAR-1, INV-PAR-2]
|
|
8
|
+
supersedes: null
|
|
9
|
+
superseded_by: null
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# ADR-0027 — Project structural ASCII sketch lines into connected terminal borders
|
|
13
|
+
|
|
14
|
+
**Design accepted by the product owner on 2026-10-24** with “yes, fix it” after screenshot review.
|
|
15
|
+
This foundation presentation change is implemented and verified in isolated production fixtures;
|
|
16
|
+
see [retained evidence](../evidence/terminal-connected-sketches/README.md). The viewport-relative
|
|
17
|
+
canvas and divider sizing was later amended by [ADR-0080](ADR-0080-fixed-width-question-sketch-canvas.md);
|
|
18
|
+
the structural projection rules below remain in force.
|
|
19
|
+
|
|
20
|
+
## Context
|
|
21
|
+
|
|
22
|
+
ASCII `+|-` table frames appear disconnected in the terminal, and bare hyphen dividers do not
|
|
23
|
+
reach the preview frame. ADR-0026's absolute literal-render promise prevents correcting those
|
|
24
|
+
structural lines without a documented exception. Raw ASCII persistence and shared host metadata
|
|
25
|
+
remain appropriate; the problem is terminal typography, not the question contract.
|
|
26
|
+
|
|
27
|
+
## Decision
|
|
28
|
+
|
|
29
|
+
Adopt [PROP-0026](../architecture/proposals/PROP-0026-connected-sketch-display.md). The terminal
|
|
30
|
+
preview in `src/terminal/opentui/sketchPanel.ts` uses a bounded structural display projection:
|
|
31
|
+
|
|
32
|
+
- Recognized ASCII table-border rows and enclosed vertical table edges become connected
|
|
33
|
+
box-drawing glyphs. Internal framed tables retain their original widths and positions.
|
|
34
|
+
- Bare standalone hyphen divider rows expand to the larger of the panel viewport width and the
|
|
35
|
+
original sketch's widest line, joining the outer single-line preview frame with `├` and `┤`.
|
|
36
|
+
- No global substitution: prose, content operators and ordinary pipes remain literal. Unrecognized
|
|
37
|
+
rows remain literal. Whitespace and geometry remain unchanged except for recognized structural
|
|
38
|
+
border glyphs and standalone-divider expansion, subject to the high-confidence boundary-cell
|
|
39
|
+
repair separately specified by [ADR-0029](ADR-0029-normalized-question-wireframe-borders.md).
|
|
40
|
+
- Keep bounded two-axis panning, with no wrapping, reflow, truncation or markup interpretation.
|
|
41
|
+
Focus, selection, navigation and answers do not change.
|
|
42
|
+
|
|
43
|
+
The validated source remains at most 80 printable ASCII columns by 24 lines. Persist that source
|
|
44
|
+
literally, including whitespace; never save projected Unicode or divider expansion. No wire/schema
|
|
45
|
+
or answer change is introduced. Hosts may retain literal previews of the same source. INV-PAR-1/2
|
|
46
|
+
require equivalent capability and accepted metadata, not identical structural typography.
|
|
47
|
+
|
|
48
|
+
## Consequences
|
|
49
|
+
|
|
50
|
+
This amends only ADR-0026's terminal literal-render requirement and cross-surface typography
|
|
51
|
+
promise; its bounds, raw persistence, layout and answer decisions remain in force. No migration or
|
|
52
|
+
host code change is needed. Reverting the display projection does not affect saved events.
|
|
53
|
+
Historical decisions and verification evidence remain unchanged.
|
|
54
|
+
|
|
55
|
+
## Verification status
|
|
56
|
+
|
|
57
|
+
The [PROP-0026 verification](../evidence/terminal-connected-sketches/README.md) covers structural
|
|
58
|
+
recognition, content preservation, four terminal sizes, resizing/panning, original ASCII persistence
|
|
59
|
+
and unchanged answers, alongside Harness and host checks. The later [ADR-0029 verification](../evidence/terminal-wireframe-normalization/README.md)
|
|
60
|
+
covers title-bearing rules and bounded repair of missing or displaced frame edges. Prior PROP-0025
|
|
61
|
+
evidence remains a record of the old presentation. Fixture verification is not owner visual
|
|
62
|
+
acceptance, an every-font guarantee or evidence of live-model diagram quality.
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: ADR-0028
|
|
3
|
+
title: Use Xingular Agent as the default Harness product identity
|
|
4
|
+
status: accepted
|
|
5
|
+
created: 2026-10-24
|
|
6
|
+
updated: 2026-10-24
|
|
7
|
+
related: [PROP-0027, INV-BND-2, 00-overview.md, 04-prompt.md, 11-terminal.md]
|
|
8
|
+
supersedes: null
|
|
9
|
+
superseded_by: null
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# ADR-0028 — Use Xingular Agent as the default Harness product identity
|
|
13
|
+
|
|
14
|
+
The product owner accepted [PROP-0027](../architecture/proposals/PROP-0027-xingular-agent-product-identity.md)
|
|
15
|
+
on 2026-10-24.
|
|
16
|
+
|
|
17
|
+
## Context
|
|
18
|
+
|
|
19
|
+
The standalone terminal is Harness-owned, but its welcome and Harness-authored prompt identity used
|
|
20
|
+
the default product name `Xingular Harness`. The requested product identity is `Xingular Agent`,
|
|
21
|
+
with a terminal welcome that presents an orange `X` mark and blue `A G E N T` label. Changing the
|
|
22
|
+
default affects product identity text beyond the welcome, including compiled prompts and Wiki text;
|
|
23
|
+
embedding hosts may need their own name.
|
|
24
|
+
|
|
25
|
+
## Decision
|
|
26
|
+
|
|
27
|
+
Adopt PROP-0027:
|
|
28
|
+
|
|
29
|
+
- Set `DEFAULT_PRODUCT_NAME` to `Xingular Agent`; continue honoring an explicit `productName` from
|
|
30
|
+
an embedding host.
|
|
31
|
+
- Revise `INV-BND-2` to permit the exact canonical product identity `Xingular Agent` as the
|
|
32
|
+
default. Continue to prohibit application concepts, application-specific behavior and other
|
|
33
|
+
application names in Harness code and person/model-visible text.
|
|
34
|
+
- Format a multiword product name in the empty welcome as the first letter of its first word in the
|
|
35
|
+
orange block mark and the remaining word(s), letter-spaced, in blue. Thus the default shows `X`
|
|
36
|
+
and `A G E N T`. A single-word name remains the mark without a subline.
|
|
37
|
+
- Keep the centered greeting, tagline, `/help` hint, model/thinking status, composer and status bar;
|
|
38
|
+
use the existing orange and blue theme accents without adding tokens or changing other surfaces.
|
|
39
|
+
|
|
40
|
+
## Consequences
|
|
41
|
+
|
|
42
|
+
- Consumers that omit `productName` see `Xingular Agent` in Harness-authored product identity
|
|
43
|
+
text. Consumers that supply their own name are unchanged.
|
|
44
|
+
- Existing prompt packs, runs and Wiki notes are not rewritten; newly compiled prompt identity and
|
|
45
|
+
new Wiki text use the default in effect at creation time.
|
|
46
|
+
- No capability, API, storage layout or wire schema changes.
|
|
47
|
+
|
|
48
|
+
## Verification status
|
|
49
|
+
|
|
50
|
+
Implemented and verified on 2026-10-24.
|
|
51
|
+
|
|
52
|
+
- Harness: `npm run typecheck`, `npm test` (143 files passed; 3 skipped), `npm run build`, and
|
|
53
|
+
`npm run prove` passed. Focused PTY verification passed at 40x20, 80x24 and 120x40, including
|
|
54
|
+
the `/help` transition.
|
|
55
|
+
- Xingular Agent: `npm run typecheck`, `npm test` (566 renderer and 67 sidecar tests passed),
|
|
56
|
+
`npm run check:layers`, and `cd src-tauri && cargo test` passed.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: ADR-0029
|
|
3
|
+
title: Normalize high-confidence question wireframe borders in the terminal preview
|
|
4
|
+
status: accepted
|
|
5
|
+
created: 2026-10-24
|
|
6
|
+
updated: 2026-10-24
|
|
7
|
+
related: [PROP-0028, ADR-0026, ADR-0027, INV-PAR-1, INV-PAR-2]
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# ADR-0029 — Normalize high-confidence question wireframe borders in the terminal preview
|
|
11
|
+
|
|
12
|
+
## Context
|
|
13
|
+
|
|
14
|
+
The terminal displays bounded, model-authored ASCII sketches. The existing connected-glyph projection misses text-bearing top rules and rows with missing or misaligned side edges. The raw source remains the right shared contract, but its terminal display needs a narrowly constrained frame-repair rule.
|
|
15
|
+
|
|
16
|
+
## Decision
|
|
17
|
+
|
|
18
|
+
Adopt [PROP-0028](../architecture/proposals/PROP-0028-normalize-question-wireframes.md). The terminal may normalize only high-confidence, explicitly framed sketch boundaries:
|
|
19
|
+
|
|
20
|
+
- Recognize title-bearing border rows and establish outer columns from matched frame rules.
|
|
21
|
+
- Align a boundary character only across whitespace, or fill a missing boundary cell only where it is whitespace.
|
|
22
|
+
- Preserve interior text, nested frame geometry, ambiguous rows, and ordinary content literally; no global symbol replacement.
|
|
23
|
+
- Keep the source ASCII byte-for-byte in persistence and retain the existing question schema, answer payload, viewport and panning behavior.
|
|
24
|
+
|
|
25
|
+
Hosts may continue rendering the same source literally. This decision changes terminal typography only; it adds no capability or host contract.
|
|
26
|
+
|
|
27
|
+
## Consequences
|
|
28
|
+
|
|
29
|
+
A valid framed sketch can display connected corners and continuous vertical edges even when its source omitted or misplaced a boundary glyph. Repairs are projection-only and deliberately conservative; ambiguous or content-conflicting rows remain untouched. No migration is required.
|
|
30
|
+
|
|
31
|
+
## Verification
|
|
32
|
+
|
|
33
|
+
Use structural unit fixtures and isolated production PTY runs at compact and wide terminal sizes. Verify the displayed topology, panning/resizing, and byte-for-byte source and answer preservation. This does not claim that every emulator/font renders box glyphs identically or that live-model sketches always describe the intended design.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: ADR-0030
|
|
3
|
+
title: Agent profiles, one checklist per agent, and the subagent roster under the status line
|
|
4
|
+
status: accepted
|
|
5
|
+
created: 2026-10-24
|
|
6
|
+
updated: 2026-10-24
|
|
7
|
+
related: [PROP-0029, PROP-0006, ADR-0003, INV-RUN-2, INV-CAP-1, INV-PAR-1]
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# ADR-0030 — Agent profiles, one checklist per agent, and the subagent roster under the status line
|
|
11
|
+
|
|
12
|
+
## Context
|
|
13
|
+
|
|
14
|
+
People want to start subagents of a known kind, such as a worker that edits and an explorer that
|
|
15
|
+
only reads, and to follow their progress from the terminal. Subagents were copies of the parent
|
|
16
|
+
or instruction-only c5 definitions, the terminal did not register the checklist tool, and the
|
|
17
|
+
roster sat above the composer with a heading and no indication of each child's kind or progress.
|
|
18
|
+
|
|
19
|
+
## Decision
|
|
20
|
+
|
|
21
|
+
- Adopt [PROP-0029](../architecture/proposals/PROP-0029-agent-profiles.md): agent profiles are
|
|
22
|
+
Markdown files (built-in, `<data root>/agents/`, `<project>/.xingular/agents/`, then c5 names)
|
|
23
|
+
that a spawn resolves by name. A profile narrows tools and plugins and may choose a variant,
|
|
24
|
+
model and effort. It never widens the parent's capabilities.
|
|
25
|
+
- Progress stays **one checklist per run** (PROP-0006). The parent's list is the plan the person
|
|
26
|
+
watches. Each child keeps its own list, and the roster shows its `n of m tasks`. There is no
|
|
27
|
+
shared, claimable task pool.
|
|
28
|
+
- The terminal registers `checklist_write`, shows each write as a checklist block, and the prompt's
|
|
29
|
+
Progress group asks the model to keep it current because the person follows work from it.
|
|
30
|
+
- The roster sits under the status line after one blank line, with no heading. Each row reads: status
|
|
31
|
+
mark, profile name in its colour, session name, tasks.
|
|
32
|
+
|
|
33
|
+
## Consequences
|
|
34
|
+
|
|
35
|
+
Profiles are a foundation feature, not variant data: refinement does not change them. A project
|
|
36
|
+
can carry profiles in its repository. The App gets the same capability through `agents.*` and
|
|
37
|
+
`RunRecord.profile`; it has no Agents screen yet (parity `planned`).
|
|
38
|
+
|
|
39
|
+
## Verification
|
|
40
|
+
|
|
41
|
+
Unit tests for profiles, narrowing, spawn, the monitor, the roster and the Agents page;
|
|
42
|
+
`npm run prove`; and a loopback PTY run that checks the blank row under the status line, the row
|
|
43
|
+
order, and the profile colours.
|