opencode-semantic-memory 0.5.1__tar.gz → 0.6.0__tar.gz

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 (359) hide show
  1. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/0/0/d/f/d/00dfda658f2fcde6926308004100798ad2247e2f45d1313ebfef973d +0 -0
  2. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/1/a/a/9/3/1aa93177f63584761c951c731336f631596e12d3b4e0b67c5c164470 +0 -0
  3. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/0/0/d/f/d/00dfda658f2fcde6926308004100798ad2247e2f45d1313ebfef973d → opencode_semantic_memory-0.6.0/.cache/pip/http-v2/1/f/d/9/a/1fd9ade2b751542e96db097082f121ecac23098b3cd95c8a877f0716 +0 -0
  4. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/3/8/4/d/c/384dc122488f965cecab29f1722d1db789313763e22373f38c7fbbef → opencode_semantic_memory-0.6.0/.cache/pip/http-v2/2/a/8/c/5/2a8c5a56aa7e75a42e474464b0e75e78380050445086fa2e6626b678 +0 -0
  5. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/e/5/b/6/2e5b6ced06806dcc8a76919087cfc0d76c4240a8acb8d34511ad15d6 +0 -0
  6. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/2/e/5/b/6/2e5b6ced06806dcc8a76919087cfc0d76c4240a8acb8d34511ad15d6.body +0 -0
  7. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/3/2/7/f/0/327f0380de23010729d12b6a8a48f24b952353d527064c8bf3cfd875 +0 -0
  8. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/3/9/7/4/33974f84394d9a943f68359da08431dab4af9f86c33962982ea21b5f +0 -0
  9. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/3/6/1/b/f/361bf053ab706a1212f013301d35a0c4b0af9cd8cc559d24c73d6a6f +0 -0
  10. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/3/8/4/d/c/384dc122488f965cecab29f1722d1db789313763e22373f38c7fbbef +0 -0
  11. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/b/6/f/4/d/b6f4dcb64ca093b3c3ae363be21ccc40760e60e58f24e7541ab876c7 → opencode_semantic_memory-0.6.0/.cache/pip/http-v2/4/4/e/5/b/44e5b11a6caa92636d8ccfe658d420ba4ed8f67f7f4e835b214255aa +0 -0
  12. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/8/b/2/4/2/8b24226e2da88df4abeee0d8ca6bce79b19ca2bcd5f94b543939c66c → opencode_semantic_memory-0.6.0/.cache/pip/http-v2/4/b/e/0/7/4be07d3ac353e38d2c9e3a257cad36ee2a758fc88b4cd5f0d479a5a9 +0 -0
  13. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/2/a/8/c/5/2a8c5a56aa7e75a42e474464b0e75e78380050445086fa2e6626b678 → opencode_semantic_memory-0.6.0/.cache/pip/http-v2/5/b/5/7/6/5b576ddc69cb2cda42f61333b85f066e4990a5eab5c96e0670cbb445 +0 -0
  14. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/4/b/e/0/7/4be07d3ac353e38d2c9e3a257cad36ee2a758fc88b4cd5f0d479a5a9 → opencode_semantic_memory-0.6.0/.cache/pip/http-v2/5/b/d/8/9/5bd894eeb3dfe1c8aaee1daecdfb74bbb314293813a730238621f077 +0 -0
  15. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/5/b/e/1/1/5be1135dcb7a68de4427c71119ff80f66b671ae16db019966320bd6b +0 -0
  16. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/6/2/e/2/c/62e2caaadb9fd2d0a88b65a7d2043b2c343936491ef44dc753aa91e0 +0 -0
  17. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/6/c/3/7/f/6c37fbfdf697cce77ac3a3add5b61c639e47de9b9b9d1eb63cf429d5 +0 -0
  18. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/6/e/b/6/c/6eb6c130f2e60d2739ddb376352e395a8d86e4f80b402f5f7854d07d +0 -0
  19. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/7/3/3/0/8/73308e5c1402c6bb3b38e3b0f1deabe3b20b6248ed18126597a2a901 +0 -0
  20. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/7/3/3/0/8/73308e5c1402c6bb3b38e3b0f1deabe3b20b6248ed18126597a2a901.body +108 -0
  21. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/c/d/2/3/6/cd2366d413a2e8e87377cfadece7d8173562ece48b2be25218d5714a → opencode_semantic_memory-0.6.0/.cache/pip/http-v2/7/a/5/f/7/7a5f717e7b3fb99ec006f4d173aad55224eb063005c662c586ba0518 +0 -0
  22. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/1/a/a/9/3/1aa93177f63584761c951c731336f631596e12d3b4e0b67c5c164470 → opencode_semantic_memory-0.6.0/.cache/pip/http-v2/8/b/2/4/2/8b24226e2da88df4abeee0d8ca6bce79b19ca2bcd5f94b543939c66c +0 -0
  23. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/8/c/5/4/2/8c54213ac80b2536d9dbc88d24229468300e07d0d4883935e180e4d8 +0 -0
  24. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/d/0/e/1/8d0e104919449355aedb55b5b546bb9fd53f0e1a8ca1b082109464e9 +0 -0
  25. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/8/8/9/3/98893f0b227721063df57aa66878132bb1592344007b1842b6681340 +0 -0
  26. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/8/a/a/c/98aaccf247f7044601019ac72b3323db416a60a3b922e914db3b02bc +0 -0
  27. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/e/2/9/3/9e293f5a39d8466e2b362aa21216c5e4bc32898b0a39bfff792d145e +0 -0
  28. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/e/d/3/7/9ed377a761861346a483546ee4ebbe92a83f2d3a40e917849c2eb140 +0 -0
  29. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/f/9/3/7/9f937e100a133ace0f86a717e0ada066b9e9d82f4d2982affb4e0344 +0 -0
  30. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/4/4/e/5/b/44e5b11a6caa92636d8ccfe658d420ba4ed8f67f7f4e835b214255aa → opencode_semantic_memory-0.6.0/.cache/pip/http-v2/a/4/6/b/7/a46b74c1407dd55ebf9eeb7eb2c73000028b7639a6ed9edc7981950c +0 -0
  31. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/a/e/4/3/7/ae4373cec48f7725665273a898a1c1c6bb89464ae81e2d57d920fc2e +0 -0
  32. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/a/e/4/3/7/ae4373cec48f7725665273a898a1c1c6bb89464ae81e2d57d920fc2e.body +0 -0
  33. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/b/6/f/4/d/b6f4dcb64ca093b3c3ae363be21ccc40760e60e58f24e7541ab876c7 +0 -0
  34. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/b/a/d/c/bbadc07fc383ff650474f2a8246a59ba64776ab6b35809d02400a398 +0 -0
  35. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/c/6/3/0/6/c6306d205b48faecb62eb823053e850df036f38e59b11523829f5c31 +0 -0
  36. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/c/d/2/3/6/cd2366d413a2e8e87377cfadece7d8173562ece48b2be25218d5714a +0 -0
  37. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/c/b/6/1/dcb61fa48ca00e206822fed148e38d1d4494a0b43064c07dcadec607 +0 -0
  38. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/e/a/c/6/1/eac61126daf80149d2a016f12a54eab5e3b5c1dbc77410ff1a97edc4 +0 -0
  39. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/e/d/2/5/d/ed25d1bb38edf83d84e0a08c7e2111da8cb788eddb019df7a96d3213 +0 -0
  40. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/f/3/6/d/5/f36d58c71164036f2cff3c9d0bb0c2b4d1d94bd0814c26b9cbe036b2 +0 -0
  41. opencode_semantic_memory-0.6.0/.cache/pip/http-v2/f/9/6/5/9/f9659e50df363f8369e6abe4c4008418f9de6a660e264dbba624109f +0 -0
  42. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/PKG-INFO +11 -26
  43. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/README.md +10 -25
  44. opencode_semantic_memory-0.6.0/plugin/src/boot-context-formatter.ts +147 -0
  45. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/plugin/src/index.ts +80 -41
  46. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/plugin/src/memory-client.ts +162 -0
  47. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/pyproject.toml +1 -1
  48. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/scripts/setup.sh +48 -46
  49. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/http_server.py +94 -0
  50. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/proactive_context.py +2 -2
  51. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/server.py +66 -7
  52. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/storage/sqlite.py +316 -12
  53. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/1/f/d/9/a/1fd9ade2b751542e96db097082f121ecac23098b3cd95c8a877f0716 +0 -0
  54. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/2/e/5/b/6/2e5b6ced06806dcc8a76919087cfc0d76c4240a8acb8d34511ad15d6.body +0 -0
  55. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/3/2/7/f/0/327f0380de23010729d12b6a8a48f24b952353d527064c8bf3cfd875 +0 -0
  56. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/3/6/1/b/f/361bf053ab706a1212f013301d35a0c4b0af9cd8cc559d24c73d6a6f +0 -0
  57. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/5/b/5/7/6/5b576ddc69cb2cda42f61333b85f066e4990a5eab5c96e0670cbb445 +0 -0
  58. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/5/b/d/8/9/5bd894eeb3dfe1c8aaee1daecdfb74bbb314293813a730238621f077 +0 -0
  59. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/6/c/3/7/f/6c37fbfdf697cce77ac3a3add5b61c639e47de9b9b9d1eb63cf429d5 +0 -0
  60. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/6/e/b/6/c/6eb6c130f2e60d2739ddb376352e395a8d86e4f80b402f5f7854d07d +0 -0
  61. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/7/a/5/f/7/7a5f717e7b3fb99ec006f4d173aad55224eb063005c662c586ba0518 +0 -0
  62. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/8/c/5/4/2/8c54213ac80b2536d9dbc88d24229468300e07d0d4883935e180e4d8 +0 -0
  63. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/a/4/6/b/7/a46b74c1407dd55ebf9eeb7eb2c73000028b7639a6ed9edc7981950c +0 -0
  64. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/c/6/3/0/6/c6306d205b48faecb62eb823053e850df036f38e59b11523829f5c31 +0 -0
  65. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/e/a/c/6/1/eac61126daf80149d2a016f12a54eab5e3b5c1dbc77410ff1a97edc4 +0 -0
  66. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/f/3/6/d/5/f36d58c71164036f2cff3c9d0bb0c2b4d1d94bd0814c26b9cbe036b2 +0 -0
  67. opencode_semantic_memory-0.5.1/.cache/pip/http-v2/f/9/6/5/9/f9659e50df363f8369e6abe4c4008418f9de6a660e264dbba624109f +0 -0
  68. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/0/d/f/d/00dfda658f2fcde6926308004100798ad2247e2f45d1313ebfef973d.body +0 -0
  69. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/2/1/0/5/02105206f60ee8a62c7d923e21bb4bd2d8f3db94c5bb87bd806d5e74 +0 -0
  70. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/2/1/0/5/02105206f60ee8a62c7d923e21bb4bd2d8f3db94c5bb87bd806d5e74.body +0 -0
  71. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/4/3/c/5/043c5436ab58fe00f4947e073da46878751ec535f5fb37ee31d056d4 +0 -0
  72. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/4/3/c/5/043c5436ab58fe00f4947e073da46878751ec535f5fb37ee31d056d4.body +0 -0
  73. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/a/6/b/7/0a6b76df38e61ac4e1f757a1132d2c6424dcb9c23751423afee448ac +0 -0
  74. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/a/6/b/7/0a6b76df38e61ac4e1f757a1132d2c6424dcb9c23751423afee448ac.body +0 -0
  75. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/e/0/5/5/0e055813e840b7b873253f9f5c1cd4a7b06e0256c8de713dec25b93d +0 -0
  76. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/e/0/5/5/0e055813e840b7b873253f9f5c1cd4a7b06e0256c8de713dec25b93d.body +0 -0
  77. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/e/d/3/3/0ed336d749e009fe1267c844e36c442e5b3dc645d5eb9865c545b81a +0 -0
  78. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/0/e/d/3/3/0ed336d749e009fe1267c844e36c442e5b3dc645d5eb9865c545b81a.body +0 -0
  79. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/0/b/2/a/10b2a8b62ea67a4cd49d0d353a09c43832fb02ba7b3a804e29c73417 +0 -0
  80. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/0/b/2/a/10b2a8b62ea67a4cd49d0d353a09c43832fb02ba7b3a804e29c73417.body +0 -0
  81. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/1/4/a/4/114a432b2bd8b6284c600aa9e3f2bd6b180cacf11a94027a1a3ebafd +0 -0
  82. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/1/4/a/4/114a432b2bd8b6284c600aa9e3f2bd6b180cacf11a94027a1a3ebafd.body +0 -0
  83. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/1/5/8/4/11584f31ec41215071940705e8c92c248476c2eb9f8321e581bc327d +0 -0
  84. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/1/5/8/4/11584f31ec41215071940705e8c92c248476c2eb9f8321e581bc327d.body +0 -0
  85. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/2/1/8/1/121816d8cda4aebb8eef187064632e8ae9502de5f2c95b48f84a7404 +0 -0
  86. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/2/1/8/1/121816d8cda4aebb8eef187064632e8ae9502de5f2c95b48f84a7404.body +0 -0
  87. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/5/9/c/5/159c56e4ec3c8e71dacef647c600365ad192876d095dd29b5b5c8ace +0 -0
  88. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/5/9/c/5/159c56e4ec3c8e71dacef647c600365ad192876d095dd29b5b5c8ace.body +0 -0
  89. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/7/1/4/7/1714748212f1de43b155667695179ce5864620d5dacb8cf4aed74142 +0 -0
  90. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/7/1/4/7/1714748212f1de43b155667695179ce5864620d5dacb8cf4aed74142.body +0 -0
  91. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/a/a/9/3/1aa93177f63584761c951c731336f631596e12d3b4e0b67c5c164470.body +0 -0
  92. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/c/8/1/b/1c81b93817f31aa9418642808feaab487be448dbe0773e4bd01b9229 +0 -0
  93. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/c/8/1/b/1c81b93817f31aa9418642808feaab487be448dbe0773e4bd01b9229.body +0 -0
  94. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/c/c/f/2/1ccf222879210db389c3a9cad286511f6d242e8f0f9678f4322d324c +0 -0
  95. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/c/c/f/2/1ccf222879210db389c3a9cad286511f6d242e8f0f9678f4322d324c.body +0 -0
  96. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/1/f/d/9/a/1fd9ade2b751542e96db097082f121ecac23098b3cd95c8a877f0716.body +0 -0
  97. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/8/3/9/a/2839a1e60014c8f0cdf9453a6036b2fef7bf06342761e3d37258b029 +0 -0
  98. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/8/3/9/a/2839a1e60014c8f0cdf9453a6036b2fef7bf06342761e3d37258b029.body +0 -0
  99. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/8/9/c/6/289c6f7419360f0297e671f8a8d5f9af72c5243124e001a3663cac72 +0 -0
  100. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/8/9/c/6/289c6f7419360f0297e671f8a8d5f9af72c5243124e001a3663cac72.body +0 -0
  101. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/a/8/c/5/2a8c5a56aa7e75a42e474464b0e75e78380050445086fa2e6626b678.body +0 -0
  102. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/b/0/a/4/2b0a4fda1a2c912a5a1c5245a8b34b5da87876e311f607befabc98ee +0 -0
  103. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/b/0/a/4/2b0a4fda1a2c912a5a1c5245a8b34b5da87876e311f607befabc98ee.body +0 -0
  104. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/b/4/a/8/2b4a8461b0c542cab777b0b365023942af997bbb25607ac8b3782391 +0 -0
  105. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/2/b/4/a/8/2b4a8461b0c542cab777b0b365023942af997bbb25607ac8b3782391.body +0 -0
  106. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/2/7/f/0/327f0380de23010729d12b6a8a48f24b952353d527064c8bf3cfd875.body +0 -0
  107. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/3/5/e/4/335e4fae780121b49f966edba3e2b1f1f00b06637723db2e7e731f26 +0 -0
  108. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/3/5/e/4/335e4fae780121b49f966edba3e2b1f1f00b06637723db2e7e731f26.body +0 -0
  109. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/3/9/7/4/33974f84394d9a943f68359da08431dab4af9f86c33962982ea21b5f.body +0 -0
  110. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/4/f/3/5/34f35e68224a7918339af3f1e6f6dfcfd5192fd17c6ebb73cd6dd91a +0 -0
  111. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/4/f/3/5/34f35e68224a7918339af3f1e6f6dfcfd5192fd17c6ebb73cd6dd91a.body +0 -0
  112. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/6/1/b/f/361bf053ab706a1212f013301d35a0c4b0af9cd8cc559d24c73d6a6f.body +0 -0
  113. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/6/7/8/5/36785bb40858912d7449d47de604d597609db89b1962e5e1e238542b +0 -0
  114. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/6/7/8/5/36785bb40858912d7449d47de604d597609db89b1962e5e1e238542b.body +0 -0
  115. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/6/a/5/d/36a5d6132567ff173f730ddcc6ab65962d399aaa9f302927ca97b3eb +0 -0
  116. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/6/a/5/d/36a5d6132567ff173f730ddcc6ab65962d399aaa9f302927ca97b3eb.body +0 -0
  117. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/8/4/d/c/384dc122488f965cecab29f1722d1db789313763e22373f38c7fbbef.body +0 -0
  118. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/9/8/1/3/398134aaeacada9feb8b12654a25e878c4f41490786622fc606a7a1c +0 -0
  119. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/9/8/1/3/398134aaeacada9feb8b12654a25e878c4f41490786622fc606a7a1c.body +0 -0
  120. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/f/e/c/3/3fec34894257a80934e9246a0a3053a6a96740587f3ddbf5b4fa6f02 +0 -0
  121. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/3/f/e/c/3/3fec34894257a80934e9246a0a3053a6a96740587f3ddbf5b4fa6f02.body +0 -0
  122. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/1/e/3/c/41e3c68bb5038e20a3418971e070f9076b9eaa6e2c345d3e7f55e6b3 +0 -0
  123. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/1/e/3/c/41e3c68bb5038e20a3418971e070f9076b9eaa6e2c345d3e7f55e6b3.body +0 -0
  124. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/3/6/8/4/436846b847c9c90a13539a872e2084e3f9ca23eb93b4b1cc44b55964 +0 -0
  125. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/3/6/8/4/436846b847c9c90a13539a872e2084e3f9ca23eb93b4b1cc44b55964.body +0 -0
  126. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/3/9/4/0/43940c1ffa291a23244e10de06849b33fae6638badc063f4ade3cc1a +0 -0
  127. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/3/9/4/0/43940c1ffa291a23244e10de06849b33fae6638badc063f4ade3cc1a.body +0 -0
  128. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/4/e/5/b/44e5b11a6caa92636d8ccfe658d420ba4ed8f67f7f4e835b214255aa.body +0 -0
  129. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/5/8/c/7/458c7a7721c5d95619ebccea457715f5b1720258d02ce8362016a55c +0 -0
  130. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/5/8/c/7/458c7a7721c5d95619ebccea457715f5b1720258d02ce8362016a55c.body +0 -0
  131. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/7/7/4/2/47742615f5189ebbf61bb31c8c50f7f39cc38c5173f10ec7146e3989 +0 -0
  132. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/7/7/4/2/47742615f5189ebbf61bb31c8c50f7f39cc38c5173f10ec7146e3989.body +0 -0
  133. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/8/3/8/e/4838e51432c6c88a78b5234e817caf0cf3bf1c3fc933f4861329b80f +0 -0
  134. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/8/3/8/e/4838e51432c6c88a78b5234e817caf0cf3bf1c3fc933f4861329b80f.body +0 -0
  135. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/b/e/0/7/4be07d3ac353e38d2c9e3a257cad36ee2a758fc88b4cd5f0d479a5a9.body +0 -0
  136. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/c/7/5/1/4c751248c578c4b8d67722e607a019d0909438b8cbe82066c393dfde +0 -0
  137. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/c/7/5/1/4c751248c578c4b8d67722e607a019d0909438b8cbe82066c393dfde.body +0 -0
  138. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/e/7/a/c/4e7ac19406cd6f20bb5f8145cca2f74c5f704ef378b0f4334628b440 +0 -0
  139. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/4/e/7/a/c/4e7ac19406cd6f20bb5f8145cca2f74c5f704ef378b0f4334628b440.body +0 -0
  140. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/5/5/9/a/2/559a28d2d50a6d0988e3c56e5d0d411789da84005e4420f1a26bb23e +0 -0
  141. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/5/5/9/a/2/559a28d2d50a6d0988e3c56e5d0d411789da84005e4420f1a26bb23e.body +0 -0
  142. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/5/b/5/7/6/5b576ddc69cb2cda42f61333b85f066e4990a5eab5c96e0670cbb445.body +0 -0
  143. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/5/b/d/8/9/5bd894eeb3dfe1c8aaee1daecdfb74bbb314293813a730238621f077.body +0 -0
  144. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/5/b/e/1/1/5be1135dcb7a68de4427c71119ff80f66b671ae16db019966320bd6b.body +0 -0
  145. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/5/d/5/7/5/5d575692ffb3194739604e9e1622e2fa8c882afc9517932bd2ce40df +0 -0
  146. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/5/d/5/7/5/5d575692ffb3194739604e9e1622e2fa8c882afc9517932bd2ce40df.body +0 -0
  147. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/6/2/e/2/c/62e2caaadb9fd2d0a88b65a7d2043b2c343936491ef44dc753aa91e0.body +0 -0
  148. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/6/c/3/7/f/6c37fbfdf697cce77ac3a3add5b61c639e47de9b9b9d1eb63cf429d5.body +0 -0
  149. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/6/e/b/6/c/6eb6c130f2e60d2739ddb376352e395a8d86e4f80b402f5f7854d07d.body +0 -0
  150. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/6/e/f/c/7/6efc76a8ab292a15bc9bca02c950f72e1ce263d0a701323e9af5a358 +0 -0
  151. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/6/e/f/c/7/6efc76a8ab292a15bc9bca02c950f72e1ce263d0a701323e9af5a358.body +0 -0
  152. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/7/0/b/9/c/70b9c022893d41f3d2b5cd47c3935b21f2c02945201dbf0acd4f302c +0 -0
  153. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/7/0/b/9/c/70b9c022893d41f3d2b5cd47c3935b21f2c02945201dbf0acd4f302c.body +0 -0
  154. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/7/2/f/6/0/72f60d542675f65a9677981499f07ae27fe97e3ac82f8e2224d72113 +0 -0
  155. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/7/2/f/6/0/72f60d542675f65a9677981499f07ae27fe97e3ac82f8e2224d72113.body +0 -0
  156. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/7/6/f/a/7/76fa74418db194f57a03dff1a0900e3bb30fca5fcb07e76f411cd937 +0 -0
  157. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/7/6/f/a/7/76fa74418db194f57a03dff1a0900e3bb30fca5fcb07e76f411cd937.body +0 -0
  158. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/7/7/4/6/9/77469a77c0c5007f8e0ef36b73b2bdb8cbe7d9c8be102fd7d4efaf35 +0 -0
  159. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/7/7/4/6/9/77469a77c0c5007f8e0ef36b73b2bdb8cbe7d9c8be102fd7d4efaf35.body +0 -0
  160. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/7/a/5/f/7/7a5f717e7b3fb99ec006f4d173aad55224eb063005c662c586ba0518.body +0 -0
  161. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/2/6/f/6/826f657d92b77c09dc5003a2b07bdbf9bb82259638dc4579ee230b4d +0 -0
  162. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/2/6/f/6/826f657d92b77c09dc5003a2b07bdbf9bb82259638dc4579ee230b4d.body +0 -0
  163. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/3/d/e/5/83de5cc65dfecf3a6e4c4c0025f0873b77d3c9243e6a038bd0ca39b9 +0 -0
  164. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/3/d/e/5/83de5cc65dfecf3a6e4c4c0025f0873b77d3c9243e6a038bd0ca39b9.body +0 -0
  165. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/6/c/3/3/86c33a8b2bab9735c4478352d670d16d3abe4f1a006f7c8e395d413f +0 -0
  166. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/6/c/3/3/86c33a8b2bab9735c4478352d670d16d3abe4f1a006f7c8e395d413f.body +0 -0
  167. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/8/f/0/6/88f06a944c734c3736badbb02d887cddfeb74de4f837c06db79e749c +0 -0
  168. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/8/f/0/6/88f06a944c734c3736badbb02d887cddfeb74de4f837c06db79e749c.body +0 -0
  169. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/9/6/5/1/896514be855e753c50f0e30b1a0e384a9a68b4db7b2ad62e28f4f6c0 +0 -0
  170. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/9/6/5/1/896514be855e753c50f0e30b1a0e384a9a68b4db7b2ad62e28f4f6c0.body +0 -0
  171. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/a/9/8/c/8a98cf67dec8a2d33fd9e0b916651e7664ecf9dac97e99bcebb334f9 +0 -0
  172. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/a/9/8/c/8a98cf67dec8a2d33fd9e0b916651e7664ecf9dac97e99bcebb334f9.body +0 -0
  173. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/b/2/4/2/8b24226e2da88df4abeee0d8ca6bce79b19ca2bcd5f94b543939c66c.body +0 -0
  174. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/c/5/4/2/8c54213ac80b2536d9dbc88d24229468300e07d0d4883935e180e4d8.body +0 -0
  175. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/d/0/e/1/8d0e104919449355aedb55b5b546bb9fd53f0e1a8ca1b082109464e9.body +0 -0
  176. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/f/0/2/c/8f02ceda6b874413150afa5cd29cd5b10e2fcba552cc363083b9d073 +0 -0
  177. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/8/f/0/2/c/8f02ceda6b874413150afa5cd29cd5b10e2fcba552cc363083b9d073.body +0 -0
  178. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/2/8/c/7/928c755db48c17282ed7a16aa7cbf0ae7aa370d2e20d939a3292aa75 +0 -0
  179. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/2/8/c/7/928c755db48c17282ed7a16aa7cbf0ae7aa370d2e20d939a3292aa75.body +0 -0
  180. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/4/d/0/2/94d022fb6c12e6dc453f3090252f397a80e9c2dbb7341fb45c1b150f +0 -0
  181. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/4/d/0/2/94d022fb6c12e6dc453f3090252f397a80e9c2dbb7341fb45c1b150f.body +0 -0
  182. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/8/8/9/3/98893f0b227721063df57aa66878132bb1592344007b1842b6681340.body +0 -0
  183. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/8/a/a/c/98aaccf247f7044601019ac72b3323db416a60a3b922e914db3b02bc.body +0 -0
  184. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/9/6/4/b/9964b58defdc05f741bfcb3abd6a4eebcb73af9497c5e6d1c828971c +0 -0
  185. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/9/6/4/b/9964b58defdc05f741bfcb3abd6a4eebcb73af9497c5e6d1c828971c.body +0 -0
  186. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/a/a/7/5/9aa7515b527eee59a0b02e85169b5a03e55bdc51dd9ff5255db0c90b +0 -0
  187. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/a/a/7/5/9aa7515b527eee59a0b02e85169b5a03e55bdc51dd9ff5255db0c90b.body +0 -0
  188. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/d/0/1/f/9d01f27365759b718ef77536f4a3d30fd989884b0e53418e1275a79d +0 -0
  189. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/d/0/1/f/9d01f27365759b718ef77536f4a3d30fd989884b0e53418e1275a79d.body +0 -0
  190. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/d/5/d/f/9d5dfb0dedf17094821c37079d37c9f4a1256a7dc457c1192cfa1573 +0 -0
  191. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/d/5/d/f/9d5dfb0dedf17094821c37079d37c9f4a1256a7dc457c1192cfa1573.body +0 -0
  192. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/e/2/9/3/9e293f5a39d8466e2b362aa21216c5e4bc32898b0a39bfff792d145e.body +0 -0
  193. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/e/d/3/7/9ed377a761861346a483546ee4ebbe92a83f2d3a40e917849c2eb140.body +0 -0
  194. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/9/f/9/3/7/9f937e100a133ace0f86a717e0ada066b9e9d82f4d2982affb4e0344.body +0 -0
  195. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/1/9/5/3/a19537d3cf37c122db841d6fe4cd322bc10d1a558bb00d146b85cb9a +0 -0
  196. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/1/9/5/3/a19537d3cf37c122db841d6fe4cd322bc10d1a558bb00d146b85cb9a.body +0 -0
  197. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/4/6/b/7/a46b74c1407dd55ebf9eeb7eb2c73000028b7639a6ed9edc7981950c.body +0 -0
  198. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/6/9/f/7/a69f7807d8670d33b4a34f2be06cdd5812c8d0da9ec20e9dea88a6b5 +0 -0
  199. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/6/9/f/7/a69f7807d8670d33b4a34f2be06cdd5812c8d0da9ec20e9dea88a6b5.body +0 -0
  200. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/c/b/4/e/acb4e40f64eef2a73d680e437d7e413b10909b60941ff39f0528cce7 +0 -0
  201. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/c/b/4/e/acb4e40f64eef2a73d680e437d7e413b10909b60941ff39f0528cce7.body +0 -0
  202. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/d/f/d/a/adfdac1a71358ae7b47b92917f8a6af8c5acecccb52b186c45372c03 +0 -0
  203. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/d/f/d/a/adfdac1a71358ae7b47b92917f8a6af8c5acecccb52b186c45372c03.body +0 -0
  204. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/f/9/2/4/af924cace590eaa7f5a948286460f4a79ae9e083cd5843c70be7bcdc +0 -0
  205. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/a/f/9/2/4/af924cace590eaa7f5a948286460f4a79ae9e083cd5843c70be7bcdc.body +0 -0
  206. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/0/c/3/0/b0c304a2d0d2dd17cd2e818948220da223f52dfe26c6e170a35508ec +0 -0
  207. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/0/c/3/0/b0c304a2d0d2dd17cd2e818948220da223f52dfe26c6e170a35508ec.body +0 -0
  208. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/2/b/3/5/b2b35b24e6fe74c8ffc02d1a4a1ddbd75ba2a82f3623471ee047b2ed +0 -0
  209. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/2/b/3/5/b2b35b24e6fe74c8ffc02d1a4a1ddbd75ba2a82f3623471ee047b2ed.body +0 -0
  210. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/3/6/c/0/b36c03663a3f9be503a38ab3381e55a1c5e2392e9271c976f5e2b956 +0 -0
  211. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/3/6/c/0/b36c03663a3f9be503a38ab3381e55a1c5e2392e9271c976f5e2b956.body +0 -0
  212. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/6/f/4/d/b6f4dcb64ca093b3c3ae363be21ccc40760e60e58f24e7541ab876c7.body +0 -0
  213. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/9/3/9/c/b939c4552b20c2f2a36204f6bb1d2e526af7e96070b43b1d2e2e9ae4 +0 -0
  214. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/9/3/9/c/b939c4552b20c2f2a36204f6bb1d2e526af7e96070b43b1d2e2e9ae4.body +0 -0
  215. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/b/a/d/c/bbadc07fc383ff650474f2a8246a59ba64776ab6b35809d02400a398.body +0 -0
  216. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/c/5/b/a/bc5baf40560ff46e68ca4c99692ddaaf9ca29f999555e36e150ea6f1 +0 -0
  217. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/c/5/b/a/bc5baf40560ff46e68ca4c99692ddaaf9ca29f999555e36e150ea6f1.body +0 -0
  218. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/e/d/4/e/bed4e7c2b407105e5c80f6f3c9c9ce06074cd1bc90409700e4489759 +0 -0
  219. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/b/e/d/4/e/bed4e7c2b407105e5c80f6f3c9c9ce06074cd1bc90409700e4489759.body +0 -0
  220. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/4/1/9/b/c419b5211317322d2f929c4249b25fb3a2a5deaac5ca898ef2889e82 +0 -0
  221. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/4/1/9/b/c419b5211317322d2f929c4249b25fb3a2a5deaac5ca898ef2889e82.body +0 -0
  222. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/5/5/1/6/c5516052911272854847b94d1c7e5dcdda18d04768795c313b9958bc +0 -0
  223. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/5/5/1/6/c5516052911272854847b94d1c7e5dcdda18d04768795c313b9958bc.body +0 -0
  224. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/6/3/0/6/c6306d205b48faecb62eb823053e850df036f38e59b11523829f5c31.body +0 -0
  225. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/6/e/e/4/c6ee4aaa63f8847bfbe25565d073b6c57d624c7f7c4708994746c09c +0 -0
  226. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/6/e/e/4/c6ee4aaa63f8847bfbe25565d073b6c57d624c7f7c4708994746c09c.body +0 -0
  227. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/7/0/c/6/c70c631b8d2fff6b4f7fd6ebc7fad8e500b50f8fa7da0af627bf1f0b +0 -0
  228. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/7/0/c/6/c70c631b8d2fff6b4f7fd6ebc7fad8e500b50f8fa7da0af627bf1f0b.body +0 -0
  229. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/7/7/1/f/c771f1dbbe2a60b07758757a5e715103105323f69596e50cebedebeb +0 -0
  230. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/7/7/1/f/c771f1dbbe2a60b07758757a5e715103105323f69596e50cebedebeb.body +0 -0
  231. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/9/4/a/e/c94ae1695304888e79191be0f465ad0b2a85880ee474d189ee9126ed +0 -0
  232. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/9/4/a/e/c94ae1695304888e79191be0f465ad0b2a85880ee474d189ee9126ed.body +0 -0
  233. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/d/2/3/6/cd2366d413a2e8e87377cfadece7d8173562ece48b2be25218d5714a.body +0 -0
  234. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/d/e/c/3/cdec3d0140a615c153130a37691576ea1707e32a1ab5e60ae5a540f4 +0 -0
  235. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/d/e/c/3/cdec3d0140a615c153130a37691576ea1707e32a1ab5e60ae5a540f4.body +0 -0
  236. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/e/6/7/6/ce6762d91f1e7c3c4bece64762122d18df14d8f8e7532d5f15dfdb37 +0 -0
  237. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/e/6/7/6/ce6762d91f1e7c3c4bece64762122d18df14d8f8e7532d5f15dfdb37.body +0 -0
  238. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/e/8/f/d/ce8fd146fb2bb37feff63c8f224f1a8b178c26a332d13562e417fead +0 -0
  239. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/e/8/f/d/ce8fd146fb2bb37feff63c8f224f1a8b178c26a332d13562e417fead.body +0 -0
  240. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/f/e/5/3/cfe53db609feaba2efb2139916693c3ff859e7f1e6e6e557fbd82ae0 +0 -0
  241. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/c/f/e/5/3/cfe53db609feaba2efb2139916693c3ff859e7f1e6e6e557fbd82ae0.body +0 -0
  242. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/3/7/f/1/d37f17c4b7b25f8b5df752972b9c2301f59d0c55586cac7f15268689 +0 -0
  243. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/3/7/f/1/d37f17c4b7b25f8b5df752972b9c2301f59d0c55586cac7f15268689.body +0 -0
  244. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/5/4/b/b/d54bb21df9a8549867c7c0c30dcdda927be8994b07f4c933db9a04ab +0 -0
  245. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/5/4/b/b/d54bb21df9a8549867c7c0c30dcdda927be8994b07f4c933db9a04ab.body +0 -0
  246. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/5/9/0/b/d590bdf80aa5f6230e0e49a9f10b63aa0c44f77ccd99f25a6ad7841a +0 -0
  247. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/5/9/0/b/d590bdf80aa5f6230e0e49a9f10b63aa0c44f77ccd99f25a6ad7841a.body +0 -0
  248. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/6/b/d/f/d6bdf32d1c16362f083791f397046d0fa2aa6875fb754c605afbef26 +0 -0
  249. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/6/b/d/f/d6bdf32d1c16362f083791f397046d0fa2aa6875fb754c605afbef26.body +0 -0
  250. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/8/f/6/6/d8f6658f33493176286485c04b4350d8cca524052cba0aea8d4cb82e +0 -0
  251. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/8/f/6/6/d8f6658f33493176286485c04b4350d8cca524052cba0aea8d4cb82e.body +0 -0
  252. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/a/4/3/1/da431bf4bec8d6d3c8eda94dac7a309e829b61d10ffd31c5d846f4d5 +0 -0
  253. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/a/4/3/1/da431bf4bec8d6d3c8eda94dac7a309e829b61d10ffd31c5d846f4d5.body +0 -0
  254. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/c/b/6/1/dcb61fa48ca00e206822fed148e38d1d4494a0b43064c07dcadec607.body +0 -0
  255. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/f/1/1/f/df11f101ff0165c7df447aaf1ab175fcd1af98711e498eef0c3d0dfa +0 -0
  256. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/d/f/1/1/f/df11f101ff0165c7df447aaf1ab175fcd1af98711e498eef0c3d0dfa.body +0 -0
  257. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/e/1/6/2/5/e16255f8dfb39b0298f7cb7edd062dd0d3f7ae4c5014de5fc4e17070 +0 -0
  258. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/e/1/6/2/5/e16255f8dfb39b0298f7cb7edd062dd0d3f7ae4c5014de5fc4e17070.body +0 -0
  259. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/e/a/c/6/1/eac61126daf80149d2a016f12a54eab5e3b5c1dbc77410ff1a97edc4.body +0 -0
  260. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/e/d/2/5/d/ed25d1bb38edf83d84e0a08c7e2111da8cb788eddb019df7a96d3213.body +0 -0
  261. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/e/d/3/a/c/ed3acad79bebd48e93f9254a4702825f833ffd8119c8d2cbff43abfc +0 -0
  262. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/e/d/3/a/c/ed3acad79bebd48e93f9254a4702825f833ffd8119c8d2cbff43abfc.body +0 -0
  263. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/3/6/d/5/f36d58c71164036f2cff3c9d0bb0c2b4d1d94bd0814c26b9cbe036b2.body +0 -0
  264. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/9/6/5/9/f9659e50df363f8369e6abe4c4008418f9de6a660e264dbba624109f.body +0 -0
  265. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/9/9/b/3/f99b3487d2b9c55edcd311aeafa35cbf852ab2cc5c3f5d1a1a08e2b5 +0 -0
  266. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/9/9/b/3/f99b3487d2b9c55edcd311aeafa35cbf852ab2cc5c3f5d1a1a08e2b5.body +0 -0
  267. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/c/c/6/f/fcc6fbc30e8c9f7e5cfd4f86edead21005705c18238a90d9673eeb47 +0 -0
  268. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/c/c/6/f/fcc6fbc30e8c9f7e5cfd4f86edead21005705c18238a90d9673eeb47.body +0 -0
  269. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/d/b/e/3/fdbe380932457c2da0b68a223546fd0f6b84c31a8f4a6b63757becce +0 -0
  270. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/d/b/e/3/fdbe380932457c2da0b68a223546fd0f6b84c31a8f4a6b63757becce.body +0 -0
  271. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/f/6/3/f/ff63f8aee48f79bb6d2cdeff8f7863b5820a3c507a2623f007846bb0 +0 -0
  272. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/http-v2/f/f/6/3/f/ff63f8aee48f79bb6d2cdeff8f7863b5820a3c507a2623f007846bb0.body +0 -0
  273. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.cache/pip/selfcheck/fe300af6f7d708c14827daac3afc81fbb8306b73de8dd6e3f1f8ea3b +0 -0
  274. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.gitignore +0 -0
  275. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/.gitlab-ci.yml +0 -0
  276. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/AGENTS.md +0 -0
  277. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/ARCHITECTURE.md +0 -0
  278. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/BOOTSTRAP.md +0 -0
  279. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/CHANGELOG.md +0 -0
  280. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/backfill.log +0 -0
  281. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/com.opencode.memory.plist +0 -0
  282. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/docs/BOOTSTRAP_MEMORIES.md +0 -0
  283. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/docs/GITLAB_WORKFLOW_MEMORIES.md +0 -0
  284. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/docs/TIPS_FOR_HUMANS.md +0 -0
  285. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/flake.lock +0 -0
  286. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/flake.nix +0 -0
  287. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/lefthook.yml +0 -0
  288. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/nix/model.nix +0 -0
  289. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/nix/module.nix +0 -0
  290. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/nix/package.nix +0 -0
  291. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/opencode-mcp-config.json +0 -0
  292. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/opencode-memory-daemon.service +0 -0
  293. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/opencode-memory-reload.path +0 -0
  294. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/opencode-memory-worker.service +0 -0
  295. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/opencode-memory.service +0 -0
  296. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/opencode.json +0 -0
  297. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/plugin/.gitignore +0 -0
  298. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/plugin/README.md +0 -0
  299. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/plugin/package-lock.json +0 -0
  300. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/plugin/package.json +0 -0
  301. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/plugin/src/context-formatter.ts +0 -0
  302. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/plugin/src/entity-extractor.ts +0 -0
  303. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/plugin/tsconfig.json +0 -0
  304. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/scripts/backfill_extraction.py +0 -0
  305. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/scripts/memory-mcp.sh +0 -0
  306. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/scripts/reingest_insights.py +0 -0
  307. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/slack-post-memory-effectiveness.md +0 -0
  308. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/__init__.py +0 -0
  309. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/activity_log.py +0 -0
  310. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/backfill_introspection.py +0 -0
  311. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/background_worker.py +0 -0
  312. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/cache.py +0 -0
  313. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/cli.py +0 -0
  314. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/config.py +0 -0
  315. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/daemon.py +0 -0
  316. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/enrichment/__init__.py +0 -0
  317. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/enrichment/gitlab.py +0 -0
  318. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/enrichment/orbit.py +0 -0
  319. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/enrichment_worker.py +0 -0
  320. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/extraction.py +0 -0
  321. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/historical_ingest.py +0 -0
  322. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/indexing/__init__.py +0 -0
  323. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/indexing/code_structure.py +0 -0
  324. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/ingestion/__init__.py +0 -0
  325. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/ingestion/embeddings.py +0 -0
  326. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/ingestion/extractors.py +0 -0
  327. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/ingestion/opencode_db.py +0 -0
  328. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/ingestion/parser.py +0 -0
  329. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/ingestion/watcher.py +0 -0
  330. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/linking/__init__.py +0 -0
  331. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/linking/linker.py +0 -0
  332. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/llm.py +0 -0
  333. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/metrics.py +0 -0
  334. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/models.py +0 -0
  335. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/project.py +0 -0
  336. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/query/__init__.py +0 -0
  337. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/query/hybrid.py +0 -0
  338. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/session/__init__.py +0 -0
  339. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/session/registry.py +0 -0
  340. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/spider/__init__.py +0 -0
  341. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/spider/crawler.py +0 -0
  342. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/spider/references.py +0 -0
  343. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/storage/__init__.py +0 -0
  344. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/src/opencode_memory/storage/vectors.py +0 -0
  345. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/__init__.py +0 -0
  346. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_cache.py +0 -0
  347. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_config.py +0 -0
  348. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_daemon.py +0 -0
  349. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_extractors.py +0 -0
  350. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_http_server.py +0 -0
  351. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_linking.py +0 -0
  352. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_llm.py +0 -0
  353. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_opencode_db.py +0 -0
  354. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_orbit.py +0 -0
  355. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_parser.py +0 -0
  356. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_proactive_context.py +0 -0
  357. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_server.py +0 -0
  358. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/tests/test_storage.py +0 -0
  359. {opencode_semantic_memory-0.5.1 → opencode_semantic_memory-0.6.0}/uv.lock +0 -0
@@ -0,0 +1,108 @@
1
+ Metadata-Version: 2.4
2
+ Name: zipp
3
+ Version: 4.1.0
4
+ Summary: Backport of pathlib-compatible object wrapper for zip files
5
+ Author-email: "Jason R. Coombs" <jaraco@jaraco.com>
6
+ License-Expression: MIT
7
+ Project-URL: Source, https://github.com/jaraco/zipp
8
+ Classifier: Development Status :: 5 - Production/Stable
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3 :: Only
12
+ Requires-Python: >=3.10
13
+ Description-Content-Type: text/x-rst
14
+ License-File: LICENSE
15
+ Provides-Extra: test
16
+ Requires-Dist: pytest!=8.1.*,>=6; extra == "test"
17
+ Requires-Dist: jaraco.itertools; extra == "test"
18
+ Requires-Dist: jaraco.functools; extra == "test"
19
+ Requires-Dist: more_itertools; extra == "test"
20
+ Requires-Dist: big-O; extra == "test"
21
+ Requires-Dist: pytest-ignore-flaky; extra == "test"
22
+ Requires-Dist: jaraco.test; extra == "test"
23
+ Provides-Extra: doc
24
+ Requires-Dist: sphinx>=3.5; extra == "doc"
25
+ Requires-Dist: jaraco.packaging>=9.3; extra == "doc"
26
+ Requires-Dist: rst.linker>=1.9; extra == "doc"
27
+ Requires-Dist: furo; extra == "doc"
28
+ Requires-Dist: sphinx-lint; extra == "doc"
29
+ Requires-Dist: jaraco.tidelift>=1.4; extra == "doc"
30
+ Provides-Extra: check
31
+ Requires-Dist: pytest-checkdocs>=2.14; extra == "check"
32
+ Requires-Dist: pytest-ruff>=0.2.1; sys_platform != "cygwin" and extra == "check"
33
+ Provides-Extra: cover
34
+ Requires-Dist: pytest-cov; extra == "cover"
35
+ Provides-Extra: enabler
36
+ Requires-Dist: pytest-enabler>=3.4; extra == "enabler"
37
+ Provides-Extra: type
38
+ Requires-Dist: pytest-mypy>=1.0.1; platform_python_implementation != "PyPy" and extra == "type"
39
+ Dynamic: license-file
40
+
41
+ .. image:: https://img.shields.io/pypi/v/zipp.svg
42
+ :target: https://pypi.org/project/zipp
43
+
44
+ .. image:: https://img.shields.io/pypi/pyversions/zipp.svg
45
+
46
+ .. image:: https://github.com/jaraco/zipp/actions/workflows/main.yml/badge.svg
47
+ :target: https://github.com/jaraco/zipp/actions?query=workflow%3A%22tests%22
48
+ :alt: tests
49
+
50
+ .. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
51
+ :target: https://github.com/astral-sh/ruff
52
+ :alt: Ruff
53
+
54
+ .. image:: https://readthedocs.org/projects/zipp/badge/?version=latest
55
+ .. :target: https://zipp.readthedocs.io/en/latest/?badge=latest
56
+
57
+ .. image:: https://img.shields.io/badge/skeleton-2026-informational
58
+ :target: https://blog.jaraco.com/skeleton
59
+
60
+ .. image:: https://tidelift.com/badges/package/pypi/zipp
61
+ :target: https://tidelift.com/subscription/pkg/pypi-zipp?utm_source=pypi-zipp&utm_medium=readme
62
+
63
+
64
+ A pathlib-compatible Zipfile object wrapper. Official backport of the standard library
65
+ `Path object <https://docs.python.org/3.8/library/zipfile.html#path-objects>`_.
66
+
67
+
68
+ Compatibility
69
+ =============
70
+
71
+ New features are introduced in this third-party library and later merged
72
+ into CPython. The following table indicates which versions of this library
73
+ were contributed to different versions in the standard library:
74
+
75
+ .. list-table::
76
+ :header-rows: 1
77
+
78
+ * - zipp
79
+ - stdlib
80
+ * - 3.21
81
+ - 3.15
82
+ * - 3.18
83
+ - 3.13
84
+ * - 3.16
85
+ - 3.12
86
+ * - 3.5
87
+ - 3.11
88
+ * - 3.2
89
+ - 3.10
90
+ * - 3.3 ??
91
+ - 3.9
92
+ * - 1.0
93
+ - 3.8
94
+
95
+
96
+ Usage
97
+ =====
98
+
99
+ Use ``zipp.Path`` in place of ``zipfile.Path`` on any Python.
100
+
101
+ For Enterprise
102
+ ==============
103
+
104
+ Available as part of the Tidelift Subscription.
105
+
106
+ This project and the maintainers of thousands of other packages are working with Tidelift to deliver one enterprise subscription that covers all of the open source you use.
107
+
108
+ `Learn more <https://tidelift.com/subscription/pkg/pypi-zipp?utm_source=pypi-zipp&utm_medium=referral&utm_campaign=github>`_.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: opencode-semantic-memory
3
- Version: 0.5.1
3
+ Version: 0.6.0
4
4
  Summary: Persistent semantic memory system for OpenCode sessions
5
5
  Author-email: Gregory Havenga <ghavenga@gitlab.com>
6
6
  License-Expression: MIT
@@ -267,35 +267,20 @@ The setup script automatically builds and configures the plugin if Node.js 20+ i
267
267
 
268
268
  For more details, see the [plugin documentation](plugin/README.md).
269
269
 
270
- ### 4. Configure the Agent
270
+ ### 4. Boot Context (Automatic)
271
271
 
272
- Add to `~/.config/opencode/AGENTS.md`:
272
+ When using the proactive context plugin (step 3), boot context is **automatically injected** at session start. This includes:
273
+ - Active parallel sessions (collision warning)
274
+ - Standing instructions (boot gates)
275
+ - Unresolved blockers
276
+ - Due reminders
277
+ - Memory usage instructions
273
278
 
274
- ```markdown
275
- # Agent Instructions
279
+ **No manual configuration needed** - the plugin handles everything.
276
280
 
277
- At session start, always call `memory_get_boot_context` to load prior context, active sessions, and blockers.
281
+ **Legacy AGENTS.md:** If you have an existing `~/.config/opencode/AGENTS.md` with `memory_get_boot_context()` instructions, you can remove it - boot context is now auto-injected. The setup script will offer to clean this up.
278
282
 
279
- ## Memory System
280
-
281
- The memory system provides persistent context across sessions.
282
-
283
- ### Proactive Usage
284
-
285
- Call `memory_remember` when:
286
- - You make a decision about approach
287
- - You hit a blocker
288
- - You learn how to do something
289
- - You discover an interesting fact
290
-
291
- Call `memory_recall(query)` before:
292
- - Using an unfamiliar API
293
- - Making assumptions about how something works
294
-
295
- Call `memory_get_context(entity_ref)` before working on any MR/issue/epic.
296
-
297
- Categories: decision, blocker, procedure, fact, event, directive
298
- ```
283
+ **Without the plugin:** If you're not using the proactive context plugin (e.g., using Claude CLI or Ollama), you'll need to call `memory_get_boot_context()` manually at session start
299
284
 
300
285
  ## Configuration
301
286
 
@@ -232,35 +232,20 @@ The setup script automatically builds and configures the plugin if Node.js 20+ i
232
232
 
233
233
  For more details, see the [plugin documentation](plugin/README.md).
234
234
 
235
- ### 4. Configure the Agent
235
+ ### 4. Boot Context (Automatic)
236
236
 
237
- Add to `~/.config/opencode/AGENTS.md`:
237
+ When using the proactive context plugin (step 3), boot context is **automatically injected** at session start. This includes:
238
+ - Active parallel sessions (collision warning)
239
+ - Standing instructions (boot gates)
240
+ - Unresolved blockers
241
+ - Due reminders
242
+ - Memory usage instructions
238
243
 
239
- ```markdown
240
- # Agent Instructions
244
+ **No manual configuration needed** - the plugin handles everything.
241
245
 
242
- At session start, always call `memory_get_boot_context` to load prior context, active sessions, and blockers.
246
+ **Legacy AGENTS.md:** If you have an existing `~/.config/opencode/AGENTS.md` with `memory_get_boot_context()` instructions, you can remove it - boot context is now auto-injected. The setup script will offer to clean this up.
243
247
 
244
- ## Memory System
245
-
246
- The memory system provides persistent context across sessions.
247
-
248
- ### Proactive Usage
249
-
250
- Call `memory_remember` when:
251
- - You make a decision about approach
252
- - You hit a blocker
253
- - You learn how to do something
254
- - You discover an interesting fact
255
-
256
- Call `memory_recall(query)` before:
257
- - Using an unfamiliar API
258
- - Making assumptions about how something works
259
-
260
- Call `memory_get_context(entity_ref)` before working on any MR/issue/epic.
261
-
262
- Categories: decision, blocker, procedure, fact, event, directive
263
- ```
248
+ **Without the plugin:** If you're not using the proactive context plugin (e.g., using Claude CLI or Ollama), you'll need to call `memory_get_boot_context()` manually at session start
264
249
 
265
250
  ## Configuration
266
251
 
@@ -0,0 +1,147 @@
1
+ /**
2
+ * Format boot context for injection into the system prompt.
3
+ */
4
+
5
+ import type { BootContextResponse } from './memory-client.js';
6
+
7
+ export interface FormattedBootContext {
8
+ text: string;
9
+ hasContent: boolean;
10
+ memoryIds: number[];
11
+ tokenEstimate: number;
12
+ sizeWarning?: string;
13
+ }
14
+
15
+ /**
16
+ * Format boot context response into markdown for system prompt injection.
17
+ */
18
+ export function formatBootContextForSystem(
19
+ boot: BootContextResponse,
20
+ sessionId: string
21
+ ): FormattedBootContext {
22
+ const sections: string[] = [];
23
+ const memoryIds = boot._memory_ids_shown ?? [];
24
+
25
+ sections.push('## Boot Context (Auto-Injected)\n');
26
+ sections.push('This context was automatically loaded from memory at session start.\n');
27
+
28
+ // Identity section
29
+ if (boot.identity) {
30
+ const { primary_project, git_branch } = boot.identity;
31
+ if (primary_project) {
32
+ sections.push(`**Project:** ${primary_project}`);
33
+ }
34
+ if (git_branch) {
35
+ sections.push(`**Branch:** ${git_branch}`);
36
+ }
37
+ }
38
+
39
+ // Active parallel sessions (collision warning)
40
+ if (boot.active_sessions && boot.active_sessions.length > 0) {
41
+ sections.push('\n### Active Parallel Sessions');
42
+ sections.push('⚠️ Other sessions are active. Check claimed items to avoid conflicts.\n');
43
+ for (const session of boot.active_sessions) {
44
+ const claimed = session.claimed_items?.join(', ') || 'none';
45
+ sections.push(`- **${session.id}**: ${session.working_on || 'unknown'} (claims: ${claimed})`);
46
+ }
47
+ }
48
+
49
+ // Boot gates (critical standing instructions)
50
+ if (boot.boot_gates && boot.boot_gates.length > 0) {
51
+ sections.push('\n### ⛔ STANDING INSTRUCTIONS (MUST FOLLOW)\n');
52
+ sections.push(`**CRITICAL:** Before responding to EVERY user message, scan these ${boot.boot_gates.length} triggers. If the user's message matches a trigger (e.g., mentions "screenshot", asks to "create MR", etc.), you MUST follow that instruction.\n`);
53
+ for (const gate of boot.boot_gates) {
54
+ sections.push(`⛔ ${gate.content}`);
55
+ }
56
+ }
57
+
58
+ // Unresolved blockers
59
+ if (boot.unresolved_blockers && boot.unresolved_blockers.length > 0) {
60
+ sections.push('\n### Unresolved Blockers');
61
+ sections.push('These issues are blocking progress:\n');
62
+ for (const blocker of boot.unresolved_blockers.slice(0, 5)) {
63
+ const content = blocker.content.length > 150
64
+ ? blocker.content.substring(0, 150) + '...'
65
+ : blocker.content;
66
+ sections.push(`- ${content} (${blocker.age})`);
67
+ }
68
+ if (boot.unresolved_blockers.length > 5) {
69
+ sections.push(`- ... and ${boot.unresolved_blockers.length - 5} more`);
70
+ }
71
+ }
72
+
73
+ // Due reminders
74
+ if (boot.due_reminders && boot.due_reminders.length > 0) {
75
+ sections.push('\n### Due Reminders\n');
76
+ for (const reminder of boot.due_reminders) {
77
+ sections.push(`- **${reminder.what || 'Reminder'}**: ${reminder.content.substring(0, 200)}`);
78
+ }
79
+ }
80
+
81
+ // Recent sessions (potential continuations)
82
+ if (boot.recent_sessions && boot.recent_sessions.length > 0) {
83
+ sections.push('\n### Recent Sessions');
84
+ sections.push('(May be continuations of current work)\n');
85
+ for (const session of boot.recent_sessions.slice(0, 3)) {
86
+ sections.push(`- ${session.title}`);
87
+ }
88
+ }
89
+
90
+ // Key procedures
91
+ if (boot.key_procedures && boot.key_procedures.length > 0) {
92
+ sections.push('\n### Key Procedures\n');
93
+ for (const proc of boot.key_procedures) {
94
+ sections.push(`- **${proc.what}** (${proc.age})`);
95
+ }
96
+ }
97
+
98
+ // Stale procedures needing review
99
+ if (boot.stale_procedures && boot.stale_procedures.length > 0) {
100
+ sections.push('\n### Procedures Needing Review');
101
+ sections.push('These may be outdated:\n');
102
+ for (const proc of boot.stale_procedures.slice(0, 3)) {
103
+ sections.push(`- ${proc.what} (last reviewed: ${proc.last_reviewed})`);
104
+ }
105
+ }
106
+
107
+ // Size warning
108
+ if (boot._size_warning) {
109
+ sections.push(`\n⚠️ **${boot._size_warning}**`);
110
+ }
111
+
112
+ // Memory usage instructions
113
+ sections.push('\n### Memory Usage');
114
+ sections.push(`
115
+ **Throughout this session:**
116
+ - Before working on an MR/issue/epic, call \`memory_get_context(entity_ref)\` to get history
117
+ - Use \`memory_claim_item(item_ref)\` before making changes to prevent conflicts
118
+ - Store important decisions, blockers, and procedures with \`memory_remember()\`
119
+ - Release claimed items when done with \`memory_release_item()\`
120
+ - Use \`memory_recall(query)\` to search for relevant context
121
+
122
+ **Categories for memory_remember:**
123
+ - \`decision\` - Architectural/design choices
124
+ - \`blocker\` - Obstacles preventing progress
125
+ - \`procedure\` - How-to knowledge, workflows
126
+ - \`fact\` - Project-specific information
127
+ - \`plan\` - Sequence of steps with end state
128
+ - \`idea\` - Future possibilities, deferred considerations
129
+ `);
130
+
131
+ // Session tracking footer
132
+ sections.push('### Session Tracking');
133
+ sections.push(`Session ID: \`${sessionId}\``);
134
+ sections.push('When this session ends, include the session ID in any summary for continuation tracking.');
135
+
136
+ const text = sections.join('\n');
137
+
138
+ return {
139
+ text,
140
+ hasContent: (boot.boot_gates?.length ?? 0) > 0 ||
141
+ (boot.unresolved_blockers?.length ?? 0) > 0 ||
142
+ (boot.due_reminders?.length ?? 0) > 0,
143
+ memoryIds,
144
+ tokenEstimate: boot._token_estimate ?? Math.floor(text.length / 4),
145
+ sizeWarning: boot._size_warning,
146
+ };
147
+ }
@@ -16,8 +16,9 @@
16
16
  import type { Plugin, PluginModule, Hooks } from '@opencode-ai/plugin';
17
17
  import type { Part } from '@opencode-ai/sdk';
18
18
  import { extractEntities, getAllEntityRefs } from './entity-extractor.js';
19
- import { MemoryClient, type ProactiveContextResponse, type WorkspaceInitResponse } from './memory-client.js';
19
+ import { MemoryClient, type ProactiveContextResponse, type BootContextResponse } from './memory-client.js';
20
20
  import { formatContextForInjection } from './context-formatter.js';
21
+ import { formatBootContextForSystem, type FormattedBootContext } from './boot-context-formatter.js';
21
22
  import { appendFileSync } from 'node:fs';
22
23
 
23
24
  const DEBUG_LOG = '/tmp/opencode-memory-plugin.log';
@@ -30,6 +31,12 @@ function debugLog(msg: string) {
30
31
  // Cache context per session to share between hooks
31
32
  const sessionContextCache = new Map<string, ProactiveContextResponse | null>();
32
33
 
34
+ // Cache boot context for first message injection
35
+ const bootContextCache = new Map<string, FormattedBootContext | null>();
36
+
37
+ // Track which sessions have received boot context (first message detection)
38
+ const sessionBootInjected = new Set<string>();
39
+
33
40
  // Track memory IDs already injected per session to avoid redundant injection
34
41
  const injectedMemoryIds = new Map<string, Set<number>>();
35
42
 
@@ -129,6 +136,41 @@ export const server: Plugin = async (input, _options) => {
129
136
  'chat.message': async ({ sessionID }, output) => {
130
137
  debugLog(`[chat.message] sessionID=${sessionID} parts=${output.parts.length}`);
131
138
  try {
139
+ // Check if this is the first message for this session
140
+ const isFirstMessage = !sessionBootInjected.has(sessionID);
141
+
142
+ let bootContextText: string | null = null;
143
+
144
+ if (isFirstMessage) {
145
+ debugLog(`[chat.message] first message for session ${sessionID}, fetching boot context`);
146
+ sessionBootInjected.add(sessionID);
147
+
148
+ // Fetch boot context for injection
149
+ const bootContext = await client.getBootContext(defaultProject, sessionDirectory);
150
+
151
+ if (bootContext) {
152
+ // Format boot context
153
+ const formatted = formatBootContextForSystem(bootContext, sessionID);
154
+ bootContextText = formatted.text;
155
+
156
+ // Initialize injected IDs with boot context IDs to prevent re-injection
157
+ const bootIds = new Set(formatted.memoryIds);
158
+ injectedMemoryIds.set(sessionID, bootIds);
159
+
160
+ debugLog(`[chat.message] boot context fetched: ${formatted.memoryIds.length} memory IDs, ${formatted.tokenEstimate} tokens`);
161
+
162
+ // Register session with memory server (fire-and-forget)
163
+ client.registerSession({
164
+ sessionId: sessionID,
165
+ project: bootContext.identity?.primary_project,
166
+ gitBranch: bootContext.identity?.git_branch,
167
+ bootContextIds: formatted.memoryIds,
168
+ }).catch(() => { /* silent */ });
169
+ } else {
170
+ debugLog(`[chat.message] no boot context available`);
171
+ }
172
+ }
173
+
132
174
  // Extract text from user's message parts
133
175
  const userText = extractTextFromParts(output.parts);
134
176
  debugLog(`[chat.message] userText="${userText.substring(0, 100)}..."`);
@@ -142,11 +184,11 @@ export const server: Plugin = async (input, _options) => {
142
184
  const entities = extractEntities(userText);
143
185
  const allEntityRefs = getAllEntityRefs(entities);
144
186
 
145
- // Get previously injected IDs for this session
187
+ // Get previously injected IDs for this session (includes boot context IDs)
146
188
  const previouslyInjected = injectedMemoryIds.get(sessionID);
147
189
  const excludeIds = previouslyInjected ? Array.from(previouslyInjected) : undefined;
148
190
 
149
- // Fetch context from memory service, excluding already-injected memories
191
+ // Fetch proactive context from memory service, excluding boot context + already-injected
150
192
  const context = await client.getProactiveContext(
151
193
  userText,
152
194
  allEntityRefs.length > 0 ? allEntityRefs : undefined,
@@ -156,9 +198,7 @@ export const server: Plugin = async (input, _options) => {
156
198
  sessionDirectory // Pass session directory for git-based project detection
157
199
  );
158
200
 
159
- // Cache for system transform hook
160
- sessionContextCache.set(sessionID, context);
161
- debugLog(`[chat.message] cached context: ${context?.items?.length ?? 0} items`);
201
+ debugLog(`[chat.message] proactive context: ${context?.items?.length ?? 0} items`);
162
202
 
163
203
  // Track which memory IDs we're about to inject
164
204
  if (context && context.items.length > 0) {
@@ -170,10 +210,26 @@ export const server: Plugin = async (input, _options) => {
170
210
  sessionIds.add(item.memory_id);
171
211
  }
172
212
  }
213
+
214
+ // Cache boot context and proactive context for system.transform hook
215
+ if (bootContextText) {
216
+ bootContextCache.set(sessionID, { text: bootContextText, hasContent: true, memoryIds: [], tokenEstimate: 0 } as FormattedBootContext);
217
+ debugLog(`[chat.message] boot context cached for system.transform`);
218
+ } else {
219
+ // Clear boot context cache for subsequent messages
220
+ bootContextCache.delete(sessionID);
221
+ }
222
+
223
+ if (context && context.items.length > 0) {
224
+ sessionContextCache.set(sessionID, context);
225
+ debugLog(`[chat.message] proactive context cached for system.transform`);
226
+ } else {
227
+ sessionContextCache.set(sessionID, null);
228
+ }
173
229
 
174
- } catch {
230
+ } catch (err) {
175
231
  // Silent failure - graceful degradation
176
- sessionContextCache.set(sessionID, null);
232
+ debugLog(`[chat.message] error: ${err}`);
177
233
  }
178
234
  },
179
235
 
@@ -181,47 +237,30 @@ export const server: Plugin = async (input, _options) => {
181
237
  * Hook: experimental.chat.system.transform
182
238
  *
183
239
  * Called before messages are sent to the LLM.
184
- * We inject the context into the system prompt here.
240
+ * Injects boot context + proactive context into system prompt.
241
+ * Note: This hook may be called multiple times per message - we inject on every call.
185
242
  */
186
243
  'experimental.chat.system.transform': async ({ sessionID }, output) => {
187
- debugLog(`[system.transform] sessionID=${sessionID}`);
244
+ debugLog(`[system.transform] sessionID=${sessionID} output.system.length=${output.system?.length ?? 'undefined'}`);
188
245
  if (!sessionID) {
189
- debugLog(`[system.transform] no sessionID, skipping`);
190
246
  return;
191
247
  }
192
248
 
193
- const context = sessionContextCache.get(sessionID);
194
- debugLog(`[system.transform] cached context: ${context?.items?.length ?? 0} items`);
195
-
196
- // Clean up cache entry (one-time use per message)
197
- sessionContextCache.delete(sessionID);
198
-
199
- if (!context || context.items.length === 0) {
200
- return;
249
+ // Inject boot context (on first turn, inject on every hook call)
250
+ const bootContext = bootContextCache.get(sessionID);
251
+ if (bootContext && bootContext.hasContent) {
252
+ output.system.push(bootContext.text);
253
+ debugLog(`[system.transform] injected boot context, output.system.length now=${output.system.length}`);
201
254
  }
202
255
 
203
- // Increment turn number for this session
204
- const turnNumber = (sessionTurnNumbers.get(sessionID) ?? 0) + 1;
205
- sessionTurnNumbers.set(sessionID, turnNumber);
206
-
207
- // Format and append to system prompt
208
- const contextSection = formatContextForSystem(context);
209
-
210
- if (contextSection) {
211
- output.system.push(contextSection);
212
-
213
- // Log the injection for effectiveness tracking (fire and forget)
214
- client.logInjection({
215
- sessionId: sessionID,
216
- turnNumber,
217
- memoryIds: context.items.map(item => item.memory_id),
218
- relevanceSummary: context.relevance_summary,
219
- queryPreview: context.semantic_query,
220
- totalTokens: context.total_tokens,
221
- itemsCount: context.items_count,
222
- }).catch(() => { /* silent */ });
223
-
224
- debugLog(`[system.transform] logged injection: turn=${turnNumber} items=${context.items_count}`);
256
+ // Inject proactive context
257
+ const context = sessionContextCache.get(sessionID);
258
+ if (context && context.items && context.items.length > 0) {
259
+ const contextSection = formatContextForSystem(context);
260
+ if (contextSection) {
261
+ output.system.push(contextSection);
262
+ debugLog(`[system.transform] injected proactive context, output.system.length now=${output.system.length}`);
263
+ }
225
264
  }
226
265
  },
227
266
  };