@aitne-sh/aitne 0.1.5 → 0.1.7
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 +295 -479
- package/agent-assets/agent-profiles/_safety.md +17 -2
- package/agent-assets/agent-profiles/routine-fetch-window.md +75 -40
- package/agent-assets/agent-profiles/wiki-agent.md +19 -0
- package/agent-assets/docs/features/messaging/bang-commands.md +161 -0
- package/agent-assets/docs/features/messaging/overview.md +3 -0
- package/agent-assets/docs/features/wiki/commands.md +222 -0
- package/agent-assets/docs/features/wiki/overview.md +145 -0
- package/agent-assets/docs/getting-started/03-what-can-this-do.md +18 -0
- package/agent-assets/docs/glossary.md +34 -0
- package/agent-assets/docs/guides/budget-and-cost-for-wiki.md +123 -0
- package/agent-assets/docs/guides/build-your-wiki.md +99 -0
- package/agent-assets/docs/guides/explore-with-trace-and-connect.md +169 -0
- package/agent-assets/docs/guides/maintain-wiki-health.md +168 -0
- package/agent-assets/docs/guides/multiple-wikis-for-multiple-domains.md +192 -0
- package/agent-assets/docs/guides/pause-the-agent.md +10 -3
- package/agent-assets/docs/guides/use-an-existing-obsidian-vault.md +156 -0
- package/agent-assets/docs/reference/cli-commands.md +24 -1
- package/agent-assets/docs/troubleshooting/wiki-ingest-full-blocked.md +96 -0
- package/agent-assets/docs/troubleshooting/wiki-write-failed.md +82 -0
- package/agent-assets/skills/context/SKILL.md +288 -17
- package/agent-assets/skills/external-services/SKILL.delegated.claude.md +2 -2
- package/agent-assets/skills/external-services/SKILL.delegated.codex.md +3 -3
- package/agent-assets/skills/external-services/SKILL.delegated.gemini.md +6 -6
- package/agent-assets/skills/external-services/SKILL.md +5 -3
- package/agent-assets/skills/external-services/SKILL.native.claude.md +49 -58
- package/agent-assets/skills/external-services/SKILL.native.codex.md +50 -58
- package/agent-assets/skills/external-services/SKILL.native.gemini.md +53 -56
- package/agent-assets/skills/mail/SKILL.md +5 -5
- package/agent-assets/skills/mail/SKILL.native.claude.md +57 -65
- package/agent-assets/skills/mail/SKILL.native.codex.md +73 -75
- package/agent-assets/skills/mail/SKILL.native.gemini.md +80 -75
- package/agent-assets/skills/management-task-register/SKILL.md +3 -3
- package/agent-assets/skills/notion/SKILL.native.claude.md +78 -82
- package/agent-assets/skills/notion/SKILL.native.codex.md +78 -80
- package/agent-assets/skills/notion/SKILL.native.gemini.md +91 -90
- package/agent-assets/skills/observations/SKILL.md +104 -14
- package/agent-assets/skills/roadmap/SKILL.md +19 -0
- package/agent-assets/skills/schedule/SKILL.md +44 -3
- package/agent-assets/skills/today/SKILL.md +25 -5
- package/agent-assets/skills/travel-time/SKILL.md +9 -0
- package/agent-assets/skills/wiki/wiki-ask/SKILL.md +32 -0
- package/agent-assets/skills/wiki/wiki-compile/SKILL.md +126 -0
- package/agent-assets/skills/wiki/wiki-connect/SKILL.md +75 -0
- package/agent-assets/skills/wiki/wiki-graduate/SKILL.md +45 -0
- package/agent-assets/skills/wiki/wiki-ingest/SKILL.md +182 -0
- package/agent-assets/skills/wiki/wiki-lint/SKILL.md +90 -0
- package/agent-assets/skills/wiki/wiki-trace/SKILL.md +72 -0
- package/agent-assets/skills/wiki/wiki-vault-rules/SKILL.md +145 -0
- package/agent-assets/task-flows/_partials/calendar-acquire.google_calendar.md +28 -9
- package/agent-assets/task-flows/_partials/calendar-acquire.outlook_calendar.md +26 -9
- package/agent-assets/task-flows/_partials/mail-acquire.gmail.md +51 -24
- package/agent-assets/task-flows/_partials/mail-acquire.outlook_mail.md +46 -16
- package/agent-assets/task-flows/_partials/notion-acquire.notion.md +29 -9
- package/agent-assets/task-flows/message.received.dm.md +35 -2
- package/agent-assets/task-flows/message.received.dm.native.claude.md +25 -26
- package/agent-assets/task-flows/message.received.dm.native.codex.md +30 -24
- package/agent-assets/task-flows/message.received.dm.native.gemini.md +36 -36
- package/agent-assets/task-flows/message.received.dm_first.md +43 -4
- package/agent-assets/task-flows/message.received.dm_first.native.claude.md +20 -20
- package/agent-assets/task-flows/message.received.dm_first.native.codex.md +22 -19
- package/agent-assets/task-flows/message.received.dm_first.native.gemini.md +28 -24
- package/agent-assets/task-flows/routine.fetch_window.md +51 -36
- package/agent-assets/task-flows/routine.morning_routine.md +12 -3
- package/agent-assets/task-flows/routine.morning_routine_initial.md +22 -1
- package/agent-assets/task-flows/scheduled.dm.md +477 -0
- package/agent-assets/task-flows/wiki.ask.md +11 -0
- package/agent-assets/task-flows/wiki.compile.md +28 -0
- package/agent-assets/task-flows/wiki.connect.md +12 -0
- package/agent-assets/task-flows/wiki.ingest_url.md +35 -0
- package/agent-assets/task-flows/wiki.lint.md +13 -0
- package/agent-assets/task-flows/wiki.trace.md +13 -0
- package/agent-assets/wiki-seeds/schemas/output.md +12 -0
- package/agent-assets/wiki-seeds/schemas/raw.md +13 -0
- package/agent-assets/wiki-seeds/schemas/wiki.md +12 -0
- package/agent-assets/wiki-seeds/taxonomy.md +13 -0
- package/package.json +21 -41
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
---
|
|
2
|
+
schema_version: 1
|
|
3
|
+
slug: features/wiki/overview
|
|
4
|
+
title: Wiki Overview
|
|
5
|
+
id: wiki-overview
|
|
6
|
+
aliases:
|
|
7
|
+
- wiki
|
|
8
|
+
- personal wiki
|
|
9
|
+
- knowledge vault
|
|
10
|
+
- wiki builder
|
|
11
|
+
category: features
|
|
12
|
+
summary: |
|
|
13
|
+
Aitne's opt-in personal wiki — a separate, LLM-maintained knowledge
|
|
14
|
+
vault used for durable research, references, and personal knowledge
|
|
15
|
+
that should compound over time. Distinct from Aitne's reactive memory.
|
|
16
|
+
section: wiki
|
|
17
|
+
tags:
|
|
18
|
+
- wiki
|
|
19
|
+
- knowledge
|
|
20
|
+
status: stable
|
|
21
|
+
ask_examples:
|
|
22
|
+
- What is the wiki?
|
|
23
|
+
- How is the wiki different from memory?
|
|
24
|
+
- Where does the wiki live on disk?
|
|
25
|
+
- Can I point the wiki at my Obsidian vault?
|
|
26
|
+
locale: en-US
|
|
27
|
+
created: 2026-05-12
|
|
28
|
+
updated: 2026-05-12
|
|
29
|
+
related:
|
|
30
|
+
- features/wiki/commands
|
|
31
|
+
- features/memory-files
|
|
32
|
+
- guides/build-your-wiki
|
|
33
|
+
- guides/use-an-existing-obsidian-vault
|
|
34
|
+
- guides/budget-and-cost-for-wiki
|
|
35
|
+
- troubleshooting/wiki-write-failed
|
|
36
|
+
- troubleshooting/wiki-ingest-full-blocked
|
|
37
|
+
ui_anchors:
|
|
38
|
+
- /wiki
|
|
39
|
+
- /wiki/timeline
|
|
40
|
+
- /settings/wiki
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
# Wiki Overview
|
|
44
|
+
|
|
45
|
+
## In One Sentence
|
|
46
|
+
|
|
47
|
+
The wiki is an opt-in personal knowledge vault — separate from
|
|
48
|
+
Aitne's reactive memory — that the agent grows from URLs you send it
|
|
49
|
+
and questions you ask it.
|
|
50
|
+
|
|
51
|
+
## What It Does
|
|
52
|
+
|
|
53
|
+
- **URL ingest**: send `!ingest <url>` from a paired DM channel; the wiki
|
|
54
|
+
agent fetches the source, summarises it, and stores a raw note.
|
|
55
|
+
- **Compile**: `!compile` (incremental) and `!compile full` (full
|
|
56
|
+
rebuild) turn raw notes into synthesised wiki articles with
|
|
57
|
+
cross-links and an `_index.md` catalogue.
|
|
58
|
+
- **Ask**: `!ask <question>` searches the wiki and writes a cited
|
|
59
|
+
answer under `30_outputs/`.
|
|
60
|
+
|
|
61
|
+
The wiki uses its own process keys (`wiki.ingest_url`, `wiki.compile`,
|
|
62
|
+
`wiki.ask`) with independent backend / model / budget settings, so it
|
|
63
|
+
never competes for budget with daily reactive memory.
|
|
64
|
+
|
|
65
|
+
## Internal vs External
|
|
66
|
+
|
|
67
|
+
Aitne offers two modes:
|
|
68
|
+
|
|
69
|
+
- **Internal** (recommended starting point) — the daemon owns the
|
|
70
|
+
vault at `$PA_DATA_DIR/wiki`. No sandbox issues, daemon-managed
|
|
71
|
+
snapshots, isolated from iCloud sync conflicts.
|
|
72
|
+
- **External** — you point the wiki at an existing Obsidian vault on
|
|
73
|
+
disk. The daemon writes directly when the filesystem allows, and
|
|
74
|
+
falls back to the official Obsidian CLI when the vault sits in a
|
|
75
|
+
sandboxed location (iCloud) and the Obsidian app is running.
|
|
76
|
+
|
|
77
|
+
Path-collision rules: the external root must not overlap `dataDir`,
|
|
78
|
+
your primary vault, or the external Obsidian vault path. Two wiki
|
|
79
|
+
workspaces may not nest.
|
|
80
|
+
|
|
81
|
+
## Layers
|
|
82
|
+
|
|
83
|
+
- `00_inbox/` — human-only capture (the agent has read access but
|
|
84
|
+
cannot write here).
|
|
85
|
+
- `10_raw/` — source-faithful raw notes (append-only).
|
|
86
|
+
- `20_wiki/` — synthesised wiki articles + `_index.md` catalogue.
|
|
87
|
+
- `30_outputs/` — answer / report artifacts written by `!ask`.
|
|
88
|
+
- `90_meta/` — taxonomy, schemas, lint reports, and the
|
|
89
|
+
`import-<date>.md` migration record.
|
|
90
|
+
- `log.md` — append-only operational log.
|
|
91
|
+
|
|
92
|
+
The DM agent can read wiki search and index routes but only wiki
|
|
93
|
+
process keys can write wiki layers.
|
|
94
|
+
|
|
95
|
+
## Cost Safety
|
|
96
|
+
|
|
97
|
+
`!compile full` rebuilds the entire wiki from raw notes and is the
|
|
98
|
+
most expensive command. The dashboard banner shows the bracketed
|
|
99
|
+
estimate ($0.5×–$2× the assumed input-token spend) before you run
|
|
100
|
+
it. If the pessimistic estimate exceeds the per-workspace threshold
|
|
101
|
+
(default $2.00), the command escalates to the dashboard `/approvals`
|
|
102
|
+
queue and requires your explicit confirmation before the compile
|
|
103
|
+
starts.
|
|
104
|
+
|
|
105
|
+
On a git-tracked external vault, Aitne also runs
|
|
106
|
+
`git add -A && git commit -m "aitne wiki: pre-compile snapshot <ts>"`
|
|
107
|
+
on a clean working tree before the compile so you can roll back if
|
|
108
|
+
the run produces a surprise. A dirty tree refuses the operation —
|
|
109
|
+
commit or stash first.
|
|
110
|
+
|
|
111
|
+
## Where it lives in the dashboard
|
|
112
|
+
|
|
113
|
+
The wiki has two distinct surfaces in the dashboard. The split mirrors
|
|
114
|
+
how Aitne organises the rest of the app — configuration lives under
|
|
115
|
+
**Setup → Settings**, day-to-day content browsing lives under **My
|
|
116
|
+
Life** next to Knowledge / Reading / Git / Trip / Finance / Health.
|
|
117
|
+
|
|
118
|
+
| Page | Section | Use it for |
|
|
119
|
+
|---|---|---|
|
|
120
|
+
| `/wiki` | My Life | Workspace summary, the compiled `_index.md` catalogue, and the latest activity log. The page you open most often. |
|
|
121
|
+
| `/wiki/timeline` | My Life | Full chronological activity log plus the latest `!lint` health report. Linked from `/wiki` and from settings. |
|
|
122
|
+
| `/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. |
|
|
123
|
+
|
|
124
|
+
The **My Life → Wiki** entry is always visible in the sidebar, even
|
|
125
|
+
before you enable a workspace, so the feature is easy to find. The
|
|
126
|
+
`/wiki` page itself renders an **Enable Wiki** call-to-action when no
|
|
127
|
+
workspace is active — clicking it jumps you to `/settings/wiki` where
|
|
128
|
+
the same internal / external choice surfaces.
|
|
129
|
+
|
|
130
|
+
The wiki is off by default on a fresh install; nothing is written to
|
|
131
|
+
disk until you opt in.
|
|
132
|
+
|
|
133
|
+
### Settings page states
|
|
134
|
+
|
|
135
|
+
`/settings/wiki` is two-state:
|
|
136
|
+
|
|
137
|
+
- **Disabled** (no active workspace) — a single "Enable Internal
|
|
138
|
+
Workspace" CTA plus an external-path picker. The picker opens your
|
|
139
|
+
OS-native folder dialog (Finder on macOS, File Explorer on Windows,
|
|
140
|
+
the system folder dialog on Linux) and shows an inline validation
|
|
141
|
+
banner once you pick a path — see [guides/use-an-existing-obsidian-vault](../../guides/use-an-existing-obsidian-vault.md).
|
|
142
|
+
- **Enabled** — full configuration: language, dispatch mode, write
|
|
143
|
+
strategy, git auto-commit toggle, approval threshold, per-command
|
|
144
|
+
model selectors, plus archive / delete. A "Browse wiki" link at the
|
|
145
|
+
top jumps you back to `/wiki`.
|
|
@@ -28,6 +28,8 @@ related:
|
|
|
28
28
|
- concepts/memory-model
|
|
29
29
|
- features/messaging/voice-attachments
|
|
30
30
|
- features/operations/skill-self-optimization
|
|
31
|
+
- features/wiki/overview
|
|
32
|
+
- features/wiki/commands
|
|
31
33
|
---
|
|
32
34
|
|
|
33
35
|
# What This App Can Do
|
|
@@ -85,6 +87,22 @@ them — the agent reads what's there next time it runs.
|
|
|
85
87
|
- [agent/journal.md](../features/memory-files/agent-journal.md) —
|
|
86
88
|
what the agent did and what it noticed.
|
|
87
89
|
|
|
90
|
+
## Build a personal wiki from what you DM
|
|
91
|
+
|
|
92
|
+
A workspace-scoped builder turns URLs, pastes, and notes you send into a
|
|
93
|
+
linked Markdown wiki. The raw capture, the synthesised article, and the
|
|
94
|
+
cited answer all stay on disk and the agent only writes via the daemon
|
|
95
|
+
API so the layout invariants hold.
|
|
96
|
+
|
|
97
|
+
- [Wiki Overview](../features/wiki/overview.md) — the workspace concept,
|
|
98
|
+
the `00_inbox` / `10_raw` / `20_wiki` / `30_outputs` layers, and the
|
|
99
|
+
approval gate on full rebuilds.
|
|
100
|
+
- [Wiki Commands](../features/wiki/commands.md) — `!ingest` (capture
|
|
101
|
+
URLs), `!compile` (synthesise), `!ask` (cited Q&A), `!lint` /
|
|
102
|
+
`!trace` / `!connect` (audit, history, bridges), `!wiki` (status).
|
|
103
|
+
- [Build Your Wiki](../guides/build-your-wiki.md) — the first-day
|
|
104
|
+
walkthrough from empty workspace to first answered question.
|
|
105
|
+
|
|
88
106
|
## Help with the small lifestyle stuff
|
|
89
107
|
|
|
90
108
|
Reading lists, receipts, travel bookings, travel-time estimates — the
|
|
@@ -114,3 +114,37 @@ The current agent day's main memory file under
|
|
|
114
114
|
`~/.personal-agent/context/today.md`. Rebuilt once per day by the
|
|
115
115
|
morning routine and edited by every DM, observation, and routine that
|
|
116
116
|
needs to record state for the day.
|
|
117
|
+
|
|
118
|
+
## Wiki Workspace
|
|
119
|
+
|
|
120
|
+
A single named root the wiki feature writes into. Either **internal**
|
|
121
|
+
(`~/.personal-agent/wiki/`) or **external** (a path you point at, often
|
|
122
|
+
an existing Obsidian vault). Every wiki bang command targets a
|
|
123
|
+
workspace; omitting the `@<workspace>` token addresses the default.
|
|
124
|
+
See [Wiki Overview](features/wiki/overview.md) and
|
|
125
|
+
[Multiple Wikis](guides/multiple-wikis-for-multiple-domains.md).
|
|
126
|
+
|
|
127
|
+
## Wiki Layers
|
|
128
|
+
|
|
129
|
+
The four directories every workspace contains:
|
|
130
|
+
|
|
131
|
+
- `00_inbox/` — agent-readable but agent-unwritable; for hand-drops
|
|
132
|
+
destined for graduation.
|
|
133
|
+
- `10_raw/` — captured sources from `!ingest <url>` and other intake.
|
|
134
|
+
- `20_wiki/` — synthesised articles produced by `!compile`, plus
|
|
135
|
+
`_index.md`.
|
|
136
|
+
- `30_outputs/` — derived artefacts (`!ask` answers, `!lint` reports,
|
|
137
|
+
`!trace` and `!connect` outputs).
|
|
138
|
+
|
|
139
|
+
Dataflow is single-direction: `00_inbox` → `10_raw` → `20_wiki` →
|
|
140
|
+
`30_outputs`. Skills enforce the invariant; the daemon's Wiki API is
|
|
141
|
+
the only legal write path.
|
|
142
|
+
|
|
143
|
+
## Compile Preview
|
|
144
|
+
|
|
145
|
+
The dry-run touch list `!compile --preview` (alias `--dry-run`) produces
|
|
146
|
+
before any agent session runs. Lists pages that would be **added**,
|
|
147
|
+
**modified**, or **unchanged**, plus the bracketed cost estimate and
|
|
148
|
+
ETA. The compile is an LLM and may diverge inside the loop; the preview
|
|
149
|
+
is an upper bound on the touch set. Computed purely in JS — no tokens
|
|
150
|
+
spent.
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
---
|
|
2
|
+
schema_version: 1
|
|
3
|
+
slug: guides/budget-and-cost-for-wiki
|
|
4
|
+
title: Wiki Budgets and Cost
|
|
5
|
+
id: budget-and-cost-for-wiki
|
|
6
|
+
aliases:
|
|
7
|
+
- wiki cost
|
|
8
|
+
- wiki budget
|
|
9
|
+
- "!compile full approval"
|
|
10
|
+
- wiki approval threshold
|
|
11
|
+
category: guides
|
|
12
|
+
summary: |
|
|
13
|
+
How the wiki estimates `!compile full` cost, when the approval gate
|
|
14
|
+
fires, how the git pre-compile snapshot interacts with it, and how
|
|
15
|
+
to tune the threshold.
|
|
16
|
+
section: budget-and-cost-for-wiki
|
|
17
|
+
tags:
|
|
18
|
+
- guide
|
|
19
|
+
- wiki
|
|
20
|
+
- cost
|
|
21
|
+
status: stable
|
|
22
|
+
ask_examples:
|
|
23
|
+
- How much does !compile full cost?
|
|
24
|
+
- Why did !compile full need approval?
|
|
25
|
+
- How do I raise the wiki approval threshold?
|
|
26
|
+
- What does the pre-compile snapshot do?
|
|
27
|
+
locale: en-US
|
|
28
|
+
created: 2026-05-12
|
|
29
|
+
updated: 2026-05-12
|
|
30
|
+
related:
|
|
31
|
+
- features/wiki/overview
|
|
32
|
+
- features/wiki/commands
|
|
33
|
+
- concepts/costs-and-quotas
|
|
34
|
+
- troubleshooting/wiki-ingest-full-blocked
|
|
35
|
+
ui_anchors:
|
|
36
|
+
- /settings/wiki
|
|
37
|
+
- /approvals
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
# Wiki Budgets and Cost
|
|
41
|
+
|
|
42
|
+
The wiki ships with three cost knobs you can tune in
|
|
43
|
+
**Settings → Wiki**:
|
|
44
|
+
|
|
45
|
+
1. **Per-command model selector** for each of the three wiki
|
|
46
|
+
processes (`wiki.ingest_url`, `wiki.compile`, `wiki.ask`).
|
|
47
|
+
Defaults to your main backend at the medium tier; downgrade
|
|
48
|
+
`wiki.ingest_url` to a lite tier if you ingest a lot of URLs.
|
|
49
|
+
2. **Per-process budget cap** (`max_budget_usd` on each row). The
|
|
50
|
+
dispatcher's per-session budget envelope is the enforcer.
|
|
51
|
+
3. **Per-workspace `!compile full` approval threshold** (default
|
|
52
|
+
$2.00). The dashboard cost estimator brackets the expected spend
|
|
53
|
+
at 0.5× / 1× / 2× the assumed input-token count; if the
|
|
54
|
+
pessimistic estimate breaches the threshold, the bang handler
|
|
55
|
+
escalates to the approval queue instead of running autonomously.
|
|
56
|
+
|
|
57
|
+
## What the Estimator Does
|
|
58
|
+
|
|
59
|
+
`!compile full` is the most expensive wiki command because a full
|
|
60
|
+
rebuild touches every raw note. The estimator is **pure JS** — it
|
|
61
|
+
does not spawn an agent — and computes:
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
expected_usd = raw_count × avg_input_tokens_per_raw × $0.003 / 1k tokens
|
|
65
|
+
optimistic = 0.5 × expected
|
|
66
|
+
pessimistic = 2.0 × expected
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Defaults: `avg_input_tokens_per_raw = 1500`, the unit cost matches
|
|
70
|
+
Sonnet 4.6's $3 / Mtoken input price. The bracket lets you see a
|
|
71
|
+
worst-case before approving.
|
|
72
|
+
|
|
73
|
+
## Where the Gate Fires
|
|
74
|
+
|
|
75
|
+
- **Below threshold**: the compile runs autonomously and you get a
|
|
76
|
+
completion DM with actual spend.
|
|
77
|
+
- **Above threshold**: the bang handler inserts an `agent_schedule`
|
|
78
|
+
row with `task_type='approval'` and DMs the estimate. The
|
|
79
|
+
dashboard `/approvals` view (also reachable from Notifications)
|
|
80
|
+
is where you click **Approve** — that flips the row to
|
|
81
|
+
`approved_task` and the scheduler picks it up.
|
|
82
|
+
|
|
83
|
+
If you change your mind, hit **Deny** on the approval card — the row
|
|
84
|
+
flips to `skipped` and no agent session is spawned.
|
|
85
|
+
|
|
86
|
+
## Git Pre-Compile Snapshot
|
|
87
|
+
|
|
88
|
+
On an external workspace that is a git repo and has **Auto-commit
|
|
89
|
+
before `!compile full`** enabled, Aitne runs:
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
git -C <vault> status --porcelain
|
|
93
|
+
# must be empty — dirty trees refuse the operation entirely
|
|
94
|
+
git -C <vault> add -A
|
|
95
|
+
git -C <vault> commit -m "aitne wiki: pre-compile snapshot <ISO-8601-ts>"
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
before the compile session starts. The commit message is
|
|
99
|
+
deterministic so you can roll back with `git reset --hard HEAD~1` if
|
|
100
|
+
the compile produces a surprise. The `--no-verify` flag is not used —
|
|
101
|
+
your pre-commit hooks run as normal.
|
|
102
|
+
|
|
103
|
+
If your vault is not a git repo, the approval-gate DM appends
|
|
104
|
+
"no git backup taken" so you can decide whether to add one before
|
|
105
|
+
approving.
|
|
106
|
+
|
|
107
|
+
## Tuning the Threshold
|
|
108
|
+
|
|
109
|
+
The default $2.00 threshold suits a small-to-medium personal wiki
|
|
110
|
+
(around 100–500 raw notes). If your wiki grows much larger, raise
|
|
111
|
+
the threshold so routine recompiles don't queue an approval every
|
|
112
|
+
time — or downgrade `wiki.compile` to the lite tier so the actual
|
|
113
|
+
spend stays low.
|
|
114
|
+
|
|
115
|
+
## When to Use `!compile` vs `!compile full`
|
|
116
|
+
|
|
117
|
+
- **`!compile` (default)**: incremental — touches only new and
|
|
118
|
+
modified raw notes. Cheap, fast, runs autonomously. Use this in
|
|
119
|
+
normal operation.
|
|
120
|
+
- **`!compile full`**: rebuilds everything. Use when you've changed
|
|
121
|
+
the wiki schema, ingested a large batch of historical raw notes,
|
|
122
|
+
or want to force a from-scratch synthesis after editing
|
|
123
|
+
`90_meta/taxonomy.md`.
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
---
|
|
2
|
+
schema_version: 1
|
|
3
|
+
slug: guides/build-your-wiki
|
|
4
|
+
title: Build Your Wiki
|
|
5
|
+
id: build-your-wiki
|
|
6
|
+
category: guides
|
|
7
|
+
summary: |
|
|
8
|
+
Enable the internal wiki, send your first URL, compile the raw
|
|
9
|
+
notes, and ask a question against the vault.
|
|
10
|
+
section: build-your-wiki
|
|
11
|
+
tags:
|
|
12
|
+
- guide
|
|
13
|
+
- wiki
|
|
14
|
+
status: stable
|
|
15
|
+
ask_examples:
|
|
16
|
+
- How do I start using the wiki?
|
|
17
|
+
- How do I add my first source to the wiki?
|
|
18
|
+
locale: en-US
|
|
19
|
+
created: 2026-05-12
|
|
20
|
+
updated: 2026-05-12
|
|
21
|
+
related:
|
|
22
|
+
- features/wiki/overview
|
|
23
|
+
- features/wiki/commands
|
|
24
|
+
- guides/use-an-existing-obsidian-vault
|
|
25
|
+
- guides/budget-and-cost-for-wiki
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
# Build Your Wiki
|
|
29
|
+
|
|
30
|
+
## Goal
|
|
31
|
+
|
|
32
|
+
Stand up the internal wiki, capture a URL, compile it into a wiki
|
|
33
|
+
article, and run a question against the result.
|
|
34
|
+
|
|
35
|
+
## Prerequisites
|
|
36
|
+
|
|
37
|
+
- A paired messaging channel (Telegram, Slack, Discord, WhatsApp, or
|
|
38
|
+
dashboard chat).
|
|
39
|
+
- The daemon is running and the dashboard is reachable.
|
|
40
|
+
|
|
41
|
+
## Where you'll work in the dashboard
|
|
42
|
+
|
|
43
|
+
The wiki has two pages, mirroring how the rest of the dashboard is
|
|
44
|
+
split: configuration lives under **Setup → Settings**, content
|
|
45
|
+
browsing lives under **My Life**.
|
|
46
|
+
|
|
47
|
+
- **My Life → Wiki** (`/wiki`) — your main entry point. Shows
|
|
48
|
+
workspace stats, the compiled `_index.md`, and recent activity. When
|
|
49
|
+
the wiki is not enabled yet, this page renders an **Enable Wiki**
|
|
50
|
+
call-to-action.
|
|
51
|
+
- **Setup → Settings → Wiki** (`/settings/wiki`) — workspace creation,
|
|
52
|
+
internal/external mode, per-command model selectors, budgets,
|
|
53
|
+
archive / delete.
|
|
54
|
+
|
|
55
|
+
The **My Life → Wiki** sidebar entry is always visible, even before
|
|
56
|
+
you enable a workspace, so you do not need to remember the URL.
|
|
57
|
+
|
|
58
|
+
## Steps
|
|
59
|
+
|
|
60
|
+
1. Click **My Life → Wiki** in the sidebar (`/wiki`). The page shows
|
|
61
|
+
a "Wiki not enabled" card with an **Enable Wiki** button —
|
|
62
|
+
clicking it jumps you to `/settings/wiki`.
|
|
63
|
+
2. On the settings page, click **Enable Internal Workspace**. The
|
|
64
|
+
daemon creates `$PA_DATA_DIR/wiki/` and seeds `90_meta/taxonomy.md`
|
|
65
|
+
plus the schema templates. (To point at an existing Obsidian
|
|
66
|
+
vault instead, follow
|
|
67
|
+
[Use An Existing Obsidian Vault](use-an-existing-obsidian-vault.md).)
|
|
68
|
+
3. The sidebar's **My Life → Wiki** entry now lands on a workspace
|
|
69
|
+
summary instead of the disabled CTA. Open it to confirm the root
|
|
70
|
+
path, counts, and quick links to **Timeline & health** and
|
|
71
|
+
**Configuration**.
|
|
72
|
+
4. From a paired DM, send `!ingest https://example.com/article`. You
|
|
73
|
+
will get an acknowledgement reply naming the workspace and the
|
|
74
|
+
number of URLs queued.
|
|
75
|
+
5. Wait for the per-URL completion DMs (parallel mode) or the single
|
|
76
|
+
summary reply (serial mode).
|
|
77
|
+
6. Run `!compile` to compile raw captures into wiki articles. The
|
|
78
|
+
compile session synthesises `20_wiki/<slug>.md` files and updates
|
|
79
|
+
`20_wiki/_index.md`.
|
|
80
|
+
7. Ask a question: `!ask What did this source say about X?`. The
|
|
81
|
+
answer is written to `30_outputs/<YYYY-MM-DD>-<slug>.md` with
|
|
82
|
+
citations back to the source articles. Refresh **My Life → Wiki**
|
|
83
|
+
to see the updated activity log.
|
|
84
|
+
|
|
85
|
+
Use `!wiki` any time to see counts and workspace status. `!wiki help`
|
|
86
|
+
returns the command list.
|
|
87
|
+
|
|
88
|
+
## What to Try Next
|
|
89
|
+
|
|
90
|
+
- **Send multiple URLs at once**: `!ingest https://a.com, https://b.com`
|
|
91
|
+
fans out in parallel by default. Switch to serial mode on
|
|
92
|
+
`/settings/wiki` when you care about ordering and rate
|
|
93
|
+
predictability.
|
|
94
|
+
- **Point at an existing Obsidian vault** instead of the daemon-owned
|
|
95
|
+
root — see [Use An Existing Obsidian Vault](use-an-existing-obsidian-vault.md).
|
|
96
|
+
- **Tune the budget** for `wiki.compile` and `wiki.ingest_url` from
|
|
97
|
+
the per-command model selector on `/settings/wiki`. See
|
|
98
|
+
[Wiki Budgets and Cost](budget-and-cost-for-wiki.md) for the
|
|
99
|
+
approval gate.
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
---
|
|
2
|
+
schema_version: 1
|
|
3
|
+
slug: guides/explore-with-trace-and-connect
|
|
4
|
+
title: Explore Your Wiki with !trace and !connect
|
|
5
|
+
id: explore-with-trace-and-connect
|
|
6
|
+
aliases:
|
|
7
|
+
- "!trace"
|
|
8
|
+
- "!connect"
|
|
9
|
+
- wiki trace
|
|
10
|
+
- wiki connect
|
|
11
|
+
- bridging domains
|
|
12
|
+
category: guides
|
|
13
|
+
summary: |
|
|
14
|
+
How to use `!trace <topic>` to reconstruct the evolution of an
|
|
15
|
+
idea across your raw / wiki / outputs layers, and `!connect <a>
|
|
16
|
+
<b>` to find bridges between two domains.
|
|
17
|
+
section: explore-with-trace-and-connect
|
|
18
|
+
tags:
|
|
19
|
+
- guide
|
|
20
|
+
- wiki
|
|
21
|
+
- exploration
|
|
22
|
+
status: stable
|
|
23
|
+
ask_examples:
|
|
24
|
+
- How do I trace an idea across the wiki?
|
|
25
|
+
- What does !connect do?
|
|
26
|
+
- How do I find connections between two topics?
|
|
27
|
+
- Where does the !trace output land?
|
|
28
|
+
- Can I use multi-word topics with !connect?
|
|
29
|
+
locale: en-US
|
|
30
|
+
created: 2026-05-12
|
|
31
|
+
updated: 2026-05-12
|
|
32
|
+
related:
|
|
33
|
+
- features/wiki/overview
|
|
34
|
+
- features/wiki/commands
|
|
35
|
+
- guides/maintain-wiki-health
|
|
36
|
+
ui_anchors:
|
|
37
|
+
- /wiki/timeline
|
|
38
|
+
- /settings/wiki
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
# Explore Your Wiki with `!trace` and `!connect`
|
|
42
|
+
|
|
43
|
+
`!trace` and `!connect` are the two Phase 3 exploration commands.
|
|
44
|
+
Both produce a one-off output document in `30_outputs/` and never
|
|
45
|
+
touch your raw or wiki notes. Think of them as cited essays
|
|
46
|
+
written from what your wiki actually contains.
|
|
47
|
+
|
|
48
|
+
## `!trace <topic>` — Time-Based Exploration
|
|
49
|
+
|
|
50
|
+
Use `!trace` when you want to see **how thinking about a topic has
|
|
51
|
+
evolved**. The wiki agent searches every layer, orders the matches
|
|
52
|
+
chronologically (preferring dates asserted in the content over
|
|
53
|
+
file mtimes), and groups them into two-to-five phases of stable
|
|
54
|
+
framing.
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
!trace quantum computing
|
|
58
|
+
!trace formal methods in distributed systems
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
The topic is free-form prose. The skill canonicalises against
|
|
62
|
+
`90_meta/taxonomy.md` before deriving the output slug, so
|
|
63
|
+
`!trace quantum computing` and `!trace quantum-computing` produce
|
|
64
|
+
the same output filename if `quantum-computing` is your canonical
|
|
65
|
+
topic.
|
|
66
|
+
|
|
67
|
+
### Output
|
|
68
|
+
|
|
69
|
+
The output lands at:
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
30_outputs/<YYYY-MM-DD>-trace-<slug>.md
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Each report has:
|
|
76
|
+
|
|
77
|
+
- A one-paragraph synthesis of the arc.
|
|
78
|
+
- One section per phase with the dominant question, new evidence,
|
|
79
|
+
and what changed compared to the previous phase.
|
|
80
|
+
- A `## Gaps` list of questions your wiki cannot yet answer — a
|
|
81
|
+
pointer to where the next `!ingest` run should focus.
|
|
82
|
+
|
|
83
|
+
If your wiki has fewer than two sources on the topic, the report
|
|
84
|
+
says so directly. No padding, no speculation.
|
|
85
|
+
|
|
86
|
+
### When to Reach for `!trace`
|
|
87
|
+
|
|
88
|
+
- Before writing about a topic externally — get the lineage right.
|
|
89
|
+
- After a long ingest run on one area — see whether the phases
|
|
90
|
+
changed or just thickened.
|
|
91
|
+
- When a wiki note feels stale — `!trace` will surface the dated
|
|
92
|
+
evidence and the gap list will tell you what to refresh.
|
|
93
|
+
|
|
94
|
+
## `!connect <a> <b>` — Bridge Two Domains
|
|
95
|
+
|
|
96
|
+
Use `!connect` to find honest overlaps between two domains in
|
|
97
|
+
your wiki. The agent surfaces four kinds of bridges:
|
|
98
|
+
|
|
99
|
+
1. **Shared terminology** — terms that mean the same (or
|
|
100
|
+
recognisably different) things in each domain, disambiguated
|
|
101
|
+
against `90_meta/taxonomy.md`.
|
|
102
|
+
2. **Common references** — the same URL, author, or wiki note
|
|
103
|
+
linked from both sides.
|
|
104
|
+
3. **Structural analogies** — recurring patterns of reasoning or
|
|
105
|
+
tradeoffs, even when the surface vocabulary differs.
|
|
106
|
+
4. **Bridging concept candidates** — proposals for a new wiki
|
|
107
|
+
note that would naturally sit between the two areas.
|
|
108
|
+
|
|
109
|
+
### Argument Forms
|
|
110
|
+
|
|
111
|
+
`!connect` requires exactly two topics. Whitespace separates them
|
|
112
|
+
by default; a comma lets you use multi-word topics:
|
|
113
|
+
|
|
114
|
+
```
|
|
115
|
+
!connect quantum gravity
|
|
116
|
+
!connect quantum computing, classical computing
|
|
117
|
+
!connect category theory, distributed systems
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
The handler rejects a single topic, three-or-more topics, a
|
|
121
|
+
trailing comma, or empty input with a usage message — pick a
|
|
122
|
+
topic for each side.
|
|
123
|
+
|
|
124
|
+
### Output
|
|
125
|
+
|
|
126
|
+
The output lands at:
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
30_outputs/<YYYY-MM-DD>-connect-<slug-a>--<slug-b>.md
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
The double-hyphen (`--`) separates the two canonical slugs in the
|
|
133
|
+
filename. Each report cites bridges with at least one path from
|
|
134
|
+
each side — a one-sided match becomes a bridging candidate, not a
|
|
135
|
+
bridge.
|
|
136
|
+
|
|
137
|
+
### Honest "No Connection" Reports
|
|
138
|
+
|
|
139
|
+
If your wiki contains nothing in common between the two domains,
|
|
140
|
+
the report still writes — with `_(none)_` filling the empty
|
|
141
|
+
sections and a `## Summary` that says so plainly. A negative
|
|
142
|
+
finding is itself useful: it tells you where the wiki has gaps.
|
|
143
|
+
|
|
144
|
+
### `!connect` Does Not Create Wiki Notes
|
|
145
|
+
|
|
146
|
+
The "bridging concept candidates" section is a **proposal** for
|
|
147
|
+
`wiki.compile` (or you, manually) to pick up later. `!connect`
|
|
148
|
+
never writes to `20_wiki/` — the safety boundary is the same as
|
|
149
|
+
`!ask` and `!trace`: read everywhere, write only to
|
|
150
|
+
`30_outputs/`.
|
|
151
|
+
|
|
152
|
+
## Finding Past Reports
|
|
153
|
+
|
|
154
|
+
Every report is a regular wiki file under `30_outputs/`. You can:
|
|
155
|
+
|
|
156
|
+
- Open **My Life → Wiki → Timeline & health** (`/wiki/timeline`)
|
|
157
|
+
— the timeline shows every wiki write with a process-key
|
|
158
|
+
filter, so filtering by `wiki.trace` or `wiki.connect` lists
|
|
159
|
+
past reports in reverse-chronological order.
|
|
160
|
+
- Use `!ask` to fold a past trace or connect into a new answer.
|
|
161
|
+
- Browse the files on disk (the wiki vault root path is shown on
|
|
162
|
+
**My Life → Wiki** and on `/settings/wiki`).
|
|
163
|
+
|
|
164
|
+
## Cost Envelope
|
|
165
|
+
|
|
166
|
+
Both commands run at Sonnet medium tier with a default $1.00
|
|
167
|
+
spend cap per run, identical to `!ask`. The 7-day cost rollup on
|
|
168
|
+
**Settings → Wiki** breaks the spend out per command so you can
|
|
169
|
+
see where the budget went.
|