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

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 +166 -0
  2. package/LICENSE +23 -0
  3. package/README.md +83 -2
  4. package/UPSTREAM.json +263 -0
  5. package/cordis.patch.yml +18 -0
  6. package/dist/antigravity-hook.js +5666 -0
  7. package/dist/antigravity-statusline.js +1329 -0
  8. package/dist/antigravity-stop-hook.js +5859 -0
  9. package/dist/claude-hook.js +5666 -0
  10. package/dist/claude-sessionstart-hook.js +6349 -0
  11. package/dist/claude-stop-hook.js +5859 -0
  12. package/dist/cline.js +24976 -0
  13. package/dist/codebuddy-hook.js +5666 -0
  14. package/dist/codebuddy-sessionstart-hook.js +6349 -0
  15. package/dist/codebuddy-stop-hook.js +5859 -0
  16. package/dist/codex-hook.js +5666 -0
  17. package/dist/codex-sessionstart-hook.js +6349 -0
  18. package/dist/codex-stop-hook.js +5859 -0
  19. package/dist/copilot-hook.js +5666 -0
  20. package/dist/copilot-sessionstart-hook.js +6349 -0
  21. package/dist/copilot-stop-hook.js +5859 -0
  22. package/dist/cursor-hook.js +5666 -0
  23. package/dist/cursor-sessionstart-hook.js +6349 -0
  24. package/dist/cursor-stop-hook.js +5859 -0
  25. package/dist/daemon-start.js +13 -0
  26. package/dist/dcode-hook.js +5666 -0
  27. package/dist/dcode-sessionstart-hook.js +6349 -0
  28. package/dist/dcode-stop-hook.js +5859 -0
  29. package/dist/deepen.js +3119 -0
  30. package/dist/devin-hook.js +5666 -0
  31. package/dist/devin-sessionstart-hook.js +6349 -0
  32. package/dist/devin-stop-hook.js +5859 -0
  33. package/dist/droid-hook.js +5666 -0
  34. package/dist/droid-sessionstart-hook.js +6349 -0
  35. package/dist/droid-stop-hook.js +5859 -0
  36. package/dist/dsh.js +25098 -0
  37. package/dist/grok-hook.js +5666 -0
  38. package/dist/grok-sessionstart-hook.js +6349 -0
  39. package/dist/grok-stop-hook.js +5859 -0
  40. package/dist/hindsight-seed.js +1131 -0
  41. package/dist/index.d.ts +5 -0
  42. package/dist/index.js +37505 -0
  43. package/dist/installer.js +9030 -0
  44. package/dist/kilo.js +37505 -0
  45. package/dist/kimi-hook.js +5666 -0
  46. package/dist/kimi-sessionstart-hook.js +6349 -0
  47. package/dist/kimi-stop-hook.js +5859 -0
  48. package/dist/mcp-server.js +39699 -0
  49. package/dist/opencode2.js +37464 -0
  50. package/dist/pi.js +25044 -0
  51. package/dist/prime-agent.js +25044 -0
  52. package/dist/qwen-hook.js +5666 -0
  53. package/dist/qwen-sessionstart-hook.js +6349 -0
  54. package/dist/qwen-stop-hook.js +5859 -0
  55. package/dist/status.js +2516 -0
  56. package/dist/survey-supervisor.js +81 -0
  57. package/dist/traecode-hook.js +5666 -0
  58. package/dist/traecode-sessionstart-hook.js +6349 -0
  59. package/dist/traecode-stop-hook.js +5859 -0
  60. package/dist/workbuddy-hook.js +5666 -0
  61. package/dist/workbuddy-sessionstart-hook.js +6349 -0
  62. package/dist/workbuddy-stop-hook.js +5859 -0
  63. package/dist/zcode-hook.js +5666 -0
  64. package/dist/zcode-sessionstart-hook.js +6349 -0
  65. package/dist/zcode-stop-hook.js +5859 -0
  66. package/hooks/hooks.json +37 -0
  67. package/index.js +10 -0
  68. package/npm-shrinkwrap.json +7756 -0
  69. package/package.json +124 -4
  70. package/plugin.json +16 -0
  71. package/skill/SKILL.md +141 -0
package/DEVIATIONS.md ADDED
@@ -0,0 +1,166 @@
1
+ # Router deviations
2
+
3
+ - Managed harness identity, HTTPS endpoint, token environment references, and explicit path mappings replace upstream configuration for endpoints, tokens and dynamic banks.
4
+ - Managed mappings enforce `optInOnly`. Normal configuration cannot rename banks or override identity or credentials.
5
+ - All HTTP requests use the shared guard for banks and operations. Bank listing intersects router-visible banks with configured IDs.
6
+ - Recall and reflect use the shared coordinator to read multiple banks. Other reads need an explicit bank address.
7
+ - A 401/403 response is terminal. Runtime environment resolution on each request replaces upstream credential retry.
8
+ - Optional human mode resolves a short-lived session from native OS secure storage on every request.
9
+ Browser login uses the router's loopback OIDC exchange with PKCE. Sign-out revokes and deletes the session.
10
+ Persistent application credentials remain separate.
11
+ - The client blocks redirects and raw server error bodies. The integration disables automatic upstream replacement and installer token migration.
12
+ - At every verbosity, diagnostic and ordinary log files contain only timing, counts, booleans and bounded classifications.
13
+ They omit prompts, answers, failure text, identifiers, paths, URLs and arbitrary progress messages.
14
+ There is no content-debug mode. An upgrade does not remove existing log files.
15
+ - Upstream transcript parsing, provenance tags, retain payloads, hooks and harness adapters remain the baseline.
16
+ This fork changes routing, privacy, installation and reliability. It does not claim the same behavior.
17
+ The changes and source hashes below define the maintained differences.
18
+ - Manual document ingestion uses the shared exact-title hash identity. Legacy IDs do not change. See the migration note in the root README.
19
+ - `src/core/inject.ts` changes the reflect rendering rules to "commit, PR and issue ids".
20
+ The upstream token `commit/PR/issue` triggers the Memory Router encoded-payload request scan.
21
+ That scan rejects the reflect query with 422 suspicious_content.
22
+
23
+ The source hashes in `UPSTREAM.json` describe the original snapshot. `LOCAL_CHANGES.json` pins adapted files.
24
+ The regression suite covers unchanged code for transcripts and provenance. Root tests cover the changed security contracts.
25
+
26
+ Before deployment, check compatibility with live harnesses and the deployed Memory Router.
27
+
28
+ The operator manages bank configuration (`manageBankConfig: false`). Before ingestion, configure coding missions and strategies.
29
+ Read-only principals disable automatic ingestion and write-back. Local usage can read existing host transcripts.
30
+
31
+ Journal-only hosts capture prompts and replies only if session retention applies and the principal can write the resolved bank.
32
+
33
+ Session state uses per-user private directories (0700 on POSIX), regular files (0600), and exclusive atomic temporary files.
34
+ The integration secures and migrates owned legacy directories. It rejects symlinks, hard links, and foreign-owned paths.
35
+
36
+ It does not reuse memory content from session caches. Lifecycle flags remain cached.
37
+ A denied application-token value remains blocked until it changes. Human credentials need explicit login after expiry or denial.
38
+
39
+ Reliability fixes use explicit sorting, global replacements, Node ANSI stripping, optional arguments, and non-empty installer regex matches.
40
+ Transcript escape decoding retains UTF-16 surrogate behavior.
41
+
42
+ Package declarations classify dependencies. Bundling does not make declared runtime dependencies development-only.
43
+ Direct runtime dependencies are `@modelcontextprotocol/sdk`, `@napi-rs/keyring`, `jsonc-parser`, `smol-toml` and `zod`.
44
+ Development dependencies are `@opencode-ai/plugin`, `@opencode-ai/sdk`, `@opencode/plugin`, `@types/node`, `tsup`, `typescript` and `vitest`.
45
+
46
+ The complete override inventory is:
47
+
48
+ | Dependency | Range |
49
+ | --- | --- |
50
+ | `@opencode/plugin > @opentelemetry/core` | `>=2.8.0 <3.0.0` |
51
+ | `esbuild` | `>=0.25.0 <1.0.0` |
52
+ | `fast-uri` | `>=3.1.6 <4.0.0` |
53
+ | `hono` | `>=4.13.11 <5.0.0` |
54
+ | `http-cache-semantics` | `4.3.0` |
55
+ | `ip-address` | `>=10.5.1 <11.0.0` |
56
+ | `postcss` | `>=8.5.23 <9.0.0` |
57
+ | `vite` | `>=6.4.3 <7.0.0` |
58
+
59
+ These ranges constrain the dependency graph. `npm-shrinkwrap.json` contains exact resolved versions.
60
+ When you update dependencies, assess compatibility and advisories again.
61
+ Do not assume that these overrides remain necessary or enough.
62
+
63
+ Survey admission uses the managed router URL, principal and bank as its scope.
64
+ Tokens never enter lease keys. Credential rotation keeps the same lease.
65
+
66
+ Normal configuration cannot override the managed principal. The code uses no CodeQL suppression.
67
+
68
+ The upstream baseline is coding-agents 0.8.2 at the shared v1.1.0 release commit. Downstream package versions remain independent.
69
+ The router maintains the managed README, generated companion skill and disabled daemon implementation.
70
+ This fork does not support upstream endpoint setup, dynamic banks, local daemon and update instructions.
71
+
72
+ The package uses npm-shrinkwrap.json. Upstream package-lock.json remains intentionally absent.
73
+
74
+ New upstream append capability, retry budgets, query bounds, page scoping and document freshness reads use the existing guarded client.
75
+ Version probing accepts GET /v1/version and falls back to /version. Authorization failures remain terminal.
76
+
77
+ The router removes error body content. Thus, a 404 cannot disable page support based on its upstream body.
78
+
79
+ Grok tool-hook context uses private storage. Delivery requires valid managed credentials and a valid current project mapping.
80
+ The handoff key contains these fields:
81
+
82
+ - Endpoint and primary bank.
83
+ - Canonical physical path of the recorded session root.
84
+ - Session.
85
+ - Hash of the actual effective principal.
86
+ - Complete managed read-bank scope.
87
+
88
+ A move into a subdirectory preserves the handoff only under both conditions:
89
+
90
+ - The live directory and recorded root remain authorized for the same bank.
91
+ - The live directory remains physically inside that root.
92
+
93
+ Before delivery, every bank that can contribute memory receives a new authorization check.
94
+ These checks run in parallel under one shared 15-second deadline.
95
+ Changes to scope or principal and server revocations reject the handoff.
96
+ After awaited reads and grant probes, the integration resolves the effective endpoint, physical workspace and project mapping again.
97
+
98
+ Authorization failures discard the handoff permanently. Tokens never enter identity keys.
99
+
100
+ Pending context uses immutable blocks with atomic claims per publication.
101
+ Concurrent tools can deliver separate blocks. Waiting-block deduplication is best-effort.
102
+
103
+ Delivery reads at most 64 blocks per event. Later blocks remain for next events.
104
+ Terminal denial discards the bound scope's pending snapshot.
105
+
106
+ Session caches retain retry counters and lifecycle flags. They never retain memory content.
107
+
108
+ New Kimi, WorkBuddy, CodeBuddy and TraeCode entries use managed identity and branded registration names.
109
+ Only explicit transactional installation writes MCP files for Trae workspaces for operator-mapped projects.
110
+ Hooks only report the workspace-MCP gate. Users manage global settings and workspace SQLite enable switches.
111
+
112
+ The integration reapplies managed settings after every override for paths or banks, including paths without a bank section.
113
+ Project prompt adjustments remain available. Read-only principals cannot restore ingestion, surveys or bank management.
114
+ The shared transport uses the current host dispatcher to disable Undici's timeout caps for headers and bodies.
115
+
116
+ It preserves the request's AbortSignal deadline and proxy setup.
117
+
118
+ Before further background work starts, SessionStart readiness probes propagate terminal authorization failures.
119
+ Transient failures retain their fallback behavior. Append capabilities and accepted-operation cursors belong to one bank.
120
+ Thus, a managed bank switch probes the destination again and starts from a replacement transcript.
121
+
122
+ Installer transactions cover Grok's native hooks file and generated backup. They also cover Trae's generated JSON backups.
123
+
124
+ Multi-source conversation retention preserves rollout contributions in their original order.
125
+ It reads their sources again when it rebuilds the shared document.
126
+ Sources must remain readable, including replies retained before the host flushed their transcript.
127
+ Reconstruction supports up to 16 source references.
128
+
129
+ It rejects any decoded source or assembled document that exceeds 32 MiB of serialized turns or 100,000 turns.
130
+ The following conditions stop the write with a diagnostic:
131
+
132
+ - Missing or ambiguous sources.
133
+ - Unknown legacy continuation boundaries.
134
+ - Moving copied prefixes.
135
+ - Exceeded limits.
136
+
137
+ The integration does not replace the document with incomplete data.
138
+ Single-source and persistent-runtime retention keep their existing size behavior.
139
+
140
+ SessionStart propagates failures to the shared lifecycle entrypoint.
141
+ Hook lifecycle entrypoints observe rejected work, emit one fixed stderr diagnostic and exit 1 without protocol stdout.
142
+ Authorization denial remains terminal. Seed launch waits only for the child spawn or error event.
143
+
144
+ Failure reports omit raw exception text. Manual success means that launch occurred. It does not mean that extraction is complete.
145
+
146
+ Sync requires a confirmed zero active-operation count. Unavailable or malformed operation probes remain unknown.
147
+
148
+ Background settlement retries for up to 15 minutes. At timeout, it reports unconfirmed settlement. Authorization denial remains terminal.
149
+
150
+ Persistent runtimes admit at most 256 sessions per workspace. When the host explicitly disposes of a session, the runtime releases completed state.
151
+ If end events are unavailable, admission evicts the least-recently-used idle session.
152
+ Active prompts, transcript fetches, retains and dirty or buffered cursors stay pinned.
153
+
154
+ If all slots stay pinned, new sessions skip automatic recall and retention with a `session_capacity_reached` diagnostic. Existing work continues.
155
+ Evicted sessions resume with a full transcript replacement.
156
+
157
+ OpenCode2 global events need current scoped-prompt admission. Keyed injection never falls back to another session.
158
+ Cline keeps only the latest prompt ID for up to 256 sessions.
159
+
160
+ Usage counters restart after eviction. Thus, resumed transcripts can repeat local usage records.
161
+
162
+ Managed git-log synchronization retains bounded full replacement semantics. Upstream incremental appends lack an expected-base precondition.
163
+ Two asynchronous writes from the same persisted head can overlap after HEAD changes, despite distinct operation IDs.
164
+ This fork does not import the append implementation until that concurrency contract exists.
165
+
166
+ Authorization denials remain terminal. The maintained git-log tests cover pending writes across changed heads.
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,84 @@
1
- # Temporary Holding Version
1
+ # Coding agents
2
+
3
+ Source: `vectorize-io/hindsight/hindsight-integrations/coding-agents`, v0.8.2.
4
+ This fork does not import the superseded per-agent integrations.
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
+ Before you start a harness, resolve each named environment variable through the deployment's secret manager.
35
+ Give each harness only its own token. Never put token values in JSON, arguments, or this repository.
36
+ First, create matching grants for each principal, bank and scope in Memory Router.
37
+
38
+ Client routing does not grant access. The router controls access through its grants.
39
+
40
+ Install the verified release coding-agents tarball.
41
+ Run its `hindsight-coding-agents install` command.
42
+ The upstream harness hooks, plugin entrypoints, transcript readers, and background ingestion remain packaged.
43
+
44
+ Install from this artifact. Do not replace it with upstream's `npx` installer.
45
+
46
+ Only explicit managed path mappings opt a project in. Child directories inherit their mapping.
47
+ For writable projects, use the principal's write bank in mappings. For a read-only principal, map an assigned read bank.
48
+
49
+ Unmapped paths, unknown harnesses, and missing secrets stop access. The integration does not create dynamic repository banks.
50
+ Normal upstream configuration can adjust prompts and ingestion. It cannot change identity, credentials, endpoint, or grants.
51
+
52
+ The integration ignores `banks.<id>.bank` and path-level bank renames.
53
+ To change banks, change the operator-managed `mapPathToBank` and matching server grants.
54
+
55
+ Coding agents accept and validate legacy managed JSON keys for compatibility. These keys have no effect:
56
+ `recallTimeoutMs`, `recallMaxTokens`, `retainQueueFlushIntervalMs`, `queueMaxAgeMs`, `queueMaxItems`, `queueMaxBytes` and `queueDir`.
57
+ During migration, remove them. Adjust the retrieval settings in normal coding-agent configuration.
58
+
59
+ Coding agents have no OpenClaw-style durable outage queue or replay timer. Ingestion uses the upstream retry and cursor mechanisms.
60
+ Managed `queueMaxAgeMs` accepts `-1` or a positive integer. Unlike OpenClaw, it rejects `0`.
61
+
62
+ `pageRefreshEveryTurns` and `HINDSIGHT_PAGE_REFRESH_EVERY_TURNS` do not reduce hook page-list reads.
63
+ Session caches omit page lists that contain memory. Each prompt hook fetches newly authorized pages.
64
+
65
+ The setting controls how often hooks inject the roster and tool guide. It does not control how often hooks fetch the guide.
66
+ An omitted value or `0` means every turn (`1`). The setting does not configure persistent-plugin refresh behavior.
67
+
68
+ Do not restore cached memory content to control refresh frequency.
69
+
70
+ Recall and reflect read the assigned union, with a 4,096-token shared budget.
71
+ Recall and reflect use the caller's configured deadline:
72
+
73
+ - Automatic retrieval uses `injectTimeoutMs` (7,000 ms).
74
+ - Automatic reflect uses `reflectTimeoutMs` (20,000 ms).
75
+ - The reflect tool uses `reflectToolTimeoutMs`. If omitted, this is the greater of 330,000 ms and the configured `reflectTimeoutMs`. An explicit positive tool timeout can be lower.
76
+
77
+ Generic requests without a caller signal default to 15 seconds.
78
+ If you increase a hook deadline, also allow enough time in the host hook configuration.
79
+ Transient failures return partial results with a diagnostic. Any 401/403 discards all results.
80
+
81
+ Other reads for banks, configuration and pages use an explicit assigned bank. Mutations can target only the write bank.
82
+
83
+ See `DEVIATIONS.md` for intentional differences and `UPSTREAM.json` for exact provenance.
2
84
 
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.
package/UPSTREAM.json ADDED
@@ -0,0 +1,263 @@
1
+ {
2
+ "commit": "a5a619b5ca59c5c39e0f96be6f7a31fabd136bd5",
3
+ "files": {
4
+ ".gitignore": "adb911f1ff2d2103411b4bbe90a167b4c7ef5acd38231fff55519c581f2bbd1b",
5
+ "README.md": "87f35964226b72c8a8bcdfec5f7d6d1d1e07187bd29ebe2b27241f77669ab830",
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": "df25ee2d0444348448a4875682389bed0bec4213d78681a1df4047b9984b5d17",
33
+ "package.json": "c1ea323677927a79f295e0ecb3730c21f982edb59d27254f3b6d3ca6f41d2020",
34
+ "plugin.json": "bc6827dbba0bdf1b48d9c76d017c79ed72203ad31d095a8a124ac25ee13cd407",
35
+ "scripts/build-skill.mjs": "6aa241650e1c76905a86dd6b6ccaa544786ad7246c62554f2c548a064b404b80",
36
+ "skill-src/preamble.md": "711d0830e7192a55fc725226d41c47bf993437687f1d1dfd5a84056c1cbe8b64",
37
+ "skill/SKILL.md": "dd3a78db3e533f5053fb3f478d8de5971d0a4473cc26b48ed1107630bea1ff27",
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": "845ba224163f97d8815b1f7e7efcfec2c5d5e2c8dfb1ec8ee829fb700ad36cc3",
79
+ "src/core/git.test.ts": "3adf7e25fc5ccb6dfbe39b2c7e4edb723c6403f3397a387f5f82d0f83076649f",
80
+ "src/core/git.ts": "74af05b42c09c2d37d0287303a0e149c4c88ebe049bb17e13de86343e6bc7f41",
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.e2e.test.ts": "cf3d328fb6efafeef83dad2822248d7ea76c3e5ab91e91cfc28d06fe643fdcb7",
214
+ "src/harness/hook-lifecycle.test.ts": "c1acb1be5417e777456b248e3243e2d1e71f7463e9a5a00838af328314fd2438",
215
+ "src/harness/hook-lifecycle.ts": "71f704b1227ef50d8eb9a00c833d5a9b677b890f6db3baa976a66932efc52a63",
216
+ "src/harness/opencode.test.ts": "ec7529733b5c599724a8dd80c6873fe4d061920fb8cb5e5204290f4415292244",
217
+ "src/harness/opencode.ts": "9b9d8c1883b5d71d23ce40530c4d2a0886a364e3cac0935e5ed2569b265de694",
218
+ "src/harness/opencode2.test.ts": "4d4fda53e7a583370ec41c5d2170e0e1763fb27ebf06f4c28a795f49a27ebd3c",
219
+ "src/harness/opencode2.ts": "488b1a7deb560b21641fd0fbcbbd34a204ca740c5a0ef0412fe8c1d034591e84",
220
+ "src/harness/pi-extension.test.ts": "644b2f98f8c10287c6cbca4b054c8c76dfb9e44d2fa8130f4f416d5a5121fc50",
221
+ "src/harness/pi-extension.ts": "fcb4c6f3f8146a5fc15253e377a2278e2fedbc74bf58083f85a72004c10bccc0",
222
+ "src/harness/plugin-entry.test.ts": "15de0614b344d63ab3604d1e2dbd8e8d1a4fe2ffee38deab5b3d4cf190827a83",
223
+ "src/harness/plugin-entry.ts": "3b6a14000cc9c8c90ff07af6b0cabc33ad8c32f424b18ac0fef56b8ea29e514b",
224
+ "src/harness/registry.test.ts": "ea3fd02adfeca8c07c695b47ef4c2a3799665e7289a36e08712bca3c376fbd35",
225
+ "src/harness/registry.ts": "75b56ebbc527d4a30efe554e479dc8606b8dd6b205161fd497abe51d886a8d24",
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.2"
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"