@conversionpros/aiva 1.0.1 → 2.0.1

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 (149) hide show
  1. package/bin/aiva.js +26 -14
  2. package/lib/bluebubbles.js +145 -0
  3. package/lib/config-gen.js +253 -0
  4. package/lib/constants.js +72 -0
  5. package/lib/launch-agent.js +112 -0
  6. package/lib/prerequisites.js +236 -0
  7. package/lib/process.js +59 -145
  8. package/lib/setup.js +224 -194
  9. package/lib/validate.js +194 -0
  10. package/package.json +9 -34
  11. package/auto-deploy.js +0 -190
  12. package/cli-sync.js +0 -126
  13. package/d2a-prompt-template.txt +0 -106
  14. package/diagnostics-api.js +0 -304
  15. package/docs/ara-dedup-fix-scope.md +0 -112
  16. package/docs/ara-fix-round2-scope.md +0 -61
  17. package/docs/ara-greeting-fix-scope.md +0 -70
  18. package/docs/calendar-date-fix-scope.md +0 -28
  19. package/docs/getting-started.md +0 -115
  20. package/docs/network-architecture-rollout-scope.md +0 -43
  21. package/docs/scope-google-oauth-integration.md +0 -351
  22. package/docs/settings-page-scope.md +0 -50
  23. package/docs/xai-imagine-scope.md +0 -116
  24. package/docs/xai-voice-integration-scope.md +0 -115
  25. package/docs/xai-voice-tools-scope.md +0 -165
  26. package/email-router.js +0 -512
  27. package/follow-up-handler.js +0 -606
  28. package/gateway-monitor.js +0 -158
  29. package/google-email.js +0 -379
  30. package/google-oauth.js +0 -310
  31. package/grok-imagine.js +0 -97
  32. package/health-reporter.js +0 -287
  33. package/invisible-prefix-base.txt +0 -206
  34. package/invisible-prefix-owner.txt +0 -26
  35. package/invisible-prefix-slim.txt +0 -10
  36. package/invisible-prefix.txt +0 -43
  37. package/knowledge-base.js +0 -472
  38. package/lib/cli.js +0 -19
  39. package/lib/server.js +0 -42
  40. package/meta-capi.js +0 -206
  41. package/meta-leads.js +0 -411
  42. package/notion-oauth.js +0 -323
  43. package/public/agent-config.html +0 -241
  44. package/public/aiva-avatar-anime.png +0 -0
  45. package/public/css/docs.css.bak +0 -688
  46. package/public/css/onboarding.css +0 -543
  47. package/public/diagrams/claude-subscription-pool.html +0 -329
  48. package/public/diagrams/claude-subscription-pool.png +0 -0
  49. package/public/docs-icon.png +0 -0
  50. package/public/escalation.html +0 -237
  51. package/public/group-config.html +0 -300
  52. package/public/icon-192.png +0 -0
  53. package/public/icon-512.png +0 -0
  54. package/public/icons/agents.svg +0 -1
  55. package/public/icons/attach.svg +0 -1
  56. package/public/icons/characters.svg +0 -1
  57. package/public/icons/chat.svg +0 -1
  58. package/public/icons/docs.svg +0 -1
  59. package/public/icons/heartbeat.svg +0 -1
  60. package/public/icons/messages.svg +0 -1
  61. package/public/icons/mic.svg +0 -1
  62. package/public/icons/notes.svg +0 -1
  63. package/public/icons/settings.svg +0 -1
  64. package/public/icons/tasks.svg +0 -1
  65. package/public/images/onboarding/p0-communication-layer.png +0 -0
  66. package/public/images/onboarding/p0-infinite-surface.png +0 -0
  67. package/public/images/onboarding/p0-learning-model.png +0 -0
  68. package/public/images/onboarding/p0-meet-aiva.png +0 -0
  69. package/public/images/onboarding/p4-contact-intelligence.png +0 -0
  70. package/public/images/onboarding/p4-context-compounds.png +0 -0
  71. package/public/images/onboarding/p4-message-router.png +0 -0
  72. package/public/images/onboarding/p4-per-contact-rules.png +0 -0
  73. package/public/images/onboarding/p4-send-messages.png +0 -0
  74. package/public/images/onboarding/p6-be-precise.png +0 -0
  75. package/public/images/onboarding/p6-review-escalations.png +0 -0
  76. package/public/images/onboarding/p6-voice-input.png +0 -0
  77. package/public/images/onboarding/p7-completion.png +0 -0
  78. package/public/index.html +0 -11594
  79. package/public/js/onboarding.js +0 -699
  80. package/public/manifest.json +0 -24
  81. package/public/messages-v2.html +0 -2824
  82. package/public/permission-approve.html.bak +0 -107
  83. package/public/permissions.html +0 -150
  84. package/public/styles/design-system.css +0 -68
  85. package/router-db.js +0 -604
  86. package/router-utils.js +0 -28
  87. package/router-v2/adapters/imessage.js +0 -191
  88. package/router-v2/adapters/quo.js +0 -82
  89. package/router-v2/adapters/whatsapp.js +0 -192
  90. package/router-v2/contact-manager.js +0 -234
  91. package/router-v2/conversation-engine.js +0 -498
  92. package/router-v2/data/knowledge-base.json +0 -176
  93. package/router-v2/data/router-v2.db +0 -0
  94. package/router-v2/data/router-v2.db-shm +0 -0
  95. package/router-v2/data/router-v2.db-wal +0 -0
  96. package/router-v2/data/router.db +0 -0
  97. package/router-v2/db.js +0 -457
  98. package/router-v2/escalation-bridge.js +0 -540
  99. package/router-v2/follow-up-engine.js +0 -347
  100. package/router-v2/index.js +0 -441
  101. package/router-v2/ingestion.js +0 -213
  102. package/router-v2/knowledge-base.js +0 -231
  103. package/router-v2/lead-qualifier.js +0 -152
  104. package/router-v2/learning-loop.js +0 -202
  105. package/router-v2/outbound-sender.js +0 -160
  106. package/router-v2/package.json +0 -13
  107. package/router-v2/permission-gate.js +0 -86
  108. package/router-v2/playbook.js +0 -177
  109. package/router-v2/prompts/base.js +0 -52
  110. package/router-v2/prompts/first-contact.js +0 -38
  111. package/router-v2/prompts/lead-qualification.js +0 -37
  112. package/router-v2/prompts/scheduling.js +0 -72
  113. package/router-v2/prompts/style-overrides.js +0 -22
  114. package/router-v2/scheduler.js +0 -301
  115. package/router-v2/scripts/migrate-v1-to-v2.js +0 -215
  116. package/router-v2/scripts/seed-faq.js +0 -67
  117. package/router-v2/seed-knowledge-base.js +0 -39
  118. package/router-v2/utils/ai.js +0 -129
  119. package/router-v2/utils/phone.js +0 -52
  120. package/router-v2/utils/response-validator.js +0 -98
  121. package/router-v2/utils/sanitize.js +0 -222
  122. package/router.js +0 -5005
  123. package/routes/google-calendar.js +0 -186
  124. package/scripts/deploy.sh +0 -62
  125. package/scripts/macos-calendar.sh +0 -232
  126. package/scripts/onboard-device.sh +0 -466
  127. package/server.js +0 -5131
  128. package/start.sh +0 -24
  129. package/templates/AGENTS.md +0 -548
  130. package/templates/IDENTITY.md +0 -15
  131. package/templates/docs-agents.html +0 -132
  132. package/templates/docs-app.html +0 -130
  133. package/templates/docs-home.html +0 -83
  134. package/templates/docs-imessage.html +0 -121
  135. package/templates/docs-tasks.html +0 -123
  136. package/templates/docs-tips.html +0 -175
  137. package/templates/getting-started.html +0 -809
  138. package/templates/invisible-prefix-base.txt +0 -171
  139. package/templates/invisible-prefix-owner.txt +0 -282
  140. package/templates/invisible-prefix.txt +0 -338
  141. package/templates/manifest.json +0 -61
  142. package/templates/memory-org/clients.md +0 -7
  143. package/templates/memory-org/credentials.md +0 -9
  144. package/templates/memory-org/devices.md +0 -7
  145. package/templates/updates.html +0 -464
  146. package/tts-proxy.js +0 -96
  147. package/voice-call-local.js +0 -731
  148. package/voice-call.js +0 -732
  149. package/wa-listener.js +0 -354
@@ -1,175 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Pro Tips — AIVA</title>
7
- <link rel="stylesheet" href="/css/docs.css">
8
- </head>
9
- <body>
10
-
11
- <div class="mobile-header">
12
- <button class="hamburger-btn" id="hamburgerBtn" aria-label="Menu"><span></span></button>
13
- <span class="mobile-title">AIVA Docs</span>
14
- </div>
15
- <div class="mobile-overlay" id="mobileOverlay"></div>
16
-
17
- <nav class="docs-sidebar" id="sidebar">
18
- <div class="sidebar-header">
19
- <a href="/getting-started" class="sidebar-logo">AIVA <span>Docs</span></a>
20
- </div>
21
- <div class="sidebar-label">Getting Started</div>
22
- <div class="sidebar-nav">
23
- <a href="/getting-started">Overview</a>
24
- <a href="/getting-started/agents">Meet Your Agents</a>
25
- <a href="/getting-started/app">The AIVA App</a>
26
- <a href="/getting-started/imessage">iMessage &amp; Outreach</a>
27
- <a href="/getting-started/tasks">Your Task Board</a>
28
- <a href="/getting-started/tips" class="active">Pro Tips</a>
29
- <div class="nav-divider"></div>
30
- <a href="/updates">Updates</a>
31
- </div>
32
- </nav>
33
-
34
- <main class="docs-content">
35
- <div class="content-inner fade-in">
36
-
37
- <div class="page-label">Best Practices</div>
38
- <h1 class="page-title">Pro Tips</h1>
39
- <p class="page-desc">A few guidelines to help you work effectively with your assistant and get the best results.</p>
40
-
41
- <div class="doc-section">
42
- <div class="practices-grid">
43
- <div class="practice-card do">
44
- <h3>
45
- <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6L9 17l-5-5"/></svg>
46
- Do This
47
- </h3>
48
- <ul>
49
- <li><strong>Be specific</strong> — "Schedule a 30-min call with John on Thursday at 2 PM" works better than "set something up with John"</li>
50
- <li><strong>Use the app for big-picture stuff</strong> — strategy, planning, brain dumps, complex requests</li>
51
- <li><strong>Use iMessage for message management</strong> — training your outreach agent on how to handle contacts</li>
52
- <li><strong>Check your task board</strong> — it is the single source of truth for all work in progress</li>
53
- <li><strong>Give feedback</strong> — if AIVA does something you do not like, say so. She learns from your preferences.</li>
54
- </ul>
55
- </div>
56
-
57
- <div class="practice-card dont">
58
- <h3>
59
- <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 6L6 18M6 6l12 12"/></svg>
60
- Avoid This
61
- </h3>
62
- <ul>
63
- <li><strong>Do not repeat yourself</strong> — if you submitted a request, it is on the board. No need to follow up unless it has been too long.</li>
64
- <li><strong>Do not mix channels unnecessarily</strong> — use the app for requests, iMessage for message management</li>
65
- <li><strong>Do not assume AIVA knows everything</strong> — she wakes up fresh each session. Important context should be stated clearly.</li>
66
- </ul>
67
- </div>
68
- </div>
69
- </div>
70
-
71
- <div class="doc-section">
72
- <h2 class="section-title">Voice Messages</h2>
73
- <p class="section-desc">Voice messages are one of the most powerful features. They are especially useful when you have a lot on your mind and want to do a brain dump. Just talk naturally — AIVA handles the rest.</p>
74
- <div class="callout">
75
- <strong>Tip:</strong> Do not worry about being perfectly organized in voice messages. Stream of consciousness works great. AIVA will parse out the tasks, context, and action items automatically.
76
- </div>
77
- </div>
78
-
79
- <div class="doc-section">
80
- <h2 class="section-title">Being Specific</h2>
81
- <p class="section-desc">The more specific your requests, the better the results. Instead of vague instructions, include dates, times, names, and desired outcomes. AIVA can handle complex requests — but she needs the details to do it well.</p>
82
- </div>
83
-
84
- <div class="doc-section">
85
- <h2 class="section-title">Giving Feedback</h2>
86
- <p class="section-desc">AIVA learns from your feedback. If she handles something in a way you do not prefer, tell her. She logs lessons learned and adjusts her approach going forward. The more you communicate your preferences, the better AIVA gets at anticipating your needs.</p>
87
- </div>
88
-
89
- <div class="doc-section">
90
- <h2 class="section-title">Frequently Asked Questions</h2>
91
-
92
- <div class="faq-list">
93
- <div class="faq-item">
94
- <button class="faq-question" onclick="this.parentElement.classList.toggle('open')">
95
- Does AIVA remember our conversations?
96
- <svg viewBox="0 0 24 24"><path d="M12 5v14M5 12h14"/></svg>
97
- </button>
98
- <div class="faq-answer">
99
- <p>AIVA maintains memory through daily notes and long-term memory files. Important decisions, preferences, and context are saved between sessions. However, she starts each session fresh and reads her notes — so the more important something is, the more clearly you should state it.</p>
100
- </div>
101
- </div>
102
-
103
- <div class="faq-item">
104
- <button class="faq-question" onclick="this.parentElement.classList.toggle('open')">
105
- Can AIVA text people on my behalf?
106
- <svg viewBox="0 0 24 24"><path d="M12 5v14M5 12h14"/></svg>
107
- </button>
108
- <div class="faq-answer">
109
- <p>Yes. The outreach agent can handle iMessage conversations. You set preferences for each contact (respond, ignore, take message only), and AIVA follows them. She will always check with you before contacting someone new.</p>
110
- </div>
111
- </div>
112
-
113
- <div class="faq-item">
114
- <button class="faq-question" onclick="this.parentElement.classList.toggle('open')">
115
- How do I know what AIVA is working on?
116
- <svg viewBox="0 0 24 24"><path d="M12 5v14M5 12h14"/></svg>
117
- </button>
118
- <div class="faq-answer">
119
- <p>Check the task board in the app. Every request becomes a task with status tracking (To Do, In Progress, Done).</p>
120
- </div>
121
- </div>
122
-
123
- <div class="faq-item">
124
- <button class="faq-question" onclick="this.parentElement.classList.toggle('open')">
125
- What if AIVA makes a mistake?
126
- <svg viewBox="0 0 24 24"><path d="M12 5v14M5 12h14"/></svg>
127
- </button>
128
- <div class="faq-answer">
129
- <p>Tell her. Feedback helps AIVA improve. She logs lessons learned and adjusts her approach going forward.</p>
130
- </div>
131
- </div>
132
-
133
- <div class="faq-item">
134
- <button class="faq-question" onclick="this.parentElement.classList.toggle('open')">
135
- Is my information private?
136
- <svg viewBox="0 0 24 24"><path d="M12 5v14M5 12h14"/></svg>
137
- </button>
138
- <div class="faq-answer">
139
- <p>Yes. AIVA treats your data with strict privacy. She will not share personal information in group settings or with other contacts without your explicit permission.</p>
140
- </div>
141
- </div>
142
- </div>
143
- </div>
144
-
145
- <div class="docs-nav-footer">
146
- <a href="/getting-started/tasks" class="nav-link prev">
147
- <span class="nav-label">Previous</span>
148
- <span class="nav-title">Your Task Board</span>
149
- </a>
150
- <div></div>
151
- </div>
152
-
153
- <footer class="page-footer">
154
- <p>Check the <a href="/updates" style="color:var(--accent);text-decoration:none;">Updates page</a> for the latest changes and improvements to your AIVA assistant.</p>
155
- </footer>
156
-
157
- </div>
158
- </main>
159
-
160
- <script>
161
- (function(){
162
- var btn=document.getElementById('hamburgerBtn'),
163
- sidebar=document.getElementById('sidebar'),
164
- overlay=document.getElementById('mobileOverlay');
165
- function toggle(){
166
- var open=sidebar.classList.toggle('open');
167
- overlay.classList.toggle('open',open);
168
- btn.classList.toggle('open',open);
169
- }
170
- btn.addEventListener('click',toggle);
171
- overlay.addEventListener('click',toggle);
172
- })();
173
- </script>
174
- </body>
175
- </html>