@rubytech/create-maxy 1.0.753 → 1.0.756

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 (27) hide show
  1. package/package.json +1 -1
  2. package/payload/premium-plugins/real-agency/plugins/loop/PLUGIN.md +11 -2
  3. package/payload/premium-plugins/real-agency/plugins/loop/mcp/package-lock.json +1273 -34
  4. package/payload/premium-plugins/real-agency/plugins/loop/mcp/package.json +4 -2
  5. package/payload/premium-plugins/real-agency/plugins/loop/mcp/src/__tests__/loop-swagger.snapshot.json +26467 -0
  6. package/payload/premium-plugins/real-agency/plugins/loop/mcp/src/__tests__/swagger-write-coverage.test.ts +153 -0
  7. package/payload/premium-plugins/real-agency/plugins/loop/mcp/tsconfig.json +2 -1
  8. package/payload/premium-plugins/real-agency/plugins/loop/mcp/vitest.config.ts +9 -0
  9. package/payload/server/chunk-26QT2HEQ.js +9483 -0
  10. package/payload/server/maxy-edge.js +1 -1
  11. package/payload/server/public/assets/{Checkbox-CoHxu6iQ.js → Checkbox-C24nM41g.js} +1 -1
  12. package/payload/server/public/assets/{admin-B-dILI0e.js → admin-CTbpNMNG.js} +2 -2
  13. package/payload/server/public/assets/{data-D3SSQe8g.js → data-Bfj5UBbk.js} +1 -1
  14. package/payload/server/public/assets/{file-Bsc6G_ml.js → file-CLa5WeSl.js} +1 -1
  15. package/payload/server/public/assets/{graph-DNYh-ftf.js → graph-B6YWFq_S.js} +1 -1
  16. package/payload/server/public/assets/{house-7AA8vK65.js → house-BSa2PlqY.js} +1 -1
  17. package/payload/server/public/assets/{jsx-runtime-Bf6eMlTM.css → jsx-runtime-CW8OiWT9.css} +1 -1
  18. package/payload/server/public/assets/{public-ChayZXZ8.js → public-C_mAXOnw.js} +1 -1
  19. package/payload/server/public/assets/{share-2-CYBOKnMb.js → share-2-Sy-qhrFk.js} +1 -1
  20. package/payload/server/public/assets/{useVoiceRecorder-Blz894s4.js → useVoiceRecorder-CAf6yMpK.js} +1 -1
  21. package/payload/server/public/assets/{x-BnOIJSto.js → x-BMWxX7y6.js} +1 -1
  22. package/payload/server/public/data.html +6 -6
  23. package/payload/server/public/graph.html +7 -7
  24. package/payload/server/public/index.html +8 -8
  25. package/payload/server/public/public.html +5 -5
  26. package/payload/server/server.js +45 -16
  27. /package/payload/server/public/assets/{jsx-runtime-2IoeIcNG.js → jsx-runtime-CFleUYzT.js} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rubytech/create-maxy",
3
- "version": "1.0.753",
3
+ "version": "1.0.756",
4
4
  "description": "Install Maxy — AI for Productive People",
5
5
  "bin": {
6
6
  "create-maxy": "./dist/index.js"
@@ -59,6 +59,15 @@ Never include API key values in responses. Identify teams by name only. When the
59
59
 
60
60
  Use Loop tools when the user asks about CRM data: properties, people, viewings, feedback, team info, marketing matches, customer preferences, or supplier operations.
61
61
 
62
- Write operations (create viewings, record feedback, submit enquiries, mark jobs complete) require specifying which team to act through.
62
+ **Write triggers invoke writes (not reads) when the user says:**
63
+ - "submit", "send", "log", "record" → `loop-feedback-submit`, `loop-marketing-enquiry`, `loop-property-request`
64
+ - "create", "book", "schedule", "set up" a viewing → `loop-viewing-create`
65
+ - "add a note", "leave feedback", "record what they said" → `loop-viewing-update`
66
+ - "request a callback", "request more info", "ask for a viewing" → `loop-property-request` or `loop-marketing-match-request`
67
+ - "update preferences", "save what they're looking for" → `loop-customer-preferences` (action=write)
68
+ - "mark complete", "close out", "finished the job" → `loop-supplier` (action=maintenance-complete or board-complete)
69
+ - "submit a quote" → `loop-supplier` (action=maintenance-submit-quote)
63
70
 
64
- If no teams are registered, suggest using `loop-key-register` to add team API keys.
71
+ Default to writes when the user's intent is to *change* data in Loop, not just look it up. Reads return information; writes record the user's decision in Loop.
72
+
73
+ Write operations require specifying which team to act through. If no teams are registered, suggest using `loop-key-register` to add team API keys. If a write fails with a permission error (`Team "X" does not have <group> permission`), the registered key was scoped to fewer than 8 endpoint groups — re-register with the full permissions array (`["properties","people","viewings","feedback","team","marketing","customer","supplier"]`).