@mickey-kras/hindsight-memory-router-coding-agents 0.0.0-stage → 0.8.2

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.
Files changed (71) hide show
  1. package/DEVIATIONS.md +49 -0
  2. package/LICENSE +23 -0
  3. package/README.md +57 -2
  4. package/UPSTREAM.json +263 -0
  5. package/cordis.patch.yml +18 -0
  6. package/dist/antigravity-hook.js +5661 -0
  7. package/dist/antigravity-statusline.js +1329 -0
  8. package/dist/antigravity-stop-hook.js +5854 -0
  9. package/dist/claude-hook.js +5661 -0
  10. package/dist/claude-sessionstart-hook.js +6344 -0
  11. package/dist/claude-stop-hook.js +5854 -0
  12. package/dist/cline.js +24927 -0
  13. package/dist/codebuddy-hook.js +5661 -0
  14. package/dist/codebuddy-sessionstart-hook.js +6344 -0
  15. package/dist/codebuddy-stop-hook.js +5854 -0
  16. package/dist/codex-hook.js +5661 -0
  17. package/dist/codex-sessionstart-hook.js +6344 -0
  18. package/dist/codex-stop-hook.js +5854 -0
  19. package/dist/copilot-hook.js +5661 -0
  20. package/dist/copilot-sessionstart-hook.js +6344 -0
  21. package/dist/copilot-stop-hook.js +5854 -0
  22. package/dist/cursor-hook.js +5661 -0
  23. package/dist/cursor-sessionstart-hook.js +6344 -0
  24. package/dist/cursor-stop-hook.js +5854 -0
  25. package/dist/daemon-start.js +13 -0
  26. package/dist/dcode-hook.js +5661 -0
  27. package/dist/dcode-sessionstart-hook.js +6344 -0
  28. package/dist/dcode-stop-hook.js +5854 -0
  29. package/dist/deepen.js +3115 -0
  30. package/dist/devin-hook.js +5661 -0
  31. package/dist/devin-sessionstart-hook.js +6344 -0
  32. package/dist/devin-stop-hook.js +5854 -0
  33. package/dist/droid-hook.js +5661 -0
  34. package/dist/droid-sessionstart-hook.js +6344 -0
  35. package/dist/droid-stop-hook.js +5854 -0
  36. package/dist/dsh.js +25049 -0
  37. package/dist/grok-hook.js +5661 -0
  38. package/dist/grok-sessionstart-hook.js +6344 -0
  39. package/dist/grok-stop-hook.js +5854 -0
  40. package/dist/hindsight-seed.js +1131 -0
  41. package/dist/index.d.ts +5 -0
  42. package/dist/index.js +37456 -0
  43. package/dist/installer.js +9025 -0
  44. package/dist/kilo.js +37456 -0
  45. package/dist/kimi-hook.js +5661 -0
  46. package/dist/kimi-sessionstart-hook.js +6344 -0
  47. package/dist/kimi-stop-hook.js +5854 -0
  48. package/dist/mcp-server.js +39650 -0
  49. package/dist/opencode2.js +37415 -0
  50. package/dist/pi.js +24995 -0
  51. package/dist/prime-agent.js +24995 -0
  52. package/dist/qwen-hook.js +5661 -0
  53. package/dist/qwen-sessionstart-hook.js +6344 -0
  54. package/dist/qwen-stop-hook.js +5854 -0
  55. package/dist/status.js +2516 -0
  56. package/dist/survey-supervisor.js +81 -0
  57. package/dist/traecode-hook.js +5661 -0
  58. package/dist/traecode-sessionstart-hook.js +6344 -0
  59. package/dist/traecode-stop-hook.js +5854 -0
  60. package/dist/workbuddy-hook.js +5661 -0
  61. package/dist/workbuddy-sessionstart-hook.js +6344 -0
  62. package/dist/workbuddy-stop-hook.js +5854 -0
  63. package/dist/zcode-hook.js +5661 -0
  64. package/dist/zcode-sessionstart-hook.js +6344 -0
  65. package/dist/zcode-stop-hook.js +5854 -0
  66. package/hooks/hooks.json +37 -0
  67. package/index.js +10 -0
  68. package/npm-shrinkwrap.json +7354 -0
  69. package/package.json +123 -4
  70. package/plugin.json +16 -0
  71. package/skill/SKILL.md +134 -0
package/DEVIATIONS.md ADDED
@@ -0,0 +1,49 @@
1
+ # Router deviations
2
+
3
+ - Managed harness identity, HTTPS endpoint, token environment references, and explicit path mappings replace upstream endpoint/token/dynamic-bank configuration.
4
+ - `optInOnly` is enforced from managed mappings. Normal config cannot rename banks or override identity/credentials.
5
+ - All HTTP requests use the shared bank/operation guard. Bank listing intersects router-visible banks with configured IDs.
6
+ - Recall/reflect fan out through the shared coordinator. Other reads remain explicitly bank-addressed.
7
+ - 401/403 are terminal; upstream credential retry is replaced by runtime environment resolution on each request.
8
+ - Optional human mode resolves a short-lived session from native OS secure storage on every request. Browser login uses the router's loopback OIDC/PKCE exchange; sign-out revokes and deletes the session. Persistent application credentials remain separate.
9
+ - Redirects and raw server error bodies are blocked. Automatic upstream replacement and installer token migration are disabled.
10
+ - Diagnostic and ordinary log files use an allowlist of timing, counts, booleans and bounded classifications at every verbosity. Prompts, answers, failure text, identifiers, paths, URLs and arbitrary progress messages are omitted; no content-debug mode is provided. Existing log files are not purged by an upgrade.
11
+ - Upstream transcript parsing, provenance tags, retain payloads, hooks and harness adapters remain the baseline, with deliberate routing, privacy, installer and reliability adaptations. This is not a claim of identical behavior; the changes and source hashes below define the maintained differences.
12
+ - Manual document ingestion uses the shared exact-title hash identity. Legacy IDs remain untouched; see the root README migration note.
13
+ - `src/core/inject.ts` rewords the reflect rendering rules to "commit, PR and issue ids": the upstream "commit/PR/issue" slash token trips the Memory Router encoded-payload request scan, which rejects the reflect query with 422 suspicious_content.
14
+
15
+ The source hashes in `UPSTREAM.json` describe the pristine snapshot. `LOCAL_CHANGES.json` pins adapted files.
16
+ The regression suite covers unchanged transcript/provenance code; root tests cover the changed security contracts.
17
+ Live harness and deployed Memory Router compatibility must be verified before rollout.
18
+
19
+ Bank configuration is operator-managed (`manageBankConfig: false`). Provision coding missions/strategies before ingestion. Read-only principals disable automatic ingestion and write-back. Local usage can read existing host transcripts, but journal-only hosts capture prompts and replies only when session retention is enabled and the principal can write the resolved bank.
20
+ Session state uses per-user private directories (0700 on POSIX), regular files (0600), and exclusive atomic temporary files. Owned legacy directories are secured and migrated; symlinks, hard links, and foreign-owned paths are rejected.
21
+ Memory content is not reused from session caches; lifecycle flags remain cached. A denied application-token value remains blocked until it changes; human credentials require explicit login after expiry or denial.
22
+
23
+ Reliability fixes use explicit sorting, global replacements, Node ANSI stripping, optional arguments, and non-empty installer regex matches. Transcript escape decoding retains UTF-16 surrogate behavior.
24
+
25
+ Dependencies are classified by their package declarations; bundling does not make declared runtime dependencies development-only. Direct runtime dependencies are `@modelcontextprotocol/sdk`, `@napi-rs/keyring`, `jsonc-parser`, `smol-toml` and `zod`. Development dependencies are `@opencode-ai/plugin`, `@opencode-ai/sdk`, `@opencode/plugin`, `@types/node`, `tsup`, `typescript` and `vitest`.
26
+
27
+ The complete override inventory is `@opencode/plugin > @opentelemetry/core` (`>=2.8.0 <3.0.0`), `esbuild` (`>=0.25.0 <1.0.0`), `fast-uri` (`>=3.1.6 <4.0.0`), `hono` (`>=4.13.7 <5.0.0`), `http-cache-semantics` (`4.3.0`), `ip-address` (`>=10.5.1 <11.0.0`), `postcss` (`>=8.5.23 <9.0.0`) and `vite` (`>=6.4.3 <7.0.0`). These ranges constrain the dependency graph; exact resolved versions are in `npm-shrinkwrap.json`. Reassess compatibility and advisories when updating, rather than assuming these overrides are permanently required or sufficient.
28
+
29
+ Survey admission is scoped to the managed router URL, principal and bank. Tokens never enter lease keys; credential rotation keeps the same lease. Normal config cannot override the managed principal. No CodeQL suppression is used.
30
+
31
+ Upstream baseline is coding-agents 0.8.1 at the shared v1.0.0 commit. Downstream package versions remain independent. The managed README, generated companion skill and disabled daemon implementation remain router-owned: upstream endpoint setup, dynamic banks, local daemon and update instructions are unsupported. The package uses npm-shrinkwrap.json; upstream package-lock.json stays intentionally absent.
32
+
33
+ New upstream append capability, retry budgets, query bounds, page scoping and document freshness reads use the existing guarded client. Version probing accepts GET /v1/version and falls back to /version; authorization failures remain terminal. Router error bodies are redacted, so a 404 cannot latch page support off based on its upstream body.
34
+
35
+ Grok tool-hook context is stored privately and delivered only after managed credentials and the current project mapping are validated. Its handoff key includes endpoint, primary bank, the canonical physical path of the recorded session root, session, a hash of the actual effective principal and the complete managed read-bank scope. Moving into a subdirectory preserves the handoff only while both the live directory and recorded root remain authorized for the same bank and the live directory remains physically inside that root. Every bank that could contribute to aggregated memory is freshly authorized in parallel under one shared 15-second deadline before delivery; scope/principal changes and server revocations reject the handoff. The effective endpoint, physical workspace and project mapping are resolved again after awaited reads and grant probes. Authorization failures discard it permanently. Tokens never enter identity keys. Pending context uses immutable blocks with atomic claims per publication; concurrent tools may deliver separate blocks, and waiting-block deduplication is best-effort. Delivery reads at most 64 blocks per event, leaving later blocks for subsequent events; terminal denial discards the bound scope's pending snapshot. Session caches retain attempt counters and lifecycle flags, never memory content.
36
+
37
+ New Kimi, WorkBuddy, CodeBuddy and TraeCode entries use managed identity and branded registration names. Trae workspace MCP files are written only by explicit transactional installation for operator-mapped projects; hooks only report the workspace-MCP gate. Global settings and workspace SQLite enable switches remain user-managed.
38
+
39
+ Managed settings are reapplied after every path/bank override, including paths without a bank section. Project prompt tuning stays available; read-only principals cannot restore ingestion, surveys or bank management. The shared transport composes over the current host dispatcher to disable Undici's header/body timeout caps while preserving the request's AbortSignal deadline and proxy setup.
40
+
41
+ SessionStart readiness probes propagate terminal authorization failures before launching further background work; transient failures retain their fallback behavior. Append capabilities and accepted-operation cursors belong to one bank, so a managed bank switch re-probes the destination and starts from a replacement transcript. Grok's native hooks file and generated backup, and Trae's generated JSON backups, are covered by installer transactions.
42
+
43
+ Multi-source conversation retention preserves rollout contributions in their original order and rereads their sources when rebuilding the shared document. Sources must remain readable, including replies previously retained before their transcript was flushed. Reconstruction supports up to 16 source references and refuses any decoded source or assembled document exceeding 32 MiB of serialized turns or 100,000 turns. Missing or ambiguous sources, unknown legacy continuation boundaries, moving copied prefixes and exceeded limits stop the write with a diagnostic instead of replacing the document with incomplete data. Single-source and persistent-runtime retention retain their existing size behavior.
44
+
45
+ SessionStart propagates failures to the shared lifecycle entrypoint. Hook lifecycle entrypoints observe rejected work, emit one fixed stderr diagnostic and exit 1 without adding protocol stdout. Authorization denial remains terminal. Seed launch waits only for the child spawn/error event; failure is reported without raw exception text, and manual success means launched, not extraction complete.
46
+
47
+ Sync requires a confirmed zero active-operation count. Unavailable or malformed operation probes remain unknown; background settlement retries for up to 15 minutes and reports unconfirmed settlement at timeout. Authorization denial remains terminal.
48
+
49
+ Persistent runtimes admit at most 256 sessions per workspace. Explicit host disposal releases completed state; admission evicts the least-recently-used idle session when end events are unavailable. Active prompts, transcript fetches, retains and dirty or buffered cursors stay pinned. When every slot is pinned, new sessions skip automatic recall/retention with a `session_capacity_reached` diagnostic; existing work continues. Evicted sessions resume with a full transcript replacement. OpenCode2 global events require current scoped-prompt admission, and keyed injection never falls back to another session. Cline keeps only the latest prompt ID for up to 256 sessions. Usage counters restart after eviction, so resumed transcripts can repeat local usage records.
package/LICENSE ADDED
@@ -0,0 +1,23 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Mikhail Krasilnikov (src/shared/, src/coding-agents/, src/plugin.ts)
4
+ Copyright (c) 2025 Vectorize AI, Inc. (src/upstream/, forked from vectorize-io/hindsight
5
+ OpenClaw v0.13.0 and coding-agents v0.6.1; see upstream provenance files)
6
+
7
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ of this software and associated documentation files (the "Software"), to deal
9
+ in the Software without restriction, including without limitation the rights
10
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ copies of the Software, and to permit persons to whom the Software is
12
+ furnished to do so, subject to the following conditions:
13
+
14
+ The above copyright notice and this permission notice shall be included in all
15
+ copies or substantial portions of the Software.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ SOFTWARE.
package/README.md CHANGED
@@ -1,3 +1,58 @@
1
- # Temporary Holding Version
1
+ # Coding agents
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ Source: `vectorize-io/hindsight/hindsight-integrations/coding-agents`, v0.8.1.
4
+ The superseded per-agent integrations are not imported.
5
+
6
+ Set `HINDSIGHT_ROUTER_CONFIG` to an absolute, operator-managed JSON file:
7
+
8
+ ```json
9
+ {
10
+ "routerUrl": "https://memory-router.example.internal",
11
+ "principals": {
12
+ "codex": {
13
+ "tokenEnv": "MEMORY_ROUTER_CODEX_TOKEN",
14
+ "writeBank": "A",
15
+ "additionalReadBanks": ["B", "C"],
16
+ "mapPathToBank": { "/work/project": "A" }
17
+ },
18
+ "claude-code": {
19
+ "tokenEnv": "MEMORY_ROUTER_CLAUDE_TOKEN",
20
+ "writeBank": "A",
21
+ "additionalReadBanks": ["B", "C"],
22
+ "mapPathToBank": { "/work/project": "A" }
23
+ },
24
+ "opencode": {
25
+ "tokenEnv": "MEMORY_ROUTER_OPENCODE_TOKEN",
26
+ "writeBank": "D",
27
+ "additionalReadBanks": ["B", "E"],
28
+ "mapPathToBank": { "/work/other": "D" }
29
+ }
30
+ }
31
+ }
32
+ ```
33
+
34
+ Resolve each named environment variable through the deployment's secret manager before launching that harness.
35
+ Give each harness only its own token. Never put token values in JSON, arguments, or this repository.
36
+ Create matching per-principal + bank + scope grants in Memory Router first.
37
+
38
+ **client routing != authorization; Memory Router grants are authoritative**
39
+
40
+ Install the verified release coding-agents tarball and run its `hindsight-coding-agents install` command.
41
+ The upstream harness hooks, plugin entrypoints, transcript readers, and background ingestion remain packaged.
42
+ Install from this artifact; do not run upstream's `npx` installer over it.
43
+
44
+ Only explicit managed path mappings opt a project in. Child directories inherit their mapping.
45
+ Use the principal's write bank in mappings for writable projects; map an assigned read bank for a read-only principal.
46
+ Unmapped paths, unknown harnesses, and missing secrets fail closed. No dynamic repository banks.
47
+ Upstream normal config may tune prompts and ingestion, but cannot change identity, credentials, endpoint, or grants. `banks.<id>.bank` and path-level bank renames are ignored; change the operator-managed `mapPathToBank` and matching server grants instead.
48
+
49
+ Legacy managed JSON keys `recallTimeoutMs`, `recallMaxTokens`, `retainQueueFlushIntervalMs`, `queueMaxAgeMs`, `queueMaxItems`, `queueMaxBytes` and `queueDir` are accepted and validated for compatibility but have no effect in coding agents. Remove them when migrating; tune retrieval in normal coding-agent config. There is no OpenClaw-style durable outage queue or replay timer here; ingestion uses the upstream retry/cursor mechanisms. Managed `queueMaxAgeMs` accepts `-1` or a positive integer and rejects `0`, unlike OpenClaw.
50
+
51
+ `pageRefreshEveryTurns` (and `HINDSIGHT_PAGE_REFRESH_EVERY_TURNS`) does not reduce hook page-list reads: memory-bearing page lists are deliberately omitted from session caches, so each prompt hook fetches freshly authorized pages. The setting still controls how often the roster/tool guide is injected, not how often it is fetched; omission or `0` means every turn (`1`). It does not configure persistent-plugin refresh behavior. Do not restore cached memory content to implement a cadence.
52
+
53
+ Recall and reflect read the assigned union, with a 4,096-token shared budget.
54
+ Recall/reflect use the caller's configured deadline: automatic retrieval uses `injectTimeoutMs` (7,000 ms), automatic reflect uses `reflectTimeoutMs` (20,000 ms), and the reflect tool uses `reflectToolTimeoutMs` (when omitted, the greater of 330,000 ms and the configured `reflectTimeoutMs`; an explicit positive tool timeout can be lower). Generic requests without a caller signal default to 15 seconds. Raising a hook deadline also requires enough time in the host hook configuration.
55
+ Transient failures return partial results with a diagnostic. Any 401/403 discards all results.
56
+ Other bank/config/page reads use an explicit assigned bank; mutations cannot target additional read banks.
57
+
58
+ See `DEVIATIONS.md` for intentional differences and `UPSTREAM.json` for exact provenance.
package/UPSTREAM.json ADDED
@@ -0,0 +1,263 @@
1
+ {
2
+ "commit": "39c65ffe2f140d0c84cee58566cad8900c5b9908",
3
+ "files": {
4
+ ".gitignore": "adb911f1ff2d2103411b4bbe90a167b4c7ef5acd38231fff55519c581f2bbd1b",
5
+ "README.md": "93c6c188f47536022afff8d836496f4268e07a39cc007a5d449ebfadfc0be21c",
6
+ "cordis.patch.yml": "0109fe6515d1c4fb25f30d14fa532f341a116d58e813864eb764053b9cbcceae",
7
+ "e2e/Dockerfile.base": "c0f450ed6ee4c0cf0d7ea4420e4108fcd46e7360fef9a257392a6148d1ec1910",
8
+ "e2e/Dockerfile.claude-code": "aa2087e40d91384d76de9962c804b5fc1fbed5ad4af49d17689ade4239baa186",
9
+ "e2e/Dockerfile.cline-cli": "35a043545998d646c2dd71ac4beaef4e287ea397aa9bee32a664bde3979ec223",
10
+ "e2e/Dockerfile.codex": "7c84e6930b8d27dea4a3f17726dcb2c588665131ef18cf64637ad4294e90e02b",
11
+ "e2e/Dockerfile.copilot-cli": "68864fcb9850dffeb02085984b80c35a8616fdbc695a86c768962be8711bd4c4",
12
+ "e2e/Dockerfile.cursor-cli": "73b107b7c1cd0c5e1a276178e9ad21be2c949b1f8cb6a85d8b582d6b752b1cc7",
13
+ "e2e/Dockerfile.dcode": "edc688341b9d7903db56494d003778320a7a545a1875a6c8109cb3751502f619",
14
+ "e2e/Dockerfile.devin-cli": "197eac2e5c1ca1a52deaf72b7da33ce850a81180009e22a03d9663110e7f890e",
15
+ "e2e/Dockerfile.dsh": "3ae128c4957fd12fc94c71b04ea63187246c2e8a2c56977d818febe0bca31190",
16
+ "e2e/Dockerfile.factory-droid": "4db4cb7a80c6946d62b21db7d03de0f5147491194adf16f3fccb6294e02cad6b",
17
+ "e2e/Dockerfile.grok-build": "f3f6fcb7378c5f818be3b37a3c4edf2dad152fb2131e1b2dd2c240d793cf0883",
18
+ "e2e/Dockerfile.kilo": "9bfdae71c5d7ce86767f7361cc164e2e38a57dd9ef0ae900e27c1e627d266c77",
19
+ "e2e/Dockerfile.kimi-code": "97c5dc57c993bd25355a73da921ffd72a1831e1d7dad31cbfa3c992253d761fe",
20
+ "e2e/Dockerfile.opencode": "81f2b653578941362048e1c500fcef6580a4a4a681e28751c54b625cc5eeba12",
21
+ "e2e/Dockerfile.opencode2": "b39733f5891cd6800ea4f238abac234c80b5894d227979eaa7cea25ae57de5dd",
22
+ "e2e/Dockerfile.pi": "fc839b871f82438a574058b1e6453764b0c25a437df4c066cf779a8fb3a00487",
23
+ "e2e/Dockerfile.prime-agent": "e73c7a93451db27bb3dcfa7695213f6f95424136cb81701aea76ff42537176a4",
24
+ "e2e/Dockerfile.qwen-code": "0b1b67f94a6015bb4e74d8d6694d83371ef86ca58227b0d789ad409063aafe63",
25
+ "e2e/Dockerfile.zcode": "6fb7b1ea831046924cd7776129e270bed5c2b6cbaf766f15351e2851bb45f0b0",
26
+ "e2e/droid-e2e-exec.sh": "cbf4b49bb6ba5723077967cc86815186e4112aac3ea0081a084ca985e88f8274",
27
+ "e2e/dsh-stub-model.cordis.yml": "01fdd58df7e92b6cd9554ab9cd04899fbb3a2fe85471309e3964a9c8112ba463",
28
+ "e2e/run-harness.sh": "48c25d84564988c78e1c8b3e50e9db2a38ab2b6183eaeec8c3fa73c23b5a70d2",
29
+ "e2e/zcode-e2e-exec.sh": "66d9ad1fc55356c931fe5ae53bee4ce42863fce80270b5a29fa742898e919703",
30
+ "hooks/hooks.json": "1d0617fd75a5729fa5b5fdb67b248384eaa74bf2c647c3b494b2fe05d83e292e",
31
+ "index.js": "4d906968db9b5d32c27db47799700b1b4739cd16bd3322c23b8842593af3264d",
32
+ "package-lock.json": "ca2b39660d53b0f5f3ff3c887f40540165286ab865fea74bf9a7a1845938a0c9",
33
+ "package.json": "12510aa835394fe548839f92d32a35449277544128c771dbcea8d6906bb466c8",
34
+ "plugin.json": "7d39522d47063c2c9fc9bfbd64c3bbea1da8f830423420ccff8bbe64ad15e133",
35
+ "scripts/build-skill.mjs": "6aa241650e1c76905a86dd6b6ccaa544786ad7246c62554f2c548a064b404b80",
36
+ "skill/SKILL.md": "30d04263f840c03f6ad90293255165bac108db662754488343717ccb800580f5",
37
+ "skill-src/preamble.md": "711d0830e7192a55fc725226d41c47bf993437687f1d1dfd5a84056c1cbe8b64",
38
+ "src/antigravity-hook.ts": "fba83a6133dee3058d4e0cc596ee9cfbd9197bdbb58f54b1530c47a2b8b7c74f",
39
+ "src/antigravity-statusline.test.ts": "e3e4b1f93967dbf0133cb87677978dd422b672a02d1138829f4fdcac1a6069d5",
40
+ "src/antigravity-statusline.ts": "9e4fd2f6ed17bceff7a80b9078384e523b2b18bb84779f289f8b467a204bf614",
41
+ "src/antigravity-stop-hook.ts": "7fc7118b6b4bf81b8bdc1c9588eab5551aee7f20862df22a9bd05768cfacec0b",
42
+ "src/claude-hook.ts": "4f9e6729ce4223d272da78f0730e0797c95cbcc05d607d1eddc6cbcde20e5ca1",
43
+ "src/claude-sessionstart-hook.ts": "23e2e53b2bd53dc5a204fbcf9b3c41b1c413c42bdb010ca20dd6e3360ff2c1c9",
44
+ "src/claude-stop-hook.ts": "2642c84cb18416e15b1220ad3f8adaa8788470ba7f2533d80ebc26700fb4e0bd",
45
+ "src/cline.test.ts": "7847ee3e54654d1ec614a70f59a668e3ef4aeb9e8383d62ada156db597083629",
46
+ "src/cline.ts": "73f2f39efad780b6f43dfc4c655d55ae391a88491f5388348cf5a947c5019734",
47
+ "src/codebuddy-hook.ts": "86330f148394320b2e6ba7b0d8d1db5aad6eb71dcc3e29d0a6f6b4a247e962b1",
48
+ "src/codebuddy-sessionstart-hook.ts": "aec6cc3e2b68a9d5fd29b51e705179646fea2eb56d9b15e104f41eb37e8ecae8",
49
+ "src/codebuddy-stop-hook.ts": "0d01bf25c5da17f180e4014ccfeebf9ec64789710d8c9b61c082b726dff38820",
50
+ "src/codex-hook.ts": "f253799758b75fe2d27348cd609f9a35dc944d2f66c42d9a0a1ee1d305591cac",
51
+ "src/codex-sessionstart-hook.ts": "1a5ccbbce00b815e9037a23cc9aba75912316e7ad9599996cdae11bc04e6cf1d",
52
+ "src/codex-stop-hook.ts": "1b5b72e0de9534531ab7bc72b9aa630f81077d9e880c248a7a7fa2017ab5aa7c",
53
+ "src/copilot-hook.ts": "eec5a9afc2b57f19d05c9243465b45126d89d33555b4225fab279f8a68a129c5",
54
+ "src/copilot-sessionstart-hook.ts": "9b971fb03ee298d0a4ca8059d544cbb47b0c897d976f51b79f5054846355e425",
55
+ "src/copilot-stop-hook.ts": "51d38277fa5a81b215acfcbd1af78f6224d4a3072c4a43e050a0b7d775e817fd",
56
+ "src/core/attribution.ts": "b955794bfefa0f7f2a711568c0e05d4eee2063346479574b9706a78340fc7b9b",
57
+ "src/core/auto-update.test.ts": "47d07c6436e4738d555245ec8f04d836fee89e793056850d190afda1d7140af5",
58
+ "src/core/auto-update.ts": "f867fbd3cc49fd2efa2f634e4ba804bf61d135b0eadda8e4d72089cad1f76be0",
59
+ "src/core/bank-bare-hub.test.ts": "9d6814cb9cebc5f8cbfcb9b34333137ce2de7ccbcf0a93d38c2c651dabe31c32",
60
+ "src/core/bank-missing-dir.test.ts": "1ee8c96bfcaf97bb59960846c3503a0302a2094e379cf79e35fe30902e51b5d3",
61
+ "src/core/bank-probe-failure.test.ts": "b53680315a9d2a74d932e56fa6dbd7e5384a1566cb93f8793dc7dbc41015f5c8",
62
+ "src/core/bank-project-name.test.ts": "be35ba4346be607a57b6b3326e24ab33149492fe4ceaac2b497ed0d1f731e799",
63
+ "src/core/bank.test.ts": "495b308f891ad5c13edbbb37f127e69f1169831cf32fa422fc227583ce2cc1b4",
64
+ "src/core/bank.ts": "cb15270abb9d801ba2571302a2a9bf2e6aab626236b5bc09fdd7d66141bcc1b5",
65
+ "src/core/brand.ts": "5016fd13a4bab706bebed3571ff702f62477b4c4812b957cffebd14bd598fb0a",
66
+ "src/core/chat.test.ts": "3761b72b15eaa7294d0ef409df1c9bfa99851a617ed535fa366552e941f38b15",
67
+ "src/core/chat.ts": "4df919d55bba68d66154c82871ad2223804bf7ec36a76f0b0e40a6d01b8d85a6",
68
+ "src/core/config.test.ts": "b655f845f14dadf81f2099e13c2a5778aa7595724aeffa7acab66d5c2b240244",
69
+ "src/core/config.ts": "5215195b152baa0fa6d39b09ca3d81bdd400ca0c53e409496e6d31833b294bc6",
70
+ "src/core/daemon.test.ts": "c9b4e5af99897e25a7eed25e14f8a729f384de0046e6894de85ad665f96de59f",
71
+ "src/core/daemon.ts": "6d171545389ce83d870a5960fa13b3beeb50945af71528b339fa4f16c5ab3796",
72
+ "src/core/diag.test.ts": "c34948910917e3dd56d1b40a060ff906decdccb857db43a9ac89412bad718f68",
73
+ "src/core/diag.ts": "7b9ee663efbf08f7130d9b04be1677653d9bc815ee8186bf9277fe665bf1fb2e",
74
+ "src/core/git-layout-retry.test.ts": "b7177e686ed7f1233a58b6ebd7ecbbd839bb10ea448038b35a012300778ea0cd",
75
+ "src/core/git-layout.test.ts": "19b035a97d52457c70b78e9a79128d23aa0ecd5f0ceca47a0415141f8f413848",
76
+ "src/core/git-layout.ts": "2f4be171b6252d41cb0d9582c0879cca92206e28ca82ea6a24c187ce68bafc19",
77
+ "src/core/git-stderr.test.ts": "e32bf64f33620020a129d35396897a9d53799e0c66d8a6b6f6333065f0b6b3b7",
78
+ "src/core/git.gitlog.test.ts": "f8a5d7bdc371f3cf45b8b40f7f92b0b2dd433afdabf6d209ef478fc5f8add175",
79
+ "src/core/git.test.ts": "3adf7e25fc5ccb6dfbe39b2c7e4edb723c6403f3397a387f5f82d0f83076649f",
80
+ "src/core/git.ts": "0bd216aa92701608b1d4729cea15863d9b87bcf67bb77d698223f5cf4c16e26c",
81
+ "src/core/hindsight.pages.test.ts": "130af6279155e3f6a96b71b237ef1351528a119a24685ea8c337551979901110",
82
+ "src/core/hindsight.test.ts": "8ef84394a5a06c63126bf9663814e2b35f72f0bfd913420582ebf9c155628441",
83
+ "src/core/hindsight.ts": "0b3a204f84f3bd2f2317d5bcab31ea9ffb0ba94a05c48b4ac5f9e5aa8d7d65b8",
84
+ "src/core/history.test.ts": "d6bdaf047f3ff80f2e2c2c9dd2ad1713ea194b36cd9b35b1c9c0471971ba9f9e",
85
+ "src/core/history.ts": "7488e971fcd146a99e1a87f06fe4138452a56f961360aef5889b15e099c5ce0b",
86
+ "src/core/hook.test.ts": "698bee15a4b7097358b352f4b0c6c0ffa21e2d4cde1350f8c6ee02195696ca65",
87
+ "src/core/hook.ts": "a95ac8719d3125c89d2637e4409e29590b14c3e6e2194b72b4e51f55bfa3a353",
88
+ "src/core/host-client.test.ts": "f889ac9a230081e6bd3fab143bbb61f8045fcc7f58bcb59186f4383f5ab1c523",
89
+ "src/core/host-client.ts": "75a7bac1ce2dcc0fd5eeebd8da3a245e6f9f3162223ffe46bc3ce188718fb02b",
90
+ "src/core/inject.ts": "f1f753a14e57c2f8c236cb68c102c47799db8a5e9cec3916e0ed175389f0ac8a",
91
+ "src/core/jsonl.test.ts": "75e2105b8676a3d678886a421b037b904c39c49dfb17392fcfbec4374586bf72",
92
+ "src/core/jsonl.ts": "0fa4e3fcdaafae689fcdf24c54f0da301709e1d585e4084d2c855ffa8f41af27",
93
+ "src/core/knowledge-injection.test.ts": "ec7032270db994c4d4f33344ad63cbc59ed2cffc4bd871e9791c6254e3960a94",
94
+ "src/core/knowledge-injection.ts": "e817e7a965e47d6bf08e0ddba91e07f20780195b085cf1e6bd1c380ba6930866",
95
+ "src/core/knowledge-tools.test.ts": "393bc7d57048d33c5f9ea12329747cb1e18daa56c113c53f826fa7c66ac634c3",
96
+ "src/core/knowledge-tools.ts": "199aced70e23d3dd95f18dc678831795aa964e5fb3c61093fb7646d74fa52691",
97
+ "src/core/legacy.test.ts": "f325570404c000a3b48ac4e90b76acb199fda2235fa6e6e377923c13a85e93a7",
98
+ "src/core/legacy.ts": "23bee68177cd4af4dd6d3d5bf53d90c64899d2ed42c5e5ccb5f2f0191b93c308",
99
+ "src/core/log.test.ts": "6e4da39186e64ec7a132d0dd1867d9a73aa17173611879ea8c263f78a94e9620",
100
+ "src/core/log.ts": "d36f1c14854a61cf8aaed03155070b525e2a17b14a5a5e5fb7b1f28926f1bebe",
101
+ "src/core/missions.test.ts": "be328b0ea48b3001a8a2834cfa13382efbb0acc4ec72bb08441ce0322d1720dd",
102
+ "src/core/missions.ts": "916ad5fbe374a891c67f48e895ca503281191e601d5d8dcd85866e397878441e",
103
+ "src/core/opt-in.test.ts": "496762a6137e98af80a4a4c4253d8b757e771529199bf38928d8498c6bbbc2fb",
104
+ "src/core/paths-config.test.ts": "b52b0822925b766ccf7ebb9c42e11934fa01ab6fae8ef2fe2c55d5262c574d8b",
105
+ "src/core/retain-cursor.test.ts": "d7947b71d436fbd4ef508c4a6cbca733a364060f19dd4860c07f0b7ccfcf5e2c",
106
+ "src/core/retain-cursor.ts": "130b7d93482e1c50a6eed1e6cadcd6174c7396f28d44938fe528ef89d668fe47",
107
+ "src/core/retain-hook.test.ts": "38f38c98e5f0f813823c50b5add0436f3e9bd9da60c0afdbc9537d79c023fbf4",
108
+ "src/core/retain-hook.ts": "3530233d0d25e63a71a663e6e913c78a44d3b9b70aef94c1970e28df673539b8",
109
+ "src/core/retain-stamp.test.ts": "41fa9df3410fd27b3b3330b816a80c0bf5909e1c2e4c7aeef625c417f0021728",
110
+ "src/core/retain-stamp.ts": "24fc2a1e5e1d8f2eb00ce16b4c1288647a6f5b1488b9f338a2c3202b80baf313",
111
+ "src/core/runtime.test.ts": "147e3b0d4221080abcabef9dcfe016d221c174f2deebf5b14d5198854fb3e1a8",
112
+ "src/core/runtime.ts": "1827716cbea311f431c6693991cb087af785679a1dad4263d915e5369c0e58a8",
113
+ "src/core/seed.test.ts": "88c984154fcc98bb389f34a5fbf24f0577098c5184558d3d14cb4a2492464afe",
114
+ "src/core/seed.ts": "47b6e3e2ace4cd4cf7bc5559c0c672d032f63a0a0f26eb3ca71cc0fe312d5615",
115
+ "src/core/session-cache.test.ts": "fe2dc3fe3c36b2b69e7ecb5af6869a93d599340e2537a04a965f90e1a8a17ab5",
116
+ "src/core/session-cache.ts": "288e80d5173fdb14935bdc6b43af3874cc8409eb700659b82d96f0872daf1ac1",
117
+ "src/core/session-start.test.ts": "6842e687bfac2d92460e959b45cce7d2dd4f098a0ef7b6e5fc6f36fdf4f9acc3",
118
+ "src/core/session-start.ts": "9a62e8a011db82116d68b2b028179bf5140b77d8553214ee3460912019e6a827",
119
+ "src/core/skill-dirs.ts": "3ac389b0a736522dc5df99e8de933d9326230c313de31b38f1a34f42515774f4",
120
+ "src/core/skill-sync.test.ts": "7e002daf948f646db002bf79101d1c2a34b61a92249d74997172e11256385e11",
121
+ "src/core/skill-sync.ts": "26fa6d57b62241cbdc976c777a1f52fe64c658d1eed4a2b588da524008c2a944",
122
+ "src/core/status.test.ts": "05e165202e7c7e81884d8d6cf46b304201ee965ffa76d3336da2c5438f8011bd",
123
+ "src/core/status.ts": "454e4aa5e3d8041757572801fa04c62fe920a2d452c3fa8ee0f2ff72da28beaf",
124
+ "src/core/survey-lease.test.ts": "8533621d4da252d0dcbae13ae7fff7908d48cece6d4a5ee7d4166f8838510cc8",
125
+ "src/core/survey-lease.ts": "61d2dc6f83d9770be625b256393407452bd393b3c039e5cf8c0788731da128b2",
126
+ "src/core/survey.test.ts": "5e8344f5fecfe7b4411625b62d32f00b2ee3b2c9918cf63bbc4f02d2ba71aa34",
127
+ "src/core/survey.ts": "f514f2e9836a0ff36ef2a005f60f99980d1cec4192ea6918b1bb2c8d0d109b87",
128
+ "src/core/sync.ts": "dc118bc563e5333992b0bc7e515220231b093fc1538e9944e9a21eba145884bf",
129
+ "src/core/template.ts": "46083e83e5d1f8eb53d6f4bbdb085bd2feaf3fa8b7b009dc1508ab8a5e9ad241",
130
+ "src/core/traecode-mcp.test.ts": "636670277554774a5d3df92c891189ac5f764231d831411c4121ae449d1ba811",
131
+ "src/core/traecode-mcp.ts": "bde5331ca5295ecfa8b3714eaaf0680bb0a9cb7234a9fa03ce4b9d627ed3d60d",
132
+ "src/core/transcript-antigravity.test.ts": "d050007c3841de2bf79220ba96fef60ced933d997f80ff3fc9fb10a5ab72546e",
133
+ "src/core/transcript-antigravity.ts": "d4f43fcc0b9f097f232321f7c3f0f4dbad5b44bb117f82444ed73530af4a55b0",
134
+ "src/core/transcript-codebuddy-ide.test.ts": "307d21035964cdb31a244f96ade182324873b74e596b992c0df5d290af3beacb",
135
+ "src/core/transcript-codebuddy-ide.ts": "4e8d8474876bcfe8fe8fec3cb73a2b76bc2e40158826f4007199d7b5b59f1d98",
136
+ "src/core/transcript-codex.test.ts": "a9b92ec59f56641d6d00f298a4c52c46bd04220e934f4594f03b61d4539cb1ba",
137
+ "src/core/transcript-codex.ts": "f219da866828765b13231656be06d7e74ca2c39af7e2f93120fd4fec9d08c17f",
138
+ "src/core/transcript-copilot.test.ts": "060ed91e1f5786504725656c229822c11905ab54df821d9bb2d8dbbd2181b004",
139
+ "src/core/transcript-copilot.ts": "2195adcbcc2529176a72906ef83df84643f3460b38298dc6c64d4335d34219c4",
140
+ "src/core/transcript-cursor.test.ts": "6873733599e44344c8f792604136f76741512300d4dcf07e6a8e446b44030bdc",
141
+ "src/core/transcript-cursor.ts": "a54c68186fecbaeea2044aa5c1cbb7d54d85eb973428b1d7c8ae7804b32f25d0",
142
+ "src/core/transcript-dcode.test.ts": "86a15a9ded08ce4b54bb9c91013ef06fd8b68d4fd19748a638feffa7dbfbafd4",
143
+ "src/core/transcript-dcode.ts": "55c88c56b3be3be607ca1a2a0af9b925f53f9628e30dab0043618d0161fc4e13",
144
+ "src/core/transcript-devin.test.ts": "dfd530bb7598f33dfa1f64c5bb85b66767216aca0361b958c1e412e102b9bc92",
145
+ "src/core/transcript-devin.ts": "e8b44de9677126d39a7188f0e67039de5aeb5b5d6cd6e93a1f9e5d8588e0581f",
146
+ "src/core/transcript-droid.test.ts": "d3e90837a801742f495455cc3f87c8539c2394138ad76da18787dd0e21829f81",
147
+ "src/core/transcript-droid.ts": "ce7a23462b5c499744f0326dde53cadcb3e60a23d9b1e22cef8217e1987c4c6c",
148
+ "src/core/transcript-dsh.test.ts": "1feb38e4f136a2f8a1559dae701cc9d449da6ad227d99625cf20fba1ceb3920f",
149
+ "src/core/transcript-dsh.ts": "788439aba085f8e31882c5aea859b4917f94793bda8aef7a724cb321d6b88f45",
150
+ "src/core/transcript-grok.test.ts": "1d9323a01825283f8e726d216ec7b9d197d9d2fea44a8b239b19facf2c033458",
151
+ "src/core/transcript-grok.ts": "73a6a7a103286ed08a2ca1e0d27c8b9941a66bbececdeecb37e9918f99d9cf61",
152
+ "src/core/transcript-kimi.test.ts": "15b450080ec2b4c4b0161c83cd708923e74792467d400e6a7eed93cf95830308",
153
+ "src/core/transcript-kimi.ts": "1ce1da986af2a307774e6e595bb08c04e44e219c1abce3de717241ce95cb9fb1",
154
+ "src/core/transcript-opencode.test.ts": "664dd5c71b7d854e61642222572d4de7eb9b25e13ae40961fec847bbb2460576",
155
+ "src/core/transcript-opencode.ts": "70ccc9673d79ec939cd7222fa681c99c0ce1ce878f983c61fb9661bf2d8f06ee",
156
+ "src/core/transcript-opencode2.test.ts": "1b38499ac9af0c0e4b1df53696073259c5fdaec34599c8b49cd95d327a26dab5",
157
+ "src/core/transcript-opencode2.ts": "af624d6bb646ba821859b8c8bb194c8c5bb5c444ad7d0da10eadac4169e03d48",
158
+ "src/core/transcript-pi.test.ts": "062f52b7b386a84efc8751ed5f351feb3c69e0f46e0f075a25f2fd1b1bbf2f11",
159
+ "src/core/transcript-pi.ts": "f4b7c0d36d17a2db3ea593272a54ab3d485a08d4f06bc6427ec8201877bfff83",
160
+ "src/core/transcript-qwen.test.ts": "7778927467b3543053b981fe4e812ad78c8352d473925753cd1e8ba48aea9d45",
161
+ "src/core/transcript-qwen.ts": "a258e260a39cd47d386784ba6078a572476f4d363c5a4f046b130eb729ab2ec9",
162
+ "src/core/transcript-util.ts": "9502b959b1e23ca49320369f6f1543ec8d2e5d1d23eb354917a381057470e156",
163
+ "src/core/transcript-workbuddy.test.ts": "c13ec2503dce2f832fc81037d025a5b1f3abb6ddcd60fe658ef14f4795dca2ed",
164
+ "src/core/transcript-workbuddy.ts": "7bd9a628bd684ee5d8961b70b5981996b42dfd83a0a3b63978fcdfaad6f9cbad",
165
+ "src/core/transcript-zcode.test.ts": "327af87495e8106130d4fcfbd4cfd15363da67704f1c06bade6178fc3801f498",
166
+ "src/core/transcript-zcode.ts": "fd41a5ad622d4a9e1031109942b920c45de2b25e83f7d23335f54350f8d4cf4a",
167
+ "src/core/transcript.test.ts": "8745c8904503e7366323e274916e37e9678746492e9294831a8ea3f2e81b577a",
168
+ "src/core/transcript.ts": "b4919e99d6cdb87bb082ca7e2f6bf3f24744ab653c7dc74c6929a24313327f57",
169
+ "src/core/turn-journal.test.ts": "68fb4813aa36b11bdf6298027d01a12bff31b70bee7b7c3d86cd529d598587dd",
170
+ "src/core/turn-journal.ts": "58d6667455d0fa0529ef3ad8c0b71e6951dd1320ccbb9bd62661ad8abe23049a",
171
+ "src/core/types.ts": "b5f46397dc6d260ac256c527403c67bef797cb52409c461c040980c6c8940d17",
172
+ "src/core/usage.test.ts": "31e216d5be531f837c8de9ea85edb04b87a19f6916b6905d0e7cd836cf975dd1",
173
+ "src/core/usage.ts": "f051322b706f77a59543c97d003d826b068aaac0d073fa5d51c914c3c42e7d52",
174
+ "src/core/util.test.ts": "04c8ab535e8794728a2562e9a45aadfbd2825313c920e1a654c7026a9ec8a78a",
175
+ "src/core/util.ts": "8750549595dae6d147faf9557b01733fd38e375de8532771d1fc55880bedd853",
176
+ "src/core/uuid.test.ts": "6ba4614156d74f25e6f80969afd27132189e45fe8a14e44a9ad6360dd86a7d22",
177
+ "src/core/uuid.ts": "5b5e7494982632c83bc86364cc3177469b97cc4392071a18d7076bde632304ac",
178
+ "src/core/zstd-frames.test.ts": "9b353bb9c8d2fbec62a729b2080f0f17ba57527dc05add1765b2faa792cf1638",
179
+ "src/core/zstd-frames.ts": "d1c3f6c4846fdc111ac0bb3bcab0f507d4586cbf6651d82e7e04b7e8b8e9274d",
180
+ "src/cursor-hook.ts": "63dc44d0ba212dbc0023d64c8e3cb5a8330a9c843589140821daa574d40921c9",
181
+ "src/cursor-sessionstart-hook.ts": "abf6740ac9c2c2b73663c438c98f64f39a463164d2fd7965542024394d79382e",
182
+ "src/cursor-stop-hook.ts": "1e5e3be0e81d60f27d4c1d100c73e2b548d8aa592f44b836ef7966a0c7423c24",
183
+ "src/daemon-start.ts": "b90166b5aaf4ed3c0a8f1db2033c420d3c4840719037a1c954eba178f0ef6f0d",
184
+ "src/dcode-hook.ts": "218498020efa9cc0bf5ed79edcf602c8b564dc20bce2305ba05c2143fa69fbfb",
185
+ "src/dcode-plugin.e2e.test.ts": "67cced1e377a64c4df6eb60de08f21c178e526d8bfe1992a9e38309cad56ddc9",
186
+ "src/dcode-plugin.test.ts": "66f12c42eacc772ac3249f6272279b8051a99251fa2064ae735007780c807468",
187
+ "src/dcode-sessionstart-hook.ts": "7ee3ce62b29694e772e46717b2834c3b49a86b97ea51c5cceab6442059a33acb",
188
+ "src/dcode-stop-hook.ts": "9521f1a5dca00be464d7af476444877daeb4566a35a68acfb5f51c28515edce2",
189
+ "src/deepen.test.ts": "c4a1791421be3ea3d118432598ac5dfbc33ce09a97767a32511209b8ddc43533",
190
+ "src/deepen.ts": "6ae7b6bf69cd7e3a54d8d1c5296e640719225aea5c20fa1a8d3cc1de4ff0c705",
191
+ "src/devin-hook.ts": "8ea8a5bd1b91702e5dfd58f333cf6687eb5e1243f4c2d66fef85427516773ef5",
192
+ "src/devin-sessionstart-hook.ts": "65e93ed8964bd711cb761dbc58451ece7a591e40931d97731c58ecaf9b9246d2",
193
+ "src/devin-stop-hook.ts": "cf0c406475aca27dd9f21eaa0e3995cb4a7dfb23b1378cdb875c82f767526f5a",
194
+ "src/docs-freshness.test.ts": "af01f7a2c84e63a2bcd7e9914dffa5b74cd868a68ef80d9a9395e65f20741b97",
195
+ "src/docs-harness-roster.test.ts": "659ea09d375f8c29cc194c09b23494bb84871c6889c110bd9bae70478a52052b",
196
+ "src/droid-hook.ts": "999dd7bfcd909c283986881e4c96cb04e5a1fcdb2d5b5db5e00811e13ddc2112",
197
+ "src/droid-sessionstart-hook.ts": "7b2247b4e0eff4531db3794bad9456376e6053abd1d16971f5a4394a3bf5621b",
198
+ "src/droid-stop-hook.ts": "c9c9d252392c4c51eb9d13e1f95629fc1ca8bc2336d656351571e079fb9ee274",
199
+ "src/dsh.test.ts": "85a89e7bbf4d57c5e06af5ee05fd48a90869c6059f9eb0cfdc2b0096c857997b",
200
+ "src/dsh.ts": "c44d7aff895bb8ba3655f3b547e1664c552e7cdd8a4d98227607efb40104136c",
201
+ "src/e2e/codex.ts": "d7f4cebbc46eea68d0d9ffd17efc40fb6c55a9c23185bbae1ef50983b1464e06",
202
+ "src/e2e/dcode.ts": "7e9fbd596b96d5755e5f212a98552efe53298539b6b2de7d312761aafd6343c8",
203
+ "src/e2e/droid.ts": "957f9d50eaf9b7b400d597e7dc1e5efaf406c6ed7314ed119893771ebb7a3947",
204
+ "src/e2e/harness.test.ts": "df129f1b252f560f01db09064ac2ce0ce580d54dc6c5e9f194d77e9c97518cfd",
205
+ "src/e2e/harness.ts": "41370b7526a981caca7762dba6d9f769b4bb2a7a7bd6357f3bd7bcd95c48a877",
206
+ "src/e2e/harnesses.ts": "007d5521960319bcfec8724dfb27654b163f5c075b63c26d032d115eeacde598",
207
+ "src/e2e/stub-model.ts": "ff87ac9050cbf9421f8d631ad88087af1cf3447a73fa1f9e115b13e9be3dd4d3",
208
+ "src/e2e/zcode.ts": "6f925b87ee1716c149e2b41f7f0494e9971a6345cc424a482f251391843ccebc",
209
+ "src/grok-claude-compat.test.ts": "f473cae53f2571cbc7c998a4c341994a19b873a0188805cbe1d205737098ea46",
210
+ "src/grok-hook.ts": "59f85f9a5cc26c82c748bd993c54dfa929f36237985ba0e8262d3b9d031d120e",
211
+ "src/grok-sessionstart-hook.ts": "e80a45a2571139008472fb13b27958c31f3ff158f05b7e0693d502bd69ca5128",
212
+ "src/grok-stop-hook.ts": "abb8c9b7523a79d54d38244996fff821ea222d9141501cda7d0231c5307b74d0",
213
+ "src/harness/hook-lifecycle.test.ts": "c1acb1be5417e777456b248e3243e2d1e71f7463e9a5a00838af328314fd2438",
214
+ "src/harness/hook-lifecycle.ts": "71f704b1227ef50d8eb9a00c833d5a9b677b890f6db3baa976a66932efc52a63",
215
+ "src/harness/opencode.test.ts": "ec7529733b5c599724a8dd80c6873fe4d061920fb8cb5e5204290f4415292244",
216
+ "src/harness/opencode.ts": "9b9d8c1883b5d71d23ce40530c4d2a0886a364e3cac0935e5ed2569b265de694",
217
+ "src/harness/opencode2.test.ts": "4d4fda53e7a583370ec41c5d2170e0e1763fb27ebf06f4c28a795f49a27ebd3c",
218
+ "src/harness/opencode2.ts": "488b1a7deb560b21641fd0fbcbbd34a204ca740c5a0ef0412fe8c1d034591e84",
219
+ "src/harness/pi-extension.test.ts": "644b2f98f8c10287c6cbca4b054c8c76dfb9e44d2fa8130f4f416d5a5121fc50",
220
+ "src/harness/pi-extension.ts": "fcb4c6f3f8146a5fc15253e377a2278e2fedbc74bf58083f85a72004c10bccc0",
221
+ "src/harness/plugin-entry.test.ts": "15de0614b344d63ab3604d1e2dbd8e8d1a4fe2ffee38deab5b3d4cf190827a83",
222
+ "src/harness/plugin-entry.ts": "3b6a14000cc9c8c90ff07af6b0cabc33ad8c32f424b18ac0fef56b8ea29e514b",
223
+ "src/harness/registry.test.ts": "ea3fd02adfeca8c07c695b47ef4c2a3799665e7289a36e08712bca3c376fbd35",
224
+ "src/harness/registry.ts": "75b56ebbc527d4a30efe554e479dc8606b8dd6b205161fd497abe51d886a8d24",
225
+ "src/harness.e2e.test.ts": "cf3d328fb6efafeef83dad2822248d7ea76c3e5ab91e91cfc28d06fe643fdcb7",
226
+ "src/hindsight-seed.ts": "f1a45eabde45121f4979fcc5b94bd0966a43c0c0277172b45e273a1f093b5c38",
227
+ "src/index.ts": "f98fb7b77d62fd74176fe572a232fda6436591eba9fec109aeb13047a4a03841",
228
+ "src/install-ui.test.ts": "e44d5a0009ce1f56aab547e1cf11c63ef4caad9c81f85f1753a8dd38b056930e",
229
+ "src/install-ui.ts": "53e9a5fa9623bd2ea6bd675708ba6585fb793f455afce6961a327e6da14519df",
230
+ "src/installer.test.ts": "28bedcb767bc6e83f4e994aee57fac82f47850448ed770fc713fafd834276d6b",
231
+ "src/installer.ts": "fab53fe06b4f9e65ca4ca3cf606e683ccd846f9ac7f50c2c3ca5b9a1265fc7e2",
232
+ "src/journal-harnesses.test.ts": "a3d0021818da2f21674e3b51c6dede390974ec04b1725b13fa8d6660d12f7144",
233
+ "src/kilo.ts": "67b72f32474f3901a084addd12c31d125476e78c4743386886d2a62999f99c92",
234
+ "src/kimi-hook.ts": "740df65a97ba218cf4b0fdb0321b4d3e2d015e6c11c30e6fe721eee772c6d7d9",
235
+ "src/kimi-sessionstart-hook.ts": "f077dba9785be83448bbc517b370222e98b50df78e53520f5b9c9f60dd241c2a",
236
+ "src/kimi-stop-hook.ts": "edb78808d4a61e5209cfb87491670e116de8d4c51f04ea3b125b3250616451ad",
237
+ "src/mcp-server.test.ts": "cac21b4b23aad7a2ac2493198089b33d79ea1e033d92ba962b474022aa53a5cd",
238
+ "src/mcp-server.ts": "6c079590e43dcb817a50a5811d3f21a84e245223b78b4cd4f894f798bfae5b57",
239
+ "src/opencode2.ts": "b5831b5432dc3cda4eb6b6c182c909a2bd9a208f1b4c34a75243478d47eda621",
240
+ "src/pi.ts": "ea151d9428cc916f391aaef508c09f437e144a958902f81c9ba157313b6cb675",
241
+ "src/prime-agent.ts": "1133582c061afb73063f3d3d94255135f00cac60ad61ce672010894441142b4c",
242
+ "src/qwen-hook.ts": "42bbd211a1ff3d31c680111713d3ff0205ecfecbdb20bbff5341a371d2219658",
243
+ "src/qwen-sessionstart-hook.ts": "22b46ecfa426046f12e4be99e54e7e717d0e16094e41723e4d2e10c5f91456c0",
244
+ "src/qwen-stop-hook.ts": "8e1e58dd0b06026c49815ebf88de3b83082477814db52d25ee5f6e8c4901962c",
245
+ "src/status.ts": "c791d883aa41017b9fd4dc8506f35ab2e5bc415b4fe1fe134b457b47deae32c5",
246
+ "src/survey-supervisor.ts": "25fdd4f4546e0d29b090322d449fb84d6ea30d387a6494443e619f9d466e624a",
247
+ "src/traecode-hook.ts": "39e596a7530f95a24ddefc614008f1b655d29a92994bcef76be9308787095d22",
248
+ "src/traecode-sessionstart-hook.ts": "b7fbd7b6710cf7f76d0933c56838de08145f9c9952cc7797dc0c1967a314793d",
249
+ "src/traecode-stop-hook.ts": "87860b44ce608e1a355948852d64a1fb19a660120e0fc1511f5d1ad6ed4a2d5a",
250
+ "src/workbuddy-hook.ts": "22c376d37e2c7149e906362775f1ba6b2d2aa1dac7c62272b04597b4a6d83f0c",
251
+ "src/workbuddy-sessionstart-hook.ts": "8acbe3ed3d2605e8c239495db786c7d4a4d498dd44869ed49aea4ab3ff4ba1f8",
252
+ "src/workbuddy-stop-hook.ts": "fbe1edc953d467c5032ba088b14c9df08b6955b341b3ca4d6655292120e20833",
253
+ "src/zcode-hook.ts": "053eb33ec29ca109b70eb2682290c2f8ed981dfe26fa6b57700640057a491b0f",
254
+ "src/zcode-sessionstart-hook.ts": "259f5d98601c99a42b497e8fb0b43678e76acf9d23abe2cbafff1b50d7a87b51",
255
+ "src/zcode-stop-hook.ts": "2bce63b6603c37e4700935c8814f9c94999e7de017b480bb88f6008fe43f094f",
256
+ "tsconfig.json": "0e675460f873573b0d10f0615966e1b7a2eb2176c15d8b502bd4aadaee975f1b",
257
+ "tsup.config.ts": "342e4d764595468f15f83dc3a7261cae66e55ff2222945dd3ae7e07e6fbb6a81",
258
+ "vitest.config.ts": "0c3aa7993f529dbb014ea02ab18eade3e468a40275447b1111d91f08419dc89d"
259
+ },
260
+ "path": "hindsight-integrations/coding-agents",
261
+ "source": "https://github.com/vectorize-io/hindsight",
262
+ "version": "0.8.1"
263
+ }
@@ -0,0 +1,18 @@
1
+ # DeepSeek Harness profile layer for Hindsight memory.
2
+ #
3
+ # `dsh plugin --profile <name> add @mickey-kras/hindsight-memory-router-coding-agents` installs this package into
4
+ # the profile and — because package.json declares `dsh.bundle.patch` — appends this file to the
5
+ # profile's ordered bundle list. Nothing else needs editing: the row below mounts on the host plane,
6
+ # where the pre-step/session-start/turn-stopping events and the layered tools registry all reach
7
+ # every session, including the Web surface's per-session agent presets.
8
+ #
9
+ # Memory itself is configured OUTSIDE dsh, in ~/.hindsight/coding-agent.json (server URL, token,
10
+ # bank naming, opt-outs) — the same file every other Hindsight coding-agent harness reads. To turn
11
+ # it off for one profile without uninstalling, patch this row in the profile's own
12
+ # cordis.patch.yml:
13
+ #
14
+ # - id: hindsight
15
+ # disabled: true
16
+ - insert:
17
+ - id: hindsight
18
+ name: "@mickey-kras/hindsight-memory-router-coding-agents/dsh"