@aitne-sh/aitne 0.1.7 → 0.1.8

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 (222) hide show
  1. package/README.md +195 -829
  2. package/agent-assets/agent-profiles/_safety.md +49 -17
  3. package/agent-assets/agent-profiles/profile-importer.md +1 -1
  4. package/agent-assets/agent-profiles/routine.md +4 -3
  5. package/agent-assets/docs/concepts/agent-day.md +6 -1
  6. package/agent-assets/docs/concepts/auth-health.md +10 -1
  7. package/agent-assets/docs/concepts/backends-and-tiers.md +74 -40
  8. package/agent-assets/docs/concepts/costs-and-quotas.md +25 -5
  9. package/agent-assets/docs/concepts/delegated-mode.md +147 -68
  10. package/agent-assets/docs/concepts/memory-model.md +9 -4
  11. package/agent-assets/docs/concepts/observations.md +13 -1
  12. package/agent-assets/docs/concepts/process-keys.md +20 -5
  13. package/agent-assets/docs/concepts/routines.md +38 -20
  14. package/agent-assets/docs/concepts/safety-model.md +30 -13
  15. package/agent-assets/docs/concepts/skills.md +12 -7
  16. package/agent-assets/docs/features/integrations/calendar.md +1 -1
  17. package/agent-assets/docs/features/integrations/git.md +2 -2
  18. package/agent-assets/docs/features/integrations/github.md +9 -2
  19. package/agent-assets/docs/features/integrations/mail.md +1 -1
  20. package/agent-assets/docs/features/integrations/notion.md +34 -6
  21. package/agent-assets/docs/features/integrations/obsidian.md +7 -2
  22. package/agent-assets/docs/features/lifestyle/git.md +4 -7
  23. package/agent-assets/docs/features/lifestyle/receipts.md +17 -2
  24. package/agent-assets/docs/features/lifestyle/travel-bookings.md +15 -0
  25. package/agent-assets/docs/features/lifestyle/travel-time.md +7 -1
  26. package/agent-assets/docs/features/memory-files/agent-journal.md +2 -2
  27. package/agent-assets/docs/features/memory-files/projects.md +6 -0
  28. package/agent-assets/docs/features/memory-files/roadmap.md +5 -0
  29. package/agent-assets/docs/features/memory-files/today.md +1 -0
  30. package/agent-assets/docs/features/memory-files/user-profile.md +6 -0
  31. package/agent-assets/docs/features/messaging/bang-commands.md +20 -10
  32. package/agent-assets/docs/features/messaging/discord.md +12 -1
  33. package/agent-assets/docs/features/messaging/overview.md +10 -7
  34. package/agent-assets/docs/features/messaging/slack.md +13 -1
  35. package/agent-assets/docs/features/messaging/telegram.md +7 -1
  36. package/agent-assets/docs/features/messaging/whatsapp.md +12 -1
  37. package/agent-assets/docs/features/operations/activity-and-conversations.md +2 -2
  38. package/agent-assets/docs/features/operations/approvals.md +6 -0
  39. package/agent-assets/docs/features/operations/backend-routing.md +7 -0
  40. package/agent-assets/docs/features/operations/cost-tracking.md +6 -0
  41. package/agent-assets/docs/features/operations/notifications.md +6 -0
  42. package/agent-assets/docs/features/operations/schedule-approaching.md +22 -9
  43. package/agent-assets/docs/features/routines/custom-routines.md +10 -4
  44. package/agent-assets/docs/features/routines/evening-review.md +1 -1
  45. package/agent-assets/docs/features/routines/hourly-check.md +1 -1
  46. package/agent-assets/docs/features/routines/morning-routine.md +24 -15
  47. package/agent-assets/docs/features/routines/weekly-review.md +38 -12
  48. package/agent-assets/docs/features/wiki/commands.md +11 -0
  49. package/agent-assets/docs/features/wiki/overview.md +13 -3
  50. package/agent-assets/docs/getting-started/01-what-is-this.md +32 -11
  51. package/agent-assets/docs/getting-started/02-first-steps.md +17 -4
  52. package/agent-assets/docs/getting-started/03-what-can-this-do.md +21 -11
  53. package/agent-assets/docs/getting-started/04-first-day.md +14 -0
  54. package/agent-assets/docs/glossary.md +65 -12
  55. package/agent-assets/docs/guides/add-a-custom-routine.md +12 -0
  56. package/agent-assets/docs/guides/backup-and-restore.md +16 -2
  57. package/agent-assets/docs/guides/budget-and-cost-for-wiki.md +6 -0
  58. package/agent-assets/docs/guides/build-your-wiki.md +14 -0
  59. package/agent-assets/docs/guides/change-which-model-handles-x.md +7 -0
  60. package/agent-assets/docs/guides/connect-a-new-mail-account.md +16 -0
  61. package/agent-assets/docs/guides/explore-with-trace-and-connect.md +6 -0
  62. package/agent-assets/docs/guides/import-knowledge-file.md +11 -0
  63. package/agent-assets/docs/guides/install-and-run.md +20 -4
  64. package/agent-assets/docs/guides/maintain-wiki-health.md +6 -0
  65. package/agent-assets/docs/guides/migrate-machines.md +13 -1
  66. package/agent-assets/docs/guides/multiple-wikis-for-multiple-domains.md +9 -0
  67. package/agent-assets/docs/guides/pause-the-agent.md +12 -4
  68. package/agent-assets/docs/guides/reinstall-cleanly.md +19 -4
  69. package/agent-assets/docs/guides/setup-wizard.md +20 -9
  70. package/agent-assets/docs/guides/switch-default-backend.md +10 -1
  71. package/agent-assets/docs/guides/use-an-existing-obsidian-vault.md +5 -0
  72. package/agent-assets/docs/reference/api.md +29 -1
  73. package/agent-assets/docs/reference/cli-commands.md +22 -3
  74. package/agent-assets/docs/reference/config.md +37 -5
  75. package/agent-assets/docs/reference/disallowed-tools.md +13 -0
  76. package/agent-assets/docs/reference/keyboard-shortcuts.md +13 -0
  77. package/agent-assets/docs/reference/process-keys.md +70 -20
  78. package/agent-assets/docs/reference/skills.md +27 -9
  79. package/agent-assets/docs/troubleshooting/auth-failed.md +7 -2
  80. package/agent-assets/docs/troubleshooting/dashboard-shows-degraded.md +13 -1
  81. package/agent-assets/docs/troubleshooting/fallback-keeps-firing.md +10 -0
  82. package/agent-assets/docs/troubleshooting/messaging-not-pairing.md +11 -0
  83. package/agent-assets/docs/troubleshooting/morning-routine-didnt-run.md +9 -4
  84. package/agent-assets/docs/troubleshooting/observation-not-detected.md +12 -0
  85. package/agent-assets/docs/troubleshooting/quota-exhausted.md +7 -1
  86. package/agent-assets/docs/troubleshooting/wiki-ingest-full-blocked.md +5 -0
  87. package/agent-assets/docs/troubleshooting/wiki-write-failed.md +5 -0
  88. package/agent-assets/optimizer-skills/drift-analysis/SKILL.md +1 -1
  89. package/agent-assets/optimizer-skills/skill-curation/SKILL.md +2 -2
  90. package/agent-assets/skills/agent-actions/SKILL.md +122 -0
  91. package/agent-assets/skills/attach/SKILL.md +1 -2
  92. package/agent-assets/skills/context/SKILL.md +36 -454
  93. package/agent-assets/skills/context/references/api.md +220 -0
  94. package/agent-assets/skills/context/references/required-frontmatter.md +73 -0
  95. package/agent-assets/skills/context/references/snapshot-files.md +103 -0
  96. package/agent-assets/skills/context/seeds/file-responsibilities.seed.json +1 -1
  97. package/agent-assets/skills/docs-search/SKILL.md +13 -13
  98. package/agent-assets/skills/external-services/SKILL.delegated.claude.md +5 -7
  99. package/agent-assets/skills/external-services/SKILL.delegated.codex.md +5 -7
  100. package/agent-assets/skills/external-services/SKILL.delegated.gemini.md +5 -7
  101. package/agent-assets/skills/external-services/SKILL.md +6 -259
  102. package/agent-assets/skills/external-services/SKILL.native.claude.md +1 -2
  103. package/agent-assets/skills/external-services/SKILL.native.codex.md +1 -2
  104. package/agent-assets/skills/external-services/SKILL.native.gemini.md +1 -2
  105. package/agent-assets/skills/external-services/references/calendar-apple.md +97 -0
  106. package/agent-assets/skills/external-services/references/calendar-google.md +72 -0
  107. package/agent-assets/skills/external-services/references/calendar-outlook.md +36 -0
  108. package/agent-assets/skills/external-services/references/github.md +17 -0
  109. package/agent-assets/skills/external-services/references/obsidian.md +49 -0
  110. package/agent-assets/skills/external-services/references/skills-crud.md +27 -0
  111. package/agent-assets/skills/gmail-lifestyle/SKILL.md +224 -0
  112. package/agent-assets/skills/gmail-lifestyle/references/receipts-api.md +93 -0
  113. package/agent-assets/skills/gmail-lifestyle/references/travel-bookings-api.md +75 -0
  114. package/agent-assets/skills/gmail-lifestyle/references/travel-time-api.md +59 -0
  115. package/agent-assets/skills/mail/SKILL.delegated.claude.md +1 -1
  116. package/agent-assets/skills/mail/SKILL.delegated.codex.md +1 -1
  117. package/agent-assets/skills/mail/SKILL.delegated.gemini.md +1 -1
  118. package/agent-assets/skills/mail/SKILL.md +9 -114
  119. package/agent-assets/skills/mail/SKILL.native.claude.md +1 -1
  120. package/agent-assets/skills/mail/SKILL.native.codex.md +1 -1
  121. package/agent-assets/skills/mail/SKILL.native.gemini.md +1 -1
  122. package/agent-assets/skills/mail/references/api.md +108 -0
  123. package/agent-assets/skills/mail/references/examples.md +70 -0
  124. package/agent-assets/skills/mail/references/providers.md +8 -8
  125. package/agent-assets/skills/managed-tasks/SKILL.md +472 -0
  126. package/agent-assets/skills/managed-tasks/references/errors.md +70 -0
  127. package/agent-assets/skills/managed-tasks/references/output-path.md +75 -0
  128. package/agent-assets/skills/managed-tasks/references/recurrence-rule.md +86 -0
  129. package/agent-assets/skills/management-policy/SKILL.md +33 -105
  130. package/agent-assets/skills/management-policy/references/policy-workflow.md +101 -0
  131. package/agent-assets/skills/notify/SKILL.md +6 -78
  132. package/agent-assets/skills/notify/references/priority.md +60 -0
  133. package/agent-assets/skills/notion/SKILL.delegated.claude.md +1 -1
  134. package/agent-assets/skills/notion/SKILL.delegated.codex.md +1 -1
  135. package/agent-assets/skills/notion/SKILL.delegated.gemini.md +1 -1
  136. package/agent-assets/skills/notion/SKILL.md +6 -10
  137. package/agent-assets/skills/notion/SKILL.native.claude.md +1 -2
  138. package/agent-assets/skills/notion/SKILL.native.codex.md +1 -2
  139. package/agent-assets/skills/notion/SKILL.native.gemini.md +1 -2
  140. package/agent-assets/skills/observations/SKILL.md +1 -6
  141. package/agent-assets/skills/project-doc/SKILL.md +1 -5
  142. package/agent-assets/skills/reading/SKILL.md +2 -2
  143. package/agent-assets/skills/roadmap/SKILL.md +37 -135
  144. package/agent-assets/skills/roadmap/references/api.md +100 -0
  145. package/agent-assets/skills/roadmap/references/cross-check.md +73 -0
  146. package/agent-assets/skills/roadmap/references/migration.md +56 -0
  147. package/agent-assets/skills/roadmap/references/preparation-timeline.md +2 -2
  148. package/agent-assets/skills/schedule/SKILL.md +52 -88
  149. package/agent-assets/skills/schedule/references/batch.md +93 -0
  150. package/agent-assets/skills/schedule/references/errors.md +214 -0
  151. package/agent-assets/skills/schedule/references/model-selection.md +96 -0
  152. package/agent-assets/skills/schedule/references/recurrence-rule.md +86 -0
  153. package/agent-assets/skills/schedule/references/recurring.md +185 -0
  154. package/agent-assets/skills/scheduled-managed-task/SKILL.md +13 -15
  155. package/agent-assets/skills/today/SKILL.md +27 -57
  156. package/agent-assets/skills/today/references/agent-plan-lifecycle.md +113 -0
  157. package/agent-assets/skills/user-interview/SKILL.md +12 -59
  158. package/agent-assets/skills/user-interview/references/op-briefing.md +51 -0
  159. package/agent-assets/skills/user-interview/references/op-morning.md +59 -0
  160. package/agent-assets/skills/user-interview/references/sweep-and-fallback.md +1 -1
  161. package/agent-assets/skills/user-profile/SKILL.md +43 -63
  162. package/agent-assets/skills/user-profile/references/character-preferences.md +83 -0
  163. package/agent-assets/skills/user-profile/seeds/topic-files.seed.json +28 -0
  164. package/agent-assets/skills/wiki/wiki-ask/SKILL.md +0 -1
  165. package/agent-assets/skills/wiki/wiki-compile/SKILL.md +0 -1
  166. package/agent-assets/skills/wiki/wiki-connect/SKILL.md +0 -1
  167. package/agent-assets/skills/wiki/wiki-graduate/SKILL.md +0 -1
  168. package/agent-assets/skills/wiki/wiki-ingest/SKILL.md +0 -1
  169. package/agent-assets/skills/wiki/wiki-lint/SKILL.md +0 -1
  170. package/agent-assets/skills/wiki/wiki-trace/SKILL.md +0 -1
  171. package/agent-assets/skills/wiki/wiki-vault-rules/SKILL.md +0 -1
  172. package/agent-assets/system-prompts/routine-fetch-window.md +68 -0
  173. package/agent-assets/system-prompts/skill-index-instruction.md +26 -0
  174. package/agent-assets/task-flows/_partials/calendar-acquire.google_calendar.md +18 -11
  175. package/agent-assets/task-flows/_partials/calendar-acquire.outlook_calendar.md +16 -9
  176. package/agent-assets/task-flows/_partials/capture-user-info.md +24 -0
  177. package/agent-assets/task-flows/_partials/confirm-subflow.md +68 -0
  178. package/agent-assets/task-flows/_partials/dm-intent.long-horizon.md +35 -0
  179. package/agent-assets/task-flows/_partials/dm-intent.project.md +391 -0
  180. package/agent-assets/task-flows/_partials/mail-acquire.gmail.md +20 -11
  181. package/agent-assets/task-flows/_partials/mail-acquire.outlook_mail.md +17 -9
  182. package/agent-assets/task-flows/_partials/notion-acquire.notion.md +18 -12
  183. package/agent-assets/task-flows/knowledge.import.md +1 -1
  184. package/agent-assets/task-flows/message.received.dm.md +13 -15
  185. package/agent-assets/task-flows/message.received.dm_first.md +10 -14
  186. package/agent-assets/task-flows/routine.custom.md +3 -1
  187. package/agent-assets/task-flows/routine.evening_review.md +39 -163
  188. package/agent-assets/task-flows/routine.fetch_window.md +17 -12
  189. package/agent-assets/task-flows/routine.hourly_check.md +16 -8
  190. package/agent-assets/task-flows/routine.hourly_check.triage.md +1 -1
  191. package/agent-assets/task-flows/routine.monthly_review.md +46 -4
  192. package/agent-assets/task-flows/routine.morning_routine_journal.md +113 -0
  193. package/agent-assets/task-flows/routine.morning_routine_today.md +673 -0
  194. package/agent-assets/task-flows/routine.roadmap_refresh.md +60 -15
  195. package/agent-assets/task-flows/routine.user_profile_sweep.md +9 -10
  196. package/agent-assets/task-flows/routine.weekly_review.md +285 -70
  197. package/agent-assets/task-flows/scheduled.dm.md +8 -8
  198. package/agent-assets/task-flows/scheduled.task.md +5 -5
  199. package/agent-assets/task-flows/setup.initial.md +165 -245
  200. package/agent-assets/task-flows/wiki.ingest_url.md +1 -1
  201. package/agent-assets/templates/_manifest.json +7 -7
  202. package/agent-assets/templates/dossiers/_index.md +1 -1
  203. package/agent-assets/templates/rules/journal-format.md +145 -38
  204. package/agent-assets/templates/user/expertise.md +4 -2
  205. package/agent-assets/templates/user/goals.md +4 -2
  206. package/agent-assets/templates/user/people.md +8 -2
  207. package/agent-assets/templates/user/personal.md +4 -2
  208. package/agent-assets/templates/user/work.md +4 -2
  209. package/bin/aitne.mjs +8 -1
  210. package/package.json +4 -4
  211. package/scripts/commands/doctor.mjs +52 -0
  212. package/scripts/commands/run-now.mjs +202 -0
  213. package/scripts/commands/verify.mjs +264 -0
  214. package/agent-assets/docs/features/routines/monthly-review.md +0 -65
  215. package/agent-assets/skills/management-task-modify/SKILL.md +0 -203
  216. package/agent-assets/skills/management-task-register/SKILL.md +0 -330
  217. package/agent-assets/skills/management-task-stop/SKILL.md +0 -166
  218. package/agent-assets/skills/receipts/SKILL.md +0 -134
  219. package/agent-assets/skills/travel/SKILL.md +0 -132
  220. package/agent-assets/skills/travel-time/SKILL.md +0 -158
  221. package/agent-assets/task-flows/routine.morning_routine.md +0 -322
  222. package/agent-assets/task-flows/routine.morning_routine_initial.md +0 -204
@@ -1,204 +0,0 @@
1
- {context}
2
-
3
- ## Task: Morning Routine — Initial run (no prior-day data)
4
-
5
- This is the first-boot variant of the B-007 §5.9 pipeline. No
6
- `yesterday.md` exists yet, so Steps 1 (handoff) and 5 (daily journal
7
- synthesis) are skipped. Everything else mirrors the standard morning
8
- routine. Follow the `context` skill for schema.
9
-
10
- The "Vault review context" block appended to this prompt includes
11
- `context-index.md` and `dossiers/morning.md`; consult it during context
12
- gathering and update the dossier's Open items / Last run before finishing.
13
- Writes to `dossiers/<flow>.md` MUST preserve the existing YAML
14
- frontmatter block (`---\ntype: dossier\nowner: agent\nupdated: <date>\n---`);
15
- prefer `PATCH` with a section target to mutate a single block, and when
16
- doing a `PUT` full rewrite keep the frontmatter and only refresh
17
- `updated:` — writes that drop the frontmatter are rejected with 422.
18
-
19
- Global rules:
20
- - Do **not** add meta-maintenance tasks about context files, setup completion, or placeholder cleanup to User Tasks (there is no handoff to carry them from in the initial flow) unless the user explicitly asked to track them.
21
- - If `<today_write_lock_id>` is present, every PUT/PATCH to
22
- `/api/context/today` must send header `X-Lock-Id: <today_write_lock_id>`.
23
- - Silent-by-default: your final text is agent-internal. User notifications
24
- require an explicit `POST /api/notify`.
25
-
26
- ### Step 1 — Derive day-type (no handoff to read)
27
- 1. Derive today's day-type header per the today skill "Header line —
28
- day-type filter". Read `<user>` ## Notification Preferences for the
29
- matching policy. Write the resulting line as line 2 of `today.md`.
30
-
31
- > **Date reference for today.md.** Take the H1 date from
32
- > `<current_agent_day date="…" weekday="…" />` in your prompt context, not
33
- > from `<current_time>`. They diverge between local midnight and
34
- > `boundary_hour:00` local; the daemon validates line 1 against
35
- > `<current_agent_day>` and rejects mismatches with 422. The morning
36
- > routine prepares the agent-day in progress — never tomorrow.
37
-
38
- ### Step 2 — Sync external sources
39
- 2. Mail and Notion acquisition. The pre-pass fetcher session
40
- (`routine.fetch_window`) ran ahead of you and posted observations
41
- for every active mail / notion integration. The `<fetch_report>`
42
- block in your prompt tells you the pre-pass status — `success` /
43
- `partial` means the table is fresh, `failed` / `skipped` means
44
- trust nothing newer than the prior tick.
45
-
46
- Drain pending observations and apply category / focus filtering:
47
-
48
- a. **Mail observations**:
49
- `GET /api/observations?pending=true&source_prefix=gmail:,outlook_mail:&limit=30`.
50
- Classify each actionable item into a category tag and drop any
51
- whose day-type focus is `off`. When `summary_text` is NULL fall
52
- back to a one-line snippet from `payload.raw`. Mail data arrives
53
- here regardless of integration mode — the pre-pass partial
54
- handled the wire surface.
55
-
56
- b. **Notion observations**:
57
- `GET /api/observations?pending=true&source_prefix=notion:&limit=20`.
58
- Use for project / decision context only.
59
-
60
- c. **Calendar context** is already injected as `<calendar_events_7d>`
61
- (multi-provider) ahead of this prompt — reference the block
62
- directly in Step 6.
63
-
64
- Skip the entire step when no integrations are active and no mail /
65
- notion observations are pending.
66
- 3. Source-of-Truth tasks: read `<management_rules>` ## Source of Truth →
67
- Tasks, call the matching endpoint, drop filtered-off items.
68
- 4. Roadmap ## Agent Action Plan — process items dated today or overdue:
69
- - `[notify]` → `POST /api/schedule` + one row in ## Agent Plan
70
- - `[today]` → collect for ## User Tasks
71
- - `[check]` → `POST /api/schedule` (check-in) + one row in ## Agent Plan
72
- - Mark processed items with ✓ via `PATCH /api/context/roadmap`,
73
- `section=agent_action_plan`, `mode=replace`.
74
- Generate look-ahead entries for tomorrow → +3 days (roadmap vs
75
- `<calendar_events_7d>`) into ## Agent Notes using the skill's "Agent
76
- Notes flavor 1: Look-ahead checklist" format.
77
-
78
- ### Step 3 — Review overnight user-originated observations
79
- 5. `GET /api/observations?pending=true&actor=user` (observations skill).
80
- This is the user-actor complement to Step 2 — mail / notion rows
81
- posted by the partials carry `actor=agent` and have already been
82
- folded in. Step 3 picks up user-originated changes (manual file drops,
83
- Obsidian edits, git commits) recorded under `actor=user`. Fold only
84
- meaningful changes into the draft.
85
-
86
- ### Step 4 — Inbox triage
87
- 6. `GET /api/context/list/inbox` to enumerate any pasted memos the user
88
- dropped during setup. For each file: `GET /api/context/inbox/<file>`,
89
- classify (project / user / memo / task), integrate into the matching
90
- target. After integration, `PUT /api/context/agent/scratch/inbox-YYYY-MM-DD-<slug>.md` with the original body, then `DELETE /api/context/inbox/<file>`. DM-confirm high-risk cases (new project creation, user-profile overwrites, financial or health numerics). **Hard stop**: if a memo contains anything that looks like a credential, password, API key, or private token, skip it — do NOT write it anywhere, log `- HH:MM [inbox] skipped <file>: secret suspected`, leave the file in `inbox/`, and move on (overrides the DM-confirm path; see _safety.md).
91
-
92
- ### Step 5 — Skipped (no prior day to synthesize from)
93
- Journal synthesis is deferred to the next morning run. The first
94
- `daily/*.md` file is generated tomorrow.
95
-
96
- ### Step 6 — Generate today.md (PUT full replace)
97
- 7. Follow the context skill "Structure overview", "Entry formats", and
98
- "Required sections for full replace". The H1 (line 1) MUST be
99
- `# <current_agent_day.date> (<current_agent_day.weekday>)` exactly — the
100
- daemon rejects mismatches with 422. No YAML frontmatter on today.md.
101
- Agent Plan rows MUST match
102
- `- [ ] HH:MM <action> [work|study|personal|home] →<DM|notify|check-in|wake>`.
103
- Source → section mapping:
104
- - ## User Schedule ← `<calendar_events_7d>` (filtered). Write
105
- `- (calendar unavailable)` when the block has been replaced by
106
- `<calendar_status>Calendar service not available...</calendar_status>`
107
- (no active provider) or when every `<provider>` sub-block's
108
- directive fetch failed for this run.
109
- - ## User Tasks ← Step 2 email actionables + SoT tasks + roadmap
110
- `[today]`. Use `<active_projects>` for context. Drop meta-maintenance.
111
- - ## Agent Plan ← Step 2 `[notify]`/`[check]` rows plus any
112
- proactive reminders you add. Each row will be registered in Step 7.
113
- - ## Agent Notes ← Step 2 look-ahead items + any date-bound memos
114
- folded from Step 4 inbox triage.
115
- - ## Agent Log ← initialize with
116
- `- HH:MM Morning Routine (initial) completed (day-type: …)`.
117
- - ## Handoff ← `- (none)` (no carry-over data available).
118
- 8. **Populate `roadmap.md` inline (initial-day variant).** On the very first
119
- morning routine the setup wizard's skeleton roadmap is still in place
120
- (the `## Annual Goals`, `## Quarterly Focus`, and `## Agent Action Plan`
121
- sections all contain the placeholder line `_(Not yet configured)_`).
122
- When *any* of those placeholders is still present, run a full populate
123
- per the `roadmap` skill — same forward-90-day scope as
124
- `routine.roadmap_refresh` (Annual Goals from the management rules,
125
- Quarterly Focus from active projects + `<calendar_events_7d>`,
126
- Preparation Timeline from `travel_bookings` + dated calendar items,
127
- Agent Action Plan seeded from User Tasks + roadmap-relevant
128
- `agent_schedule` rows). Acquire the cross-request write lock via the
129
- skill before any `PUT /api/context/roadmap` — the daemon enforces it
130
- and a missing lock returns 423. If every placeholder has already been
131
- replaced (rare: a previous initial run completed Step 6.8 then today.md
132
- failed, or a manual edit landed), fall back to the regular
133
- morning-routine semantics: spot-update only if a milestone completed
134
- or shifted. Skipping this step leaves roadmap.md as the skeleton — the
135
- daemon's `isRoadmapStale()` post-hook then schedules a separate
136
- `routine.roadmap_refresh` to make it good, but the user will see a
137
- blank-looking roadmap until that second session lands. Doing it inline
138
- here is one Sonnet/Opus turn instead of two and removes ~1–2 minutes
139
- of post-setup latency.
140
-
141
- ### Step 7 — Register schedule
142
- 9. Register every `## Agent Plan` row via `POST /api/schedule`.
143
- 10. **Ensure the daily morning briefing recurring schedule exists.**
144
- The setup wizard's `ensureMorningBriefingRecurring` (`packages/daemon/src/api/routes/setup.ts`)
145
- normally seeds this row at first save-rules, so the daily fire
146
- path is daemon-owned and the description is hardcoded. The check
147
- below covers the rare case where setup completed without the
148
- seeder (legacy setup, partial DB restore).
149
-
150
- a. **Pre-flight.** `GET /api/recurring-schedules?enabled=true` and
151
- scan for an item with `taskType === "dm_session"` AND
152
- `taskContext.sub_flow === "morning_briefing"`. If found, skip
153
- the rest of this step — duplicate insertion would cause double
154
- daily fires. Log one line to `## Agent Log`:
155
- `- HH:MM [morning_routine_initial] morning briefing recurring already seeded`.
156
-
157
- b. **If absent, register via `POST /api/recurring-schedules`** with
158
- this body (NOT `POST /api/schedule`):
159
- ```json
160
- {
161
- "taskType": "dm_session",
162
- "description": "morning briefing — daily summary",
163
- "recurrenceRule": {
164
- "frequency": "daily",
165
- "time": "<quiet_hours_end or 08:00>",
166
- "timezone": "<user timezone from <settings primary_timezone> or system default>"
167
- },
168
- "taskContext": {
169
- "sub_flow": "morning_briefing",
170
- "pin_to_quiet_hours_end": true
171
- }
172
- }
173
- ```
174
- The `dm_session` task_type + `sub_flow=morning_briefing` is the
175
- activation key the daemon's scheduler keys off to emit a
176
- `scheduled.dm` event (see `scheduler.ts` and the sub-flow
177
- router in `scheduled.dm.md`). Description ≥ 20 chars per the
178
- schema; `"morning briefing — daily summary"` matches the
179
- wording the daemon's seeder uses verbatim.
180
-
181
- Do **not** add a one-off `## Agent Plan` row for today's briefing
182
- here. The recurring-schedule reconciler (poll loop in
183
- `scheduler.ts`) materialises today's `agent_schedule` row
184
- automatically from `next_run_at`; hand-seeding would duplicate.
185
- Do **not** send the briefing yourself from this run — this runs
186
- during quiet hours.
187
-
188
- ### Step 8 — Extension checks from routines/morning.md
189
- 11. Execute any check from the `Morning routine checks` policy block that
190
- is not already covered by Steps 1-7 (typically user-added entries
191
- with an `**Added:** ...` line).
192
-
193
- ### Step 9 — Log to agent/journal.md (English, always)
194
- 12. Append a one-paragraph English summary to `agent/journal.md` via
195
- `PATCH /api/context/agent/journal` with `mode=append_to_file`:
196
- ```
197
- ## YYYY-MM-DD morning routine (initial)
198
- - Day-type: …
199
- - Journal synthesis: skipped (no prior-day data)
200
- - Inbox: <N files triaged, M moved to scratch, K DM-confirmations sent>
201
- - Checks from routines/morning.md: <list any user-added ones executed>
202
- - Anomalies / skipped steps: <short notes or "none">
203
- ```
204
- Always English (B-007 §3 P6).