@aitne-sh/aitne 0.1.0

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 (249) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +464 -0
  3. package/agent-assets/agent-profiles/_safety.md +26 -0
  4. package/agent-assets/agent-profiles/conversational.md +33 -0
  5. package/agent-assets/agent-profiles/docs-qa.md +24 -0
  6. package/agent-assets/agent-profiles/observer.md +28 -0
  7. package/agent-assets/agent-profiles/profile-importer.md +63 -0
  8. package/agent-assets/agent-profiles/proxy.md +28 -0
  9. package/agent-assets/agent-profiles/routine.md +16 -0
  10. package/agent-assets/agent-profiles/task.md +18 -0
  11. package/agent-assets/docs/concepts/agent-day.md +88 -0
  12. package/agent-assets/docs/concepts/auth-health.md +75 -0
  13. package/agent-assets/docs/concepts/backends-and-tiers.md +126 -0
  14. package/agent-assets/docs/concepts/costs-and-quotas.md +103 -0
  15. package/agent-assets/docs/concepts/delegated-mode.md +223 -0
  16. package/agent-assets/docs/concepts/memory-model.md +118 -0
  17. package/agent-assets/docs/concepts/observations.md +80 -0
  18. package/agent-assets/docs/concepts/process-keys.md +89 -0
  19. package/agent-assets/docs/concepts/routines.md +108 -0
  20. package/agent-assets/docs/concepts/safety-and-execution.md +109 -0
  21. package/agent-assets/docs/concepts/safety-model.md +279 -0
  22. package/agent-assets/docs/concepts/skills.md +100 -0
  23. package/agent-assets/docs/features/integrations/calendar.md +92 -0
  24. package/agent-assets/docs/features/integrations/git.md +95 -0
  25. package/agent-assets/docs/features/integrations/github.md +170 -0
  26. package/agent-assets/docs/features/integrations/mail.md +106 -0
  27. package/agent-assets/docs/features/integrations/notion.md +69 -0
  28. package/agent-assets/docs/features/integrations/obsidian.md +71 -0
  29. package/agent-assets/docs/features/lifestyle/git.md +178 -0
  30. package/agent-assets/docs/features/lifestyle/reading.md +93 -0
  31. package/agent-assets/docs/features/lifestyle/receipts.md +71 -0
  32. package/agent-assets/docs/features/lifestyle/travel-bookings.md +44 -0
  33. package/agent-assets/docs/features/lifestyle/travel-time.md +52 -0
  34. package/agent-assets/docs/features/memory-files/agent-journal.md +105 -0
  35. package/agent-assets/docs/features/memory-files/projects.md +56 -0
  36. package/agent-assets/docs/features/memory-files/roadmap.md +61 -0
  37. package/agent-assets/docs/features/memory-files/schedule.md +112 -0
  38. package/agent-assets/docs/features/memory-files/today.md +73 -0
  39. package/agent-assets/docs/features/memory-files/user-profile.md +81 -0
  40. package/agent-assets/docs/features/messaging/dashboard-chat.md +93 -0
  41. package/agent-assets/docs/features/messaging/discord.md +50 -0
  42. package/agent-assets/docs/features/messaging/overview.md +111 -0
  43. package/agent-assets/docs/features/messaging/pairing-and-magic-phrase.md +69 -0
  44. package/agent-assets/docs/features/messaging/slack.md +51 -0
  45. package/agent-assets/docs/features/messaging/telegram.md +63 -0
  46. package/agent-assets/docs/features/messaging/whatsapp.md +48 -0
  47. package/agent-assets/docs/features/operations/activity-and-conversations.md +105 -0
  48. package/agent-assets/docs/features/operations/approvals.md +58 -0
  49. package/agent-assets/docs/features/operations/backend-routing.md +62 -0
  50. package/agent-assets/docs/features/operations/cost-tracking.md +59 -0
  51. package/agent-assets/docs/features/operations/notifications.md +69 -0
  52. package/agent-assets/docs/features/operations/quiet-hours.md +106 -0
  53. package/agent-assets/docs/features/operations/schedule-approaching.md +60 -0
  54. package/agent-assets/docs/features/routines/custom-routines.md +101 -0
  55. package/agent-assets/docs/features/routines/evening-review.md +81 -0
  56. package/agent-assets/docs/features/routines/hourly-check.md +85 -0
  57. package/agent-assets/docs/features/routines/monthly-review.md +65 -0
  58. package/agent-assets/docs/features/routines/morning-routine.md +123 -0
  59. package/agent-assets/docs/features/routines/weekly-review.md +70 -0
  60. package/agent-assets/docs/getting-started/01-what-is-this.md +192 -0
  61. package/agent-assets/docs/getting-started/02-first-steps.md +80 -0
  62. package/agent-assets/docs/getting-started/03-what-can-this-do.md +110 -0
  63. package/agent-assets/docs/getting-started/04-first-day.md +287 -0
  64. package/agent-assets/docs/glossary.md +116 -0
  65. package/agent-assets/docs/guides/add-a-custom-routine.md +71 -0
  66. package/agent-assets/docs/guides/backup-and-restore.md +54 -0
  67. package/agent-assets/docs/guides/change-which-model-handles-x.md +47 -0
  68. package/agent-assets/docs/guides/connect-a-new-mail-account.md +59 -0
  69. package/agent-assets/docs/guides/import-knowledge-file.md +275 -0
  70. package/agent-assets/docs/guides/install-and-run.md +72 -0
  71. package/agent-assets/docs/guides/migrate-machines.md +52 -0
  72. package/agent-assets/docs/guides/pause-the-agent.md +65 -0
  73. package/agent-assets/docs/guides/reinstall-cleanly.md +52 -0
  74. package/agent-assets/docs/guides/setup-wizard.md +107 -0
  75. package/agent-assets/docs/guides/switch-default-backend.md +60 -0
  76. package/agent-assets/docs/reference/api.md +51 -0
  77. package/agent-assets/docs/reference/cli-commands.md +121 -0
  78. package/agent-assets/docs/reference/config.md +74 -0
  79. package/agent-assets/docs/reference/disallowed-tools.md +76 -0
  80. package/agent-assets/docs/reference/keyboard-shortcuts.md +39 -0
  81. package/agent-assets/docs/reference/process-keys.md +59 -0
  82. package/agent-assets/docs/reference/skills.md +50 -0
  83. package/agent-assets/docs/troubleshooting/auth-failed.md +57 -0
  84. package/agent-assets/docs/troubleshooting/dashboard-shows-degraded.md +55 -0
  85. package/agent-assets/docs/troubleshooting/fallback-keeps-firing.md +54 -0
  86. package/agent-assets/docs/troubleshooting/messaging-not-pairing.md +53 -0
  87. package/agent-assets/docs/troubleshooting/morning-routine-didnt-run.md +75 -0
  88. package/agent-assets/docs/troubleshooting/observation-not-detected.md +57 -0
  89. package/agent-assets/docs/troubleshooting/quota-exhausted.md +57 -0
  90. package/agent-assets/optimizer-skills/drift-analysis/SKILL.md +75 -0
  91. package/agent-assets/optimizer-skills/knowledge-map/SKILL.md +71 -0
  92. package/agent-assets/optimizer-skills/skill-curation/SKILL.md +108 -0
  93. package/agent-assets/project-doc-templates/git-repo.md +21 -0
  94. package/agent-assets/project-doc-templates/project.md +38 -0
  95. package/agent-assets/skills/attach/SKILL.md +104 -0
  96. package/agent-assets/skills/context/SKILL.md +257 -0
  97. package/agent-assets/skills/context/curation.json +37 -0
  98. package/agent-assets/skills/context/seeds/file-responsibilities.seed.json +13 -0
  99. package/agent-assets/skills/context/seeds/frontmatter-requirements.seed.json +40 -0
  100. package/agent-assets/skills/docs-search/SKILL.md +176 -0
  101. package/agent-assets/skills/external-services/SKILL.delegated.claude.md +369 -0
  102. package/agent-assets/skills/external-services/SKILL.delegated.codex.md +349 -0
  103. package/agent-assets/skills/external-services/SKILL.delegated.gemini.md +347 -0
  104. package/agent-assets/skills/external-services/SKILL.md +371 -0
  105. package/agent-assets/skills/mail/SKILL.delegated.claude.md +284 -0
  106. package/agent-assets/skills/mail/SKILL.delegated.codex.md +261 -0
  107. package/agent-assets/skills/mail/SKILL.delegated.gemini.md +255 -0
  108. package/agent-assets/skills/mail/SKILL.md +313 -0
  109. package/agent-assets/skills/mail/references/errors.md +17 -0
  110. package/agent-assets/skills/mail/references/providers.md +40 -0
  111. package/agent-assets/skills/mail/references/query-grammar.md +24 -0
  112. package/agent-assets/skills/management-policy/SKILL.md +307 -0
  113. package/agent-assets/skills/management-policy/curation.json +13 -0
  114. package/agent-assets/skills/management-policy/seeds/policy-file-shape.seed.json +16 -0
  115. package/agent-assets/skills/management-task-modify/SKILL.md +202 -0
  116. package/agent-assets/skills/management-task-register/SKILL.md +330 -0
  117. package/agent-assets/skills/management-task-stop/SKILL.md +166 -0
  118. package/agent-assets/skills/notify/SKILL.md +196 -0
  119. package/agent-assets/skills/notion/SKILL.delegated.claude.md +254 -0
  120. package/agent-assets/skills/notion/SKILL.delegated.codex.md +195 -0
  121. package/agent-assets/skills/notion/SKILL.delegated.gemini.md +194 -0
  122. package/agent-assets/skills/notion/SKILL.md +86 -0
  123. package/agent-assets/skills/observations/SKILL.md +234 -0
  124. package/agent-assets/skills/observations/curation.json +13 -0
  125. package/agent-assets/skills/observations/seeds/source-namespacing.seed.json +20 -0
  126. package/agent-assets/skills/project-doc/SKILL.md +86 -0
  127. package/agent-assets/skills/project-doc/curation.json +21 -0
  128. package/agent-assets/skills/project-doc/seeds/project-shape.seed.json +25 -0
  129. package/agent-assets/skills/project-doc/seeds/slug-grammar.seed.json +20 -0
  130. package/agent-assets/skills/reading/SKILL.md +198 -0
  131. package/agent-assets/skills/reading/references/reading-taste.md +197 -0
  132. package/agent-assets/skills/receipts/SKILL.md +134 -0
  133. package/agent-assets/skills/roadmap/SKILL.md +276 -0
  134. package/agent-assets/skills/roadmap/curation.json +13 -0
  135. package/agent-assets/skills/roadmap/references/horizon-tags.md +40 -0
  136. package/agent-assets/skills/roadmap/references/preparation-timeline.md +47 -0
  137. package/agent-assets/skills/roadmap/seeds/entry-types.seed.json +16 -0
  138. package/agent-assets/skills/schedule/SKILL.md +228 -0
  139. package/agent-assets/skills/scheduled-managed-task/SKILL.md +392 -0
  140. package/agent-assets/skills/today/SKILL.md +198 -0
  141. package/agent-assets/skills/today/curation.json +21 -0
  142. package/agent-assets/skills/today/seeds/agent-notes-flavors.seed.json +17 -0
  143. package/agent-assets/skills/today/seeds/section-shape.seed.json +17 -0
  144. package/agent-assets/skills/travel/SKILL.md +132 -0
  145. package/agent-assets/skills/travel-time/SKILL.md +149 -0
  146. package/agent-assets/skills/user-interview/SKILL.md +323 -0
  147. package/agent-assets/skills/user-interview/references/sweep-and-fallback.md +94 -0
  148. package/agent-assets/skills/user-profile/SKILL.md +210 -0
  149. package/agent-assets/skills/user-profile/curation.json +29 -0
  150. package/agent-assets/skills/user-profile/seeds/learned-context-format.seed.json +14 -0
  151. package/agent-assets/skills/user-profile/seeds/routing-table.seed.json +53 -0
  152. package/agent-assets/skills/user-profile/seeds/topic-files.seed.json +27 -0
  153. package/agent-assets/task-flows/dashboard.docs_qa.md +43 -0
  154. package/agent-assets/task-flows/default.md +11 -0
  155. package/agent-assets/task-flows/git.branch.created.md +25 -0
  156. package/agent-assets/task-flows/git.lifecycle.poll.md +52 -0
  157. package/agent-assets/task-flows/git.local_ahead.stale.md +34 -0
  158. package/agent-assets/task-flows/git.merge_to_default.md +30 -0
  159. package/agent-assets/task-flows/git.project.refresh_architecture.md +100 -0
  160. package/agent-assets/task-flows/git.project.retemplate.md +73 -0
  161. package/agent-assets/task-flows/git.push.detected.md +32 -0
  162. package/agent-assets/task-flows/git.push.force_pushed.md +36 -0
  163. package/agent-assets/task-flows/git.tag.created.md +24 -0
  164. package/agent-assets/task-flows/github.assigned.md +43 -0
  165. package/agent-assets/task-flows/github.pull_request.review_requested.md +57 -0
  166. package/agent-assets/task-flows/github.security_alert.md +45 -0
  167. package/agent-assets/task-flows/github.workflow_run.failed.md +57 -0
  168. package/agent-assets/task-flows/knowledge.import.md +161 -0
  169. package/agent-assets/task-flows/message.received.dm.md +142 -0
  170. package/agent-assets/task-flows/message.received.dm_first.md +117 -0
  171. package/agent-assets/task-flows/message.received.md +14 -0
  172. package/agent-assets/task-flows/routine.custom.md +38 -0
  173. package/agent-assets/task-flows/routine.evening_review.md +323 -0
  174. package/agent-assets/task-flows/routine.hourly_check.delegated.claude.md +405 -0
  175. package/agent-assets/task-flows/routine.hourly_check.delegated.codex.md +400 -0
  176. package/agent-assets/task-flows/routine.hourly_check.delegated.gemini.md +404 -0
  177. package/agent-assets/task-flows/routine.hourly_check.md +184 -0
  178. package/agent-assets/task-flows/routine.hourly_check.triage.md +93 -0
  179. package/agent-assets/task-flows/routine.monthly_review.md +250 -0
  180. package/agent-assets/task-flows/routine.morning_routine.md +300 -0
  181. package/agent-assets/task-flows/routine.morning_routine_initial.md +184 -0
  182. package/agent-assets/task-flows/routine.roadmap_refresh.md +275 -0
  183. package/agent-assets/task-flows/routine.today_refresh.md +172 -0
  184. package/agent-assets/task-flows/routine.user_profile_sweep.md +242 -0
  185. package/agent-assets/task-flows/routine.weekly_review.md +247 -0
  186. package/agent-assets/task-flows/schedule.approaching.md +124 -0
  187. package/agent-assets/task-flows/scheduled.dm.md +391 -0
  188. package/agent-assets/task-flows/scheduled.task.md +141 -0
  189. package/agent-assets/task-flows/setup.initial.md +277 -0
  190. package/agent-assets/task-flows/setup.update.md +53 -0
  191. package/agent-assets/templates/README.md +85 -0
  192. package/agent-assets/templates/_index.md +39 -0
  193. package/agent-assets/templates/_manifest.json +103 -0
  194. package/agent-assets/templates/agent/journal.md +10 -0
  195. package/agent-assets/templates/agent/profile-questions.md +74 -0
  196. package/agent-assets/templates/context-index.md +42 -0
  197. package/agent-assets/templates/dossiers/_index.md +22 -0
  198. package/agent-assets/templates/dossiers/evening.md +23 -0
  199. package/agent-assets/templates/dossiers/hourly.md +23 -0
  200. package/agent-assets/templates/dossiers/monthly.md +23 -0
  201. package/agent-assets/templates/dossiers/morning.md +23 -0
  202. package/agent-assets/templates/dossiers/roadmap.md +23 -0
  203. package/agent-assets/templates/dossiers/weekly.md +23 -0
  204. package/agent-assets/templates/projects/_active.base +14 -0
  205. package/agent-assets/templates/projects/_index.md +29 -0
  206. package/agent-assets/templates/roadmap.md +15 -0
  207. package/agent-assets/templates/routines/_index.md +20 -0
  208. package/agent-assets/templates/routines/evening.md +22 -0
  209. package/agent-assets/templates/routines/hourly.md +30 -0
  210. package/agent-assets/templates/routines/monthly.md +25 -0
  211. package/agent-assets/templates/routines/morning.md +26 -0
  212. package/agent-assets/templates/routines/weekly.md +23 -0
  213. package/agent-assets/templates/rules/_index.md +19 -0
  214. package/agent-assets/templates/rules/journal-export.md +41 -0
  215. package/agent-assets/templates/rules/journal-format.md +61 -0
  216. package/agent-assets/templates/rules/management.md +48 -0
  217. package/agent-assets/templates/rules/mcp.md +40 -0
  218. package/agent-assets/templates/rules/policies/_index.md +22 -0
  219. package/agent-assets/templates/rules/redaction.md +30 -0
  220. package/agent-assets/templates/today.md +13 -0
  221. package/agent-assets/templates/user/_index.md +16 -0
  222. package/agent-assets/templates/user/expertise.md +7 -0
  223. package/agent-assets/templates/user/goals.md +7 -0
  224. package/agent-assets/templates/user/people.md +7 -0
  225. package/agent-assets/templates/user/personal.md +7 -0
  226. package/agent-assets/templates/user/profile.md +28 -0
  227. package/agent-assets/templates/user/work.md +7 -0
  228. package/bin/aitne.mjs +1096 -0
  229. package/package.json +78 -0
  230. package/personal-agent.mjs +39 -0
  231. package/scripts/browser.mjs +99 -0
  232. package/scripts/check-redaction-coverage.mjs +109 -0
  233. package/scripts/commands/audit.mjs +309 -0
  234. package/scripts/commands/doctor.mjs +437 -0
  235. package/scripts/commands/open.mjs +40 -0
  236. package/scripts/commands/setup.mjs +21 -0
  237. package/scripts/commands/uninstall.mjs +114 -0
  238. package/scripts/commands/update.mjs +96 -0
  239. package/scripts/commands/version.mjs +62 -0
  240. package/scripts/commands.md +0 -0
  241. package/scripts/lib/sqlite-loader.mjs +49 -0
  242. package/scripts/message-discipline-digest.mjs +535 -0
  243. package/scripts/poc/google-connector-inheritance/REPORT.md +197 -0
  244. package/scripts/poc/google-connector-inheritance/claude-sdk-probe.mjs +79 -0
  245. package/scripts/remint-roadmap-ids.mjs +257 -0
  246. package/scripts/rm-paths.mjs +22 -0
  247. package/scripts/run-node.mjs +223 -0
  248. package/scripts/smoke-obsidian-api.mjs +166 -0
  249. package/scripts/start.mjs +160 -0
@@ -0,0 +1,93 @@
1
+ ---
2
+ schema_version: 1
3
+ slug: features/messaging/dashboard-chat
4
+ title: Dashboard Chat
5
+ id: dashboard-chat
6
+ aliases:
7
+ - chat
8
+ - in-browser chat
9
+ - dashboard chat
10
+ - /chat
11
+ category: features
12
+ summary: |
13
+ The /chat page is an in-browser DM channel. It uses its own
14
+ ProcessKey (dashboard.chat) and binds to whichever backend the
15
+ operator picked on /settings/models — independent of the paired
16
+ messaging app.
17
+ section: messaging
18
+ tags:
19
+ - core
20
+ - messaging
21
+ - dashboard
22
+ status: stable
23
+ ask_examples:
24
+ - What does /chat do that DMs don't?
25
+ - How is dashboard chat different from a Telegram DM?
26
+ - Why are my dashboard chat replies different from my Telegram replies?
27
+ locale: en-US
28
+ created: 2026-04-25
29
+ updated: 2026-04-25
30
+ keywords:
31
+ - chat
32
+ - dashboard
33
+ - in-browser
34
+ related:
35
+ - features/messaging/overview
36
+ - concepts/backends-and-tiers
37
+ - features/operations/activity-and-conversations
38
+ ui_anchors:
39
+ - /chat
40
+ ---
41
+
42
+ # Dashboard Chat
43
+
44
+ ## In One Sentence
45
+
46
+ `/chat` is a browser-mounted DM with the agent — a fully featured
47
+ conversational surface separate from any paired messaging app.
48
+
49
+ ## What It Does
50
+
51
+ - **Real-time** message stream over SSE.
52
+ - **Tool progress** rendered inline (which tool, which file, which
53
+ endpoint) so you can watch the agent work.
54
+ - **Session history** persisted to SQLite (`scope='dashboard_chat'`)
55
+ and visible from Activity → Conversations.
56
+ - **Independent backend binding** — `dashboard.chat` is its own
57
+ ProcessKey, so the model used here can differ from the one your
58
+ Telegram DM uses.
59
+
60
+ ## When It Runs / How It Is Triggered
61
+
62
+ Whenever you press send. The page connects to `POST /api/chat/messages`
63
+ to enqueue and `GET /api/chat/stream` to listen.
64
+
65
+ ## What It Outputs
66
+
67
+ - Inline tool calls and replies.
68
+ - Persisted messages under the chat session.
69
+
70
+ ## Where in the Dashboard
71
+
72
+ - **Chat (`/chat`)** is the live surface.
73
+ - **Conversations** lets you re-open a past session.
74
+
75
+ ## Configuration
76
+
77
+ - **Settings → Models** lets you pick which backend `dashboard.chat`
78
+ binds to (default: same as `message.dm`, but operator-overridable).
79
+ - **Settings → Models → Session Timeouts → Dashboard Timeout** is the
80
+ per-session wall-clock cap for `/chat`.
81
+
82
+ ## When Something Goes Wrong
83
+
84
+ - A **stalled session** with no progress: check Activity for the
85
+ session row — it may be waiting for an SSE event the daemon
86
+ dropped.
87
+ - A **chat that uses the wrong model**: check `/settings/models` —
88
+ `dashboard.chat`'s row is independent from `message.dm`'s.
89
+
90
+ ## Related
91
+
92
+ - [Messaging Overview](overview.md)
93
+ - [Backends and Tiers](../../concepts/backends-and-tiers.md)
@@ -0,0 +1,50 @@
1
+ ---
2
+ schema_version: 1
3
+ slug: features/messaging/discord
4
+ title: Discord
5
+ id: discord
6
+ category: features
7
+ summary: |
8
+ Pair Discord by creating a bot in the developer portal, pasting the
9
+ token into Aitne, and DMing the magic phrase from your
10
+ Discord account.
11
+ section: messaging
12
+ tags:
13
+ - messaging
14
+ - integration
15
+ status: stable
16
+ ask_examples:
17
+ - How do I pair Discord?
18
+ locale: en-US
19
+ created: 2026-04-25
20
+ updated: 2026-04-25
21
+ related:
22
+ - features/messaging/overview
23
+ - features/messaging/pairing-and-magic-phrase
24
+ ---
25
+
26
+ # Discord
27
+
28
+ ## In One Sentence
29
+
30
+ A Discord bot becomes the agent's surface; pair via DM after
31
+ installing the bot in the developer portal.
32
+
33
+ ## What It Does
34
+
35
+ - Listens for DMs from the paired owner.
36
+ - Listens for mentions in shared servers.
37
+ - Sends notifications back via DM.
38
+
39
+ ## Where in the Dashboard
40
+
41
+ - **Connections → Messaging → Discord**.
42
+
43
+ ## When Something Goes Wrong
44
+
45
+ - DMs disabled in the operator's privacy settings: enable "Allow
46
+ direct messages from server members".
47
+
48
+ ## Related
49
+
50
+ - [Messaging Overview](overview.md)
@@ -0,0 +1,111 @@
1
+ ---
2
+ schema_version: 1
3
+ slug: features/messaging/overview
4
+ title: Messaging Overview
5
+ id: messaging-overview
6
+ aliases:
7
+ - messaging
8
+ - dms
9
+ - direct messages
10
+ - messaging apps
11
+ - notifications
12
+ category: features
13
+ summary: |
14
+ Pair Aitne with one or more messaging apps (Telegram, Slack,
15
+ Discord, WhatsApp). DMs become the primary reactive channel; the
16
+ agent uses the same channel to send notifications back.
17
+ section: messaging
18
+ tags:
19
+ - core
20
+ - messaging
21
+ status: stable
22
+ ask_examples:
23
+ - How do I pair my phone with the agent?
24
+ - Which messaging apps does the agent support?
25
+ - Why didn't I get a notification?
26
+ locale: en-US
27
+ created: 2026-04-25
28
+ updated: 2026-04-25
29
+ keywords:
30
+ - messaging
31
+ - dm
32
+ - pairing
33
+ - telegram
34
+ - slack
35
+ - discord
36
+ - whatsapp
37
+ related:
38
+ - features/messaging/pairing-and-magic-phrase
39
+ - features/messaging/telegram
40
+ - features/messaging/slack
41
+ - features/messaging/discord
42
+ - features/messaging/whatsapp
43
+ - features/messaging/dashboard-chat
44
+ - features/operations/notifications
45
+ - features/operations/quiet-hours
46
+ ui_anchors:
47
+ - /connections
48
+ - /connections/messaging
49
+ - /settings/connections
50
+ - /settings/commands
51
+ ---
52
+
53
+ # Messaging Overview
54
+
55
+ ## In One Sentence
56
+
57
+ Aitne treats DMs from a paired messaging app as its primary
58
+ reactive surface — you message it, it answers; it messages you when a
59
+ notification fires.
60
+
61
+ ## What It Does
62
+
63
+ - **Reactive DMs**: the agent answers every direct message you send.
64
+ - **Mentions**: in shared channels, @-mentioning the agent answers
65
+ the same way (group chat is filtered out by design — DMs only).
66
+ - **Outbound notifications**: routines and observations fire alerts
67
+ back through the same channel.
68
+ - **Magic-phrase pairing**: the operator types a one-time phrase to
69
+ bind their account to the agent (anti-impersonation).
70
+
71
+ Aitne is **single-owner** by design. Any DM that does not
72
+ match a paired owner channel is dropped (defense in depth — the
73
+ adapter and the dispatcher both check).
74
+
75
+ ## When It Runs / How It Is Triggered
76
+
77
+ - The messaging adapter for each connected platform polls / receives
78
+ webhooks for incoming messages.
79
+ - An incoming DM dispatches to the `message.dm` ProcessKey.
80
+ - An incoming mention dispatches to `message.mention`.
81
+ - Notifications fire as a side-effect of routines and observations
82
+ reaching the notifier (subject to quiet hours and rate limits).
83
+
84
+ ## What It Outputs
85
+
86
+ - Replies in the operator's chosen messaging app.
87
+ - Notification messages, batched during quiet hours.
88
+
89
+ ## Where in the Dashboard
90
+
91
+ - **Connections (`/connections`)** is the unified pairing page.
92
+ - **Connections → Messaging (`/connections/messaging`)** lists each
93
+ app's status, owner channel, and rate limit settings.
94
+
95
+ ## Configuration
96
+
97
+ - Per-app: bot token / OAuth, owner channel, optional default channel.
98
+ - Global: `primaryPlatform` (the fallback when multiple apps are paired).
99
+
100
+ ## When Something Goes Wrong
101
+
102
+ - An **un-paired DM**: the agent ignores it. Pair the app from
103
+ `/connections/messaging` first.
104
+ - A **notification you expected but did not get**: check quiet hours
105
+ on `/settings/schedule`.
106
+
107
+ ## Related
108
+
109
+ - [Pairing & Magic Phrase](pairing-and-magic-phrase.md)
110
+ - [Dashboard Chat](dashboard-chat.md) — the in-browser equivalent.
111
+ - [Notifications](../operations/notifications.md)
@@ -0,0 +1,69 @@
1
+ ---
2
+ schema_version: 1
3
+ slug: features/messaging/pairing-and-magic-phrase
4
+ title: Pairing and Magic Phrase
5
+ id: pairing-and-magic-phrase
6
+ aliases:
7
+ - magic phrase
8
+ - pairing
9
+ - owner pairing
10
+ category: features
11
+ summary: |
12
+ Pair your messaging account to Aitne by typing a one-time
13
+ "magic phrase" the dashboard generates. The phrase binds the channel
14
+ to your owner identity so impersonation is impossible.
15
+ section: messaging
16
+ tags:
17
+ - core
18
+ - messaging
19
+ - pairing
20
+ - safety
21
+ status: stable
22
+ ask_examples:
23
+ - How do I pair my Telegram account?
24
+ - What is the magic phrase?
25
+ - Can someone else impersonate me?
26
+ locale: en-US
27
+ created: 2026-04-25
28
+ updated: 2026-04-25
29
+ keywords:
30
+ - pairing
31
+ - magic phrase
32
+ - owner
33
+ related:
34
+ - features/messaging/overview
35
+ ---
36
+
37
+ # Pairing and Magic Phrase
38
+
39
+ ## In One Sentence
40
+
41
+ The dashboard prints a one-time phrase; you DM that phrase to the
42
+ agent from the messaging app you want to pair; the daemon records the
43
+ channel as your owner channel.
44
+
45
+ ## What It Does
46
+
47
+ - Prevents drive-by impersonation: a bot can't open a DM and pretend
48
+ to be the operator without the phrase.
49
+ - Multiple paired channels (e.g. Telegram + Slack) all map to the
50
+ same owner identity.
51
+
52
+ ## When It Runs / How It Is Triggered
53
+
54
+ The phrase is generated when the operator clicks "Pair" on
55
+ `/connections/messaging`. The daemon listens for the phrase from any
56
+ incoming DM until paired or the phrase expires.
57
+
58
+ ## Where in the Dashboard
59
+
60
+ - **Connections → Messaging** is the pairing surface.
61
+
62
+ ## When Something Goes Wrong
63
+
64
+ - Phrase expired: regenerate it from the dashboard.
65
+ - DM was sent in a group: pairing only works in direct messages.
66
+
67
+ ## Related
68
+
69
+ - [Messaging Overview](overview.md)
@@ -0,0 +1,51 @@
1
+ ---
2
+ schema_version: 1
3
+ slug: features/messaging/slack
4
+ title: Slack
5
+ id: slack
6
+ category: features
7
+ summary: |
8
+ Pair a Slack workspace by installing a bot user, pasting tokens
9
+ into Aitne, and DMing the magic phrase.
10
+ section: messaging
11
+ tags:
12
+ - messaging
13
+ - integration
14
+ status: stable
15
+ ask_examples:
16
+ - How do I pair Slack?
17
+ - Can the agent listen in shared channels?
18
+ locale: en-US
19
+ created: 2026-04-25
20
+ updated: 2026-04-25
21
+ related:
22
+ - features/messaging/overview
23
+ - features/messaging/pairing-and-magic-phrase
24
+ ---
25
+
26
+ # Slack
27
+
28
+ ## In One Sentence
29
+
30
+ A Slack bot user becomes the agent's surface in your workspace; DMs
31
+ to the bot are owner messages, mentions in channels are mention events.
32
+
33
+ ## What It Does
34
+
35
+ - Listens for DMs (owner reactive path).
36
+ - Listens for `@personalagent` mentions in shared channels.
37
+ - Sends notifications to the owner DM.
38
+
39
+ ## Where in the Dashboard
40
+
41
+ - **Connections → Messaging → Slack** holds bot tokens, channel info,
42
+ and the magic-phrase pairing flow.
43
+
44
+ ## When Something Goes Wrong
45
+
46
+ - Bot does not respond: check that the workspace bot has been added
47
+ to the channel where the DM is happening.
48
+
49
+ ## Related
50
+
51
+ - [Messaging Overview](overview.md)
@@ -0,0 +1,63 @@
1
+ ---
2
+ schema_version: 1
3
+ slug: features/messaging/telegram
4
+ title: Telegram
5
+ id: telegram
6
+ aliases:
7
+ - telegram bot
8
+ category: features
9
+ summary: |
10
+ Pair Telegram by creating a bot via @BotFather, pasting the token
11
+ into Aitne, and DMing the magic phrase.
12
+ section: messaging
13
+ tags:
14
+ - messaging
15
+ - integration
16
+ - core
17
+ status: stable
18
+ ask_examples:
19
+ - How do I pair Telegram?
20
+ - Where do I get a Telegram bot token?
21
+ locale: en-US
22
+ created: 2026-04-25
23
+ updated: 2026-04-25
24
+ related:
25
+ - features/messaging/pairing-and-magic-phrase
26
+ - features/messaging/overview
27
+ ---
28
+
29
+ # Telegram
30
+
31
+ ## In One Sentence
32
+
33
+ The fastest messaging app to pair: create a Telegram bot, paste the
34
+ token, type the magic phrase.
35
+
36
+ ## What It Does
37
+
38
+ - Acts as the agent's reactive surface for incoming DMs.
39
+ - Receives outbound notifications.
40
+
41
+ ## When It Runs / How It Is Triggered
42
+
43
+ Continuously listening to Telegram's long-polling API once paired.
44
+
45
+ ## Where in the Dashboard
46
+
47
+ - **Connections → Messaging → Telegram**.
48
+
49
+ ## Configuration
50
+
51
+ | Field | Notes |
52
+ |---|---|
53
+ | Bot Token | From @BotFather. |
54
+ | Owner Channel | Auto-set on successful magic-phrase pairing. |
55
+
56
+ ## When Something Goes Wrong
57
+
58
+ - Bot replied to in a group instead of a DM: group chats are filtered
59
+ out by design; the agent only listens to direct messages.
60
+
61
+ ## Related
62
+
63
+ - [Pairing & Magic Phrase](pairing-and-magic-phrase.md)
@@ -0,0 +1,48 @@
1
+ ---
2
+ schema_version: 1
3
+ slug: features/messaging/whatsapp
4
+ title: WhatsApp
5
+ id: whatsapp
6
+ category: features
7
+ summary: |
8
+ Pair WhatsApp via the Cloud API or a bridge service. Once paired, DMs
9
+ to the configured number are owner messages.
10
+ section: messaging
11
+ tags:
12
+ - messaging
13
+ - integration
14
+ status: stable
15
+ ask_examples:
16
+ - Can I use WhatsApp with Aitne?
17
+ - How do I set up the WhatsApp Cloud API?
18
+ locale: en-US
19
+ created: 2026-04-25
20
+ updated: 2026-04-25
21
+ related:
22
+ - features/messaging/overview
23
+ ---
24
+
25
+ # WhatsApp
26
+
27
+ ## In One Sentence
28
+
29
+ A WhatsApp Cloud API number can act as the agent's owner surface; DMs
30
+ flow exactly like Telegram.
31
+
32
+ ## What It Does
33
+
34
+ - Receives WhatsApp messages routed through the configured number.
35
+ - Sends notifications back through the same channel.
36
+
37
+ ## Where in the Dashboard
38
+
39
+ - **Connections → Messaging → WhatsApp**.
40
+
41
+ ## When Something Goes Wrong
42
+
43
+ - WhatsApp's webhook timed out: check that the daemon is reachable
44
+ from the WhatsApp side (the simplest way is a tunnel during dev).
45
+
46
+ ## Related
47
+
48
+ - [Messaging Overview](overview.md)
@@ -0,0 +1,105 @@
1
+ ---
2
+ schema_version: 1
3
+ slug: features/operations/activity-and-conversations
4
+ title: Activity and Conversations
5
+ id: activity-and-conversations
6
+ aliases:
7
+ - activity feed
8
+ - conversations
9
+ - history
10
+ - audit log
11
+ category: features
12
+ summary: |
13
+ The Activity view is the audit timeline of everything the agent did;
14
+ Conversations is the per-session message transcript. Together they
15
+ answer "what happened" and "what was said".
16
+ section: operations
17
+ tags:
18
+ - core
19
+ - operations
20
+ - audit
21
+ status: stable
22
+ ask_examples:
23
+ - Where can I see what the agent did today?
24
+ - Where do I read the morning routine's full reply?
25
+ - How do I find why a routine failed?
26
+ locale: en-US
27
+ created: 2026-04-25
28
+ updated: 2026-04-25
29
+ keywords:
30
+ - activity
31
+ - conversations
32
+ - audit
33
+ - timeline
34
+ - sessions
35
+ related:
36
+ - features/operations/notifications
37
+ - features/operations/cost-tracking
38
+ - features/operations/backend-routing
39
+ ui_anchors:
40
+ - /
41
+ - /activity
42
+ - /conversations
43
+ ---
44
+
45
+ # Activity and Conversations
46
+
47
+ ## In One Sentence
48
+
49
+ Every agent session, action, and outcome is logged to SQLite and
50
+ surfaced as the Activity timeline; the matching message-by-message
51
+ detail lives one click deeper under Conversations.
52
+
53
+ ## What It Does
54
+
55
+ Activity is the unified view of:
56
+
57
+ - **Routines**: morning, evening, weekly, monthly, hourly fires.
58
+ - **Reactive sessions**: DMs, dashboard chat, mentions.
59
+ - **Background actions**: notifications sent, mail labeled, schedule
60
+ files written.
61
+ - **Failures**: timeouts, fallbacks, blocked tool calls, quota errors.
62
+
63
+ Each row links to the underlying conversation when one exists.
64
+
65
+ ## When It Runs / How It Is Triggered
66
+
67
+ There is no trigger — Activity is a read-only projection. It is
68
+ written to as a side-effect of every other event in the system
69
+ (`agent_actions` / `conversation_sessions` / `messages`).
70
+
71
+ ## What It Outputs
72
+
73
+ - A timeline filterable by event type, ProcessKey, backend, outcome.
74
+ - Per-row cost, token counts, and turn count.
75
+ - A direct link to the message transcript for any session.
76
+
77
+ ## Where in the Dashboard
78
+
79
+ - **Overview (`/`)** shows the most recent few activity rows.
80
+ - **Activity (`/activity`)** is the full searchable timeline.
81
+ - **Conversations (`/conversations/<id>`)** opens a single session's
82
+ message-by-message transcript.
83
+
84
+ ## Configuration
85
+
86
+ There is nothing to configure on the Activity view itself; what shows
87
+ up is a function of which routines are enabled and which integrations
88
+ are connected. Retention is unlimited locally — the SQLite database
89
+ keeps everything until you `pa stop && rm ~/.personal-agent/data/personal_agent.db`.
90
+
91
+ ## When Something Goes Wrong
92
+
93
+ - A row showing **"timed out"** points at a backend or SDK hang.
94
+ `executeTimeoutMinutes` (`/settings/models`) is the wall-clock cap.
95
+ - A row showing **"fallback"** means main backend failed; check the
96
+ detail for the `BackendQuotaError` / `BackendDecisiveFailure`.
97
+ - A row showing **"blocked_absolute"** means the absolute-block layer
98
+ refused a tool call. The detail names which tool and why.
99
+
100
+ ## Related
101
+
102
+ - [Notifications](notifications.md) — what the agent told you about,
103
+ separate from what it did.
104
+ - [Cost Tracking](cost-tracking.md) — the cost-rollup view.
105
+ - [Backend Routing](backend-routing.md) — how main → fallback resolves.
@@ -0,0 +1,58 @@
1
+ ---
2
+ schema_version: 1
3
+ slug: features/operations/approvals
4
+ title: Approvals
5
+ id: approvals
6
+ aliases:
7
+ - approve tier
8
+ - approval queue
9
+ - human in the loop
10
+ category: features
11
+ summary: |
12
+ Approve-tier actions block until the operator clicks approve in
13
+ the dashboard. They bypass quiet hours.
14
+ section: operations
15
+ tags:
16
+ - core
17
+ - safety
18
+ - operations
19
+ status: stable
20
+ ask_examples:
21
+ - What is an approval?
22
+ - Why is the agent waiting for me?
23
+ locale: en-US
24
+ created: 2026-04-25
25
+ updated: 2026-04-25
26
+ related:
27
+ - concepts/safety-and-execution
28
+ - features/operations/notifications
29
+ ---
30
+
31
+ # Approvals
32
+
33
+ ## In One Sentence
34
+
35
+ A small set of high-blast-radius actions queue as approvals; the
36
+ agent waits for an operator click before proceeding.
37
+
38
+ ## What It Does
39
+
40
+ - Blocks the action.
41
+ - Shows it on the Overview page's approval card.
42
+ - Sends a notification (bypasses quiet hours by design).
43
+ - Resumes when the operator approves.
44
+
45
+ ## Where in the Dashboard
46
+
47
+ - **Overview** shows the count badge.
48
+ - The approvals card lists pending items with diff previews.
49
+
50
+ ## When Something Goes Wrong
51
+
52
+ - An approval that hangs: the agent's session may have timed out.
53
+ The action expires when the session does; the operator must redo
54
+ the request that produced it.
55
+
56
+ ## Related
57
+
58
+ - [Safety and Execution](../../concepts/safety-and-execution.md)