@rubytech/create-sitedesk-code 0.1.530 → 0.1.532

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 (99) hide show
  1. package/package.json +1 -1
  2. package/payload/platform/lib/graph-write/dist/index.d.ts.map +1 -1
  3. package/payload/platform/lib/graph-write/dist/index.js +4 -0
  4. package/payload/platform/lib/graph-write/dist/index.js.map +1 -1
  5. package/payload/platform/lib/graph-write/src/index.ts +4 -0
  6. package/payload/platform/lib/learning-constants/dist/index.d.ts +35 -0
  7. package/payload/platform/lib/learning-constants/dist/index.d.ts.map +1 -0
  8. package/payload/platform/lib/learning-constants/dist/index.js +50 -0
  9. package/payload/platform/lib/learning-constants/dist/index.js.map +1 -0
  10. package/payload/platform/lib/learning-constants/package.json +7 -0
  11. package/payload/platform/lib/learning-constants/src/index.test.ts +47 -0
  12. package/payload/platform/lib/learning-constants/src/index.ts +57 -0
  13. package/payload/platform/lib/learning-constants/tsconfig.json +9 -0
  14. package/payload/platform/neo4j/schema.cypher +24 -0
  15. package/payload/platform/package.json +1 -1
  16. package/payload/platform/plugins/admin/.claude-plugin/plugin.json +1 -1
  17. package/payload/platform/plugins/admin/PLUGIN.md +1 -1
  18. package/payload/platform/plugins/admin/mcp/dist/index.js +2 -2
  19. package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
  20. package/payload/platform/plugins/admin/skills/insight/SKILL.md +1 -1
  21. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +58 -10
  22. package/payload/platform/plugins/admin/skills/whats-new/SKILL.md +12 -0
  23. package/payload/platform/plugins/docs/references/linkedin-extension.md +18 -9
  24. package/payload/platform/plugins/docs/references/session-retrospective.md +39 -0
  25. package/payload/platform/plugins/linkedin-extension/.claude-plugin/plugin.json +1 -1
  26. package/payload/platform/plugins/linkedin-extension/PLUGIN.md +7 -10
  27. package/payload/platform/plugins/linkedin-extension/extension/README.md +20 -17
  28. package/payload/platform/plugins/linkedin-extension/extension/background/sw.js +96 -13
  29. package/payload/platform/plugins/linkedin-extension/extension/manifest.json +3 -18
  30. package/payload/platform/plugins/linkedin-extension/extension/options/options.html +2 -2
  31. package/payload/platform/plugins/linkedin-extension/extension/options/options.js +1 -1
  32. package/payload/platform/plugins/memory/.claude-plugin/plugin.json +1 -1
  33. package/payload/platform/plugins/memory/PLUGIN.md +15 -1
  34. package/payload/platform/plugins/memory/mcp/dist/index.js +169 -0
  35. package/payload/platform/plugins/memory/mcp/dist/index.js.map +1 -1
  36. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/session-jsonl.test.d.ts +2 -0
  37. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/session-jsonl.test.d.ts.map +1 -0
  38. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/session-jsonl.test.js +95 -0
  39. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/session-jsonl.test.js.map +1 -0
  40. package/payload/platform/plugins/memory/mcp/dist/lib/session-jsonl.d.ts +60 -0
  41. package/payload/platform/plugins/memory/mcp/dist/lib/session-jsonl.d.ts.map +1 -0
  42. package/payload/platform/plugins/memory/mcp/dist/lib/session-jsonl.js +153 -0
  43. package/payload/platform/plugins/memory/mcp/dist/lib/session-jsonl.js.map +1 -0
  44. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/cross-account.test.js +6 -4
  45. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/cross-account.test.js.map +1 -1
  46. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-derive.test.d.ts +2 -0
  47. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-derive.test.d.ts.map +1 -0
  48. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-derive.test.js +160 -0
  49. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-derive.test.js.map +1 -0
  50. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-recall.test.d.ts +2 -0
  51. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-recall.test.d.ts.map +1 -0
  52. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-recall.test.js +64 -0
  53. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-recall.test.js.map +1 -0
  54. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-scan.test.d.ts +2 -0
  55. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-scan.test.d.ts.map +1 -0
  56. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-scan.test.js +78 -0
  57. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/learnings-scan.test.js.map +1 -0
  58. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-derive.d.ts +41 -0
  59. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-derive.d.ts.map +1 -0
  60. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-derive.js +225 -0
  61. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-derive.js.map +1 -0
  62. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-recall.d.ts +31 -0
  63. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-recall.d.ts.map +1 -0
  64. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-recall.js +67 -0
  65. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-recall.js.map +1 -0
  66. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-scan.d.ts +40 -0
  67. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-scan.d.ts.map +1 -0
  68. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-scan.js +55 -0
  69. package/payload/platform/plugins/memory/mcp/dist/tools/learnings-scan.js.map +1 -0
  70. package/payload/platform/plugins/memory/references/schema-base.md +3 -0
  71. package/payload/platform/plugins/memory/skills/learnings-recall/SKILL.md +27 -0
  72. package/payload/platform/plugins/scheduling/PLUGIN.md +1 -1
  73. package/payload/platform/plugins/whatsapp/PLUGIN.md +1 -1
  74. package/payload/platform/plugins/whatsapp/mcp/dist/index.js +5 -5
  75. package/payload/platform/plugins/whatsapp/mcp/dist/index.js.map +1 -1
  76. package/payload/platform/plugins/whatsapp/references/channels-whatsapp.md +6 -6
  77. package/payload/platform/plugins/whatsapp/skills/connect-whatsapp/SKILL.md +6 -2
  78. package/payload/platform/plugins/whatsapp/skills/manage-whatsapp-config/SKILL.md +6 -2
  79. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
  80. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +3 -0
  81. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
  82. package/payload/platform/services/claude-session-manager/dist/learning-index.d.ts +28 -0
  83. package/payload/platform/services/claude-session-manager/dist/learning-index.d.ts.map +1 -0
  84. package/payload/platform/services/claude-session-manager/dist/learning-index.js +70 -0
  85. package/payload/platform/services/claude-session-manager/dist/learning-index.js.map +1 -0
  86. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  87. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +18 -0
  88. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  89. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts +6 -0
  90. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts.map +1 -1
  91. package/payload/platform/services/claude-session-manager/dist/system-prompt.js +17 -0
  92. package/payload/platform/services/claude-session-manager/dist/system-prompt.js.map +1 -1
  93. package/payload/platform/templates/specialists/agents/librarian.md +1 -1
  94. package/payload/server/{chunk-2YMGNYA3.js → chunk-UH6GCQO4.js} +78 -38
  95. package/payload/server/{manager-XPRN5UF5.js → manager-H34562SN.js} +5 -1
  96. package/payload/server/server.js +121 -38
  97. package/payload/platform/plugins/linkedin-extension/extension/assets/pill.css +0 -52
  98. package/payload/platform/plugins/linkedin-extension/extension/content/profile.js +0 -100
  99. package/payload/platform/plugins/linkedin-extension/extension/content/thread.js +0 -102
@@ -1,100 +0,0 @@
1
- // Profile content script. Runs on linkedin.com/in/*.
2
- // Manifest concatenates extractors.js + this file, so MaxyLinkedinExtractors
3
- // is in scope. One click → scrape → post to the service worker → pill state.
4
-
5
- ;(function () {
6
- const TAG_MOUNT = '[linkedin-ext-mount]'
7
- const TAG_SCRAPE = '[linkedin-ext-scrape]'
8
- const TAG_ERROR = '[linkedin-ext-error]'
9
- const PILL_ID = 'maxy-linkedin-pill'
10
-
11
- function setState(pill, state, label) {
12
- pill.dataset.state = state
13
- if (label) pill.textContent = label
14
- }
15
-
16
- async function onClick(pill) {
17
- const dispatchId = crypto.randomUUID()
18
- setState(pill, 'busy', 'Capturing…')
19
-
20
- const result = globalThis.MaxyLinkedinExtractors.extractProfile(document)
21
- if (!result.ok) {
22
- console.error(TAG_SCRAPE + ' page=profile ok=false missing=' + result.missing.join(','))
23
- setState(pill, 'error', 'Missing: ' + result.missing.join(', '))
24
- return
25
- }
26
- console.log(TAG_SCRAPE + ' page=profile ok=true fields=' + Object.keys(result.payload).join(','))
27
-
28
- const envelope = {
29
- source: 'linkedin',
30
- kind: 'profile',
31
- capturedAt: new Date().toISOString(),
32
- pageUrl: location.href.split('?')[0].split('#')[0],
33
- dispatchId: dispatchId,
34
- profile: result.payload,
35
- }
36
-
37
- let reply
38
- try {
39
- reply = await chrome.runtime.sendMessage({ type: 'linkedin-ingest', envelope: envelope })
40
- } catch (err) {
41
- console.error(TAG_ERROR + ' reason=worker-unreachable detail=' + (err && err.message ? err.message : String(err)))
42
- setState(pill, 'error', 'Capture failed')
43
- return
44
- }
45
-
46
- if (!reply || !reply.ok) {
47
- // `worker-unreachable` is the extension's OWN service worker failing to
48
- // answer. It is not `unreachable`, which means the admin host did not
49
- // answer — blaming SiteDesk here sends the operator to check a tunnel that
50
- // was never involved.
51
- const reason = (reply && reply.reason) || 'worker-unreachable'
52
- const detail = (reply && reply.detail) || ''
53
- console.error(TAG_ERROR + ' reason=' + reason + ' detail=' + detail)
54
- // Task 2208 — the ingest token is missing or was refused. There is no
55
- // sign-in to perform: the operator asks the SiteDesk agent for the token and
56
- // pastes it on the options page.
57
- if (reason === 'auth') {
58
- setState(pill, 'auth', 'Paste SiteDesk token')
59
- pill.onclick = function () { chrome.runtime.openOptionsPage() }
60
- return
61
- }
62
- // Task 2185 — the admin host was never granted, so the POST never left
63
- // the browser. Sending the operator to the options page is the fix.
64
- if (reason === 'permission') {
65
- setState(pill, 'auth', 'Grant access')
66
- pill.onclick = function () { chrome.runtime.openOptionsPage() }
67
- return
68
- }
69
- if (reason === 'unreachable') {
70
- setState(pill, 'error', 'SiteDesk unreachable')
71
- return
72
- }
73
- setState(pill, 'error', 'Capture failed')
74
- return
75
- }
76
-
77
- setState(pill, 'ok', 'Captured ✓')
78
- }
79
-
80
- function mount() {
81
- if (document.getElementById(PILL_ID)) return
82
- const anchor = document.querySelector('section.top-card-layout, main') || document.body
83
- if (!anchor) return
84
- const pill = document.createElement('button')
85
- pill.id = PILL_ID
86
- pill.className = 'maxy-pill'
87
- pill.type = 'button'
88
- pill.textContent = 'Add to SiteDesk'
89
- pill.dataset.state = 'idle'
90
- pill.addEventListener('click', function () { onClick(pill) })
91
- anchor.prepend(pill)
92
- console.log(TAG_MOUNT + ' page=profile url=' + location.href)
93
- }
94
-
95
- if (document.readyState === 'loading') {
96
- document.addEventListener('DOMContentLoaded', mount, { once: true })
97
- } else {
98
- mount()
99
- }
100
- })()
@@ -1,102 +0,0 @@
1
- // Thread content script. Runs on linkedin.com/messaging/thread/*.
2
- // Manifest concatenates extractors.js + this file.
3
-
4
- ;(function () {
5
- const TAG_MOUNT = '[linkedin-ext-mount]'
6
- const TAG_SCRAPE = '[linkedin-ext-scrape]'
7
- const TAG_ERROR = '[linkedin-ext-error]'
8
- const PILL_ID = 'maxy-linkedin-pill'
9
-
10
- function setState(pill, state, label) {
11
- pill.dataset.state = state
12
- if (label) pill.textContent = label
13
- }
14
-
15
- async function onClick(pill) {
16
- const dispatchId = crypto.randomUUID()
17
- setState(pill, 'busy', 'Capturing…')
18
-
19
- const result = globalThis.MaxyLinkedinExtractors.extractThread(document)
20
- if (!result.ok) {
21
- console.error(TAG_SCRAPE + ' page=thread ok=false missing=' + result.missing.join(','))
22
- setState(pill, 'error', 'Missing: ' + result.missing.join(', '))
23
- return
24
- }
25
- console.log(
26
- TAG_SCRAPE + ' page=thread ok=true fields=participants,bodyText participantCount=' +
27
- result.payload.participants.length,
28
- )
29
-
30
- const envelope = {
31
- source: 'linkedin',
32
- kind: 'thread',
33
- capturedAt: new Date().toISOString(),
34
- pageUrl: location.href.split('?')[0].split('#')[0],
35
- dispatchId: dispatchId,
36
- thread: result.payload,
37
- }
38
-
39
- let reply
40
- try {
41
- reply = await chrome.runtime.sendMessage({ type: 'linkedin-ingest', envelope: envelope })
42
- } catch (err) {
43
- console.error(TAG_ERROR + ' reason=worker-unreachable detail=' + (err && err.message ? err.message : String(err)))
44
- setState(pill, 'error', 'Capture failed')
45
- return
46
- }
47
-
48
- if (!reply || !reply.ok) {
49
- // `worker-unreachable` is the extension's OWN service worker failing to
50
- // answer. It is not `unreachable`, which means the admin host did not
51
- // answer — blaming SiteDesk here sends the operator to check a tunnel that
52
- // was never involved.
53
- const reason = (reply && reply.reason) || 'worker-unreachable'
54
- const detail = (reply && reply.detail) || ''
55
- console.error(TAG_ERROR + ' reason=' + reason + ' detail=' + detail)
56
- // Task 2208 — the ingest token is missing or was refused. There is no
57
- // sign-in to perform: the operator asks the SiteDesk agent for the token and
58
- // pastes it on the options page.
59
- if (reason === 'auth') {
60
- setState(pill, 'auth', 'Paste SiteDesk token')
61
- pill.onclick = function () { chrome.runtime.openOptionsPage() }
62
- return
63
- }
64
- // Task 2185 — the admin host was never granted, so the POST never left
65
- // the browser. Sending the operator to the options page is the fix.
66
- if (reason === 'permission') {
67
- setState(pill, 'auth', 'Grant access')
68
- pill.onclick = function () { chrome.runtime.openOptionsPage() }
69
- return
70
- }
71
- if (reason === 'unreachable') {
72
- setState(pill, 'error', 'SiteDesk unreachable')
73
- return
74
- }
75
- setState(pill, 'error', 'Capture failed')
76
- return
77
- }
78
-
79
- setState(pill, 'ok', 'Captured ✓')
80
- }
81
-
82
- function mount() {
83
- if (document.getElementById(PILL_ID)) return
84
- const anchor = document.querySelector('.msg-thread, header.msg-overlay-bubble-header, main') || document.body
85
- if (!anchor) return
86
- const pill = document.createElement('button')
87
- pill.id = PILL_ID
88
- pill.className = 'maxy-pill'
89
- pill.type = 'button'
90
- pill.textContent = 'Add to SiteDesk'
91
- pill.dataset.state = 'idle'
92
- pill.addEventListener('click', function () { onClick(pill) })
93
- anchor.prepend(pill)
94
- console.log(TAG_MOUNT + ' page=thread url=' + location.href)
95
- }
96
-
97
- if (document.readyState === 'loading') {
98
- document.addEventListener('DOMContentLoaded', mount, { once: true })
99
- } else {
100
- mount()
101
- }
102
- })()