@rubytech/create-realagent-code 0.1.62 → 0.1.64

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 (688) hide show
  1. package/dist/__tests__/installer-specialist-registration.test.js +112 -0
  2. package/dist/index.js +22 -0
  3. package/dist/specialist-registration.js +78 -0
  4. package/package.json +1 -1
  5. package/payload/platform/plugins/admin/PLUGIN.md +22 -0
  6. package/payload/platform/plugins/admin/hooks/__tests__/turn-completed-graph-write.test.sh +50 -13
  7. package/payload/platform/plugins/admin/hooks/turn-completed-graph-write.sh +22 -21
  8. package/payload/platform/plugins/contacts/PLUGIN.md +9 -0
  9. package/payload/platform/plugins/docs/references/admin-session.md +57 -8
  10. package/payload/platform/plugins/docs/references/platform.md +4 -0
  11. package/payload/platform/plugins/email/PLUGIN.md +9 -0
  12. package/payload/platform/plugins/memory/PLUGIN.md +37 -0
  13. package/payload/platform/plugins/memory/mcp/dist/index.js +3 -3
  14. package/payload/platform/plugins/memory/mcp/dist/index.js.map +1 -1
  15. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/live-schema-source.test.js +137 -75
  16. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/live-schema-source.test.js.map +1 -1
  17. package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.d.ts +0 -17
  18. package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.d.ts.map +1 -1
  19. package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.js +32 -4
  20. package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.js.map +1 -1
  21. package/payload/platform/plugins/memory/mcp/dist/lib/log-ingest.d.ts +65 -0
  22. package/payload/platform/plugins/memory/mcp/dist/lib/log-ingest.d.ts.map +1 -0
  23. package/payload/platform/plugins/memory/mcp/dist/lib/log-ingest.js +182 -0
  24. package/payload/platform/plugins/memory/mcp/dist/lib/log-ingest.js.map +1 -0
  25. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection.test.js +8 -8
  26. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection.test.js.map +1 -1
  27. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/log-ingest.test.d.ts +2 -0
  28. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/log-ingest.test.d.ts.map +1 -0
  29. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/log-ingest.test.js +241 -0
  30. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/log-ingest.test.js.map +1 -0
  31. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.d.ts.map +1 -1
  32. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.js +9 -0
  33. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.js.map +1 -1
  34. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-enrich-rejection.d.ts +1 -1
  35. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-enrich-rejection.d.ts.map +1 -1
  36. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-enrich-rejection.js +9 -1
  37. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-enrich-rejection.js.map +1 -1
  38. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-memory-expunge.d.ts.map +1 -1
  39. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-memory-expunge.js +10 -2
  40. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-memory-expunge.js.map +1 -1
  41. package/payload/platform/plugins/memory/mcp/dist/tools/graph-prune-denylist-add.d.ts +1 -1
  42. package/payload/platform/plugins/memory/mcp/dist/tools/graph-prune-denylist-add.d.ts.map +1 -1
  43. package/payload/platform/plugins/memory/mcp/dist/tools/graph-prune-denylist-add.js +5 -1
  44. package/payload/platform/plugins/memory/mcp/dist/tools/graph-prune-denylist-add.js.map +1 -1
  45. package/payload/platform/plugins/memory/mcp/dist/tools/graph-prune-denylist-remove.d.ts +1 -1
  46. package/payload/platform/plugins/memory/mcp/dist/tools/graph-prune-denylist-remove.d.ts.map +1 -1
  47. package/payload/platform/plugins/memory/mcp/dist/tools/graph-prune-denylist-remove.js +5 -1
  48. package/payload/platform/plugins/memory/mcp/dist/tools/graph-prune-denylist-remove.js.map +1 -1
  49. package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.d.ts.map +1 -1
  50. package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.js +4 -0
  51. package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.js.map +1 -1
  52. package/payload/platform/plugins/memory/mcp/dist/tools/memory-classify.d.ts.map +1 -1
  53. package/payload/platform/plugins/memory/mcp/dist/tools/memory-classify.js +4 -0
  54. package/payload/platform/plugins/memory/mcp/dist/tools/memory-classify.js.map +1 -1
  55. package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.d.ts.map +1 -1
  56. package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.js +4 -0
  57. package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.js.map +1 -1
  58. package/payload/platform/plugins/memory/mcp/dist/tools/memory-edit-attachment.d.ts.map +1 -1
  59. package/payload/platform/plugins/memory/mcp/dist/tools/memory-edit-attachment.js +4 -0
  60. package/payload/platform/plugins/memory/mcp/dist/tools/memory-edit-attachment.js.map +1 -1
  61. package/payload/platform/plugins/memory/mcp/dist/tools/memory-empty-trash.d.ts.map +1 -1
  62. package/payload/platform/plugins/memory/mcp/dist/tools/memory-empty-trash.js +4 -0
  63. package/payload/platform/plugins/memory/mcp/dist/tools/memory-empty-trash.js.map +1 -1
  64. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-extract.d.ts.map +1 -1
  65. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-extract.js +4 -0
  66. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-extract.js.map +1 -1
  67. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-web.d.ts.map +1 -1
  68. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-web.js +4 -0
  69. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-web.js.map +1 -1
  70. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.d.ts.map +1 -1
  71. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.js +5 -0
  72. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.js.map +1 -1
  73. package/payload/platform/plugins/memory/mcp/dist/tools/memory-reindex.d.ts.map +1 -1
  74. package/payload/platform/plugins/memory/mcp/dist/tools/memory-reindex.js +4 -0
  75. package/payload/platform/plugins/memory/mcp/dist/tools/memory-reindex.js.map +1 -1
  76. package/payload/platform/plugins/memory/mcp/dist/tools/memory-rename-attachment.d.ts.map +1 -1
  77. package/payload/platform/plugins/memory/mcp/dist/tools/memory-rename-attachment.js +4 -0
  78. package/payload/platform/plugins/memory/mcp/dist/tools/memory-rename-attachment.js.map +1 -1
  79. package/payload/platform/plugins/memory/mcp/dist/tools/memory-restore.d.ts.map +1 -1
  80. package/payload/platform/plugins/memory/mcp/dist/tools/memory-restore.js +4 -0
  81. package/payload/platform/plugins/memory/mcp/dist/tools/memory-restore.js.map +1 -1
  82. package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.d.ts.map +1 -1
  83. package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.js +5 -0
  84. package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.js.map +1 -1
  85. package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.d.ts.map +1 -1
  86. package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.js +6 -0
  87. package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.js.map +1 -1
  88. package/payload/platform/plugins/memory/mcp/dist/tools/profile-delete.d.ts.map +1 -1
  89. package/payload/platform/plugins/memory/mcp/dist/tools/profile-delete.js +4 -0
  90. package/payload/platform/plugins/memory/mcp/dist/tools/profile-delete.js.map +1 -1
  91. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.d.ts.map +1 -1
  92. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.js +4 -0
  93. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.js.map +1 -1
  94. package/payload/platform/plugins/memory/mcp/vitest.config.ts +10 -3
  95. package/payload/platform/plugins/outlook/PLUGIN.md +7 -0
  96. package/payload/platform/plugins/replicate/PLUGIN.md +3 -0
  97. package/payload/platform/plugins/scheduling/PLUGIN.md +8 -0
  98. package/payload/platform/plugins/tasks/PLUGIN.md +14 -0
  99. package/payload/platform/plugins/waitlist/PLUGIN.md +7 -0
  100. package/payload/platform/plugins/whatsapp/PLUGIN.md +12 -0
  101. package/payload/platform/plugins/workflows/PLUGIN.md +8 -0
  102. package/payload/platform/services/claude-session-manager/dist/index.js +43 -1
  103. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  104. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +33 -0
  105. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  106. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +214 -59
  107. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  108. package/payload/platform/services/claude-session-manager/dist/specialist-drift.d.ts +23 -0
  109. package/payload/platform/services/claude-session-manager/dist/specialist-drift.d.ts.map +1 -0
  110. package/payload/platform/services/claude-session-manager/dist/specialist-drift.js +141 -0
  111. package/payload/platform/services/claude-session-manager/dist/specialist-drift.js.map +1 -0
  112. package/payload/platform/services/claude-session-manager/dist/tool-surface.d.ts +13 -2
  113. package/payload/platform/services/claude-session-manager/dist/tool-surface.d.ts.map +1 -1
  114. package/payload/platform/services/claude-session-manager/dist/tool-surface.js +150 -37
  115. package/payload/platform/services/claude-session-manager/dist/tool-surface.js.map +1 -1
  116. package/payload/platform/services/claude-session-manager/dist/types.d.ts +5 -0
  117. package/payload/platform/services/claude-session-manager/dist/types.d.ts.map +1 -1
  118. package/payload/platform/templates/agents/admin/IDENTITY.md +1 -1
  119. package/payload/premium-plugins/real-agent/BUNDLE.md +2 -4
  120. package/payload/premium-plugins/real-agent/agents/compliance.md +1 -1
  121. package/payload/premium-plugins/real-agent/agents/valuer.md +1 -2
  122. package/payload/premium-plugins/real-agent/plugins/epc/.claude-plugin/plugin.json +3 -3
  123. package/payload/premium-plugins/real-agent/plugins/listings/.claude-plugin/plugin.json +1 -1
  124. package/payload/premium-plugins/real-agent/plugins/listings/PLUGIN.md +1 -3
  125. package/payload/premium-plugins/real-agent/plugins/listings/skills/new-instruction/SKILL.md +11 -12
  126. package/payload/premium-plugins/real-agent/plugins/loop/PLUGIN.md +27 -0
  127. package/payload/premium-plugins/real-agent/plugins/preval/.claude-plugin/plugin.json +1 -1
  128. package/payload/premium-plugins/real-agent/plugins/preval/PLUGIN.md +16 -8
  129. package/payload/premium-plugins/real-agent/plugins/preval/hooks/preval-prompt-required.sh +140 -0
  130. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/SKILL.md +92 -40
  131. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/__tests__/adherence.test.py +373 -0
  132. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/render.py +299 -115
  133. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/template-inputs.schema.json +34 -19
  134. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/template.html +88 -19
  135. package/payload/premium-plugins/real-agent/plugins/property-data/PLUGIN.md +22 -0
  136. package/payload/premium-plugins/real-agent/specs/03-new-instruction.md +8 -12
  137. package/payload/server/{chunk-2IKQERHN.js → chunk-S6PQA6Q4.js} +43 -34
  138. package/payload/server/maxy-edge.js +1 -1
  139. package/payload/server/public/assets/{admin-DhN3G8W7.js → admin-ymReS1mN.js} +1 -1
  140. package/payload/server/public/assets/{data-B2ZVXOcE.js → data-D6U2e85B.js} +1 -1
  141. package/payload/server/public/assets/{graph-BAMGPHrK.js → graph-C274PN27.js} +1 -1
  142. package/payload/server/public/assets/{graph-labels-D9eBbvxo.js → graph-labels-DQFzd1FY.js} +1 -1
  143. package/payload/server/public/assets/{page-DjdVMWCz.js → page-D-OLjort.js} +1 -1
  144. package/payload/server/public/assets/{page-CV27Al6Z.js → page-DFFt9_Q0.js} +1 -1
  145. package/payload/server/public/data.html +3 -3
  146. package/payload/server/public/graph.html +3 -3
  147. package/payload/server/public/index.html +4 -4
  148. package/payload/server/server.js +2 -2
  149. package/payload/platform/plugins/brochures/.claude-plugin/plugin.json +0 -8
  150. package/payload/platform/plugins/brochures/PLUGIN.md +0 -38
  151. package/payload/platform/plugins/brochures/commands/make-brochure.md +0 -11
  152. package/payload/platform/plugins/brochures/skills/a4-print-documents/SKILL.md +0 -478
  153. package/payload/platform/plugins/brochures/skills/brand-design/SKILL.md +0 -192
  154. package/payload/platform/plugins/brochures/skills/make-brochure/SKILL.md +0 -354
  155. package/payload/platform/plugins/brochures/skills/make-brochure/references/seller-brief-template.md +0 -115
  156. package/payload/platform/plugins/brochures/skills/property-brochure/SKILL.md +0 -142
  157. package/payload/platform/plugins/brochures/skills/property-brochure/references/build.md +0 -270
  158. package/payload/platform/plugins/brochures/skills/property-brochure/references/copy.md +0 -211
  159. package/payload/platform/plugins/brochures/skills/property-brochure/references/images.md +0 -166
  160. package/payload/platform/plugins/brochures/skills/property-brochure/references/index-landing.md +0 -376
  161. package/payload/platform/plugins/brochures/skills/property-brochure/references/index.html +0 -1288
  162. package/payload/platform/plugins/brochures/skills/property-brochure/references/placeholders.md +0 -250
  163. package/payload/platform/plugins/brochures/skills/property-brochure/references/registers.md +0 -47
  164. package/payload/platform/plugins/brochures/skills/property-brochure/references/seller-brief.md +0 -56
  165. package/payload/platform/plugins/brochures/skills/property-brochure/references/structure.md +0 -249
  166. package/payload/platform/plugins/brochures/skills/property-brochure/references/template.html +0 -2370
  167. package/payload/platform/plugins/brochures/skills/property-extract/SKILL.md +0 -372
  168. package/payload/platform/plugins/brochures/skills/property-market-report/SKILL.md +0 -100
  169. package/payload/platform/plugins/brochures/skills/property-market-report/references/render.py +0 -267
  170. package/payload/platform/plugins/brochures/skills/property-market-report/references/template.html +0 -266
  171. package/payload/platform/plugins/brochures/skills/property-socials/SKILL.md +0 -141
  172. package/payload/platform/plugins/buyers/.claude-plugin/plugin.json +0 -8
  173. package/payload/platform/plugins/buyers/PLUGIN.md +0 -34
  174. package/payload/platform/plugins/buyers/skills/buyer-feedback/SKILL.md +0 -109
  175. package/payload/platform/plugins/buyers/skills/buyer-management/SKILL.md +0 -42
  176. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-qualification-questions.md +0 -16
  177. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-qualification.md +0 -59
  178. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-scripts.md +0 -63
  179. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-working-scripts.md +0 -54
  180. package/payload/platform/plugins/buyers/skills/buyer-management/references/feedback-collection.md +0 -42
  181. package/payload/platform/plugins/buyers/skills/buyer-management/references/offer-capture.md +0 -38
  182. package/payload/platform/plugins/buyers/skills/buyer-management/references/viewing-booking.md +0 -32
  183. package/payload/platform/plugins/buyers/skills/buyer-management/references/viewing-management.md +0 -52
  184. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/SKILL.md +0 -407
  185. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/care-fees-guide.md +0 -68
  186. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/divorce-sales-guide.md +0 -61
  187. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/downsizing-guide.md +0 -45
  188. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/first-time-buyers.md +0 -92
  189. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/first-time-sellers.md +0 -78
  190. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/probate-guide.md +0 -53
  191. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/upsizing-guide.md +0 -41
  192. package/payload/platform/plugins/buyers/skills/property-enquiry/SKILL.md +0 -126
  193. package/payload/platform/plugins/buyers/skills/viewing-management/SKILL.md +0 -111
  194. package/payload/platform/plugins/epc/.claude-plugin/plugin.json +0 -17
  195. package/payload/platform/plugins/epc/PLUGIN.md +0 -85
  196. package/payload/platform/plugins/epc/mcp/dist/index.d.ts +0 -2
  197. package/payload/platform/plugins/epc/mcp/dist/index.d.ts.map +0 -1
  198. package/payload/platform/plugins/epc/mcp/dist/index.js +0 -117
  199. package/payload/platform/plugins/epc/mcp/dist/index.js.map +0 -1
  200. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.d.ts +0 -3
  201. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.d.ts.map +0 -1
  202. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.js +0 -72
  203. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.js.map +0 -1
  204. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.d.ts +0 -60
  205. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.d.ts.map +0 -1
  206. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.js +0 -181
  207. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.js.map +0 -1
  208. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.d.ts +0 -3
  209. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.d.ts.map +0 -1
  210. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.js +0 -49
  211. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.js.map +0 -1
  212. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.d.ts +0 -15
  213. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.d.ts.map +0 -1
  214. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.js +0 -130
  215. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.js.map +0 -1
  216. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.d.ts +0 -5
  217. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.d.ts.map +0 -1
  218. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.js +0 -38
  219. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.js.map +0 -1
  220. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.d.ts +0 -4
  221. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.d.ts.map +0 -1
  222. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.js +0 -9
  223. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.js.map +0 -1
  224. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.d.ts +0 -4
  225. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.d.ts.map +0 -1
  226. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.js +0 -10
  227. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.js.map +0 -1
  228. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.d.ts +0 -5
  229. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.d.ts.map +0 -1
  230. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.js +0 -36
  231. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.js.map +0 -1
  232. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.d.ts +0 -10
  233. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.d.ts.map +0 -1
  234. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.js +0 -30
  235. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.js.map +0 -1
  236. package/payload/platform/plugins/epc/mcp/package-lock.json +0 -2566
  237. package/payload/platform/plugins/epc/mcp/package.json +0 -21
  238. package/payload/platform/plugins/epc/mcp/src/__tests__/epc-api.test.ts +0 -251
  239. package/payload/platform/plugins/epc/mcp/src/__tests__/key-roundtrip.test.ts +0 -113
  240. package/payload/platform/plugins/epc/mcp/src/__tests__/lookup.test.ts +0 -181
  241. package/payload/platform/plugins/epc/mcp/src/__tests__/schema-parity.test.ts +0 -54
  242. package/payload/platform/plugins/epc/mcp/src/index.ts +0 -156
  243. package/payload/platform/plugins/epc/mcp/src/lib/crypto.ts +0 -79
  244. package/payload/platform/plugins/epc/mcp/src/lib/epc-api.ts +0 -241
  245. package/payload/platform/plugins/epc/mcp/src/lib/file-crypto.ts +0 -55
  246. package/payload/platform/plugins/epc/mcp/src/lib/key-store.ts +0 -172
  247. package/payload/platform/plugins/epc/mcp/src/lib/neo4j.ts +0 -47
  248. package/payload/platform/plugins/epc/mcp/src/tools/key-deregister.ts +0 -9
  249. package/payload/platform/plugins/epc/mcp/src/tools/key-list.ts +0 -10
  250. package/payload/platform/plugins/epc/mcp/src/tools/key-register.ts +0 -44
  251. package/payload/platform/plugins/epc/mcp/src/tools/lookup.ts +0 -43
  252. package/payload/platform/plugins/epc/mcp/tsconfig.json +0 -20
  253. package/payload/platform/plugins/epc/mcp/vitest.config.ts +0 -8
  254. package/payload/platform/plugins/estate-business/.claude-plugin/plugin.json +0 -8
  255. package/payload/platform/plugins/estate-business/PLUGIN.md +0 -64
  256. package/payload/platform/plugins/estate-business/skills/business-growth/SKILL.md +0 -133
  257. package/payload/platform/plugins/estate-business/skills/business-growth/references/buy-back-your-time.md +0 -37
  258. package/payload/platform/plugins/estate-business/skills/business-growth/references/firewave-gost-scorecards.md +0 -14
  259. package/payload/platform/plugins/estate-business/skills/business-growth/references/keller-org-model.md +0 -17
  260. package/payload/platform/plugins/estate-business/skills/business-growth/references/lencioni-team-models.md +0 -22
  261. package/payload/platform/plugins/estate-business/skills/business-growth/references/listing-management-system.md +0 -11
  262. package/payload/platform/plugins/estate-business/skills/business-growth/references/net-figure-form.md +0 -11
  263. package/payload/platform/plugins/estate-business/skills/business-growth/references/serhant-bizinbox-notes.md +0 -13
  264. package/payload/platform/plugins/estate-business/skills/business-growth/references/team-roles-commission.md +0 -14
  265. package/payload/platform/plugins/estate-business/skills/business-growth/references/va-2026-ops.md +0 -43
  266. package/payload/platform/plugins/estate-business/skills/business-growth/references/wingman-structure.md +0 -13
  267. package/payload/platform/plugins/estate-business/skills/business-operations/SKILL.md +0 -32
  268. package/payload/platform/plugins/estate-business/skills/business-operations/references/crm-systems.md +0 -57
  269. package/payload/platform/plugins/estate-business/skills/business-operations/references/hiring-guide.md +0 -59
  270. package/payload/platform/plugins/estate-business/skills/business-operations/references/impact-framework.md +0 -47
  271. package/payload/platform/plugins/estate-business/skills/business-operations/references/minutes-equal-money.md +0 -55
  272. package/payload/platform/plugins/estate-business/skills/business-operations/references/team-management.md +0 -48
  273. package/payload/platform/plugins/estate-business/skills/commission-calculator/SKILL.md +0 -40
  274. package/payload/platform/plugins/estate-business/skills/exp-partnership/SKILL.md +0 -52
  275. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/12-reasons.md +0 -39
  276. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/95-5-system.md +0 -66
  277. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/agent-attraction-scripts.md +0 -90
  278. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/business-partnership.md +0 -92
  279. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/exp-model-overview.md +0 -66
  280. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/model-comparison.md +0 -66
  281. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/revenue-share-explained.md +0 -57
  282. package/payload/platform/plugins/estate-business/skills/month-end-close/SKILL.md +0 -69
  283. package/payload/platform/plugins/estate-business/skills/payment-batch-stager/SKILL.md +0 -42
  284. package/payload/platform/plugins/estate-business/skills/period-reconciler/SKILL.md +0 -42
  285. package/payload/platform/plugins/estate-business/skills/personal-branding/SKILL.md +0 -117
  286. package/payload/platform/plugins/estate-business/skills/personal-branding/references/attraction-agent-notes.md +0 -31
  287. package/payload/platform/plugins/estate-business/skills/personal-branding/references/attraction-agent.md +0 -58
  288. package/payload/platform/plugins/estate-business/skills/personal-branding/references/authenticity-boundaries.md +0 -28
  289. package/payload/platform/plugins/estate-business/skills/personal-branding/references/become-a-brand-leader-notes.md +0 -19
  290. package/payload/platform/plugins/estate-business/skills/personal-branding/references/blast-formula.md +0 -42
  291. package/payload/platform/plugins/estate-business/skills/personal-branding/references/brand-leader.md +0 -48
  292. package/payload/platform/plugins/estate-business/skills/personal-branding/references/brand-strategy-system.md +0 -59
  293. package/payload/platform/plugins/estate-business/skills/personal-branding/references/content-engine.md +0 -49
  294. package/payload/platform/plugins/estate-business/skills/personal-branding/references/firewave-blast-and-blogging.md +0 -23
  295. package/payload/platform/plugins/estate-business/skills/personal-branding/references/gary-v-content.md +0 -52
  296. package/payload/platform/plugins/estate-business/skills/personal-branding/references/gary-v-principles.md +0 -20
  297. package/payload/platform/plugins/estate-business/skills/personal-branding/references/oversubscribed-positioning.md +0 -18
  298. package/payload/platform/plugins/estate-business/skills/personal-branding/references/platforms.md +0 -41
  299. package/payload/platform/plugins/estate-business/skills/personal-branding/references/priestley-oversubscribed.md +0 -54
  300. package/payload/platform/plugins/estate-business/skills/personal-branding/references/storeys-style-examples.md +0 -25
  301. package/payload/platform/plugins/estate-business/skills/personal-branding/references/visual-identity.md +0 -27
  302. package/payload/platform/plugins/estate-coaching/.claude-plugin/plugin.json +0 -8
  303. package/payload/platform/plugins/estate-coaching/PLUGIN.md +0 -54
  304. package/payload/platform/plugins/estate-coaching/skills/agent-performance/SKILL.md +0 -371
  305. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/atomic-habits.md +0 -52
  306. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/daily-routine-scorecard.md +0 -104
  307. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/hp6-model.md +0 -63
  308. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/twelve-week-year.md +0 -71
  309. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/SKILL.md +0 -36
  310. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/references/coaching-boundaries.md +0 -56
  311. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/references/feedback-framework.md +0 -61
  312. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/references/performance-framework.md +0 -109
  313. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/SKILL.md +0 -421
  314. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/coaching-exercises.md +0 -86
  315. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/goal-setting.md +0 -78
  316. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/one-to-one-framework.md +0 -92
  317. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/soi-workbook.md +0 -103
  318. package/payload/platform/plugins/estate-coaching/skills/serhant-training/SKILL.md +0 -410
  319. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/agent-training-guide.md +0 -70
  320. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/business-in-a-box.md +0 -72
  321. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/buyers-guide.md +0 -53
  322. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/codo-method.md +0 -72
  323. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/website-planning-guide.md +0 -79
  324. package/payload/platform/plugins/estate-sales/.claude-plugin/plugin.json +0 -8
  325. package/payload/platform/plugins/estate-sales/PLUGIN.md +0 -52
  326. package/payload/platform/plugins/estate-sales/skills/chase-progression/SKILL.md +0 -107
  327. package/payload/platform/plugins/estate-sales/skills/negotiation/SKILL.md +0 -35
  328. package/payload/platform/plugins/estate-sales/skills/negotiation/references/deal-saving.md +0 -47
  329. package/payload/platform/plugins/estate-sales/skills/negotiation/references/negotiation-deep-guide.md +0 -64
  330. package/payload/platform/plugins/estate-sales/skills/negotiation/references/negotiation-prep-principles.md +0 -29
  331. package/payload/platform/plugins/estate-sales/skills/negotiation/references/negotiation-techniques.md +0 -42
  332. package/payload/platform/plugins/estate-sales/skills/negotiation/references/offer-presentation.md +0 -43
  333. package/payload/platform/plugins/estate-sales/skills/risk-scorer/SKILL.md +0 -42
  334. package/payload/platform/plugins/estate-sales/skills/sales-closer/SKILL.md +0 -24
  335. package/payload/platform/plugins/estate-sales/skills/sales-closer/references/serhant-emotion-stages.md +0 -36
  336. package/payload/platform/plugins/estate-sales/skills/sales-discovery/SKILL.md +0 -30
  337. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/chris-voss-discovery.md +0 -88
  338. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/firewave-gost-journey.md +0 -68
  339. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/phil-jones-openers.md +0 -78
  340. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/pre-listing-checklist.md +0 -77
  341. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/serhant-improv.md +0 -22
  342. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/tom-ferry-discovery.md +0 -103
  343. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/vendor-motivation-competitor.md +0 -52
  344. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/SKILL.md +0 -29
  345. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/chris-voss-negotiation.md +0 -70
  346. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/phil-jones-price-words.md +0 -40
  347. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/serhant-negotiation-plus.md +0 -55
  348. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/tom-panos-commission-pricing.md +0 -57
  349. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/tony-morris-questioning.md +0 -54
  350. package/payload/platform/plugins/estate-sales/skills/sales-progression/SKILL.md +0 -27
  351. package/payload/platform/plugins/estate-sales/skills/sales-progression/references/conveyancing-guide.md +0 -54
  352. package/payload/platform/plugins/estate-sales/skills/sales-progression/references/transaction-tracking.md +0 -66
  353. package/payload/platform/plugins/estate-teaching/.claude-plugin/plugin.json +0 -8
  354. package/payload/platform/plugins/estate-teaching/PLUGIN.md +0 -30
  355. package/payload/platform/plugins/estate-teaching/skills/content-directory/SKILL.md +0 -39
  356. package/payload/platform/plugins/estate-teaching/skills/content-directory/references/module-delivery.md +0 -65
  357. package/payload/platform/plugins/estate-teaching/skills/content-directory/references/progress-tracking.md +0 -47
  358. package/payload/platform/plugins/leads/.claude-plugin/plugin.json +0 -8
  359. package/payload/platform/plugins/leads/PLUGIN.md +0 -61
  360. package/payload/platform/plugins/leads/skills/chain-progression-tracker/SKILL.md +0 -51
  361. package/payload/platform/plugins/leads/skills/diary-builder/SKILL.md +0 -38
  362. package/payload/platform/plugins/leads/skills/enquiry-triage/SKILL.md +0 -36
  363. package/payload/platform/plugins/leads/skills/lead-nurturing/SKILL.md +0 -137
  364. package/payload/platform/plugins/leads/skills/lead-nurturing/references/buyer-search-letter.md +0 -28
  365. package/payload/platform/plugins/leads/skills/lead-nurturing/references/buyer-search-letters.md +0 -37
  366. package/payload/platform/plugins/leads/skills/lead-nurturing/references/database-reactivation.md +0 -30
  367. package/payload/platform/plugins/leads/skills/lead-nurturing/references/email-nurture-sequences.md +0 -45
  368. package/payload/platform/plugins/leads/skills/lead-nurturing/references/facebook-referrals.md +0 -30
  369. package/payload/platform/plugins/leads/skills/lead-nurturing/references/firewave-email-nurture-sequences.md +0 -41
  370. package/payload/platform/plugins/leads/skills/lead-nurturing/references/keller-33-touch.md +0 -34
  371. package/payload/platform/plugins/leads/skills/lead-nurturing/references/neighbour-letters.md +0 -31
  372. package/payload/platform/plugins/leads/skills/lead-nurturing/references/neighbour-notification-letter.md +0 -20
  373. package/payload/platform/plugins/leads/skills/lead-nurturing/references/ofi-follow-up-dialogue.md +0 -22
  374. package/payload/platform/plugins/leads/skills/lead-nurturing/references/ofi-follow-up.md +0 -26
  375. package/payload/platform/plugins/leads/skills/lead-nurturing/references/serhant-three-fs-plus.md +0 -21
  376. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sharran-10x10x10.md +0 -18
  377. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sms-templates.md +0 -40
  378. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sphere-of-influence-notes.md +0 -34
  379. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sphere-of-influence.md +0 -60
  380. package/payload/platform/plugins/leads/skills/lead-nurturing/references/tom-panos-sms-templates.md +0 -59
  381. package/payload/platform/plugins/leads/skills/morning-round/SKILL.md +0 -72
  382. package/payload/platform/plugins/leads/skills/prospecting/SKILL.md +0 -33
  383. package/payload/platform/plugins/leads/skills/prospecting/references/database-matching.md +0 -30
  384. package/payload/platform/plugins/leads/skills/prospecting/references/database-value.md +0 -53
  385. package/payload/platform/plugins/leads/skills/prospecting/references/prospecting-dialogues.md +0 -24
  386. package/payload/platform/plugins/leads/skills/prospecting/references/reactivation.md +0 -34
  387. package/payload/platform/plugins/listings/.claude-plugin/plugin.json +0 -8
  388. package/payload/platform/plugins/listings/PLUGIN.md +0 -102
  389. package/payload/platform/plugins/listings/skills/comparable-finder/SKILL.md +0 -52
  390. package/payload/platform/plugins/listings/skills/epc-checker/SKILL.md +0 -38
  391. package/payload/platform/plugins/listings/skills/home-preparation/SKILL.md +0 -28
  392. package/payload/platform/plugins/listings/skills/home-preparation/references/kerb-appeal.md +0 -38
  393. package/payload/platform/plugins/listings/skills/home-preparation/references/photo-day.md +0 -59
  394. package/payload/platform/plugins/listings/skills/home-preparation/references/situational-tips.md +0 -50
  395. package/payload/platform/plugins/listings/skills/home-preparation/references/staging-guide.md +0 -52
  396. package/payload/platform/plugins/listings/skills/listing-copy-writer/SKILL.md +0 -55
  397. package/payload/platform/plugins/listings/skills/listing-presentation/SKILL.md +0 -286
  398. package/payload/platform/plugins/listings/skills/listing-presentation/references/booking-script.md +0 -51
  399. package/payload/platform/plugins/listings/skills/listing-presentation/references/objection-scripts.md +0 -193
  400. package/payload/platform/plugins/listings/skills/listing-presentation/references/penhaul-presentation.md +0 -123
  401. package/payload/platform/plugins/listings/skills/listing-presentation/references/pre-listing-kit.md +0 -139
  402. package/payload/platform/plugins/listings/skills/listing-presentation/references/set-to-sell.md +0 -55
  403. package/payload/platform/plugins/listings/skills/listing-presentation/references/sharran-frameworks.md +0 -107
  404. package/payload/platform/plugins/listings/skills/local-market-stats/SKILL.md +0 -33
  405. package/payload/platform/plugins/listings/skills/new-instruction/SKILL.md +0 -78
  406. package/payload/platform/plugins/listings/skills/particulars-builder/SKILL.md +0 -48
  407. package/payload/platform/plugins/listings/skills/portal-launch-scheduler/SKILL.md +0 -49
  408. package/payload/platform/plugins/listings/skills/pricing-scenario-builder/SKILL.md +0 -35
  409. package/payload/platform/plugins/listings/skills/property-marketing/SKILL.md +0 -337
  410. package/payload/platform/plugins/listings/skills/property-marketing/references/auction-report-template.md +0 -41
  411. package/payload/platform/plugins/listings/skills/property-marketing/references/coming-soon-campaign.md +0 -43
  412. package/payload/platform/plugins/listings/skills/property-marketing/references/direct-mail-templates.md +0 -121
  413. package/payload/platform/plugins/listings/skills/property-marketing/references/eoi-form-template.md +0 -62
  414. package/payload/platform/plugins/listings/skills/property-marketing/references/monthly-scorecard.md +0 -63
  415. package/payload/platform/plugins/listings/skills/supplier-booker/SKILL.md +0 -39
  416. package/payload/platform/plugins/listings/skills/talk-track-composer/SKILL.md +0 -36
  417. package/payload/platform/plugins/listings/skills/terms-of-business-drafter/SKILL.md +0 -54
  418. package/payload/platform/plugins/listings/skills/valuation-prep/SKILL.md +0 -69
  419. package/payload/platform/plugins/loop/.claude-plugin/plugin.json +0 -17
  420. package/payload/platform/plugins/loop/PLUGIN.md +0 -233
  421. package/payload/platform/plugins/loop/mcp/dist/index.d.ts +0 -2
  422. package/payload/platform/plugins/loop/mcp/dist/index.d.ts.map +0 -1
  423. package/payload/platform/plugins/loop/mcp/dist/index.js +0 -320
  424. package/payload/platform/plugins/loop/mcp/dist/index.js.map +0 -1
  425. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.d.ts +0 -10
  426. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.d.ts.map +0 -1
  427. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.js +0 -88
  428. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.js.map +0 -1
  429. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.d.ts +0 -3
  430. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.d.ts.map +0 -1
  431. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.js +0 -48
  432. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.js.map +0 -1
  433. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.d.ts +0 -22
  434. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.d.ts.map +0 -1
  435. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.js +0 -165
  436. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.js.map +0 -1
  437. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.d.ts +0 -82
  438. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.d.ts.map +0 -1
  439. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.js +0 -392
  440. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.js.map +0 -1
  441. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.d.ts +0 -5
  442. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.d.ts.map +0 -1
  443. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js +0 -40
  444. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js.map +0 -1
  445. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.d.ts +0 -12
  446. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.d.ts.map +0 -1
  447. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.js +0 -22
  448. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.js.map +0 -1
  449. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.d.ts +0 -10
  450. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.d.ts.map +0 -1
  451. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.js +0 -24
  452. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.js.map +0 -1
  453. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.d.ts +0 -16
  454. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.d.ts.map +0 -1
  455. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.js +0 -35
  456. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.js.map +0 -1
  457. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.d.ts +0 -5
  458. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.d.ts.map +0 -1
  459. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.js +0 -9
  460. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.js.map +0 -1
  461. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.d.ts +0 -4
  462. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.d.ts.map +0 -1
  463. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.js +0 -14
  464. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.js.map +0 -1
  465. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.d.ts +0 -9
  466. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.d.ts.map +0 -1
  467. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.js +0 -43
  468. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.js.map +0 -1
  469. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.d.ts +0 -6
  470. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.d.ts.map +0 -1
  471. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.js +0 -7
  472. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.js.map +0 -1
  473. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.d.ts +0 -9
  474. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.d.ts.map +0 -1
  475. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.js +0 -16
  476. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.js.map +0 -1
  477. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.d.ts +0 -15
  478. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.d.ts.map +0 -1
  479. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.js +0 -11
  480. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.js.map +0 -1
  481. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.d.ts +0 -10
  482. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.d.ts.map +0 -1
  483. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.js +0 -39
  484. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.js.map +0 -1
  485. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.d.ts +0 -9
  486. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.d.ts.map +0 -1
  487. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.js +0 -125
  488. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.js.map +0 -1
  489. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.d.ts +0 -18
  490. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.d.ts.map +0 -1
  491. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.js +0 -87
  492. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.js.map +0 -1
  493. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.d.ts +0 -10
  494. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.d.ts.map +0 -1
  495. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.js +0 -82
  496. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.js.map +0 -1
  497. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.d.ts +0 -33
  498. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.d.ts.map +0 -1
  499. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.js +0 -19
  500. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.js.map +0 -1
  501. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.d.ts +0 -11
  502. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.d.ts.map +0 -1
  503. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.js +0 -26
  504. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.js.map +0 -1
  505. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.d.ts +0 -15
  506. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.d.ts.map +0 -1
  507. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.js +0 -11
  508. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.js.map +0 -1
  509. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.d.ts +0 -16
  510. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.d.ts.map +0 -1
  511. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.js +0 -41
  512. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.js.map +0 -1
  513. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.d.ts +0 -9
  514. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.d.ts.map +0 -1
  515. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.js +0 -19
  516. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.js.map +0 -1
  517. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.d.ts +0 -13
  518. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.d.ts.map +0 -1
  519. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.js +0 -49
  520. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.js.map +0 -1
  521. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.d.ts +0 -7
  522. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.d.ts.map +0 -1
  523. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.js +0 -19
  524. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.js.map +0 -1
  525. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.d.ts +0 -5
  526. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.d.ts.map +0 -1
  527. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.js +0 -32
  528. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.js.map +0 -1
  529. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.d.ts +0 -14
  530. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.d.ts.map +0 -1
  531. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.js +0 -11
  532. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.js.map +0 -1
  533. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.d.ts +0 -9
  534. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.d.ts.map +0 -1
  535. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.js +0 -85
  536. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.js.map +0 -1
  537. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.d.ts +0 -13
  538. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.d.ts.map +0 -1
  539. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.js +0 -44
  540. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.js.map +0 -1
  541. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.d.ts +0 -14
  542. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.d.ts.map +0 -1
  543. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.js +0 -18
  544. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.js.map +0 -1
  545. package/payload/platform/plugins/loop/mcp/package-lock.json +0 -2549
  546. package/payload/platform/plugins/loop/mcp/package.json +0 -21
  547. package/payload/platform/plugins/loop/mcp/src/__tests__/loop-swagger.snapshot.json +0 -26467
  548. package/payload/platform/plugins/loop/mcp/src/__tests__/new-tool-shape.test.ts +0 -99
  549. package/payload/platform/plugins/loop/mcp/src/__tests__/plugin-md-time-doctrine.test.ts +0 -132
  550. package/payload/platform/plugins/loop/mcp/src/__tests__/swagger-write-coverage.test.ts +0 -154
  551. package/payload/platform/plugins/loop/mcp/src/index.ts +0 -498
  552. package/payload/platform/plugins/loop/mcp/src/lib/crypto.ts +0 -105
  553. package/payload/platform/plugins/loop/mcp/src/lib/file-crypto.ts +0 -54
  554. package/payload/platform/plugins/loop/mcp/src/lib/key-store.ts +0 -221
  555. package/payload/platform/plugins/loop/mcp/src/lib/loop-api.ts +0 -567
  556. package/payload/platform/plugins/loop/mcp/src/lib/neo4j.ts +0 -51
  557. package/payload/platform/plugins/loop/mcp/src/tools/auto-responder.ts +0 -80
  558. package/payload/platform/plugins/loop/mcp/src/tools/customer-preferences.ts +0 -66
  559. package/payload/platform/plugins/loop/mcp/src/tools/feedback.ts +0 -86
  560. package/payload/platform/plugins/loop/mcp/src/tools/key-deregister.ts +0 -12
  561. package/payload/platform/plugins/loop/mcp/src/tools/key-list.ts +0 -19
  562. package/payload/platform/plugins/loop/mcp/src/tools/key-register.ts +0 -70
  563. package/payload/platform/plugins/loop/mcp/src/tools/marketing-enquiry.ts +0 -27
  564. package/payload/platform/plugins/loop/mcp/src/tools/marketing-match-batch.ts +0 -53
  565. package/payload/platform/plugins/loop/mcp/src/tools/marketing-match-request.ts +0 -42
  566. package/payload/platform/plugins/loop/mcp/src/tools/marketing-match.ts +0 -84
  567. package/payload/platform/plugins/loop/mcp/src/tools/people-detail.ts +0 -245
  568. package/payload/platform/plugins/loop/mcp/src/tools/people-search.ts +0 -180
  569. package/payload/platform/plugins/loop/mcp/src/tools/property-detail.ts +0 -145
  570. package/payload/platform/plugins/loop/mcp/src/tools/property-intent.ts +0 -84
  571. package/payload/platform/plugins/loop/mcp/src/tools/property-listed.ts +0 -81
  572. package/payload/platform/plugins/loop/mcp/src/tools/property-search.ts +0 -92
  573. package/payload/platform/plugins/loop/mcp/src/tools/property-sold.ts +0 -67
  574. package/payload/platform/plugins/loop/mcp/src/tools/supplier.ts +0 -129
  575. package/payload/platform/plugins/loop/mcp/src/tools/team-availability.ts +0 -52
  576. package/payload/platform/plugins/loop/mcp/src/tools/team-info.ts +0 -95
  577. package/payload/platform/plugins/loop/mcp/src/tools/viewing-create.ts +0 -41
  578. package/payload/platform/plugins/loop/mcp/src/tools/viewing-detail.ts +0 -171
  579. package/payload/platform/plugins/loop/mcp/src/tools/viewing-search.ts +0 -92
  580. package/payload/platform/plugins/loop/mcp/src/tools/viewing-update.ts +0 -53
  581. package/payload/platform/plugins/loop/mcp/tsconfig.json +0 -20
  582. package/payload/platform/plugins/loop/mcp/vitest.config.ts +0 -9
  583. package/payload/platform/plugins/loop/skills/compliance-flag-checker/SKILL.md +0 -53
  584. package/payload/platform/plugins/loop/skills/priority-ranker/SKILL.md +0 -40
  585. package/payload/platform/plugins/loop/skills/tone-matched-drafter/SKILL.md +0 -53
  586. package/payload/platform/plugins/loop/skills/variance-narrator/SKILL.md +0 -50
  587. package/payload/platform/plugins/loop/skills/vendor-research/SKILL.md +0 -54
  588. package/payload/platform/plugins/preval/.claude-plugin/plugin.json +0 -8
  589. package/payload/platform/plugins/preval/PLUGIN.md +0 -47
  590. package/payload/platform/plugins/preval/skills/property-preval/SKILL.md +0 -146
  591. package/payload/platform/plugins/preval/skills/property-preval/references/render.py +0 -630
  592. package/payload/platform/plugins/preval/skills/property-preval/references/template-inputs.schema.json +0 -189
  593. package/payload/platform/plugins/preval/skills/property-preval/references/template.html +0 -312
  594. package/payload/platform/plugins/property-data/.claude-plugin/plugin.json +0 -17
  595. package/payload/platform/plugins/property-data/PLUGIN.md +0 -158
  596. package/payload/platform/plugins/property-data/mcp/dist/index.d.ts +0 -2
  597. package/payload/platform/plugins/property-data/mcp/dist/index.d.ts.map +0 -1
  598. package/payload/platform/plugins/property-data/mcp/dist/index.js +0 -236
  599. package/payload/platform/plugins/property-data/mcp/dist/index.js.map +0 -1
  600. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.d.ts +0 -3
  601. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.d.ts.map +0 -1
  602. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.js +0 -72
  603. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.js.map +0 -1
  604. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.d.ts +0 -3
  605. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.d.ts.map +0 -1
  606. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.js +0 -49
  607. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.js.map +0 -1
  608. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.d.ts +0 -15
  609. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.d.ts.map +0 -1
  610. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.js +0 -135
  611. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.js.map +0 -1
  612. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.d.ts +0 -5
  613. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.d.ts.map +0 -1
  614. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.js +0 -38
  615. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.js.map +0 -1
  616. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.d.ts +0 -28
  617. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.d.ts.map +0 -1
  618. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.js +0 -101
  619. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.js.map +0 -1
  620. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.d.ts +0 -24
  621. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.d.ts.map +0 -1
  622. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.js +0 -33
  623. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.js.map +0 -1
  624. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.d.ts +0 -4
  625. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.d.ts.map +0 -1
  626. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.js +0 -9
  627. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.js.map +0 -1
  628. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.d.ts +0 -4
  629. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.d.ts.map +0 -1
  630. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.js +0 -10
  631. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.js.map +0 -1
  632. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.d.ts +0 -5
  633. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.d.ts.map +0 -1
  634. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.js +0 -50
  635. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.js.map +0 -1
  636. package/payload/platform/plugins/property-data/mcp/package-lock.json +0 -2566
  637. package/payload/platform/plugins/property-data/mcp/package.json +0 -21
  638. package/payload/platform/plugins/property-data/mcp/src/__tests__/endpoints.test.ts +0 -252
  639. package/payload/platform/plugins/property-data/mcp/src/__tests__/key-roundtrip.test.ts +0 -107
  640. package/payload/platform/plugins/property-data/mcp/src/__tests__/propertydata-api.test.ts +0 -184
  641. package/payload/platform/plugins/property-data/mcp/src/__tests__/schema-parity.test.ts +0 -62
  642. package/payload/platform/plugins/property-data/mcp/src/index.ts +0 -409
  643. package/payload/platform/plugins/property-data/mcp/src/lib/crypto.ts +0 -79
  644. package/payload/platform/plugins/property-data/mcp/src/lib/file-crypto.ts +0 -55
  645. package/payload/platform/plugins/property-data/mcp/src/lib/key-store.ts +0 -181
  646. package/payload/platform/plugins/property-data/mcp/src/lib/neo4j.ts +0 -47
  647. package/payload/platform/plugins/property-data/mcp/src/lib/propertydata-api.ts +0 -120
  648. package/payload/platform/plugins/property-data/mcp/src/tools/endpoints.ts +0 -47
  649. package/payload/platform/plugins/property-data/mcp/src/tools/key-deregister.ts +0 -9
  650. package/payload/platform/plugins/property-data/mcp/src/tools/key-list.ts +0 -10
  651. package/payload/platform/plugins/property-data/mcp/src/tools/key-register.ts +0 -54
  652. package/payload/platform/plugins/property-data/mcp/tsconfig.json +0 -20
  653. package/payload/platform/plugins/property-data/mcp/vitest.config.ts +0 -8
  654. package/payload/platform/plugins/property-data/skills/property-data/SKILL.md +0 -77
  655. package/payload/platform/plugins/vendors/.claude-plugin/plugin.json +0 -8
  656. package/payload/platform/plugins/vendors/PLUGIN.md +0 -33
  657. package/payload/platform/plugins/vendors/skills/vendor-communication/SKILL.md +0 -42
  658. package/payload/platform/plugins/vendors/skills/vendor-communication/references/fee-protection-and-agenda.md +0 -28
  659. package/payload/platform/plugins/vendors/skills/vendor-communication/references/listing-scripts.md +0 -44
  660. package/payload/platform/plugins/vendors/skills/vendor-communication/references/negotiation-deep-guide.md +0 -70
  661. package/payload/platform/plugins/vendors/skills/vendor-communication/references/price-alignment-scripts.md +0 -33
  662. package/payload/platform/plugins/vendors/skills/vendor-communication/references/price-alignment.md +0 -34
  663. package/payload/platform/plugins/vendors/skills/vendor-communication/references/scenario-scripts.md +0 -38
  664. package/payload/platform/plugins/vendors/skills/vendor-communication/references/seller-engagement.md +0 -51
  665. package/payload/platform/plugins/vendors/skills/vendor-communication/references/valuation-booking.md +0 -76
  666. package/payload/platform/plugins/vendors/skills/vendor-communication/references/vendor-scripts.md +0 -63
  667. package/payload/platform/plugins/vendors/skills/vendor-communication/references/vendor-updates.md +0 -41
  668. package/payload/platform/plugins/vendors/skills/vendor-updates/SKILL.md +0 -153
  669. package/payload/premium-plugins/real-agent/plugins/epc/PLUGIN.md +0 -85
  670. package/payload/premium-plugins/real-agent/plugins/epc/mcp/package-lock.json +0 -2566
  671. package/payload/premium-plugins/real-agent/plugins/epc/mcp/package.json +0 -21
  672. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/epc-api.test.ts +0 -251
  673. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/key-roundtrip.test.ts +0 -113
  674. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/lookup.test.ts +0 -181
  675. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/schema-parity.test.ts +0 -54
  676. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/index.ts +0 -156
  677. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/crypto.ts +0 -79
  678. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/epc-api.ts +0 -241
  679. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/file-crypto.ts +0 -55
  680. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/key-store.ts +0 -172
  681. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/neo4j.ts +0 -47
  682. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/key-deregister.ts +0 -9
  683. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/key-list.ts +0 -10
  684. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/key-register.ts +0 -44
  685. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/lookup.ts +0 -43
  686. package/payload/premium-plugins/real-agent/plugins/epc/mcp/tsconfig.json +0 -20
  687. package/payload/premium-plugins/real-agent/plugins/epc/mcp/vitest.config.ts +0 -8
  688. package/payload/premium-plugins/real-agent/plugins/listings/skills/epc-checker/SKILL.md +0 -38
@@ -1,146 +0,0 @@
1
- ---
2
- name: property-preval
3
- description: Use when an operator wants a pre-valuation pack to pitch for a UK property listing — a 5-page A4 PDF that combines a market-data report for the postcode with the subject property's own valuation range, full-width sold + asking comparables, and the agent's recent successes as the sales close. Triggers include "preval <address>", "pre-valuation for <address>", "valuation pitch for <address>", "what's <address> worth and pitch us to list it", "pre-appraisal pack for <address>".
4
- ---
5
-
6
- # Property Preval
7
-
8
- A 5-page A4 PDF that pitches the agent for the listing: cover (full-bleed subject hero), subject valuation (sqft × £/sqft band with operator adjustments), market context, full-width comparables (sold + asking stacked), and the agent's recent successes + disclaimer. **Preval is a sales pitch, not just a data sheet** — every page either tells the vendor what the property is worth or what the agent has recently delivered nearby.
9
-
10
- ## Typography is fixed; only colours and logos come from the agent
11
-
12
- Same typographic lock as `property-market-report`:
13
-
14
- - **Display** — Cormorant Garamond (italic for headlines, KPI values, prices, addresses)
15
- - **Body** — Lora
16
- - **Sans / labels** — Inter (eyebrows, KPI labels, chips, footer meta)
17
-
18
- Never substitute the agent's body or display fonts even if their `DESIGN.md` specifies different families. The pack reads as an editorial / luxury document across every brand. The agent's identity comes through the **palette and logo only**.
19
-
20
- ## Inputs (never invented)
21
-
22
- - **`address`** — full UK address ending in a valid postcode (e.g. `9 Phoenix Drive, Bishop's Stortford, CM23 2UJ`). Skill derives the postcode by matching the UK postcode regex on the final token group; stops if no match.
23
- - **`brand`** — agent design tokens, same shape as property-market-report: `name`, `tagline`, hex tokens `primary` / `primary_dark` / `accent` / `paper` / `paper_banded` / `rule`. Optional `logo_light` / `logo_dark` filesystem paths. Resolved from the agent's `DESIGN.md` (e.g. `/estate-agents/muvin/DESIGN.md`); read the canonical hex values directly, never substitute "close" colours. Only colour tokens are consumed; typography/spacing/radius tokens in the agent's `DESIGN.md` are ignored by design.
24
- - **`subject`** — paste-in details about the property being valued:
25
- - `cover_hero` (filesystem path or URL to a photo of the subject — required for the cover).
26
- - Optional `beds`, `type`, `tenure`, `condition` (well / average / needs work).
27
- - `adjustments[]` — operator-curated array of `{label, delta_pct}` covering esoteric factors that shift the headline range (e.g. `{"label":"South-facing garden","delta_pct":3}`, `{"label":"Needs full reno","delta_pct":-8}`). Deltas sum linearly into the final range.
28
- - `narrative` — one short paragraph the operator writes about the property.
29
- - **Floor area is auto-pulled from the EPC register** via `real-agent-epc` (`epc-lookup-by-address`) and surfaced as `sqft_m2` + derived `sqft`. Both are required. If EPC has no record (pre-2008 property never sold or let; Scotland/NI; unmatched), the operator pastes `subject.sqft` directly **before invocation** as a deliberate override. There is no mid-run paste prompt and no benchmark-only render — a null `sqft` aborts the run with `reason=subject-sqft-missing`.
30
- - **`agent_listings`** — the agent's recent sold / under-offer / live listings to feature on the closing page. Up to 6 entries of `{url, address, price, beds, type, image, status, slug}` where `status ∈ {"Sold","Under offer","For sale"}`. Operator picks the comps that make the strongest pitch; this is *not* the PropertyData sample.
31
- - **`market_summary`** — `headline` (one display-italic line), `paragraphs[]` (2–3 short paragraphs), `demand_gauge_position` (percentage string like `"62%"`), `price_growth_note`, `demand_note`. The operator drafts or accepts an LLM stub.
32
-
33
- ## Tools the skill calls
34
-
35
- Parallel fan-out keyed on the derived postcode + the subject address:
36
-
37
- **PropertyData (12 calls — credit cost 12):**
38
- 1. `property-data-prices` — asking £ distribution + raw asking comps.
39
- 2. `property-data-prices-per-sqf` — asking £/sqft.
40
- 3. `property-data-sold-prices` — Land Registry sold transactions + raw sold comps.
41
- 4. `property-data-sold-prices-per-sqf` — achieved £/sqft (plus 70pc band used for the valuation range).
42
- 5. `property-data-growth` — 7y price series.
43
- 6. `property-data-growth-psf` — 7y £/sqft series.
44
- 7. `property-data-demand` — for-sale, sales/mo, turnover, MoI, DoM, demand rating.
45
- 8. `property-data-demand-rent` — rental-side demand pillar.
46
- 9. `property-data-property-types` — mix (detached / semi / terraced / flat).
47
- 10. `property-data-crime` — area crime rating + breakdown.
48
- 11. `property-data-flood-risk` — area flood risk (full postcode only).
49
- 12. `property-data-council-tax` — band D + per-property bands (full postcode only).
50
-
51
- **EPC (1 call — free, rate-limited):**
52
-
53
- 13. `epc-lookup-by-address(address, postcode)` — subject floor area + energy ratings + lodgement date.
54
-
55
- `address-match-uprn` and `planning-applications` are deliberately omitted (CRM hygiene and dev-precedent reports respectively).
56
-
57
- ## Output
58
-
59
- Directory under `~/Documents/Maxy/preval/<postcode-compact>-<YYYY-MM-DD>/` containing:
60
-
61
- - `index.html` — single self-contained file.
62
- - `img/` — copied logos and the subject hero image.
63
- - `<slug>-<date>.pdf` — exactly **5** A4 pages. Renderer asserts via `pdfinfo` and raises if ≠ 5.
64
-
65
- Return the PDF path to the operator.
66
-
67
- ## Pages
68
-
69
- 1. **Cover** — full-bleed `subject.cover_hero` with vertical gradient scrim; light logo top-left; eyebrow "`<brand.name>` · Pre-valuation"; address in display-italic; postcode chip; four-up meta strip (Report · Address · Postcode · Generated). Lifted from property-market-report's cover contract.
70
- 2. **Subject valuation** — KPI strip (sqft, beds, EPC rating, type). Centre panel: headline range = `sqft × sold_psf_low–high` (Land Registry 70pc band) with `sqft × asking_psf` shown as a cross-check. Operator `adjustments[]` displayed as a stacked list (label · delta% · running £). Final range pill at the foot. One paragraph of `subject.narrative` under the panel. `sqft` is required — a null value aborts the run, never renders a benchmark-only panel.
71
- 3. **Market context** — KPI cube (avg asking, avg sold, £/sqft, YoY); pill + gauge for demand; 7y growth sparkline (£ solid + £/sqft dashed); summary paragraphs. Same patterns as property-market-report's page 2.
72
- 4. **Comparables (full-width, stacked)** — Nearest sold table (top 6) full-width across the page; Live asking tile grid (top 4) full-width below. Vertically stacked, never side-by-side — corrects the cramped two-column layout in the v1 preval where the asking tiles got pushed to ~40mm columns of italic addresses.
73
- 5. **Recently with `<brand.name>` + sources** — agent's own listings as a clickable tile grid (`<a>` per card, status badge: Sold / Under offer / For sale), then the sources / methodology / accuracy / investment block. Closes with `Real Agent · Generated <date> · <postcode>` in the footer.
74
-
75
- ## How to execute
76
-
77
- 1. Match the postcode out of the address (`/[A-Z]{1,2}[0-9][A-Z0-9]?\s?[0-9][A-Z]{2}/i`). Stop if no match.
78
- 2. Run the 13 fan-out tools (12 PropertyData + 1 EPC) in parallel. Every failure is fail-loud — no mid-run paste prompts, no benchmark-only render, no degraded pack on disk:
79
- - **PropertyData `key-not-registered`** → abort `reason=property-data-key-not-registered` with the `property-data-key-register` remediation hint.
80
- - **PropertyData `http-429`** → back off and retry the single throttled tool **once**. A second `http-429` aborts `reason=property-data-rate-limited`.
81
- - **PropertyData `http-5xx` / network failure** → abort `reason=property-data-unavailable`.
82
- - **EPC failure of any kind** — `key-not-registered`, `http-404 (no record on file)`, `http-429`, `http-5xx`, network failure, or MCP not configured on the account — aborts the run. The operator's options before re-running are (a) run Task 155 to deploy / register the EPC MCP, or (b) paste `subject.sqft` (plus `subject.sqft_m2`) into the inputs as a deliberate operator override. There is no in-band prompt and no benchmark-only mode.
83
- 3. Compute valuation range:
84
- - `sold_psf_low` = `sold-prices-per-sqf` `70pc_range[0]`
85
- - `sold_psf_high` = `sold-prices-per-sqf` `70pc_range[1]`
86
- - `low = sqft × sold_psf_low`, `mid = sqft × sold_psf`, `high = sqft × sold_psf_high`
87
- - Apply `adjustments` linearly: `factor = 1 + Σ delta_pct / 100`. Final range = `[low × factor, high × factor]`, midpoint = `mid × factor`.
88
- 4. Assemble the `inputs.json` shape per `references/template-inputs.schema.json`.
89
- 5. `python3 references/render.py inputs.json`. Renderer fills the template, copies logos + hero into `img/`, drives Chrome `--print-to-pdf`, asserts page count == 5.
90
- 6. Return the PDF path.
91
-
92
- ## Adjustments — linear vs compound
93
-
94
- Deltas sum linearly (`-8 + 3 = -5%`, applied as `× 0.95`). Compound interpretation (`× 0.92 × 1.03`) would give a slightly different number (-5.24%) but the operator presents the figures verbally as a sum, so the displayed maths must match the verbal claim. If a future operator wants compound adjustments, this is a deliberate skill-level rewrite, not a config switch.
95
-
96
- ## Observability
97
-
98
- - `[preval] start address="<addr>" postcode=<pc>` at run start.
99
- - `[preval] done pdf=<path> pages=<n> ms=<n>` at run end.
100
- - `[preval] aborted reason=<cause> address="<addr>" postcode=<pc> ms=<n>` on any abort (one line, then exit 2; no `done`).
101
- - Each fan-out call emits its own `[property-data] tool=<name>` or `[epc] tool=<name>` line in `server.log` (inherited contracts; no new instrumentation here).
102
-
103
- ## Hard breakpoints
104
-
105
- Each row aborts the run with the named cause. No PDF or `index.html` is left on disk. Operator sees a single-line cause + one-line remediation hint, nothing else.
106
-
107
- | Forbidden state | `reason=` cause |
108
- |---|---|
109
- | EPC MCP not configured / `key-not-registered` / `http-5xx` / network error | `epc-mcp-unavailable` (operator must run Task 155 or paste `subject.sqft` before invocation) |
110
- | `subject.sqft` null after EPC lookup | `subject-sqft-missing` |
111
- | `subject.sqft_m2` null | `subject-sqft-m2-missing` |
112
- | `subject.cover_hero` missing, unreachable, below 1200×800, or symlinked into another property's folder | `subject-cover-hero-missing` / `subject-cover-hero-unreadable` / `subject-cover-hero-too-small` / `subject-cover-hero-symlinked-foreign` |
113
- | `brand` not resolved from an on-disk `DESIGN.md` (required token missing) | `brand-unresolved` |
114
- | `agent_listings` empty | `agent-listings-empty` |
115
- | `market_summary.paragraphs` < 2 entries | `market-summary-too-thin` |
116
- | PropertyData any-call `http-429` after 1 retry | `property-data-rate-limited` |
117
- | PropertyData any-call `key-not-registered` | `property-data-key-not-registered` (operator runs `property-data-key-register`) |
118
- | EPC lookup returns `http-404` (no record on file) | `epc-no-record` (operator pastes `subject.sqft` as override and re-runs, or accepts that this address can't be preval'd until lodged) |
119
-
120
- ## Forbidden behaviours
121
-
122
- The skill is the contract; if any of these slip through, the pack must not render:
123
-
124
- - Silent fallback selection — switching to a benchmark-only / "Estimate requires floor area" panel when an input is missing.
125
- - Inventing inputs — fabricating `brand`, `subject.cover_hero`, `market_summary.paragraphs`, `agent_listings`, or any field the operator did not supply.
126
- - Reusing a hero photo from a different property as a placeholder.
127
- - Defaulting `agent_listings[].status` to `"For sale"` when the source is null.
128
- - Mid-run prompts for a paste-in (EPC retries, sqft, etc). Overrides are operator-supplied **before** invocation.
129
- - Omitting the `[preval]` start / done / aborted log emissions.
130
- - Leaving partial output (`index.html`, `<stem>.pdf`) on disk after an abort.
131
-
132
- ## Failure diagnostics
133
-
134
- - `pages=6` (or ≠ 5) in the `done` line → template overflow on one page. Diagnose with `pdftoppm -png -f <n> -l <n> <pdf>`, then trim that panel's padding only.
135
- - `start` with no matching `done` or `aborted` within 60s → renderer crashed mid-run. Inspect with `grep -B2 -A20 '\[preval\] start address="<echoed>"' server.log`.
136
- - `[preval] aborted reason=<cause>` → look up `<cause>` in the **Hard breakpoints** table for the remediation hint.
137
-
138
- ## Out of scope
139
-
140
- - Multi-address batch preval (CSV in → many PDFs out).
141
- - Loop CRM auto-publish of the PDF onto a contact's record.
142
- - Pulling `agent_listings` from Loop CRM automatically — operator paste-in for now; CRM wire-up is a separate task.
143
- - Caching of MCP responses (13 credits per pack is acceptable).
144
- - A separate cover letter / pitch letter — the cover page *is* the pitch.
145
- - Compound adjustments (linear sum is the contract; see above).
146
- - Subject sqft from sources other than EPC and the operator paste-in fallback (e.g. Loop CRM floor plans, Rightmove sqft scrape) — separate task if pursued.