sanook-cli 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (235) hide show
  1. package/.env.example +19 -0
  2. package/CHANGELOG.md +144 -0
  3. package/README.md +153 -20
  4. package/README.th.md +136 -0
  5. package/dist/agentContext.js +4 -0
  6. package/dist/approval.js +6 -0
  7. package/dist/bin.js +394 -51
  8. package/dist/brain.js +92 -59
  9. package/dist/brand.js +47 -0
  10. package/dist/checkpoint.js +37 -0
  11. package/dist/commands.js +86 -6
  12. package/dist/compaction.js +76 -5
  13. package/dist/config.js +100 -12
  14. package/dist/cost.js +60 -3
  15. package/dist/doctor.js +92 -0
  16. package/dist/gateway/auth.js +2 -2
  17. package/dist/gateway/ledger.js +2 -2
  18. package/dist/gateway/scheduler.js +1 -0
  19. package/dist/gateway/serve.js +6 -4
  20. package/dist/gateway/server.js +10 -2
  21. package/dist/git.js +11 -2
  22. package/dist/hooks.js +43 -17
  23. package/dist/knowledge.js +48 -49
  24. package/dist/loop.js +182 -66
  25. package/dist/lsp/client.js +173 -0
  26. package/dist/lsp/framing.js +56 -0
  27. package/dist/lsp/index.js +138 -0
  28. package/dist/lsp/servers.js +82 -0
  29. package/dist/mcp-server.js +244 -0
  30. package/dist/mcp.js +184 -29
  31. package/dist/memory-store.js +559 -0
  32. package/dist/memory.js +143 -29
  33. package/dist/orchestrate.js +150 -0
  34. package/dist/providers/codex.js +2 -2
  35. package/dist/providers/keys.js +3 -2
  36. package/dist/providers/registry.js +133 -1
  37. package/dist/repomap.js +93 -0
  38. package/dist/search/chunk.js +158 -0
  39. package/dist/search/embed-store.js +187 -0
  40. package/dist/search/engine.js +203 -0
  41. package/dist/search/fuse.js +35 -0
  42. package/dist/search/index-core.js +187 -0
  43. package/dist/search/indexer.js +241 -0
  44. package/dist/search/store.js +77 -0
  45. package/dist/session.js +42 -8
  46. package/dist/skill-install.js +10 -10
  47. package/dist/skills.js +12 -9
  48. package/dist/summarize.js +31 -0
  49. package/dist/tools/bash.js +21 -2
  50. package/dist/tools/diagnostics.js +41 -0
  51. package/dist/tools/edit.js +29 -7
  52. package/dist/tools/index.js +8 -1
  53. package/dist/tools/list.js +7 -2
  54. package/dist/tools/permission.js +90 -9
  55. package/dist/tools/read.js +23 -4
  56. package/dist/tools/remember.js +1 -1
  57. package/dist/tools/sandbox.js +61 -0
  58. package/dist/tools/search.js +105 -4
  59. package/dist/tools/task.js +195 -29
  60. package/dist/tools/timeout.js +35 -0
  61. package/dist/tools/util.js +10 -0
  62. package/dist/tools/write.js +6 -4
  63. package/dist/trust.js +89 -0
  64. package/dist/ui/app.js +218 -27
  65. package/dist/ui/banner.js +4 -9
  66. package/dist/ui/history.js +30 -0
  67. package/dist/ui/mentions.js +44 -0
  68. package/dist/ui/setup.js +6 -5
  69. package/dist/ui/useEditor.js +83 -0
  70. package/dist/update.js +114 -0
  71. package/dist/worktree.js +173 -0
  72. package/package.json +11 -5
  73. package/scripts/postinstall.mjs +33 -0
  74. package/second-brain/.agents/_Index.md +30 -0
  75. package/second-brain/.agents/skills/_Index.md +30 -0
  76. package/second-brain/.agents/workflows/_Index.md +30 -0
  77. package/second-brain/AGENTS.md +4 -4
  78. package/second-brain/Acceptance/_Index.md +30 -0
  79. package/second-brain/Acceptance/golden-case-template.md +39 -0
  80. package/second-brain/Areas/_Index.md +30 -0
  81. package/second-brain/Bugs/System-OS/_Index.md +30 -0
  82. package/second-brain/Bugs/_Index.md +30 -0
  83. package/second-brain/CLAUDE.md +4 -1
  84. package/second-brain/Checklists/_Index.md +30 -0
  85. package/second-brain/Checklists/preflight-postflight-template.md +29 -0
  86. package/second-brain/Distillations/_Index.md +30 -0
  87. package/second-brain/Entities/_Index.md +30 -0
  88. package/second-brain/Entities/entity-template.md +33 -0
  89. package/second-brain/Evals/_Index.md +30 -0
  90. package/second-brain/Evals/correction-pairs.md +24 -0
  91. package/second-brain/Evals/failure-taxonomy.md +24 -0
  92. package/second-brain/Evals/golden-set.md +25 -0
  93. package/second-brain/Evals/quality-ledger.md +23 -0
  94. package/second-brain/Evals/self-eval-rubric.md +23 -0
  95. package/second-brain/GEMINI.md +4 -4
  96. package/second-brain/Goals/_Index.md +30 -0
  97. package/second-brain/Handoffs/_Index.md +30 -0
  98. package/second-brain/Home.md +7 -0
  99. package/second-brain/Intake/Raw Sources/_Index.md +30 -0
  100. package/second-brain/Intake/_Index.md +30 -0
  101. package/second-brain/Intake/_Quarantine/_Index.md +30 -0
  102. package/second-brain/Learning/_Index.md +30 -0
  103. package/second-brain/Playbooks/_Index.md +30 -0
  104. package/second-brain/Playbooks/playbook-template.md +23 -0
  105. package/second-brain/Projects/_Index.md +30 -0
  106. package/second-brain/Prompts/_Index.md +30 -0
  107. package/second-brain/README.md +2 -1
  108. package/second-brain/Research/_Index.md +30 -0
  109. package/second-brain/Retrospectives/_Index.md +30 -0
  110. package/second-brain/Reviews/_Index.md +30 -0
  111. package/second-brain/Runbooks/_Index.md +30 -0
  112. package/second-brain/Runbooks/eval-loop.md +24 -0
  113. package/second-brain/Sessions/_Index.md +30 -0
  114. package/second-brain/Shared/AI-Context-Index.md +20 -0
  115. package/second-brain/Shared/AI-Threads/_Index.md +30 -0
  116. package/second-brain/Shared/Archive/_Index.md +30 -0
  117. package/second-brain/Shared/Assets/_Index.md +30 -0
  118. package/second-brain/Shared/Context-Packs/_Index.md +30 -0
  119. package/second-brain/Shared/Context7-Docs/_Index.md +30 -0
  120. package/second-brain/Shared/Coordination/NOW.md +28 -0
  121. package/second-brain/Shared/Coordination/_Index.md +30 -0
  122. package/second-brain/Shared/Coordination/agent-registry.md +24 -0
  123. package/second-brain/Shared/Coordination/task-board/_Index.md +30 -0
  124. package/second-brain/Shared/Coordination/task-board/task-template.md +43 -0
  125. package/second-brain/Shared/Coordination/task-board.md +32 -0
  126. package/second-brain/Shared/Core-Facts/_Index.md +30 -0
  127. package/second-brain/Shared/Decision-Memory/_Index.md +30 -0
  128. package/second-brain/Shared/Glossary/_Index.md +30 -0
  129. package/second-brain/Shared/Memory-Inbox/_Index.md +30 -0
  130. package/second-brain/Shared/Operating-State/_Index.md +30 -0
  131. package/second-brain/Shared/Prompting/_Index.md +30 -0
  132. package/second-brain/Shared/Provenance/_Index.md +30 -0
  133. package/second-brain/Shared/Rules/_Index.md +30 -0
  134. package/second-brain/Shared/Rules/contextual-note-rule.md +30 -0
  135. package/second-brain/Shared/Rules/frontmatter-standard.md +10 -0
  136. package/second-brain/Shared/Rules/memory-write-protocol.md +28 -0
  137. package/second-brain/Shared/Rules/procedural-runbook-header.md +40 -0
  138. package/second-brain/Shared/Rules/review-and-staleness-policy.md +22 -0
  139. package/second-brain/Shared/Rules/rules-formatting.md +34 -0
  140. package/second-brain/Shared/Scripts/_Index.md +30 -0
  141. package/second-brain/Shared/Scripts-Archive/_Index.md +30 -0
  142. package/second-brain/Shared/Tech-Standards/_Index.md +30 -0
  143. package/second-brain/Shared/Tech-Standards/verification-standard.md +40 -0
  144. package/second-brain/Shared/User-Memory/_Index.md +30 -0
  145. package/second-brain/Shared/User-Persona/_Index.md +30 -0
  146. package/second-brain/Shared/User-Persona/owner-profile.md +25 -0
  147. package/second-brain/Shared/Working-Memory/_Index.md +30 -0
  148. package/second-brain/Shared/_Index.md +30 -0
  149. package/second-brain/Shared/mcp-servers/_Index.md +30 -0
  150. package/second-brain/Skills/_Index.md +30 -0
  151. package/second-brain/Templates/_Index.md +30 -0
  152. package/second-brain/Templates/bug.md +2 -0
  153. package/second-brain/Templates/handoff.md +2 -0
  154. package/second-brain/Templates/session.md +2 -0
  155. package/second-brain/Tools/_Index.md +30 -0
  156. package/second-brain/Traces/_Index.md +30 -0
  157. package/second-brain/Vault Structure Map.md +33 -1
  158. package/second-brain/copilot/_Index.md +30 -0
  159. package/skills/audit-license-compliance/SKILL.md +117 -0
  160. package/skills/author-codemod/SKILL.md +110 -0
  161. package/skills/build-audit-logging/SKILL.md +112 -0
  162. package/skills/build-cdc-streaming-pipeline/SKILL.md +123 -0
  163. package/skills/build-cli-tool/SKILL.md +108 -0
  164. package/skills/build-data-table/SKILL.md +141 -0
  165. package/skills/build-native-mobile-ui/SKILL.md +154 -0
  166. package/skills/build-offline-first-sync/SKILL.md +118 -0
  167. package/skills/build-realtime-channel/SKILL.md +122 -0
  168. package/skills/build-vector-search/SKILL.md +131 -0
  169. package/skills/compose-local-dev-stack/SKILL.md +149 -0
  170. package/skills/configure-bundler-build/SKILL.md +166 -0
  171. package/skills/configure-dns-tls/SKILL.md +142 -0
  172. package/skills/configure-reverse-proxy-lb/SKILL.md +129 -0
  173. package/skills/configure-security-headers-csp/SKILL.md +122 -0
  174. package/skills/contract-testing/SKILL.md +140 -0
  175. package/skills/datetime-timezone-correctness/SKILL.md +125 -0
  176. package/skills/debug-ci-pipeline-failure/SKILL.md +134 -0
  177. package/skills/debug-flaky-tests/SKILL.md +128 -0
  178. package/skills/defend-llm-prompt-injection/SKILL.md +110 -0
  179. package/skills/deliver-webhooks/SKILL.md +116 -0
  180. package/skills/design-api-pagination/SKILL.md +144 -0
  181. package/skills/design-authorization-model/SKILL.md +119 -0
  182. package/skills/design-backup-dr-recovery/SKILL.md +113 -0
  183. package/skills/design-event-sourcing-cqrs/SKILL.md +143 -0
  184. package/skills/design-multi-tenancy/SKILL.md +100 -0
  185. package/skills/design-protobuf-grpc-service/SKILL.md +146 -0
  186. package/skills/design-relational-schema/SKILL.md +129 -0
  187. package/skills/design-search-index-infra/SKILL.md +151 -0
  188. package/skills/design-state-machine/SKILL.md +108 -0
  189. package/skills/design-token-system/SKILL.md +109 -0
  190. package/skills/distributed-locks-leases/SKILL.md +120 -0
  191. package/skills/encrypt-sensitive-data/SKILL.md +148 -0
  192. package/skills/feature-flags-rollout/SKILL.md +130 -0
  193. package/skills/file-upload-object-storage/SKILL.md +107 -0
  194. package/skills/fuzz-dynamic-security-test/SKILL.md +111 -0
  195. package/skills/harden-llm-app-reliability/SKILL.md +126 -0
  196. package/skills/i18n-localization-setup/SKILL.md +113 -0
  197. package/skills/idempotency-keys/SKILL.md +107 -0
  198. package/skills/implement-push-notifications/SKILL.md +142 -0
  199. package/skills/ingest-webhook-secure/SKILL.md +120 -0
  200. package/skills/integrate-oauth-oidc/SKILL.md +126 -0
  201. package/skills/load-stress-test/SKILL.md +129 -0
  202. package/skills/map-privacy-data-gdpr/SKILL.md +146 -0
  203. package/skills/model-nosql-data/SKILL.md +118 -0
  204. package/skills/money-decimal-arithmetic/SKILL.md +123 -0
  205. package/skills/monitor-ml-drift/SKILL.md +109 -0
  206. package/skills/numeric-precision-units/SKILL.md +144 -0
  207. package/skills/optimize-llm-cost-latency/SKILL.md +103 -0
  208. package/skills/optimize-react-rerenders/SKILL.md +124 -0
  209. package/skills/orchestrate-agent-workflow/SKILL.md +100 -0
  210. package/skills/payments-billing-integration/SKILL.md +114 -0
  211. package/skills/pin-toolchain-versions/SKILL.md +116 -0
  212. package/skills/plan-strangler-migration/SKILL.md +95 -0
  213. package/skills/property-based-testing/SKILL.md +108 -0
  214. package/skills/publish-package-registry/SKILL.md +130 -0
  215. package/skills/recover-git-state/SKILL.md +119 -0
  216. package/skills/remediate-web-vulnerabilities/SKILL.md +125 -0
  217. package/skills/resilience-timeouts-retries/SKILL.md +104 -0
  218. package/skills/resolve-merge-rebase-conflict/SKILL.md +97 -0
  219. package/skills/rewrite-git-history/SKILL.md +109 -0
  220. package/skills/scaffold-cross-platform-app/SKILL.md +137 -0
  221. package/skills/schema-evolution-compatibility/SKILL.md +121 -0
  222. package/skills/send-transactional-email/SKILL.md +126 -0
  223. package/skills/serve-deploy-ml-model/SKILL.md +107 -0
  224. package/skills/setup-cdn-edge-waf/SKILL.md +107 -0
  225. package/skills/setup-devcontainer-env/SKILL.md +131 -0
  226. package/skills/setup-lint-format-precommit/SKILL.md +140 -0
  227. package/skills/setup-monorepo-tooling/SKILL.md +125 -0
  228. package/skills/ship-mobile-app-store-release/SKILL.md +137 -0
  229. package/skills/structured-output-llm/SKILL.md +86 -0
  230. package/skills/supply-chain-sbom-provenance/SKILL.md +120 -0
  231. package/skills/test-data-factories/SKILL.md +158 -0
  232. package/skills/threat-model-stride/SKILL.md +123 -0
  233. package/skills/train-evaluate-ml-model/SKILL.md +109 -0
  234. package/skills/unicode-text-correctness/SKILL.md +109 -0
  235. package/skills/visual-regression-testing/SKILL.md +120 -0
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, core-facts]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Core-Facts
10
+
11
+ > ground truth ที่เจ้าของเขียนเอง (read-only, invariant)
12
+
13
+ ## ใส่ที่นี่
14
+ protected-facts ที่ AI ห้ามแก้/supersede
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ decision ที่ AI ตัด (→Decision-Memory)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Core-Facts/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Core-Facts/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, decision-memory]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Decision-Memory
10
+
11
+ > การตัดสินใจที่ AI บันทึก (latest-wins + supersedes)
12
+
13
+ ## ใส่ที่นี่
14
+ decision locked + เหตุผล
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ ground truth คน (→Core-Facts)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Decision-Memory/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Decision-Memory/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, glossary]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Glossary
10
+
11
+ > vocabulary กลาง (routes ไป category pages)
12
+
13
+ ## ใส่ที่นี่
14
+ term + นิยาม กลาง
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ entity page (→Entities)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Glossary/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Glossary/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, memory-inbox]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Memory-Inbox
10
+
11
+ > candidate durable memory ที่ยังไม่ชัด/ขัดกัน
12
+
13
+ ## ใส่ที่นี่
14
+ observation รอ promote (เคลียร์ทุก weekly)
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ durable ที่ชัดแล้ว (→ปลายทาง)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Memory-Inbox/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Memory-Inbox/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, operating-state]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Operating-State
10
+
11
+ > live status/metrics ตอนนี้
12
+
13
+ ## ใส่ที่นี่
14
+ current-state + health/queue + workbench
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ objective (→Goals)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Operating-State/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Operating-State/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, prompting]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Prompting
10
+
11
+ > prompt-engineering pattern (style/structure)
12
+
13
+ ## ใส่ที่นี่
14
+ pattern การเขียน prompt ที่ reuse
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ prompt asset ต่อ task (→Prompts)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Prompting/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Prompting/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, provenance]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Provenance
10
+
11
+ > lineage ledger — ทุก claim ชี้ source:: ได้
12
+
13
+ ## ใส่ที่นี่
14
+ บรรทัด ingest ต่อแหล่ง (ingest-log)
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ โน้ต derived (ใส่ source:: แทน)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Provenance/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Provenance/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, rules]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Rules
10
+
11
+ > กฎ operating always-on
12
+
13
+ ## ใส่ที่นี่
14
+ memory-write-protocol/frontmatter/context-assembly/formatting/staleness
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ how-to ทำงาน (→Runbooks)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Rules/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Rules/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [rule, context, notes]
3
+ note_type: rule
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/Rules/_Index]]"
7
+ ai_surface: hot
8
+ ---
9
+
10
+ # Contextual Note Rule
11
+
12
+ > Notes must explain why they exist, not just what they contain.
13
+
14
+ ## Required Context
15
+
16
+ - Why this note was created.
17
+ - What decision, task, entity, or source it connects to.
18
+ - What would make the note stale or superseded.
19
+ - Where the next reader should go next.
20
+
21
+ ## Routing Check
22
+
23
+ Before creating a new note:
24
+
25
+ 1. Search for an existing canonical home.
26
+ 2. Check [[Vault Structure Map]] for the right folder.
27
+ 3. If uncertain, park in [[Shared/Memory-Inbox/memory-inbox]] with a short reason.
28
+ 4. Promote only after the context is clear.
29
+
30
+ up:: [[Shared/Rules/_Index]]
@@ -13,6 +13,16 @@ parent: "[[Shared/Rules/_Index]]"
13
13
  ## Core fields (ทุกโน้ต)
14
14
  `tags` · `note_type` · `created` · `updated` · `parent` + ท้ายไฟล์ `up:: [[parent/_Index]]`
15
15
 
16
+ ## Note Type Taxonomy (allowed values — ห้ามมั่ว type ใหม่เอง)
17
+ - **Project:** `project-overview` `context` `current-state` `session` `index` `reference`
18
+ - **Memory:** `user-preferences` `decision-log` `operating-state` `response-examples` `working-patterns` `success-signals`
19
+ - **Session/Knowledge:** `session-log` `retrospective` `learning-note` `distillation` `research-note` `moc`
20
+ - **Durable:** `durable-index` `protocol` `registry` `standard-reference`
21
+ - **System:** `template` `rule` `glossary` `runbook` `intake` `bug-report` `handoff` `weekly-review`
22
+ - **Dashboard:** `homepage` `projects-dashboard`
23
+
24
+ > ไม่มี type ที่ตรง → ใช้ `reference` (อย่าคิด type ใหม่)
25
+
16
26
  ## Bi-temporal validity (fact notes: Core-Facts / Decision-Memory / Entities)
17
27
 
18
28
  | field | ความหมาย |
@@ -0,0 +1,28 @@
1
+ ---
2
+ tags: [rule, memory, protocol]
3
+ note_type: rule
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/Rules/_Index]]"
7
+ ---
8
+
9
+ # Memory-Write Protocol (ADD / UPDATE / DELETE / NOOP)
10
+
11
+ > ทุกครั้งที่จะเขียน durable memory — เลือก operation ชัด (Mem0-style) แทนการ append มั่ว
12
+ > หลักการแม่: **Merge, Don't Append**
13
+
14
+ ## ก่อนเขียน
15
+ 1. **diff กับ [[Shared/Core-Facts/protected-facts]]** (invariant) → ขัด = **หยุด + flag เจ้าของ** (ห้ามทับเงียบ)
16
+ 2. search ปลายทางหา entry หัวข้อเดียวกัน
17
+
18
+ ## เลือก operation
19
+ | op | เมื่อ | ทำ |
20
+ |---|---|---|
21
+ | **ADD** | ของใหม่จริง (ไม่เจอเดิม) | เพิ่ม entry |
22
+ | **UPDATE** | เจอ entry เดิม | แก้ + bump `updated:` (ห้ามเพิ่มซ้ำ) |
23
+ | **DELETE** | fact เลิกจริง/ถูกแทน | bi-temporal supersede (ดู [[Shared/Rules/frontmatter-standard]]) ไม่ลบทิ้ง |
24
+ | **NOOP** | รู้อยู่แล้ว | ไม่ต้องเขียน |
25
+
26
+ > ขัดกัน (ไม่ใช่แค่ซ้ำ) → THESIS/ANTITHESIS/SYNTHESIS → บันทึก decision-log + `supersedes::`
27
+
28
+ up:: [[Shared/Rules/_Index]]
@@ -0,0 +1,40 @@
1
+ ---
2
+ tags: [rule, runbook, procedure]
3
+ note_type: rule
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/Rules/_Index]]"
7
+ ---
8
+
9
+ # Procedural Runbook Header
10
+
11
+ > Minimum header for any reusable procedure in `Runbooks/`.
12
+
13
+ ```yaml
14
+ ---
15
+ tags: [runbook]
16
+ note_type: runbook
17
+ created: YYYY-MM-DD
18
+ updated: YYYY-MM-DD
19
+ parent: "[[Runbooks/_Index]]"
20
+ status: active
21
+ success_rate: unknown
22
+ runs: 0
23
+ ---
24
+ ```
25
+
26
+ ## Required Sections
27
+
28
+ 1. Purpose
29
+ 2. Preconditions
30
+ 3. Steps
31
+ 4. Verification
32
+ 5. Rollback / Recovery
33
+ 6. Known Failure Modes
34
+ 7. Change Log
35
+
36
+ ## Promotion Rule
37
+
38
+ If a runbook becomes executable and has a reliable verification command, promote the executable unit to `Skills/` and leave the explanatory prose here.
39
+
40
+ up:: [[Shared/Rules/_Index]]
@@ -0,0 +1,22 @@
1
+ ---
2
+ tags: [rule, review, staleness]
3
+ note_type: rule
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/Rules/_Index]]"
7
+ ---
8
+
9
+ # Review & Staleness Policy
10
+
11
+ > เมื่อไหร่ทบทวน + เมื่อไหร่โน้ต "หมดอายุ" → ปิด decay loop (ดู [[Runbooks/sleep-time-consolidation]])
12
+
13
+ ## Cadence
14
+ - **Daily:** session log เฉพาะวันมีงาน
15
+ - **Weekly:** เคลียร์ Memory-Inbox · promote durable · lint (orphan/dead-link/frontmatter)
16
+ - **Monthly:** vault health audit + เก็บกวาด stale
17
+
18
+ ## Staleness
19
+ - โน้ตควรมี `review_date` / `stale_after` (โน้ตที่เปลี่ยนตามเวลา)
20
+ - เลย `stale_after` + ไม่ถูกแตะนาน + low-action → **flag → ถามก่อน → ย้าย [[Shared/Archive]]** (ไม่ลบ · Core-Facts ยกเว้น)
21
+
22
+ up:: [[Shared/Rules/_Index]]
@@ -0,0 +1,34 @@
1
+ ---
2
+ tags: [rule, formatting, output]
3
+ note_type: rule
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/Rules/_Index]]"
7
+ ai_surface: hot
8
+ ---
9
+
10
+ # Rules Formatting
11
+
12
+ > Output shape rules for notes and replies. Use this before creating durable notes or changing owner-facing docs.
13
+
14
+ ## Durable Notes
15
+
16
+ - Use clear headings; avoid one giant paragraph.
17
+ - Keep one canonical topic per note.
18
+ - Put routing metadata in frontmatter, then a short purpose statement.
19
+ - End every durable note with `up:: [[...]]`.
20
+
21
+ ## Owner-Facing Replies
22
+
23
+ - Lead with the answer or status.
24
+ - Keep summaries short unless the owner asks for detail.
25
+ - Use Thai + tech English terms naturally.
26
+ - Mention verification commands only when useful.
27
+
28
+ ## Avoid
29
+
30
+ - Empty checklist theater.
31
+ - Unverified claims about files, paths, dates, or commands.
32
+ - Duplicate notes when an existing canonical note can be updated.
33
+
34
+ up:: [[Shared/Rules/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, scripts]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Scripts
10
+
11
+ > automation maintenance (lint/graph audit/metrics)
12
+
13
+ ## ใส่ที่นี่
14
+ สคริปต์ maintenance ที่รันจริง
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ one-off ที่ retired (→Scripts-Archive)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Scripts/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Scripts/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, scripts-archive]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Scripts-Archive
10
+
11
+ > สคริปต์ one-off ที่ retired
12
+
13
+ ## ใส่ที่นี่
14
+ script เก่าเก็บเป็นประวัติ
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ script ที่ยังใช้ (→Scripts)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Scripts-Archive/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Scripts-Archive/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, tech-standards]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # Tech-Standards
10
+
11
+ > มาตรฐานเทคนิคกลาง
12
+
13
+ ## ใส่ที่นี่
14
+ MCP/stack/DoD/verification rulebook
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ กฎ memory/format (→Rules)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/Tech-Standards/_Index]]"` และท้ายไฟล์ `up:: [[Shared/Tech-Standards/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,40 @@
1
+ ---
2
+ tags: [standard, verification, dod]
3
+ note_type: standard-reference
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/Tech-Standards/_Index]]"
7
+ ai_surface: hot
8
+ ---
9
+
10
+ # Verification Standard
11
+
12
+ > Definition of done for technical changes made with this vault.
13
+
14
+ ## Default Verification Ladder
15
+
16
+ 1. Read the relevant source before editing.
17
+ 2. Run the narrowest meaningful check first.
18
+ 3. Run the broader suite when touching shared behavior.
19
+ 4. Build/package smoke when the change affects release output.
20
+ 5. Record residual risk if a check cannot be run.
21
+
22
+ ## Evidence Format
23
+
24
+ Use this shape in session logs and handoffs:
25
+
26
+ ```text
27
+ Verification:
28
+ - npm run typecheck: PASS
29
+ - npm test: PASS
30
+ - npm run build: PASS
31
+ - Smoke: <command/result>
32
+ ```
33
+
34
+ ## Never Claim Done If
35
+
36
+ - Tests were skipped without saying why.
37
+ - The changed behavior was not exercised.
38
+ - A generated artifact was not opened/rendered when visual layout matters.
39
+
40
+ up:: [[Shared/Tech-Standards/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, user-memory]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # User-Memory
10
+
11
+ > สิ่งที่ AI เรียนรู้เกี่ยวกับเจ้าของ (mutable)
12
+
13
+ ## ใส่ที่นี่
14
+ preference/response-example/signal
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ identity static (→User-Persona)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/User-Memory/_Index]]"` และท้ายไฟล์ `up:: [[Shared/User-Memory/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,30 @@
1
+ ---
2
+ tags: [index, moc, user-persona]
3
+ note_type: moc
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/_Index]]"
7
+ ---
8
+
9
+ # User-Persona
10
+
11
+ > identity profile ที่เปลี่ยนน้อยมาก (human-owned)
12
+
13
+ ## ใส่ที่นี่
14
+ บทบาท/ค่านิยม/ภาษา/timezone (read-only)
15
+
16
+ ## ไม่ใส่ที่นี่
17
+ สิ่งที่ AI เรียนรู้ (→User-Memory)
18
+
19
+ ## AI Routing Contract
20
+
21
+ - ก่อนเขียน: เช็กว่าเนื้อหาตรง "ใส่ที่นี่" และไม่เข้า "ไม่ใส่ที่นี่"; ถ้าก้ำกึ่งอ่าน [[Vault Structure Map]] ก่อน
22
+ - ก่อนสร้างไฟล์ใหม่: ค้นหาโน้ตเดิมในโฟลเดอร์นี้และโฟลเดอร์ใกล้เคียงก่อน เพื่อ merge/update แทน append ซ้ำ
23
+ - เมื่อสร้างโน้ตในโฟลเดอร์นี้: ตั้ง `parent: "[[Shared/User-Persona/_Index]]"` และท้ายไฟล์ `up:: [[Shared/User-Persona/_Index]]`
24
+ - หลังเขียน: เชื่อม link ไป source/project/session/decision ที่เกี่ยวข้อง และอัปเดต hub/index ถ้าโน้ตนี้ควรถูกค้นเจอในอนาคต
25
+
26
+ > รายละเอียดทุกโฟลเดอร์ + decision rules → [[Vault Structure Map]]
27
+
28
+ _(ยังว่าง — โน้ตในโฟลเดอร์นี้จะถูกลิงก์ที่นี่)_
29
+
30
+ up:: [[Shared/_Index]]
@@ -0,0 +1,25 @@
1
+ ---
2
+ tags: [persona, owner, profile]
3
+ note_type: reference
4
+ created: {{DATE}}
5
+ updated: {{DATE}}
6
+ parent: "[[Shared/User-Persona/_Index]]"
7
+ ai_surface: warm
8
+ ---
9
+
10
+ # Owner Profile
11
+
12
+ > Static profile for identity-level context. Keep mutable preferences in [[Shared/User-Memory/user-preferences]] instead.
13
+
14
+ ## Identity
15
+
16
+ - Name: {{OWNER_NAME}}
17
+ - Address as: {{OWNER_ADDRESS}}
18
+ - Preferred language: {{LANGUAGE}}
19
+ - Preferred tone: {{TONE}}
20
+
21
+ ## Durable Context
22
+
23
+ _(Owner-controlled facts go here. Agents should not infer sensitive identity details.)_
24
+
25
+ up:: [[Shared/User-Persona/_Index]]