@aria-cli/tools 1.0.9 → 1.0.10
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/package.json +8 -5
- package/dist-cjs/.tsbuildinfo +0 -1
- package/dist-cjs/ask-user-interaction.d.ts +0 -10
- package/dist-cjs/ask-user-interaction.js +0 -28
- package/dist-cjs/ask-user-interaction.js.map +0 -1
- package/dist-cjs/cache/web-cache.d.ts +0 -52
- package/dist-cjs/cache/web-cache.js +0 -71
- package/dist-cjs/cache/web-cache.js.map +0 -1
- package/dist-cjs/definitions/arion.d.ts +0 -8
- package/dist-cjs/definitions/arion.js +0 -108
- package/dist-cjs/definitions/arion.js.map +0 -1
- package/dist-cjs/definitions/browser/browser.d.ts +0 -2
- package/dist-cjs/definitions/browser/browser.js +0 -422
- package/dist-cjs/definitions/browser/browser.js.map +0 -1
- package/dist-cjs/definitions/browser/index.d.ts +0 -1
- package/dist-cjs/definitions/browser/index.js +0 -9
- package/dist-cjs/definitions/browser/index.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-downloads.d.ts +0 -13
- package/dist-cjs/definitions/browser/pw-downloads.js +0 -118
- package/dist-cjs/definitions/browser/pw-downloads.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-interactions.d.ts +0 -78
- package/dist-cjs/definitions/browser/pw-interactions.js +0 -214
- package/dist-cjs/definitions/browser/pw-interactions.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-responses.d.ts +0 -28
- package/dist-cjs/definitions/browser/pw-responses.js +0 -85
- package/dist-cjs/definitions/browser/pw-responses.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-session.d.ts +0 -65
- package/dist-cjs/definitions/browser/pw-session.js +0 -327
- package/dist-cjs/definitions/browser/pw-session.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-shared.d.ts +0 -22
- package/dist-cjs/definitions/browser/pw-shared.js +0 -73
- package/dist-cjs/definitions/browser/pw-shared.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-snapshot.d.ts +0 -34
- package/dist-cjs/definitions/browser/pw-snapshot.js +0 -308
- package/dist-cjs/definitions/browser/pw-snapshot.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-state.d.ts +0 -22
- package/dist-cjs/definitions/browser/pw-state.js +0 -71
- package/dist-cjs/definitions/browser/pw-state.js.map +0 -1
- package/dist-cjs/definitions/browser/types.d.ts +0 -277
- package/dist-cjs/definitions/browser/types.js +0 -6
- package/dist-cjs/definitions/browser/types.js.map +0 -1
- package/dist-cjs/definitions/code-intelligence.d.ts +0 -8
- package/dist-cjs/definitions/code-intelligence.js +0 -474
- package/dist-cjs/definitions/code-intelligence.js.map +0 -1
- package/dist-cjs/definitions/core.d.ts +0 -47
- package/dist-cjs/definitions/core.js +0 -134
- package/dist-cjs/definitions/core.js.map +0 -1
- package/dist-cjs/definitions/delegation.d.ts +0 -11
- package/dist-cjs/definitions/delegation.js +0 -516
- package/dist-cjs/definitions/delegation.js.map +0 -1
- package/dist-cjs/definitions/deploy.d.ts +0 -15
- package/dist-cjs/definitions/deploy.js +0 -69
- package/dist-cjs/definitions/deploy.js.map +0 -1
- package/dist-cjs/definitions/filesystem.d.ts +0 -9
- package/dist-cjs/definitions/filesystem.js +0 -200
- package/dist-cjs/definitions/filesystem.js.map +0 -1
- package/dist-cjs/definitions/frg.d.ts +0 -3
- package/dist-cjs/definitions/frg.js +0 -67
- package/dist-cjs/definitions/frg.js.map +0 -1
- package/dist-cjs/definitions/index.d.ts +0 -19
- package/dist-cjs/definitions/index.js +0 -44
- package/dist-cjs/definitions/index.js.map +0 -1
- package/dist-cjs/definitions/memory.d.ts +0 -8
- package/dist-cjs/definitions/memory.js +0 -127
- package/dist-cjs/definitions/memory.js.map +0 -1
- package/dist-cjs/definitions/messaging.d.ts +0 -11
- package/dist-cjs/definitions/messaging.js +0 -632
- package/dist-cjs/definitions/messaging.js.map +0 -1
- package/dist-cjs/definitions/meta.d.ts +0 -11
- package/dist-cjs/definitions/meta.js +0 -353
- package/dist-cjs/definitions/meta.js.map +0 -1
- package/dist-cjs/definitions/network.d.ts +0 -11
- package/dist-cjs/definitions/network.js +0 -163
- package/dist-cjs/definitions/network.js.map +0 -1
- package/dist-cjs/definitions/outlook.d.ts +0 -2
- package/dist-cjs/definitions/outlook.js +0 -281
- package/dist-cjs/definitions/outlook.js.map +0 -1
- package/dist-cjs/definitions/patch/apply-patch.d.ts +0 -11
- package/dist-cjs/definitions/patch/apply-patch.js +0 -192
- package/dist-cjs/definitions/patch/apply-patch.js.map +0 -1
- package/dist-cjs/definitions/patch/fuzzy-match.d.ts +0 -10
- package/dist-cjs/definitions/patch/fuzzy-match.js +0 -173
- package/dist-cjs/definitions/patch/fuzzy-match.js.map +0 -1
- package/dist-cjs/definitions/patch/index.d.ts +0 -1
- package/dist-cjs/definitions/patch/index.js +0 -6
- package/dist-cjs/definitions/patch/index.js.map +0 -1
- package/dist-cjs/definitions/patch/patch-parser.d.ts +0 -50
- package/dist-cjs/definitions/patch/patch-parser.js +0 -216
- package/dist-cjs/definitions/patch/patch-parser.js.map +0 -1
- package/dist-cjs/definitions/patch/sandbox-paths.d.ts +0 -18
- package/dist-cjs/definitions/patch/sandbox-paths.js +0 -114
- package/dist-cjs/definitions/patch/sandbox-paths.js.map +0 -1
- package/dist-cjs/definitions/process/index.d.ts +0 -1
- package/dist-cjs/definitions/process/index.js +0 -9
- package/dist-cjs/definitions/process/index.js.map +0 -1
- package/dist-cjs/definitions/process/process-registry.d.ts +0 -67
- package/dist-cjs/definitions/process/process-registry.js +0 -232
- package/dist-cjs/definitions/process/process-registry.js.map +0 -1
- package/dist-cjs/definitions/process/process.d.ts +0 -9
- package/dist-cjs/definitions/process/process.js +0 -390
- package/dist-cjs/definitions/process/process.js.map +0 -1
- package/dist-cjs/definitions/process/pty-keys.d.ts +0 -13
- package/dist-cjs/definitions/process/pty-keys.js +0 -260
- package/dist-cjs/definitions/process/pty-keys.js.map +0 -1
- package/dist-cjs/definitions/process/session-slug.d.ts +0 -1
- package/dist-cjs/definitions/process/session-slug.js +0 -146
- package/dist-cjs/definitions/process/session-slug.js.map +0 -1
- package/dist-cjs/definitions/quip.d.ts +0 -2
- package/dist-cjs/definitions/quip.js +0 -199
- package/dist-cjs/definitions/quip.js.map +0 -1
- package/dist-cjs/definitions/search.d.ts +0 -9
- package/dist-cjs/definitions/search.js +0 -64
- package/dist-cjs/definitions/search.js.map +0 -1
- package/dist-cjs/definitions/session-history.d.ts +0 -11
- package/dist-cjs/definitions/session-history.js +0 -73
- package/dist-cjs/definitions/session-history.js.map +0 -1
- package/dist-cjs/definitions/shell.d.ts +0 -8
- package/dist-cjs/definitions/shell.js +0 -185
- package/dist-cjs/definitions/shell.js.map +0 -1
- package/dist-cjs/definitions/slack.d.ts +0 -2
- package/dist-cjs/definitions/slack.js +0 -184
- package/dist-cjs/definitions/slack.js.map +0 -1
- package/dist-cjs/definitions/web.d.ts +0 -8
- package/dist-cjs/definitions/web.js +0 -113
- package/dist-cjs/definitions/web.js.map +0 -1
- package/dist-cjs/executors/apply-patch.d.ts +0 -51
- package/dist-cjs/executors/apply-patch.js +0 -939
- package/dist-cjs/executors/apply-patch.js.map +0 -1
- package/dist-cjs/executors/arion.d.ts +0 -50
- package/dist-cjs/executors/arion.js +0 -126
- package/dist-cjs/executors/arion.js.map +0 -1
- package/dist-cjs/executors/code-intelligence.d.ts +0 -138
- package/dist-cjs/executors/code-intelligence.js +0 -926
- package/dist-cjs/executors/code-intelligence.js.map +0 -1
- package/dist-cjs/executors/deploy.d.ts +0 -169
- package/dist-cjs/executors/deploy.js +0 -870
- package/dist-cjs/executors/deploy.js.map +0 -1
- package/dist-cjs/executors/filesystem.d.ts +0 -150
- package/dist-cjs/executors/filesystem.js +0 -1168
- package/dist-cjs/executors/filesystem.js.map +0 -1
- package/dist-cjs/executors/frg-freshness.d.ts +0 -93
- package/dist-cjs/executors/frg-freshness.js +0 -628
- package/dist-cjs/executors/frg-freshness.js.map +0 -1
- package/dist-cjs/executors/frg.d.ts +0 -27
- package/dist-cjs/executors/frg.js +0 -335
- package/dist-cjs/executors/frg.js.map +0 -1
- package/dist-cjs/executors/index.d.ts +0 -44
- package/dist-cjs/executors/index.js +0 -144
- package/dist-cjs/executors/index.js.map +0 -1
- package/dist-cjs/executors/learning-meta.d.ts +0 -87
- package/dist-cjs/executors/learning-meta.js +0 -1166
- package/dist-cjs/executors/learning-meta.js.map +0 -1
- package/dist-cjs/executors/lsp-client.d.ts +0 -38
- package/dist-cjs/executors/lsp-client.js +0 -311
- package/dist-cjs/executors/lsp-client.js.map +0 -1
- package/dist-cjs/executors/memory.d.ts +0 -203
- package/dist-cjs/executors/memory.js +0 -797
- package/dist-cjs/executors/memory.js.map +0 -1
- package/dist-cjs/executors/meta.d.ts +0 -73
- package/dist-cjs/executors/meta.js +0 -227
- package/dist-cjs/executors/meta.js.map +0 -1
- package/dist-cjs/executors/process-registry.d.ts +0 -98
- package/dist-cjs/executors/process-registry.js +0 -470
- package/dist-cjs/executors/process-registry.js.map +0 -1
- package/dist-cjs/executors/pty-session-store.d.ts +0 -14
- package/dist-cjs/executors/pty-session-store.js +0 -35
- package/dist-cjs/executors/pty-session-store.js.map +0 -1
- package/dist-cjs/executors/pty.d.ts +0 -133
- package/dist-cjs/executors/pty.js +0 -313
- package/dist-cjs/executors/pty.js.map +0 -1
- package/dist-cjs/executors/restart.d.ts +0 -13
- package/dist-cjs/executors/restart.js +0 -156
- package/dist-cjs/executors/restart.js.map +0 -1
- package/dist-cjs/executors/search-freshness.d.ts +0 -50
- package/dist-cjs/executors/search-freshness.js +0 -235
- package/dist-cjs/executors/search-freshness.js.map +0 -1
- package/dist-cjs/executors/search-types.d.ts +0 -52
- package/dist-cjs/executors/search-types.js +0 -57
- package/dist-cjs/executors/search-types.js.map +0 -1
- package/dist-cjs/executors/search.d.ts +0 -11
- package/dist-cjs/executors/search.js +0 -103
- package/dist-cjs/executors/search.js.map +0 -1
- package/dist-cjs/executors/self-diagnose.d.ts +0 -89
- package/dist-cjs/executors/self-diagnose.js +0 -435
- package/dist-cjs/executors/self-diagnose.js.map +0 -1
- package/dist-cjs/executors/session-history.d.ts +0 -75
- package/dist-cjs/executors/session-history.js +0 -321
- package/dist-cjs/executors/session-history.js.map +0 -1
- package/dist-cjs/executors/shell-safety.d.ts +0 -27
- package/dist-cjs/executors/shell-safety.js +0 -479
- package/dist-cjs/executors/shell-safety.js.map +0 -1
- package/dist-cjs/executors/shell.d.ts +0 -168
- package/dist-cjs/executors/shell.js +0 -1002
- package/dist-cjs/executors/shell.js.map +0 -1
- package/dist-cjs/executors/utils.d.ts +0 -20
- package/dist-cjs/executors/utils.js +0 -74
- package/dist-cjs/executors/utils.js.map +0 -1
- package/dist-cjs/executors/web.d.ts +0 -89
- package/dist-cjs/executors/web.js +0 -548
- package/dist-cjs/executors/web.js.map +0 -1
- package/dist-cjs/extraction/content-extraction.d.ts +0 -48
- package/dist-cjs/extraction/content-extraction.js +0 -244
- package/dist-cjs/extraction/content-extraction.js.map +0 -1
- package/dist-cjs/extraction/index.d.ts +0 -4
- package/dist-cjs/extraction/index.js +0 -9
- package/dist-cjs/extraction/index.js.map +0 -1
- package/dist-cjs/headless-control-contract.d.ts +0 -3182
- package/dist-cjs/headless-control-contract.js +0 -973
- package/dist-cjs/headless-control-contract.js.map +0 -1
- package/dist-cjs/index.d.ts +0 -62
- package/dist-cjs/index.js +0 -438
- package/dist-cjs/index.js.map +0 -1
- package/dist-cjs/local-control-http-auth.d.ts +0 -2
- package/dist-cjs/local-control-http-auth.js +0 -6
- package/dist-cjs/local-control-http-auth.js.map +0 -1
- package/dist-cjs/mcp/client.d.ts +0 -68
- package/dist-cjs/mcp/client.js +0 -186
- package/dist-cjs/mcp/client.js.map +0 -1
- package/dist-cjs/mcp/connection.d.ts +0 -54
- package/dist-cjs/mcp/connection.js +0 -485
- package/dist-cjs/mcp/connection.js.map +0 -1
- package/dist-cjs/mcp/index.d.ts +0 -10
- package/dist-cjs/mcp/index.js +0 -31
- package/dist-cjs/mcp/index.js.map +0 -1
- package/dist-cjs/mcp/jsonrpc.d.ts +0 -36
- package/dist-cjs/mcp/jsonrpc.js +0 -149
- package/dist-cjs/mcp/jsonrpc.js.map +0 -1
- package/dist-cjs/mcp/types.d.ts +0 -178
- package/dist-cjs/mcp/types.js +0 -9
- package/dist-cjs/mcp/types.js.map +0 -1
- package/dist-cjs/network-control-adapter.d.ts +0 -4
- package/dist-cjs/network-control-adapter.js +0 -78
- package/dist-cjs/network-control-adapter.js.map +0 -1
- package/dist-cjs/network-runtime/address-types.d.ts +0 -201
- package/dist-cjs/network-runtime/address-types.js +0 -169
- package/dist-cjs/network-runtime/address-types.js.map +0 -1
- package/dist-cjs/network-runtime/db-owner-fencing.d.ts +0 -43
- package/dist-cjs/network-runtime/db-owner-fencing.js +0 -77
- package/dist-cjs/network-runtime/db-owner-fencing.js.map +0 -1
- package/dist-cjs/network-runtime/delivery-receipts.d.ts +0 -117
- package/dist-cjs/network-runtime/delivery-receipts.js +0 -277
- package/dist-cjs/network-runtime/delivery-receipts.js.map +0 -1
- package/dist-cjs/network-runtime/direct-endpoint-authority.d.ts +0 -8
- package/dist-cjs/network-runtime/direct-endpoint-authority.js +0 -30
- package/dist-cjs/network-runtime/direct-endpoint-authority.js.map +0 -1
- package/dist-cjs/network-runtime/index.d.ts +0 -24
- package/dist-cjs/network-runtime/index.js +0 -173
- package/dist-cjs/network-runtime/index.js.map +0 -1
- package/dist-cjs/network-runtime/local-control-contract.d.ts +0 -758
- package/dist-cjs/network-runtime/local-control-contract.js +0 -634
- package/dist-cjs/network-runtime/local-control-contract.js.map +0 -1
- package/dist-cjs/network-runtime/node-store-contract.d.ts +0 -49
- package/dist-cjs/network-runtime/node-store-contract.js +0 -39
- package/dist-cjs/network-runtime/node-store-contract.js.map +0 -1
- package/dist-cjs/network-runtime/pair-route-contract.d.ts +0 -100
- package/dist-cjs/network-runtime/pair-route-contract.js +0 -81
- package/dist-cjs/network-runtime/pair-route-contract.js.map +0 -1
- package/dist-cjs/network-runtime/peer-capabilities.d.ts +0 -10
- package/dist-cjs/network-runtime/peer-capabilities.js +0 -38
- package/dist-cjs/network-runtime/peer-capabilities.js.map +0 -1
- package/dist-cjs/network-runtime/peer-principal-ref.d.ts +0 -9
- package/dist-cjs/network-runtime/peer-principal-ref.js +0 -16
- package/dist-cjs/network-runtime/peer-principal-ref.js.map +0 -1
- package/dist-cjs/network-runtime/peer-state-machine.d.ts +0 -70
- package/dist-cjs/network-runtime/peer-state-machine.js +0 -130
- package/dist-cjs/network-runtime/peer-state-machine.js.map +0 -1
- package/dist-cjs/network-runtime/protocol-schemas.d.ts +0 -328
- package/dist-cjs/network-runtime/protocol-schemas.js +0 -213
- package/dist-cjs/network-runtime/protocol-schemas.js.map +0 -1
- package/dist-cjs/network-runtime/runtime-bootstrap-contract.d.ts +0 -81
- package/dist-cjs/network-runtime/runtime-bootstrap-contract.js +0 -64
- package/dist-cjs/network-runtime/runtime-bootstrap-contract.js.map +0 -1
- package/dist-cjs/outlook/desktop-session.d.ts +0 -68
- package/dist-cjs/outlook/desktop-session.js +0 -319
- package/dist-cjs/outlook/desktop-session.js.map +0 -1
- package/dist-cjs/package.json +0 -3
- package/dist-cjs/policy.d.ts +0 -43
- package/dist-cjs/policy.js +0 -156
- package/dist-cjs/policy.js.map +0 -1
- package/dist-cjs/providers/brave.d.ts +0 -10
- package/dist-cjs/providers/brave.js +0 -67
- package/dist-cjs/providers/brave.js.map +0 -1
- package/dist-cjs/providers/duckduckgo.d.ts +0 -18
- package/dist-cjs/providers/duckduckgo.js +0 -181
- package/dist-cjs/providers/duckduckgo.js.map +0 -1
- package/dist-cjs/providers/exa.d.ts +0 -10
- package/dist-cjs/providers/exa.js +0 -68
- package/dist-cjs/providers/exa.js.map +0 -1
- package/dist-cjs/providers/firecrawl.d.ts +0 -10
- package/dist-cjs/providers/firecrawl.js +0 -60
- package/dist-cjs/providers/firecrawl.js.map +0 -1
- package/dist-cjs/providers/index.d.ts +0 -8
- package/dist-cjs/providers/index.js +0 -18
- package/dist-cjs/providers/index.js.map +0 -1
- package/dist-cjs/providers/jina.d.ts +0 -10
- package/dist-cjs/providers/jina.js +0 -54
- package/dist-cjs/providers/jina.js.map +0 -1
- package/dist-cjs/providers/router.d.ts +0 -21
- package/dist-cjs/providers/router.js +0 -101
- package/dist-cjs/providers/router.js.map +0 -1
- package/dist-cjs/providers/search-provider.d.ts +0 -35
- package/dist-cjs/providers/search-provider.js +0 -37
- package/dist-cjs/providers/search-provider.js.map +0 -1
- package/dist-cjs/providers/tavily.d.ts +0 -10
- package/dist-cjs/providers/tavily.js +0 -59
- package/dist-cjs/providers/tavily.js.map +0 -1
- package/dist-cjs/quip/desktop-session.d.ts +0 -69
- package/dist-cjs/quip/desktop-session.js +0 -354
- package/dist-cjs/quip/desktop-session.js.map +0 -1
- package/dist-cjs/registry/index.d.ts +0 -1
- package/dist-cjs/registry/index.js +0 -7
- package/dist-cjs/registry/index.js.map +0 -1
- package/dist-cjs/registry/registry.d.ts +0 -156
- package/dist-cjs/registry/registry.js +0 -762
- package/dist-cjs/registry/registry.js.map +0 -1
- package/dist-cjs/runtime-socket-local-control-client.d.ts +0 -10
- package/dist-cjs/runtime-socket-local-control-client.js +0 -368
- package/dist-cjs/runtime-socket-local-control-client.js.map +0 -1
- package/dist-cjs/security/dns-normalization.d.ts +0 -6
- package/dist-cjs/security/dns-normalization.js +0 -23
- package/dist-cjs/security/dns-normalization.js.map +0 -1
- package/dist-cjs/security/dns-pinning.d.ts +0 -27
- package/dist-cjs/security/dns-pinning.js +0 -161
- package/dist-cjs/security/dns-pinning.js.map +0 -1
- package/dist-cjs/security/external-content.d.ts +0 -40
- package/dist-cjs/security/external-content.js +0 -96
- package/dist-cjs/security/external-content.js.map +0 -1
- package/dist-cjs/security/ssrf.d.ts +0 -40
- package/dist-cjs/security/ssrf.js +0 -222
- package/dist-cjs/security/ssrf.js.map +0 -1
- package/dist-cjs/slack/desktop-session.d.ts +0 -69
- package/dist-cjs/slack/desktop-session.js +0 -367
- package/dist-cjs/slack/desktop-session.js.map +0 -1
- package/dist-cjs/tool-factory.d.ts +0 -46
- package/dist-cjs/tool-factory.js +0 -51
- package/dist-cjs/tool-factory.js.map +0 -1
- package/dist-cjs/types.d.ts +0 -1192
- package/dist-cjs/types.js +0 -9
- package/dist-cjs/types.js.map +0 -1
- package/dist-cjs/utils/retry.d.ts +0 -11
- package/dist-cjs/utils/retry.js +0 -170
- package/dist-cjs/utils/retry.js.map +0 -1
- package/dist-cjs/utils/safe-parse-json.d.ts +0 -26
- package/dist-cjs/utils/safe-parse-json.js +0 -165
- package/dist-cjs/utils/safe-parse-json.js.map +0 -1
- package/dist-cjs/utils/url.d.ts +0 -10
- package/dist-cjs/utils/url.js +0 -24
- package/dist-cjs/utils/url.js.map +0 -1
- package/src/__tests__/web-fetch-download.test.ts +0 -433
- package/src/__tests__/web-tools.test.ts +0 -619
- package/src/ask-user-interaction.ts +0 -33
- package/src/cache/web-cache.ts +0 -110
- package/src/definitions/arion.ts +0 -118
- package/src/definitions/browser/browser.ts +0 -502
- package/src/definitions/browser/index.ts +0 -5
- package/src/definitions/browser/pw-downloads.ts +0 -142
- package/src/definitions/browser/pw-interactions.ts +0 -282
- package/src/definitions/browser/pw-responses.ts +0 -98
- package/src/definitions/browser/pw-session.ts +0 -405
- package/src/definitions/browser/pw-shared.ts +0 -85
- package/src/definitions/browser/pw-snapshot.ts +0 -383
- package/src/definitions/browser/pw-state.ts +0 -101
- package/src/definitions/browser/types.ts +0 -203
- package/src/definitions/code-intelligence.ts +0 -526
- package/src/definitions/core.ts +0 -118
- package/src/definitions/delegation.ts +0 -567
- package/src/definitions/deploy.ts +0 -73
- package/src/definitions/filesystem.ts +0 -217
- package/src/definitions/frg.ts +0 -67
- package/src/definitions/index.ts +0 -28
- package/src/definitions/memory.ts +0 -150
- package/src/definitions/messaging.ts +0 -734
- package/src/definitions/meta.ts +0 -392
- package/src/definitions/network.ts +0 -179
- package/src/definitions/outlook.ts +0 -318
- package/src/definitions/patch/apply-patch.ts +0 -235
- package/src/definitions/patch/fuzzy-match.ts +0 -217
- package/src/definitions/patch/index.ts +0 -1
- package/src/definitions/patch/patch-parser.ts +0 -297
- package/src/definitions/patch/sandbox-paths.ts +0 -129
- package/src/definitions/process/index.ts +0 -5
- package/src/definitions/process/process-registry.ts +0 -303
- package/src/definitions/process/process.ts +0 -456
- package/src/definitions/process/pty-keys.ts +0 -298
- package/src/definitions/process/session-slug.ts +0 -147
- package/src/definitions/quip.ts +0 -225
- package/src/definitions/search.ts +0 -67
- package/src/definitions/session-history.ts +0 -79
- package/src/definitions/shell.ts +0 -202
- package/src/definitions/slack.ts +0 -211
- package/src/definitions/web.ts +0 -119
- package/src/executors/apply-patch.ts +0 -1035
- package/src/executors/arion.ts +0 -199
- package/src/executors/code-intelligence.ts +0 -1179
- package/src/executors/deploy.ts +0 -1066
- package/src/executors/filesystem.ts +0 -1428
- package/src/executors/frg-freshness.ts +0 -743
- package/src/executors/frg.ts +0 -394
- package/src/executors/index.ts +0 -280
- package/src/executors/learning-meta.ts +0 -1367
- package/src/executors/lsp-client.ts +0 -355
- package/src/executors/memory.ts +0 -978
- package/src/executors/meta.ts +0 -293
- package/src/executors/process-registry.ts +0 -570
- package/src/executors/pty-session-store.ts +0 -43
- package/src/executors/pty.ts +0 -342
- package/src/executors/restart.ts +0 -133
- package/src/executors/search-freshness.ts +0 -249
- package/src/executors/search-types.ts +0 -98
- package/src/executors/search.ts +0 -89
- package/src/executors/self-diagnose.ts +0 -552
- package/src/executors/session-history.ts +0 -435
- package/src/executors/shell-safety.ts +0 -519
- package/src/executors/shell.ts +0 -1243
- package/src/executors/utils.ts +0 -40
- package/src/executors/web.ts +0 -786
- package/src/extraction/content-extraction.ts +0 -281
- package/src/extraction/index.ts +0 -5
- package/src/headless-control-contract.ts +0 -1149
- package/src/index.ts +0 -788
- package/src/local-control-http-auth.ts +0 -2
- package/src/mcp/client.ts +0 -218
- package/src/mcp/connection.ts +0 -568
- package/src/mcp/index.ts +0 -11
- package/src/mcp/jsonrpc.ts +0 -195
- package/src/mcp/types.ts +0 -199
- package/src/network-control-adapter.ts +0 -88
- package/src/network-runtime/address-types.ts +0 -218
- package/src/network-runtime/db-owner-fencing.ts +0 -91
- package/src/network-runtime/delivery-receipts.ts +0 -372
- package/src/network-runtime/direct-endpoint-authority.ts +0 -35
- package/src/network-runtime/index.ts +0 -316
- package/src/network-runtime/local-control-contract.ts +0 -784
- package/src/network-runtime/node-store-contract.ts +0 -46
- package/src/network-runtime/pair-route-contract.ts +0 -97
- package/src/network-runtime/peer-capabilities.ts +0 -48
- package/src/network-runtime/peer-principal-ref.ts +0 -20
- package/src/network-runtime/peer-state-machine.ts +0 -160
- package/src/network-runtime/protocol-schemas.ts +0 -265
- package/src/network-runtime/runtime-bootstrap-contract.ts +0 -83
- package/src/outlook/desktop-session.ts +0 -409
- package/src/policy.ts +0 -171
- package/src/providers/brave.ts +0 -80
- package/src/providers/duckduckgo.ts +0 -199
- package/src/providers/exa.ts +0 -85
- package/src/providers/firecrawl.ts +0 -77
- package/src/providers/index.ts +0 -8
- package/src/providers/jina.ts +0 -70
- package/src/providers/router.ts +0 -121
- package/src/providers/search-provider.ts +0 -74
- package/src/providers/tavily.ts +0 -74
- package/src/quip/desktop-session.ts +0 -435
- package/src/registry/index.ts +0 -1
- package/src/registry/registry.ts +0 -905
- package/src/runtime-socket-local-control-client.ts +0 -632
- package/src/security/dns-normalization.ts +0 -34
- package/src/security/dns-pinning.ts +0 -138
- package/src/security/external-content.ts +0 -129
- package/src/security/ssrf.ts +0 -207
- package/src/slack/desktop-session.ts +0 -493
- package/src/tool-factory.ts +0 -91
- package/src/types.ts +0 -1341
- package/src/utils/retry.ts +0 -163
- package/src/utils/safe-parse-json.ts +0 -176
- package/src/utils/url.ts +0 -20
- package/tests/benchmarks/registry.bench.ts +0 -57
- package/tests/cache/web-cache.test.ts +0 -147
- package/tests/critical-integration.test.ts +0 -1465
- package/tests/definitions/apply-patch.test.ts +0 -586
- package/tests/definitions/browser.test.ts +0 -495
- package/tests/definitions/delegation-pause-resume.test.ts +0 -758
- package/tests/definitions/execution.test.ts +0 -671
- package/tests/definitions/messaging-inbox-scope.test.ts +0 -229
- package/tests/definitions/messaging.test.ts +0 -1468
- package/tests/definitions/outlook.test.ts +0 -30
- package/tests/definitions/process.test.ts +0 -469
- package/tests/definitions/slack.test.ts +0 -28
- package/tests/definitions/tool-inventory.test.ts +0 -218
- package/tests/e2e/delegation-quest-orchestration.e2e.test.ts +0 -433
- package/tests/e2e/memory-tool-discovery-contract.e2e.test.ts +0 -81
- package/tests/executors/apply-patch.test.ts +0 -538
- package/tests/executors/arion.test.ts +0 -309
- package/tests/executors/conversation-primitives.test.ts +0 -250
- package/tests/executors/deploy.test.ts +0 -746
- package/tests/executors/filesystem-tools.test.ts +0 -357
- package/tests/executors/filesystem.test.ts +0 -959
- package/tests/executors/frg-freshness.test.ts +0 -136
- package/tests/executors/frg-merge.test.ts +0 -70
- package/tests/executors/frg-session-content.test.ts +0 -40
- package/tests/executors/frg.test.ts +0 -56
- package/tests/executors/memory-bugfixes.test.ts +0 -257
- package/tests/executors/memory-real-memoria.integration.test.ts +0 -316
- package/tests/executors/memory.test.ts +0 -853
- package/tests/executors/meta-tools.test.ts +0 -411
- package/tests/executors/meta.test.ts +0 -683
- package/tests/executors/path-containment.test.ts +0 -51
- package/tests/executors/process-registry.test.ts +0 -505
- package/tests/executors/pty.test.ts +0 -664
- package/tests/executors/quest-security.test.ts +0 -249
- package/tests/executors/read-file-media.test.ts +0 -230
- package/tests/executors/recall-knowledge-schema.test.ts +0 -209
- package/tests/executors/recall-tags.test.ts +0 -278
- package/tests/executors/remember-null-safety.contract.test.ts +0 -41
- package/tests/executors/restart.test.ts +0 -67
- package/tests/executors/search-unified.test.ts +0 -381
- package/tests/executors/session-history.test.ts +0 -340
- package/tests/executors/session-transcript.test.ts +0 -561
- package/tests/executors/shell-abort.test.ts +0 -416
- package/tests/executors/shell-env-blocklist.test.ts +0 -648
- package/tests/executors/shell-env-process.test.ts +0 -245
- package/tests/executors/shell-process-registry.test.ts +0 -334
- package/tests/executors/shell-tools.test.ts +0 -393
- package/tests/executors/shell.test.ts +0 -690
- package/tests/executors/web-abort-vs-timeout.test.ts +0 -213
- package/tests/executors/web-integration.test.ts +0 -633
- package/tests/executors/web-symlink.test.ts +0 -18
- package/tests/executors/web.test.ts +0 -1400
- package/tests/executors/write-stdin.test.ts +0 -145
- package/tests/extraction/content-extraction.test.ts +0 -153
- package/tests/guards/tools-default-test-lane.integration.test.ts +0 -21
- package/tests/guards/tools-package-test-commands.e2e.test.ts +0 -43
- package/tests/guards/tools-test-lane-manifest.contract.test.ts +0 -76
- package/tests/guards/tools-vitest-workspace-alias.contract.test.ts +0 -63
- package/tests/helpers/async-waits.ts +0 -53
- package/tests/integration/headless-control-contract.integration.test.ts +0 -153
- package/tests/integration/memory-tool-schema-parity.integration.test.ts +0 -67
- package/tests/integration/meta-tools-round-trip.integration.test.ts +0 -506
- package/tests/integration/quest-round-trip.test.ts +0 -303
- package/tests/integration/registry-executor-flow.test.ts +0 -85
- package/tests/integration.test.ts +0 -177
- package/tests/loading-tier.test.ts +0 -126
- package/tests/mcp/client-reconnect.test.ts +0 -267
- package/tests/mcp/connection.test.ts +0 -846
- package/tests/mcp/injectable-logger.test.ts +0 -83
- package/tests/mcp/jsonrpc.test.ts +0 -109
- package/tests/mcp/lifecycle.test.ts +0 -879
- package/tests/network-runtime/address-types.contract.test.ts +0 -143
- package/tests/network-runtime/continuity-bind-schema.contract.test.ts +0 -203
- package/tests/network-runtime/local-control-contract.test.ts +0 -869
- package/tests/network-runtime/local-control-invite-token.contract.test.ts +0 -146
- package/tests/network-runtime/node-store-contract.test.ts +0 -11
- package/tests/network-runtime/pair-protocol-nodeid.contract.test.ts +0 -15
- package/tests/network-runtime/peer-state-machine.contract.test.ts +0 -148
- package/tests/network-runtime/protocol-schemas.contract.test.ts +0 -512
- package/tests/network-runtime/relay-pending-nodeid.contract.test.ts +0 -62
- package/tests/network-runtime/runtime-bootstrap-contract.test.ts +0 -227
- package/tests/network-runtime/runtime-socket-local-control-client.test.ts +0 -621
- package/tests/network-runtime/wait-for-message-script.test.ts +0 -288
- package/tests/parallel.test.ts +0 -71
- package/tests/policy.test.ts +0 -184
- package/tests/print-default-test-lane.ts +0 -14
- package/tests/print-test-lane-manifest.ts +0 -22
- package/tests/providers/brave.test.ts +0 -159
- package/tests/providers/duckduckgo.test.ts +0 -207
- package/tests/providers/exa.test.ts +0 -175
- package/tests/providers/firecrawl.test.ts +0 -168
- package/tests/providers/jina.test.ts +0 -144
- package/tests/providers/router.test.ts +0 -328
- package/tests/providers/tavily.test.ts +0 -165
- package/tests/registry/discovery.test.ts +0 -154
- package/tests/registry/injectable-logger.test.ts +0 -230
- package/tests/registry/input-validation.test.ts +0 -361
- package/tests/registry/interface-completeness.test.ts +0 -85
- package/tests/registry/mcp-integration.test.ts +0 -103
- package/tests/registry/mcp-read-only-hint.test.ts +0 -60
- package/tests/registry/memoria-discovery.test.ts +0 -390
- package/tests/registry/nested-validation.test.ts +0 -283
- package/tests/registry/pseudo-tool-filtering.test.ts +0 -258
- package/tests/registry/registration-lifecycle.test.ts +0 -133
- package/tests/registry-validation.test.ts +0 -424
- package/tests/registry.test.ts +0 -460
- package/tests/security/dns-pinning.test.ts +0 -162
- package/tests/security/external-content.test.ts +0 -144
- package/tests/security/ssrf.test.ts +0 -118
- package/tests/shell-safety-integration.test.ts +0 -32
- package/tests/shell-safety.test.ts +0 -365
- package/tests/slack/desktop-session.test.ts +0 -50
- package/tests/test-lane-manifest.ts +0 -440
- package/tests/test-utils.ts +0 -27
- package/tests/tool-factory.test.ts +0 -188
- package/tests/utils/retry.test.ts +0 -231
- package/tests/utils/url.test.ts +0 -63
- package/tsconfig.cjs.json +0 -24
- package/tsconfig.json +0 -12
- package/vitest.config.ts +0 -55
- package/vitest.e2e.config.ts +0 -24
- package/vitest.integration.config.ts +0 -24
- package/vitest.native.config.ts +0 -24
|
@@ -1,249 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Freshness tracker for aria-search (code_search tool).
|
|
3
|
-
*
|
|
4
|
-
* Mirrors frg-freshness.ts patterns to close the freshness gaps:
|
|
5
|
-
* 1. Tracks file mutations from ARIA tool writes (session overlay)
|
|
6
|
-
* 2. Reconciles git-dirty files on each search
|
|
7
|
-
* 3. Generates session overlay for the napi search() call
|
|
8
|
-
*
|
|
9
|
-
* The session overlay gives 0ms visibility for pending mutations —
|
|
10
|
-
* files written by agents/users appear in search results immediately
|
|
11
|
-
* without waiting for an index rebuild or hot.log sync.
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
import * as fsSync from "node:fs";
|
|
15
|
-
import * as nodePath from "node:path";
|
|
16
|
-
import { execFileSync } from "node:child_process";
|
|
17
|
-
|
|
18
|
-
export type SearchMutationOperation = "write" | "delete";
|
|
19
|
-
|
|
20
|
-
export interface SearchMutationRecord {
|
|
21
|
-
path: string;
|
|
22
|
-
operation: SearchMutationOperation;
|
|
23
|
-
content?: string;
|
|
24
|
-
sequence: number;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export interface SearchSessionOverlay {
|
|
28
|
-
sessionWrites: Array<{ path: string; content: string }>;
|
|
29
|
-
sessionDeletes: string[];
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
// ---------------------------------------------------------------------------
|
|
33
|
-
// In-memory state (per repo root)
|
|
34
|
-
// ---------------------------------------------------------------------------
|
|
35
|
-
|
|
36
|
-
interface RepoState {
|
|
37
|
-
sequence: number;
|
|
38
|
-
pending: Map<string, SearchMutationRecord>;
|
|
39
|
-
lastGitReconcileMs: number;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
const repoStates = new Map<string, RepoState>();
|
|
43
|
-
|
|
44
|
-
/** Minimum interval between git-dirty reconciliations (avoid hammering git). */
|
|
45
|
-
const GIT_RECONCILE_INTERVAL_MS = 2_000;
|
|
46
|
-
|
|
47
|
-
/** Max content size to cache in memory per file. */
|
|
48
|
-
const MAX_CACHED_CONTENT_BYTES = 256 * 1024;
|
|
49
|
-
|
|
50
|
-
function norm(p: string): string {
|
|
51
|
-
return nodePath.resolve(p);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
function getState(root: string): RepoState {
|
|
55
|
-
const key = norm(root);
|
|
56
|
-
let state = repoStates.get(key);
|
|
57
|
-
if (!state) {
|
|
58
|
-
state = { sequence: 0, pending: new Map(), lastGitReconcileMs: 0 };
|
|
59
|
-
repoStates.set(key, state);
|
|
60
|
-
}
|
|
61
|
-
return state;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
// ---------------------------------------------------------------------------
|
|
65
|
-
// Public API — called from filesystem/patch executors
|
|
66
|
-
// ---------------------------------------------------------------------------
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Record a file mutation from an ARIA tool write/edit/delete.
|
|
70
|
-
* Called alongside recordFrgMutation in filesystem.ts and apply-patch.ts.
|
|
71
|
-
*/
|
|
72
|
-
export function recordSearchMutation(
|
|
73
|
-
filePath: string,
|
|
74
|
-
operation: SearchMutationOperation,
|
|
75
|
-
content?: string,
|
|
76
|
-
): void {
|
|
77
|
-
// Find the git repo root to scope mutations correctly
|
|
78
|
-
const repoRoot = findGitRepoRoot(filePath);
|
|
79
|
-
if (!repoRoot) return;
|
|
80
|
-
|
|
81
|
-
const state = getState(repoRoot);
|
|
82
|
-
state.sequence += 1;
|
|
83
|
-
const normalizedPath = norm(filePath);
|
|
84
|
-
|
|
85
|
-
state.pending.set(normalizedPath, {
|
|
86
|
-
path: normalizedPath,
|
|
87
|
-
operation,
|
|
88
|
-
content:
|
|
89
|
-
typeof content === "string" && Buffer.byteLength(content, "utf8") <= MAX_CACHED_CONTENT_BYTES
|
|
90
|
-
? content
|
|
91
|
-
: undefined,
|
|
92
|
-
sequence: state.sequence,
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
// ---------------------------------------------------------------------------
|
|
97
|
-
// Public API — called from search executor
|
|
98
|
-
// ---------------------------------------------------------------------------
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Reconcile git-dirty files into the pending mutations map.
|
|
102
|
-
* Runs `git diff --name-status -z HEAD` and `git ls-files -o --exclude-standard -z`
|
|
103
|
-
* to detect files modified/created/deleted by external agents or the user.
|
|
104
|
-
*
|
|
105
|
-
* Throttled to at most once per GIT_RECONCILE_INTERVAL_MS to avoid
|
|
106
|
-
* hammering git on rapid sequential searches.
|
|
107
|
-
*/
|
|
108
|
-
export function reconcileSearchGitDirty(root: string): void {
|
|
109
|
-
const state = getState(root);
|
|
110
|
-
const now = Date.now();
|
|
111
|
-
if (now - state.lastGitReconcileMs < GIT_RECONCILE_INTERVAL_MS) {
|
|
112
|
-
return; // Throttled — recent reconciliation is still fresh enough
|
|
113
|
-
}
|
|
114
|
-
state.lastGitReconcileMs = now;
|
|
115
|
-
|
|
116
|
-
const normalizedRoot = norm(root);
|
|
117
|
-
|
|
118
|
-
// Tracked modified/deleted files
|
|
119
|
-
const trackedOutput = runGit(normalizedRoot, ["diff", "--name-status", "-z", "HEAD", "--"]);
|
|
120
|
-
if (trackedOutput) {
|
|
121
|
-
const tokens = trackedOutput.split("\0").filter(Boolean);
|
|
122
|
-
for (let i = 0; i < tokens.length; i++) {
|
|
123
|
-
const status = tokens[i] ?? "";
|
|
124
|
-
if (status.startsWith("R")) {
|
|
125
|
-
// Rename: old path deleted, new path written
|
|
126
|
-
const oldPath = tokens[++i];
|
|
127
|
-
const newPath = tokens[++i];
|
|
128
|
-
if (oldPath) addGitDirtyMutation(state, normalizedRoot, oldPath, "delete");
|
|
129
|
-
if (newPath) addGitDirtyMutation(state, normalizedRoot, newPath, "write");
|
|
130
|
-
continue;
|
|
131
|
-
}
|
|
132
|
-
const filePath = tokens[++i];
|
|
133
|
-
if (!filePath) continue;
|
|
134
|
-
addGitDirtyMutation(
|
|
135
|
-
state,
|
|
136
|
-
normalizedRoot,
|
|
137
|
-
filePath,
|
|
138
|
-
status.startsWith("D") ? "delete" : "write",
|
|
139
|
-
);
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
// Untracked new files
|
|
144
|
-
const untrackedOutput = runGit(normalizedRoot, ["ls-files", "-o", "--exclude-standard", "-z"]);
|
|
145
|
-
if (untrackedOutput) {
|
|
146
|
-
for (const token of untrackedOutput.split("\0").filter(Boolean)) {
|
|
147
|
-
addGitDirtyMutation(state, normalizedRoot, token, "write");
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
function addGitDirtyMutation(
|
|
153
|
-
state: RepoState,
|
|
154
|
-
root: string,
|
|
155
|
-
relativePath: string,
|
|
156
|
-
operation: SearchMutationOperation,
|
|
157
|
-
): void {
|
|
158
|
-
const absPath = norm(nodePath.join(root, relativePath));
|
|
159
|
-
const existing = state.pending.get(absPath);
|
|
160
|
-
// Don't overwrite ARIA-sourced mutations (which have cached content)
|
|
161
|
-
if (existing?.content) return;
|
|
162
|
-
if (existing?.operation === operation) return;
|
|
163
|
-
|
|
164
|
-
state.sequence += 1;
|
|
165
|
-
state.pending.set(absPath, {
|
|
166
|
-
path: absPath,
|
|
167
|
-
operation,
|
|
168
|
-
content: undefined, // Will be read from disk in getSearchSessionOverlay
|
|
169
|
-
sequence: state.sequence,
|
|
170
|
-
});
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
/**
|
|
174
|
-
* Generate the session overlay for the napi search() call.
|
|
175
|
-
* Reads content from disk for mutations without cached content.
|
|
176
|
-
*/
|
|
177
|
-
export function getSearchSessionOverlay(root: string): SearchSessionOverlay {
|
|
178
|
-
const state = getState(root);
|
|
179
|
-
const sessionWrites: Array<{ path: string; content: string }> = [];
|
|
180
|
-
const sessionDeletes: string[] = [];
|
|
181
|
-
|
|
182
|
-
for (const mutation of state.pending.values()) {
|
|
183
|
-
if (mutation.operation === "delete") {
|
|
184
|
-
sessionDeletes.push(mutation.path);
|
|
185
|
-
continue;
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
let content = mutation.content;
|
|
189
|
-
if (typeof content !== "string") {
|
|
190
|
-
// Read from disk — closes the gap where git-dirty files have no cached content
|
|
191
|
-
try {
|
|
192
|
-
const buf = fsSync.readFileSync(mutation.path);
|
|
193
|
-
if (!buf.subarray(0, Math.min(buf.length, 8192)).includes(0)) {
|
|
194
|
-
content = buf.toString("utf8");
|
|
195
|
-
}
|
|
196
|
-
} catch {
|
|
197
|
-
continue; // Unreadable — skip
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
if (typeof content === "string") {
|
|
202
|
-
sessionWrites.push({ path: mutation.path, content });
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
return { sessionWrites, sessionDeletes };
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
/**
|
|
210
|
-
* Clear all pending mutations for a repo root.
|
|
211
|
-
* Called after a full index rebuild (all mutations are now in the base index).
|
|
212
|
-
*/
|
|
213
|
-
export function clearSearchMutations(root: string): void {
|
|
214
|
-
const key = norm(root);
|
|
215
|
-
repoStates.delete(key);
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
// ---------------------------------------------------------------------------
|
|
219
|
-
// Helpers
|
|
220
|
-
// ---------------------------------------------------------------------------
|
|
221
|
-
|
|
222
|
-
function findGitRepoRoot(startPath: string): string | null {
|
|
223
|
-
let current = norm(startPath);
|
|
224
|
-
try {
|
|
225
|
-
if (!fsSync.statSync(current).isDirectory()) {
|
|
226
|
-
current = nodePath.dirname(current);
|
|
227
|
-
}
|
|
228
|
-
} catch {
|
|
229
|
-
current = nodePath.dirname(current);
|
|
230
|
-
}
|
|
231
|
-
while (true) {
|
|
232
|
-
if (fsSync.existsSync(nodePath.join(current, ".git"))) return current;
|
|
233
|
-
const parent = nodePath.dirname(current);
|
|
234
|
-
if (parent === current) return null;
|
|
235
|
-
current = parent;
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
function runGit(cwd: string, args: string[]): string | null {
|
|
240
|
-
try {
|
|
241
|
-
return execFileSync("git", args, {
|
|
242
|
-
cwd,
|
|
243
|
-
encoding: "utf8",
|
|
244
|
-
stdio: ["ignore", "pipe", "ignore"],
|
|
245
|
-
}).trim();
|
|
246
|
-
} catch {
|
|
247
|
-
return null;
|
|
248
|
-
}
|
|
249
|
-
}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared types and utilities for the unified search tool.
|
|
3
|
-
*
|
|
4
|
-
* Used by:
|
|
5
|
-
* - Base executor in @aria/tools (learning-meta.ts)
|
|
6
|
-
* - Runner wrapper in @aria/aria (search-wrapper.ts)
|
|
7
|
-
* - Tests
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
/** Tagged search result — every result carries runnability info. */
|
|
11
|
-
export interface SearchResult {
|
|
12
|
-
kind: "tool" | "skill" | "memory";
|
|
13
|
-
name: string;
|
|
14
|
-
description: string;
|
|
15
|
-
source:
|
|
16
|
-
| "memoria"
|
|
17
|
-
| "local"
|
|
18
|
-
| "local_cli"
|
|
19
|
-
| "builtin"
|
|
20
|
-
| "skills.sh"
|
|
21
|
-
| "clawhub"
|
|
22
|
-
| "npm"
|
|
23
|
-
| "brew"
|
|
24
|
-
| "web";
|
|
25
|
-
runnable: boolean;
|
|
26
|
-
action: "call" | "bash" | "read_skill" | "install" | "recall";
|
|
27
|
-
id?: string;
|
|
28
|
-
path?: string;
|
|
29
|
-
url?: string;
|
|
30
|
-
installCmd?: string;
|
|
31
|
-
installs?: number;
|
|
32
|
-
version?: string;
|
|
33
|
-
usageHint?: string;
|
|
34
|
-
/** Schema for injection (builtin source only, consumed by runner wrapper). */
|
|
35
|
-
_schema?: { name: string; description: string; parameters?: unknown };
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
/** OS context for platform-aware search and result metadata. */
|
|
39
|
-
export interface OSContext {
|
|
40
|
-
os: "macos" | "linux" | "windows";
|
|
41
|
-
arch: string;
|
|
42
|
-
distro?: string;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/** Input for the unified search tool. */
|
|
46
|
-
export interface SearchInput {
|
|
47
|
-
query: string;
|
|
48
|
-
sources?: Array<"memoria" | "local" | "local_cli" | "builtin" | "registry" | "web">;
|
|
49
|
-
limit?: number;
|
|
50
|
-
learn?: boolean;
|
|
51
|
-
adopt?: boolean;
|
|
52
|
-
rebuild_index?: boolean;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
// ---------------------------------------------------------------------------
|
|
56
|
-
// Shared dedup logic — single source of truth for both base executor and wrapper
|
|
57
|
-
// ---------------------------------------------------------------------------
|
|
58
|
-
|
|
59
|
-
/** Source priority for dedup (lower = higher priority). */
|
|
60
|
-
export const SOURCE_PRIORITY: Record<SearchResult["source"], number> = {
|
|
61
|
-
builtin: 0,
|
|
62
|
-
local_cli: 1,
|
|
63
|
-
memoria: 2,
|
|
64
|
-
local: 3,
|
|
65
|
-
"skills.sh": 4,
|
|
66
|
-
clawhub: 5,
|
|
67
|
-
npm: 6,
|
|
68
|
-
brew: 7,
|
|
69
|
-
web: 8,
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* Dedup search results by name with source priority.
|
|
74
|
-
* When the same name appears from multiple sources, keep the higher-priority one.
|
|
75
|
-
*/
|
|
76
|
-
export function dedupSearchResults(results: SearchResult[], limit: number): SearchResult[] {
|
|
77
|
-
const deduped = new Map<string, SearchResult>();
|
|
78
|
-
for (const item of results) {
|
|
79
|
-
const normalizedName = item.name.trim().toLowerCase();
|
|
80
|
-
const existing = deduped.get(normalizedName);
|
|
81
|
-
if (!existing) {
|
|
82
|
-
deduped.set(normalizedName, item);
|
|
83
|
-
} else {
|
|
84
|
-
const existingPriority = SOURCE_PRIORITY[existing.source] ?? 99;
|
|
85
|
-
const newPriority = SOURCE_PRIORITY[item.source] ?? 99;
|
|
86
|
-
if (newPriority < existingPriority) {
|
|
87
|
-
deduped.set(normalizedName, item);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
const sorted = [...deduped.values()].sort((a, b) => {
|
|
92
|
-
const aPriority = SOURCE_PRIORITY[a.source] ?? 99;
|
|
93
|
-
const bPriority = SOURCE_PRIORITY[b.source] ?? 99;
|
|
94
|
-
if (aPriority !== bPriority) return aPriority - bPriority;
|
|
95
|
-
return a.name.localeCompare(b.name);
|
|
96
|
-
});
|
|
97
|
-
return sorted.slice(0, limit);
|
|
98
|
-
}
|
package/src/executors/search.ts
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Executor for the native indexed regex search tool.
|
|
3
|
-
*
|
|
4
|
-
* Freshness architecture (frg parity):
|
|
5
|
-
* 1. ARIA tool writes → recordSearchMutation → session overlay (0ms visibility)
|
|
6
|
-
* 2. External edits → reconcileSearchGitDirty → session overlay (0ms visibility)
|
|
7
|
-
* 3. Commit/version change → syncIndex or buildIndex (incremental/full)
|
|
8
|
-
* 4. Session overlay passed to napi search() — no index rebuild needed
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
import * as nodePath from "node:path";
|
|
12
|
-
import { buildIndex, syncIndex, indexStatus, search } from "@aria-cli/search";
|
|
13
|
-
import { success, fail } from "./utils.js";
|
|
14
|
-
import type { ToolContext, ToolResult } from "../types.js";
|
|
15
|
-
import {
|
|
16
|
-
reconcileSearchGitDirty,
|
|
17
|
-
getSearchSessionOverlay,
|
|
18
|
-
clearSearchMutations,
|
|
19
|
-
} from "./search-freshness.js";
|
|
20
|
-
|
|
21
|
-
interface SearchInput {
|
|
22
|
-
pattern: string;
|
|
23
|
-
directory?: string;
|
|
24
|
-
fileGlob?: string;
|
|
25
|
-
fileType?: string;
|
|
26
|
-
caseSensitive?: boolean;
|
|
27
|
-
literal?: boolean;
|
|
28
|
-
maxResults?: number;
|
|
29
|
-
context?: number;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export async function executeSearch(input: unknown, ctx: ToolContext): Promise<ToolResult> {
|
|
33
|
-
const opts = input as SearchInput;
|
|
34
|
-
const dir = nodePath.resolve(ctx.workingDir, opts.directory || ".");
|
|
35
|
-
|
|
36
|
-
try {
|
|
37
|
-
// Step 1: Index management — build or sync base index if needed.
|
|
38
|
-
const status = indexStatus(dir);
|
|
39
|
-
if (status.state === "none") {
|
|
40
|
-
buildIndex(dir);
|
|
41
|
-
clearSearchMutations(dir); // fresh index includes everything
|
|
42
|
-
} else if (status.state === "stale") {
|
|
43
|
-
// Commit or binary version changed — incremental sync is sufficient
|
|
44
|
-
// (syncIndex rebuilds hot.log from git diff, much cheaper than full build).
|
|
45
|
-
// Only fall back to full build if sync fails.
|
|
46
|
-
try {
|
|
47
|
-
syncIndex(dir);
|
|
48
|
-
} catch {
|
|
49
|
-
buildIndex(dir);
|
|
50
|
-
}
|
|
51
|
-
clearSearchMutations(dir);
|
|
52
|
-
}
|
|
53
|
-
// "ready" — base index is fresh, session overlay handles uncommitted changes
|
|
54
|
-
|
|
55
|
-
// Step 2: Reconcile git-dirty files into pending mutations.
|
|
56
|
-
// Detects files modified/created/deleted by external agents or the user.
|
|
57
|
-
// Throttled to avoid hammering git on rapid sequential searches.
|
|
58
|
-
reconcileSearchGitDirty(dir);
|
|
59
|
-
|
|
60
|
-
// Step 3: Generate session overlay from pending mutations.
|
|
61
|
-
// This gives 0ms visibility for ARIA tool writes and external edits —
|
|
62
|
-
// no index rebuild needed. The overlay is applied in-memory by the
|
|
63
|
-
// Rust search engine on top of the base index + hot.log.
|
|
64
|
-
const overlay = getSearchSessionOverlay(dir);
|
|
65
|
-
|
|
66
|
-
// Step 4: Search with overlay.
|
|
67
|
-
const results = search({
|
|
68
|
-
pattern: opts.pattern,
|
|
69
|
-
directory: dir,
|
|
70
|
-
maxResults: opts.maxResults ?? 1000,
|
|
71
|
-
fileGlob: opts.fileGlob,
|
|
72
|
-
fileType: opts.fileType,
|
|
73
|
-
caseSensitive: opts.caseSensitive ?? true,
|
|
74
|
-
literal: opts.literal ?? false,
|
|
75
|
-
context: opts.context ?? 0,
|
|
76
|
-
sessionWrites: overlay.sessionWrites,
|
|
77
|
-
sessionDeletes: overlay.sessionDeletes,
|
|
78
|
-
});
|
|
79
|
-
|
|
80
|
-
const truncated = results.length >= (opts.maxResults ?? 1000);
|
|
81
|
-
return success(
|
|
82
|
-
`Found ${results.length} matches for "${opts.pattern}"${truncated ? " (truncated)" : ""}`,
|
|
83
|
-
{ matches: results, truncated },
|
|
84
|
-
);
|
|
85
|
-
} catch (err) {
|
|
86
|
-
const reason = err instanceof Error ? err.message : String(err);
|
|
87
|
-
return fail(`Search failed: ${reason}`);
|
|
88
|
-
}
|
|
89
|
-
}
|