@aitne-sh/aitne 0.1.11 → 0.1.13
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.
- package/README.md +4 -0
- package/agent-assets/agent-profiles/background-task.md +8 -1
- package/agent-assets/agent-profiles/routine-fetch-window.md +11 -0
- package/agent-assets/agents/evening-review/agent.md +6 -2
- package/agent-assets/agents/lesson-maintenance/agent.md +56 -0
- package/agent-assets/agents/morning-routine/agent.md +10 -6
- package/agent-assets/agents/source-librarian/agent.md +51 -0
- package/agent-assets/docs/concepts/agent-day.md +15 -15
- package/agent-assets/docs/concepts/auth-health.md +10 -7
- package/agent-assets/docs/concepts/backends-and-tiers.md +34 -23
- package/agent-assets/docs/concepts/costs-and-quotas.md +10 -10
- package/agent-assets/docs/concepts/delegated-mode.md +18 -18
- package/agent-assets/docs/concepts/memory-model.md +25 -24
- package/agent-assets/docs/concepts/observations.md +27 -19
- package/agent-assets/docs/concepts/process-keys.md +25 -26
- package/agent-assets/docs/concepts/routines.md +18 -17
- package/agent-assets/docs/concepts/safety-and-execution.md +20 -17
- package/agent-assets/docs/concepts/safety-model.md +16 -15
- package/agent-assets/docs/concepts/skills.md +7 -4
- package/agent-assets/docs/features/integrations/browser-history.md +52 -47
- package/agent-assets/docs/features/integrations/calendar.md +7 -7
- package/agent-assets/docs/features/integrations/git.md +15 -13
- package/agent-assets/docs/features/integrations/github.md +12 -10
- package/agent-assets/docs/features/integrations/mail.md +47 -45
- package/agent-assets/docs/features/integrations/notion.md +15 -11
- package/agent-assets/docs/features/integrations/obsidian.md +27 -23
- package/agent-assets/docs/features/lifestyle/git.md +7 -8
- package/agent-assets/docs/features/lifestyle/reading.md +11 -8
- package/agent-assets/docs/features/lifestyle/receipts.md +21 -22
- package/agent-assets/docs/features/lifestyle/travel-bookings.md +9 -9
- package/agent-assets/docs/features/memory-files/agent-journal.md +12 -10
- package/agent-assets/docs/features/memory-files/agent-lessons.md +46 -21
- package/agent-assets/docs/features/memory-files/projects.md +13 -14
- package/agent-assets/docs/features/memory-files/roadmap.md +16 -15
- package/agent-assets/docs/features/memory-files/schedule.md +10 -10
- package/agent-assets/docs/features/memory-files/today.md +18 -18
- package/agent-assets/docs/features/memory-files/user-profile.md +17 -17
- package/agent-assets/docs/features/messaging/bang-commands.md +15 -15
- package/agent-assets/docs/features/messaging/dashboard-chat.md +8 -7
- package/agent-assets/docs/features/messaging/discord.md +7 -5
- package/agent-assets/docs/features/messaging/overview.md +14 -14
- package/agent-assets/docs/features/messaging/pairing-and-magic-phrase.md +12 -12
- package/agent-assets/docs/features/messaging/slack.md +9 -8
- package/agent-assets/docs/features/messaging/telegram.md +7 -7
- package/agent-assets/docs/features/messaging/whatsapp.md +6 -6
- package/agent-assets/docs/features/operations/activity-and-conversations.md +9 -9
- package/agent-assets/docs/features/operations/approvals.md +13 -12
- package/agent-assets/docs/features/operations/backend-routing.md +38 -37
- package/agent-assets/docs/features/operations/browser-tasks.md +63 -57
- package/agent-assets/docs/features/operations/cost-tracking.md +5 -5
- package/agent-assets/docs/features/operations/managed-chromium.md +23 -22
- package/agent-assets/docs/features/operations/notifications.md +15 -15
- package/agent-assets/docs/features/operations/quiet-hours.md +14 -15
- package/agent-assets/docs/features/operations/schedule-approaching.md +16 -14
- package/agent-assets/docs/features/routines/activity-scan.md +14 -11
- package/agent-assets/docs/features/routines/custom-routines.md +9 -7
- package/agent-assets/docs/features/routines/evening-review.md +6 -7
- package/agent-assets/docs/features/routines/morning-routine.md +23 -22
- package/agent-assets/docs/features/routines/weekly-review.md +57 -51
- package/agent-assets/docs/features/wiki/commands.md +28 -22
- package/agent-assets/docs/features/wiki/cost-and-approval.md +28 -23
- package/agent-assets/docs/features/wiki/dashboard.md +22 -24
- package/agent-assets/docs/features/wiki/overview.md +17 -25
- package/agent-assets/docs/features/wiki/search.md +15 -17
- package/agent-assets/docs/features/wiki/workspaces.md +55 -56
- package/agent-assets/docs/getting-started/01-what-is-this.md +4 -5
- package/agent-assets/docs/getting-started/02-first-steps.md +12 -13
- package/agent-assets/docs/getting-started/03-what-can-this-do.md +7 -7
- package/agent-assets/docs/getting-started/04-first-day.md +4 -5
- package/agent-assets/docs/glossary.md +21 -19
- package/agent-assets/docs/guides/add-a-custom-routine.md +17 -12
- package/agent-assets/docs/guides/backup-and-restore.md +19 -16
- package/agent-assets/docs/guides/budget-and-cost-for-wiki.md +57 -62
- package/agent-assets/docs/guides/build-your-wiki.md +11 -12
- package/agent-assets/docs/guides/change-which-model-handles-x.md +30 -28
- package/agent-assets/docs/guides/connect-a-new-mail-account.md +30 -29
- package/agent-assets/docs/guides/explore-with-trace-and-connect.md +30 -32
- package/agent-assets/docs/guides/import-knowledge-file.md +9 -10
- package/agent-assets/docs/guides/install-and-run.md +9 -10
- package/agent-assets/docs/guides/maintain-wiki-health.md +10 -10
- package/agent-assets/docs/guides/migrate-machines.md +16 -14
- package/agent-assets/docs/guides/multiple-wikis-for-multiple-domains.md +12 -13
- package/agent-assets/docs/guides/pause-the-agent.md +25 -25
- package/agent-assets/docs/guides/reinstall-cleanly.md +13 -12
- package/agent-assets/docs/guides/setup-wizard.md +10 -12
- package/agent-assets/docs/guides/switch-default-backend.md +9 -9
- package/agent-assets/docs/guides/use-an-existing-obsidian-vault.md +9 -11
- package/agent-assets/docs/pages/activity.md +76 -0
- package/agent-assets/docs/pages/agents.md +78 -0
- package/agent-assets/docs/pages/analytics.md +70 -0
- package/agent-assets/docs/pages/browser.md +73 -0
- package/agent-assets/docs/pages/chat.md +67 -0
- package/agent-assets/docs/pages/connections.md +78 -0
- package/agent-assets/docs/pages/git.md +73 -0
- package/agent-assets/docs/pages/knowledge.md +75 -0
- package/agent-assets/docs/pages/overview.md +90 -0
- package/agent-assets/docs/pages/reading.md +65 -0
- package/agent-assets/docs/pages/settings.md +77 -0
- package/agent-assets/docs/pages/tasks.md +74 -0
- package/agent-assets/docs/pages/wiki.md +73 -0
- package/agent-assets/docs/reference/api.md +18 -17
- package/agent-assets/docs/reference/cli-commands.md +13 -10
- package/agent-assets/docs/reference/config.md +40 -35
- package/agent-assets/docs/reference/disallowed-tools.md +18 -17
- package/agent-assets/docs/reference/keyboard-shortcuts.md +6 -8
- package/agent-assets/docs/reference/knowledge-layout.md +10 -10
- package/agent-assets/docs/reference/process-keys.md +20 -22
- package/agent-assets/docs/reference/skills.md +18 -16
- package/agent-assets/docs/troubleshooting/auth-failed.md +13 -11
- package/agent-assets/docs/troubleshooting/dashboard-shows-degraded.md +10 -10
- package/agent-assets/docs/troubleshooting/fallback-keeps-firing.md +26 -24
- package/agent-assets/docs/troubleshooting/messaging-not-pairing.md +8 -9
- package/agent-assets/docs/troubleshooting/morning-routine-didnt-run.md +19 -18
- package/agent-assets/docs/troubleshooting/observation-not-detected.md +14 -15
- package/agent-assets/docs/troubleshooting/quota-exhausted.md +28 -26
- package/agent-assets/docs/troubleshooting/wiki-ingest-full-blocked.md +35 -34
- package/agent-assets/docs/troubleshooting/wiki-write-failed.md +21 -24
- package/agent-assets/playbooks/markdown-note.md +43 -0
- package/agent-assets/playbooks/monitoring.md +29 -0
- package/agent-assets/playbooks/research.md +47 -0
- package/agent-assets/skills/agent-create/SKILL.md +71 -32
- package/agent-assets/skills/agent-create/references/prompt-frame-extended.md +132 -0
- package/agent-assets/skills/agent-create/references/prompt-frame.md +125 -0
- package/agent-assets/skills/background-task/SKILL.md +13 -8
- package/agent-assets/skills/background-task-reply/SKILL.md +2 -2
- package/agent-assets/skills/board/SKILL.md +92 -0
- package/agent-assets/skills/browser-history/SKILL.md +3 -3
- package/agent-assets/skills/browser-history-respond/SKILL.md +3 -3
- package/agent-assets/skills/browser-task/SKILL.md +4 -2
- package/agent-assets/skills/context/seeds/file-responsibilities.seed.json +2 -1
- package/agent-assets/skills/schedule/SKILL.md +21 -18
- package/agent-assets/skills/schedule/references/batch.md +1 -1
- package/agent-assets/skills/schedule/references/model-selection.md +1 -1
- package/agent-assets/skills/schedule/references/prompt-frame.md +125 -0
- package/agent-assets/skills/sources/SKILL.md +68 -0
- package/agent-assets/skills/sources/curation.json +21 -0
- package/agent-assets/skills/sources/seeds/filing-rules.seed.json +25 -0
- package/agent-assets/skills/sources/seeds/source-collections.seed.json +20 -0
- package/agent-assets/skills/task/SKILL.md +82 -0
- package/agent-assets/task-flows/background_task.md +29 -3
- package/agent-assets/task-flows/message.received.dm.md +1 -1
- package/agent-assets/task-flows/routine.activity_scan.md +17 -2
- package/agent-assets/task-flows/routine.evening_review.md +72 -11
- package/agent-assets/task-flows/routine.fetch_window.md +21 -0
- package/agent-assets/task-flows/routine.monthly_review.md +3 -1
- package/agent-assets/task-flows/routine.morning_routine_today.md +26 -7
- package/agent-assets/task-flows/routine.source_maintenance.md +50 -0
- package/agent-assets/task-flows/scheduled.dm.md +29 -16
- package/agent-assets/templates/_manifest.json +1 -0
- package/agent-assets/templates/knowledge/sources/_index.md +19 -0
- package/package.json +4 -4
|
@@ -23,8 +23,6 @@ section: wiki
|
|
|
23
23
|
tags:
|
|
24
24
|
- wiki
|
|
25
25
|
- dashboard
|
|
26
|
-
- reference
|
|
27
|
-
- core
|
|
28
26
|
status: stable
|
|
29
27
|
ask_examples:
|
|
30
28
|
- What does the /wiki page show?
|
|
@@ -37,7 +35,7 @@ ask_examples:
|
|
|
37
35
|
- What does the Enable Wiki button do?
|
|
38
36
|
locale: en-US
|
|
39
37
|
created: 2026-05-21
|
|
40
|
-
updated: 2026-
|
|
38
|
+
updated: 2026-07-01
|
|
41
39
|
keywords:
|
|
42
40
|
- /wiki
|
|
43
41
|
- /wiki/timeline
|
|
@@ -82,12 +80,12 @@ process_keys:
|
|
|
82
80
|
|
|
83
81
|
# Wiki Dashboard Surfaces
|
|
84
82
|
|
|
85
|
-
The wiki has three
|
|
86
|
-
Aitne
|
|
87
|
-
configuration lives under **Setup → Settings**.
|
|
88
|
-
|
|
83
|
+
The wiki has three separate pages in the dashboard. The split mirrors
|
|
84
|
+
how the rest of Aitne is organized: content you browse lives under
|
|
85
|
+
**My Life**, and configuration lives under **Setup → Settings**. All
|
|
86
|
+
three pages read through the same daemon routes (`/api/wiki/*`). Every
|
|
89
87
|
request carries an `x-process-key: wiki.ask` header so the safety
|
|
90
|
-
layer can
|
|
88
|
+
layer can record who is reading what.
|
|
91
89
|
|
|
92
90
|
## `/wiki` — workspace home
|
|
93
91
|
|
|
@@ -112,13 +110,13 @@ Two action buttons at the bottom of the card: **Timeline & health**
|
|
|
112
110
|
|
|
113
111
|
### 2. Index
|
|
114
112
|
|
|
115
|
-
Renders the latest `20_wiki/_index.md`, the
|
|
116
|
-
|
|
117
|
-
`!compile` run.
|
|
113
|
+
Renders the latest `20_wiki/_index.md`, the running catalogue of wiki
|
|
114
|
+
pages that the agent keeps up to date. The agent rewrites this file at
|
|
115
|
+
the end of every `!compile` run.
|
|
118
116
|
|
|
119
117
|
States:
|
|
120
|
-
- **Empty** — no `_index.md` yet; the
|
|
121
|
-
from a DM.
|
|
118
|
+
- **Empty** — no `_index.md` yet; the card's call-to-action button
|
|
119
|
+
tells you to run `!compile` from a DM.
|
|
122
120
|
- **Loaded** — the file is rendered verbatim as a monospaced code
|
|
123
121
|
block (the index uses wikilink syntax, so rendering as markdown
|
|
124
122
|
would lose information).
|
|
@@ -139,10 +137,10 @@ error toast.
|
|
|
139
137
|
### Disabled state
|
|
140
138
|
|
|
141
139
|
When no `active=1` workspace exists in `wiki_workspaces`, the page
|
|
142
|
-
shows an **Enable Wiki**
|
|
143
|
-
sidebar entry is always visible (
|
|
144
|
-
|
|
145
|
-
the sidebar, a
|
|
140
|
+
shows an **Enable Wiki** button that jumps to `/settings/wiki`. The
|
|
141
|
+
sidebar entry is always visible (it shows as long as the workspace
|
|
142
|
+
list can be loaded), so you can still land on this disabled page from
|
|
143
|
+
the sidebar, a shared link, or browser history.
|
|
146
144
|
|
|
147
145
|
## `/wiki/timeline` — full chronological history + health
|
|
148
146
|
|
|
@@ -172,9 +170,9 @@ log plus an **All commands** default. Entries render the same way
|
|
|
172
170
|
they do in the `/wiki` recent-activity card — process-key badge,
|
|
173
171
|
operation, path, timestamp.
|
|
174
172
|
|
|
175
|
-
Both surfaces read live from the wiki API
|
|
176
|
-
|
|
177
|
-
|
|
173
|
+
Both surfaces read live from the wiki API. The timeline page simply
|
|
174
|
+
displays files the wiki skills already write to disk — there is no
|
|
175
|
+
separate database table behind it.
|
|
178
176
|
|
|
179
177
|
## `/settings/wiki` — configuration
|
|
180
178
|
|
|
@@ -186,9 +184,9 @@ A two-card chooser:
|
|
|
186
184
|
|
|
187
185
|
- **Internal** (recommended) — managed by Aitne inside the context
|
|
188
186
|
vault (default `<contextDir>/knowledge/wiki`, i.e.
|
|
189
|
-
`~/.personal-agent/context/knowledge/wiki`),
|
|
190
|
-
|
|
191
|
-
nothing else to configure.
|
|
187
|
+
`~/.personal-agent/context/knowledge/wiki`), with the folder
|
|
188
|
+
structure set up for you. The **Enable internal wiki** button turns
|
|
189
|
+
it on with nothing else to configure.
|
|
192
190
|
- **Existing Obsidian vault** (external) — point Aitne at a folder you
|
|
193
191
|
already own via the path picker, then confirm with **Use this
|
|
194
192
|
folder**.
|
|
@@ -222,7 +220,7 @@ The full configuration:
|
|
|
222
220
|
model, turn limit, and per-run budget on each `wiki.*` process key
|
|
223
221
|
(`wiki.ingest_url`, `wiki.compile`, `wiki.ask`, `wiki.lint`,
|
|
224
222
|
`wiki.trace`, `wiki.connect`). All six default to the medium tier
|
|
225
|
-
(Claude Sonnet
|
|
223
|
+
(Claude Sonnet 5) with a sensible `maxTurns` / `maxBudgetUsd`; you
|
|
226
224
|
can override per key.
|
|
227
225
|
- **Archive / delete** — archive keeps the row but flips `active=0`;
|
|
228
226
|
delete drops the row (data on disk is untouched on external mode).
|
|
@@ -17,7 +17,6 @@ section: wiki
|
|
|
17
17
|
tags:
|
|
18
18
|
- wiki
|
|
19
19
|
- knowledge
|
|
20
|
-
- core
|
|
21
20
|
status: stable
|
|
22
21
|
ask_examples:
|
|
23
22
|
- What is the wiki?
|
|
@@ -26,7 +25,7 @@ ask_examples:
|
|
|
26
25
|
- Can I point the wiki at my Obsidian vault?
|
|
27
26
|
locale: en-US
|
|
28
27
|
created: 2026-05-12
|
|
29
|
-
updated: 2026-
|
|
28
|
+
updated: 2026-07-01
|
|
30
29
|
keywords:
|
|
31
30
|
- wiki
|
|
32
31
|
- wiki workspace
|
|
@@ -88,10 +87,10 @@ and questions you ask it.
|
|
|
88
87
|
The three commands you reach for daily:
|
|
89
88
|
|
|
90
89
|
- **URL ingest**: send `!ingest <url>` from a paired DM channel; the wiki
|
|
91
|
-
agent fetches the source,
|
|
90
|
+
agent fetches the source, summarizes it, and stores a raw note.
|
|
92
91
|
- **Compile**: `!compile` (incremental) and `!compile full` (full
|
|
93
|
-
rebuild) turn raw notes into
|
|
94
|
-
cross-links and an `_index.md`
|
|
92
|
+
rebuild) turn raw notes into synthesized wiki articles with
|
|
93
|
+
cross-links and an `_index.md` catalog.
|
|
95
94
|
- **Ask**: `!ask <question>` searches the wiki and writes a cited
|
|
96
95
|
answer under `30_outputs/`.
|
|
97
96
|
|
|
@@ -110,8 +109,9 @@ competes for budget with daily reactive memory.
|
|
|
110
109
|
Aitne offers two modes:
|
|
111
110
|
|
|
112
111
|
- **Internal** (recommended starting point) — the daemon owns the
|
|
113
|
-
vault at `$PA_DATA_DIR/context/knowledge/wiki`. No sandbox
|
|
114
|
-
|
|
112
|
+
vault at `$PA_DATA_DIR/context/knowledge/wiki`. No sandbox
|
|
113
|
+
permission issues, snapshots are managed for you, and it stays clear
|
|
114
|
+
of iCloud sync conflicts.
|
|
115
115
|
- **External** — you point the wiki at an existing Obsidian vault on
|
|
116
116
|
disk. The daemon writes directly when the filesystem allows, and
|
|
117
117
|
falls back to the official Obsidian CLI when the vault sits in a
|
|
@@ -126,7 +126,7 @@ workspaces may not nest.
|
|
|
126
126
|
- `00_inbox/` — human-only capture (the agent has read access but
|
|
127
127
|
cannot write here).
|
|
128
128
|
- `10_raw/` — source-faithful raw notes (append-only).
|
|
129
|
-
- `20_wiki/` —
|
|
129
|
+
- `20_wiki/` — synthesized wiki articles + `_index.md` catalog.
|
|
130
130
|
- `30_outputs/` — answer / report artifacts written by `!ask`.
|
|
131
131
|
- `90_meta/` — taxonomy, schemas, lint reports, and the
|
|
132
132
|
`import-<date>.md` migration record.
|
|
@@ -138,31 +138,23 @@ process keys can write wiki layers.
|
|
|
138
138
|
## Cost Safety
|
|
139
139
|
|
|
140
140
|
`!compile full` rebuilds the entire wiki from raw notes and is the
|
|
141
|
-
most expensive command
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
surfaces on the dashboard home page (`/`), where you Approve or Deny
|
|
148
|
-
it.
|
|
149
|
-
|
|
150
|
-
On a git-tracked external vault, Aitne also runs
|
|
151
|
-
`git add -A && git commit -m "aitne wiki: pre-compile snapshot <ts>"`
|
|
152
|
-
on a clean working tree before the compile so you can roll back if
|
|
153
|
-
the run produces a surprise. A dirty tree refuses the operation —
|
|
154
|
-
commit or stash first.
|
|
141
|
+
most expensive command, so Aitne guards it: the dashboard shows a cost
|
|
142
|
+
estimate before you run it, a large run needs your approval (the
|
|
143
|
+
per-workspace threshold defaults to $2.00), and a git-tracked external
|
|
144
|
+
vault gets a snapshot commit first so you can roll back a surprising
|
|
145
|
+
run. See [Cost estimation and approval](cost-and-approval.md) for the
|
|
146
|
+
exact estimate math, the approval flow, and the pre-compile snapshot.
|
|
155
147
|
|
|
156
148
|
## Where it lives in the dashboard
|
|
157
149
|
|
|
158
150
|
The wiki has two distinct surfaces in the dashboard. The split mirrors
|
|
159
|
-
how Aitne
|
|
151
|
+
how Aitne organizes the rest of the app — configuration lives under
|
|
160
152
|
**Setup → Settings**, day-to-day content browsing lives under **My
|
|
161
153
|
Life** next to Knowledge / Reading / Git.
|
|
162
154
|
|
|
163
155
|
| Page | Section | Use it for |
|
|
164
156
|
|---|---|---|
|
|
165
|
-
| `/wiki` | My Life | Workspace summary, the compiled `_index.md`
|
|
157
|
+
| `/wiki` | My Life | Workspace summary, the compiled `_index.md` catalog, and the latest activity log. The page you open most often. |
|
|
166
158
|
| `/wiki/timeline` | My Life | Full chronological activity log plus the latest `!lint` health report. Linked from `/wiki` and from settings. |
|
|
167
159
|
| `/settings/wiki` | Setup → Settings | Enable / archive a workspace, switch between internal and external mode, pick an external vault path, language, dispatch mode, write strategy, git auto-commit, approval threshold, per-command model selectors. |
|
|
168
160
|
|
|
@@ -196,7 +188,7 @@ This page is a high-level tour. For depth on a specific surface:
|
|
|
196
188
|
- **[Commands reference](commands.md)** — every wiki bang command
|
|
197
189
|
(`!ingest`, `!compile`, `!ask`, `!lint`, `!trace`, `!connect`,
|
|
198
190
|
`!wiki`), the `@<workspace>` addressing token, dispatch modes, and
|
|
199
|
-
the disabled-state
|
|
191
|
+
the disabled-state behavior.
|
|
200
192
|
- **[Dashboard surfaces](dashboard.md)** — what `/wiki`,
|
|
201
193
|
`/wiki/timeline`, and `/settings/wiki` actually render, where each
|
|
202
194
|
card reads from on disk, and how the contextual help button maps
|
|
@@ -21,9 +21,7 @@ summary: |
|
|
|
21
21
|
section: wiki
|
|
22
22
|
tags:
|
|
23
23
|
- wiki
|
|
24
|
-
-
|
|
25
|
-
- fts
|
|
26
|
-
- reference
|
|
24
|
+
- knowledge
|
|
27
25
|
status: stable
|
|
28
26
|
ask_examples:
|
|
29
27
|
- How does !ask find the right wiki pages?
|
|
@@ -36,7 +34,7 @@ ask_examples:
|
|
|
36
34
|
- What is fts_wiki?
|
|
37
35
|
locale: en-US
|
|
38
36
|
created: 2026-05-21
|
|
39
|
-
updated: 2026-
|
|
37
|
+
updated: 2026-07-01
|
|
40
38
|
keywords:
|
|
41
39
|
- wiki search
|
|
42
40
|
- fts_wiki
|
|
@@ -83,9 +81,9 @@ The wiki exposes two read paths the skills use to find content:
|
|
|
83
81
|
A short, human-readable list with one bullet per wiki page, kept
|
|
84
82
|
current by every `!compile` run. Good for "give me the lay of the
|
|
85
83
|
land" queries.
|
|
86
|
-
2. **`fts_wiki`** — a
|
|
87
|
-
daemon syncs on every successful disk
|
|
88
|
-
page that mentions X" queries.
|
|
84
|
+
2. **`fts_wiki`** — a full-text search index (a content-less SQLite
|
|
85
|
+
FTS5 virtual table) the daemon syncs on every successful disk
|
|
86
|
+
write. Good for "find any page that mentions X" queries.
|
|
89
87
|
|
|
90
88
|
Both surfaces are read-only consumers; only `!compile` writes the
|
|
91
89
|
catalogue, and only the wiki API write endpoints update `fts_wiki`.
|
|
@@ -139,9 +137,9 @@ CREATE VIRTUAL TABLE IF NOT EXISTS fts_wiki USING fts5(
|
|
|
139
137
|
```
|
|
140
138
|
|
|
141
139
|
The `unicode61` tokenizer with `remove_diacritics 2` matches the
|
|
142
|
-
mail FTS table for consistency. CJK
|
|
143
|
-
|
|
144
|
-
mixed-script wikis.
|
|
140
|
+
mail FTS table for consistency. CJK (Chinese, Japanese, Korean)
|
|
141
|
+
content is handled by code-point breaking, so searches work across
|
|
142
|
+
those scripts and mixed-script wikis.
|
|
145
143
|
|
|
146
144
|
### Layer prefixes
|
|
147
145
|
|
|
@@ -157,9 +155,9 @@ The path classifier maps each on-disk file to one of six layers:
|
|
|
157
155
|
Only four of these are actually indexed. `upsertWikiFulltextRow`
|
|
158
156
|
**drops `log` and `inbox` rows** before insert: `log.md` is an
|
|
159
157
|
append-only audit trail and `00_inbox/` is human-only, so indexing
|
|
160
|
-
them would bury wiki and raw matches under log noise. So the
|
|
161
|
-
you ever see in `fts_wiki.layer` are `raw`, `wiki`, `output`,
|
|
162
|
-
`meta`.
|
|
158
|
+
them would bury wiki and raw matches under log noise. So the only
|
|
159
|
+
values you ever see in `fts_wiki.layer` are `raw`, `wiki`, `output`,
|
|
160
|
+
and `meta`.
|
|
163
161
|
|
|
164
162
|
Searches can filter by layer to restrict the result set — e.g.
|
|
165
163
|
`layer=wiki` for only canonical pages, not raw notes.
|
|
@@ -173,7 +171,7 @@ evidence. The query supports:
|
|
|
173
171
|
|
|
174
172
|
- `q` — the search query. Each whitespace-separated token is quoted
|
|
175
173
|
and joined by implicit AND, so a multi-word query narrows the
|
|
176
|
-
result set. (Tokens are quoted to
|
|
174
|
+
result set. (Tokens are quoted to neutralize FTS5's `AND`/`OR`/
|
|
177
175
|
`NOT`/`NEAR` operator vocabulary — typing literally `rust AND go`
|
|
178
176
|
matches those words, it does not parse as a boolean.)
|
|
179
177
|
- `layer` — restrict to a single indexed layer (`raw` / `wiki` /
|
|
@@ -187,8 +185,8 @@ evidence. The query supports:
|
|
|
187
185
|
|
|
188
186
|
Each result row carries `path`, `layer`, `title`, a body `snippet`
|
|
189
187
|
(FTS5 `snippet()` output, `<mark>`-wrapped), `mtime` so the caller
|
|
190
|
-
can rank by recency, and a BM25 `rank` (lower is better,
|
|
191
|
-
weighted above `body`).
|
|
188
|
+
can rank by recency, and a BM25 relevance `rank` (lower is better,
|
|
189
|
+
`title` weighted above `body`).
|
|
192
190
|
|
|
193
191
|
There is no dashboard content-search bar today — the FTS surface is
|
|
194
192
|
used by the agent, not the user UI. The dashboard timeline
|
|
@@ -222,7 +220,7 @@ A simplified flow for `!ask <question>`:
|
|
|
222
220
|
question's key terms.
|
|
223
221
|
2. It reads `10_raw/` notes only when the wiki pages need source
|
|
224
222
|
verification.
|
|
225
|
-
3. The LLM
|
|
223
|
+
3. The LLM synthesizes an answer from the pages it pulled.
|
|
226
224
|
4. The answer is written to
|
|
227
225
|
`30_outputs/<YYYY-MM-DD>-<slug>.md` (the date-prefixed output
|
|
228
226
|
shape the `OUTPUT_RE` path check enforces). The file records the
|
|
@@ -24,7 +24,6 @@ tags:
|
|
|
24
24
|
- wiki
|
|
25
25
|
- workspaces
|
|
26
26
|
- config
|
|
27
|
-
- core
|
|
28
27
|
status: stable
|
|
29
28
|
ask_examples:
|
|
30
29
|
- What is a wiki workspace?
|
|
@@ -37,7 +36,7 @@ ask_examples:
|
|
|
37
36
|
- Can two wikis live in nested folders?
|
|
38
37
|
locale: en-US
|
|
39
38
|
created: 2026-05-21
|
|
40
|
-
updated: 2026-
|
|
39
|
+
updated: 2026-07-01
|
|
41
40
|
keywords:
|
|
42
41
|
- wiki workspace
|
|
43
42
|
- workspace
|
|
@@ -87,10 +86,10 @@ config_keys:
|
|
|
87
86
|
# Wiki Workspaces, Vaults, and Write Strategy
|
|
88
87
|
|
|
89
88
|
A **wiki workspace** is one row in the `wiki_workspaces` table plus
|
|
90
|
-
the directory tree it points at. Aitne
|
|
91
|
-
workspace
|
|
92
|
-
`default`.
|
|
93
|
-
|
|
89
|
+
the directory tree it points at. Aitne starts with no active
|
|
90
|
+
workspace. The first run of the Enable flow creates one named
|
|
91
|
+
`default`. You can run as many side-by-side wikis as you have
|
|
92
|
+
distinct knowledge domains — one per subject is a common setup.
|
|
94
93
|
|
|
95
94
|
## Internal vs external mode
|
|
96
95
|
|
|
@@ -109,8 +108,8 @@ Path-collision rules apply to both modes:
|
|
|
109
108
|
- Two wiki workspaces may not nest — neither root can be inside the other.
|
|
110
109
|
|
|
111
110
|
The dashboard probe (`POST /api/wiki/workspaces/probe`) runs these
|
|
112
|
-
checks live before the workspace row is written and
|
|
113
|
-
|
|
111
|
+
checks live before the workspace row is written, and shows a
|
|
112
|
+
plain-language error if any rule is broken.
|
|
114
113
|
|
|
115
114
|
## The layered layout
|
|
116
115
|
|
|
@@ -126,19 +125,19 @@ top-level subdirectories plus a workspace-root `log.md`:
|
|
|
126
125
|
| `90_meta/` | Wiki agent | Taxonomy (`taxonomy.md`), schemas, health reports (`90_meta/health/<date>.md`), migration records (`90_meta/health/pre-migrate-<date>/`). |
|
|
127
126
|
| `log.md` | Wiki agent (append-only) | One line per write. Drives the dashboard timeline. |
|
|
128
127
|
|
|
129
|
-
The DM agent can read wiki search and index routes, but only the
|
|
128
|
+
The DM agent can read the wiki search and index routes, but only the
|
|
130
129
|
wiki process keys (`wiki.ingest_url`, `wiki.compile`, `wiki.ask`,
|
|
131
|
-
`wiki.lint`, `wiki.trace`, `wiki.connect`)
|
|
132
|
-
layers.
|
|
133
|
-
|
|
134
|
-
writes to `00_inbox
|
|
130
|
+
`wiki.lint`, `wiki.trace`, `wiki.connect`) may write into these
|
|
131
|
+
layers. Every write funnels through one route,
|
|
132
|
+
`POST /api/wiki/:workspace/files/:path`, which checks which layer the
|
|
133
|
+
path lands in and always rejects writes to `00_inbox/`.
|
|
135
134
|
|
|
136
135
|
## Multi-workspace addressing
|
|
137
136
|
|
|
138
|
-
Every wiki bang command
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
137
|
+
Every wiki bang command takes an optional `@<name>` token right
|
|
138
|
+
after the bang to aim at a specific workspace. Aitne reads this token
|
|
139
|
+
before the command parses the rest of the line, so multi-word topics
|
|
140
|
+
and comma-separated arguments still work as usual:
|
|
142
141
|
|
|
143
142
|
```
|
|
144
143
|
!compile @research full
|
|
@@ -146,15 +145,15 @@ multi-word topics and comma-separated arguments work as normal:
|
|
|
146
145
|
!connect @research diffusion models, score matching
|
|
147
146
|
```
|
|
148
147
|
|
|
149
|
-
|
|
150
|
-
in practice the oldest active workspace (lowest id)
|
|
151
|
-
named `default` on a fresh install, or the next-oldest
|
|
152
|
-
workspace if `default` has been archived.
|
|
148
|
+
Leave the token off and the command targets the **default**
|
|
149
|
+
workspace — in practice the oldest active workspace (lowest id). That
|
|
150
|
+
is the one named `default` on a fresh install, or the next-oldest
|
|
151
|
+
active workspace if `default` has been archived.
|
|
153
152
|
|
|
154
|
-
A workspace name after `@` must start with a letter or digit and
|
|
155
|
-
contain only letters, digits, `.`, `_`, or `-` (max 64
|
|
156
|
-
invalid token
|
|
157
|
-
|
|
153
|
+
A workspace name after `@` must start with a letter or digit, and the
|
|
154
|
+
rest may contain only letters, digits, `.`, `_`, or `-` (max 64
|
|
155
|
+
chars). An invalid token gets a usage error rather than a silent
|
|
156
|
+
fall-back to the default.
|
|
158
157
|
|
|
159
158
|
See [guides/multiple-wikis-for-multiple-domains](../../guides/multiple-wikis-for-multiple-domains.md)
|
|
160
159
|
for a walkthrough.
|
|
@@ -172,18 +171,18 @@ write. Three values:
|
|
|
172
171
|
running). Used for external vaults that live in sandboxed
|
|
173
172
|
locations (typically iCloud-synced vaults) where direct fs writes
|
|
174
173
|
fail with `EPERM` / `EACCES` / `EROFS` / `EBUSY`.
|
|
175
|
-
- **`auto`** —
|
|
176
|
-
|
|
177
|
-
|
|
174
|
+
- **`auto`** — tries `fs` first, falls back to `cli` on those
|
|
175
|
+
sandbox error codes, and saves the value it settled on back to the
|
|
176
|
+
row so later writes skip the check.
|
|
178
177
|
|
|
179
178
|
Internal workspaces are pinned to `fs`. External workspaces start in
|
|
180
|
-
`auto` and
|
|
181
|
-
`/settings/wiki` if you need to force one path or the other (
|
|
182
|
-
test the CLI path on a non-sandboxed vault).
|
|
179
|
+
`auto` and tune themselves. You can override the resolved value from
|
|
180
|
+
`/settings/wiki` if you need to force one path or the other (for
|
|
181
|
+
example, to test the CLI path on a non-sandboxed vault).
|
|
183
182
|
|
|
184
|
-
The resolved strategy
|
|
185
|
-
|
|
186
|
-
|
|
183
|
+
The resolved strategy shows up in the workspace API response and on
|
|
184
|
+
the `/settings/wiki` row, so you can always see which path (`fs` or
|
|
185
|
+
`cli`) `auto` settled on. The full design is in
|
|
187
186
|
WIKI_BUILDER_DESIGN.md §P2.B / §8.
|
|
188
187
|
|
|
189
188
|
## Dispatch mode (`parallel` / `serial`)
|
|
@@ -191,13 +190,13 @@ WIKI_BUILDER_DESIGN.md §P2.B / §8.
|
|
|
191
190
|
`!ingest` honours the per-workspace **dispatch mode** in
|
|
192
191
|
`/settings/wiki`:
|
|
193
192
|
|
|
194
|
-
- **Parallel** (default): all URLs
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
limits at the URL host.
|
|
198
|
-
- **Serial**: URLs
|
|
199
|
-
session starts only after the previous one
|
|
200
|
-
|
|
193
|
+
- **Parallel** (default): all URLs run at once, up to the per-URL
|
|
194
|
+
concurrency cap (`wiki_workspaces.concurrency_cap`, default `3`,
|
|
195
|
+
valid range 1–10). Fastest, with a small risk of tripping rate
|
|
196
|
+
limits at the URL's host.
|
|
197
|
+
- **Serial**: URLs run in the order you submitted them; each agent
|
|
198
|
+
session starts only after the previous one finishes. Slower, but
|
|
199
|
+
the budget and request rate stay predictable.
|
|
201
200
|
|
|
202
201
|
The acknowledgement DM tells you which mode ran
|
|
203
202
|
(`in parallel` / `serially`).
|
|
@@ -205,10 +204,10 @@ The acknowledgement DM tells you which mode ran
|
|
|
205
204
|
## Language
|
|
206
205
|
|
|
207
206
|
`wiki_workspaces.language` is the workspace's content language. It
|
|
208
|
-
defaults to `en` and is
|
|
209
|
-
— see WIKI_BUILDER_DESIGN.md §14 Q2 for the reasoning.
|
|
210
|
-
|
|
211
|
-
|
|
207
|
+
defaults to `en` and is separate from `runtimeSettings.primaryLanguage`
|
|
208
|
+
— see WIKI_BUILDER_DESIGN.md §14 Q2 for the reasoning. Pick any
|
|
209
|
+
language tag from the picker in `/settings/wiki`; Aitne passes that
|
|
210
|
+
value to the wiki skills as the target language for compiled
|
|
212
211
|
articles, ask answers, and trace / connect outputs.
|
|
213
212
|
|
|
214
213
|
The wiki language does **not** cascade from your primary language at
|
|
@@ -217,16 +216,16 @@ wiki in English, and vice versa.
|
|
|
217
216
|
|
|
218
217
|
## Archive vs delete
|
|
219
218
|
|
|
220
|
-
- **Archive** —
|
|
219
|
+
- **Archive** — sets `active=0` on the row but keeps the on-disk
|
|
221
220
|
data and the row's metadata. Bang commands cannot target an
|
|
222
|
-
archived workspace; the dashboard hides it from the active list
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
- **Delete** — drops the row.
|
|
226
|
-
external workspaces (the daemon never deletes
|
|
227
|
-
|
|
228
|
-
`$PA_DATA_DIR/context/knowledge/wiki/<name>` — recover
|
|
229
|
-
|
|
221
|
+
archived workspace; the dashboard hides it from the active list and
|
|
222
|
+
tucks it into an "Archived" collapsible. Re-enable the workspace to
|
|
223
|
+
unarchive it.
|
|
224
|
+
- **Delete** — drops the row. The on-disk data is **not** removed for
|
|
225
|
+
external workspaces (the daemon never deletes your vault). For
|
|
226
|
+
internal workspaces, the disk tree is also left in place under
|
|
227
|
+
`$PA_DATA_DIR/context/knowledge/wiki/<name>` — to recover, create a
|
|
228
|
+
workspace again with the same name.
|
|
230
229
|
|
|
231
230
|
## Fields and defaults reference
|
|
232
231
|
|
|
@@ -250,5 +249,5 @@ Quick map between the dashboard knobs and the `wiki_workspaces` row:
|
|
|
250
249
|
| Active | `active` | `1` |
|
|
251
250
|
|
|
252
251
|
`dm_agent_write_enabled=0` is the safe default — the DM agent can
|
|
253
|
-
only call the read-side wiki routes
|
|
254
|
-
`wiki.*` sessions
|
|
252
|
+
only call the read-side wiki routes. Writes happen inside dedicated
|
|
253
|
+
`wiki.*` sessions that bang commands spawn.
|
|
@@ -18,7 +18,6 @@ summary: |
|
|
|
18
18
|
Markdown files.
|
|
19
19
|
section: getting-started
|
|
20
20
|
tags:
|
|
21
|
-
- core
|
|
22
21
|
- getting-started
|
|
23
22
|
- backends
|
|
24
23
|
status: stable
|
|
@@ -42,7 +41,7 @@ keywords:
|
|
|
42
41
|
- markdown memory
|
|
43
42
|
- backends
|
|
44
43
|
created: 2026-04-25
|
|
45
|
-
updated: 2026-
|
|
44
|
+
updated: 2026-07-01
|
|
46
45
|
context_files:
|
|
47
46
|
- state/today.md
|
|
48
47
|
- plans/roadmap.md
|
|
@@ -59,7 +58,7 @@ related:
|
|
|
59
58
|
# What is Aitne?
|
|
60
59
|
|
|
61
60
|
Aitne is a local-first personal AI agent. It runs as a long-running
|
|
62
|
-
daemon on your own machine, drives Claude Code, Codex CLI, Gemini
|
|
61
|
+
background program (a daemon) on your own machine, drives Claude Code, Codex CLI, Gemini
|
|
63
62
|
CLI, or OpenCode (`@opencode-ai/sdk` server) via provider API keys
|
|
64
63
|
you register (with the CLI's local subscription login as a
|
|
65
64
|
fallback), and keeps all of its memory as plain Markdown files under
|
|
@@ -122,7 +121,7 @@ decides what (if anything) is worth telling you about.
|
|
|
122
121
|
|
|
123
122
|
- [Mail](../features/integrations/mail.md) — Gmail, Outlook, Yahoo,
|
|
124
123
|
iCloud, or any IMAP server. Searches your messages locally via
|
|
125
|
-
FTS5. Auto-classifies into
|
|
124
|
+
FTS5 (SQLite's built-in full-text search). Auto-classifies into
|
|
126
125
|
[reading list](../features/lifestyle/reading.md),
|
|
127
126
|
[receipts](../features/lifestyle/receipts.md), and
|
|
128
127
|
[travel bookings](../features/lifestyle/travel-bookings.md).
|
|
@@ -181,7 +180,7 @@ dashboard surfaces a warning whenever a backend is running on
|
|
|
181
180
|
subscription auth.
|
|
182
181
|
|
|
183
182
|
Each kind of work is mapped to a backend and a tier — most work runs
|
|
184
|
-
on medium (Claude Sonnet
|
|
183
|
+
on medium (Claude Sonnet 5 by default) and quick triage on lite
|
|
185
184
|
(Claude Haiku 4.5). The high tier (Claude Opus 4.8) is registered but
|
|
186
185
|
left unseeded; you opt into it per task from the dashboard. You can
|
|
187
186
|
change any of this mapping at any time.
|
|
@@ -14,7 +14,6 @@ summary: |
|
|
|
14
14
|
pair a messaging app, and arrive at a green health pill.
|
|
15
15
|
section: getting-started
|
|
16
16
|
tags:
|
|
17
|
-
- core
|
|
18
17
|
- getting-started
|
|
19
18
|
- setup
|
|
20
19
|
status: stable
|
|
@@ -31,7 +30,7 @@ keywords:
|
|
|
31
30
|
- dashboard onboarding
|
|
32
31
|
- health pill
|
|
33
32
|
created: 2026-04-27
|
|
34
|
-
updated: 2026-
|
|
33
|
+
updated: 2026-07-01
|
|
35
34
|
related:
|
|
36
35
|
- getting-started/01-what-is-this
|
|
37
36
|
- getting-started/03-what-can-this-do
|
|
@@ -70,19 +69,19 @@ skippable in the wizard. Run through it once, top to bottom.
|
|
|
70
69
|
the daemon claims you as the owner. See
|
|
71
70
|
[Messaging Overview](../features/messaging/overview.md) for the
|
|
72
71
|
list of supported apps and what each one does well.
|
|
73
|
-
3. **Pick a main backend and register an API key.**
|
|
72
|
+
3. **Pick a main backend and register an API key.** This is the LLM
|
|
74
73
|
the agent uses for "think hard" turns (Claude / Codex / Gemini /
|
|
75
|
-
OpenCode)
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
because most providers do not support running agents on
|
|
80
|
-
personal subscription. The same picker
|
|
74
|
+
OpenCode). Paste a provider API key — that is the supported way
|
|
75
|
+
to run the agent unattended (with no human signed in). If you skip
|
|
76
|
+
the key, the daemon falls back to whatever subscription login the
|
|
77
|
+
matching CLI already has on your machine, and the dashboard shows
|
|
78
|
+
a warning, because most providers do not support running agents on
|
|
79
|
+
a personal subscription. The same picker can instead point the
|
|
81
80
|
backend at a cloud provider (Bedrock / Vertex / Foundry / Azure
|
|
82
|
-
OpenAI / Gemini-Vertex)
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
81
|
+
OpenAI / Gemini-Vertex) rather than a direct API key — the provider
|
|
82
|
+
dropdown on `/settings/models` is the single place for both direct
|
|
83
|
+
keys and cloud-provider credentials. The defaults are sensible, and
|
|
84
|
+
you can change them later from `/settings/models`.
|
|
86
85
|
Background: [Backends and Tiers](../concepts/backends-and-tiers.md).
|
|
87
86
|
4. **Skip integrations you do not need yet.** Mail, calendar, git,
|
|
88
87
|
Notion, Obsidian are all optional and re-runnable any time from
|
|
@@ -14,7 +14,6 @@ summary: |
|
|
|
14
14
|
granularity, with a link to the detailed feature doc for each.
|
|
15
15
|
section: getting-started
|
|
16
16
|
tags:
|
|
17
|
-
- core
|
|
18
17
|
- getting-started
|
|
19
18
|
- routines
|
|
20
19
|
- messaging
|
|
@@ -35,7 +34,7 @@ keywords:
|
|
|
35
34
|
- wiki
|
|
36
35
|
- lifestyle
|
|
37
36
|
created: 2026-04-27
|
|
38
|
-
updated: 2026-
|
|
37
|
+
updated: 2026-07-01
|
|
39
38
|
related:
|
|
40
39
|
- getting-started/01-what-is-this
|
|
41
40
|
- getting-started/02-first-steps
|
|
@@ -110,16 +109,17 @@ them — the agent reads what's there next time it runs.
|
|
|
110
109
|
|
|
111
110
|
## Build a personal wiki from what you DM
|
|
112
111
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
cited answer all stay on disk
|
|
116
|
-
API
|
|
112
|
+
Send the agent URLs, pastes, or notes and it builds them into a linked
|
|
113
|
+
Markdown wiki inside a dedicated workspace. The raw capture, the
|
|
114
|
+
synthesized article, and any cited answer all stay as files on disk. The
|
|
115
|
+
agent writes only through the daemon API, which keeps the folder layout
|
|
116
|
+
consistent.
|
|
117
117
|
|
|
118
118
|
- [Wiki Overview](../features/wiki/overview.md) — the workspace concept,
|
|
119
119
|
the `00_inbox` / `10_raw` / `20_wiki` / `30_outputs` layers, and the
|
|
120
120
|
approval gate on full rebuilds.
|
|
121
121
|
- [Wiki Commands](../features/wiki/commands.md) — `!ingest` (capture
|
|
122
|
-
URLs), `!compile` (
|
|
122
|
+
URLs), `!compile` (synthesize), `!ask` (cited Q&A), `!lint` /
|
|
123
123
|
`!trace` / `!connect` (audit, history, bridges), `!wiki` (status).
|
|
124
124
|
- [Build Your Wiki](../guides/build-your-wiki.md) — the first-day
|
|
125
125
|
walkthrough from empty workspace to first answered question.
|
|
@@ -15,7 +15,6 @@ aliases:
|
|
|
15
15
|
- day zero
|
|
16
16
|
section: getting-started
|
|
17
17
|
tags:
|
|
18
|
-
- core
|
|
19
18
|
- getting-started
|
|
20
19
|
- setup
|
|
21
20
|
- integrations
|
|
@@ -52,7 +51,7 @@ context_files:
|
|
|
52
51
|
api_endpoints:
|
|
53
52
|
- POST /api/knowledge/import
|
|
54
53
|
created: 2026-04-25
|
|
55
|
-
updated: 2026-
|
|
54
|
+
updated: 2026-07-01
|
|
56
55
|
related:
|
|
57
56
|
- getting-started/02-first-steps
|
|
58
57
|
- getting-started/03-what-can-this-do
|
|
@@ -119,9 +118,9 @@ Send 3–5 DMs that read like introductions to a new assistant:
|
|
|
119
118
|
|
|
120
119
|
The agent appends each fact to the right `identity/*.md` file (work
|
|
121
120
|
facts → `identity/work.md`, people → `identity/people.md`, preferences →
|
|
122
|
-
`identity/personal.md`, and so on). Identity-class facts (legal
|
|
123
|
-
primary timezone)
|
|
124
|
-
|
|
121
|
+
`identity/personal.md`, and so on). Identity-class facts (your legal
|
|
122
|
+
name, your primary timezone) wait for you to confirm them instead of
|
|
123
|
+
being written automatically.
|
|
125
124
|
|
|
126
125
|
### Bootstrap from ChatGPT, Gemini, or anywhere else
|
|
127
126
|
|