@rubytech/create-maxy-code 0.1.63 → 0.1.65

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 (661) hide show
  1. package/package.json +1 -1
  2. package/payload/platform/plugins/docs/references/admin-session.md +6 -3
  3. package/payload/platform/plugins/docs/references/internals.md +7 -1
  4. package/payload/platform/plugins/docs/references/platform.md +4 -0
  5. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/_helpers/emit-capture.d.ts +22 -0
  6. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/_helpers/emit-capture.d.ts.map +1 -0
  7. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/_helpers/emit-capture.js +44 -0
  8. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/_helpers/emit-capture.js.map +1 -0
  9. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights-emit.test.d.ts +2 -0
  10. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights-emit.test.d.ts.map +1 -0
  11. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights-emit.test.js +68 -0
  12. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights-emit.test.js.map +1 -0
  13. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection-emit.test.d.ts +2 -0
  14. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection-emit.test.d.ts.map +1 -0
  15. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection-emit.test.js +48 -0
  16. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection-emit.test.js.map +1 -0
  17. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-memory-expunge-emit.test.d.ts +2 -0
  18. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-memory-expunge-emit.test.d.ts.map +1 -0
  19. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-memory-expunge-emit.test.js +53 -0
  20. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-memory-expunge-emit.test.js.map +1 -0
  21. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/graph-prune-denylist-add-emit.test.d.ts +2 -0
  22. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/graph-prune-denylist-add-emit.test.d.ts.map +1 -0
  23. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/graph-prune-denylist-add-emit.test.js +40 -0
  24. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/graph-prune-denylist-add-emit.test.js.map +1 -0
  25. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/graph-prune-denylist-remove-emit.test.d.ts +2 -0
  26. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/graph-prune-denylist-remove-emit.test.d.ts.map +1 -0
  27. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/graph-prune-denylist-remove-emit.test.js +39 -0
  28. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/graph-prune-denylist-remove-emit.test.js.map +1 -0
  29. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-archive-write-emit.test.d.ts +2 -0
  30. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-archive-write-emit.test.d.ts.map +1 -0
  31. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-archive-write-emit.test.js +88 -0
  32. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-archive-write-emit.test.js.map +1 -0
  33. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-classify-emit.test.d.ts +2 -0
  34. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-classify-emit.test.d.ts.map +1 -0
  35. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-classify-emit.test.js +58 -0
  36. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-classify-emit.test.js.map +1 -0
  37. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-emit.test.d.ts +2 -0
  38. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-emit.test.d.ts.map +1 -0
  39. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-emit.test.js +58 -0
  40. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-emit.test.js.map +1 -0
  41. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-edit-attachment-emit.test.d.ts +2 -0
  42. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-edit-attachment-emit.test.d.ts.map +1 -0
  43. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-edit-attachment-emit.test.js +70 -0
  44. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-edit-attachment-emit.test.js.map +1 -0
  45. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-empty-trash-emit.test.d.ts +2 -0
  46. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-empty-trash-emit.test.d.ts.map +1 -0
  47. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-empty-trash-emit.test.js +48 -0
  48. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-empty-trash-emit.test.js.map +1 -0
  49. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-emit.test.d.ts +2 -0
  50. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-emit.test.d.ts.map +1 -0
  51. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-emit.test.js +74 -0
  52. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-emit.test.js.map +1 -0
  53. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-extract-emit.test.d.ts +2 -0
  54. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-extract-emit.test.d.ts.map +1 -0
  55. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-extract-emit.test.js +47 -0
  56. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-extract-emit.test.js.map +1 -0
  57. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-web-emit.test.d.ts +2 -0
  58. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-web-emit.test.d.ts.map +1 -0
  59. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-web-emit.test.js +65 -0
  60. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest-web-emit.test.js.map +1 -0
  61. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-reindex-emit.test.d.ts +2 -0
  62. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-reindex-emit.test.d.ts.map +1 -0
  63. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-reindex-emit.test.js +43 -0
  64. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-reindex-emit.test.js.map +1 -0
  65. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-rename-attachment-emit.test.d.ts +2 -0
  66. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-rename-attachment-emit.test.d.ts.map +1 -0
  67. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-rename-attachment-emit.test.js +65 -0
  68. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-rename-attachment-emit.test.js.map +1 -0
  69. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-restore-emit.test.d.ts +2 -0
  70. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-restore-emit.test.d.ts.map +1 -0
  71. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-restore-emit.test.js +49 -0
  72. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-restore-emit.test.js.map +1 -0
  73. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-update-emit.test.d.ts +2 -0
  74. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-update-emit.test.d.ts.map +1 -0
  75. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-update-emit.test.js +74 -0
  76. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-update-emit.test.js.map +1 -0
  77. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-write-emit.test.d.ts +2 -0
  78. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-write-emit.test.d.ts.map +1 -0
  79. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-write-emit.test.js +74 -0
  80. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-write-emit.test.js.map +1 -0
  81. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-delete-emit.test.d.ts +2 -0
  82. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-delete-emit.test.d.ts.map +1 -0
  83. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-delete-emit.test.js +62 -0
  84. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-delete-emit.test.js.map +1 -0
  85. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-emit.test.d.ts +2 -0
  86. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-emit.test.d.ts.map +1 -0
  87. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-emit.test.js +76 -0
  88. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-emit.test.js.map +1 -0
  89. package/payload/platform/services/claude-session-manager/dist/index.js +79 -2
  90. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  91. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +20 -0
  92. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  93. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +81 -20
  94. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  95. package/payload/platform/services/claude-session-manager/dist/specialist-drift.d.ts +24 -4
  96. package/payload/platform/services/claude-session-manager/dist/specialist-drift.d.ts.map +1 -1
  97. package/payload/platform/services/claude-session-manager/dist/specialist-drift.js +39 -9
  98. package/payload/platform/services/claude-session-manager/dist/specialist-drift.js.map +1 -1
  99. package/payload/platform/services/claude-session-manager/dist/tool-surface.d.ts.map +1 -1
  100. package/payload/platform/services/claude-session-manager/dist/tool-surface.js +19 -4
  101. package/payload/platform/services/claude-session-manager/dist/tool-surface.js.map +1 -1
  102. package/payload/platform/services/claude-session-manager/dist/types.d.ts +5 -0
  103. package/payload/platform/services/claude-session-manager/dist/types.d.ts.map +1 -1
  104. package/payload/platform/templates/agents/admin/IDENTITY.md +1 -1
  105. package/payload/premium-plugins/real-agent/BUNDLE.md +2 -4
  106. package/payload/premium-plugins/real-agent/agents/valuer.md +1 -2
  107. package/payload/premium-plugins/real-agent/plugins/epc/.claude-plugin/plugin.json +3 -3
  108. package/payload/premium-plugins/real-agent/plugins/listings/.claude-plugin/plugin.json +1 -1
  109. package/payload/premium-plugins/real-agent/plugins/listings/PLUGIN.md +1 -3
  110. package/payload/premium-plugins/real-agent/plugins/listings/skills/new-instruction/SKILL.md +11 -12
  111. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/SKILL.md +55 -33
  112. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/render.py +69 -70
  113. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/template-inputs.schema.json +12 -7
  114. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/template.html +88 -19
  115. package/payload/premium-plugins/real-agent/specs/03-new-instruction.md +8 -12
  116. package/payload/server/{chunk-2IKQERHN.js → chunk-S6PQA6Q4.js} +43 -34
  117. package/payload/server/maxy-edge.js +1 -1
  118. package/payload/server/server-init.cjs +40 -0
  119. package/payload/server/server.js +1 -1
  120. package/payload/platform/plugins/brochures/.claude-plugin/plugin.json +0 -8
  121. package/payload/platform/plugins/brochures/PLUGIN.md +0 -38
  122. package/payload/platform/plugins/brochures/commands/make-brochure.md +0 -11
  123. package/payload/platform/plugins/brochures/skills/a4-print-documents/SKILL.md +0 -478
  124. package/payload/platform/plugins/brochures/skills/brand-design/SKILL.md +0 -192
  125. package/payload/platform/plugins/brochures/skills/make-brochure/SKILL.md +0 -354
  126. package/payload/platform/plugins/brochures/skills/make-brochure/references/seller-brief-template.md +0 -115
  127. package/payload/platform/plugins/brochures/skills/property-brochure/SKILL.md +0 -142
  128. package/payload/platform/plugins/brochures/skills/property-brochure/references/build.md +0 -270
  129. package/payload/platform/plugins/brochures/skills/property-brochure/references/copy.md +0 -211
  130. package/payload/platform/plugins/brochures/skills/property-brochure/references/images.md +0 -166
  131. package/payload/platform/plugins/brochures/skills/property-brochure/references/index-landing.md +0 -376
  132. package/payload/platform/plugins/brochures/skills/property-brochure/references/index.html +0 -1288
  133. package/payload/platform/plugins/brochures/skills/property-brochure/references/placeholders.md +0 -250
  134. package/payload/platform/plugins/brochures/skills/property-brochure/references/registers.md +0 -47
  135. package/payload/platform/plugins/brochures/skills/property-brochure/references/seller-brief.md +0 -56
  136. package/payload/platform/plugins/brochures/skills/property-brochure/references/structure.md +0 -249
  137. package/payload/platform/plugins/brochures/skills/property-brochure/references/template.html +0 -2370
  138. package/payload/platform/plugins/brochures/skills/property-extract/SKILL.md +0 -372
  139. package/payload/platform/plugins/brochures/skills/property-market-report/SKILL.md +0 -100
  140. package/payload/platform/plugins/brochures/skills/property-market-report/references/render.py +0 -267
  141. package/payload/platform/plugins/brochures/skills/property-market-report/references/template.html +0 -266
  142. package/payload/platform/plugins/brochures/skills/property-socials/SKILL.md +0 -141
  143. package/payload/platform/plugins/buyers/.claude-plugin/plugin.json +0 -8
  144. package/payload/platform/plugins/buyers/PLUGIN.md +0 -34
  145. package/payload/platform/plugins/buyers/skills/buyer-feedback/SKILL.md +0 -109
  146. package/payload/platform/plugins/buyers/skills/buyer-management/SKILL.md +0 -42
  147. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-qualification-questions.md +0 -16
  148. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-qualification.md +0 -59
  149. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-scripts.md +0 -63
  150. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-working-scripts.md +0 -54
  151. package/payload/platform/plugins/buyers/skills/buyer-management/references/feedback-collection.md +0 -42
  152. package/payload/platform/plugins/buyers/skills/buyer-management/references/offer-capture.md +0 -38
  153. package/payload/platform/plugins/buyers/skills/buyer-management/references/viewing-booking.md +0 -32
  154. package/payload/platform/plugins/buyers/skills/buyer-management/references/viewing-management.md +0 -52
  155. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/SKILL.md +0 -407
  156. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/care-fees-guide.md +0 -68
  157. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/divorce-sales-guide.md +0 -61
  158. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/downsizing-guide.md +0 -45
  159. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/first-time-buyers.md +0 -92
  160. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/first-time-sellers.md +0 -78
  161. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/probate-guide.md +0 -53
  162. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/upsizing-guide.md +0 -41
  163. package/payload/platform/plugins/buyers/skills/property-enquiry/SKILL.md +0 -126
  164. package/payload/platform/plugins/buyers/skills/viewing-management/SKILL.md +0 -111
  165. package/payload/platform/plugins/epc/.claude-plugin/plugin.json +0 -17
  166. package/payload/platform/plugins/epc/PLUGIN.md +0 -90
  167. package/payload/platform/plugins/epc/mcp/dist/index.d.ts +0 -2
  168. package/payload/platform/plugins/epc/mcp/dist/index.d.ts.map +0 -1
  169. package/payload/platform/plugins/epc/mcp/dist/index.js +0 -117
  170. package/payload/platform/plugins/epc/mcp/dist/index.js.map +0 -1
  171. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.d.ts +0 -3
  172. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.d.ts.map +0 -1
  173. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.js +0 -72
  174. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.js.map +0 -1
  175. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.d.ts +0 -60
  176. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.d.ts.map +0 -1
  177. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.js +0 -181
  178. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.js.map +0 -1
  179. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.d.ts +0 -3
  180. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.d.ts.map +0 -1
  181. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.js +0 -49
  182. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.js.map +0 -1
  183. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.d.ts +0 -15
  184. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.d.ts.map +0 -1
  185. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.js +0 -130
  186. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.js.map +0 -1
  187. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.d.ts +0 -5
  188. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.d.ts.map +0 -1
  189. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.js +0 -38
  190. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.js.map +0 -1
  191. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.d.ts +0 -4
  192. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.d.ts.map +0 -1
  193. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.js +0 -9
  194. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.js.map +0 -1
  195. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.d.ts +0 -4
  196. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.d.ts.map +0 -1
  197. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.js +0 -10
  198. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.js.map +0 -1
  199. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.d.ts +0 -5
  200. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.d.ts.map +0 -1
  201. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.js +0 -36
  202. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.js.map +0 -1
  203. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.d.ts +0 -10
  204. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.d.ts.map +0 -1
  205. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.js +0 -30
  206. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.js.map +0 -1
  207. package/payload/platform/plugins/epc/mcp/package-lock.json +0 -2566
  208. package/payload/platform/plugins/epc/mcp/package.json +0 -21
  209. package/payload/platform/plugins/epc/mcp/src/__tests__/epc-api.test.ts +0 -251
  210. package/payload/platform/plugins/epc/mcp/src/__tests__/key-roundtrip.test.ts +0 -113
  211. package/payload/platform/plugins/epc/mcp/src/__tests__/lookup.test.ts +0 -181
  212. package/payload/platform/plugins/epc/mcp/src/__tests__/schema-parity.test.ts +0 -54
  213. package/payload/platform/plugins/epc/mcp/src/index.ts +0 -156
  214. package/payload/platform/plugins/epc/mcp/src/lib/crypto.ts +0 -79
  215. package/payload/platform/plugins/epc/mcp/src/lib/epc-api.ts +0 -241
  216. package/payload/platform/plugins/epc/mcp/src/lib/file-crypto.ts +0 -55
  217. package/payload/platform/plugins/epc/mcp/src/lib/key-store.ts +0 -172
  218. package/payload/platform/plugins/epc/mcp/src/lib/neo4j.ts +0 -47
  219. package/payload/platform/plugins/epc/mcp/src/tools/key-deregister.ts +0 -9
  220. package/payload/platform/plugins/epc/mcp/src/tools/key-list.ts +0 -10
  221. package/payload/platform/plugins/epc/mcp/src/tools/key-register.ts +0 -44
  222. package/payload/platform/plugins/epc/mcp/src/tools/lookup.ts +0 -43
  223. package/payload/platform/plugins/epc/mcp/tsconfig.json +0 -20
  224. package/payload/platform/plugins/epc/mcp/vitest.config.ts +0 -8
  225. package/payload/platform/plugins/estate-business/.claude-plugin/plugin.json +0 -8
  226. package/payload/platform/plugins/estate-business/PLUGIN.md +0 -64
  227. package/payload/platform/plugins/estate-business/skills/business-growth/SKILL.md +0 -133
  228. package/payload/platform/plugins/estate-business/skills/business-growth/references/buy-back-your-time.md +0 -37
  229. package/payload/platform/plugins/estate-business/skills/business-growth/references/firewave-gost-scorecards.md +0 -14
  230. package/payload/platform/plugins/estate-business/skills/business-growth/references/keller-org-model.md +0 -17
  231. package/payload/platform/plugins/estate-business/skills/business-growth/references/lencioni-team-models.md +0 -22
  232. package/payload/platform/plugins/estate-business/skills/business-growth/references/listing-management-system.md +0 -11
  233. package/payload/platform/plugins/estate-business/skills/business-growth/references/net-figure-form.md +0 -11
  234. package/payload/platform/plugins/estate-business/skills/business-growth/references/serhant-bizinbox-notes.md +0 -13
  235. package/payload/platform/plugins/estate-business/skills/business-growth/references/team-roles-commission.md +0 -14
  236. package/payload/platform/plugins/estate-business/skills/business-growth/references/va-2026-ops.md +0 -43
  237. package/payload/platform/plugins/estate-business/skills/business-growth/references/wingman-structure.md +0 -13
  238. package/payload/platform/plugins/estate-business/skills/business-operations/SKILL.md +0 -32
  239. package/payload/platform/plugins/estate-business/skills/business-operations/references/crm-systems.md +0 -57
  240. package/payload/platform/plugins/estate-business/skills/business-operations/references/hiring-guide.md +0 -59
  241. package/payload/platform/plugins/estate-business/skills/business-operations/references/impact-framework.md +0 -47
  242. package/payload/platform/plugins/estate-business/skills/business-operations/references/minutes-equal-money.md +0 -55
  243. package/payload/platform/plugins/estate-business/skills/business-operations/references/team-management.md +0 -48
  244. package/payload/platform/plugins/estate-business/skills/commission-calculator/SKILL.md +0 -40
  245. package/payload/platform/plugins/estate-business/skills/exp-partnership/SKILL.md +0 -52
  246. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/12-reasons.md +0 -39
  247. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/95-5-system.md +0 -66
  248. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/agent-attraction-scripts.md +0 -90
  249. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/business-partnership.md +0 -92
  250. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/exp-model-overview.md +0 -66
  251. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/model-comparison.md +0 -66
  252. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/revenue-share-explained.md +0 -57
  253. package/payload/platform/plugins/estate-business/skills/month-end-close/SKILL.md +0 -69
  254. package/payload/platform/plugins/estate-business/skills/payment-batch-stager/SKILL.md +0 -42
  255. package/payload/platform/plugins/estate-business/skills/period-reconciler/SKILL.md +0 -42
  256. package/payload/platform/plugins/estate-business/skills/personal-branding/SKILL.md +0 -117
  257. package/payload/platform/plugins/estate-business/skills/personal-branding/references/attraction-agent-notes.md +0 -31
  258. package/payload/platform/plugins/estate-business/skills/personal-branding/references/attraction-agent.md +0 -58
  259. package/payload/platform/plugins/estate-business/skills/personal-branding/references/authenticity-boundaries.md +0 -28
  260. package/payload/platform/plugins/estate-business/skills/personal-branding/references/become-a-brand-leader-notes.md +0 -19
  261. package/payload/platform/plugins/estate-business/skills/personal-branding/references/blast-formula.md +0 -42
  262. package/payload/platform/plugins/estate-business/skills/personal-branding/references/brand-leader.md +0 -48
  263. package/payload/platform/plugins/estate-business/skills/personal-branding/references/brand-strategy-system.md +0 -59
  264. package/payload/platform/plugins/estate-business/skills/personal-branding/references/content-engine.md +0 -49
  265. package/payload/platform/plugins/estate-business/skills/personal-branding/references/firewave-blast-and-blogging.md +0 -23
  266. package/payload/platform/plugins/estate-business/skills/personal-branding/references/gary-v-content.md +0 -52
  267. package/payload/platform/plugins/estate-business/skills/personal-branding/references/gary-v-principles.md +0 -20
  268. package/payload/platform/plugins/estate-business/skills/personal-branding/references/oversubscribed-positioning.md +0 -18
  269. package/payload/platform/plugins/estate-business/skills/personal-branding/references/platforms.md +0 -41
  270. package/payload/platform/plugins/estate-business/skills/personal-branding/references/priestley-oversubscribed.md +0 -54
  271. package/payload/platform/plugins/estate-business/skills/personal-branding/references/storeys-style-examples.md +0 -25
  272. package/payload/platform/plugins/estate-business/skills/personal-branding/references/visual-identity.md +0 -27
  273. package/payload/platform/plugins/estate-coaching/.claude-plugin/plugin.json +0 -8
  274. package/payload/platform/plugins/estate-coaching/PLUGIN.md +0 -54
  275. package/payload/platform/plugins/estate-coaching/skills/agent-performance/SKILL.md +0 -371
  276. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/atomic-habits.md +0 -52
  277. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/daily-routine-scorecard.md +0 -104
  278. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/hp6-model.md +0 -63
  279. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/twelve-week-year.md +0 -71
  280. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/SKILL.md +0 -36
  281. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/references/coaching-boundaries.md +0 -56
  282. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/references/feedback-framework.md +0 -61
  283. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/references/performance-framework.md +0 -109
  284. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/SKILL.md +0 -421
  285. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/coaching-exercises.md +0 -86
  286. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/goal-setting.md +0 -78
  287. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/one-to-one-framework.md +0 -92
  288. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/soi-workbook.md +0 -103
  289. package/payload/platform/plugins/estate-coaching/skills/serhant-training/SKILL.md +0 -410
  290. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/agent-training-guide.md +0 -70
  291. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/business-in-a-box.md +0 -72
  292. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/buyers-guide.md +0 -53
  293. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/codo-method.md +0 -72
  294. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/website-planning-guide.md +0 -79
  295. package/payload/platform/plugins/estate-sales/.claude-plugin/plugin.json +0 -8
  296. package/payload/platform/plugins/estate-sales/PLUGIN.md +0 -52
  297. package/payload/platform/plugins/estate-sales/skills/chase-progression/SKILL.md +0 -107
  298. package/payload/platform/plugins/estate-sales/skills/negotiation/SKILL.md +0 -35
  299. package/payload/platform/plugins/estate-sales/skills/negotiation/references/deal-saving.md +0 -47
  300. package/payload/platform/plugins/estate-sales/skills/negotiation/references/negotiation-deep-guide.md +0 -64
  301. package/payload/platform/plugins/estate-sales/skills/negotiation/references/negotiation-prep-principles.md +0 -29
  302. package/payload/platform/plugins/estate-sales/skills/negotiation/references/negotiation-techniques.md +0 -42
  303. package/payload/platform/plugins/estate-sales/skills/negotiation/references/offer-presentation.md +0 -43
  304. package/payload/platform/plugins/estate-sales/skills/risk-scorer/SKILL.md +0 -42
  305. package/payload/platform/plugins/estate-sales/skills/sales-closer/SKILL.md +0 -24
  306. package/payload/platform/plugins/estate-sales/skills/sales-closer/references/serhant-emotion-stages.md +0 -36
  307. package/payload/platform/plugins/estate-sales/skills/sales-discovery/SKILL.md +0 -30
  308. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/chris-voss-discovery.md +0 -88
  309. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/firewave-gost-journey.md +0 -68
  310. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/phil-jones-openers.md +0 -78
  311. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/pre-listing-checklist.md +0 -77
  312. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/serhant-improv.md +0 -22
  313. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/tom-ferry-discovery.md +0 -103
  314. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/vendor-motivation-competitor.md +0 -52
  315. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/SKILL.md +0 -29
  316. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/chris-voss-negotiation.md +0 -70
  317. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/phil-jones-price-words.md +0 -40
  318. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/serhant-negotiation-plus.md +0 -55
  319. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/tom-panos-commission-pricing.md +0 -57
  320. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/tony-morris-questioning.md +0 -54
  321. package/payload/platform/plugins/estate-sales/skills/sales-progression/SKILL.md +0 -27
  322. package/payload/platform/plugins/estate-sales/skills/sales-progression/references/conveyancing-guide.md +0 -54
  323. package/payload/platform/plugins/estate-sales/skills/sales-progression/references/transaction-tracking.md +0 -66
  324. package/payload/platform/plugins/estate-teaching/.claude-plugin/plugin.json +0 -8
  325. package/payload/platform/plugins/estate-teaching/PLUGIN.md +0 -30
  326. package/payload/platform/plugins/estate-teaching/skills/content-directory/SKILL.md +0 -39
  327. package/payload/platform/plugins/estate-teaching/skills/content-directory/references/module-delivery.md +0 -65
  328. package/payload/platform/plugins/estate-teaching/skills/content-directory/references/progress-tracking.md +0 -47
  329. package/payload/platform/plugins/leads/.claude-plugin/plugin.json +0 -8
  330. package/payload/platform/plugins/leads/PLUGIN.md +0 -61
  331. package/payload/platform/plugins/leads/skills/chain-progression-tracker/SKILL.md +0 -51
  332. package/payload/platform/plugins/leads/skills/diary-builder/SKILL.md +0 -38
  333. package/payload/platform/plugins/leads/skills/enquiry-triage/SKILL.md +0 -36
  334. package/payload/platform/plugins/leads/skills/lead-nurturing/SKILL.md +0 -137
  335. package/payload/platform/plugins/leads/skills/lead-nurturing/references/buyer-search-letter.md +0 -28
  336. package/payload/platform/plugins/leads/skills/lead-nurturing/references/buyer-search-letters.md +0 -37
  337. package/payload/platform/plugins/leads/skills/lead-nurturing/references/database-reactivation.md +0 -30
  338. package/payload/platform/plugins/leads/skills/lead-nurturing/references/email-nurture-sequences.md +0 -45
  339. package/payload/platform/plugins/leads/skills/lead-nurturing/references/facebook-referrals.md +0 -30
  340. package/payload/platform/plugins/leads/skills/lead-nurturing/references/firewave-email-nurture-sequences.md +0 -41
  341. package/payload/platform/plugins/leads/skills/lead-nurturing/references/keller-33-touch.md +0 -34
  342. package/payload/platform/plugins/leads/skills/lead-nurturing/references/neighbour-letters.md +0 -31
  343. package/payload/platform/plugins/leads/skills/lead-nurturing/references/neighbour-notification-letter.md +0 -20
  344. package/payload/platform/plugins/leads/skills/lead-nurturing/references/ofi-follow-up-dialogue.md +0 -22
  345. package/payload/platform/plugins/leads/skills/lead-nurturing/references/ofi-follow-up.md +0 -26
  346. package/payload/platform/plugins/leads/skills/lead-nurturing/references/serhant-three-fs-plus.md +0 -21
  347. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sharran-10x10x10.md +0 -18
  348. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sms-templates.md +0 -40
  349. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sphere-of-influence-notes.md +0 -34
  350. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sphere-of-influence.md +0 -60
  351. package/payload/platform/plugins/leads/skills/lead-nurturing/references/tom-panos-sms-templates.md +0 -59
  352. package/payload/platform/plugins/leads/skills/morning-round/SKILL.md +0 -72
  353. package/payload/platform/plugins/leads/skills/prospecting/SKILL.md +0 -33
  354. package/payload/platform/plugins/leads/skills/prospecting/references/database-matching.md +0 -30
  355. package/payload/platform/plugins/leads/skills/prospecting/references/database-value.md +0 -53
  356. package/payload/platform/plugins/leads/skills/prospecting/references/prospecting-dialogues.md +0 -24
  357. package/payload/platform/plugins/leads/skills/prospecting/references/reactivation.md +0 -34
  358. package/payload/platform/plugins/listings/.claude-plugin/plugin.json +0 -8
  359. package/payload/platform/plugins/listings/PLUGIN.md +0 -102
  360. package/payload/platform/plugins/listings/skills/comparable-finder/SKILL.md +0 -52
  361. package/payload/platform/plugins/listings/skills/epc-checker/SKILL.md +0 -38
  362. package/payload/platform/plugins/listings/skills/home-preparation/SKILL.md +0 -28
  363. package/payload/platform/plugins/listings/skills/home-preparation/references/kerb-appeal.md +0 -38
  364. package/payload/platform/plugins/listings/skills/home-preparation/references/photo-day.md +0 -59
  365. package/payload/platform/plugins/listings/skills/home-preparation/references/situational-tips.md +0 -50
  366. package/payload/platform/plugins/listings/skills/home-preparation/references/staging-guide.md +0 -52
  367. package/payload/platform/plugins/listings/skills/listing-copy-writer/SKILL.md +0 -55
  368. package/payload/platform/plugins/listings/skills/listing-presentation/SKILL.md +0 -286
  369. package/payload/platform/plugins/listings/skills/listing-presentation/references/booking-script.md +0 -51
  370. package/payload/platform/plugins/listings/skills/listing-presentation/references/objection-scripts.md +0 -193
  371. package/payload/platform/plugins/listings/skills/listing-presentation/references/penhaul-presentation.md +0 -123
  372. package/payload/platform/plugins/listings/skills/listing-presentation/references/pre-listing-kit.md +0 -139
  373. package/payload/platform/plugins/listings/skills/listing-presentation/references/set-to-sell.md +0 -55
  374. package/payload/platform/plugins/listings/skills/listing-presentation/references/sharran-frameworks.md +0 -107
  375. package/payload/platform/plugins/listings/skills/local-market-stats/SKILL.md +0 -33
  376. package/payload/platform/plugins/listings/skills/new-instruction/SKILL.md +0 -78
  377. package/payload/platform/plugins/listings/skills/particulars-builder/SKILL.md +0 -48
  378. package/payload/platform/plugins/listings/skills/portal-launch-scheduler/SKILL.md +0 -49
  379. package/payload/platform/plugins/listings/skills/pricing-scenario-builder/SKILL.md +0 -35
  380. package/payload/platform/plugins/listings/skills/property-marketing/SKILL.md +0 -337
  381. package/payload/platform/plugins/listings/skills/property-marketing/references/auction-report-template.md +0 -41
  382. package/payload/platform/plugins/listings/skills/property-marketing/references/coming-soon-campaign.md +0 -43
  383. package/payload/platform/plugins/listings/skills/property-marketing/references/direct-mail-templates.md +0 -121
  384. package/payload/platform/plugins/listings/skills/property-marketing/references/eoi-form-template.md +0 -62
  385. package/payload/platform/plugins/listings/skills/property-marketing/references/monthly-scorecard.md +0 -63
  386. package/payload/platform/plugins/listings/skills/supplier-booker/SKILL.md +0 -39
  387. package/payload/platform/plugins/listings/skills/talk-track-composer/SKILL.md +0 -36
  388. package/payload/platform/plugins/listings/skills/terms-of-business-drafter/SKILL.md +0 -54
  389. package/payload/platform/plugins/listings/skills/valuation-prep/SKILL.md +0 -69
  390. package/payload/platform/plugins/loop/.claude-plugin/plugin.json +0 -17
  391. package/payload/platform/plugins/loop/PLUGIN.md +0 -260
  392. package/payload/platform/plugins/loop/mcp/dist/index.d.ts +0 -2
  393. package/payload/platform/plugins/loop/mcp/dist/index.d.ts.map +0 -1
  394. package/payload/platform/plugins/loop/mcp/dist/index.js +0 -320
  395. package/payload/platform/plugins/loop/mcp/dist/index.js.map +0 -1
  396. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.d.ts +0 -10
  397. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.d.ts.map +0 -1
  398. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.js +0 -88
  399. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.js.map +0 -1
  400. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.d.ts +0 -3
  401. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.d.ts.map +0 -1
  402. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.js +0 -48
  403. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.js.map +0 -1
  404. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.d.ts +0 -22
  405. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.d.ts.map +0 -1
  406. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.js +0 -165
  407. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.js.map +0 -1
  408. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.d.ts +0 -82
  409. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.d.ts.map +0 -1
  410. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.js +0 -392
  411. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.js.map +0 -1
  412. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.d.ts +0 -5
  413. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.d.ts.map +0 -1
  414. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js +0 -40
  415. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js.map +0 -1
  416. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.d.ts +0 -12
  417. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.d.ts.map +0 -1
  418. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.js +0 -22
  419. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.js.map +0 -1
  420. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.d.ts +0 -10
  421. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.d.ts.map +0 -1
  422. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.js +0 -24
  423. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.js.map +0 -1
  424. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.d.ts +0 -16
  425. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.d.ts.map +0 -1
  426. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.js +0 -35
  427. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.js.map +0 -1
  428. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.d.ts +0 -5
  429. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.d.ts.map +0 -1
  430. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.js +0 -9
  431. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.js.map +0 -1
  432. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.d.ts +0 -4
  433. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.d.ts.map +0 -1
  434. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.js +0 -14
  435. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.js.map +0 -1
  436. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.d.ts +0 -9
  437. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.d.ts.map +0 -1
  438. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.js +0 -43
  439. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.js.map +0 -1
  440. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.d.ts +0 -6
  441. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.d.ts.map +0 -1
  442. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.js +0 -7
  443. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.js.map +0 -1
  444. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.d.ts +0 -9
  445. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.d.ts.map +0 -1
  446. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.js +0 -16
  447. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.js.map +0 -1
  448. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.d.ts +0 -15
  449. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.d.ts.map +0 -1
  450. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.js +0 -11
  451. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.js.map +0 -1
  452. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.d.ts +0 -10
  453. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.d.ts.map +0 -1
  454. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.js +0 -39
  455. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.js.map +0 -1
  456. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.d.ts +0 -9
  457. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.d.ts.map +0 -1
  458. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.js +0 -125
  459. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.js.map +0 -1
  460. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.d.ts +0 -18
  461. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.d.ts.map +0 -1
  462. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.js +0 -87
  463. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.js.map +0 -1
  464. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.d.ts +0 -10
  465. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.d.ts.map +0 -1
  466. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.js +0 -82
  467. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.js.map +0 -1
  468. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.d.ts +0 -33
  469. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.d.ts.map +0 -1
  470. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.js +0 -19
  471. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.js.map +0 -1
  472. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.d.ts +0 -11
  473. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.d.ts.map +0 -1
  474. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.js +0 -26
  475. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.js.map +0 -1
  476. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.d.ts +0 -15
  477. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.d.ts.map +0 -1
  478. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.js +0 -11
  479. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.js.map +0 -1
  480. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.d.ts +0 -16
  481. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.d.ts.map +0 -1
  482. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.js +0 -41
  483. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.js.map +0 -1
  484. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.d.ts +0 -9
  485. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.d.ts.map +0 -1
  486. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.js +0 -19
  487. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.js.map +0 -1
  488. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.d.ts +0 -13
  489. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.d.ts.map +0 -1
  490. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.js +0 -49
  491. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.js.map +0 -1
  492. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.d.ts +0 -7
  493. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.d.ts.map +0 -1
  494. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.js +0 -19
  495. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.js.map +0 -1
  496. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.d.ts +0 -5
  497. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.d.ts.map +0 -1
  498. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.js +0 -32
  499. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.js.map +0 -1
  500. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.d.ts +0 -14
  501. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.d.ts.map +0 -1
  502. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.js +0 -11
  503. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.js.map +0 -1
  504. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.d.ts +0 -9
  505. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.d.ts.map +0 -1
  506. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.js +0 -85
  507. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.js.map +0 -1
  508. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.d.ts +0 -13
  509. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.d.ts.map +0 -1
  510. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.js +0 -44
  511. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.js.map +0 -1
  512. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.d.ts +0 -14
  513. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.d.ts.map +0 -1
  514. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.js +0 -18
  515. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.js.map +0 -1
  516. package/payload/platform/plugins/loop/mcp/package-lock.json +0 -2549
  517. package/payload/platform/plugins/loop/mcp/package.json +0 -21
  518. package/payload/platform/plugins/loop/mcp/src/__tests__/loop-swagger.snapshot.json +0 -26467
  519. package/payload/platform/plugins/loop/mcp/src/__tests__/new-tool-shape.test.ts +0 -99
  520. package/payload/platform/plugins/loop/mcp/src/__tests__/plugin-md-time-doctrine.test.ts +0 -132
  521. package/payload/platform/plugins/loop/mcp/src/__tests__/swagger-write-coverage.test.ts +0 -154
  522. package/payload/platform/plugins/loop/mcp/src/index.ts +0 -498
  523. package/payload/platform/plugins/loop/mcp/src/lib/crypto.ts +0 -105
  524. package/payload/platform/plugins/loop/mcp/src/lib/file-crypto.ts +0 -54
  525. package/payload/platform/plugins/loop/mcp/src/lib/key-store.ts +0 -221
  526. package/payload/platform/plugins/loop/mcp/src/lib/loop-api.ts +0 -567
  527. package/payload/platform/plugins/loop/mcp/src/lib/neo4j.ts +0 -51
  528. package/payload/platform/plugins/loop/mcp/src/tools/auto-responder.ts +0 -80
  529. package/payload/platform/plugins/loop/mcp/src/tools/customer-preferences.ts +0 -66
  530. package/payload/platform/plugins/loop/mcp/src/tools/feedback.ts +0 -86
  531. package/payload/platform/plugins/loop/mcp/src/tools/key-deregister.ts +0 -12
  532. package/payload/platform/plugins/loop/mcp/src/tools/key-list.ts +0 -19
  533. package/payload/platform/plugins/loop/mcp/src/tools/key-register.ts +0 -70
  534. package/payload/platform/plugins/loop/mcp/src/tools/marketing-enquiry.ts +0 -27
  535. package/payload/platform/plugins/loop/mcp/src/tools/marketing-match-batch.ts +0 -53
  536. package/payload/platform/plugins/loop/mcp/src/tools/marketing-match-request.ts +0 -42
  537. package/payload/platform/plugins/loop/mcp/src/tools/marketing-match.ts +0 -84
  538. package/payload/platform/plugins/loop/mcp/src/tools/people-detail.ts +0 -245
  539. package/payload/platform/plugins/loop/mcp/src/tools/people-search.ts +0 -180
  540. package/payload/platform/plugins/loop/mcp/src/tools/property-detail.ts +0 -145
  541. package/payload/platform/plugins/loop/mcp/src/tools/property-intent.ts +0 -84
  542. package/payload/platform/plugins/loop/mcp/src/tools/property-listed.ts +0 -81
  543. package/payload/platform/plugins/loop/mcp/src/tools/property-search.ts +0 -92
  544. package/payload/platform/plugins/loop/mcp/src/tools/property-sold.ts +0 -67
  545. package/payload/platform/plugins/loop/mcp/src/tools/supplier.ts +0 -129
  546. package/payload/platform/plugins/loop/mcp/src/tools/team-availability.ts +0 -52
  547. package/payload/platform/plugins/loop/mcp/src/tools/team-info.ts +0 -95
  548. package/payload/platform/plugins/loop/mcp/src/tools/viewing-create.ts +0 -41
  549. package/payload/platform/plugins/loop/mcp/src/tools/viewing-detail.ts +0 -171
  550. package/payload/platform/plugins/loop/mcp/src/tools/viewing-search.ts +0 -92
  551. package/payload/platform/plugins/loop/mcp/src/tools/viewing-update.ts +0 -53
  552. package/payload/platform/plugins/loop/mcp/tsconfig.json +0 -20
  553. package/payload/platform/plugins/loop/mcp/vitest.config.ts +0 -9
  554. package/payload/platform/plugins/loop/skills/compliance-flag-checker/SKILL.md +0 -53
  555. package/payload/platform/plugins/loop/skills/priority-ranker/SKILL.md +0 -40
  556. package/payload/platform/plugins/loop/skills/tone-matched-drafter/SKILL.md +0 -53
  557. package/payload/platform/plugins/loop/skills/variance-narrator/SKILL.md +0 -50
  558. package/payload/platform/plugins/loop/skills/vendor-research/SKILL.md +0 -54
  559. package/payload/platform/plugins/preval/.claude-plugin/plugin.json +0 -8
  560. package/payload/platform/plugins/preval/PLUGIN.md +0 -55
  561. package/payload/platform/plugins/preval/hooks/preval-prompt-required.sh +0 -140
  562. package/payload/platform/plugins/preval/skills/property-preval/SKILL.md +0 -176
  563. package/payload/platform/plugins/preval/skills/property-preval/references/__tests__/adherence.test.py +0 -373
  564. package/payload/platform/plugins/preval/skills/property-preval/references/render.py +0 -815
  565. package/payload/platform/plugins/preval/skills/property-preval/references/template-inputs.schema.json +0 -199
  566. package/payload/platform/plugins/preval/skills/property-preval/references/template.html +0 -312
  567. package/payload/platform/plugins/property-data/.claude-plugin/plugin.json +0 -17
  568. package/payload/platform/plugins/property-data/PLUGIN.md +0 -180
  569. package/payload/platform/plugins/property-data/mcp/dist/index.d.ts +0 -2
  570. package/payload/platform/plugins/property-data/mcp/dist/index.d.ts.map +0 -1
  571. package/payload/platform/plugins/property-data/mcp/dist/index.js +0 -236
  572. package/payload/platform/plugins/property-data/mcp/dist/index.js.map +0 -1
  573. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.d.ts +0 -3
  574. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.d.ts.map +0 -1
  575. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.js +0 -72
  576. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.js.map +0 -1
  577. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.d.ts +0 -3
  578. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.d.ts.map +0 -1
  579. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.js +0 -49
  580. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.js.map +0 -1
  581. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.d.ts +0 -15
  582. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.d.ts.map +0 -1
  583. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.js +0 -135
  584. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.js.map +0 -1
  585. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.d.ts +0 -5
  586. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.d.ts.map +0 -1
  587. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.js +0 -38
  588. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.js.map +0 -1
  589. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.d.ts +0 -28
  590. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.d.ts.map +0 -1
  591. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.js +0 -101
  592. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.js.map +0 -1
  593. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.d.ts +0 -24
  594. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.d.ts.map +0 -1
  595. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.js +0 -33
  596. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.js.map +0 -1
  597. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.d.ts +0 -4
  598. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.d.ts.map +0 -1
  599. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.js +0 -9
  600. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.js.map +0 -1
  601. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.d.ts +0 -4
  602. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.d.ts.map +0 -1
  603. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.js +0 -10
  604. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.js.map +0 -1
  605. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.d.ts +0 -5
  606. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.d.ts.map +0 -1
  607. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.js +0 -50
  608. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.js.map +0 -1
  609. package/payload/platform/plugins/property-data/mcp/package-lock.json +0 -2566
  610. package/payload/platform/plugins/property-data/mcp/package.json +0 -21
  611. package/payload/platform/plugins/property-data/mcp/src/__tests__/endpoints.test.ts +0 -252
  612. package/payload/platform/plugins/property-data/mcp/src/__tests__/key-roundtrip.test.ts +0 -107
  613. package/payload/platform/plugins/property-data/mcp/src/__tests__/propertydata-api.test.ts +0 -184
  614. package/payload/platform/plugins/property-data/mcp/src/__tests__/schema-parity.test.ts +0 -62
  615. package/payload/platform/plugins/property-data/mcp/src/index.ts +0 -409
  616. package/payload/platform/plugins/property-data/mcp/src/lib/crypto.ts +0 -79
  617. package/payload/platform/plugins/property-data/mcp/src/lib/file-crypto.ts +0 -55
  618. package/payload/platform/plugins/property-data/mcp/src/lib/key-store.ts +0 -181
  619. package/payload/platform/plugins/property-data/mcp/src/lib/neo4j.ts +0 -47
  620. package/payload/platform/plugins/property-data/mcp/src/lib/propertydata-api.ts +0 -120
  621. package/payload/platform/plugins/property-data/mcp/src/tools/endpoints.ts +0 -47
  622. package/payload/platform/plugins/property-data/mcp/src/tools/key-deregister.ts +0 -9
  623. package/payload/platform/plugins/property-data/mcp/src/tools/key-list.ts +0 -10
  624. package/payload/platform/plugins/property-data/mcp/src/tools/key-register.ts +0 -54
  625. package/payload/platform/plugins/property-data/mcp/tsconfig.json +0 -20
  626. package/payload/platform/plugins/property-data/mcp/vitest.config.ts +0 -8
  627. package/payload/platform/plugins/property-data/skills/property-data/SKILL.md +0 -77
  628. package/payload/platform/plugins/vendors/.claude-plugin/plugin.json +0 -8
  629. package/payload/platform/plugins/vendors/PLUGIN.md +0 -33
  630. package/payload/platform/plugins/vendors/skills/vendor-communication/SKILL.md +0 -42
  631. package/payload/platform/plugins/vendors/skills/vendor-communication/references/fee-protection-and-agenda.md +0 -28
  632. package/payload/platform/plugins/vendors/skills/vendor-communication/references/listing-scripts.md +0 -44
  633. package/payload/platform/plugins/vendors/skills/vendor-communication/references/negotiation-deep-guide.md +0 -70
  634. package/payload/platform/plugins/vendors/skills/vendor-communication/references/price-alignment-scripts.md +0 -33
  635. package/payload/platform/plugins/vendors/skills/vendor-communication/references/price-alignment.md +0 -34
  636. package/payload/platform/plugins/vendors/skills/vendor-communication/references/scenario-scripts.md +0 -38
  637. package/payload/platform/plugins/vendors/skills/vendor-communication/references/seller-engagement.md +0 -51
  638. package/payload/platform/plugins/vendors/skills/vendor-communication/references/valuation-booking.md +0 -76
  639. package/payload/platform/plugins/vendors/skills/vendor-communication/references/vendor-scripts.md +0 -63
  640. package/payload/platform/plugins/vendors/skills/vendor-communication/references/vendor-updates.md +0 -41
  641. package/payload/platform/plugins/vendors/skills/vendor-updates/SKILL.md +0 -153
  642. package/payload/premium-plugins/real-agent/plugins/epc/PLUGIN.md +0 -90
  643. package/payload/premium-plugins/real-agent/plugins/epc/mcp/package-lock.json +0 -2566
  644. package/payload/premium-plugins/real-agent/plugins/epc/mcp/package.json +0 -21
  645. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/epc-api.test.ts +0 -251
  646. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/key-roundtrip.test.ts +0 -113
  647. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/lookup.test.ts +0 -181
  648. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/schema-parity.test.ts +0 -54
  649. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/index.ts +0 -156
  650. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/crypto.ts +0 -79
  651. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/epc-api.ts +0 -241
  652. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/file-crypto.ts +0 -55
  653. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/key-store.ts +0 -172
  654. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/neo4j.ts +0 -47
  655. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/key-deregister.ts +0 -9
  656. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/key-list.ts +0 -10
  657. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/key-register.ts +0 -44
  658. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/lookup.ts +0 -43
  659. package/payload/premium-plugins/real-agent/plugins/epc/mcp/tsconfig.json +0 -20
  660. package/payload/premium-plugins/real-agent/plugins/epc/mcp/vitest.config.ts +0 -8
  661. package/payload/premium-plugins/real-agent/plugins/listings/skills/epc-checker/SKILL.md +0 -38
@@ -1,172 +0,0 @@
1
- import { readFileSync, writeFileSync, existsSync, mkdirSync } from "node:fs";
2
- import { resolve, dirname } from "node:path";
3
- import { homedir } from "node:os";
4
- import { getSession } from "./neo4j.js";
5
- import { encrypt, decrypt } from "./crypto.js";
6
- import { encryptWith, decryptWith } from "./file-crypto.js";
7
-
8
- // Storage abstraction so the same MCP body runs against Neo4j (platform mode)
9
- // or an on-disk encrypted file (standalone mode, e.g. spawned by Claude Code
10
- // from ~/.claude/). Selected by the EPC_STANDALONE env flag at boot. Mirrors
11
- // the property-data key-store with one node per account: EPC keys are
12
- // account-scoped and the gov.uk EPC API has no team concept.
13
-
14
- export interface StoredKey {
15
- apiKey: string;
16
- createdAt: string;
17
- updatedAt: string;
18
- }
19
-
20
- export interface KeyStore {
21
- readonly backendName: string;
22
- readonly backendPath: string;
23
- load(accountId: string): Promise<StoredKey | null>;
24
- save(accountId: string, apiKey: string): Promise<void>;
25
- delete(accountId: string): Promise<boolean>;
26
- }
27
-
28
- class Neo4jKeyStore implements KeyStore {
29
- readonly backendName = "neo4j";
30
- readonly backendPath = process.env.NEO4J_URI ?? "<unset>";
31
-
32
- async load(accountId: string): Promise<StoredKey | null> {
33
- const session = getSession();
34
- try {
35
- const result = await session.run(
36
- `MATCH (k:EpcApiKey {accountId: $accountId})
37
- RETURN k.encryptedKey AS encryptedKey,
38
- k.createdAt AS createdAt,
39
- k.updatedAt AS updatedAt`,
40
- { accountId },
41
- );
42
- if (result.records.length === 0) return null;
43
- const r = result.records[0];
44
- return {
45
- apiKey: decrypt(r.get("encryptedKey")),
46
- createdAt: r.get("createdAt") ?? "",
47
- updatedAt: r.get("updatedAt") ?? "",
48
- };
49
- } finally {
50
- await session.close();
51
- }
52
- }
53
-
54
- async save(accountId: string, apiKey: string): Promise<void> {
55
- const encryptedKey = encrypt(apiKey);
56
- const now = new Date().toISOString();
57
- const session = getSession();
58
- try {
59
- await session.run(
60
- `CREATE INDEX epc_api_key_account IF NOT EXISTS
61
- FOR (k:EpcApiKey) ON (k.accountId)`,
62
- {},
63
- );
64
- await session.run(
65
- `MERGE (k:EpcApiKey {accountId: $accountId})
66
- ON CREATE SET k.encryptedKey = $encryptedKey, k.createdAt = $now, k.updatedAt = $now
67
- ON MATCH SET k.encryptedKey = $encryptedKey, k.updatedAt = $now`,
68
- { accountId, encryptedKey, now },
69
- );
70
- } finally {
71
- await session.close();
72
- }
73
- }
74
-
75
- async delete(accountId: string): Promise<boolean> {
76
- const session = getSession();
77
- try {
78
- const result = await session.run(
79
- `MATCH (k:EpcApiKey {accountId: $accountId})
80
- DELETE k
81
- RETURN count(k) AS deleted`,
82
- { accountId },
83
- );
84
- const deleted = result.records[0]?.get("deleted")?.toNumber?.() ?? 0;
85
- return deleted > 0;
86
- } finally {
87
- await session.close();
88
- }
89
- }
90
- }
91
-
92
- interface FileEnvelope {
93
- [accountId: string]: { encryptedKey: string; createdAt: string; updatedAt: string };
94
- }
95
-
96
- const LABEL = "epc";
97
-
98
- class FileKeyStore implements KeyStore {
99
- readonly backendName = "file";
100
- readonly backendPath: string;
101
- private readonly storePath: string;
102
- private readonly keyFilePath: string;
103
-
104
- constructor() {
105
- const home = homedir();
106
- this.storePath = resolve(home, ".claude/.realagent-epc-key.enc");
107
- this.keyFilePath = resolve(home, ".claude/.realagent-epc-encryption-key");
108
- this.backendPath = this.storePath;
109
- }
110
-
111
- private ensureDir(): void {
112
- mkdirSync(dirname(this.storePath), { recursive: true });
113
- }
114
-
115
- private readAll(): FileEnvelope {
116
- if (!existsSync(this.storePath)) return {};
117
- const blob = readFileSync(this.storePath, "utf-8").trim();
118
- if (!blob) return {};
119
- const json = decryptWith(blob, this.keyFilePath, LABEL);
120
- return JSON.parse(json) as FileEnvelope;
121
- }
122
-
123
- private writeAll(env: FileEnvelope): void {
124
- this.ensureDir();
125
- const blob = encryptWith(JSON.stringify(env), this.keyFilePath, LABEL);
126
- writeFileSync(this.storePath, blob, { mode: 0o600 });
127
- }
128
-
129
- async load(accountId: string): Promise<StoredKey | null> {
130
- const env = this.readAll();
131
- const entry = env[accountId];
132
- if (!entry) return null;
133
- return {
134
- apiKey: decryptWith(entry.encryptedKey, this.keyFilePath, LABEL),
135
- createdAt: entry.createdAt,
136
- updatedAt: entry.updatedAt,
137
- };
138
- }
139
-
140
- async save(accountId: string, apiKey: string): Promise<void> {
141
- const env = this.readAll();
142
- const now = new Date().toISOString();
143
- const encryptedKey = encryptWith(apiKey, this.keyFilePath, LABEL);
144
- const prev = env[accountId];
145
- env[accountId] = {
146
- encryptedKey,
147
- createdAt: prev?.createdAt ?? now,
148
- updatedAt: now,
149
- };
150
- this.writeAll(env);
151
- }
152
-
153
- async delete(accountId: string): Promise<boolean> {
154
- const env = this.readAll();
155
- if (!(accountId in env)) return false;
156
- delete env[accountId];
157
- this.writeAll(env);
158
- return true;
159
- }
160
- }
161
-
162
- let cached: KeyStore | null = null;
163
-
164
- export function selectKeyStore(): KeyStore {
165
- if (cached) return cached;
166
- cached = process.env.EPC_STANDALONE === "1" ? new FileKeyStore() : new Neo4jKeyStore();
167
- return cached;
168
- }
169
-
170
- export function _resetKeyStoreForTests(): void {
171
- cached = null;
172
- }
@@ -1,47 +0,0 @@
1
- import neo4j, { Driver, Session } from "neo4j-driver";
2
- import { readFileSync } from "node:fs";
3
- import { resolve } from "node:path";
4
-
5
- let driver: Driver | null = null;
6
-
7
- function readPassword(): string {
8
- if (process.env.NEO4J_PASSWORD) return process.env.NEO4J_PASSWORD;
9
- const passwordFile = resolve(
10
- process.env.PLATFORM_ROOT ?? resolve(import.meta.dirname, "../../../.."),
11
- "config/.neo4j-password",
12
- );
13
- try {
14
- return readFileSync(passwordFile, "utf-8").trim();
15
- } catch {
16
- throw new Error(
17
- `Neo4j password not found. Expected at ${passwordFile} or in NEO4J_PASSWORD env var.`,
18
- );
19
- }
20
- }
21
-
22
- export function getDriver(): Driver {
23
- if (!driver) {
24
- const uri = process.env.NEO4J_URI;
25
- if (!uri) {
26
- throw new Error(
27
- "[epc] NEO4J_URI unset — refusing to default to bolt://localhost:7687",
28
- );
29
- }
30
- const user = process.env.NEO4J_USER ?? "neo4j";
31
- const password = readPassword();
32
- console.error(`[epc] resolved neo4j_uri=${uri}`);
33
- driver = neo4j.driver(uri, neo4j.auth.basic(user, password));
34
- }
35
- return driver;
36
- }
37
-
38
- export function getSession(): Session {
39
- return getDriver().session();
40
- }
41
-
42
- export async function closeDriver(): Promise<void> {
43
- if (driver) {
44
- await driver.close();
45
- driver = null;
46
- }
47
- }
@@ -1,9 +0,0 @@
1
- import { selectKeyStore } from "../lib/key-store.js";
2
-
3
- export async function keyDeregister(params: { accountId: string }): Promise<void> {
4
- const deleted = await selectKeyStore().delete(params.accountId);
5
- if (!deleted) {
6
- throw new Error("No EPC API key is registered for this account.");
7
- }
8
- console.error(`[epc] key-op op=deregister account=${params.accountId}`);
9
- }
@@ -1,10 +0,0 @@
1
- import { loadAccountKey } from "../lib/epc-api.js";
2
-
3
- export async function keyList(params: { accountId: string }): Promise<string> {
4
- const key = await loadAccountKey(params.accountId);
5
- console.error(`[epc] key-op op=list account=${params.accountId}`);
6
- if (!key) {
7
- return "No EPC API key registered. Use epc-key-register to add one.";
8
- }
9
- return `EPC API key registered (created: ${key.createdAt}, updated: ${key.updatedAt}). Key value is encrypted and cannot be retrieved.`;
10
- }
@@ -1,44 +0,0 @@
1
- import { selectKeyStore } from "../lib/key-store.js";
2
- import { BASE_URL, REQUEST_TIMEOUT_MS, EpcError } from "../lib/epc-api.js";
3
-
4
- // Probe the EPC register with the supplied credential against
5
- // /domestic/search constrained to a tiny page so we do not pull a real
6
- // payload. A valid credential returns HTTP 200 (rows may be empty for a
7
- // nonsense postcode, which is fine — authentication is what we test).
8
- // An invalid credential returns HTTP 401 Unauthorized.
9
-
10
- async function validateApiKey(credential: string): Promise<void> {
11
- const url = `${BASE_URL}/domestic/search?postcode=SW1A1AA&size=1`;
12
- const response = await fetch(url, {
13
- headers: {
14
- Accept: "application/json",
15
- Authorization: `Basic ${Buffer.from(credential, "utf-8").toString("base64")}`,
16
- },
17
- signal: AbortSignal.timeout(REQUEST_TIMEOUT_MS),
18
- });
19
- if (response.status === 401 || response.status === 403) {
20
- throw new Error(
21
- `EPC register rejected the credential (HTTP ${response.status}). Expected format is email:api-key.`,
22
- );
23
- }
24
- // 200, 404 (no rows for that postcode), and 200-with-rows all prove the
25
- // credential was accepted. Anything else surfaces as the upstream code.
26
- if (response.status === 200 || response.status === 404) return;
27
- const body = await response.text().catch(() => "");
28
- throw new EpcError(response.status, "domestic/search", body.slice(0, 200));
29
- }
30
-
31
- export async function keyRegister(params: {
32
- apiKey: string;
33
- accountId: string;
34
- }): Promise<void> {
35
- const { apiKey, accountId } = params;
36
- if (!apiKey.includes(":")) {
37
- throw new Error(
38
- "EPC credential must be in the form email:api-key (email of the account that generated the key, then a colon, then the API key).",
39
- );
40
- }
41
- await validateApiKey(apiKey);
42
- await selectKeyStore().save(accountId, apiKey);
43
- console.error(`[epc] key-op op=register account=${accountId}`);
44
- }
@@ -1,43 +0,0 @@
1
- import { epcSearch, groupAndPickMostRecent, EpcMatch } from "../lib/epc-api.js";
2
-
3
- interface LookupResult {
4
- status: "ok";
5
- matches: EpcMatch[];
6
- }
7
-
8
- export async function epcLookupByAddress(args: {
9
- accountId: string;
10
- address: string;
11
- postcode?: string;
12
- }): Promise<string> {
13
- const { accountId, address, postcode } = args;
14
- const { rows } = await epcSearch({
15
- toolName: "epc-lookup-by-address",
16
- accountId,
17
- identifier: address,
18
- params: { address, postcode, size: 25 },
19
- });
20
- const result: LookupResult = {
21
- status: "ok",
22
- matches: groupAndPickMostRecent(rows),
23
- };
24
- return JSON.stringify(result, null, 2);
25
- }
26
-
27
- export async function epcLookupByUprn(args: {
28
- accountId: string;
29
- uprn: string;
30
- }): Promise<string> {
31
- const { accountId, uprn } = args;
32
- const { rows } = await epcSearch({
33
- toolName: "epc-lookup-by-uprn",
34
- accountId,
35
- identifier: uprn,
36
- params: { uprn, size: 25 },
37
- });
38
- const result: LookupResult = {
39
- status: "ok",
40
- matches: groupAndPickMostRecent(rows),
41
- };
42
- return JSON.stringify(result, null, 2);
43
- }
@@ -1,20 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "module": "Node16",
5
- "moduleResolution": "Node16",
6
- "lib": ["ES2022"],
7
- "outDir": "dist",
8
- "rootDir": "src",
9
- "strict": true,
10
- "esModuleInterop": true,
11
- "skipLibCheck": true,
12
- "forceConsistentCasingInFileNames": true,
13
- "resolveJsonModule": true,
14
- "declaration": true,
15
- "declarationMap": true,
16
- "sourceMap": true
17
- },
18
- "include": ["src"],
19
- "exclude": ["src/**/__tests__/**", "src/**/*.test.ts"]
20
- }
@@ -1,8 +0,0 @@
1
- import { defineConfig } from "vitest/config";
2
-
3
- export default defineConfig({
4
- test: {
5
- include: ["src/**/__tests__/**/*.test.ts"],
6
- environment: "node",
7
- },
8
- });
@@ -1,8 +0,0 @@
1
- {
2
- "name": "real-agent-business",
3
- "description": "Monthly close, commission, payments, and business operations for UK residential estate agencies. Includes the month-end-close master plus its three building blocks (period-reconciler, commission-calculator, payment-batch-stager) and the existing business-growth, business-operations, personal-branding, and exp-partnership skills.",
4
- "version": "0.1.0",
5
- "author": {
6
- "name": "Rubytech LLC"
7
- }
8
- }
@@ -1,64 +0,0 @@
1
- ---
2
- name: real-agent-business
3
- description: "Monthly close, commission, payments, and business operations for UK residential estate agencies. Includes the month-end-close master plus its three building blocks (period-reconciler, commission-calculator, payment-batch-stager) and the existing business-growth, business-operations, personal-branding, and exp-partnership skills."
4
- tools: []
5
- skills:
6
- - skills/month-end-close/SKILL.md
7
- - skills/period-reconciler/SKILL.md
8
- - skills/commission-calculator/SKILL.md
9
- - skills/payment-batch-stager/SKILL.md
10
- - skills/business-growth/SKILL.md
11
- - skills/business-operations/SKILL.md
12
- - skills/personal-branding/SKILL.md
13
- - skills/exp-partnership/SKILL.md
14
- profileKeys:
15
- - realagent.accounting.chart_of_accounts_map
16
- - realagent.accounting.platform
17
- - realagent.bank.batch_format
18
- - realagent.bank.preferred_pay_date_offset_days
19
- - realagent.close.flag_threshold_fee_gbp
20
- - realagent.close.match_tolerance_days
21
- - realagent.close.match_tolerance_gbp
22
- - realagent.close.narrative_voice_samples
23
- - realagent.close.pack_recipients
24
- - realagent.close.writeoff_threshold_gbp
25
- - realagent.commission.adjustments
26
- - realagent.commission.franchise_levy_pct
27
- - realagent.commission.splits_table_path
28
- - realagent.payees
29
- always: false
30
- metadata: {"platform":{"optional":true,"embed":["admin"]}}
31
- ---
32
-
33
- # Real Agent, Month-End and Business Operations
34
-
35
- Eight skills covering month-end close and commission (the master workflow plus three building blocks) and the existing business operations skills.
36
-
37
- ## When to Activate
38
-
39
- The user is asking for the monthly close, the commission run, reconciliation against the accountant, or any of the existing business-growth or operations topics.
40
-
41
- ## Skills
42
-
43
- | Skill | Owner specialist | Purpose |
44
- |-------|------------------|---------|
45
- | `month-end-close` | compliance | Master workflow: monthly close, commission, accountant pack |
46
- | `period-reconciler` | compliance | Matches completions to fees received |
47
- | `commission-calculator` | compliance | Computes per-agent commission with splits |
48
- | `payment-batch-stager` | compliance | Stages payment batch for the bank, never initiates a transfer |
49
- | `business-growth` | negotiator | Growth strategy (existing) |
50
- | `business-operations` | negotiator | CRM, hiring, delegation (existing) |
51
- | `personal-branding` | negotiator | Personal brand execution (existing) |
52
- | `exp-partnership` | negotiator | eXp UK model (existing) |
53
-
54
- ## Tools Used
55
-
56
- No MCP server. Skills operate via existing platform tools:
57
-
58
- - `memory-search` for domain knowledge
59
- - `profile-read` and `profile-update` for the customisation profile
60
- - `action-pending`, `action-approve`, `action-reject`, `action-edit` for the writeoff, journal, payment-batch, and accountant-pack approval gates
61
-
62
- ## References
63
-
64
- Domain knowledge files loaded on demand by each skill.
@@ -1,133 +0,0 @@
1
- ---
2
- name: business-growth
3
- description: "Grow confidence, time leverage, and execution systems. Big goals, future-self behavior, ruthless focus, and evolution — without toxic hustle or bravado."
4
- ---
5
-
6
- # Business Growth
7
-
8
- You help the user upgrade their operating system: confidence, preparation, time leverage, and disciplined execution — so they can scale.
9
-
10
- ## Core principles
11
-
12
- 1. **Big energy is substance-backed confidence.** Not bragging, not ego.
13
- 2. **Be the future-you now.** Act like the person who already runs the bigger business — then do the work to earn it.
14
- 3. **Minutes are money.** Protect high-leverage time; delegate low-leverage work.
15
- 4. **Evolve or die.** Markets shift; staying still is a strategy for irrelevance.
16
-
17
- ## Guardrails
18
-
19
- - Never encourage deception. "Perception" must be backed by real preparation.
20
- - Never encourage unethical pressure tactics.
21
- - Never encourage burnout as a badge of honor.
22
-
23
- ## Additions for a scaling UK estate agency
24
-
25
- ### 1) Dan Martell — Buy Back Your Time (leverage-first hiring)
26
- Use the buyback principle:
27
- - don't hire to "grow"; hire to **remove low-value tasks from the leader's calendar**
28
- - audit → transfer → fill (with high-value work)
29
- - calculate effective hourly rate and delegate anything below it
30
-
31
- Reference: `references/buy-back-your-time.md`.
32
-
33
- ### 2) Keller models — 33 Touch + organisational growth path
34
- Use Keller's business-building logic:
35
- - lead generation is non-negotiable
36
- - database is the asset
37
- - scale through leverage: admin → buyer agent → listing specialist
38
-
39
- Reference: `references/keller-org-model.md`.
40
-
41
- ### 3) Lencioni team models (leadership + culture)
42
- When the user asks about team dysfunction, meetings, leadership and culture:
43
- - build trust first
44
- - encourage productive conflict
45
- - get commitment (clarity over certainty)
46
- - enforce accountability
47
- - focus on results
48
-
49
- Reference: `references/lencioni-team-models.md`.
50
-
51
- ### 4) Team roles & commission structures
52
- Use a clear roles chart (principal, lead agent, supporting agent, campaign manager, sales associate, admin) and align incentives.
53
-
54
- Reference: `references/team-roles-commission.md`.
55
-
56
- ### 5) Wingman structure (remote/offshore leverage)
57
- Use a wingman/VA model for:
58
- - admin
59
- - marketing ops
60
- - database hygiene
61
- - vendor reports
62
- - campaign management
63
-
64
- Reference: `references/wingman-structure.md`.
65
-
66
- ### 6) VA 2026 (estate agency ops playbook)
67
- Include specific responsibilities:
68
- - vendor reports
69
- - on-market tracker
70
- - seller onboarding + compliance
71
- - buyer registration + qualifying
72
- - viewing coordination
73
- - neighbour campaigns + anniversary campaigns
74
- - sales progression board
75
- - content scheduling
76
-
77
- Reference: `references/va-2026-ops.md`.
78
-
79
- ### 7) Serhant — Business in a Box (systems + time audit + CRM playbook)
80
- Use it for:
81
- - time audit (minutes equal money)
82
- - time blocking / eat the frog / Eisenhower
83
- - CRM choice + organisation
84
- - listing playbook mindset
85
-
86
- Reference: `references/serhant-bizinbox-notes.md`.
87
-
88
- ### 8) Firewave GOST + scorecards
89
- Help the user plan growth like a business:
90
- - set GOAL / OBJECTIVE / STRATEGY / TACTICS
91
- - run a monthly scorecard (output + results)
92
-
93
- Reference: `references/firewave-gost-scorecards.md`.
94
-
95
- ### 9) Listing management system (12-week L/O cadence)
96
- Use a simple weekly checklist:
97
- - **L = Letter**
98
- - **O = Offer**
99
-
100
- Reference: `references/listing-management-system.md`.
101
-
102
- ### 10) Net figure forms (fee defence + value framing)
103
- Use the net figure form to explain:
104
- - the cheapest agent can be the most expensive
105
- - focus on net outcome, not headline fee
106
-
107
- Reference: `references/net-figure-form.md`.
108
-
109
- ## How to respond when the user asks "how do I scale?"
110
-
111
- Default questions:
112
- 1) What's your current weekly GCI target and actual?
113
- 2) What are you doing that only you can do?
114
- 3) What's the single biggest bottleneck (lead gen, conversion, admin, delivery, recruitment)?
115
-
116
- Then propose a 30-day plan:
117
- - buy back time (delegate 3–5 tasks)
118
- - lock lead-gen time blocks
119
- - implement one scorecard
120
- - implement listing management cadence
121
-
122
- ## References (load as needed)
123
-
124
- - **Buy Back Your Time** → `references/buy-back-your-time.md`
125
- - **Keller org model** → `references/keller-org-model.md`
126
- - **Lencioni team models** → `references/lencioni-team-models.md`
127
- - **Team roles + commission** → `references/team-roles-commission.md`
128
- - **Wingman structure** → `references/wingman-structure.md`
129
- - **VA 2026 ops** → `references/va-2026-ops.md`
130
- - **Serhant BizInBox notes** → `references/serhant-bizinbox-notes.md`
131
- - **Firewave GOST + scorecards** → `references/firewave-gost-scorecards.md`
132
- - **Listing management** → `references/listing-management-system.md`
133
- - **Net figure form** → `references/net-figure-form.md`
@@ -1,37 +0,0 @@
1
- # Buy Back Your Time (Dan Martell) — practical notes
2
-
3
- ## Buyback principle
4
- Hire to **buy back your time**, not just to grow.
5
-
6
- ## Buyback loop
7
- 1) **Audit**: track tasks for 2 weeks
8
- 2) **Transfer**: delegate/automate
9
- 3) **Fill**: replace freed time with high-value work
10
-
11
- ## Effective hourly rate (EHR)
12
- Target annual income ÷ 2,000 hours = £/hour.
13
- Delegate anything that can be done for <25% of EHR.
14
-
15
- ## DRIP matrix
16
- - **D**elegation: someone else can do it
17
- - **R**eplacement: someone else can do it better
18
- - **I**nvestment: you should do it to build skill
19
- - **P**roduction: directly generates revenue
20
-
21
- ## Estate agent application
22
- Leader protects time for:
23
- - lead gen
24
- - listings
25
- - negotiations
26
- - recruitment
27
- - partnerships
28
-
29
- Delegate:
30
- - diary admin
31
- - marketing ops
32
- - vendor reports
33
- - CRM updates
34
- - chasing paperwork
35
-
36
- ## Camcorder method
37
- Record yourself doing a task once → turn into SOP → delegate.
@@ -1,14 +0,0 @@
1
- # Firewave GOST + scorecards
2
-
3
- ## GOST
4
- - **Goal** (big, yearly)
5
- - **Objective** (specific metrics + timeframe)
6
- - **Strategy** (one-sentence approach)
7
- - **Tactics** (multi-channel actions)
8
-
9
- ## Monthly scorecard
10
- Track:
11
- - outputs (direct mail sent, content posted, funnels)
12
- - results (valuations, instructions, stock #, pipeline, average fee)
13
-
14
- Rule: measure what drives growth, not vanity metrics.
@@ -1,17 +0,0 @@
1
- # Keller organisational model (estate agency)
2
-
3
- ## Stages
4
- 1) Agent (does everything)
5
- 2) Business owner (hires leverage)
6
- 3) Entrepreneur (leads the business)
7
-
8
- ## Typical order of hires
9
- 1) **Admin assistant** (compliance, scheduling, database)
10
- 2) **Buyer agent** (viewings, buyer management)
11
- 3) **Listing specialist** (scale listings)
12
-
13
- ## Key belief
14
- Listings build businesses; buyers can become jobs unless systemised.
15
-
16
- ## 33 Touch
17
- Database is the asset: 33 meaningful touches/year keeps you remembered.
@@ -1,22 +0,0 @@
1
- # Patrick Lencioni — team models
2
-
3
- ## Five Dysfunctions pyramid
4
- 1) Absence of trust
5
- 2) Fear of conflict
6
- 3) Lack of commitment
7
- 4) Avoidance of accountability
8
- 5) Inattention to results
9
-
10
- ## Leader actions
11
- - model vulnerability to build trust
12
- - mine for conflict (ask for disagreement)
13
- - force clarity (commitment over consensus)
14
- - create peer accountability
15
- - track shared results publicly
16
-
17
- ## Five Temptations (CEO)
18
- - status over results
19
- - popularity over accountability
20
- - certainty over clarity
21
- - harmony over productive conflict
22
- - invulnerability over trust
@@ -1,11 +0,0 @@
1
- # Listing Management System (12-week cadence)
2
-
3
- Use a simple checklist per listing:
4
- - **L = Letter** (seller-facing update/value)
5
- - **O = Offer** (offer/price conversation activity)
6
-
7
- Each week tick that you delivered:
8
- - a meaningful vendor touch
9
- - a pricing/offer strategy touch
10
-
11
- Goal: keep momentum and avoid “silent listings”.