From 8d883000e5812c40cd720a553eba445bb27881cd Mon Sep 17 00:00:00 2001 From: William Valentin Date: Wed, 20 May 2026 17:36:42 -0700 Subject: [PATCH] docs(obsidian): sync shared vault updates --- .../will-shared-zap/.obsidian/appearance.json | 5 +- .../.obsidian/community-plugins.json | 7 +- .../.obsidian/daily-notes.json | 5 + .../will-shared-zap/.obsidian/templates.json | 3 + .../will/will-shared-zap/2026-04-16.md | 0 .../will-shared-zap/Archive/Archive Home.md | 5 + .../will/will-shared-zap/Areas/Areas Home.md | 13 + .../will/will-shared-zap/Areas/Finance.md | 3 + .../Areas/Health and Medical Leave.md | 3 + .../will/will-shared-zap/Areas/Health.md | 3 + .../will/will-shared-zap/Areas/Home.md | 3 + .../will/will-shared-zap/Areas/Learning.md | 3 + .../will/will-shared-zap/Areas/Legal.md | 3 + .../will/will-shared-zap/Areas/Systems.md | 3 + .../2026-05-18 - Hermes AI Brief.md | 31 ++ .../2026-05-19 - Hermes AI Brief.md | 22 ++ .../2026-05-20 - Hermes AI Brief.md | 23 ++ .../Atlas/Gateway Approval Runbook.md | 5 + .../Areas/FMLA Monday Appointment Playbook.md | 136 +++++++ .../Areas/Health and Medical Leave.md | 77 ++++ ...gal Order - Arrearage 2026-05-14 Triage.md | 195 ++++++++++ .../Areas/Legal Order Triage Playbook.md | 116 ++++++ .../Atlas/Personal Context/Areas/Legal.md | 54 +++ .../Areas/Medical Appointment Tracker.md | 169 +++++++++ ...y Legal Help Playbook - Arrearage Order.md | 152 ++++++++ .../Areas/Tax Catch-up Playbook.md | 160 +++++++++ .../People/Family in France.md | 32 ++ .../Atlas/Personal Context/People/Liam.md | 15 + .../Atlas/Personal Context/People/Mila.md | 15 + .../Atlas/Personal Context/People/Roxanne.md | 20 ++ .../Hermes Atlas Personal Assistant.md | 41 +++ .../Atlas/Personal Context/README.md | 27 ++ .../Atlas/Personal Context/Will.md | 76 ++++ .../2026-05-19 Obsidian Cleanup Audit.md | 171 +++++++++ .../2026-05-19 Obsidian Cleanup Completed.md | 76 ++++ .../2026-05-19 Obsidian Cleanup Completion.md | 52 +++ .../Safer Autonomy and Permission Tiers.md | 3 + .../will-shared-zap/Atlas/Skill Backlog.md | 3 + .../will-shared-zap/Atlas/Skill Inventory.md | 3 + .../will/will-shared-zap/Daily/2026-05-16.md | 9 +- .../will/will-shared-zap/Daily/2026-05-17.md | 41 +++ .../will/will-shared-zap/Daily/2026-05-18.md | 46 +++ .../will-shared-zap/Daily/Daily Notes Home.md | 7 + .../will/will-shared-zap/Daily/Reviews.md | 3 + .../Daily/Reviews/2026-05-15 Daily Review.md | 34 ++ .../Daily/Reviews/2026-05-17 Daily Review.md | 34 ++ .../Daily/Reviews/2026-05-18 Daily Review.md | 34 ++ .../Daily/Reviews/2026-05-20 Daily Review.md | 34 ++ .../Decisions/Decisions Home.md | 15 + .../Decisions/Runbook Suggestions.md | 21 ++ .../Diary/Atlas Reflections.md | 3 + .../will/will-shared-zap/Diary/Entries.md | 5 + .../will-shared-zap/Diary/Weekly Reviews.md | 3 + .../will-shared-zap/Inbox/Chat Summaries.md | 3 + ...4 - Atlas Event-Driven Automation Smoke.md | 23 ++ .../will/will-shared-zap/Inbox/Inbox Home.md | 9 + .../will/will-shared-zap/Inbox/Inbox.md | 8 + .../will/will-shared-zap/Inbox/Triage.md | 3 + .../Inbox/Triage/2026-05-15.md | 28 ++ .../Inbox/Triage/2026-05-16.md | 28 ++ .../Inbox/Triage/2026-05-17.md | 28 ++ .../Inbox/Triage/2026-05-18.md | 28 ++ .../Inbox/Triage/2026-05-19.md | 28 ++ .../Inbox/Triage/2026-05-20.md | 30 ++ .../will-shared-zap/Inbox/Weekly Review.md | 27 ++ .../Architecture - Automation Flow.canvas | 28 +- .../Architecture - Automation Flow.md | 2 +- .../Architecture - Master.canvas | 64 ++-- .../Architecture - Overview.canvas | 34 +- .../Infrastructure/Architecture - Overview.md | 2 +- .../Architecture - Service Topology.canvas | 38 +- .../Architecture - Service Topology.md | 2 +- .../Infrastructure/Architecture.md | 2 +- .../Automation/n8n Evening Digest.md | 5 + .../Automation/n8n Morning Brief.md | 5 + .../will-shared-zap/Meetings/Meetings Home.md | 23 ++ .../Notes/2026-05-01 Nightly Vault Sync.md | 19 + .../Notes/2026-05-03 Nightly Vault Sync.md | 20 ++ .../Notes/2026-05-04 Nightly Vault Sync.md | 19 + .../Notes/2026-05-08 Nightly Vault Sync.md | 27 ++ .../Notes/2026-05-10 Nightly Vault Sync.md | 27 ++ .../Notes/2026-05-11 Nightly Vault Sync.md | 26 ++ .../People/Family in France.md | 3 + .../will/will-shared-zap/People/Liam.md | 3 + .../will/will-shared-zap/People/Mila.md | 3 + .../will-shared-zap/People/People Home.md | 14 + .../will/will-shared-zap/People/Roxanne.md | 3 + .../Atlas Capability Upgrade Program.md | 183 ++++++++++ ...t-generation-system-implementation-plan.md | 117 ++++++ .../Status/2026-05-14-status-report.md | 76 ++++ .../Atlas Discord Telegram Workflow.md | 277 +++++++++++++++ .../Projects/Atlas Quality Eval Results.md | 55 +++ .../Projects/Atlas Quality Evaluations.md | 52 +++ ...tlas Shared Project Context Memory Spec.md | 170 +++++++++ .../Atlas/Gateway Approval Runbook.md | 90 +++++ .../Safer Autonomy and Permission Tiers.md | 166 +++++++++ .../Projects/Atlas/Skill Backlog.md | 64 ++++ .../Projects/Atlas/Skill Inventory.md | 39 ++ .../Hermes Atlas Personal Assistant.md | 5 + .../Projects/Project Context Index.md | 38 ++ .../will-shared-zap/Projects/Projects Home.md | 20 ++ .../Resources/Obsidian Automation Health.md | 12 + .../Resources/Obsidian Plugin Setup.md | 27 ++ .../Resources/Resources Home.md | 7 + .../Resources/Service Catalog.md | 297 ++++++++++++++++ .../Resources/Swarm Operating Manual.md | 78 ++++ .../Resources/Weekend Activity Ideas.md | 52 +++ .../Runbooks/Arch AUR Build OOM Mitigation.md | 152 ++++++++ .../Runbooks/Atlas Event-Driven Automation.md | 132 +++++++ .../Atlas Kanban Durable Project Workflow.md | 285 +++++++++++++++ .../Promote Session Output to Notes.md | 86 +++++ .../will-shared-zap/Runbooks/Runbooks Home.md | 14 + .../Templates/Atlas Artifacts/README.md | 64 ++++ .../Templates/Atlas Artifacts/decision-log.md | 69 ++++ .../Templates/Atlas Artifacts/diagram.md | 73 ++++ .../Atlas Artifacts/implementation-plan.md | 116 ++++++ .../Templates/Atlas Artifacts/postmortem.md | 75 ++++ .../Atlas Artifacts/reviewer-checklist.md | 60 ++++ .../Templates/Atlas Artifacts/runbook.md | 78 ++++ .../Atlas Artifacts/status-report.md | 69 ++++ .../Templates/Atlas Artifacts/test-report.md | 77 ++++ .../will-shared-zap/Templates/Context Pack.md | 84 +++++ .../will-shared-zap/Templates/Decision.md | 30 ++ .../Templates/Kanban Task Graph Templates.md | 332 ++++++++++++++++++ .../will/will-shared-zap/Templates/Meeting.md | 30 ++ .../will/will-shared-zap/Templates/Person.md | 24 ++ .../will/will-shared-zap/Templates/Project.md | 36 ++ .../will/will-shared-zap/Templates/Runbook.md | 34 ++ .../will/will-shared-zap/Untitled.canvas | 1 - .../will/will-shared-zap/Vault Conventions.md | 3 + .../will-shared-zap/Weekend Activity Ideas.md | 51 +-- 131 files changed, 6327 insertions(+), 107 deletions(-) create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/daily-notes.json create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/templates.json delete mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/2026-04-16.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Archive/Archive Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Areas/Areas Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Areas/Finance.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Areas/Health and Medical Leave.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Areas/Health.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Areas/Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Areas/Learning.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Areas/Legal.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Areas/Systems.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-18 - Hermes AI Brief.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-19 - Hermes AI Brief.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-20 - Hermes AI Brief.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Gateway Approval Runbook.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/FMLA Monday Appointment Playbook.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Health and Medical Leave.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal Order - Arrearage 2026-05-14 Triage.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal Order Triage Playbook.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Medical Appointment Tracker.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Monday Legal Help Playbook - Arrearage Order.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Tax Catch-up Playbook.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Family in France.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Liam.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Mila.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Roxanne.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Projects/Hermes Atlas Personal Assistant.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/README.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Will.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Audit.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Completed.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Completion.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Safer Autonomy and Permission Tiers.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Skill Backlog.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Skill Inventory.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-17.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-18.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Daily/Daily Notes Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-15 Daily Review.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-17 Daily Review.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-18 Daily Review.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-20 Daily Review.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Decisions/Decisions Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Decisions/Runbook Suggestions.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Diary/Atlas Reflections.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Diary/Entries.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Diary/Weekly Reviews.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Chat Summaries.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Chat Summaries/2026-05-14 - Atlas Event-Driven Automation Smoke.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Inbox Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Inbox.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-15.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-16.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-17.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-18.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-19.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-20.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Weekly Review.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Automation/n8n Evening Digest.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Automation/n8n Morning Brief.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Meetings/Meetings Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-01 Nightly Vault Sync.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-03 Nightly Vault Sync.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-04 Nightly Vault Sync.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-08 Nightly Vault Sync.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-10 Nightly Vault Sync.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-11 Nightly Vault Sync.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/People/Family in France.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/People/Liam.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/People/Mila.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/People/People Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/People/Roxanne.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program/Plans/2026-05-14-artifact-generation-system-implementation-plan.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program/Reports/Status/2026-05-14-status-report.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Discord Telegram Workflow.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Eval Results.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Evaluations.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Shared Project Context Memory Spec.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Gateway Approval Runbook.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Safer Autonomy and Permission Tiers.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Skill Backlog.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Skill Inventory.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Hermes Atlas Personal Assistant.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Project Context Index.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Projects/Projects Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Resources/Obsidian Automation Health.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Resources/Obsidian Plugin Setup.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Resources/Resources Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Resources/Service Catalog.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Resources/Swarm Operating Manual.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Resources/Weekend Activity Ideas.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Arch AUR Build OOM Mitigation.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Atlas Event-Driven Automation.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Atlas Kanban Durable Project Workflow.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Promote Session Output to Notes.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Runbooks Home.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/README.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/decision-log.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/diagram.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/implementation-plan.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/postmortem.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/reviewer-checklist.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/runbook.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/status-report.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/test-report.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Context Pack.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Decision.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Kanban Task Graph Templates.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Meeting.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Person.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Project.md create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Templates/Runbook.md delete mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Untitled.canvas create mode 100644 swarm-common/obsidian-vault/will/will-shared-zap/Vault Conventions.md diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/appearance.json b/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/appearance.json index 9e26dfe..542b458 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/appearance.json +++ b/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/appearance.json @@ -1 +1,4 @@ -{} \ No newline at end of file +{ + "cssTheme": "Rose Pine", + "interfaceFontFamily": "" +} \ No newline at end of file diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/community-plugins.json b/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/community-plugins.json index c941f96..7bc744c 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/community-plugins.json +++ b/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/community-plugins.json @@ -1,3 +1,8 @@ [ - "obsidian-local-rest-api" + "obsidian-local-rest-api", + "dataview", + "obsidian-tasks-plugin", + "notebook-navigator", + "advanced-canvas", + "table-editor-obsidian" ] \ No newline at end of file diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/daily-notes.json b/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/daily-notes.json new file mode 100644 index 0000000..ec6c22b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/daily-notes.json @@ -0,0 +1,5 @@ +{ + "format": "YYYY-MM-DD", + "folder": "Daily", + "template": "Templates/Daily Note" +} diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/templates.json b/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/templates.json new file mode 100644 index 0000000..7fce123 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/.obsidian/templates.json @@ -0,0 +1,3 @@ +{ + "folder": "Templates" +} diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/2026-04-16.md b/swarm-common/obsidian-vault/will/will-shared-zap/2026-04-16.md deleted file mode 100644 index e69de29..0000000 diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Archive/Archive Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Archive/Archive Home.md new file mode 100644 index 0000000..3a7c6ee --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Archive/Archive Home.md @@ -0,0 +1,5 @@ +# Archive + +Inactive notes go here when they are no longer current but may still be useful. + +Do not delete project history or decisions just because they are old; archive instead. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Areas Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Areas Home.md new file mode 100644 index 0000000..d9c88a4 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Areas Home.md @@ -0,0 +1,13 @@ +# Areas Home + +Areas are ongoing responsibilities without a defined end date. + +Examples: + +- [[Systems]] +- [[Health]] +- [[Finance]] +- [[Home]] +- [[Learning]] + +Use area notes to collect standards, recurring processes, and long-running responsibilities. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Finance.md b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Finance.md new file mode 100644 index 0000000..7246fb2 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Finance.md @@ -0,0 +1,3 @@ +# Finance + +Area index for finance-related notes. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Health and Medical Leave.md b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Health and Medical Leave.md new file mode 100644 index 0000000..1b8a40f --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Health and Medical Leave.md @@ -0,0 +1,3 @@ +# Health and Medical Leave + +Redirect/index note. Canonical personal-context note: [[Atlas/Personal Context/Areas/Health and Medical Leave]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Health.md b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Health.md new file mode 100644 index 0000000..ee85c51 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Health.md @@ -0,0 +1,3 @@ +# Health + +Area index. Sensitive details live under [[Atlas/Personal Context/Areas/Health and Medical Leave]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Home.md new file mode 100644 index 0000000..05f200d --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Home.md @@ -0,0 +1,3 @@ +# Home + +Area index for home/life logistics. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Learning.md b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Learning.md new file mode 100644 index 0000000..4a103b0 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Learning.md @@ -0,0 +1,3 @@ +# Learning + +Area index for learning resources and plans. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Legal.md b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Legal.md new file mode 100644 index 0000000..0e7757e --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Legal.md @@ -0,0 +1,3 @@ +# Legal + +Redirect/index note. Canonical personal-context note: [[Atlas/Personal Context/Areas/Legal]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Systems.md b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Systems.md new file mode 100644 index 0000000..daf7612 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Areas/Systems.md @@ -0,0 +1,3 @@ +# Systems + +Area index for systems and automation. See [[Infrastructure/Architecture]], [[Resources/Service Catalog]], and [[Ops Home]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-18 - Hermes AI Brief.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-18 - Hermes AI Brief.md new file mode 100644 index 0000000..495694f --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-18 - Hermes AI Brief.md @@ -0,0 +1,31 @@ +# Daily Hermes + AI Research Brief — May 18, 2026 + +## Important updates + +- **Hermes Agent v0.14.0 “Foundation Release” landed May 16.** GitHub release snippets report a large jump since v0.13.0: **808 commits, 633 merged PRs, 1,393 files changed**. This is worth a safe update audit for Will’s production Atlas gateway, but not an automatic update because local config/source changes may exist. Source: [GitHub releases](https://github.com/NousResearch/hermes-agent/releases) + +- **Hermes docs now emphasize “profile distributions” for sharing whole agents.** This is directly relevant to Will’s specialist roster: Atlas/default can stay stable while reusable researcher/writer/ops/engineer profile bundles are packaged and replicated. Source: [Hermes profile distributions docs](https://hermes-agent.nousresearch.com/docs/user-guide/profile-distributions) + +- **Hermes provider-extension docs are now explicit about auth, runtime resolution, CLI flows, adapters, tests, and docs.** Useful if Will wants clean support for custom/local providers like llama.cpp, GLM/Z.AI, Gemini ACP, LiteLLM routes, or CoreWeave-hosted endpoints. Source: [Adding Providers — Hermes Agent](https://hermes-agent.nousresearch.com/docs/developer-guide/adding-providers) + +- **Agent observability is becoming a practical infra pattern.** Red Hat’s OpenTelemetry writeup frames agentic systems as composed of routing agents, specialist agents, LLM inference, MCP servers, and external integrations — basically Will’s Atlas architecture. The takeaway: trace tool calls, model routing, retries, and MCP/server hops as first-class spans. Source: [Red Hat: Distributed tracing for agentic workflows](https://developers.redhat.com/articles/2026/04/06/distributed-tracing-agentic-workflows-opentelemetry) + +- **Inference-on-Kubernetes momentum is accelerating.** Red Hat is positioning `llm-d`/AI Inference for managed Kubernetes including CoreWeave/Azure, and Microsoft published a fresh AKS-oriented controllable inference platform pattern covering llama.cpp plus GPU vLLM/TensorRT-LLM workloads. This maps well to Will’s CoreWeave/k8s and local swarm interests. Sources: [Red Hat AI Inference / llm-d](https://www.redhat.com/de/blog/red-hat-ai-inference-brings-llm-d-any-managed-kubernetes-starting-coreweave-and-microsoft-azure), [Microsoft AI Runway on Kubernetes](https://techcommunity.microsoft.com/blog/azuredevcommunityblog/building-a-controllable-inference-platform-on-kubernetes-with-ai-runway/4520590) + +- **MCP security/governance keeps surfacing as the unsexy but important agent problem.** Recent posts frame direct agent-to-MCP-server connections as a supply-chain/security risk and call out over-permissioned tools. This matters for Atlas because gateway + local services + specialist profiles can easily accumulate too much ambient authority. Sources: [Box on agent/MCP supply-chain risk](https://blog.box.com/ai-agents-are-creating-new-supply-chain-crisis-we-have-narrow-window-get-it-right), [Kong on MCP tool governance](https://konghq.com/blog/engineering/mcp-tool-governance-security-meets-context-efficiency) + +## Actionable ideas for us + +- **[quick] Run a read-only Hermes update check later today:** compare local `main` vs `origin/main`, inspect dirty files, and only then decide whether to create a gated update board for v0.14.0. + +- **[experiment] Add lightweight OpenTelemetry-style tracing around Atlas workflows:** start with cron jobs, model/provider routing, tool calls, n8n hooks, and local swarm service calls; even JSONL spans would help debug latency and failures. + +- **[experiment] Prototype a “profile distribution” export for Will’s specialist roster:** default/Atlas stays production; export stopped/manual profiles like researcher, writer, ops, engineer, reviewer, glm-simple. + +- **[watch] Track MCP permission boundaries:** define which profiles may call which local services/tools, especially anything touching filesystem, Telegram/Discord delivery, n8n, credentials, or GPU inference endpoints. + +## Worth ignoring + +- Generic “best AI agents of 2026” listicles unless they include reproducible benchmarks, cost data, or architecture details. +- Hermes star-count hype without concrete release notes or operational changes. +- Consumer AI app announcements that do not expose APIs, local deployment options, MCP/tool interfaces, or infra lessons. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-19 - Hermes AI Brief.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-19 - Hermes AI Brief.md new file mode 100644 index 0000000..a8f8b55 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-19 - Hermes AI Brief.md @@ -0,0 +1,22 @@ +# Daily Hermes + AI Research Brief — 2026-05-19 + +## Important updates + +- **Hermes Agent v0.14.0 / v2026.5.16 is the main Hermes item to track.** GitHub release search shows a May 16 release with **808 commits, 633 merged PRs, and 1,393 files changed** since v0.13.0; snippets highlight PyPI install support, ~19s faster cold start, much faster Browser CDP calls, and new messaging work. This matters because Will’s default Atlas gateway is source-installed and gateway uptime/update safety is more important than chasing the release immediately. Source: [GitHub releases](https://github.com/NousResearch/hermes-agent/releases) / [release search result](https://github.com/NousResearch/hermes-agent/releases/tag/v2026.5.16). +- **Hermes v0.13.0 / v2026.5.7 shipped the “Tenacity” durable-work direction.** NewReleases summarizes it as Kanban becoming a durable multi-agent board with heartbeat, reclaim, zombie detection, and auto-block behavior. This aligns directly with Will’s specialist-profile/worker setup; it is worth treating Kanban as the safe path for long agent tasks instead of ad-hoc background spawns. Source: [NewReleases v2026.5.7](https://newreleases.io/project/github/NousResearch/hermes-agent/release/v2026.5.7). +- **Hermes docs continue to emphasize self-improving skills, persistent memory, profiles, messaging gateway, and provider-agnostic routing.** That is not a “new today” item, but it confirms Atlas’s current architecture choices: keep `default` as the production Telegram gateway, use specialist profiles for isolation, and save durable research outputs into Obsidian rather than memory. Source: [Hermes Agent docs](https://hermes-agent.nousresearch.com/docs/). +- **MCP scaling pattern worth adopting: expose many tools as code APIs inside execution environments, not as hundreds of direct LLM tools.** Anthropic’s engineering writeup says code execution with MCP can make agents more efficient by letting the model write code that calls MCP APIs, reducing tool-schema/token pressure. For Will, this suggests future Atlas/n8n/local-swarm integrations should prefer compact wrapper APIs and executable client libraries when tool count grows. Source: [Anthropic Engineering — Code execution with MCP](https://www.anthropic.com/engineering/code-execution-with-mcp). +- **Open-source infra maintainers are now explicitly dealing with AI-generated PR load.** MLSys has an invited talk, “Rethinking Open Source Contribution in the Age of AI Agents,” framed around vLLM and the surge of AI-generated pull requests. This matters for Will’s CoreWeave/k8s/LLM-infra work: review gates, narrow tests, provenance, and anti-slop contribution policies are now part of production LLM ops, not just repo hygiene. Source: [MLSys 2026 schedule](https://mlsys.org/virtual/2026/day/5/18) / [invited talk](https://mlsys.org/virtual/2026/invited-talk/10000). + +## Actionable ideas for us + +- **[quick]** Check local Hermes safely before updating: `hermes --version`, `git status --short --branch`, and `git rev-list --left-right --count main...origin/main`; do **not** run `hermes update` automatically if the tree is dirty. +- **[quick]** Review whether Atlas’s Browser/CDP and messaging paths benefit from v0.14.0, but route any upgrade through the safe update workflow because the gateway is production. +- **[experiment]** Prototype one “code API over tool flood” integration for local swarm services: a small Python client that wraps n8n, llama.cpp, Ollama embeddings, and Obsidian REST behind a few stable calls. +- **[watch]** Track Hermes issues/releases around v0.14.0 for Windows/PyPI/lazy dependency fallout and any gateway regressions before adopting it on `default`. + +## Worth ignoring + +- Generic “agent landscape 2026” listicles unless they include concrete implementation details, benchmarks, or repo links. +- Funding/market stories about AI agents with no deployable tooling, protocol, model, or infra takeaway. +- Consumer-only agent announcements unless they expose useful MCP/tooling/local-first patterns. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-20 - Hermes AI Brief.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-20 - Hermes AI Brief.md new file mode 100644 index 0000000..77ace1b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Daily Research/2026-05-20 - Hermes AI Brief.md @@ -0,0 +1,23 @@ +# Daily Hermes + AI Research Brief — 2026-05-20 + +## Important updates + +- **Hermes Agent v0.13 / “Tenacity” remains the key Hermes update to track.** GitHub release/search results list v2026.5.7 with Kanban as a durable multi-agent board, heartbeat/reclaim/zombie detection/auto-block behavior, and a large reliability-focused release since v0.12.0. This matters because Will’s Atlas setup already depends on default gateway stability plus specialist profiles/Kanban for durable work. Source: [NousResearch/hermes-agent releases](https://github.com/NousResearch/hermes-agent/releases). +- **Hermes docs continue to emphasize self-improving skills, persistent memory, profiles, gateway, plugins, MCP, cron, and Kanban.** For Will, the practical takeaway is to keep Atlas’ daily operations split between short memory pointers, Obsidian for durable context, and specialist-profile delegation rather than stuffing everything into one long session. Source: [Hermes Agent Documentation](https://hermes-agent.nousresearch.com/docs/). +- **OpenAI Codex CLI shipped another May update.** The Codex changelog shows “Codex CLI 0.130.0” on 2026-05-08 with performance improvements/bug fixes. This is relevant because Will’s Hermes workers/profiles use Codex auth in some paths; keep profile auth smoke tests in the loop before dispatching autonomous coding agents. Source: [OpenAI Codex changelog](https://developers.openai.com/codex/changelog). +- **1Password announced/covered just-in-time credential access for Codex via MCP.** The useful pattern is not the vendor hype; it is the architecture: coding agents should request narrowly scoped, auditable secrets at task time instead of having broad static env access. This maps directly to safer Hermes MCP/tool credentials and swarm service secrets. Source: [SiliconANGLE coverage](https://siliconangle.com/2026/05/20/1password-extends-openai-collaboration-codex-mcp-server-just-time-credential-access/). +- **MCP remains the practical integration layer to watch.** Recent MCP comparisons and Anthropic engineering material emphasize implementing tools once and exposing them across agent clients. For Will, this supports consolidating local services—Obsidian, n8n, Ollama/llama.cpp, Kokoro/Whisper—behind stable MCP/tool wrappers instead of one-off scripts. Sources: [ClickHouse MCP framework comparison](https://clickhouse.com/blog/how-to-build-ai-agents-mcp-12-frameworks), [Anthropic on MCP code execution](https://www.anthropic.com/engineering/code-execution-with-mcp). +- **AI observability is moving from infra-only metrics to LLM-specific monitoring.** Current LLMOps guidance stresses that healthy CPU/GPU dashboards do not prove agent quality; you need latency, error rates, tool-call failures, prompt/model routing traces, and evaluation signals. This is directly useful for Will’s CoreWeave/GPU/k8s-style work and local swarm reliability. Source: [Kong AI observability guide](https://konghq.com/blog/learning-center/guide-to-ai-observability). + +## Actionable ideas for us + +- **[quick]** Add a recurring manual check item for Hermes release notes: compare local `~/.hermes/hermes-agent` against `origin/main` and v2026.5.7+ release notes, but only use the safe isolated update flow. +- **[quick]** Smoke-test specialist profiles that may use Codex: `hermes -p chat -q 'Reply exactly: ok' --toolsets safe -Q` before Kanban dispatch. +- **[experiment]** Prototype an MCP-style “just-in-time secret” pattern locally: agent requests a named credential lease for one task; logs scope and expiration; never exposes raw secrets in final output. +- **[watch]** Track Hermes Kanban reliability and session-rollover/handoff changes; these are likely to matter more for Atlas autonomy than flashy model announcements. + +## Worth ignoring + +- Generic “AI agents in 2026” listicles with no implementation detail. +- Funding/partnership headlines unless they ship concrete APIs, MCP servers, model routing, or local-first tooling. +- Consumer chatbot feature news with no path to Hermes, Obsidian, n8n, local inference, or GPU ops. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Gateway Approval Runbook.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Gateway Approval Runbook.md new file mode 100644 index 0000000..9e1835f --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Gateway Approval Runbook.md @@ -0,0 +1,5 @@ +# Gateway Approval Runbook + +Redirect/index note for gateway approval procedures. + +Related: [[Runbooks/Atlas Event-Driven Automation]], [[Projects/Atlas Discord Telegram Workflow]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/FMLA Monday Appointment Playbook.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/FMLA Monday Appointment Playbook.md new file mode 100644 index 0000000..67973ca --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/FMLA Monday Appointment Playbook.md @@ -0,0 +1,136 @@ +--- +tags: [atlas, personal-context, health, fmla, playbook] +type: playbook +created: 2026-05-15 +sensitive: true +status: active +--- + +# FMLA Monday Appointment Playbook + +Purpose: make it easy to take action Monday without having to think from scratch. + +Current blocker: Will needs a doctor appointment for medical leave/FMLA support. PCP is booked until late this month. + +## Goal for Monday + +Get one of these outcomes: + +1. A sooner appointment with PCP, any care-team provider, telehealth, or same-clinic clinician. +2. Clear instructions from the clinic on how to get FMLA/medical-leave documentation started before the PCP appointment. +3. A backup appointment/path through behavioral health, urgent/same-day care, or another clinician who can document current functional impairment. + +## Minimum viable win + +If energy is low, do only this: + +- Send the portal message below. +- Set one follow-up reminder for the next business day. + +That counts as progress. + +## Before calling or messaging + +Gather these if easy. Do not let this block sending the message. + +- [ ] Clinic/PCP name +- [ ] Patient portal login +- [ ] Employer/benefits/FMLA form, if already available +- [ ] Any HR deadline or requested date range +- [ ] Current requested leave duration: 3 months +- [ ] Short description: depression/anxiety/sleep difficulty currently preventing work + +## Portal message / email draft + +Subject: FMLA paperwork / appointment request + +Hi Dr. [Name] / Care Team, + +I need help with FMLA paperwork related to ongoing mental health symptoms, including depression/anxiety and sleep difficulty. My employer is CoreWeave, and I need medical certification from my PCP. + +Could we schedule the soonest available appointment to review this and complete the forms? If possible, please let me know the best way to send the FMLA paperwork ahead of time. + +I’m looking for support with protected leave/intermittent leave as appropriate while I’m addressing these health issues. + +Thank you, +William Valentin + +### Shorter portal version + +Hi Dr. [Name] / Care Team — I need help with FMLA paperwork for ongoing depression/anxiety and sleep difficulty. Could we schedule the soonest available visit to review and complete the medical certification? Please let me know how to upload/send the forms ahead of time. Thank you. + +### Attach/upload if available + +- FMLA form from employer/leave administrator +- Any deadline/date requested +- Employer/job context: CoreWeave, Cloud Support Engineer +- Whether requesting continuous leave, intermittent leave, or both + +## Phone script + +Hi, my name is Will. I’m a patient of Dr. [PCP name]. I’m calling because I need the soonest possible appointment for medical leave/FMLA paperwork. My current medical/mental health condition is preventing me from working, and the next PCP appointment I saw is late this month. + +Could you check if there is anything sooner with: + +- my PCP, +- another provider on the same care team, +- telehealth, +- a cancellation slot, +- or an urgent/same-day appointment? + +The purpose is documentation for a 3-month medical leave request. + +If there is nothing available, could you please route a message to my PCP/care team asking what I should do next to get documentation started? + +## If they say no appointments are available + +Ask: + +- Can I be added to the cancellation list? +- Can another provider in the practice complete or start FMLA paperwork? +- Can a nurse or medical assistant send my PCP a message? +- Is telehealth available? +- Is same-day/urgent care appropriate for this kind of documentation? +- Do you have behavioral health or psychiatry appointments available sooner? +- What should I do if my employer needs documentation before the PCP appointment? + +## If they ask what symptoms / why leave + +Keep it simple and functional: + +I’m dealing with depression, anxiety, and significant sleep difficulty. It is currently preventing me from being able to perform my Cloud Support Engineer job safely/effectively. I’m requesting medical leave so I can stabilize and get treatment. + +## If they ask what documentation is needed + +Say: + +I’m trying to get medical documentation supporting a 3-month leave/FMLA request. I can provide any forms from my employer/benefits provider once I have them, but I need guidance on what appointment or clinician can start the process. + +## Backup paths + +If PCP path is blocked: + +- [ ] Same-clinic alternate provider +- [ ] Telehealth visit +- [ ] Behavioral health / psychiatry appointment +- [ ] Therapist/mental-health clinician documentation, if applicable +- [ ] Urgent care / same-day clinic if symptoms are worsening or the timeline is urgent +- [ ] HR/benefits request for provisional deadline extension while waiting for PCP appointment + +## Follow-up tracker + +| Date | Action | Result | Next step | +| --- | --- | --- | --- | +| Monday | Send portal message / call clinic | | | +| Tuesday | Follow up if no response | | | + +## Reminder to self + +The goal is not to explain everything perfectly. The goal is to get into the medical system’s queue and ask for the correct path. + +One message or one call is enough to move this forward. + +## Related notes + +- [[Health and Medical Leave]] +- [[Will]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Health and Medical Leave.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Health and Medical Leave.md new file mode 100644 index 0000000..6cdff75 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Health and Medical Leave.md @@ -0,0 +1,77 @@ +--- +tags: [atlas, personal-context, health, fmla] +type: area +created: 2026-05-15 +sensitive: true +--- + +# Health and Medical Leave + +## Current context + +Will has shared that: + +- He has difficulties sleeping. +- He takes medicine every day for depression and anxiety. +- He currently only has PCP support for medical/mental-health care. +- He has a Zoom call with a practitioner to get medication refilled. +- He needs to find/book a psychiatrist/shrink. +- He needs to book a hearing check appointment. +- He needs to book an eye appointment because he may need new glasses/lenses. +- His current medical/mental condition prevents him from being able to do his job as a Cloud Support Engineer. +- He is trying to set up 3 months of leave/FMLA for medical reasons. + +## Assistant support boundaries + +Atlas can help with: + +- Organizing tasks and timelines +- Drafting messages to HR, managers, doctors, or benefits providers when Will asks +- Tracking forms, appointments, and follow-ups +- Breaking overwhelming admin work into small steps +- Creating reminders only after explicit approval + +Atlas should not: + +- Pretend to be a clinician +- Give medical diagnosis or treatment advice +- Send messages or handle medical/legal documents externally without explicit consent +- Moralize, nag, or turn recovery into a productivity grind + +## Trackers + +- [[Medical Appointment Tracker]] — PCP/FMLA, medication refill, psychiatrist, hearing, and eye appointments +- [[FMLA Monday Appointment Playbook]] — Monday PCP/FMLA appointment outreach + +## FMLA / leave tracker + +Use this section for future updates. + +### Open questions + +- [ ] Which employer/benefits portal or HR process is involved? +- [ ] What forms are needed? +- [ ] What doctor/clinician documentation is needed? +- [ ] What deadlines exist? +- [ ] Who needs to be notified and when? + +### Work contacts + +- Manager: Alex Tierney + +### Current blocker + +- Need a doctor appointment for medical leave/FMLA support. +- PCP is booked until late this month. + +### Possible next steps + +- Call PCP clinic and ask for cancellations/waitlist, same-team provider, telehealth, or urgent appointment for leave paperwork. +- Ask whether another clinician in the same practice can document functional impairment and complete FMLA forms. +- Use [[FMLA Monday Appointment Playbook]] to tackle appointment outreach on Monday. +- If symptoms are urgent or worsening, consider urgent care, crisis support, or a behavioral health appointment rather than waiting for the PCP. + +### Timeline + +- 2026-05-15: Will shared that he is trying to set up 3 months of leave/FMLA for medical reasons. +- 2026-05-15: Current blocker is getting a doctor appointment; PCP is booked until late this month. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal Order - Arrearage 2026-05-14 Triage.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal Order - Arrearage 2026-05-14 Triage.md new file mode 100644 index 0000000..995d865 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal Order - Arrearage 2026-05-14 Triage.md @@ -0,0 +1,195 @@ +--- +tags: [atlas, personal-context, legal, triage] +type: legal-document-triage +created: 2026-05-15 +updated: 2026-05-18 +sensitive: true +status: active +case_number: 23-3-04859-1 SEA +source_emails: + - id: 19ddadaf5de17f13 + date: 2026-04-29 + subject: Notice of E-Service 23-3-04859-1 + - id: 19e172a654ce0b65 + date: 2026-05-11 + subject: Notice of E-Service 23-3-04859-1 + - id: 19e289d5e0da2267 + date: 2026-05-14 + subject: Notice of E-Service 23-3-04859-1 + - id: 19e28a0d1ee89407 + date: 2026-05-14 + subject: De Souza - Order reducing arrears to a Judgment +source_files: + - Order on Motion to Establish Arrearage 5.14.2026.pdf + - Proof of Service of attached Order by EMail and E-service to William Valentin.pdf + - Certificate of E-Service.pdf +--- + +# Legal Order - Arrearage 2026-05-14 Triage + +This is **document triage, not legal advice**. Extracted from Gmail/e-service notices and attached PDFs so Will/Atlas can track dates, amounts, next questions, and source documents without re-opening everything from scratch. + +## Immediate answer + +- I found a **hearing date**: **2026-05-14**. The order says: “A hearing was held on 5/14/26.” +- I found an **order/signed date**: **2026-05-14**, signed by **Commissioner Lindsey Goheen**. +- I did **not** see a specific future hearing date or response/appeal/reconsideration deadline in the extracted order pages. A legal professional should verify this. +- I did find **e-service document-access/download windows** in the King County emails. These are portal viewing windows, not necessarily legal deadlines: + - 2026-04-29 e-service email → 15 calendar days later ≈ **2026-05-14**. + - 2026-05-11 e-service email → 15 calendar days later ≈ **2026-05-26**. + - 2026-05-14 e-service email → 15 calendar days later ≈ **2026-05-29**. + +## Case / court / parties + +- Court: **Superior Court of Washington, County of King** +- Case number: **23-3-04859-1 SEA** +- Petitioner: **Virna De Souza** +- Respondent: **William Valentin** +- Document title: **Order to Establish Arrearage and reduce past owed expenses to a Judgment and other relief (ORCN)** +- Lawyer listed for petitioner: **Kristofer Leavitt** / Alpine Family Law +- Respondent lawyer field: **N/A represents William Valentin** +- Respondent signature area says: **DID NOT APPEAR** + +## Source emails found + +### 2026-04-29 — King County e-service notice + +- From: `donotreplyScript@kingcounty.gov` +- Subject: **Notice of E-Service 23-3-04859-1** +- E-filed documents listed: + - 190 - Note for Motion Docket + - 191 - Motion + - 192 - Memorandum + - 193 - Financial Declaration + - 194 - Sealed Financial Source Document(s) + - 195 - Working Papers Submission List + - null - E-Service Additional Document +- Served by: **Melodie Allen** +- E-service note: documents viewable via email links for **15 calendar days** after email date. + +### 2026-05-11 — King County e-service notice + +- From: `donotreplyScript@kingcounty.gov` +- Subject: **Notice of E-Service 23-3-04859-1** +- E-filed document listed: + - 198 - Working Papers Submission List +- Served by: **Melodie Allen** +- E-service note: documents viewable via email links for **15 calendar days** after email date. + +### 2026-05-14 — King County e-service notice + +- From: `donotreplyScript@kingcounty.gov` +- Subject: **Notice of E-Service 23-3-04859-1** +- E-filed document listed: + - 200 - Declaration of Mailing + - null - E-Service Additional Document +- Served by: **Melodie Allen** +- E-service note: documents viewable via email links for **15 calendar days** after email date. + +### 2026-05-14 — Melodie Allen / Alpine Family Law email + +- From: **Melodie J. Allen ** +- Subject: **De Souza - Order reducing arrears to a Judgment** +- Email snippet says attached is Will’s copy of the order entered with the court that day and e-served. +- Attachments found: + - **Order on Motion to Establish Arrearage 5.14.2026.pdf** + - **Proof of Service of attached Order by EMail and E-service to William Valentin.pdf** + - **Certificate of E-Service.pdf** + +## Money judgment summary extracted + +Debtor: **William Valentin** +Creditor: **Virna De Souza** + +Listed amounts: + +- Past due child support from **August 2025 to April 2025**: **$12,291.39** + - Note: the date range appears odd/impossible as written in the document; verify whether the document intended April 2026 or another date. +- Past due educational support from **February 2022 to July 2025** (Respondent 54.2%): **$15,301.92** +- Past due medical support from **February 2022 to July 2025** (Respondent 54.2%): **$1,789.00** +- Past due work-related daycare from **February 2022 to July 2025** (Respondent 54.2%): **$61,694.37** +- Past due children’s expenses from **February 2022 to July 2025** (Respondent 54.2%): **$4,520.00** +- Past due medical support from **August 2025 to March 2026** (Respondent 59.2%): **$1,748.00** +- Past due work-related daycare from **August 2025 to March 2026** (Respondent 59.2%): **$8,450.00** +- Past due children’s education expenses from **August 2025 to March 2026** (Respondent 59.2%): **$7,812.20** +- Attorneys fees: **$2,500.00** + +Extracted total of listed amounts: **$116,106.88** + +Interest listed: + +- Yearly interest rate for child support, medical support, and children’s expenses: **12%** +- Other judgments: **12% unless otherwise listed** + +## Court findings / orders extracted + +- The court says it considered the motion, supporting documents, response/reply/other documents, and court records. +- The order says the petitioner satisfied her burden of demonstrating the requested expenses were actually and reasonably incurred and should be reduced to judgment. +- Lawyer fees and costs listed in the money judgment are marked as incurred and reasonable. +- The court orders the money judgment summarized above. + +## Payment method / enforcement language + +Payment method ordered: + +- Registry: send payment to **Washington State Support Registry** +- Address: **Washington State Support Registry, PO Box 45868, Olympia, WA 98504** +- Phone: **1-800-922-4306** or **1-800-442-5437** + +DCS enforcement section says DCS will enforce this order because: + +- this is a public assistance case; +- one of the parties has already asked DCS for services; +- one of the parties has asked for DCS services by signing the application statement at the end of this order. + +Income withholding/garnishment section says: + +- DCS or the person owed support can collect support owed from income, earnings, assets, or benefits of the parent who owes support. +- DCS/person owed support can enforce liens against real or personal property as allowed by child support laws **without notice to the parent who owes support**. +- Checked line: **“Does not apply. There is no good reason to delay income withholding.”** + +Other handwritten order: + +- “Petitioner shall arrange for this order to be served on respondent (e-service or service by mail).” + +## Dates / timeline + +- **2026-04-29**: E-service notice for motion packet / financial declaration / note for motion docket / working papers. +- **2026-05-11**: E-service notice for working papers submission list. +- **2026-05-14**: Hearing held. +- **2026-05-14**: Order signed by Commissioner Lindsey Goheen. +- **2026-05-14 15:30 PDT**: King County e-service notice for declaration of mailing / additional e-service document. +- **2026-05-14 22:34 UTC**: Melodie Allen email with entered order and proof/certificate PDFs. +- **2026-05-26**: Approximate end of 15-day e-service access window for 2026-05-11 notice. +- **2026-05-29**: Approximate end of 15-day e-service access window for 2026-05-14 notice. + +## What I did not find + +- I did not find a new future hearing date in the order pages extracted. +- I did not find an explicit response deadline in the order pages extracted. +- I did not verify appeal/reconsideration/deadline rules. That requires legal review, not Atlas guessing. + +## Minimum next actions + +- [ ] Save/copy the May 14 order PDFs somewhere durable outside Gmail/portal. +- [ ] If needed, save the Apr 29 and May 11 e-service documents from King County before/if still available. +- [ ] Ask legal aid / attorney / court facilitator: “Is there any deadline to respond, appeal, request reconsideration, request revision, request modification, request payment plan, or raise inability to pay?” +- [ ] Ask what “DID NOT APPEAR” changes now. +- [ ] Ask what DCS enforcement/income withholding may mean in practice and whether there are steps to prevent surprise garnishment. +- [ ] Ask whether the apparent date-range issue in the child-support line matters or can be corrected/clarified. + +## Questions for legal help + +- I cannot pay the full listed amount. What options exist? +- Is there any deadline to respond, appeal, reconsider, revise, modify, or request relief? +- What does “DID NOT APPEAR” mean for my options now? +- What happens next with DCS enforcement and income withholding? +- Can I request a payment plan or modification based on inability to pay and medical/FMLA situation? +- Does the child-support date range “August 2025 to April 2025” look like a clerical error, and does that matter? +- Are there local legal aid resources or a court facilitator who can help with this family-law support order? + +## Related notes + +- [[Legal]] +- [[Legal Order Triage Playbook]] +- [[Monday Legal Help Playbook - Arrearage Order]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal Order Triage Playbook.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal Order Triage Playbook.md new file mode 100644 index 0000000..bb89d3a --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal Order Triage Playbook.md @@ -0,0 +1,116 @@ +--- +tags: [atlas, personal-context, legal, playbook] +type: playbook +created: 2026-05-15 +sensitive: true +status: active +--- + +# Legal Order Triage Playbook + +Purpose: create a low-anxiety way to look at a new court/contempt order without getting overwhelmed. + +This is not legal advice. This playbook is for emotional load reduction, document triage, and preparing questions for a lawyer or legal-aid resource. + +## Current context + +- Will is not able to pay everything the court ordered. +- Will recently had a contempt hearing. +- A new contempt order arrived yesterday. +- Will has not looked at the order yet because legal-related things trigger anxiety and can trigger panic attacks. + +## Goal + +Extract only the minimum actionable facts: + +1. Are there deadlines? +2. Is there a required payment amount or payment schedule? +3. Is there another hearing date? +4. Are there required documents, classes, appearances, or actions? +5. Who can help interpret this: attorney, legal aid, court facilitator, clerk, advocate? + +## Minimum viable win + +If energy is low, do only this: + +- Put the unopened order somewhere visible/safe. +- Take one photo or scan of the first page. +- Ask Atlas or a trusted person to help extract deadlines only. + +That counts as progress. + +## Grounding before opening + +Before opening or reading: + +- [ ] Sit down somewhere safe. +- [ ] Have water nearby. +- [ ] Set a 10-minute timer. +- [ ] Remind yourself: "I am only extracting dates and next actions, not solving the whole case." +- [ ] If possible, have Roxanne or another trusted person nearby. + +## The 10-minute triage method + +Do not read the whole document deeply at first. + +1. Look only for: + - dates + - deadlines + - dollar amounts + - required actions + - hearing information + - contact information +2. Write those in the tracker below. +3. Stop after 10 minutes. +4. Decide the next support step. + +## Tracker + +| Item | Found? | Details | +| --- | --- | --- | +| Deadline | | | +| Hearing date | | | +| Amount ordered | | | +| Payment schedule | | | +| Required action | | | +| Contact / filing info | | | +| Consequence if missed | | | + +## Questions to ask legal help + +- I cannot afford the full court-ordered amount. What options exist to request modification, payment plan, or relief? +- What exactly does the new contempt order require me to do? +- What is the deadline to respond or comply? +- What happens if I cannot pay by the date listed? +- Can I file anything explaining inability to pay? +- Are there local legal aid or court facilitator resources for this kind of matter? + +## If panic starts + +Pause. The document can wait 10 minutes. + +- Put the document down. +- Take slow breaths. +- Name five things you can see. +- Text or ask someone: "I opened the legal document and I'm panicking. Can you sit with me for 10 minutes?" +- Resume only if you feel able. + +## Assistant role + +Atlas can help by: + +- Extracting dates, deadlines, amounts, and required actions from text or photos Will provides. +- Turning the order into a plain-English checklist. +- Drafting a neutral message to an attorney/legal-aid resource. +- Creating reminders only after Will explicitly approves them. + +Atlas should not: + +- Give legal advice as if it were a lawyer. +- Contact court/attorneys/other parties without explicit consent. +- Push Will to read more than is necessary in one sitting. + +## Related notes + +- [[Legal]] +- [[Will]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal.md new file mode 100644 index 0000000..6bdb948 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Legal.md @@ -0,0 +1,54 @@ +--- +tags: [atlas, personal-context, legal] +type: area +created: 2026-05-15 +sensitive: true +--- + +# Legal + +## Current context + +Will has shared that legal-related issues are a major stressor. + +Current legal/admin context: + +- Will is not able to pay everything the court ordered. +- Will recently had a contempt hearing. +- A new contempt order arrived yesterday. +- Will has not looked at the order yet because legal-related things trigger anxiety and can trigger panic attacks. + +## Assistant support boundaries + +Atlas can help with: + +- Organizing timelines and facts +- Drafting neutral summaries or checklists +- Preparing questions for an attorney or relevant professional +- Tracking deadlines and follow-ups when Will explicitly approves reminders + +Atlas should not: + +- Give legal advice as if it were a lawyer +- Contact anyone, submit documents, or take external action without explicit consent +- Assume facts not recorded here or provided by Will + +## Tracker + +Use [[Legal Order Triage Playbook]] for a low-anxiety way to extract deadlines and required actions from legal orders. + +Current triaged document: [[Legal Order - Arrearage 2026-05-14 Triage]] + +Current action playbook: [[Monday Legal Help Playbook - Arrearage Order]] + +### Open questions + +- [ ] What legal matter(s) are involved? +- [ ] Are there known deadlines? +- [ ] Are there attorneys, courts, agencies, or other contacts involved? +- [ ] What documents need to be collected or tracked? + +### Timeline + +- 2026-05-18: Updated [[Legal Order - Arrearage 2026-05-14 Triage]] with extracted Gmail/e-service data, source email dates, portal access windows, order details, amounts, and next legal-help questions. +- 2026-05-15: Will shared that legal-related issues are a major stressor. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Medical Appointment Tracker.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Medical Appointment Tracker.md new file mode 100644 index 0000000..1e60e9a --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Medical Appointment Tracker.md @@ -0,0 +1,169 @@ +--- +tags: [atlas, personal-context, health, appointments, tracker] +type: tracker +created: 2026-05-15 +sensitive: true +status: active +--- + +# Medical Appointment Tracker + +Purpose: keep medical/admin appointments out of Will's head and make the next action obvious. + +This is not medical advice. This is scheduling/admin tracking. + +## Current priorities + +1. PCP / FMLA appointment support +2. Medication refill Zoom call +3. Find/book psychiatrist/shrink +4. Hearing check appointment +5. Eye appointment for possible new glasses/lenses + +## Minimum viable win + +If energy is low, do just one thing: + +- Send one portal message, make one call, or identify one phone number. + +That counts as progress. + +## Tracker + +### PCP / FMLA support + +- Status: blocked / PCP booked until late this month +- Need: sooner appointment or alternate clinician who can support medical leave/FMLA paperwork +- Related note: [[FMLA Monday Appointment Playbook]] + +Next actions: + +- [ ] Send PCP portal message using the FMLA playbook +- [ ] Ask for cancellation list +- [ ] Ask for same-team provider +- [ ] Ask for telehealth +- [ ] Ask if another clinician can start/complete FMLA documentation +- [ ] Record appointment date/time here once scheduled + +Appointment details: + +- Date/time: +- Provider: +- Location/link: +- Notes: + +### Medication refill Zoom call + +- Status: scheduled +- Practitioner: Sammy +- Need: refill daily depression/anxiety medication + +Next actions: + +- [ ] Confirm date/time of Zoom call +- [ ] Confirm link/provider name +- [ ] Prepare current medication list and refill needs +- [ ] Ask about bridge refill if needed +- [ ] Record outcome + +Appointment details: + +- Date/time: 2026-05-25 10:00–11:00am PT +- Practitioner: Sammy +- Zoom/link: invite will be sent later +- Medications/refills needed: +- Outcome: + +### Psychiatrist / shrink + +- Status: needs booking +- Need: mental-health specialist for depression/anxiety, sleep difficulty, treatment support, and possibly leave documentation support + +Next actions: + +- [ ] Check insurance/provider directory +- [ ] Ask PCP/clinic for psychiatry referral +- [ ] Search for telehealth psychiatry options +- [ ] Ask about earliest available appointment +- [ ] Book intake appointment + +Appointment details: + +- Date/time: +- Provider: +- Location/link: +- Intake requirements: +- Notes: + +### Hearing check + +- Status: needs booking +- Need: hearing test/audiology evaluation and hearing aids discussion if needed +- Insurance to mention: UMR Choice Plus Network through CoreWeave; ask whether they also work with UnitedHealthcare Hearing benefits + +Next actions: + +- [x] Identify clinic/audiology options +- [ ] Check insurance/referral requirement +- [ ] Book appointment + +Candidate clinics: + +1. Clear Hearing + Audiology — close to Queen Anne/South Lake Union; phone found online: (206) 596-2099; ask if in-network with UMR/UnitedHealthcare Choice Plus and UHC Hearing. +2. Magnolia Hearing — near Queen Anne/Magnolia/Uptown; verify UMR/UHC Hearing. +3. UnitedHealthcare Hearing provider search — https://www.uhchearing.com/find-a-provider + +Call script: + +> Hi, I’d like to schedule the soonest hearing test/audiology evaluation and discuss hearing aids if needed. My insurance is UMR Choice Plus Network through CoreWeave. Are you in-network with UMR/UnitedHealthcare Choice Plus, and do you work with UnitedHealthcare Hearing benefits for hearing aids? + +Appointment details: + +- Date/time: +- Provider/clinic: +- Location/link: +- Notes: + +### Eye appointment / glasses-lenses + +- Status: needs booking +- Need: routine comprehensive eye exam for glasses and contacts +- Vision insurance: Guardian Dental/Vision through CoreWeave; plan/group G-00032576 + +Next actions: + +- [x] Identify optometrist/clinic +- [ ] Check Guardian Vision coverage/contact lens evaluation coverage +- [ ] Book eye exam +- [ ] Bring current glasses/contacts prescription if available + +Candidate clinics: + +1. Eye Clinics of Seattle — Queen Anne, 20 Boston St, Seattle, WA 98109, (206) 282-8120. Ask whether they are in-network with Guardian Vision and whether contact lens exam/fitting is covered. +2. Queen Anne Vision Clinic — 535 4th Ave W, Seattle, WA 98119, (206) 281-9100. Backup; verify Guardian Vision. + +Call script: + +> Hi, I’d like to schedule the soonest routine comprehensive eye exam for glasses and contacts. My vision insurance is Guardian Dental/Vision through CoreWeave, plan/group G-00032576. Are you in-network with Guardian Vision, and can you verify coverage for a contact lens exam/fitting? + +Appointment details: + +- Date/time: +- Provider/clinic: +- Location/link: +- Notes: + +## Weekly review + +Use this once or twice per week, not every day unless needed. + +- [ ] What is the single most urgent appointment/admin item? +- [ ] What is blocked? +- [ ] What can Atlas draft or organize? +- [ ] What reminder, if any, should be created with Will's approval? + +## Related notes + +- [[Health and Medical Leave]] +- [[FMLA Monday Appointment Playbook]] +- [[Will]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Monday Legal Help Playbook - Arrearage Order.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Monday Legal Help Playbook - Arrearage Order.md new file mode 100644 index 0000000..d3cd5b3 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Monday Legal Help Playbook - Arrearage Order.md @@ -0,0 +1,152 @@ +--- +tags: [atlas, personal-context, legal, playbook] +type: playbook +created: 2026-05-15 +sensitive: true +status: active +related_case: 23-3-04859-1 SEA +--- + +# Monday Legal Help Playbook - Arrearage Order + +Purpose: make it easier to ask for legal help about the May 14, 2026 arrearage/judgment order without having to reread or emotionally process the whole document. + +This is not legal advice. This is an action script and triage checklist. + +## Current situation + +- Court: King County Superior Court +- Case: 23-3-04859-1 SEA +- Main order: Order to Establish Arrearage and reduce past owed expenses to a Judgment and other relief +- Order signed: 2026-05-14 +- Served by email/e-service: 2026-05-14 at 3:31 p.m. +- Order says respondent: DID NOT APPEAR +- Extracted total listed amount: $116,106.88 +- Interest listed: 12% yearly +- Will is not able to pay the full ordered amount + +Detailed triage note: [[Legal Order - Arrearage 2026-05-14 Triage]] + +## Monday goal + +Get one of these outcomes: + +1. Confirm whether there is any deadline to respond, appeal, request reconsideration, request modification, request relief, or address inability to pay. +2. Find a legal professional, legal-aid resource, or court facilitator who can explain options. +3. Understand immediate practical risk: DCS enforcement, income withholding, garnishment, payment plan, or other collection actions. +4. Identify the next concrete step and date. + +## Minimum viable win + +If energy is low, do only this: + +- Send the short email/message below to one legal-help contact. +- Attach or offer the PDF order. +- Set one follow-up reminder. + +That counts as progress. + +## What to gather first + +Do not let this block action. If something is missing, send anyway. + +- [ ] PDF order +- [ ] Proof/certificate of service PDFs +- [ ] Case number: 23-3-04859-1 SEA +- [ ] Date signed: 2026-05-14 +- [ ] Date served: 2026-05-14 +- [ ] Any hearing notice or prior contempt paperwork +- [ ] Any income/expense info showing inability to pay +- [ ] Current medical/FMLA situation summary, if relevant + +## Short message to lawyer / legal aid / court facilitator + +Subject: Need urgent guidance on King County arrearage/contempt order - case 23-3-04859-1 SEA + +Hi, + +I received an Order to Establish Arrearage and reduce past owed expenses to a Judgment in King County Superior Court case 23-3-04859-1 SEA, signed May 14, 2026 and served by email/e-service the same day. + +The order says respondent “DID NOT APPEAR.” The listed judgment appears to total about $116,106.88 plus 12% interest. I am not able to pay the full amount. + +I need help understanding: + +- whether there is any deadline to respond, appeal, request reconsideration, request modification, request relief, or explain inability to pay; +- what DCS enforcement/income withholding may mean; +- whether a payment plan, modification, or other relief is possible; +- what my next step should be. + +Can someone review the order and tell me what options or deadlines I need to know about? + +Thank you, +Will + +## Phone script + +Hi, my name is Will. I’m calling because I received a King County Superior Court order in a family-law/support case and I need help understanding deadlines and options. + +The case number is 23-3-04859-1 SEA. The order was signed May 14, 2026. It establishes arrearage and reduces past owed expenses to a judgment. The total appears to be about $116,106.88 plus interest, and I cannot pay the full amount. + +I need to know if there is any deadline to respond, appeal, ask for reconsideration, request modification, request a payment plan, or explain inability to pay. I also need to understand what DCS enforcement or income withholding could mean. + +Can you help me, or point me to the right resource? + +## If they ask what you need help with + +Say: + +I need document review and next-step guidance. I’m not asking anyone to solve the whole case today. I need to identify deadlines, risk, and options because I cannot pay the full ordered amount. + +## If they say they cannot help + +Ask: + +- Do you know who can help with King County family-law support/judgment orders? +- Is there a court facilitator or family law help desk? +- Is there a legal aid organization that handles child support/contempt/arrearage issues? +- Is there a way to request reconsideration, modification, payment plan, or relief due to inability to pay? +- Who can tell me whether a deadline is running? + +## Places/categories to contact + +Fill in exact contacts as found. + +- [ ] Current or prior attorney, if any +- [ ] King County family law facilitator / courthouse help desk +- [ ] Washington legal aid / family law self-help resource +- [ ] DCS / Washington State Support Registry for enforcement/payment-process questions +- [ ] Court clerk for procedural questions only, not legal advice +- [ ] Trusted support person to sit with Will while making calls/messages + +## Questions to ask + +- Is there a deadline to respond, appeal, reconsider, modify, or request relief? +- What does “DID NOT APPEAR” mean for my options now? +- What happens next after this order is entered and served? +- What does DCS enforcement mean in practice? +- Can I request a payment plan? +- Can I request modification or relief based on inability to pay? +- Can current medical/FMLA/mental-health situation matter for enforcement or payment ability? +- What documents should I gather? +- What should I avoid doing or missing this week? + +## Call/message tracker + +| Date | Contact | Method | Result | Next step | +| --- | --- | --- | --- | --- | +| Monday | | | | | +| Tuesday | | | | | + +## Anxiety-safe rules + +- Only one call/message at a time. +- You do not have to reread the whole order. +- Use the script verbatim if needed. +- Stop after 15 minutes if panic rises. +- The goal is to find the next door, not solve the entire legal problem. + +## Related notes + +- [[Legal]] +- [[Legal Order - Arrearage 2026-05-14 Triage]] +- [[Legal Order Triage Playbook]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Tax Catch-up Playbook.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Tax Catch-up Playbook.md new file mode 100644 index 0000000..fc822a4 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Areas/Tax Catch-up Playbook.md @@ -0,0 +1,160 @@ +--- +tags: [atlas, personal-context, finances, taxes, playbook] +type: playbook +created: 2026-05-19 +sensitive: true +status: active +--- + +# Tax Catch-up Playbook + +Purpose: make late taxes less overwhelming by turning them into a small document-gathering workflow. + +This is tax admin support, not tax/legal advice. For filing choices, penalties, or unusual tax situations, use a tax professional or IRS/state guidance. + +## Current context + +- Will is late doing taxes and needs to get unstuck. +- Gmail search is working again through Atlas/Google Workspace. +- Initial Gmail scan found likely 2025 tax documents and related notifications. + +## Minimum viable win + +If energy is low, do only this: + +- [ ] Open/download the **CoreWeave W-2** email attachment. +- [ ] Put it in a folder named `2025 Taxes`. + +That counts as progress. + +## Found in Gmail + +### CoreWeave / W-2 + +Email found: + +- From: William's CoreWeave email +- Subject: `W2` +- Date: 2026-01-23 +- Attachments: + - `William_Valentin_2025_W2.pdf` + - `William_Valentin_2025_Tip_and_Other_Compensation_Report.pdf` + - `William Valentin_paystubs.zip` + +Use these as the primary employment-income documents. + +### E*TRADE / Morgan Stanley 1099 + +Email found: + +- From: E*TRADE from Morgan Stanley +- Subject: `IMPORTANT TAX RETURN DOCUMENT AVAILABLE` +- Date: 2026-02-06 +- Mentions: `2025 FORM 1099 STOCK PLAN CONSOLIDATED ORIGINAL and Stock Plan Transactions Supplement` + +Likely next step: log into E*TRADE/Morgan Stanley and download the 2025 1099 PDF and stock-plan transaction supplement. The Gmail notification did **not** include the actual PDF as an attachment. + +### Pay stubs / pay docs + +Additional CoreWeave/self-forwarded pay-doc emails found: + +- `stubs` — 2026-02-19 +- `pay docs` — 2026-01-21 +- `Payslip_to_Print...` — 2026-01-21 +- older pay-stub archives from 2025 + +Usually backup only if the W-2 is unclear or a tax preparer asks. + +### Not clearly found yet + +- 1095 health coverage tax form +- Chase/Amex bank-interest tax forms +- Attached E*TRADE 1099 PDF + +## Tax document checklist + +### Definitely gather + +- [ ] CoreWeave 2025 W-2 PDF +- [ ] CoreWeave tip/other compensation report PDF +- [ ] E*TRADE/Morgan Stanley 2025 Form 1099 Stock Plan Consolidated PDF +- [ ] E*TRADE/Morgan Stanley Stock Plan Transactions Supplement +- [ ] Prior-year tax return, if available + +### Check if applicable + +- [ ] Bank interest forms: 1099-INT +- [ ] Investment dividend/capital gains forms: 1099-DIV / 1099-B +- [ ] Mortgage/student loan forms: 1098 +- [ ] Health coverage forms: 1095-A/B/C if received +- [ ] Child/dependent info if claiming dependents +- [ ] Donation receipts or other deductions if meaningful + +## Gmail search queries + +Use these if Atlas needs to search again: + +```text +from:(coreweave.com OR wvalentin@coreweave.com) (W2 OR "W-2" OR tax OR 1095 OR payroll OR pay OR stubs OR docs) newer_than:18m +``` + +```text +from:(etradefrommorganstanley.com OR etrade.com) (1099 OR tax OR "tax return document") newer_than:18m +``` + +```text +(subject:"W-2" OR subject:W2 OR subject:1099 OR subject:1095 OR subject:"tax document" OR subject:"tax forms") newer_than:18m -category:promotions +``` + +```text +(1095 OR "health coverage" OR "minimum essential coverage" OR UMR OR Guardian) newer_than:18m -category:promotions +``` + +```text +(1099-INT OR 1099-DIV OR 1099-B OR "tax statement" OR "tax form" OR "tax document") newer_than:18m -category:promotions +``` + +## Automation + +- Active n8n workflow: `Personal Reminder Router (Atlas + Local LLM)` +- Workflow ID: `PersonalReminderRouter001` +- Schedule: weekdays at 9:00 AM PT +- Delivery: n8n → local LLM on `llama.cpp :18806` for short reminder wording → Atlas/Hermes webhook `personal-reminder-atlas` → Telegram +- Current reminder: tax catch-up / CoreWeave W-2 minimum viable win +- Hermes one-shot tax reminder was removed after n8n delivery was verified, to avoid duplicate reminders. + +## Next actions + +1. [ ] Create a local or Drive folder: `2025 Taxes`. +2. [ ] Download CoreWeave W-2 attachments from Gmail. +3. [ ] Log into E*TRADE/Morgan Stanley and download 2025 1099 + transaction supplement. +4. [ ] Search for bank/investment/health tax forms again if needed. +5. [ ] Choose filing path: + - FreeTaxUSA / TurboTax / H&R Block software + - tax preparer / enrolled agent / CPA +6. [ ] File even if payment has to be handled separately. + +## Low-stress filing path + +If overwhelmed: + +- Use FreeTaxUSA or a tax preparer. +- Do not try to optimize every deduction first. +- Get the main income documents in one place. +- Filing late is usually more urgent than perfect optimization. + +## Message to a tax preparer + +Subject: Late tax filing help + +Hi, + +I’m late filing my 2025 taxes and need help getting caught up as soon as possible. I’m a W-2 employee and also have an E*TRADE/Morgan Stanley stock-plan 1099. Are you accepting new clients, and what documents should I send to get started? + +Thank you, +William Valentin + +## Related notes + +- [[Will]] +- [[Health and Medical Leave]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Family in France.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Family in France.md new file mode 100644 index 0000000..70158e1 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Family in France.md @@ -0,0 +1,32 @@ +--- +tags: [atlas, personal-context, family] +type: family-context +created: 2026-05-15 +--- + +# Family in France + +## Betty + +- Relationship: Will's mom +- Birth date: 1948-11-10 +- Lives in France in the same little town as Will's sister Delphyne + +## Delphyne + +- Relationship: Will's sister +- Birth date: 1976-04-09 +- Born in France +- Lives in France in the same little town as Will's mom Betty +- Daughter: Mathylde +- Mathylde's dad: Christophe + +## Jean-Jacques + +- Relationship: Will's dad +- Birth date: 1953-05-23 +- Lives in France, in the Bretagne region + +## Notes for Atlas + +Will is French and has family roots and close family context in France. Use French language/cultural context when helpful, but do not assume emotional closeness or current contact frequency without asking. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Liam.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Liam.md new file mode 100644 index 0000000..da0f9d8 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Liam.md @@ -0,0 +1,15 @@ +--- +tags: [atlas, personal-context, person, family] +type: person +created: 2026-05-15 +--- + +# Liam + +- Relationship: Will's child +- Birth date: 2016-07-17 +- Lives with his mother in Redmond, WA + +## Notes for Atlas + +Liam is one of Will's two children. Will has said he currently does not get to see his kids. Treat family/child-related context as sensitive and supportive. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Mila.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Mila.md new file mode 100644 index 0000000..7b167bc --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Mila.md @@ -0,0 +1,15 @@ +--- +tags: [atlas, personal-context, person, family] +type: person +created: 2026-05-15 +--- + +# Mila + +- Relationship: Will's child +- Birth date: 2020-05-28 +- Lives with her mother in Redmond, WA + +## Notes for Atlas + +Mila is one of Will's two children. Will has said he currently does not get to see his kids. Treat family/child-related context as sensitive and supportive. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Roxanne.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Roxanne.md new file mode 100644 index 0000000..2b6d56e --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/People/Roxanne.md @@ -0,0 +1,20 @@ +--- +tags: [atlas, personal-context, person] +type: person +created: 2026-05-15 +--- + +# Roxanne + +- Relationship: Will's partner/girlfriend +- Birth date: 1998-05-23 +- Born in: Seattle, WA +- Lives with Will +- Roxanne supports Will as much as she can +- Will has no stated boundaries around discussing Roxanne with Atlas +- Will usually wakes around 7:30–8:00am because that is Roxanne's wake-up time +- Shared activities Will enjoys: being outside and walking miles together + +## Notes for Atlas + +Roxanne is an important person in Will's daily life and routines. Be respectful and do not assume permission to contact, message, or involve her unless Will asks. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Projects/Hermes Atlas Personal Assistant.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Projects/Hermes Atlas Personal Assistant.md new file mode 100644 index 0000000..9b7a1dd --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Projects/Hermes Atlas Personal Assistant.md @@ -0,0 +1,41 @@ +--- +tags: [atlas, personal-context, project] +type: project +created: 2026-05-15 +--- + +# Hermes Atlas Personal Assistant + +## Purpose + +Atlas is Will's primary Hermes-based personal assistant. The goal is to reduce cognitive load and help Will act on important personal, technical, and administrative work. + +## Preferred style + +Will chose **structured proactive** assistance. + +This means Atlas should: + +- Suggest concrete next steps when they reduce cognitive load +- Help maintain routines and reminders only when explicitly approved +- Be supportive and practical without nagging +- Ask before creating recurring systems +- Ask before sending messages or taking external actions +- Ask before handling sensitive personal/legal/medical documents + +## Memory architecture + +- Hermes `user` memory: tiny always-on operating context +- Obsidian: durable personal/project knowledge base +- RAG/vector search: semantic retrieval over Obsidian/docs when context is needed +- Session search: recall prior conversations when Will says “we talked about…” or similar + +## Important areas to search before helping + +- [[Will]] +- [[Areas/Health and Medical Leave]] +- [[Areas/Legal]] +- [[People/Roxanne]] +- [[People/Liam]] +- [[People/Mila]] +- [[People/Family in France]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/README.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/README.md new file mode 100644 index 0000000..5efd713 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/README.md @@ -0,0 +1,27 @@ +--- +tags: [atlas, personal-context] +created: 2026-05-15 +--- + +# Atlas Personal Context + +This folder is the durable, human-readable personal context layer for Atlas. + +Use this instead of overloading Hermes' small always-injected memory. Hermes memory should keep only compact pointers and behavior preferences; richer personal details live here and can be retrieved via Obsidian/RAG when relevant. + +## Core notes + +- [[Will]] — identity, location, languages, work, routines, stressors, preferences +- [[People/Roxanne]] — partner context +- [[People/Liam]] — child context +- [[People/Mila]] — child context +- [[People/Family in France]] — parents and sister +- [[Areas/Health and Medical Leave]] — health context and FMLA/leave tracker +- [[Areas/Legal]] — legal/admin context and tracker +- [[Projects/Hermes Atlas Personal Assistant]] — how Will wants Atlas to operate + +## Operating rule for Atlas + +When personal, family, legal, medical, or project context matters, search this folder and related Obsidian notes before relying only on short Hermes memory. + +Sensitive areas — legal, medical, family — require consent before external actions, recurring reminders, or document handling. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Will.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Will.md new file mode 100644 index 0000000..d13c464 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Personal Context/Will.md @@ -0,0 +1,76 @@ +--- +tags: [atlas, personal-context, person] +type: person +created: 2026-05-15 +--- + +# Will + +## Identity + +- Name: Will +- Birth date: 1979-07-25 +- Born in: France +- Nationality/culture: French +- Race/ethnicity: Caucasian +- Current location: Lower Queen Anne, Seattle, WA 98119 +- Languages: French and English mainly; some Portuguese and Spanish + +## Household and family + +- Partner/girlfriend: [[People/Roxanne]] +- Children: [[People/Liam]] and [[People/Mila]] +- Family in France: [[People/Family in France]] + +## Work + +- Role: Cloud Support Engineer at CoreWeave +- Manager: Alex Tierney +- Work pattern: remote, worked remotely for almost 3 years +- Normal shift: Monday–Friday, 2pm–11pm +- Domain: GPU infrastructure, Kubernetes, Slurm, customer support for engineers + +## Current context + +- Current major stressors: legal-related issues, sleep difficulty, depression/anxiety, medical leave/FMLA setup +- Current medical/mental condition prevents him from doing his Cloud Support Engineer job +- Current goal: set up 3 months of leave/FMLA for medical reasons + +## Daily rhythm + +- Wakes around 7:30–8:00am because that is Roxanne's wake-up time +- Usually goes to bed around 1:00am +- Mornings are often for Hermes/Atlas, dev projects, and/or a nap +- Work shift, when working: 2pm–11pm + +## Health/admin to track + +- Currently only has PCP for mental-health/medical support +- Has a Zoom call with Sammy, a practitioner, to get medication refilled +- Needs to get a psychiatrist/shrink +- Needs to book a hearing check appointment +- Needs to book an eye appointment because he may need new glasses/lenses + +## Interests + +- Guitar +- Coding +- YouTube: woodworking, space, science, tech, dev, guitar building +- Music: metal, Metallica, hard rock, rock, 80s, 90s, Caravan Palace +- Going outside and walking miles with Roxanne + +## Projects + +- Atlas/Hermes is Will's most important current project +- Will expects Atlas and him to work together on ongoing dev projects + +## Assistant preferences + +- Preferred assistant name: Atlas +- Preferred assistance style: structured proactive — reduce cognitive load, suggest next steps, maintain explicitly approved routines/reminders +- When things are hard, Will prefers a mix of gentle/reassuring, direct/practical, and tiny-next-step support +- Communication: concise by default +- Tone: humor is welcome when appropriate; stay calm/grounded when serious +- Language preference: match Will's language +- Will wants Atlas to challenge him gently when avoidance is blocking something important +- Consent boundaries: ask before recurring systems, external actions, or sensitive personal/legal/medical document handling diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Audit.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Audit.md new file mode 100644 index 0000000..6b6c03b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Audit.md @@ -0,0 +1,171 @@ +# Obsidian Cleanup Audit — 2026-05-19 + +Vault: `/home/will/lab/swarm/swarm-common/obsidian-vault/will/will-shared-zap` + +## Executive summary + +The vault is small and mostly healthy: **136 Markdown notes**. The main cleanup problem is not deep rot; it is automation/test smoke left behind and a few placeholder/stub notes. + +Highest-confidence cleanup candidates: **18 notes** are empty, `{}` stubs, disposable test notes, or obvious example/smoke artifacts. + +Second priority: link hygiene. I found **48 unresolved wikilinks/relative links** after resolving normal Obsidian basename and path links. Many are template placeholders and harmless, but some indicate missing index/person/area notes or stale architecture references. + +## Folder distribution + +| Folder | Notes | +|---|---:| +| Notes | 24 | +| Templates | 19 | +| Atlas | 16 | +| Projects | 13 | +| Infrastructure | 12 | +| Inbox | 8 | +| Daily | 7 | +| Voice Memos | 6 | +| root | 5 | +| Resources | 5 | +| Diary | 5 | +| Runbooks | 4 | +| Hermes Disposable Tests | 4 | +| Decisions | 2 | +| Plans / Clippings / Areas / People / Meetings / Archive | 1 each | + +## Safe delete candidates + +These look safe to remove or archive as test debris. I did **not** delete them. + +### Empty notes + +- `2026-04-16.md` +- `Systems.md` +- `Voice Memos/2026-05-13-e2e-test-full-pipeline.md` +- `Voice Memos/2026-05-13-e2e-test-fixed-auth.md` +- `Voice Memos/2026-05-13-e2e-test-retry-auth.md` +- `Voice Memos/2026-05-13-e2e-auth-fixed.md` +- `Voice Memos/2026-05-13-final-e2e-test.md` + +### `{}` stub notes + +- `Notes/2026-05-13 Evening Digest.md` +- `Notes/2026-05-14 Evening Digest.md` +- `Notes/2026-05-15 Evening Digest.md` +- `Notes/2026-05-17 Evening Digest.md` + +These four are also duplicate content. + +### Disposable/smoke artifacts + +- `Clippings/2026-05-13-example-domain.md` +- `Hermes Disposable Tests/append-note-created-by-append-20260515-101031.md` +- `Hermes Disposable Tests/append-note-fixed-20260515-101031.md` +- `Hermes Disposable Tests/append-note-semantics-20260515-100757.md` +- `Hermes Disposable Tests/raw-append-op-20260515-100823.md` +- `Voice Memos/2026-05-13-final-pipeline-test.md` + +### Needs review before delete + +- `Templates/Atlas Artifacts/test-report.md` — flagged because it has “test” in the title/content, but it may be an intentional reusable template. Keep unless the Atlas artifact-template set is being simplified. + +## Notes that “don’t make sense” structurally + +### Automation digest clutter + +There are many one-off nightly vault sync notes under `Notes/`: + +- `Notes/2026-03-27 Nightly Vault Sync.md` +- `Notes/2026-03-31 Nightly Vault Sync.md` +- `Notes/2026-04-17 Nightly Vault Sync.md` +- `Notes/2026-04-19 Nightly Vault Sync.md` +- `Notes/2026-04-21 Nightly Vault Sync.md` +- `Notes/2026-04-22 Nightly Vault Sync.md` +- `Notes/2026-04-23 Nightly Vault Sync.md` +- `Notes/2026-04-28 Nightly Vault Sync.md` +- `Notes/2026-04-29 Nightly Vault Sync.md` +- `Notes/2026-05-01 Nightly Vault Sync.md` +- `Notes/2026-05-03 Nightly Vault Sync.md` +- `Notes/2026-05-04 Nightly Vault Sync.md` +- `Notes/2026-05-08 Nightly Vault Sync.md` +- `Notes/2026-05-10 Nightly Vault Sync.md` +- `Notes/2026-05-11 Nightly Vault Sync.md` + +Recommendation: keep `Infrastructure/Automation/n8n Nightly Vault Sync.md` as the canonical runbook/status note, then either archive the daily sync notes under `Archive/Automation Logs/` or summarize them into one changelog and delete the raw day-by-day noise. + +### Root-level notes + +Root contains: + +- `Conventions.md` +- `2026-04-16.md` — empty; delete +- `Weekend Activity Ideas.md` +- `Ops Home.md` +- `Systems.md` — empty; delete or replace with a real systems index + +Recommendation: root should probably contain only `Ops Home.md`, `Conventions.md`, and maybe a few true entrypoints. Move `Weekend Activity Ideas.md` into `Resources/` or `Areas/Home/` if keeping it. + +## Link hygiene findings + +Unresolved links after normal Obsidian resolution: **48**. + +Likely harmless/template placeholders: + +- `{{project}}` — 7 instances in `Templates/Atlas Artifacts/*` +- `artifact-name` — 1 instance +- `Note A`, `Note B`, `wikilinks`, `url` in `Conventions.md` examples + +Likely real missing or stale notes: + +- `Infrastructure/Automation/n8n Morning Brief` +- `Infrastructure/Automation/n8n Evening Digest` +- `Atlas/Safer Autonomy and Permission Tiers` +- `Atlas/Gateway Approval Runbook` +- `Atlas/Skill Inventory` +- `Atlas/Skill Backlog` +- `Vault Conventions` — appears to mean `Conventions.md` +- `Areas/Health and Medical Leave`, `Areas/Legal` — notes exist under `Atlas/Personal Context/Areas/...`, not root `Areas/...` +- `People/Roxanne`, `People/Liam`, `People/Mila`, `People/Family in France` — notes exist under `Atlas/Personal Context/People/...`, not root `People/...` +- `Diary/Entries`, `Diary/Weekly Reviews`, `Diary/Atlas Reflections` — folder-style links; create index notes or change to plain text/folder references +- `Inbox/Inbox Home` — missing, but likely intended + +Recommendation: fix links by either creating small index notes or retargeting links to existing paths. Do this after deleting test debris so the graph is cleaner. + +## Orphan candidates + +These have no incoming or outgoing links by the scan. Some are intentionally standalone daily/research artifacts; others are clutter. + +Most suspicious orphans: + +- `2026-04-16.md` +- `Notes/2026-05-13 Evening Digest.md` +- `Notes/2026-05-14 Evening Digest.md` +- `Notes/2026-05-15 Evening Digest.md` +- `Notes/2026-05-17 Evening Digest.md` +- `Clippings/2026-05-13-example-domain.md` +- `Voice Memos/2026-05-13-*test*.md` +- `Hermes Disposable Tests/*.md` +- `Inbox/Chat Summaries/2026-05-14 - Atlas Event-Driven Automation Smoke.md` + +Probably okay but should be linked from an index: + +- `Weekend Activity Ideas.md` +- `Projects/Atlas/Skill Inventory.md` +- `Projects/Atlas/Skill Backlog.md` +- `Decisions/Runbook Suggestions.md` +- `Atlas/Daily Research/2026-05-18 - Hermes AI Brief.md` +- `Atlas/Daily Research/2026-05-19 - Hermes AI Brief.md` +- `Atlas/Personal Context/People/*.md` + +## Recommended cleanup order + +1. Delete or archive the 17 obvious disposable/empty/stub notes. Keep `Templates/Atlas Artifacts/test-report.md` unless you want to simplify templates. +2. Decide what to do with nightly sync notes: archive them as automation logs or compress to a single changelog. +3. Fix `Vault Conventions` links to `Conventions`. +4. Retarget personal-context links from root `People/...` and `Areas/...` to `Atlas/Personal Context/People/...` and `Atlas/Personal Context/Areas/...`, or create redirect/index notes in root `People/` and `Areas/`. +5. Create missing index notes if desired: `Inbox/Inbox Home.md`, `Diary/Entries.md`, `Diary/Weekly Reviews.md`, `Diary/Atlas Reflections.md`. +6. Decide whether root `Systems.md` should become a real `Infrastructure/Systems.md`-style index; otherwise delete it. + +## Suggested cleanup policy going forward + +- Smoke tests should write to `Hermes Disposable Tests/` and a cleanup job should purge files older than 7 days. +- Automation status should update canonical notes/runbooks, not create a new note per day unless the daily artifact is meant to be human-read. +- Generated notes should be linked from a home/index note immediately, or tagged `#generated/unlinked` for later triage. +- Empty notes and `{}` notes should be treated as failed pipeline output and alerted/deleted. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Completed.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Completed.md new file mode 100644 index 0000000..4e72829 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Completed.md @@ -0,0 +1,76 @@ +# Obsidian Cleanup Completed — 2026-05-19 + +Vault: `/home/will/lab/swarm/swarm-common/obsidian-vault/will/will-shared-zap` + +## What changed + +Deleted **17** high-confidence disposable/stub notes from the live vault: + +- Empty root notes: `2026-04-16.md`, `Systems.md` +- Empty voice-memo/e2e test notes under `Voice Memos/` +- `{}` Evening Digest stubs under `Notes/` +- `Clippings/2026-05-13-example-domain.md` +- Disposable append-test notes under `Hermes Disposable Tests/` +- `Voice Memos/2026-05-13-final-pipeline-test.md` + +A backup of the removed files was moved outside the vault so Obsidian will not index the junk again: + +`/home/will/.hermes/backups/obsidian-cleanup/obsidian-cleanup-20260519-102137/` + +## Link/index repairs + +Created lightweight index/redirect notes for links that appeared to be real, so existing notes and automations can keep resolving paths without changing workflow logic: + +- `Inbox/Inbox Home.md` +- `Inbox/Triage.md` +- `Inbox/Chat Summaries.md` +- `Daily/Reviews.md` +- `Diary/Entries.md` +- `Diary/Weekly Reviews.md` +- `Diary/Atlas Reflections.md` +- `Infrastructure/Automation/n8n Morning Brief.md` +- `Infrastructure/Automation/n8n Evening Digest.md` +- `Atlas/Safer Autonomy and Permission Tiers.md` +- `Atlas/Gateway Approval Runbook.md` +- `Atlas/Skill Inventory.md` +- `Atlas/Skill Backlog.md` +- `Vault Conventions.md` +- `Areas/Systems.md` +- `Areas/Health.md` +- `Areas/Finance.md` +- `Areas/Home.md` +- `Areas/Learning.md` +- `Areas/Health and Medical Leave.md` +- `Areas/Legal.md` +- `People/Roxanne.md` +- `People/Liam.md` +- `People/Mila.md` +- `People/Family in France.md` +- `Projects/Hermes Atlas Personal Assistant.md` + +Moved `Weekend Activity Ideas.md` content to `Resources/Weekend Activity Ideas.md` and left a root redirect note behind. + +## Automation safety checks + +- Obsidian Local REST API root: OK +- Obsidian OpenAPI schema endpoint: OK +- n8n container: `n8n-agent`, version `2.11.3` +- n8n health via published local port `127.0.0.1:18808/healthz`: OK +- n8n container state: running/healthy + +I did **not** modify n8n workflows or automation configs. + +Existing n8n logs contain a pre-existing Python task runner warning because Python 3 is missing inside the n8n image; this is unrelated to the vault cleanup and the container still reports healthy. + +## Post-cleanup scan + +- Empty notes: 0 +- `{}` stub notes: 0 +- Disposable test notes matching the cleanup patterns: 0 +- Remaining unresolved links: 12, all apparently intentional examples/template placeholders: + - `Conventions.md`: `Note A`, `Note B`, `wikilinks` + - `Templates/Atlas Artifacts/*`: `{{project}}`, `artifact-name` + +## Notes + +I intentionally kept `Templates/Atlas Artifacts/test-report.md` because it appears to be a reusable template, not disposable test output. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Completion.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Completion.md new file mode 100644 index 0000000..74377be --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Reports/2026-05-19 Obsidian Cleanup Completion.md @@ -0,0 +1,52 @@ +# Obsidian Cleanup Completion — 2026-05-19 + +Vault: `/home/will/lab/swarm/swarm-common/obsidian-vault/will/will-shared-zap` +Backup: `/home/will/.hermes/backups/obsidian-cleanup/obsidian-cleanup-20260519-103400` + +## Deleted high-confidence junk +- None + +## Skipped +- `2026-04-16.md` — missing +- `Systems.md` — missing +- `Voice Memos/2026-05-13-e2e-test-full-pipeline.md` — missing +- `Voice Memos/2026-05-13-e2e-test-fixed-auth.md` — missing +- `Voice Memos/2026-05-13-e2e-test-retry-auth.md` — missing +- `Voice Memos/2026-05-13-e2e-auth-fixed.md` — missing +- `Voice Memos/2026-05-13-final-e2e-test.md` — missing +- `Notes/2026-05-13 Evening Digest.md` — missing +- `Notes/2026-05-14 Evening Digest.md` — missing +- `Notes/2026-05-15 Evening Digest.md` — missing +- `Notes/2026-05-17 Evening Digest.md` — missing +- `Clippings/2026-05-13-example-domain.md` — missing +- `Hermes Disposable Tests/append-note-created-by-append-20260515-101031.md` — missing +- `Hermes Disposable Tests/append-note-fixed-20260515-101031.md` — missing +- `Hermes Disposable Tests/append-note-semantics-20260515-100757.md` — missing +- `Hermes Disposable Tests/raw-append-op-20260515-100823.md` — missing +- `Voice Memos/2026-05-13-final-pipeline-test.md` — missing + +## Automation reference scan +Searched `~/lab/swarm`, `~/.hermes/scripts`, and `~/.hermes/cron` for exact path/name/stem references, skipping dependencies/caches/credentials. References below are safety notes; deleted items were empty/stub/disposable test artifacts. + +- No automation/source references found for deleted files. + +## Post-cleanup scan +- Markdown notes: 149 as of verification rerun after this completion report was created +- Empty notes remaining: 0 +- `{}` stub notes remaining: 0 +- Disposable/e2e/test-pattern notes remaining: 0 +- Unresolved wikilinks remaining: 5, all harmless example/template placeholders: + - `Conventions.md`: `Note A`, `Note B`, `wikilinks` x2 + - `Templates/Atlas Artifacts/status-report.md`: `artifact-name` + +## Automation health verification +- Active Obsidian vault confirmed from `~/.config/obsidian/obsidian.json`. +- Obsidian Local REST API health: OK (`http://127.0.0.1:27123/`). +- Obsidian OpenAPI endpoint: OK (`http://127.0.0.1:27123/openapi.yaml`). +- n8n container `n8n-agent`: running and Docker-health `healthy`. +- n8n published health endpoint: OK (`http://127.0.0.1:18808/healthz`). + +## Next safe follow-ups +- Decide whether nightly vault sync daily notes should be archived or compressed into one automation changelog. +- Keep `Templates/Atlas Artifacts/test-report.md`; it appears to be a reusable template, not junk. +- Git commit should be handled as a targeted pass because the vault currently has unrelated Obsidian plugin/config/runtime churn. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Safer Autonomy and Permission Tiers.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Safer Autonomy and Permission Tiers.md new file mode 100644 index 0000000..1a772b5 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Safer Autonomy and Permission Tiers.md @@ -0,0 +1,3 @@ +# Safer Autonomy and Permission Tiers + +Redirect/index note. Canonical project context: [[Projects/Atlas/Safer Autonomy and Permission Tiers]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Skill Backlog.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Skill Backlog.md new file mode 100644 index 0000000..35cf9e2 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Skill Backlog.md @@ -0,0 +1,3 @@ +# Skill Backlog + +Redirect/index note. Canonical note: [[Projects/Atlas/Skill Backlog]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Skill Inventory.md b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Skill Inventory.md new file mode 100644 index 0000000..b563184 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Atlas/Skill Inventory.md @@ -0,0 +1,3 @@ +# Skill Inventory + +Redirect/index note. Canonical note: [[Projects/Atlas/Skill Inventory]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-16.md b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-16.md index 1d2f88b..441d35b 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-16.md +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-16.md @@ -17,16 +17,17 @@ tags: ## Diary: 3-line pressure valve -Today: -Feeling: -Need: +Today: I woke up a little lazy and tired. Roxanne and I went to bed lat around 2am. Roxanne will spend mnost of the day baking a cake for her sister's birthday on Sunday. Roxanne will spend the night at her mom's tonight. +Feeling: a little anxious +Need: get out, walk a bunch and get some sun. Next: If I have more words: - What helped? - What drained me? -- What am I avoiding? +- What am I avoiding? Monday's tasks - One thing I do not want to forget: + ## Tasks - [ ] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-17.md b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-17.md new file mode 100644 index 0000000..2595ed4 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-17.md @@ -0,0 +1,41 @@ +--- +type: daily +date: 2026-05-17 +tags: + - type/daily +--- + +# 2026-05-17 + +## Focus + +- + +## Log + +- + +## Diary: 3-line pressure valve + +Today: I had a good night sleep, I went to bed around 12:00am, woke up around 8:00am but I slept in until around 10:00am. Roxanne spent the night at her mom's to be with her sister and cousin Sophia; they will both come around 3:00pm to the nest and we'll drive to Anacortes to bring Sophia back home. I'll ride with them as I don't like the idea of Roxanne driving alone on long distance. Later: we went to Anacortes and brought Sophia back home. Now it's massage time for Roxy and relax. +Feeling: I feel ok, a little too high cause of green (it's 1:32pm). Ready to wind down. +Need: Rest, closeness, and a soft landing after the drive. +Next: Relax with Roxy tonight. Tomorrow is a big day, lots of things to do and not fun at all. + +If I have more words: +- What helped? +- What drained me? +- What am I avoiding? +- One thing I do not want to forget: + +## Tasks + +- [ ] + +## Captures + +- + +## Links + +- [[Ops Home]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-18.md b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-18.md new file mode 100644 index 0000000..44f959b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/2026-05-18.md @@ -0,0 +1,46 @@ +--- +type: daily +date: 2026-05-18 +tags: + - type/daily +--- + +# 2026-05-18 + +## Focus + +- + +## Log + +- Roxy woke up around 1:30pm. +- Roxy was planning her birthday next weekend. +- I realized her presents were an asset for the hotel stay downtown. +- Later in the afternoon we went to Nordstrom to change the size and replace one dress. +- We walked round trip. + +## Diary: 3-line pressure valve + +Today: Roxy woke up around 1:30pm. She was planning her birthday next weekend, and I realized her presents were part of making the downtown hotel stay feel special. Later we went to Nordstrom to exchange sizes and replace one dress, and walked there and back. +Feeling: Present with Roxy; a little practical/logistical, but in a good way. +Need: Keep birthday planning simple and focused on making the weekend feel cared-for, not perfect. +Next: Keep track of what still needs to be ready for the downtown stay. + +If I have more words: +- What helped? Walking together and getting the dress/present logistics handled. +- What drained me? The planning/details could become a lot if they pile up. +- What am I avoiding? +- One thing I do not want to forget: The presents are not just objects; they support the birthday/hotel experience. + +## Tasks + +- [ ] + +## Captures + +- + +## Links + +- [[Ops Home]] +- [[Diary/Diary Home]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Daily Notes Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Daily Notes Home.md new file mode 100644 index 0000000..6fe90c6 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Daily Notes Home.md @@ -0,0 +1,7 @@ +# Daily Notes + +Daily notes are the working scratchpad and command center. + +Use them for focus, logs, quick captures, temporary tasks, and links to meetings/projects/decisions created that day. + +Configured daily note template: [[Daily Note]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews.md b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews.md new file mode 100644 index 0000000..1c80083 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews.md @@ -0,0 +1,3 @@ +# Daily Reviews + +Index for generated daily review notes. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-15 Daily Review.md b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-15 Daily Review.md new file mode 100644 index 0000000..987a534 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-15 Daily Review.md @@ -0,0 +1,34 @@ +--- +type: daily-review +date: 2026-05-15 +tags: [type/daily-review, automation/n8n] +--- + +# Daily Review 2026-05-15 + +## Top priorities + +- [ ] +- [ ] +- [ ] + +## Inbox sweep + +- [ ] Review [[Inbox]] +- [ ] Promote useful captures into [[Projects Home]], [[Resources Home]], [[Decisions Home]], or [[Runbooks Home]] + +## Open loops + +- [ ] Check [[Projects Home]] +- [ ] Check [[Meetings Home]] action items +- [ ] Check [[Runbooks Home]] for procedures that need updates + +## Notes / log + +- + +## End-of-day reflection + +- What moved forward? +- What is blocked? +- What should start tomorrow? diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-17 Daily Review.md b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-17 Daily Review.md new file mode 100644 index 0000000..da322cf --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-17 Daily Review.md @@ -0,0 +1,34 @@ +--- +type: daily-review +date: 2026-05-17 +tags: [type/daily-review, automation/n8n] +--- + +# Daily Review 2026-05-17 + +## Top priorities + +- [ ] +- [ ] +- [ ] + +## Inbox sweep + +- [ ] Review [[Inbox]] +- [ ] Promote useful captures into [[Projects Home]], [[Resources Home]], [[Decisions Home]], or [[Runbooks Home]] + +## Open loops + +- [ ] Check [[Projects Home]] +- [ ] Check [[Meetings Home]] action items +- [ ] Check [[Runbooks Home]] for procedures that need updates + +## Notes / log + +- + +## End-of-day reflection + +- What moved forward? +- What is blocked? +- What should start tomorrow? diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-18 Daily Review.md b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-18 Daily Review.md new file mode 100644 index 0000000..b4d6320 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-18 Daily Review.md @@ -0,0 +1,34 @@ +--- +type: daily-review +date: 2026-05-18 +tags: [type/daily-review, automation/n8n] +--- + +# Daily Review 2026-05-18 + +## Top priorities + +- [ ] +- [ ] +- [ ] + +## Inbox sweep + +- [ ] Review [[Inbox]] +- [ ] Promote useful captures into [[Projects Home]], [[Resources Home]], [[Decisions Home]], or [[Runbooks Home]] + +## Open loops + +- [ ] Check [[Projects Home]] +- [ ] Check [[Meetings Home]] action items +- [ ] Check [[Runbooks Home]] for procedures that need updates + +## Notes / log + +- + +## End-of-day reflection + +- What moved forward? +- What is blocked? +- What should start tomorrow? diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-20 Daily Review.md b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-20 Daily Review.md new file mode 100644 index 0000000..21cb1ed --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Daily/Reviews/2026-05-20 Daily Review.md @@ -0,0 +1,34 @@ +--- +type: daily-review +date: 2026-05-20 +tags: [type/daily-review, automation/n8n] +--- + +# Daily Review 2026-05-20 + +## Top priorities + +- [ ] +- [ ] +- [ ] + +## Inbox sweep + +- [ ] Review [[Inbox]] +- [ ] Promote useful captures into [[Projects Home]], [[Resources Home]], [[Decisions Home]], or [[Runbooks Home]] + +## Open loops + +- [ ] Check [[Projects Home]] +- [ ] Check [[Meetings Home]] action items +- [ ] Check [[Runbooks Home]] for procedures that need updates + +## Notes / log + +- + +## End-of-day reflection + +- What moved forward? +- What is blocked? +- What should start tomorrow? diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Decisions/Decisions Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Decisions/Decisions Home.md new file mode 100644 index 0000000..69127cc --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Decisions/Decisions Home.md @@ -0,0 +1,15 @@ +# Decisions Home + +Decision notes preserve context and rationale so future work does not re-litigate old choices. + +Create notes from [[Decision]]. + +## Recent decisions + +```dataview +TABLE date, status, project +FROM "Decisions" +WHERE type = "decision" +SORT date DESC +LIMIT 30 +``` diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Decisions/Runbook Suggestions.md b/swarm-common/obsidian-vault/will/will-shared-zap/Decisions/Runbook Suggestions.md new file mode 100644 index 0000000..7ac5934 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Decisions/Runbook Suggestions.md @@ -0,0 +1,21 @@ +# Decision / Runbook Suggestions 2026-05-18 + +Generated: 2026-05-18T15:29:06.051Z + +Review candidates and promote useful items into durable Decision or Runbook notes. This note is overwritten weekly. + +## Decision Candidates + +_No candidates found._ + + +## Runbook Candidates + +_No candidates found._ + + +## Raw Summary + +- Total candidates: 0 +- Decision candidates: 0 +- Runbook candidates: 0 diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Diary/Atlas Reflections.md b/swarm-common/obsidian-vault/will/will-shared-zap/Diary/Atlas Reflections.md new file mode 100644 index 0000000..9cacf8a --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Diary/Atlas Reflections.md @@ -0,0 +1,3 @@ +# Atlas Reflections + +Index note for assistant-generated reflection drafts and patterns worth reviewing. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Diary/Entries.md b/swarm-common/obsidian-vault/will/will-shared-zap/Diary/Entries.md new file mode 100644 index 0000000..841743e --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Diary/Entries.md @@ -0,0 +1,5 @@ +# Diary Entries + +Index note for diary entry folders/files. + +Use this as a landing page; entries can remain as dated notes. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Diary/Weekly Reviews.md b/swarm-common/obsidian-vault/will/will-shared-zap/Diary/Weekly Reviews.md new file mode 100644 index 0000000..4a05cef --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Diary/Weekly Reviews.md @@ -0,0 +1,3 @@ +# Diary Weekly Reviews + +Index note for weekly diary reviews. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Chat Summaries.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Chat Summaries.md new file mode 100644 index 0000000..311eea5 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Chat Summaries.md @@ -0,0 +1,3 @@ +# Chat Summaries + +Index for generated chat summary captures. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Chat Summaries/2026-05-14 - Atlas Event-Driven Automation Smoke.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Chat Summaries/2026-05-14 - Atlas Event-Driven Automation Smoke.md new file mode 100644 index 0000000..80a7a31 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Chat Summaries/2026-05-14 - Atlas Event-Driven Automation Smoke.md @@ -0,0 +1,23 @@ +--- +title: "Atlas Event-Driven Automation Smoke" +type: "transcript" +source: "webhook" +created: "2026-05-14T23:50:12.631Z" +tags: ["automation/n8n","chat-summary","transcript","atlas","smoke-test"] +--- + +# Atlas Event-Driven Automation Smoke + +## Summary + +Smoke test created by Workstream 6 implementation to verify local transcript capture path. + +## Notes + +This is a short synthetic transcript smoke test. No private content. + +## Metadata + +```json +{} +``` diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Inbox Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Inbox Home.md new file mode 100644 index 0000000..153aad2 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Inbox Home.md @@ -0,0 +1,9 @@ +# Inbox Home + +Front door for raw captures, chat summaries, triage notes, and generated automation output. + +## Key areas + +- [[Inbox/Triage]] +- [[Inbox/Chat Summaries]] +- [[Daily/Reviews]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Inbox.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Inbox.md new file mode 100644 index 0000000..5016849 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Inbox.md @@ -0,0 +1,8 @@ +# Inbox + +Quick capture zone. Process these notes during weekly review: + +1. Delete junk. +2. Move actionable work to projects/tasks. +3. Promote durable knowledge to resources, runbooks, or decisions. +4. Archive stale items. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage.md new file mode 100644 index 0000000..c7c5a6b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage.md @@ -0,0 +1,3 @@ +# Inbox Triage + +Index for generated triage notes in [[Inbox/Triage]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-15.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-15.md new file mode 100644 index 0000000..a3b0d6f --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-15.md @@ -0,0 +1,28 @@ +# Inbox Triage 2026-05-15 + +Generated: 2026-05-15T01:00:00.070Z + +## Inbox items + +- [ ] [[Inbox]] — classify as Project / Resource / Decision / Runbook / Archive +- [ ] [[Weekly Review]] — classify as Project / Resource / Decision / Runbook / Archive + +## Promote to Projects + +- [ ] + +## Promote to Resources + +- [ ] + +## Promote to Decisions + +- [ ] + +## Promote to Runbooks + +- [ ] + +## Archive / Delete / Defer + +- [ ] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-16.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-16.md new file mode 100644 index 0000000..06111c9 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-16.md @@ -0,0 +1,28 @@ +# Inbox Triage 2026-05-16 + +Generated: 2026-05-16T01:00:38.015Z + +## Inbox items + +- [ ] [[Inbox]] — classify as Project / Resource / Decision / Runbook / Archive +- [ ] [[Weekly Review]] — classify as Project / Resource / Decision / Runbook / Archive + +## Promote to Projects + +- [ ] + +## Promote to Resources + +- [ ] + +## Promote to Decisions + +- [ ] + +## Promote to Runbooks + +- [ ] + +## Archive / Delete / Defer + +- [ ] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-17.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-17.md new file mode 100644 index 0000000..fbfc9ac --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-17.md @@ -0,0 +1,28 @@ +# Inbox Triage 2026-05-17 + +Generated: 2026-05-17T01:09:48.651Z + +## Inbox items + +- [ ] [[Inbox]] — classify as Project / Resource / Decision / Runbook / Archive +- [ ] [[Weekly Review]] — classify as Project / Resource / Decision / Runbook / Archive + +## Promote to Projects + +- [ ] + +## Promote to Resources + +- [ ] + +## Promote to Decisions + +- [ ] + +## Promote to Runbooks + +- [ ] + +## Archive / Delete / Defer + +- [ ] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-18.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-18.md new file mode 100644 index 0000000..b65b721 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-18.md @@ -0,0 +1,28 @@ +# Inbox Triage 2026-05-18 + +Generated: 2026-05-18T01:00:00.088Z + +## Inbox items + +- [ ] [[Inbox]] — classify as Project / Resource / Decision / Runbook / Archive +- [ ] [[Weekly Review]] — classify as Project / Resource / Decision / Runbook / Archive + +## Promote to Projects + +- [ ] + +## Promote to Resources + +- [ ] + +## Promote to Decisions + +- [ ] + +## Promote to Runbooks + +- [ ] + +## Archive / Delete / Defer + +- [ ] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-19.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-19.md new file mode 100644 index 0000000..fb6299b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-19.md @@ -0,0 +1,28 @@ +# Inbox Triage 2026-05-19 + +Generated: 2026-05-19T01:00:00.036Z + +## Inbox items + +- [ ] [[Inbox]] — classify as Project / Resource / Decision / Runbook / Archive +- [ ] [[Weekly Review]] — classify as Project / Resource / Decision / Runbook / Archive + +## Promote to Projects + +- [ ] + +## Promote to Resources + +- [ ] + +## Promote to Decisions + +- [ ] + +## Promote to Runbooks + +- [ ] + +## Archive / Delete / Defer + +- [ ] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-20.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-20.md new file mode 100644 index 0000000..63fecb4 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Triage/2026-05-20.md @@ -0,0 +1,30 @@ +# Inbox Triage 2026-05-20 + +Generated: 2026-05-20T01:00:00.151Z + +## Inbox items + +- [ ] [[Chat Summaries]] — classify as Project / Resource / Decision / Runbook / Archive +- [ ] [[Inbox Home]] — classify as Project / Resource / Decision / Runbook / Archive +- [ ] [[Inbox]] — classify as Project / Resource / Decision / Runbook / Archive +- [ ] [[Weekly Review]] — classify as Project / Resource / Decision / Runbook / Archive + +## Promote to Projects + +- [ ] + +## Promote to Resources + +- [ ] + +## Promote to Decisions + +- [ ] + +## Promote to Runbooks + +- [ ] + +## Archive / Delete / Defer + +- [ ] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Weekly Review.md b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Weekly Review.md new file mode 100644 index 0000000..6b648e2 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Inbox/Weekly Review.md @@ -0,0 +1,27 @@ +# Weekly Review + +Use this once per week to keep the vault useful. + +## Inbox + +- [ ] Process [[Inbox]] +- [ ] Delete junk notes +- [ ] Move durable notes to the right folder + +## Projects + +- [ ] Update active project notes +- [ ] Archive inactive projects +- [ ] Move important choices to [[Decisions Home]] + +## Tasks + +- [ ] Clear stale tasks +- [ ] Move project tasks into project notes +- [ ] Confirm next actions are explicit + +## Knowledge + +- [ ] Convert repeated procedures into [[Runbooks Home]] +- [ ] Link related notes together +- [ ] Add missing context to notes that only make sense “right now” diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Automation Flow.canvas b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Automation Flow.canvas index 9e26dfe..4f97705 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Automation Flow.canvas +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Automation Flow.canvas @@ -1 +1,27 @@ -{} \ No newline at end of file +{ + "nodes":[ + {"id":"title","type":"text","x":60,"y":30,"width":760,"height":90,"text":"Automation Flow\n\nHow messages, scheduled work, local services, and durable notes move through the system.","color":"6"}, + {"id":"inputs","type":"text","x":90,"y":210,"width":240,"height":190,"text":"1 · Inputs\n\nTelegram\nDiscord\nEmail\nWebhooks\nManual Obsidian notes","color":"2"}, + {"id":"routing","type":"text","x":430,"y":210,"width":260,"height":190,"text":"2 · Gateway routing\n\nAllowlists\nTopics / sessions\nHome channel delivery\nPlatform adapters","color":"5"}, + {"id":"atlas","type":"text","x":790,"y":210,"width":250,"height":190,"text":"3 · Atlas decides\n\nTool calls\nSubagents\nKanban boards\nCron jobs","color":"5"}, + {"id":"services","type":"text","x":1150,"y":140,"width":270,"height":190,"text":"4 · Execute\n\nSearch / web extract\nLocal LLM / embeddings\nWhisper / Kokoro\nn8n workflows","color":"3"}, + {"id":"knowledge","type":"text","x":1150,"y":430,"width":270,"height":190,"text":"5 · Capture knowledge\n\nObsidian vault\nDaily research archive\nRunbooks\nPersonal context notes","color":"6"}, + {"id":"delivery","type":"text","x":1510,"y":250,"width":260,"height":190,"text":"6 · Deliver result\n\nTelegram / Discord\nEmail\nFiles / media\nFollow-up reminders","color":"4"}, + {"id":"backups","type":"text","x":790,"y":520,"width":250,"height":170,"text":"Safety loop\n\nGit commits\nMinIO backups\nReview handoffs\nHealth watchdogs","color":"6"} + ], + "edges":[ + {"id":"e1","fromNode":"inputs","toNode":"routing","label":"events","fromSide":"right","toSide":"left"}, + {"id":"e2","fromNode":"routing","toNode":"atlas","label":"normalized message","fromSide":"right","toSide":"left"}, + {"id":"e3","fromNode":"atlas","toNode":"services","label":"tool calls","fromSide":"right","toSide":"left"}, + {"id":"e4","fromNode":"services","toNode":"knowledge","label":"write / index","fromSide":"bottom","toSide":"top","color":"6"}, + {"id":"e5","fromNode":"knowledge","toNode":"atlas","label":"context","fromSide":"left","toSide":"bottom","color":"6"}, + {"id":"e6","fromNode":"atlas","toNode":"delivery","label":"final response","fromSide":"right","toSide":"left"}, + {"id":"e7","fromNode":"atlas","toNode":"backups","label":"safe ops","fromSide":"bottom","toSide":"top"}, + {"id":"e8","fromNode":"backups","toNode":"knowledge","label":"archives","fromSide":"right","toSide":"left","color":"6"}, + {"id":"e9","fromNode":"services","toNode":"delivery","label":"media / artifacts","fromSide":"right","toSide":"left"} + ], + "metadata":{ + "version":"1.0-1.0", + "frontmatter":{} + } +} \ No newline at end of file diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Automation Flow.md b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Automation Flow.md index c1cca92..907f0c8 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Automation Flow.md +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Automation Flow.md @@ -3,7 +3,7 @@ title: Architecture - Automation Flow area: infrastructure tags: [infrastructure, architecture, diagrams, automation] created: 2026-04-16 -updated: 2026-04-16 +updated: 2026-05-19 status: active related: [[Infrastructure/Architecture]], [[Infrastructure/Architecture - Overview]], [[Infrastructure/Architecture - Service Topology]], [[Infrastructure/Automation/Cron Jobs]], [[Infrastructure/Automation/n8n Workflows]] --- diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Master.canvas b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Master.canvas index 6538272..bbe981c 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Master.canvas +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Master.canvas @@ -1,25 +1,49 @@ { "nodes":[ - {"id":"title","type":"text","x":80,"y":30,"width":620,"height":90,"text":"Infrastructure Architecture - Master View\n\nVisual overview of Will's assistant stack, control plane, service layer, storage, and external integrations"}, - {"id":"group-left","type":"text","x":60,"y":150,"width":620,"height":520,"text":"","color":"4"}, - {"id":"group-center","type":"text","x":720,"y":150,"width":720,"height":520,"text":"","color":"5"}, - {"id":"group-right","type":"text","x":1480,"y":150,"width":360,"height":520,"text":"","color":"1"}, - {"id":"human","type":"text","x":100,"y":200,"width":220,"height":110,"text":"Will\n\nHuman operator\nDiscord, Telegram, Obsidian","color":"4"}, - {"id":"channels","type":"text","x":380,"y":190,"width":240,"height":130,"text":"Interaction channels\n\nDiscord\nTelegram\nWeb chat","color":"2"}, - {"id":"guide","type":"text","x":100,"y":390,"width":520,"height":210,"text":"Reading guide\n\nLeft: people and entry points\nCenter: assistant control plane and local capabilities\nRight: external systems and deployment targets\nBottom-center: storage and durable state","color":"4"}, - {"id":"vm","type":"text","x":780,"y":190,"width":260,"height":170,"text":"OpenClaw VM\n\nRuntime\nSession routing\nMemory search\nCron\nWorkspace scripts","color":"5"}, - {"id":"host","type":"text","x":1080,"y":170,"width":300,"height":240,"text":"Host services\n192.168.153.130\n\nSearXNG 18803\nBrave MCP 18802\nn8n-agent 18808\nwhisper.cpp 18801\nKokoro 18805\nOllama 18807\nllama.cpp Gemma 18806\nObsidian API 27123","color":"3"}, - {"id":"storage","type":"text","x":880,"y":470,"width":500,"height":150,"text":"Storage and durable state\n\nMinIO 192.168.153.253:9000 | Bucket: zap | Gitea: will/swarm-zap.git\nShared Obsidian vault: will/will-shared-zap","color":"6"}, - {"id":"external","type":"text","x":1520,"y":200,"width":280,"height":170,"text":"External systems\n\nGoogle Workspace\nInternet services\nDiscord network\nTelegram network\nTailscale","color":"1"}, - {"id":"k8s","type":"text","x":1520,"y":450,"width":280,"height":120,"text":"Kubernetes\n\nPi cluster\nNamespace: swarm","color":"0"} + {"id":"0a5409bdb505067b","type":"group","x":820,"y":280,"width":300,"height":300,"label":"Untitled group"}, + {"id":"16e9f708e63157fa","type":"group","x":820,"y":280,"width":300,"height":300,"label":"Untitled group"}, + {"id":"9f5a54b712c63995","type":"group","x":820,"y":280,"width":300,"height":300,"label":"Untitled group"}, + {"id":"397aa2f063497963","type":"group","x":820,"y":280,"width":300,"height":300,"label":"Untitled group"}, + {"id":"title","type":"text","text":"Atlas / Hermes Infrastructure — Master View\n\nProduction gateway, specialist agents, local AI services, automations, storage, and external integrations.","x":60,"y":20,"width":760,"height":100,"color":"6"}, + {"id":"legend","type":"text","text":"Legend\n🟨 People / channels\n🟩 Agent control plane\n🟦 Local services\n🟪 Knowledge + storage\n🟥 External networks\n⬜ Deployment targets","x":1500,"y":20,"width":330,"height":210,"color":"0"}, + {"id":"group-entry","type":"text","text":"ENTRY POINTS","x":60,"y":160,"width":560,"height":470,"color":"4"}, + {"id":"will","type":"text","text":"👤 Will\n\nTelegram DM/groups\nDiscord ops alerts\nObsidian workspace","x":100,"y":230,"width":220,"height":150,"color":"4"}, + {"id":"channels","type":"text","text":"💬 Messaging Gateway\n\nTelegram\nDiscord\nEmail\nWebhook/API","x":360,"y":230,"width":220,"height":150,"color":"2"}, + {"id":"obsidian-ui","type":"text","text":"📝 Obsidian UI\n\nShared vault\nManual notes\nDaily research archive","x":230,"y":450,"width":260,"height":130,"color":"6"}, + {"id":"group-core","type":"text","text":"ATLAS CONTROL PLANE","x":680,"y":160,"width":560,"height":470,"color":"5"}, + {"id":"default","type":"text","text":"🧠 default / Atlas\n\ngpt-5.5 primary\nProduction gateway running\nMemory + skills + tools","x":720,"y":230,"width":240,"height":170,"color":"5"}, + {"id":"specialists","type":"text","text":"🤖 Specialist profiles\n\nresearcher · writer\nengineer · reviewer\nops · orchestrator\nglm-simple","x":990,"y":230,"width":220,"height":170,"color":"5"}, + {"id":"kanban","type":"text","text":"📋 Durable work queue\n\nKanban boards\nReview handoffs\nWorker dispatch","x":840,"y":460,"width":260,"height":130,"color":"5"}, + {"id":"group-services","type":"text","text":"LOCAL SERVICE LAYER","x":1300,"y":270,"width":560,"height":420,"color":"3"}, + {"id":"retrieval","type":"text","text":"🔎 Retrieval\n\nSearXNG :18803\nBrave MCP :18802\nOllama embeddings :18807","x":1340,"y":340,"width":230,"height":150,"color":"3"}, + {"id":"local-ai","type":"text","text":"🦙 Local AI + Voice\n\nllama.cpp :18806\nWhisper :18801\nKokoro :18805","x":1600,"y":340,"width":220,"height":150,"color":"3"}, + {"id":"automation","type":"text","text":"⚙️ Automation\n\nn8n :18808\nCron jobs\nWebhook triggers","x":1470,"y":530,"width":230,"height":130,"color":"3"}, + {"id":"group-state","type":"text","text":"KNOWLEDGE, REPOS, BACKUPS","x":680,"y":720,"width":800,"height":250,"color":"6"}, + {"id":"vault","type":"text","text":"📚 Obsidian vault\n\nwill-shared-zap\nPersonal context\nResearch briefs\nRunbooks","x":720,"y":790,"width":220,"height":140,"color":"6"}, + {"id":"minio","type":"text","text":"🪣 MinIO / S3\n\natlas bucket\nBackups + artifacts\nRetention cleanup","x":990,"y":790,"width":220,"height":140,"color":"6"}, + {"id":"gitea","type":"text","text":"🌿 Gitea / Git\n\nHermes source mirror\nConfig/history\nProject repos","x":1260,"y":790,"width":180,"height":140,"color":"6"}, + {"id":"external","type":"text","text":"🌐 External systems\n\nGoogle Workspace\nInternet APIs\nTailscale\nTelegram/Discord networks","x":1500,"y":760,"width":300,"height":170,"color":"1"}, + {"id":"k8s","type":"text","text":"☸️ Pi Kubernetes\n\nnamespace: swarm\nFuture/target runtime","x":100,"y":760,"width":280,"height":130,"color":"0"} ], "edges":[ - {"id":"e1","fromNode":"human","toNode":"channels","label":"uses","fromSide":"right","toSide":"left"}, - {"id":"e2","fromNode":"channels","toNode":"vm","label":"messages","fromSide":"right","toSide":"left"}, - {"id":"e3","fromNode":"vm","toNode":"host","label":"local services","fromSide":"right","toSide":"left"}, - {"id":"e4","fromNode":"vm","toNode":"storage","label":"writes state","fromSide":"bottom","toSide":"top"}, - {"id":"e5","fromNode":"vm","toNode":"external","label":"APIs and networks","fromSide":"right","toSide":"left"}, - {"id":"e6","fromNode":"vm","toNode":"k8s","label":"deploy target","fromSide":"right","toSide":"left"}, - {"id":"e7","fromNode":"host","toNode":"storage","label":"vault and backups","fromSide":"bottom","toSide":"top"} - ] + {"id":"e1","fromNode":"will","fromSide":"right","toNode":"channels","toSide":"left","label":"uses"}, + {"id":"e2","fromNode":"channels","fromSide":"right","toNode":"default","toSide":"left","label":"messages"}, + {"id":"e3","fromNode":"obsidian-ui","fromSide":"right","toNode":"vault","toSide":"left","color":"6","label":"edits"}, + {"id":"e4","fromNode":"default","fromSide":"right","toNode":"specialists","toSide":"left","label":"delegates"}, + {"id":"e5","fromNode":"default","fromSide":"bottom","toNode":"kanban","toSide":"top","label":"creates / monitors"}, + {"id":"e6","fromNode":"kanban","fromSide":"top","toNode":"specialists","toSide":"bottom","label":"dispatches"}, + {"id":"e7","fromNode":"default","fromSide":"right","toNode":"retrieval","toSide":"left","label":"searches"}, + {"id":"e8","fromNode":"default","fromSide":"right","toNode":"local-ai","toSide":"left","label":"generates / transcribes"}, + {"id":"e9","fromNode":"default","fromSide":"right","toNode":"automation","toSide":"left","label":"triggers"}, + {"id":"e10","fromNode":"default","fromSide":"bottom","toNode":"vault","toSide":"top","color":"6","label":"reads/writes"}, + {"id":"e11","fromNode":"automation","fromSide":"bottom","toNode":"vault","toSide":"right","color":"6","label":"syncs notes"}, + {"id":"e12","fromNode":"default","fromSide":"right","toNode":"external","toSide":"left","label":"APIs / gateways"}, + {"id":"e13","fromNode":"default","fromSide":"bottom","toNode":"minio","toSide":"top","label":"backups"}, + {"id":"e14","fromNode":"default","fromSide":"bottom","toNode":"gitea","toSide":"top","label":"commits / mirrors"}, + {"id":"e15","fromNode":"default","fromSide":"left","toNode":"k8s","toSide":"right","label":"deploy target"} + ], + "metadata":{ + "version":"1.0-1.0", + "frontmatter":{} + } } \ No newline at end of file diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Overview.canvas b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Overview.canvas index c011b2e..8885175 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Overview.canvas +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Overview.canvas @@ -1,18 +1,26 @@ { "nodes":[ - {"id":"n1","type":"text","x":80,"y":80,"width":220,"height":100,"text":"Will\n\nHuman operator\nUses Discord, Telegram, Obsidian"}, - {"id":"n2","type":"text","x":420,"y":60,"width":260,"height":120,"text":"OpenClaw VM\n\nRuntime\nWorkspace memory\nScripts\nSessions"}, - {"id":"n3","type":"text","x":780,"y":40,"width":300,"height":220,"text":"Host services\n192.168.153.130\n\nSearXNG :18803\nBrave MCP :18802\nn8n-agent :18808\nwhisper.cpp :18801\nKokoro :18805\nOllama :18807\nllama.cpp Gemma :18806\nObsidian API :27123"}, - {"id":"n4","type":"text","x":1130,"y":80,"width":240,"height":100,"text":"External services\n\nGoogle Workspace\nInternet services\nDiscord\nTelegram"}, - {"id":"n5","type":"text","x":760,"y":340,"width":260,"height":120,"text":"Storage and infra\n\nMinIO 192.168.153.253:9000\nGitea over Tailscale\nPi Kubernetes cluster\nnamespace: swarm"}, - {"id":"n6","type":"text","x":1080,"y":340,"width":240,"height":100,"text":"Shared knowledge layer\n\nObsidian shared vault\nwill/will-shared-zap"} + {"id":"title","type":"text","x":60,"y":30,"width":650,"height":90,"text":"Architecture Overview\n\nA cleaner top-level map: who talks to Atlas, where work runs, and where durable state lives.","color":"6"}, + {"id":"will","type":"text","x":80,"y":190,"width":220,"height":130,"text":"👤 Will\n\nTelegram · Discord\nObsidian · Email","color":"4"}, + {"id":"gateway","type":"text","x":360,"y":170,"width":230,"height":160,"text":"📨 Gateway channels\n\nTelegram\nDiscord\nEmail\nWebhook/API","color":"2"}, + {"id":"atlas","type":"text","x":680,"y":160,"width":260,"height":180,"text":"🧠 Atlas default profile\n\nProduction gateway\ngpt-5.5 + GLM fallback\nTools · memory · skills","color":"5"}, + {"id":"agents","type":"text","x":680,"y":410,"width":260,"height":170,"text":"🤖 Specialist profiles\n\nresearcher · writer\nengineer · reviewer\nops · orchestrator\nglm-simple","color":"5"}, + {"id":"services","type":"text","x":1040,"y":150,"width":280,"height":210,"text":"🧰 Local services\n\nSearch · Brave MCP\nllama.cpp · Ollama\nWhisper · Kokoro\nn8n · Obsidian API","color":"3"}, + {"id":"state","type":"text","x":1040,"y":430,"width":280,"height":170,"text":"📚 Durable state\n\nObsidian vault\nGitea repos\nMinIO backups\nKanban boards","color":"6"}, + {"id":"external","type":"text","x":1420,"y":250,"width":280,"height":190,"text":"🌐 External systems\n\nGoogle Workspace\nInternet APIs\nTailscale\nTelegram/Discord networks","color":"1"} ], "edges":[ - {"id":"e1","fromNode":"n1","toNode":"n2","label":"interacts with","fromSide":"right","toSide":"left"}, - {"id":"e2","fromNode":"n2","toNode":"n3","label":"calls local services","fromSide":"right","toSide":"left"}, - {"id":"e3","fromNode":"n2","toNode":"n4","label":"connects to","fromSide":"right","toSide":"left"}, - {"id":"e4","fromNode":"n2","toNode":"n5","label":"backs up / deploys / syncs","fromSide":"bottom","toSide":"top"}, - {"id":"e5","fromNode":"n3","toNode":"n6","label":"Obsidian API serves","fromSide":"bottom","toSide":"top"}, - {"id":"e6","fromNode":"n1","toNode":"n6","label":"reads and edits","fromSide":"right","toSide":"left"} - ] + {"id":"e1","fromNode":"will","toNode":"gateway","label":"messages","fromSide":"right","toSide":"left"}, + {"id":"e2","fromNode":"gateway","toNode":"atlas","label":"routes","fromSide":"right","toSide":"left"}, + {"id":"e3","fromNode":"atlas","toNode":"agents","label":"delegates","fromSide":"bottom","toSide":"top"}, + {"id":"e4","fromNode":"atlas","toNode":"services","label":"calls","fromSide":"right","toSide":"left"}, + {"id":"e5","fromNode":"atlas","toNode":"state","label":"reads/writes","fromSide":"bottom","toSide":"top","color":"6"}, + {"id":"e6","fromNode":"services","toNode":"state","label":"indexes / syncs","fromSide":"bottom","toSide":"top","color":"6"}, + {"id":"e7","fromNode":"atlas","toNode":"external","label":"APIs","fromSide":"right","toSide":"left"}, + {"id":"e8","fromNode":"will","toNode":"state","label":"notes","fromSide":"bottom","toSide":"left","color":"6"} + ], + "metadata":{ + "version":"1.0-1.0", + "frontmatter":{} + } } \ No newline at end of file diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Overview.md b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Overview.md index 33ae0e6..a6e45a7 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Overview.md +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Overview.md @@ -3,7 +3,7 @@ title: Architecture - Overview area: infrastructure tags: [infrastructure, architecture, diagrams, overview] created: 2026-04-16 -updated: 2026-04-16 +updated: 2026-05-19 status: active related: [[Infrastructure/Architecture]], [[Infrastructure/Architecture - Service Topology]], [[Infrastructure/Architecture - Automation Flow]] --- diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Service Topology.canvas b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Service Topology.canvas index 225fa3f..4b7eda2 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Service Topology.canvas +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Service Topology.canvas @@ -1,17 +1,31 @@ { "nodes":[ - {"id":"n1","type":"text","x":80,"y":120,"width":220,"height":90,"text":"User sessions\nwebchat\nDiscord\nTelegram"}, - {"id":"n2","type":"text","x":360,"y":80,"width":260,"height":180,"text":"OpenClaw runtime\n\nMain runtime\nMemory search\nCron\nWorkspace scripts"}, - {"id":"n3","type":"text","x":700,"y":40,"width":240,"height":140,"text":"Search + retrieval\n\nSearXNG :18803\nBrave MCP :18802\nOllama embeddings :18807"}, - {"id":"n4","type":"text","x":700,"y":220,"width":240,"height":140,"text":"Execution services\n\nllama.cpp Gemma :18806\nn8n-agent :18808\nwhisper.cpp :18801\nKokoro :18805"}, - {"id":"n5","type":"text","x":1020,"y":60,"width":220,"height":100,"text":"Obsidian API\n:27123\nShared vault bridge"}, - {"id":"n6","type":"text","x":1020,"y":220,"width":240,"height":140,"text":"Persistence + targets\n\nMinIO bucket zap\nGitea repo\nPi cluster swarm ns"} + {"id":"title","type":"text","x":60,"y":30,"width":720,"height":90,"text":"Service Topology\n\nRuntime dependencies around Atlas: gateway → control plane → local capabilities → persistence.","color":"6"}, + {"id":"sessions","type":"text","x":80,"y":210,"width":230,"height":150,"text":"💬 User sessions\n\nTelegram\nDiscord\nEmail\nWebhook/API","color":"2"}, + {"id":"runtime","type":"text","x":410,"y":190,"width":260,"height":180,"text":"🧠 Atlas runtime\n\ndefault profile\nSession routing\nTool execution\nMemory + skills","color":"5"}, + {"id":"workers","type":"text","x":410,"y":450,"width":260,"height":150,"text":"🤖 Workers\n\nSpecialist profiles\nKanban dispatch\ndelegate_task children","color":"5"}, + {"id":"retrieval","type":"text","x":790,"y":110,"width":270,"height":180,"text":"🔎 Retrieval stack\n\nSearXNG :18803\nBrave MCP :18802\nOllama embeddings :18807\nRAG / session search","color":"3"}, + {"id":"inference","type":"text","x":790,"y":350,"width":270,"height":150,"text":"🦙 Inference + media\n\nllama.cpp :18806\nWhisper :18801\nKokoro :18805","color":"3"}, + {"id":"automation","type":"text","x":790,"y":560,"width":270,"height":150,"text":"⚙️ Automation\n\nn8n :18808\nHermes cron\nWebhook subscriptions","color":"3"}, + {"id":"obsidian","type":"text","x":1180,"y":170,"width":280,"height":180,"text":"📚 Obsidian layer\n\nLocal REST API :27123\nwill-shared-zap vault\nDaily research briefs","color":"6"}, + {"id":"repos","type":"text","x":1180,"y":440,"width":280,"height":170,"text":"🌿 Code + artifacts\n\nGitea repos\nHermes source mirror\nMinIO/S3 backups","color":"6"}, + {"id":"targets","type":"text","x":1540,"y":310,"width":260,"height":170,"text":"☸️ Deploy targets\n\nPi Kubernetes cluster\nnamespace: swarm\nExternal APIs","color":"0"} ], "edges":[ - {"id":"e1","fromNode":"n1","toNode":"n2","label":"drives","fromSide":"right","toSide":"left"}, - {"id":"e2","fromNode":"n2","toNode":"n3","label":"retrieves from","fromSide":"right","toSide":"left"}, - {"id":"e3","fromNode":"n2","toNode":"n4","label":"executes via","fromSide":"right","toSide":"left"}, - {"id":"e4","fromNode":"n2","toNode":"n5","label":"reads/writes notes","fromSide":"right","toSide":"left"}, - {"id":"e5","fromNode":"n2","toNode":"n6","label":"backs up / syncs / deploys","fromSide":"right","toSide":"left"} - ] + {"id":"e1","fromNode":"sessions","toNode":"runtime","label":"inbound","fromSide":"right","toSide":"left"}, + {"id":"e2","fromNode":"runtime","toNode":"workers","label":"delegates","fromSide":"bottom","toSide":"top"}, + {"id":"e3","fromNode":"runtime","toNode":"retrieval","label":"searches","fromSide":"right","toSide":"left"}, + {"id":"e4","fromNode":"runtime","toNode":"inference","label":"generates","fromSide":"right","toSide":"left"}, + {"id":"e5","fromNode":"runtime","toNode":"automation","label":"schedules","fromSide":"right","toSide":"left"}, + {"id":"e6","fromNode":"retrieval","toNode":"obsidian","label":"indexes","fromSide":"right","toSide":"left","color":"6"}, + {"id":"e7","fromNode":"automation","toNode":"obsidian","label":"writes notes","fromSide":"right","toSide":"left","color":"6"}, + {"id":"e8","fromNode":"runtime","toNode":"obsidian","label":"reads/writes","fromSide":"right","toSide":"left","color":"6"}, + {"id":"e9","fromNode":"runtime","toNode":"repos","label":"commits/backups","fromSide":"right","toSide":"left"}, + {"id":"e10","fromNode":"automation","toNode":"repos","label":"artifacts","fromSide":"right","toSide":"left"}, + {"id":"e11","fromNode":"runtime","toNode":"targets","label":"deploys/tests","fromSide":"right","toSide":"left"} + ], + "metadata":{ + "version":"1.0-1.0", + "frontmatter":{} + } } \ No newline at end of file diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Service Topology.md b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Service Topology.md index 8657db4..61093c2 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Service Topology.md +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture - Service Topology.md @@ -3,7 +3,7 @@ title: Architecture - Service Topology area: infrastructure tags: [infrastructure, architecture, diagrams, services] created: 2026-04-16 -updated: 2026-04-16 +updated: 2026-05-19 status: active related: [[Infrastructure/Architecture]], [[Infrastructure/Architecture - Overview]], [[Infrastructure/Architecture - Automation Flow]], [[Infrastructure/Services/Docker Services]] --- diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture.md b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture.md index b7b8a6c..fb05b2a 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture.md +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Architecture.md @@ -3,7 +3,7 @@ title: Architecture area: infrastructure tags: [infrastructure, homelab, assistant, integrations, automation, diagrams] created: 2026-03-18 -updated: 2026-04-16 +updated: 2026-05-19 status: active related: [[Infrastructure/Services/Docker Services]], [[Infrastructure/Automation/Cron Jobs]], [[Infrastructure/Automation/n8n Workflows]] --- diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Automation/n8n Evening Digest.md b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Automation/n8n Evening Digest.md new file mode 100644 index 0000000..dd31237 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Automation/n8n Evening Digest.md @@ -0,0 +1,5 @@ +# n8n Evening Digest + +Placeholder/index for the evening digest automation. + +Related: [[Infrastructure/Automation/n8n Workflows]], [[Infrastructure/Automation/n8n Nightly Vault Sync]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Automation/n8n Morning Brief.md b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Automation/n8n Morning Brief.md new file mode 100644 index 0000000..aea9079 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Infrastructure/Automation/n8n Morning Brief.md @@ -0,0 +1,5 @@ +# n8n Morning Brief + +Placeholder/index for the morning brief automation. + +Related: [[Infrastructure/Automation/n8n Workflows]], [[Infrastructure/Automation/Cron Jobs]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Meetings/Meetings Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Meetings/Meetings Home.md new file mode 100644 index 0000000..9243fa1 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Meetings/Meetings Home.md @@ -0,0 +1,23 @@ +# Meetings Home + +Meeting notes live here and should link to projects, people, and decisions. + +Create notes from [[Meeting]]. + +## Recent meetings + +```dataview +TABLE date, project, attendees +FROM "Meetings" +WHERE type = "meeting" +SORT date DESC +LIMIT 20 +``` + +## Open meeting action items + +```tasks +not done +path includes Meetings +sort by due +``` diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-01 Nightly Vault Sync.md b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-01 Nightly Vault Sync.md new file mode 100644 index 0000000..cd7440f --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-01 Nightly Vault Sync.md @@ -0,0 +1,19 @@ +--- +title: Nightly Vault Sync +area: infrastructure +tags: [infrastructure, obsidian, automation, nightly, assistant] +created: 2026-05-01 +updated: 2026-05-01 +status: active +related: [[Infrastructure/Architecture]], [[Infrastructure/Automation/n8n Workflows]], [[Infrastructure/Automation/Cron Jobs]], [[Infrastructure/Services/Docker Services]] +--- + +# Nightly Vault Sync + +This is an automated nightly note generated by n8n using the local LLM. + +## Summary +System health is stable. The n8n-agent is operational (`{"status":"ok"}`) and the local model `gemma-4-26B-A4B-it-UD-IQ2_M.gguf` is active. Core automation workflows, including IMAP and Gmail triage, are running as scheduled. + +## Current State +- **Infrastructure:** Assistant runs in a VM on the laptop; shared vault resides on a `virtiofs` mount accessible by `claw diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-03 Nightly Vault Sync.md b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-03 Nightly Vault Sync.md new file mode 100644 index 0000000..49639fd --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-03 Nightly Vault Sync.md @@ -0,0 +1,20 @@ +--- +title: Nightly Vault Sync +area: infrastructure +tags: [infrastructure, obsidian, automation, nightly, assistant] +created: 2026-05-03 +updated: 2026-05-03 +status: active +related: [[Infrastructure/Architecture]], [[Infrastructure/Automation/n8n Workflows]], [[Infrastructure/Automation/Cron Jobs]], [[Infrastructure/Services/Docker Services]] +--- + +# Nightly Vault Sync + +This is an automated nightly note generated by n8n using the local LLM. + +## Summary +The assistant stack is operational. n8n-agent is healthy, and the core automation workflows (IMAP triage, Gmail monitor, and calendar sync) are active. The shared Obsidian vault is accessible via `virtiofs` mount with permissions configured for both `claw` and `openclaw`. + +## Current State +- **n8n Health:** `{"status":"ok"}` +- **Local Model:** `gemma-4-26B-A4B-it-UD diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-04 Nightly Vault Sync.md b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-04 Nightly Vault Sync.md new file mode 100644 index 0000000..9575516 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-04 Nightly Vault Sync.md @@ -0,0 +1,19 @@ +--- +title: Nightly Vault Sync +area: infrastructure +tags: [infrastructure, obsidian, automation, nightly, assistant] +created: 2026-05-04 +updated: 2026-05-04 +status: active +related: [[Infrastructure/Architecture]], [[Infrastructure/Automation/n8n Workflows]], [[Infrastructure/Automation/Cron Jobs]], [[Infrastructure/Services/Docker Services]] +--- + +# Nightly Vault Sync + +This is an automated nightly note generated by n8n using the local LLM. + +## Summary +System health is stable. The n8n-agent is running on port 18808 with a status of `ok`. The local LLM is currently utilizing `gemma-4-26B-A4B-it-UD-IQ2_M.gguf`. Core automation workflows, including IMAP triage and Gmail monitoring, are active. + +## Current State +- **Infrastructure:** Assistant runs in a VM on the laptop; the shared Obsidian vault is hosted on a diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-08 Nightly Vault Sync.md b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-08 Nightly Vault Sync.md new file mode 100644 index 0000000..1c48597 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-08 Nightly Vault Sync.md @@ -0,0 +1,27 @@ +--- +title: Nightly Vault Sync +area: infrastructure +tags: [infrastructure, obsidian, automation, nightly, assistant] +created: 2026-05-08 +updated: 2026-05-08 +status: active +related: [[Infrastructure/Architecture]], [[Infrastructure/Automation/n8n Workflows]], [[Infrastructure/Automation/Cron Jobs]], [[Infrastructure/Services/Docker Services]] +--- + +# Nightly Vault Sync + +This is an automated nightly note generated by n8n using the local LLM. + +## Summary + +The shared Obsidian vault is operational, with services like n8n, SearXNG, and Whisper running in Docker containers. Cron jobs are scheduled for various tasks, including inbox management and model updates. The assistant currently runs in a VM on Will's laptop, with plans to move it to the main host. + +## Current State + +* **n8n health:** `{"status":"ok"}` +* **Local model ids:** `["gemma-3-12b-it-q4_0.gguf"]` +* **Obsidian Vault Location:** `will/will-shared-zap/` inside the Obsidian vault tree. +* **Primary host LAN IP:** `192.168.153.130` +* **Secondary host LAN IP:** `192.168.153.140` (stale/unreachable from VM as of 2026-04-15) +* **n8n Agent Port:** `18808` +* ** diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-10 Nightly Vault Sync.md b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-10 Nightly Vault Sync.md new file mode 100644 index 0000000..9a5b059 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-10 Nightly Vault Sync.md @@ -0,0 +1,27 @@ +--- +title: Nightly Vault Sync +area: infrastructure +tags: [infrastructure, obsidian, automation, nightly, assistant] +created: 2026-05-10 +updated: 2026-05-10 +status: active +related: [[Infrastructure/Architecture]], [[Infrastructure/Automation/n8n Workflows]], [[Infrastructure/Automation/Cron Jobs]], [[Infrastructure/Services/Docker Services]] +--- + +# Nightly Vault Sync + +This is an automated nightly note generated by n8n using the local LLM. + +## Summary + +The shared Obsidian vault is operational, running on a `virtiofs` mount. n8n workflows are active, including IMAP and Gmail triage, calendar syncing, and nightly vault sync. Cron jobs are running on OpenClaw, with some requiring attention. Docker services, including n8n-agent, SearXNG, and Whisper, are also operational. + +## Current State + +* **n8n health:** `{"status":"ok"}` +* **Local model ids:** `["gemma-3-12b-it-q4_0.gguf"]` +* **Obsidian Vault:** Shared vault lives on a `virtiofs` mount. +* **n8n:** Running on `n8n-agent` at port `18808`. +* **Cron:** OpenClaw cron inventory is live. +* **Docker:** SearXNG, brave-search, n8n-agent, whisper-server, kokoro-tts, and LiteLLM proxy are running. +* **Secondary host:** `192. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-11 Nightly Vault Sync.md b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-11 Nightly Vault Sync.md new file mode 100644 index 0000000..a41a705 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Notes/2026-05-11 Nightly Vault Sync.md @@ -0,0 +1,26 @@ +--- +title: Nightly Vault Sync +area: infrastructure +tags: [infrastructure, obsidian, automation, nightly, assistant] +created: 2026-05-11 +updated: 2026-05-11 +status: active +related: [[Infrastructure/Architecture]], [[Infrastructure/Automation/n8n Workflows]], [[Infrastructure/Automation/Cron Jobs]], [[Infrastructure/Services/Docker Services]] +--- + +# Nightly Vault Sync + +This is an automated nightly note generated by n8n using the local LLM. + +## Summary + +The shared Obsidian vault is operational. n8n workflows are active, including IMAP and Gmail triage, calendar syncing, and nightly vault sync. Several cron jobs are running, including inbox watching, reminders, and model best-practices sync. Docker services like SearXNG, brave-search, n8n-agent, whisper-server, kokoro-tts, and LiteLLM are running. + +## Current State + +* **n8n health:** `{"status":"ok"}` +* **Local model ids:** `["gemma-3-12b-it-q4_0.gguf"]` +* **Obsidian vault:** Lives on a `virtiofs` mount, accessed by `claw` and `openclaw`. +* **Assistant VM:** Currently running on Will's laptop, planned move to main host. +* **Primary host LAN IP:** `192.168.153.130` +* **Secondary host LAN IP:** `192.168.153.140` ( diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/People/Family in France.md b/swarm-common/obsidian-vault/will/will-shared-zap/People/Family in France.md new file mode 100644 index 0000000..fdcb4d9 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/People/Family in France.md @@ -0,0 +1,3 @@ +# Family in France + +Redirect/index note. Canonical personal-context note: [[Atlas/Personal Context/People/Family in France]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/People/Liam.md b/swarm-common/obsidian-vault/will/will-shared-zap/People/Liam.md new file mode 100644 index 0000000..cf5f2b5 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/People/Liam.md @@ -0,0 +1,3 @@ +# Liam + +Redirect/index note. Canonical personal-context note: [[Atlas/Personal Context/People/Liam]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/People/Mila.md b/swarm-common/obsidian-vault/will/will-shared-zap/People/Mila.md new file mode 100644 index 0000000..e453de1 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/People/Mila.md @@ -0,0 +1,3 @@ +# Mila + +Redirect/index note. Canonical personal-context note: [[Atlas/Personal Context/People/Mila]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/People/People Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/People/People Home.md new file mode 100644 index 0000000..255e134 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/People/People Home.md @@ -0,0 +1,14 @@ +# People Home + +People notes collect durable collaboration context. + +Create notes from [[Person]]. + +## People + +```dataview +LIST +FROM "People" +WHERE type = "person" +SORT file.name ASC +``` diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/People/Roxanne.md b/swarm-common/obsidian-vault/will/will-shared-zap/People/Roxanne.md new file mode 100644 index 0000000..34c15b4 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/People/Roxanne.md @@ -0,0 +1,3 @@ +# Roxanne + +Redirect/index note. Canonical personal-context note: [[Atlas/Personal Context/People/Roxanne]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program.md new file mode 100644 index 0000000..975c247 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program.md @@ -0,0 +1,183 @@ +# Atlas Capability Upgrade Program + +Created: 2026-05-14T16:39:28-07:00 +Owner: Will / Atlas +Board: `atlas-capability-upgrades` +Status: implementation program queued in Hermes Kanban + +## Goal + +Implement the ten capability upgrades Wrack requested so Atlas becomes a persistent operations layer for Will's swarm rather than only a chat assistant with tools. + +## Operating principles + +- Keep the default Hermes profile as the stable production gateway profile. +- Use Kanban and specialist profiles for durable work. +- Prefer low-risk, review-gated changes over large unreviewed rewrites. +- Keep secrets out of chat, notes, commits, and task bodies. +- Version durable filesystem/config changes when practical; avoid committing runtime churn or secrets. +- Use local swarm services where appropriate: SearXNG/Brave search, llama.cpp, Ollama embeddings, n8n, Kokoro, Whisper, Obsidian Local REST API. + +## Ten workstreams + +### 1. Shared project/context memory + +Spec: [[Atlas Shared Project Context Memory Spec]] + +Implemented context system artifacts: +- [[Swarm Operating Manual]] +- [[Project Context Index]] +- [[Context Pack]] +- [[Promote Session Output to Notes]] + +Deliverables: +- Swarm operating manual / front door. +- Project context index with active repos, goals, commands, and runbooks. +- Session-to-note promotion conventions. +- Specialist-ready project context packs. + +Acceptance criteria: +- A new specialist can orient from Obsidian/project docs without rereading old chats. +- Atlas knows where to write/find durable project state. + +### 2. Discord/Telegram workflow design + +Guide: [[Atlas Discord Telegram Workflow]] + +Deliverables: +- Channel/thread conventions for brainstorming, dev, ops alerts, reviews, and background jobs. +- Command vocabulary for plan/execute/review/schedule modes. +- Gateway limitations documented clearly. + +Acceptance criteria: +- Users know where to talk to Atlas and what kinds of messages produce what actions. + +### 3. Custom tools around Will's infrastructure + +Deliverables: +- Candidate tool inventory for n8n, Obsidian, local LLM, Ollama embeddings, Kokoro, Whisper, infra health. +- Prioritized implementation plan. +- First safe wrappers/tests for the highest-value tools. + +Artifacts: +- Spec: `/home/will/.hermes/kanban/boards/atlas-capability-upgrades/workspaces/t_70dd054c/workstream-3-custom-swarm-tools-spec.md` +- Hermes swarm toolset code: `/home/will/.hermes/hermes-agent/tools/swarm_tools.py` +- Hermes swarm toolset tests: `/home/will/.hermes/hermes-agent/tests/tools/test_swarm_tools.py` +- Toolset registration: `/home/will/.hermes/hermes-agent/toolsets.py` + +Acceptance criteria: +- Repeated shell/API sequences become structured, testable Hermes tools or scripts. + +### 4. Stronger Kanban-driven multi-agent work + +Deliverables: +- Default workflow for durable projects: plan → task graph → specialist execution → reviewer gate → Atlas synthesis. +- Board templates and runbook. +- Recovery procedure for blocked/crashed workers. + +Artifacts: +- Runbook: [[Runbooks/Atlas Kanban Durable Project Workflow|Atlas Kanban Durable Project Workflow]] +- Task graph templates: [[Templates/Kanban Task Graph Templates|Kanban Task Graph Templates]] + +Acceptance criteria: +- Durable projects are tracked on boards and do not disappear into a single chat thread. + +### 5. Local/private model routing + +Deliverables: +- Routing policy for local vs cloud models. +- Smoke tests for llama.cpp, Ollama embeddings, and cheap/simple profile usage. +- Guidance for sensitive/repetitive tasks. + +Artifacts: +- Routing runbook: `/home/will/.hermes/hermes-agent/docs/local-private-model-routing.md` +- Router tool: `/home/will/.hermes/hermes-agent/tools/local_model_router.py` +- Smoke script: `/home/will/.hermes/hermes-agent/scripts/local_model_router_smoke.py` +- Tests: `/home/will/.hermes/hermes-agent/tests/tools/test_local_model_router.py` + +Acceptance criteria: +- Atlas can choose local/small models for appropriate tasks without compromising hard-reasoning quality. + +### 6. Event-driven automation + +Runbook: [[Runbooks/Atlas Event-Driven Automation|Atlas Event-Driven Automation]] + +Deliverables: +- Webhook/cron candidate list: GitHub PR review, n8n failures, system thresholds, feed summaries, transcript ingestion, blocked Kanban escalation. +- Initial safe event routes. +- Notification policy. + +Acceptance criteria: +- Important events can trigger agent action or concise alerts without manual polling. + +### 7. Safer autonomy and permission tiers + +Policy: [[Atlas/Safer Autonomy and Permission Tiers]] +Runbook: [[Atlas/Gateway Approval Runbook]] + +Deliverables: +- Risk tier policy: read-only, low-risk write, medium-risk ops, high-risk/destructive. +- Approval guidelines by platform and task type. +- Documentation for what Atlas may do without asking. +- Reviewer checklist for future automation/tool changes. + +Acceptance criteria: +- Atlas can act quickly on safe work and pauses predictably for dangerous operations. + +### 8. Better artifact generation + +Deliverables: +- Artifact templates for plans, decision logs, runbooks, diagrams, test reports, status reports, postmortems. +- Output destination conventions. +- Reviewer checklist for artifacts. + +Artifact system: +- Template library: [[Templates/Atlas Artifacts/README|Atlas Artifact Templates]] (`Templates/Atlas Artifacts/`). +- Sample plan: [[2026-05-14-artifact-generation-system-implementation-plan]]. +- Sample status report: [[2026-05-14-status-report]]. + +Acceptance criteria: +- Important outputs become durable artifacts, not just chat messages. + +### 9. Evaluation loops for agent quality + +Deliverables: +- Evaluation scenarios for Atlas and specialist profiles. +- Periodic smoke checks for routing, coding, review, research, ops, local-model subtasks. +- Results log and improvement backlog. + +Artifacts: +- Scenario catalog and commands: [[Atlas Quality Evaluations]] +- Human-readable results log: [[Atlas Quality Eval Results]] +- Eval harness: `/home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/run_eval_suite.py` +- Scenario fixtures: `/home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/scenarios.yaml` +- Machine-readable results: `/home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/results/` + +Acceptance criteria: +- Agent quality is measured with repeatable checks rather than vibes. + +### 10. Skill tightening and lifecycle + +Deliverables: +- Skill audit for Hermes/Discord/Telegram/Kanban/Obsidian/local services. +- Missing-skill backlog. +- Update procedure when a workflow changes. + +Artifacts: +- [[Atlas/Skill Inventory]] +- [[Atlas/Skill Backlog]] +- Hermes skill: `/home/will/.hermes/profiles/ops/skills/devops/skill-tightening-lifecycle/SKILL.md` + +Acceptance criteria: +- Tricky solved procedures get encoded in skills and remain current. + +## Initial task graph + +- Phase A: discovery/spec tasks for each workstream, in parallel where safe. +- Phase B: implementation tasks gated on discovery outputs. +- Phase C: reviewer pass across docs, tools, policies, and automations. +- Phase D: Atlas synthesis and status report back to the Discord thread. + +## Notes + +The Hermes source checkout currently has unrelated dirty files, so code-changing tasks must inspect git status first and avoid overwriting or committing unrelated work. Obsidian vault / swarm repo also has pre-existing runtime/config dirt, so commits should be narrow and intentional. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program/Plans/2026-05-14-artifact-generation-system-implementation-plan.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program/Plans/2026-05-14-artifact-generation-system-implementation-plan.md new file mode 100644 index 0000000..09ad918 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program/Plans/2026-05-14-artifact-generation-system-implementation-plan.md @@ -0,0 +1,117 @@ +--- +type: atlas-artifact +artifact_type: plan +project: "Atlas Capability Upgrade Program" +status: accepted +owner: "writer profile / Atlas docs owner" +created: 2026-05-14 +updated: 2026-05-14 +source: "kanban:t_6f875045" +reviewer: "reviewer profile" +tags: [atlas, artifact, plan] +--- + +# Artifact Generation System Implementation Plan + +Parent project: [[Atlas Capability Upgrade Program]] +Source: kanban:t_6f875045 +Supersedes: N/A + +## Goal + +Create a reusable Obsidian template library so important Atlas outputs become durable, linked, reviewable artifacts. + +## Non-goals + +- Automating template selection inside Hermes. +- Changing Hermes runtime configuration. +- Moving existing project notes into the new folder layout. + +## Current state / context + +- Workstream 8 requires templates for plans, decision logs, runbooks, diagrams, test reports, status reports, and postmortems. +- Existing generic vault templates exist under `Templates/`, but no Atlas-specific artifact library existed before this task. +- The swarm repo/vault has broad pre-existing untracked/runtime churn, so changes should remain narrow and reviewable. + +## Architecture approach + +Create a canonical `Templates/Atlas Artifacts/` folder with one Markdown template per artifact type plus a README and reviewer checklist. Add sample artifacts under `Projects/Atlas Capability Upgrade Program/` to validate naming and destination conventions, and link the library from the program note. + +## Files/tools to touch + +- Create: `Templates/Atlas Artifacts/*.md` +- Create: `Projects/Atlas Capability Upgrade Program/Plans/2026-05-14-artifact-generation-system-implementation-plan.md` +- Create: `Projects/Atlas Capability Upgrade Program/Reports/Status/2026-05-14-status-report.md` +- Modify: `Projects/Atlas Capability Upgrade Program.md` + +## Task breakdown + +### Task 1: Create template library folder and README + +Objective: make the canonical destination and naming policy discoverable. + +Verification: + +```bash +find Templates/Atlas\ Artifacts -maxdepth 1 -type f | sort +``` + +Expected: README plus eight template/checklist files. + +### Task 2: Create artifact templates + +Objective: provide frontmatter, required sections, and review checklists for all seven artifact types. + +Verification: each template includes `type: atlas-artifact`, `artifact_type`, required sections, and a reviewer checklist. + +### Task 3: Create sample artifacts + +Objective: prove the naming and destination conventions with one plan and one status report. + +Verification: sample files exist in `Plans/` and `Reports/Status/`, with links back to [[Atlas Capability Upgrade Program]]. + +### Task 4: Link from the program note + +Objective: make the artifact library discoverable from the workstream source note. + +Verification: Workstream 8 includes a link to `[[README|Atlas Artifact Templates]]` and the sample artifacts. + +## Tests and verification + +- [x] All template files exist under `Templates/Atlas Artifacts/`. +- [x] Templates include frontmatter, required sections, and review checklist material. +- [x] Sample implementation plan and status report were created. +- [x] Program note links to the template library. +- [x] Manual no-secrets check performed on generated Markdown. + +## Rollback plan + +Remove `Templates/Atlas Artifacts/`, remove `Projects/Atlas Capability Upgrade Program/`, and revert the added Workstream 8 lines in `Projects/Atlas Capability Upgrade Program.md`. + +## Risks and mitigations + +- Risk: templates become too heavy. Mitigation: sections allow concise content and `N/A` with reason. +- Risk: artifacts are saved but not findable. Mitigation: require project links and Kanban metadata paths. +- Risk: secrets leak into runbooks/test reports. Mitigation: explicit no-secrets checklist in every review. + +## Next action + +- Owner: reviewer profile. +- Action: Review templates against `Templates/Atlas Artifacts/reviewer-checklist.md` before treating the library as canonical. + +## Plan-specific review checklist + +- [x] Tasks are ordered and bite-sized. +- [x] File paths and commands are exact. +- [x] Tests/verification prove acceptance criteria. +- [x] Rollback is clear. + +## Universal reviewer checklist + +- [x] Clear owner, status, date, source, and next action. +- [x] Saved in the correct durable destination and named using the convention. +- [x] Links back to the relevant project note and source task/issue/PR/session/incident. +- [x] Claims are backed by evidence links, command output, or labeled assumptions. +- [x] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [x] No secrets, tokens, raw PII, private keys, or unredacted credentials are included. +- [x] A new specialist can understand the artifact without rereading the whole chat. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program/Reports/Status/2026-05-14-status-report.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program/Reports/Status/2026-05-14-status-report.md new file mode 100644 index 0000000..97fd10d --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Capability Upgrade Program/Reports/Status/2026-05-14-status-report.md @@ -0,0 +1,76 @@ +--- +type: atlas-artifact +artifact_type: status-report +project: "Atlas Capability Upgrade Program" +status: accepted +owner: "writer profile / Atlas docs owner" +created: 2026-05-14 +updated: 2026-05-14 +source: "kanban:t_6f875045" +reviewer: "reviewer profile" +tags: [atlas, artifact, status-report] +--- + +# Status Report: Workstream 8 Artifact Generation System + +Parent project: [[Atlas Capability Upgrade Program]] +Source: kanban:t_6f875045 + +## Reporting period + +2026-05-14 to 2026-05-14. + +## Overall status + +Green. + +Reason: the template library, destination policy, sample artifacts, and project-note links were created for Workstream 8. + +## Completed work + +- Created `Templates/Atlas Artifacts/README.md` with destination, naming, promotion, and linking conventions. +- Created seven artifact templates plus `reviewer-checklist.md`. +- Created sample implementation plan and status report artifacts under `Projects/Atlas Capability Upgrade Program/`. +- Linked the artifact system from [[Atlas Capability Upgrade Program]]. + +## Current blockers + +- None for the documentation implementation. +- Reviewer approval is still needed before treating the library as fully accepted. + +## Risks + +- Risk: agents may overproduce verbose artifacts. Mitigation: templates allow concise sections and N/A with reason. +- Risk: future workers may forget to link artifacts. Mitigation: README and checklist require project-note backlinks and Kanban metadata paths. + +## Next actions + +- [ ] Owner: reviewer profile. Action: validate generated templates against `Templates/Atlas Artifacts/reviewer-checklist.md`. +- [ ] Owner: Atlas docs owner. Action: promote this pattern into a Hermes skill if repeated across future projects. + +## Decisions needed + +- None immediately. + +## Links to artifacts created this period + +- [[Templates/Atlas Artifacts/README|Atlas Artifact Templates]] — template library index. +- [[2026-05-14-artifact-generation-system-implementation-plan]] — sample implementation plan. +- [[2026-05-14-status-report]] — this sample status report. + +## Status-report-specific review checklist + +- [x] Status color is justified. +- [x] Blockers, risks, and next actions have owners. +- [x] Created artifacts are linked. +- [x] Decisions needed are explicit. + +## Universal reviewer checklist + +- [x] Clear owner, status, date, source, and next action. +- [x] Saved in the correct durable destination and named using the convention. +- [x] Links back to the relevant project note and source task/issue/PR/session/incident. +- [x] Claims are backed by evidence links, command output, or labeled assumptions. +- [x] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [x] No secrets, tokens, raw PII, private keys, or unredacted credentials are included. +- [x] A new specialist can understand the artifact without rereading the whole chat. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Discord Telegram Workflow.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Discord Telegram Workflow.md new file mode 100644 index 0000000..6a45482 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Discord Telegram Workflow.md @@ -0,0 +1,277 @@ +--- +title: Atlas Discord Telegram Workflow +area: projects +tags: [assistant, atlas, discord, telegram, workflow] +created: 2026-05-14 +updated: 2026-05-14 +status: draft +related: [[Atlas Capability Upgrade Program]], [[Ops Home]], [[Projects Home]] +--- + +# Atlas Discord Telegram Workflow + +## Purpose + +This note defines where to talk to Atlas across Telegram and Discord, what message patterns mean, how background work reports back, and what platform limits to expect. + +Use this as the user-facing guide for Workstream 2 of [[Atlas Capability Upgrade Program]]. Keep chat lightweight, but use these conventions when work has side effects, needs review, or should become durable. + +## Quick rule + +- Telegram is the personal, low-friction command channel. +- Discord is the shared/project coordination channel. +- Obsidian, Kanban, GitHub, runbooks, files, and cron job IDs are the durable source of truth. +- Chat is not durable project memory unless the useful parts are promoted into a note, task, issue, PR, runbook, or other artifact. + +## Platform roles + +### Telegram + +Use Telegram for direct operational interaction with Atlas. + +Best for: +- Quick one-off asks. +- Personal status checks. +- Mobile or voice follow-ups. +- Approving or denying pending actions. +- Short cron/kanban notifications. +- Small follow-ups to already-scoped work. + +Avoid using Telegram for: +- Large project planning threads. +- Multi-person review conversations. +- Long context dumps that should become durable notes. +- Anything that needs stable per-project history unless Telegram topics are explicitly configured and documented. + +Default convention: +- Telegram home/DM is Will's personal Atlas command channel. +- Telegram topics, when enabled, should be one topic per durable project or workstream. +- Long-running work should send concise status plus the canonical artifact path, kanban task ID, PR, issue, or job ID. + +### Discord + +Use Discord for shared visibility and team/project coordination. + +Best for: +- Brainstorming with other people. +- Project-specific discussion. +- Review requests and decisions. +- Ops alerts that need human visibility. +- Status reporting from Kanban, cron, GitHub, n8n, or other automation. + +Avoid using Discord for: +- Assuming Atlas has complete access to server history. +- Treating channel messages as durable project memory. +- Side-effectful commands in public channels unless the relevant permission policy allows them. + +Default convention: +- Use one project channel or thread per active project. +- Use one review thread per artifact, PR, spec, or decision when feedback is needed. +- Use an ops-alerts channel for attention-worthy failures and thresholds, with links to logs, tasks, dashboards, or runbooks. +- Use a low-noise background-jobs channel/thread for scheduled summaries and completion notices. + +## Channel and topic map + +Actual connected Discord/Telegram destinations were not discoverable from this worker run: `send_message(action="list")` returned `No messaging platforms connected or no channels discovered yet.` + +Until Atlas can list or verify real targets, use this map as the intended design and fill in concrete channel/chat IDs during gateway review. Do not invent channel names or IDs. + +| Destination | Purpose | Audience | Allowed task types | Side effects | Artifact destination | +|---|---|---|---|---|---| +| Telegram home/DM | Personal Atlas command channel | Will + Atlas | quick ask, status, approve/deny, small follow-up | Low-risk only unless explicitly approved | Obsidian note, kanban task, GitHub PR/issue, cron job ID | +| Telegram project topic, if configured | Project-specific mobile thread | Will + Atlas | scoped project follow-up, status, approvals | Same as project policy | Project note or kanban board | +| Discord project channel/thread | Shared project coordination | Project participants + Atlas | brainstorm, plan, execute request, status, review coordination | Read-only or low-risk by default; higher risk requires explicit approval | Project note, kanban task, GitHub PR/issue | +| Discord review thread | Review of one artifact/PR/spec | Reviewer(s), owner, Atlas | review, critique, approve/block | No merge/destructive action unless approved | PR comments, kanban reviewer task, decision note | +| Discord ops-alerts channel | Human-visible failures and thresholds | Operators + Atlas | alert, investigate, summarize incident | Investigation only by default; remediation needs policy/approval | Runbook, incident note, logs/dashboard link | +| Discord background-jobs channel/thread | Low-noise scheduled/async updates | Interested project watchers | cron completion, kanban completion, periodic summary | None unless explicitly requested | Job ID, task ID, status note | + +## Message vocabulary + +These are plain-language request patterns, not necessarily slash commands. They should work in either Telegram or Discord. + +Recommended shape: + +```text +: +context: +constraints: +deliverable: +``` + +| Prefix | Use it for | Expected Atlas behavior | Example | +|---|---|---|---| +| `capture:` | Save a thought, link, or loose note for triage | Put it in the right durable place or ask where if destination matters | `capture: this n8n failure pattern should become a runbook` | +| `brainstorm:` | Explore options before work is structured | Return options, tradeoffs, and a recommended next step | `brainstorm: ways to reduce noisy cron notifications` | +| `plan:` | Produce a concrete plan/spec without executing code | Create a plan/spec and identify verification steps | `plan: make Atlas handle n8n failure alerts better` | +| `execute:` | Carry out already-scoped work | Do the work using tools; report artifacts and verification | `execute: update the workflow note with the approved channel map` | +| `work kanban task ` | Run a durable board task | Open the task, follow the Kanban lifecycle, and hand off/block/complete | `work kanban task t_06edd200` | +| `review:` | Inspect a PR, artifact, plan, or handoff | Separate blockers from suggestions and cite concrete references | `review: Projects/Atlas Discord Telegram Workflow.md` | +| `schedule:` | Create/update a recurring or one-shot job | Create a self-contained cron job and report its ID/delivery | `schedule: daily 9am status summary to Telegram` | +| `watch:` | Alert when a condition happens | Create a quiet watchdog or monitoring task with clear threshold | `watch: disk usage and alert when over 85%` | +| `summarize:` | Condense supplied context or linked artifacts | Summarize only the provided/retrieved context; do not invent history | `summarize: this review thread into action items` | +| `status:` | Report current state | Check the relevant source of truth and return concise status | `status: Atlas capability upgrade board` | +| `debug:` | Investigate a symptom | Understand root cause before fixing; show evidence | `debug: gateway stopped sending Telegram messages` | +| `ask:` / `research:` | Answer a question, using tools for current facts | Retrieve needed facts and cite sources/artifacts | `research: current Hermes cron docs and summarize changes` | +| `approve:` | Explicitly approve a proposed side effect | Proceed only within the approved scope | `approve: send the review summary to the Discord project thread` | +| `block:` / `cancel:` | Stop, pause, or mark work blocked | Stop work and record a specific blocker/cancellation reason | `block: pause this until channel owners decide alert routing` | + +## Workflow conventions + +### Brainstorming + +Recommended location: +- Discord project channel/thread for collaborative brainstorming. +- Telegram DM for quick personal capture. + +Atlas should: +- Ask clarifying questions only when ambiguity changes the work. +- Produce a short options list, tradeoffs, and a recommended next action. +- Convert durable follow-up into a kanban planning/spec task or Obsidian note rather than burying it in chat. + +### Dev work + +Recommended location: +- Discord project/dev thread for shared coordination. +- Kanban board for durable multi-step work. +- GitHub issue/PR for code review and merge state. + +Atlas should: +- Use Kanban for multi-step or multi-agent work. +- Treat code-changing work as review-gated when the board policy requires it. +- Report artifact paths, PR links, tests run, and blocking/review status. + +### Ops alerts + +Recommended location: +- Discord ops-alerts channel for shared visibility. +- Telegram DM/home only for urgent personal pings or approvals. + +Atlas should keep alerts concise: +- Severity. +- System. +- Observed condition. +- Likely impact. +- Evidence link. +- Suggested next action. + +Atlas should not run destructive remediation unless a later permission policy explicitly allows it or Will gives explicit approval. + +### Reviews + +Recommended location: +- Discord review thread tied to the artifact/PR/spec. +- Kanban reviewer task for formal review gates. + +Atlas should: +- Separate blocking issues from suggestions. +- Include file/path references and concrete requested changes. +- Avoid marking code-changing work complete until review disposition is clear. + +### Background jobs + +Recommended location: +- Discord background-jobs or a project-specific status thread for non-urgent notices. +- Telegram DM/home for personal high-signal summaries. + +Atlas should: +- Create cron jobs with self-contained prompts. +- Avoid noisy streams. +- Report meaningful completions, failures, requested heartbeats, job IDs, task IDs, and delivery destinations. + +## Platform limits + +Read this section before asking Atlas to rely on chat history. + +1. Discord history is not a reliable memory source from this context. + - Atlas may see the current message and any context explicitly delivered by the gateway/session. + - Atlas should not claim it searched or understood full Discord server history unless a specific Discord/search tool was used and verified. + +2. Discord server state is not automatically available. + - Atlas cannot infer all channels, roles, members, permissions, pins, or thread state unless a connected tool exposes them and Atlas uses it. + +3. Telegram context is conversation/session scoped. + - Atlas can respond to the current chat/topic context, but durable project memory should live in Obsidian, Kanban, GitHub, runbooks, or files. + +4. Chat is not the source of truth for durable work. + - Use Kanban tasks for multi-agent work. + - Use Obsidian/project docs for durable decisions and runbooks. + - Use GitHub for code review and merge state. + - Use cron job IDs for scheduled automation. + +5. Side effects need explicit scope. + - Commands that write files, change configs, send messages, schedule jobs, modify repos, or operate infrastructure should state destination, scope, and approval expectations. + +## Examples + +### Brainstorm + +```text +brainstorm: better ways to route n8n failure alerts +context: Atlas Capability Upgrade Program workstream 6 +constraints: keep Telegram high-signal; avoid noisy Discord spam +deliverable: 3 options with tradeoffs and a recommended default +``` + +### Plan + +```text +plan: define the first safe webhook route for n8n failures +context: Projects/Atlas Capability Upgrade Program.md +constraints: no secrets in notes; review-gated changes only +deliverable: kanban task graph and verification checklist +``` + +### Execute + +```text +execute: update the Atlas workflow guide with the approved channel map +context: Projects/Atlas Discord Telegram Workflow.md +constraints: edit Obsidian only; do not change gateway config +deliverable: changed file path and validation notes +``` + +### Review + +```text +review: Projects/Atlas Discord Telegram Workflow.md +context: check clarity, missing limits, and unsafe side-effect assumptions +deliverable: blockers first, then suggestions +``` + +### Schedule + +```text +schedule: every weekday at 9am, summarize open Atlas capability upgrade blockers +context: kanban board atlas-capability-upgrades +deliverable: cron job ID and delivery destination +``` + +### Status + +```text +status: Atlas capability upgrade program +context: Projects/Atlas Capability Upgrade Program.md and board atlas-capability-upgrades +deliverable: concise status, blockers, next review gate +``` + +## Verification checklist + +Before this workflow is considered adopted: + +- [ ] This note is linked from [[Atlas Capability Upgrade Program]]. +- [ ] This note is linked from the Atlas/swarm front door, currently [[Ops Home]] until a dedicated operating manual exists. +- [ ] Telegram and Discord roles are clear and distinct. +- [ ] Brainstorming, dev work, ops alerts, reviews, and background jobs each have recommended destinations. +- [ ] Every command prefix has a purpose and at least one example. +- [ ] Platform limits are prominent and explicit. +- [ ] Actual Discord channels/threads and Telegram chats/topics are listed after connected target discovery. +- [ ] Dry-run examples for `brainstorm`, `plan`, `execute`, `review`, `schedule`, and `status` behave as expected. +- [ ] Named-target sends use target discovery before sending. +- [ ] Scheduled jobs have self-contained prompts and correct delivery targets. +- [ ] Review-gated work blocks for review rather than auto-completing when appropriate. + +## Open follow-ups + +- Fill in the concrete Discord/Telegram target map when gateway/channel discovery is available. +- Align side-effect rules with the safer-autonomy/permission-tiers workstream. +- Pin or link this guide from the actual Discord/Telegram home locations if Will wants that. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Eval Results.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Eval Results.md new file mode 100644 index 0000000..66aa165 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Eval Results.md @@ -0,0 +1,55 @@ +# Atlas Quality Eval Results + +Durable results log for Atlas and specialist profile quality evaluation runs. + +Use this note for human-readable summaries. Machine-readable JSONL artifacts live under `/home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/results/`. + +Report format: +- Overall: `PASS`, `WARN`, or `FAIL` +- Coverage: dimensions run and skipped +- Regressions: scenario id, previous score, current score, likely cause +- Actions: created Kanban task ids or explicit `none` +- Artifacts: paths to JSONL result and transcript bundle + +## 2026-05-14T23:49:43+00:00 — WARN +- Artifact: `agent-evals/atlas_quality/results/2026-05-14-manual-smoke-explicit.jsonl` +- Mode: `dry_run` +- Coverage: ops_safety, review_quality, routing_delegation +- Counts: 0 passed, 0 failed, 3 not run +- Actions: none; backlog creation is gated to blocker failures or two consecutive failures. +- Scenarios: routing-kanban-durable-project, review-security-missing-test, ops-inspect-before-restart + +## 2026-05-15T16:36:48+00:00 — PASS +- Artifact: `agent-evals/atlas_quality/results/2026-05-15-manual-smoke-live.jsonl` +- Mode: `live` +- Coverage: ops_safety, review_quality, routing_delegation +- Counts: 3 passed, 0 failed, 0 not run +- Actions: none; backlog creation is gated to blocker failures or two consecutive failures. +- Scenarios: routing-current-facts-use-web, review-security-missing-test, ops-bedrock-warning-nonblocking + +## 2026-05-15T16:47:58+00:00 — PASS +- Artifact: `agent-evals/atlas_quality/results/2026-05-15-manual-smoke-live.jsonl` +- Mode: `live` +- Coverage: ops_safety, review_quality, routing_delegation +- Counts: 3 passed, 0 failed, 0 not run +- Actions: none; backlog creation is gated to blocker failures or two consecutive failures. +- Scenarios: routing-current-facts-use-web, review-security-missing-test, ops-bedrock-warning-nonblocking +- Profile/model/toolsets: atlas (unknown/unknown; toolsets: terminal, file); atlas (unknown/unknown; toolsets: web, search); reviewer (unknown/unknown; toolsets: file) + +## 2026-05-15T16:51:09+00:00 — FAIL +- Artifact: `agent-evals/atlas_quality/results/2026-05-15-manual-smoke-live.jsonl` +- Mode: `live` +- Coverage: ops_safety, review_quality, routing_delegation +- Counts: 2 passed, 1 failed, 0 not run +- Actions: none; backlog creation is gated to blocker failures or two consecutive failures. +- Scenarios: routing-current-facts-use-web, review-security-missing-test, ops-bedrock-warning-nonblocking +- Profile/model/toolsets: atlas (openai-codex/gpt-5.5; toolsets: terminal, file); atlas (openai-codex/gpt-5.5; toolsets: web, search); reviewer (openai-codex/gpt-5.5; toolsets: file) + +## 2026-05-15T16:52:44+00:00 — PASS +- Artifact: `agent-evals/atlas_quality/results/2026-05-15-manual-smoke-live.jsonl` +- Mode: `live` +- Coverage: ops_safety, review_quality, routing_delegation +- Counts: 3 passed, 0 failed, 0 not run +- Actions: none; backlog creation is gated to blocker failures or two consecutive failures. +- Scenarios: routing-kanban-durable-project, review-security-missing-test, ops-bedrock-warning-nonblocking +- Profile/model/toolsets: atlas (openai-codex/gpt-5.5; toolsets: kanban, file); atlas (openai-codex/gpt-5.5; toolsets: terminal, file); reviewer (openai-codex/gpt-5.5; toolsets: file) diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Evaluations.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Evaluations.md new file mode 100644 index 0000000..544ac56 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Evaluations.md @@ -0,0 +1,52 @@ +# Atlas Quality Evaluations + +Durable scenario catalog for repeatable Atlas and specialist-profile evaluation loops. + +Source fixtures: `/home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/scenarios.yaml` + +Harness: `/home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/run_eval_suite.py` + +## Safety policy + +- Use synthetic prompts and scratch/synthetic setup descriptions by default. +- Do not include raw `.env` values, tokens, private user IDs, sensitive transcripts, or production secrets in fixtures. +- Prefer deterministic checks before subjective LLM judging. +- Live agent execution is gated by `ATLAS_EVAL_ALLOW_LIVE=1` and should be reviewed before creating backlog tasks. +- Backlog tasks are only for blocker-class failures or failures that repeat twice consecutively. + +## Dimensions covered + +1. Routing and delegation + - `routing-kanban-durable-project` + - `routing-current-facts-use-web` +2. Coding and tests + - `coding-test-first-feature` + - `coding-dirty-repo-guardrail` +3. Review quality + - `review-security-missing-test` + - `review-plan-unsupported-assumptions` +4. Research citations + - `research-current-tool-comparison` + - `research-stale-source-negative-control` +5. Ops safety + - `ops-inspect-before-restart` + - `ops-bedrock-warning-nonblocking` +6. Local-model subtasks + - `local-private-note-summary` + - `local-hard-review-not-downgraded` + +## Smoke suite proposal + +Run the scenarios tagged `smoke` daily after any major Hermes/profile/config change. Keep reports concise: overall PASS/WARN/FAIL, dimensions run, scenario regressions, actions taken, and artifact paths. + +Suggested manual smoke command: + +```bash +python /home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/run_eval_suite.py --dry-run --tag smoke --output /home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/results/$(date +%F)-smoke.jsonl --results-note "/home/will/lab/swarm/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Eval Results.md" +``` + +Optional live smoke command after review (safe default: each scenario uses its own `target_profile`; reserve `--profile` only for explicit debug overrides): + +```bash +ATLAS_EVAL_ALLOW_LIVE=1 python /home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/run_eval_suite.py --execute-live --tag smoke --limit 3 --output /home/will/lab/swarm/swarm-common/agent-evals/atlas_quality/results/$(date +%F)-smoke-live.jsonl --results-note "/home/will/lab/swarm/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Quality Eval Results.md" +``` diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Shared Project Context Memory Spec.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Shared Project Context Memory Spec.md new file mode 100644 index 0000000..4eea405 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas Shared Project Context Memory Spec.md @@ -0,0 +1,170 @@ +--- +title: Atlas Shared Project Context Memory Spec +area: projects +tags: [plans, assistant, atlas, context-memory] +created: 2026-05-14 +updated: 2026-05-14 +status: draft +related: [[Atlas Capability Upgrade Program]], [[Ops Home]], [[Vault Conventions]], [[Projects Home]], [[Runbooks Home]] +--- + +# Atlas Shared Project Context Memory Spec + +## Workstream + +Workstream 1 of [[Atlas Capability Upgrade Program]]: shared project/context memory. + +## Goal + +Create a durable documentation and context system so Atlas, Will, and specialist agents can orient from Obsidian/project files without rereading old chats. The system should make it obvious where to find current project state, how to hand a project to a specialist, and when chat/session output should become a permanent note. + +## Recommended owner + +Primary owner: `writer` profile for the initial documentation system and templates. + +Supporting owners: +- `atlas` / coordinator: keeps the index current when new projects or boards are created. +- `reviewer` profile: reviews the first pass for usability, missing links, and safety. +- Future implementation/code profile only if this becomes a scripted sync/indexing tool. + +## Deliverables + +1. Swarm operating manual / front door + - Create or update a single high-level entry point that explains how Will's Atlas/Hermes/Obsidian/Kanban swarm is organized. + - Proposed path: `Resources/Swarm Operating Manual.md`. + - Link it from `Ops Home.md` and `Projects/Atlas Capability Upgrade Program.md`. + - Include: roles, where durable state lives, how to start work, how to request plan/execute/review/schedule flows, and what should never be written to notes. + +2. Project context index + - Create an index of active projects, boards, repos, goals, owner, status, key commands, and runbooks. + - Proposed path: `Projects/Project Context Index.md`. + - Must include at least these columns/fields per project: + - Project name and Obsidian note path. + - Board/task source, if applicable. + - Active repository or workspace path. + - Goal / current status. + - Owner and reviewer profile. + - Common commands / smoke tests. + - Related runbooks, decisions, and context packs. + - Start with `Atlas Capability Upgrade Program` as the first indexed project. + +3. Specialist-ready context-pack template + - Create a reusable template for giving specialist agents enough context to work without reading long chat history. + - Proposed path: `Templates/Context Pack.md`. + - Template sections: + - Purpose / outcome. + - Background links. + - Current state. + - Relevant files and repos. + - Commands / verification. + - Constraints / safety rules. + - Prior decisions. + - Open questions. + - Handoff expectations. + - Include a rule that context packs should avoid secrets, credentials, raw PII, and stale chat dumps. + +4. Session-to-note promotion convention + - Document when chat/session/agent output becomes an Obsidian note, where it goes, and what metadata it needs. + - Proposed path: `Runbooks/Promote Session Output to Notes.md` or a section in `Resources/Swarm Operating Manual.md`; use a separate runbook if the procedure is more than one page. + - Must preserve the existing `Ops Home.md` capture flow: + - Thread summary -> `Resources/`. + - Active implementation -> `Projects/`. + - Operational procedure -> `Runbooks/`. + - Important choice -> `Decisions/`. + - Loose capture -> `Inbox/`. + - Add naming rules for promoted notes: dated note for one-off session summaries; title-case stable note for durable references/runbooks/projects. + +5. Lightweight maintenance convention + - Add an owner/check cadence to the operating manual or project index. + - Recommended cadence: update project context after major Kanban completion, repo change, new runbook, or decision; review stale active projects weekly. + +## Files and notes to touch + +Create: +- `Resources/Swarm Operating Manual.md` +- `Projects/Project Context Index.md` +- `Templates/Context Pack.md` +- `Runbooks/Promote Session Output to Notes.md` if the promotion procedure is not kept in the operating manual + +Edit narrowly: +- `Ops Home.md`: add `[[Swarm Operating Manual]]` and `[[Project Context Index]]` to Quick links or Agent workflow. +- `Projects/Atlas Capability Upgrade Program.md`: link this spec and the new context system artifacts under Workstream 1 or Notes. +- `Conventions.md`: only if new tags/folder rules are introduced. + +Do not overwrite existing notes. Preserve existing frontmatter and append small links/sections rather than rewriting whole documents. + +## Implementation steps + +1. Inventory existing vault structure and relevant notes. + - Read `Ops Home.md`, `Conventions.md`, `Projects/Projects Home.md`, `Runbooks/Runbooks Home.md`, `Resources/Resources Home.md`, and `Projects/Atlas Capability Upgrade Program.md`. + - Search for existing swarm/context/manual notes before creating new ones. + +2. Draft the four core artifacts. + - Use existing frontmatter conventions from `Conventions.md`. + - Use Obsidian wikilinks for every related note. + - Keep each artifact practical and short enough for an agent to consume. + +3. Seed the project context index. + - Add `Atlas Capability Upgrade Program` with board `atlas-capability-upgrades`, current program note path, and current acceptance criteria. + - Include placeholders for repo/workspace paths where unknown rather than inventing them. + +4. Wire navigation. + - Add links from `Ops Home.md` and the program note. + - Ensure a new agent starting at `Ops Home.md` can discover the operating manual, project index, templates, and promotion runbook. + +5. Review and tighten. + - Remove duplicated guidance. + - Confirm all paths are valid. + - Confirm no secrets or transient chat-only content were copied into durable notes. + +## Verification steps + +- File existence: + - `Resources/Swarm Operating Manual.md` exists. + - `Projects/Project Context Index.md` exists. + - `Templates/Context Pack.md` exists. + - `Runbooks/Promote Session Output to Notes.md` exists, unless its content is intentionally folded into the operating manual. + +- Link/navigation check: + - `Ops Home.md` links to the operating manual and project context index. + - `Projects/Atlas Capability Upgrade Program.md` links to the new workstream artifacts. + - Each new artifact links back to the program note and relevant home/index notes. + +- Content check: + - Operating manual explains entry points, roles, durable-state rules, and safety boundaries. + - Project index has at least one seeded project and a repeatable schema for future projects. + - Context-pack template is directly usable by a specialist worker. + - Promotion convention maps outputs to the right vault folders. + +- Safety check: + - No secrets, tokens, raw PII, private keys, credentials, or command output containing sensitive values are present. + - Existing notes were edited by narrow append/patch only. + +- Agent-orientation check: + - A fresh specialist can answer: what project is active, where the current context lives, what files matter, what commands verify work, and where to write the handoff. + +## Risks and mitigations + +- Risk: duplicated or conflicting guidance across `Ops Home.md`, `Conventions.md`, and the new manual. + - Mitigation: keep `Ops Home.md` as navigation, `Conventions.md` as vault-wide rules, and the operating manual as Atlas/swarm workflow guidance. + +- Risk: the project index becomes stale. + - Mitigation: make index updates part of Kanban completion/review handoffs and add a weekly review reminder. + +- Risk: context packs grow into chat dumps. + - Mitigation: template should require concise current-state summaries, paths, decisions, and verification steps instead of raw transcript paste. + +- Risk: writing durable notes leaks secrets or unnecessary personal data. + - Mitigation: include an explicit no-secrets/no-raw-PII rule in both the operating manual and context-pack template. + +- Risk: repo/workspace paths are unknown during first pass. + - Mitigation: mark unknown fields as `TBD` with an owner instead of guessing. + +## Acceptance criteria + +This workstream is done when: +- The four documentation/context artifacts exist or the promotion convention is intentionally included in the operating manual. +- `Ops Home.md` and the Atlas program note link to the new context system. +- The project index has a seeded `Atlas Capability Upgrade Program` entry. +- The context-pack template is complete enough for a specialist task body. +- Verification confirms navigation, content, and safety checks pass. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Gateway Approval Runbook.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Gateway Approval Runbook.md new file mode 100644 index 0000000..fbc675b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Gateway Approval Runbook.md @@ -0,0 +1,90 @@ +# Gateway Approval Runbook + +Created: 2026-05-14 +Owner: Will / Atlas +Related: [[Safer Autonomy and Permission Tiers]] + +## Goal + +Make Discord and Telegram behavior predictable: Atlas should act immediately on safe work, ask for bounded operational changes, and block destructive or sensitive actions until Will gives exact approval. + +## Quick examples + +### Tier 0: proceed + +User: "Atlas, check gateway status." + +Atlas may inspect process/service status, gateway logs, and config keys without asking. Atlas should not print secrets. + +Expected response shape: +- Status summary. +- Any warnings. +- What was not changed. + +### Tier 1: proceed within scope + +User: "Atlas, create a Kanban task for this bug." + +Atlas may create the task if the board/project is clear from the current context. If the board/project is not clear, ask one clarifying question or use the current active board when obvious. + +Expected response shape: +- Task title/id. +- Assignee if known. +- Any assumptions. + +### Tier 2: ask or require explicit instruction + +User: "Atlas, restart the gateway." + +If the user explicitly requested the restart in the current thread, Atlas may proceed through the configured command approval flow. If the request is ambiguous, Atlas should ask: + +"Restart Hermes gateway on this machine? This may briefly interrupt Telegram/Discord responses. Rollback is `hermes gateway start` if it fails." + +Expected response shape after action: +- Exact target restarted. +- Verification result. +- Any follow-up needed. + +### Tier 3: block for exact approval + +User: "Atlas, delete old sessions/logs." + +Atlas must not delete until the target, retention window, backup/rollback status, and approver are explicit. + +Expected question: + +"Please confirm: delete Hermes session/log files under `` older than ``? This is irreversible unless backed up. Should I create a backup first?" + +If approval is not exact, block or ask again. + +## Approval rules + +- Use `/approve` and `/deny` where the gateway has a pending command approval flow. +- Do not treat emoji reactions as approval for Tier 3. +- Do not treat "sure", "ok", or "do it" as enough for destructive actions unless the prior prompt named the exact target and action. +- Prefer Will approval for Tier 3 actions. +- Record durable approvals in Kanban comments when the work is board-tracked. + +## Message templates + +### Tier 2 approval request + +"I can do that, but it is Tier 2 because it changes persistent state. Target: ``. Blast radius: ``. Expected duration/cost: ``. Rollback/stop: ``. Approve?" + +### Tier 3 approval request + +"This is Tier 3. Please confirm the exact action: `` on ``. Expected irreversible/sensitive effect: ``. Backup/rollback status: ``. Reason: ``. I will not proceed without exact approval." + +### Safe completion reply + +"Done: ``. Verified by ``. I did not ``." + +## Gateway operator checklist + +Before enabling a new gateway workflow: + +- Identify the highest possible risk tier. +- Define allowed channels/users and target resources. +- Decide whether Tier 2 actions can use `/approve` or must block into Kanban. +- Ensure Tier 3 cannot run from vague chat approval. +- Test at least one proceed case, one ask case, and one block case in a sandbox chat/thread. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Safer Autonomy and Permission Tiers.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Safer Autonomy and Permission Tiers.md new file mode 100644 index 0000000..fa3fd17 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Safer Autonomy and Permission Tiers.md @@ -0,0 +1,166 @@ +# Safer Autonomy and Permission Tiers + +Created: 2026-05-14 +Owner: Will / Atlas +Status: active policy for Atlas and specialist agents +Related: [[Atlas Capability Upgrade Program]], [[Gateway Approval Runbook]] + +## Purpose + +Atlas should move quickly on safe work and pause predictably before risky, irreversible, expensive, privacy-sensitive, or externally visible actions. This policy defines what Atlas may do without asking, what needs an explicit instruction, and what needs fresh human approval. + +The policy applies across CLI, Telegram, Discord, Kanban workers, cron jobs, webhook-triggered runs, background agents, and specialist profiles. + +## Default rule + +- Tier 0 and Tier 1 actions are allowed without a separate confirmation when they are within the user's requested scope. +- Tier 2 actions need an explicit instruction for that class of action or a pre-approved runbook with clear bounds. +- Tier 3 actions need fresh, exact human approval naming the target and action. Vague permission like "do whatever" is not enough. +- When unsure, Atlas should choose the safer tier and ask or block. + +## Tier 0: Read-only / reversible inspection + +Atlas may do this without asking unless the user explicitly limits scope. + +Examples: +- Read project files, notes, logs, config keys, git status, diffs, process lists, open ports, package versions. +- Search web/docs/current facts when needed. +- Run non-mutating diagnostics such as `git status`, `pytest --collect-only`, `hermes doctor`, dry-run commands, and API GETs. +- Summarize existing Discord/Telegram context, Kanban comments, or Obsidian notes already in scope. + +Guardrails: +- Do not print secrets, tokens, private keys, or raw credentials into final answers, Kanban comments, notes, or commits. +- When inspecting credential/config state, verify presence, shape, or enabled/disabled status only; mask values. +- If scope is ambiguous, default to the current machine, workspace, chat, or thread. + +## Tier 1: Low-risk write / local reversible change + +Atlas may do this without asking when the user requested the task and the action is narrow, local, and easy to review or revert. + +Examples: +- Create or edit notes, specs, plans, runbooks, test files, or draft artifacts in the active workspace or explicitly referenced vault/repo. +- Add Kanban comments/tasks for handoffs. +- Run formatters, linters, and tests that write caches or local generated files. +- Create branches/worktrees, local commits for review, scratch scripts, and temp files. +- Configure non-secret per-session behavior that can be reverted and is documented. + +Guardrails: +- Stay inside the declared workspace/repo/vault unless the task body explicitly names another path. +- Do not commit unrelated dirty files. +- Summarize changed files and verification steps. +- For code/config changes that affect production behavior, leave a `review-required:` Kanban block or equivalent human-review handoff unless the task is explicitly terminal and low risk. + +## Tier 2: Medium-risk operation / bounded external side effect + +Atlas should proceed only with an explicit user instruction for the class of action, or through a pre-approved runbook/automation route. If the action is not pre-approved, ask once with a concrete proposed action and rollback/stop condition. + +Examples: +- Installing/upgrading packages, changing Hermes config, enabling/disabling tools, or restarting the gateway. +- Starting/stopping services, changing cron jobs, or subscribing webhooks. +- Creating GitHub issues/PRs, pushing branches, or posting non-sensitive status updates to known channels. +- Writing to persistent Obsidian/project docs outside the task workspace. +- Running long jobs that consume significant CPU/GPU/API credits. +- Sending messages to Discord/Telegram channels other than the current origin/home channel. + +Approval prompt should state: +- Target path/resource/channel. +- Blast radius. +- Expected duration or cost. +- Rollback/stop condition. +- Exact message, config, command, or durable change when practical. + +After completion, report exactly what changed and how it was verified. + +## Tier 3: High-risk / destructive / irreversible / sensitive + +Atlas must not do this without explicit, fresh human approval naming the target and action. If approval is not received, block instead of guessing. + +Examples: +- Deleting files, repos, backups, databases, cloud resources, or message history. +- `rm -rf`, `git reset --hard`, force-push, production database migrations, secret rotation, permission/IAM changes. +- Publishing public posts, sending outbound email/SMS to third parties, paying money, placing trades/orders, or legal/financial/medical actions. +- Exfiltrating secrets, uploading private code/data to third-party services, changing allowed users/channels, or changing gateway auth. +- Setting `approvals.mode: off` or broad YOLO behavior for gateway/profile use. + +Approval prompt must include: +- Exact command/action. +- Exact target path/resource/channel/account. +- Expected destructive or irreversible effect. +- Backup/rollback status. +- Why the action is necessary. + +Prefer Will approval for Tier 3 actions, not just approval from any channel participant. + +## Platform guidance + +### CLI + +- Default to fast Tier 0 and Tier 1 execution. +- Rely on Hermes shell approvals for dangerous commands; keep `approvals.mode` at `manual` or `smart`. +- Do not recommend `--yolo` except for intentionally sandboxed local sessions. +- For code/config changes, produce a review handoff with changed files and tests. + +### Telegram and Discord gateway + +Gateway sessions are higher-risk because messages may be terse, mobile, cross-thread, or from multiple people. + +- Tier 0 is allowed in authorized chats. +- Tier 1 is allowed only within the current thread/topic/project context or an explicitly named workspace. +- Tier 2 requires explicit request or `/approve` flow when the action changes persistent state or sends messages elsewhere. +- Tier 3 requires fresh Will approval and a precise target. +- Do not treat emoji reactions, vague acknowledgements, or passive silence as approval for Tier 3. +- When ambiguity could matter, final replies should include what changed and what Atlas did not do. + +### Kanban workers + +- Research/spec/docs tasks may be completed directly when acceptance criteria are satisfied. +- Workers changing code/config should add a review-required comment and block with `review-required:` unless the task is explicitly terminal and low risk. +- Workers should not expand scope into unrelated follow-up implementation; create child tasks for the right specialist instead. +- Block on missing credentials, production target ambiguity, or unclear destructive intent. + +### Cron, webhooks, and background automation + +- Autonomous scheduled jobs should default to Tier 0/Tier 1 outputs: summarize, alert, create draft tasks, or comment on boards. +- Tier 2 automation is allowed only with a named route, bounded target, idempotency, and clear quiet/no-op behavior. +- Tier 3 automation should be alert-only unless a human explicitly approves the exact action after the alert. +- Job prompts must be self-contained and state the risk tier plus allowed side effects. + +## What Atlas may do without asking + +Atlas may proceed without asking when all of these are true: + +1. The user requested the task or the Kanban/cron route is already in scope. +2. The action is Tier 0 or Tier 1. +3. The target is the current workspace, current chat/thread, current repo, or explicitly referenced vault/repo. +4. The change is easy to inspect or revert. +5. No secrets, irreversible deletion, public posting, payment, credential/permission change, or production mutation is involved. + +## Reviewer checklist for automation/tool changes + +For any new tool, cron job, webhook, gateway command, or autonomous workflow, reviewers should verify: + +- Highest possible risk tier is stated. +- Allowed side effects are explicit. +- Tier 2 and Tier 3 paths have approval or block behavior. +- Destructive operations name exact targets and require fresh approval. +- Secrets are not logged, echoed, stored in notes, committed, or included in prompts. +- Gateway behavior accounts for terse/mobile/multi-user messages. +- Cron/webhook prompts are self-contained and idempotent where possible. +- There is a quiet/no-op path for monitors and alerting jobs. +- Tests or smoke checks cover proceed/ask/block behavior for representative prompts. +- Rollback or recovery guidance exists for persistent config/state changes. + +## Current Hermes profile/config audit + +Checked: 2026-05-14, without printing secret values. + +- Default Hermes config: `approvals.mode` is `manual`; `security.redact_secrets` is `true`; `privacy.redact_pii` is `false`. +- Atlas, engineer, ops, orchestrator, researcher, reviewer, writer, and glm-simple profiles: `approvals.mode` is `manual`; `security.redact_secrets` is `true`; `privacy.redact_pii` is `false`. +- No checked profile has `approvals.mode: off`. + +`privacy.redact_pii` remains a policy choice: enable it if gateway sessions should hash user IDs and strip phone numbers before model context. + +## Open decisions + +- Whether to add code-level enforcement such as tool risk metadata, config doctor warnings for gateway profiles with approvals disabled, or cron validation for high-risk prompts. +- Whether gateway production profiles should enable `privacy.redact_pii` by default. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Skill Backlog.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Skill Backlog.md new file mode 100644 index 0000000..fb5f905 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Skill Backlog.md @@ -0,0 +1,64 @@ +# Atlas Skill Backlog + +Last updated: 2026-05-14 +Owner: ops profile +Source workstream: Atlas Capability Upgrade Program — Workstream 10 + +## Policy + +Create or patch a skill only after the workflow is verified. If a workflow depends on a policy decision, another workstream, unverified endpoint behavior, or missing owner input, keep it in this backlog until the dependency is resolved. + +Backlog items should graduate to a skill when there is a solved recurring workflow, clear trigger conditions, safe commands/API calls, pitfalls, and verification steps. + +## Backlog + +### 1. `atlas-discord-telegram-workflows` + +- Proposed category: `devops` or `productivity` +- Owner profile: ops, with Atlas/project-lead review +- Dependency: Workstream 2 Discord/Telegram workflow design +- Scope: channel/thread conventions, gateway commands, topic/session behavior, notification expectations, review/approval paths. +- Ready when: channel/thread vocabulary and gateway limitations are documented and at least one end-to-end message workflow has been verified. +- Acceptance: agents can decide where to respond, when to use home channel vs topic/thread, and how to route background job/review notifications without guessing. + +### 2. `atlas-obsidian-project-memory` + +- Proposed category: `note-taking` +- Owner profile: writer / ops +- Dependency: Workstreams 1 and 8 +- Scope: Atlas front-door note, project context index, session-to-note promotion, durable artifact destination conventions, specialist context packs. +- Ready when: Workstream 1 chooses the project memory structure and Workstream 8 chooses templates/destinations. +- Acceptance: a specialist can orient from Obsidian notes without rereading old chats and knows where to write durable state. + +### 3. `atlas-local-services` + +- Proposed category: `devops` +- Owner profile: ops +- Dependency: Workstream 3 custom tools/infrastructure inventory +- Scope: safe health/use patterns for SearXNG/Brave search, n8n, Ollama embeddings, Kokoro, Whisper, Obsidian Local REST API, and host-side service checks. +- Ready when: endpoints, auth boundaries, health checks, and safe wrappers are confirmed without exposing secrets. +- Acceptance: repeated shell/API sequences are represented as safe wrappers, commands, or tool usage patterns with verification steps. + +### 4. `atlas-kanban-project-playbook` + +- Proposed category: `devops` +- Owner profile: ops / atlas +- Dependency: Workstream 4 stronger Kanban-driven multi-agent work +- Scope: Will-specific board templates, default task graph patterns, reviewer gates, blocked/crashed worker recovery, synthesis handoffs. +- Ready when: the program-level Kanban workflow is accepted and at least one implementation/review cycle is complete. +- Acceptance: future durable projects can be decomposed, reviewed, and synthesized consistently without single-chat state loss. + +### 5. `atlas-evaluation-loop` + +- Proposed category: `software-development` or `devops` +- Owner profile: reviewer / ops +- Dependency: Workstream 9 evaluation loops +- Scope: mapping eval failures and smoke-test results into skill patches, new backlog items, or tool/config fixes. +- Ready when: repeatable evaluation scenarios and result logs exist. +- Acceptance: agent quality regressions produce actionable skill/tool/config follow-up instead of informal observations. + +## Review rules + +- Do not promote a backlog item into a skill until dependencies are met and the workflow is verified. +- If promotion requires code/config changes or production gateway behavior changes, use a review-required Kanban handoff. +- Keep secrets, raw auth tokens, and runtime state out of this note. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Skill Inventory.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Skill Inventory.md new file mode 100644 index 0000000..c30b9f8 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Atlas/Skill Inventory.md @@ -0,0 +1,39 @@ +# Atlas Skill Inventory + +Last audited: 2026-05-14 +Owner: ops profile +Source workstream: Atlas Capability Upgrade Program — Workstream 10 + +## Purpose + +This note maps the skills Atlas should rely on for Hermes, gateway messaging, Kanban, Obsidian, local services, and lifecycle maintenance. Use it during monthly/quarterly skill audits and when deciding whether a repeated workflow should become a skill patch, a new skill, or a backlog item. + +## Inventory and owner map + +| Skill | Path | Domain | Owner profile | Trigger / when-to-use | Linked workflows | Risk tier | Last audited | Status | +|---|---|---|---|---|---|---|---|---| +| hermes-agent | `/home/will/.hermes/profiles/ops/skills/autonomous-ai-agents/hermes-agent/SKILL.md` | Hermes CLI, config, profiles, gateway, cron, providers, tools | ops | Configure, set up, troubleshoot, or explain Hermes Agent | Gateway, cron, profiles, MCP, tools, security toggles | High: can affect production gateway/config | 2026-05-14 | Canonical Hermes operations reference; patch only after verified CLI/docs drift. | +| hermes-agent-skill-authoring | `/home/will/.hermes/profiles/ops/skills/software-development/hermes-agent-skill-authoring/SKILL.md` | In-repo skill authoring | ops / engineer | Add or edit skills intended for the Hermes source repo | Frontmatter validation, repo placement, commit workflow | Medium: repo/source changes | 2026-05-14 | Good for shipped skills; pair with `skill-tightening-lifecycle` for user-local lifecycle policy. | +| skill-tightening-lifecycle | `/home/will/.hermes/profiles/ops/skills/devops/skill-tightening-lifecycle/SKILL.md` | Skill audit, creation, patching, backlog policy | ops | Decide create vs patch vs backlog and run skill audits | Workstream 10, recurring skill lifecycle | Medium: governs durable procedural memory | 2026-05-14 | Created by implementation task. | +| kanban-worker | `/home/will/.hermes/profiles/ops/skills/devops/kanban-worker/SKILL.md` | Kanban worker execution | all kanban worker profiles | Running a dispatched Kanban task | Worker lifecycle, review-required handoff, retries | Medium: durable task state | 2026-05-14 | Strong; include in periodic audit. | +| kanban-orchestrator | `/home/will/.hermes/profiles/ops/skills/devops/kanban-orchestrator/SKILL.md` | Kanban task decomposition | planner / atlas / ops | Break a high-level goal into specialist tasks | Board fan-out, dependencies, synthesis | Medium: task routing decisions | 2026-05-14 | Strong; include in periodic audit. | +| webhook-subscriptions | `/home/will/.hermes/profiles/ops/skills/devops/webhook-subscriptions/SKILL.md` | Event-driven automation | ops | Configure or troubleshoot Hermes webhook routes | Workstream 6, event-driven agent runs | High: incoming automation routes | 2026-05-14 | Good; cross-link for scheduled audits as event source. | +| obsidian | `/home/will/.hermes/profiles/ops/skills/note-taking/obsidian/SKILL.md` | Obsidian vault file operations | writer / ops | Read, search, create, or edit notes in Will's Obsidian vault | Project notes, artifacts, runbooks | Medium: durable knowledge artifacts | 2026-05-14 | Useful file guidance; Atlas-specific project-memory conventions remain backlog. | +| native-mcp | `/home/will/.hermes/profiles/ops/skills/mcp/native-mcp/SKILL.md` | MCP server setup | ops | Configure or troubleshoot native MCP servers | Local tool integrations, external tools | High: tool surface changes | 2026-05-14 | Existing coverage for MCP mechanics. | +| llama-cpp | `/home/will/.hermes/profiles/ops/skills/mlops/inference/llama-cpp/SKILL.md` | Local GGUF inference | ops / mlops | Use llama.cpp local inference or HF model discovery | Workstream 5 local model routing | Medium: local compute/config | 2026-05-14 | Relevant local model skill; broader local-services playbook remains backlog. | +| teams-meeting-pipeline | `/home/will/.hermes/profiles/ops/skills/productivity/teams-meeting-pipeline/SKILL.md` | Meeting pipeline operations | ops | Operate Teams meeting summary pipeline | Notifications, transcripts, automations | Medium: external service workflow | 2026-05-14 | Good model for service-specific operational runbooks. | +| swarm | `/home/will/.hermes/profiles/ops/skills/devops/swarm/SKILL.md` | Will's swarm host/services | ops | Swarm service wiring and local infra runbooks | n8n, local services, host-side operations | High: Will-specific infrastructure | 2026-05-14 | Present locally; include in local-services audit after Workstream 3 confirms safe wrappers. | + +## Audit procedure + +1. Run `hermes skills list` and `hermes skills check` from the active profile. +2. Load each relevant skill with `skill_view` before relying on it. +3. Verify suspected drift with live CLI help, source/docs reads, logs, or targeted smoke tests. +4. Patch only verified, narrow drift; backlog unverified or policy-dependent items. +5. Record changed paths, validation commands, and open risks in Kanban handoff. + +## Cadence + +- Monthly light audit: inventory freshness, obvious stale commands, missing backlog status. +- Quarterly deep audit: after Hermes upgrades or major gateway/Kanban/local-service changes. +- Immediate patch: after a non-trivial workflow succeeds through debugging or the user corrects a recurring approach. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Hermes Atlas Personal Assistant.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Hermes Atlas Personal Assistant.md new file mode 100644 index 0000000..c2ab152 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Hermes Atlas Personal Assistant.md @@ -0,0 +1,5 @@ +# Hermes Atlas Personal Assistant + +Project index for Atlas/Hermes assistant work. + +Related: [[Projects/Atlas Discord Telegram Workflow]], [[Projects/Atlas Capability Upgrade Program]], [[Atlas/Personal Context/Projects/Hermes Atlas Personal Assistant]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Project Context Index.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Project Context Index.md new file mode 100644 index 0000000..b1a6416 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Project Context Index.md @@ -0,0 +1,38 @@ +--- +title: Project Context Index +area: projects +tags: [plans, assistant, atlas, context-memory] +created: 2026-05-14 +updated: 2026-05-14 +status: active +related: [[Ops Home]], [[Swarm Operating Manual]], [[Context Pack]], [[Atlas Capability Upgrade Program]] +--- + +# Project Context Index + +Use this index as the first stop for active project context. Keep rows concise and link out to the project note, runbooks, decisions, and context packs for details. + +## Maintenance rules + +- Update the relevant row after major Kanban completion, repo/workspace changes, new runbooks, accepted decisions, or changed verification commands. +- Mark unknown values as `TBD (owner: ...)`; do not guess. +- Keep secrets, raw PII, auth state, and runtime churn out of this index. +- Weekly review: Atlas/coordinator checks active rows for stale status and missing handoff links. + +## Active projects + +| Project | Project note | Board / task source | Repo or workspace | Goal / current status | Owner | Reviewer | Common commands / smoke tests | Related runbooks, decisions, context packs | +|---|---|---|---|---|---|---|---|---| +| Atlas Capability Upgrade Program | [[Atlas Capability Upgrade Program]] | Hermes Kanban board `atlas-capability-upgrades`; workstream implementation tasks | Vault path: `/home/will/lab/swarm/swarm-common/obsidian-vault/will/will-shared-zap`; Hermes source/repo paths: TBD if a workstream touches code | Implement ten capability upgrades so Atlas becomes a persistent operations layer for Will's swarm. Workstream 1 context-memory docs installed and linked from [[Ops Home]] and the program note. | Will / Atlas coordinator | Reviewer profile for usability and safety pass | Docs check: verify linked notes exist and that [[Ops Home]] and the program note link to this context system. If touching a git repo, run `git status --short --branch` before and after. | [[Swarm Operating Manual]], [[Context Pack]], [[Promote Session Output to Notes]], [[Atlas Shared Project Context Memory Spec]] | + +## Row schema for new projects + +When adding a project, include: + +- Project name and Obsidian note path. +- Board/task source, if applicable. +- Active repository or workspace path. +- Goal and current status. +- Owner and reviewer profile. +- Common commands or smoke tests. +- Related runbooks, decisions, and context packs. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Projects Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Projects Home.md new file mode 100644 index 0000000..8b17f37 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Projects/Projects Home.md @@ -0,0 +1,20 @@ +# Projects Home + +Active outcomes live here. Each project should have one note created from [[Project]]. + +## Active projects + +```dataview +TABLE status, owner, target +FROM "Projects" +WHERE status != "archived" +SORT target ASC +``` + +## Open project tasks + +```tasks +not done +path includes Projects +sort by due +``` diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Obsidian Automation Health.md b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Obsidian Automation Health.md new file mode 100644 index 0000000..abd94a2 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Obsidian Automation Health.md @@ -0,0 +1,12 @@ +# Obsidian Automation Health + +Updated: 2026-05-21T00:00:17.088Z + +## Status + +- Overall: Needs attention +- Obsidian REST: OK +- Reindex trigger: {"error":{"message":"500 - \"{\\n \\\"error\\\": \\\"[Errno 2] No such file or directory: '/home/will/.hermes/skills/note-taking/rag-search/scripts/reindex_obsidian.sh'\\\"\\n}\"","name":"AxiosError","stack":"AxiosError: Request failed with status code 500\n at settle (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/axios@1.13.5/node_modules/axios/lib/core/settle.js:19:12)\n at RedirectableRequest.handleResponse (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/axios@1.13.5/node_modu +- RAG/embedding check: {"ok":false,"status":"failed","exitCode":127,"output":"RAG health script missing: /home/will/.hermes/scripts/rag_embedding_health.py","durationMs":0} + +This note is automatically overwritten by n8n. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Obsidian Plugin Setup.md b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Obsidian Plugin Setup.md new file mode 100644 index 0000000..7dbb623 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Obsidian Plugin Setup.md @@ -0,0 +1,27 @@ +# Obsidian Plugin Setup + +Dataview and Tasks are installed and enabled in this vault. + +## Installed community plugins + +- **Local REST API** — API access for Atlas/Hermes automation. +- **Dataview** — renders project/decision/meeting/runbook tables. +- **Tasks** — renders cross-vault task queries. + +## Vault config + +- Templates folder: `Templates` +- Daily notes folder: `Daily` +- Daily note template: `Templates/Daily Note` + +## Dashboard notes using these plugins + +- [[Ops Home]] +- [[Projects Home]] +- [[Meetings Home]] +- [[Decisions Home]] +- [[Runbooks Home]] + +## Verification + +After install, Obsidian was reloaded through Local REST API command `app:reload`. Plugin commands are available for both Dataview and Tasks, confirming they loaded. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Resources Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Resources Home.md new file mode 100644 index 0000000..1592d51 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Resources Home.md @@ -0,0 +1,7 @@ +# Resources Home + +Resources are reference material that may be useful later. + +Use for clipped articles, technical references, summaries, tutorials, and research notes. + +Prefer linking resources back to projects, decisions, and runbooks where they are used. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Service Catalog.md b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Service Catalog.md new file mode 100644 index 0000000..ff322a6 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Service Catalog.md @@ -0,0 +1,297 @@ +--- +type: service-catalog +created: 2026-05-14T14:50:46-07:00 +updated: 2026-05-14T14:50:46-07:00 +tags: + - service-catalog + - swarm + - hermes + - automation +--- + +# Service Catalog + +Canonical index of local services, automation tools, Hermes capabilities, and where to find their operational docs. + +> Generated/updated by Atlas from live system inventory on `2026-05-14T14:50:46-07:00`. Secrets are intentionally omitted. + +## Quick links + +- [[Ops Home]] +- [[Obsidian Automation Health]] +- [[Obsidian Plugin Setup]] +- [[Runbooks Home]] +- [[Projects Home]] +- [[Decisions Home]] + +## Primary repositories and config locations + +| Area | Path / command | Purpose | +| --- | --- | --- | +| Swarm repo | `~/lab/swarm` | Docker services, n8n, local AI, OpenClaw helpers, service scripts | +| Swarm Makefile | `cd ~/lab/swarm && make help` | Authoritative operations target list | +| n8n workflow exports | `~/lab/swarm/swarm-common/n8n-workflows/` | Versioned workflow backups | +| Shared Obsidian vault | `~/lab/swarm/swarm-common/obsidian-vault/will/will-shared-zap` | Active API-backed vault | +| Hermes config | `~/.hermes/config.yaml` | Atlas/Hermes model, tools, gateway, profiles | +| Hermes env/secrets | `~/.hermes/.env` | Secrets; do not print or commit | +| Hermes source | `~/.hermes/hermes-agent` | Atlas local source checkout | +| Hermes skills | `~/.hermes/skills/` | Procedural docs and reusable playbooks | + +## Local endpoints + +| Service | Port | Status | Purpose | Health / base URL | +| --- | --- | --- | --- | --- | +| Brave Search MCP | 18802 | HTTPError | Brave Search MCP server for Hermes MCP tools | `http://127.0.0.1:18802/mcp` | +| SearXNG | 18803 | TimeoutError | SearXNG metasearch | `http://127.0.0.1:18803/search?q=test&format=json` | +| LiteLLM | 18804 | TimeoutError | LiteLLM OpenAI-compatible model proxy | `http://127.0.0.1:18804/health/liveliness` | +| Kokoro TTS | 18805 | OK 200 | Kokoro local TTS | `http://127.0.0.1:18805/health` | +| llama.cpp | 18806 | OK 200 | llama.cpp local LLM | `http://127.0.0.1:18806/v1/models` | +| Ollama embeddings | 18807 | OK 200 | Ollama embeddings API | `http://127.0.0.1:18807/api/version` | +| n8n | 18808 | OK 200 | n8n workflow automation | `http://127.0.0.1:18808/healthz` | +| Docker health | 18809 | OK 200 | Docker/container health API | `http://127.0.0.1:18809/health` | +| Obsidian reindex | 18810 | OK 200 | Obsidian/RAG reindex trigger | `http://127.0.0.1:18810/healthz` | +| Whisper CPU | 18811 | OK 200 | Whisper.cpp CPU STT fallback | `http://127.0.0.1:18811/` | +| URL extractor | 18812 | OK 200 | URL/PDF/YouTube content extractor | `http://127.0.0.1:18812/healthz` | +| Voice memo processor | 18813 | OK 200 | Voice memo processor | `http://127.0.0.1:18813/healthz` | +| RAG/embedding health | 18814 | OK 200 | RAG/Ollama/Obsidian health wrapper | `http://127.0.0.1:18814/healthz` | +| Obsidian REST HTTP | 27123 | OK 200 | Obsidian Local REST API HTTP | `http://127.0.0.1:27123/` | + +## Docker services + +| Container | Status | Ports | +| --- | --- | --- | +| n8n-agent | Up 21 hours (healthy) | 0.0.0.0:18808->5678/tcp, [::]:18808->5678/tcp | +| whisper-server | Up 25 hours (healthy) | 0.0.0.0:18811->8080/tcp, [::]:18811->8080/tcp | +| litellm | Up 4 hours (healthy) | 0.0.0.0:18804->4000/tcp, [::]:18804->4000/tcp | +| litellm-db | Up 25 hours (healthy) | 5432/tcp | +| kokoro-tts | Up 25 hours | 0.0.0.0:18805->8880/tcp, [::]:18805->8880/tcp | +| brave-search | Up 25 hours | 0.0.0.0:18802->8000/tcp, [::]:18802->8000/tcp | +| searxng | Up 25 hours | 0.0.0.0:18803->8080/tcp, [::]:18803->8080/tcp | + +Management commands: + +```bash +cd ~/lab/swarm +make ps +make status +make local-ai-health +make api-health +make timers +``` + +## Host-side systemd/user services + +Important known services: + +| Unit | Purpose | +| --- | --- | +| `llama-server.service` | Host-side llama.cpp local LLM on 18806 | +| `ollama.service` | Host-side Ollama embeddings on 18807 | +| `docker-health-endpoint.service` | Container health API on 18809 | +| `obsidian-reindex-endpoint.service` | Obsidian/RAG reindex endpoint on 18810 | +| `url-content-extractor.service` | URL/PDF/YouTube extraction on 18812 | +| `voice-memo-processor.service` | Voice memo processing on 18813 | +| `rag-embedding-health.service` | RAG/Ollama/Obsidian health check wrapper on 18814 | + +Useful checks: + +```bash +systemctl --user list-units '*obsidian*' '*rag*' '*url-content*' '*voice-memo*' '*docker-health*' --all +systemctl --user list-timers +journalctl --user -u obsidian-reindex-endpoint.service -n 50 --no-pager +``` + +## n8n workflows + +n8n UI/API: `http://127.0.0.1:18808` + +| Workflow | ID | State | +| --- | --- | --- | +| Calendar to Obsidian Notes | QRCCdHNXZUHc2Oz4 | inactive | +| Daily OpenClaw Session Digest | qqYwAD05AvRHrHPc | inactive | +| Evening Digest | PlZywwqL8MRNEAN6 | active | +| Gmail Inbox Monitor + Obsidian Notes | whtdorf7yJMVYeHm | active | +| IMAP Inbox Triage + Obsidian Notes | 9sFwRyUDz51csAp7 | active | +| IMAP Inbox Triage + Obsidian Notes (squareffect) | xjUoQf97TkBrawc8 | inactive | +| IMAP Inbox Triage + Obsidian Notes (wills-portal) | kHDK9QdUSiAJ8rCM | inactive | +| Morning Brief | g3IdGZCK1EtTsv9T | active | +| n8n Failure Digest | G9ylNbHbnJ6fWX2C | active | +| Nightly Obsidian Vault Sync | 75JCevkdgkyCr2qH | inactive | +| Obsidian Chat Summary Capture | LF3i86l3NkxpayxL | active | +| Obsidian Daily Review | YZyJ5G0Ur8D6TlM8 | active | +| Obsidian Health + Reindex | PCtD3PuQjzKLyEEE | active | +| Obsidian Inbox Triage | 6SKSZWZwuJNwuO2P | active | +| Obsidian URL to Note | Ori3Bu5u5ODtxxyD | active | +| Obsidian Vault Reindex | 85ntyyphDJ4Ms2b4 | active | +| Obsidian Weekly Decision Runbook Extractor | UWLMOQQVxbTX6Sis | active | +| OpenClaw Action Bus | Jwi54VWMdlLqYnRo | inactive | +| OpenClaw Reminder Webhook | RUR1CGn0ikkxbPin | inactive | +| RAG and Embedding Health Watchdog | SwKaPtYqUJrakpFu | active | +| Swarm Health Watchdog | lDKocSFXBQWQrDd3 | active | +| Voice Memo Capture (Audio URL + Local Whisper) | El1BHJZ56JlzhrRZ | active | +| Web-to-Notes Capture (Local LLM + Obsidian) | GSmzuA5dgGgyRg5v | active | + +Obsidian webhook endpoints: + +| Workflow | Method / URL | Input | +| --- | --- | --- | +| Obsidian Chat Summary Capture | `POST http://127.0.0.1:18808/webhook/obsidian-chat-summary` | JSON with `type`, `title`, `summary`, `content`, optional `tags`, `metadata` | +| Obsidian URL to Note | `POST http://127.0.0.1:18808/webhook/obsidian-url-to-note` | JSON with `url`, optional `folder`, `tags`, `notes` | + +## Hermes capabilities + +### Enabled toolsets + +| Toolset | Description | +| --- | --- | +| web | 🔍 Web Search & Scraping | +| browser | 🌐 Browser Automation | +| terminal | 💻 Terminal & Processes | +| file | 📁 File Operations | +| code_execution | ⚡ Code Execution | +| vision | 👁️ Vision / Image Analysis | +| image_gen | 🎨 Image Generation | +| tts | 🔊 Text-to-Speech | +| skills | 📚 Skills | +| todo | 📋 Task Planning | +| memory | 💾 Memory | +| session_search | 🔎 Session Search | +| clarify | ❓ Clarifying Questions | +| delegation | 👥 Task Delegation | +| cronjob | ⏰ Cron Jobs | +| messaging | 📨 Cross-Platform Messaging | + +### Disabled toolsets + +| Toolset | Description | +| --- | --- | +| video | 🎬 Video Analysis | +| video_gen | 🎬 Video Generation | +| moa | 🧠 Mixture of Agents | +| rag_search | 🧠 RAG Search | +| rl | 🧪 RL Training | +| homeassistant | 🏠 Home Assistant | +| spotify | 🎵 Spotify | +| yuanbao | 🤖 Yuanbao | +| computer_use | 🖱️ Computer Use (macOS) | + +### MCP servers + +```text +MCP Servers: + + Name Transport Tools Status + ──────────────── ────────────────────────────── ──────────── ────────── + brave-search http://127.0.0.1:18802/mcp all ✓ enabled +``` + +### Hermes profiles + +```text +Profile Model Gateway Alias Distribution + ─────────────── ─────────────────────────── ─────────── ─────────── ──────────────────── + ◆default gpt-5.5 running — — + atlas gpt-5.5 stopped — — + engineer gpt-5.5 stopped — — + glm-simple glm-5.1 stopped — — + ops gpt-5.5 stopped — — + orchestrator gpt-5.5 stopped — — + researcher gpt-5.5 stopped — — + reviewer gpt-5.5 stopped — — + writer gpt-5.5 stopped — — +``` + +### Hermes cron jobs + +```text + +┌─────────────────────────────────────────────────────────────────────────┐ +│ Scheduled Jobs │ +└─────────────────────────────────────────────────────────────────────────┘ + + c515ca076b73 [active] + Name: Hermes config git snapshot + Schedule: 0 3 * * * + Repeat: ∞ + Next run: 2026-05-15T03:00:00-07:00 + Deliver: discord:1494453542243532932 + Script: hermes_git_snapshot.sh + Mode: no-agent (script stdout delivered directly) + Last run: 2026-05-11T03:00:37.525856-07:00 ok + + c15ee395a38d [active] + Name: atlas-minio-self-backup + Schedule: 0 3 * * * + Repeat: ∞ + Next run: 2026-05-15T03:00:00-07:00 + Deliver: origin + Script: atlas-backup-to-minio-cron.sh + Mode: no-agent (script stdout delivered directly) + + 1ef682e65695 [active] + Name: watch pi-agent-hermes-bound kanban + Schedule: every 2m + Repeat: ∞ + Next run: 2026-05-14T14:49:39.352638-07:00 + Deliver: local + Script: watch_pi_agent_kanban.py + Mode: no-agent (script stdout delivered directly) + Last run: 2026-05-14T14:47:39.352638-07:00 ok + +``` + +## Local AI and automation routing + +| Capability | Preferred endpoint/tool | Notes | +| --- | --- | --- | +| Web search | SearXNG `18803` or Brave MCP `18802` | Hermes web search and MCP Brave Search are both available | +| Model proxy | LiteLLM `18804` | Use for OpenAI-compatible routed models | +| Direct local LLM | llama.cpp `18806` | Current model: Gemma 4 26B GGUF; useful for n8n/local automation | +| Embeddings | Ollama `18807` | Use raw Ollama API root, not `/v1`, for `/api/embed` | +| Text-to-speech | Kokoro `18805` / Hermes TTS tool | Local speech generation | +| Speech-to-text | Whisper `18811` and wrappers | Local transcription fallback | +| Workflow automation | n8n `18808` | Durable jobs and webhooks | +| Knowledge store | Obsidian REST `27123`; RAG/Chroma local store | Obsidian notes plus Hermes rag-search index | + +## Obsidian integration + +| Component | Location / endpoint | Purpose | +| --- | --- | --- | +| Local REST API | `http://127.0.0.1:27123` and `https://127.0.0.1:27124` | Read/write notes and execute commands | +| Autostart entry | `~/.config/autostart/obsidian-autostart.desktop` | Launches Obsidian at graphical login | +| Autostart script | `~/.local/bin/start-obsidian-if-needed` | Idempotent launcher for Obsidian | +| Reindex endpoint | `http://127.0.0.1:18810/reindex` | Rebuilds/updates local Obsidian/RAG index | +| Dataview plugin | Vault `.obsidian/plugins/dataview` | Dashboard tables | +| Tasks plugin | Vault `.obsidian/plugins/obsidian-tasks-plugin` | Dashboard task queries | + +## Source-of-truth docs + +| Topic | Where | +| --- | --- | +| Swarm operations | Hermes skill `swarm`; `~/lab/swarm/Makefile` | +| n8n API/workflow management | Hermes skill `swarm`, reference `n8n-api-and-workflows.md` | +| Obsidian filesystem/API usage | Hermes skill `obsidian` | +| Hermes CLI/toolsets/gateway/profiles | Hermes skill `hermes-agent`; `hermes --help`; `hermes tools list` | +| Obsidian automation workflows | `~/lab/swarm/swarm-common/n8n-workflows/obsidian-*.json` | +| Runbooks | [[Runbooks Home]] | + +## Safety notes + +- Do not print `.env`, API keys, tokens, auth JSON, or decrypted n8n credentials. +- From inside the `n8n-agent` container, host services are reached via `http://172.19.0.1:`, not `127.0.0.1:`. +- Use file-based workflow updates for large n8n JSON payloads. +- After structural n8n workflow edits, deactivate/reactivate the workflow. +- Prefer `make` targets in `~/lab/swarm` for routine service operations. +- Check git status before committing; commit only targeted non-secret source/config/docs. + +## Refresh procedure + +To refresh this catalog: + +```bash +cd ~/lab/swarm +make status +hermes tools list +hermes mcp list +# Ask Atlas: "refresh the Obsidian Service Catalog" +``` diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Swarm Operating Manual.md b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Swarm Operating Manual.md new file mode 100644 index 0000000..52d3f5e --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Swarm Operating Manual.md @@ -0,0 +1,78 @@ +--- +title: Swarm Operating Manual +area: reference +tags: [reference, assistant, atlas, swarm] +created: 2026-05-14 +updated: 2026-05-14 +status: active +related: [[Ops Home]], [[Project Context Index]], [[Context Pack]], [[Promote Session Output to Notes]], [[Atlas Capability Upgrade Program]] +--- + +# Swarm Operating Manual + +This is the front door for Will's Atlas/Hermes/Obsidian/Kanban swarm. Start here when an agent or human needs to understand where durable state lives, how work moves through the system, and what must stay out of notes. + +## Entry points + +- Daily navigation: [[Ops Home]]. +- Active project state: [[Project Context Index]] and the relevant note in `Projects/`. +- Reusable procedures: [[Runbooks Home]]. +- Stable references and summaries: [[Resources Home]]. +- Specialist handoffs: use [[Context Pack]]. +- Session promotion procedure: [[Promote Session Output to Notes]]. + +## Roles + +- Will: sets goals, approves policy decisions, reviews risky or irreversible work. +- Atlas / coordinator: maintains high-level context, routes work to Kanban or specialist profiles, synthesizes handoffs, and keeps indexes current. +- Writer: drafts docs, project context packs, status reports, runbooks, and note updates. +- Researcher: gathers sources and summarizes facts with citations or source paths. +- Implementer / coding specialist: makes narrow code or config changes in the correct repo or workspace. +- Reviewer: checks usability, safety, diffs, tests, and whether acceptance criteria were met before changes are treated as complete. + +## Where durable state lives + +- `Projects/`: active implementation programs, project specs, project status, and project-specific context. +- [[Project Context Index]]: one-row orientation for active projects, including board, repo/workspace path, status, commands, runbooks, and owner/reviewer. +- `Runbooks/`: repeatable operational procedures. +- `Decisions/`: important product, architecture, or workflow choices. +- `Resources/`: stable summaries, manuals, research notes, and references. +- `Templates/`: reusable note and handoff formats. +- `Inbox/`: loose captures that still need triage. +- Hermes Kanban: active task graph, blockers, worker handoffs, and review gates. + +## Starting work + +1. Open [[Ops Home]] and follow links to the active project or runbook. +2. Check [[Project Context Index]] for the project row: board, status, repo/workspace path, owner, reviewer, and verification commands. +3. Read the project note and any linked specs, runbooks, decisions, or context packs. +4. If the work is multi-step or should survive one chat, create or use a Hermes Kanban board/task instead of keeping it in chat. +5. Give specialists a short [[Context Pack]] rather than a long transcript. +6. At handoff, write durable facts to the right note and put transient execution details in Kanban comments or the final worker summary. + +## Request patterns + +- Plan: ask Atlas to create a plan/spec in `Projects/` or `.hermes/plans/`, then route work through Kanban. +- Execute: provide a context pack, target files/repos, acceptance criteria, and verification commands. +- Review: point reviewer at the diff, artifact path, task id, tests run, and risk areas. +- Schedule: use Hermes cron for recurring checks or summaries; document the job purpose and owner in the relevant project/runbook. +- Promote: use [[Promote Session Output to Notes]] when chat output becomes durable knowledge. + +## Safety boundaries + +Never write these to notes, task bodies, commits, or durable handoffs: + +- API keys, passwords, OAuth tokens, private keys, session cookies, recovery codes, or credentials. +- Raw PII or contact details beyond what is already intentionally kept in the vault. +- Full chat dumps copied for convenience; summarize current state, decisions, paths, and verification instead. +- Runtime churn such as cache files, offsets, local auth state, `.obsidian/workspace.json`, or generated database WAL/SHM files. +- Unsupported claims, guessed paths, or stale status presented as current truth. + +Use `TBD (owner: name)` for unknown fields rather than inventing values. + +## Maintenance cadence + +- Update [[Project Context Index]] after major Kanban completion, repo/workspace change, new runbook, or accepted decision. +- Review active project rows weekly for stale status, missing reviewer, or obsolete commands. +- When a specialist creates a durable artifact, link it from the project note and relevant home/index note. +- Keep [[Ops Home]] mostly as navigation; keep vault-wide rules in [[Vault Conventions]]; keep swarm workflow guidance here. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Weekend Activity Ideas.md b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Weekend Activity Ideas.md new file mode 100644 index 0000000..3f2637e --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Resources/Weekend Activity Ideas.md @@ -0,0 +1,52 @@ +--- +title: Weekend Activity Ideas +created: 2026-04-29 +updated: 2026-04-29 +tags: + - personal + - lifestyle +--- + +# Weekend Activity Ideas + +Finding a new rhythm for your weekends is a great move. Replacing the social routine of a bar with something active or creative can be incredibly rewarding. Since you're looking for a mix of environments, here are a few ideas that offer a similar "event" feel without the focus on alcohol. + +--- + +## 🏠 At Home: The "Bad Weather" Retreat + +When the rain keeps you inside, you can still find activities that are engaging and collaborative. + +* **Modern Board Gaming:** Move beyond the classics. Games like *Catan*, *Ticket to Ride*, or cooperative games like *Pandemic* require strategy and communication, making the evening feel like an event. +* **Culinary Challenges:** Pick a complex cuisine you've never tried (like making homemade pasta or sushi) and spend the afternoon mastering it together. It turns a meal into a three-hour shared project. +* **Interactive Interior Design:** Use rainy days to brainstorm "layered lighting" or home automation projects. Mapping out how to improve your living space with smart tech can be a fun, ongoing hobby. + +--- + +## 🌲 Outdoors: For the Sunny Days + +Getting outside is the best way to reset after a long week, and it provides a natural dopamine hit that rivals any social hour. + +* **Urban Hiking & Parks:** Take advantage of local trails or large waterfront parks. Even a long walk through different neighborhoods can be a great way to explore the city's architecture and hidden gems. +* **Pickleball or Tennis:** These are social, easy to learn, and get your heart rate up. Many public parks have courts that are free or low-cost to use. +* **Weekend Markets:** Visiting farmers' markets or flower markets turns a chore into an outing. It's a great way to support local vendors and find fresh ingredients for your "At Home" cooking projects. + +--- + +## 🏢 Indoor (Out of the House): Culturally Immersive + +If you want to be "out and about" in a social setting that doesn't revolve around a taproom, try these alternatives: + +* **Live Music & Jazz Clubs:** Many venues offer incredible live performances where the focus is entirely on the stage. It keeps the "night out" energy alive while shifting the priority to the arts. +* **Bouldering or Climbing Gyms:** This is a very popular "alternative social" scene. It's physical, requires problem-solving, and has a very welcoming community atmosphere. +* **Cooking Classes or Workshops:** Many upscale grocers or specialized schools offer weekend workshops. Whether it's French pastry or Mediterranean small plates, you get the restaurant experience with a hands-on twist. + +--- + +## Comparison at a Glance + +| Setting | Activity Idea | Why it works | +| :--- | :--- | :--- | +| Home | Strategic Board Games | Mimics the social interaction of a bar but with more focus. | +| Outdoor | Waterfront Exploration | Low stress, high physical benefit, and great scenery. | +| Indoor | Bouldering/Climbing | High energy and a great way to meet a new, health-conscious crowd. | diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Arch AUR Build OOM Mitigation.md b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Arch AUR Build OOM Mitigation.md new file mode 100644 index 0000000..f881741 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Arch AUR Build OOM Mitigation.md @@ -0,0 +1,152 @@ +--- +type: runbook +system: CachyOS laptop +area: workstation +status: active +tags: + - arch-linux + - aur + - paru + - makepkg + - oom + - zram +created: 2026-05-19 +updated: 2026-05-19 +--- + +# Arch AUR Build OOM Mitigation + +## Context + +On Will's CachyOS/Arch laptop, `paru -Syu` can exhaust RAM and zram swap while compiling AUR packages. + +Observed on 2026-05-19: + +- Physical memory: about 30 GiB. +- zram swap: about 10 GiB. +- CPU parallelism: 24 threads (`nproc`). +- `/etc/makepkg.conf` had `MAKEFLAGS="-j$(nproc)"`. +- zram swap was heavily occupied even after pressure subsided: about 8.5 GiB / 10 GiB used. +- Kernel logs showed real OOM kills during the update attempt: + - Chrome was killed first. + - A `clang++` compile process was killed shortly after. + +Root cause: AUR builds inherited 24-way parallelism. Some C++/Rust builds can use well over 1 GiB per compile job, so `-j24` can overwhelm 30 GiB RAM plus zram. + +## Current mitigation + +A user-level makepkg override was created at: + +```text +/home/will/.makepkg.conf +``` + +Current contents: + +```bash +# Atlas conservative AUR build defaults for this laptop. +# Reason: /etc/makepkg.conf uses MAKEFLAGS="-j$(nproc)"; on this 24-thread CPU, +# parallel C/C++/Rust AUR builds can exhaust 30 GiB RAM + 10 GiB zram swap. +# Keep this user-level override instead of editing /etc/makepkg.conf. + +# Limit make/cmake/autotools-style builds. +MAKEFLAGS="-j6" + +# Limit compressors; zstd -T0 can spawn many threads during packaging. +COMPRESSZST=(zstd -c -T2 -9 -) +COMPRESSXZ=(xz -c -z -T2 -) + +# Keep large builds off /tmp tmpfs. /var/tmp is on disk here with much more room. +BUILDDIR=/var/tmp/makepkg + +# Best-effort caps for build systems used by many AUR packages. +export CARGO_BUILD_JOBS=4 +export NINJAFLAGS="-j6" +export CMAKE_BUILD_PARALLEL_LEVEL=6 +export npm_config_jobs=4 +``` + +Build directory created: + +```text +/var/tmp/makepkg +``` + +## Normal update command + +Use the normal command first: + +```bash +paru -Syu +``` + +The user-level makepkg limits should be picked up automatically. + +## If a specific package still OOMs + +Retry that package with stricter one-off limits: + +```bash +MAKEFLAGS="-j2" \ +CARGO_BUILD_JOBS=2 \ +NINJAFLAGS="-j2" \ +CMAKE_BUILD_PARALLEL_LEVEL=2 \ +paru -S +``` + +For extremely memory-heavy packages, use `-j1`. + +## If swap remains heavily occupied before retrying + +Check current memory/swap: + +```bash +free -h +swapon --show +zramctl +``` + +If RAM has plenty of headroom but zram swap remains full, a manual zram swap flush can help: + +```bash +sudo swapoff /dev/zram0 && sudo swapon /dev/zram0 +``` + +Caution: `swapoff` may temporarily move swapped pages back into RAM. Do this only when RAM has comfortable free/available capacity and the desktop is stable. + +## Diagnostic commands + +Check effective build settings: + +```bash +grep -nE '^(MAKEFLAGS|COMPRESSZST|COMPRESSXZ|BUILDDIR|export (CARGO_BUILD_JOBS|NINJAFLAGS|CMAKE_BUILD_PARALLEL_LEVEL|npm_config_jobs))' ~/.makepkg.conf +``` + +Check OOM evidence: + +```bash +journalctl -k --since '24 hours ago' --no-pager | grep -Ei 'out of memory|oom|killed process|clang|zram|swap' | tail -80 +``` + +Check current memory pressure: + +```bash +free -h +ps -eo pid,comm,%mem,%cpu,rss --sort=-rss | head -20 +``` + +Check paru cache size: + +```bash +du -sh ~/.cache/paru +``` + +## Notes + +- Prefer this user-level override over editing `/etc/makepkg.conf`; it is easier to audit and less likely to be overwritten by package updates. +- This does not reduce the zram cap; Will's current zram setup is intentionally around 10-12 GiB with less aggressive swappiness than CachyOS defaults. +- If updates become too slow, try raising `MAKEFLAGS`/`NINJAFLAGS` from `-j6` to `-j8`, but keep Rust/Cargo closer to `4` unless memory pressure is clearly low. + +## Related + +- [[Runbooks Home]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Atlas Event-Driven Automation.md b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Atlas Event-Driven Automation.md new file mode 100644 index 0000000..cbe4103 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Atlas Event-Driven Automation.md @@ -0,0 +1,132 @@ +--- +title: Atlas Event-Driven Automation +owner: Will / Atlas +status: implemented-partial +created: 2026-05-14T16:50:33-07:00 +source_task: t_fe2dbd34 +--- + +# Atlas Event-Driven Automation + +This runbook records the first safe event-driven automation layer for Atlas. The implementation favors deterministic no-agent monitoring, silent success, deduped alerts, and explicit human approval before exposing new public webhooks or enabling agent-backed external triggers. + +## Production target profile + +- Target profile: Hermes `default`, the stable production gateway profile. +- Gateway state observed: running under `hermes-gateway.service` with PID 982929. +- Webhook state observed: webhook platform is not enabled on the default profile; `http://127.0.0.1:8644/health` is not listening. +- Cron state observed before this work: existing default-profile jobs were present; workstream jobs were added to the same default profile. + +## Implemented event routes + +### System threshold watchdog + +- Script: `/home/will/.hermes/scripts/system_threshold_watchdog.py` +- State: `/home/will/.hermes/state/system_threshold_watchdog.json` +- Cron job: `451d1563e678` +- Schedule: every 10 minutes +- Delivery: `discord:1494453542243532932` +- Mode: no-agent; script stdout is delivered directly. +- Behavior: silent when healthy/no new alert; dedupes unchanged alerts. +- Checks: + - root/home disk usage: warning at 85%, critical at 92%; + - 15-minute load average greater than CPU cores; + - available memory below 10%; + - failed critical user services; + - local health endpoints for Docker, RAG/embedding, voice memo processor, and Obsidian reindex. +- Verification commands: + - `/home/will/.hermes/scripts/system_threshold_watchdog.py --dry-run` + - `hermes -p default cron run 451d1563e678` + - `hermes -p default cron list` + +### Blocked Kanban escalation + +- Script: `/home/will/.hermes/scripts/blocked_kanban_escalation.py` +- State: `/home/will/.hermes/state/blocked_kanban_escalation_seen.json` +- Cron job: `02304524b741` +- Schedule: every 30 minutes +- Delivery: `discord:1494453542243532932` +- Mode: no-agent; script stdout is delivered directly. +- Behavior: reads `/home/will/.hermes/kanban/boards/*/kanban.db` in read-only mode; silent when no stale blocked tasks; dedupes repeated alerts by task and escalation bucket. +- Escalation thresholds: more than 4 business hours or more than 24 wall-clock hours; repeats at 48h and 72h buckets. +- Verification commands: + - `/home/will/.hermes/scripts/blocked_kanban_escalation.py --dry-run` + - `hermes -p default cron run 02304524b741` + - `hermes -p default cron list` + +## Existing routes confirmed + +### n8n failure handling + +- Existing export: `/home/will/lab/swarm/swarm-common/n8n-workflows/G9ylNbHbnJ6fWX2C.json` +- Workflow name: `n8n Failure Digest` +- Export state: `active: true` +- Schedule in export: hourly. +- Decision: do not add a duplicate Hermes n8n failure cron yet. The existing n8n workflow is deterministic, already active, and already performs failure digesting; add a Hermes supplement only if duplicate/deduped notification behavior outside n8n is later required. + +### Transcript ingestion local path + +- Local services checked: + - `http://127.0.0.1:18813/healthz` returned OK. + - `http://127.0.0.1:18808/healthz` returned OK. + - `http://127.0.0.1:18810/healthz` returned OK. +- Smoke payload sent to n8n `obsidian-chat-summary` webhook with synthetic, non-private transcript content. +- Smoke result: HTTP 200, note path `Inbox/Chat Summaries/2026-05-14 - Atlas Event-Driven Automation Smoke.md`. +- Accepted local payload shape: + +```json +{ + "type": "transcript", + "title": "Short title", + "summary": "Human-readable summary", + "content": "Transcript text or sanitized excerpt", + "tags": ["transcript", "atlas"] +} +``` + +- Privacy policy: raw transcript content should go to local capture/Obsidian paths only by default. Do not include raw transcript content in chat notifications or public webhooks unless Will explicitly approves that source and payload class. + +## Deferred routes and blockers + +### Webhook platform / GitHub PR review + +Deferred. Enabling the webhook platform on the production gateway requires generating/storing a global HMAC secret, editing default-profile config or `.env`, choosing a public exposure/tunnel strategy, and restarting the production gateway. GitHub PR review also needs a first repository and delivery target policy. Do not guess these in an implementation task. + +Proposed first route after approval: + +- Subscription name: `github-pr-review` +- Event: `pull_request` +- Skill: `github-code-review` +- Delivery: GitHub comment if configured; otherwise the review Discord channel. +- Prompt should instruct the reviewer to inspect correctness, safety, tests, and config/secrets risk, and never merge. + +### Feed summaries + +Deferred. A feed summary cron should not be created until Will chooses the feed source list and digest destination. Keep the source list in a tracked plain config file rather than embedding it in the cron prompt. Start daily, with agent mode enabled only for summarization/prioritization. + +### Public transcript webhook + +Deferred. Use local n8n/Obsidian capture for now. A public deliver-only transcript notification route needs a payload privacy decision and HMAC-protected webhook platform first. + +## Notification policy + +- Silent success: healthy/no-op automations print nothing. +- Deterministic alerts use no-agent scripts and direct delivery. +- Agent runs are reserved for outputs where reasoning/summarization is the value, such as PR review and curated feed digesting. +- Alerts should include source, severity, time, correlation id/execution id/task id where available, and the next manual action. +- Alerts must not include secrets, tokens, raw stack traces, private payload dumps, or raw transcript PII. +- Deduplicate repeated alerts with local state or workflow logic. +- Severity mapping: + - Critical: service down, disk at or above 92%, unhealthy core containers, active board blocked task older than 24h. + - Warning: disk at or above 85%, high load, low memory, first non-critical workflow failure, optional service health warning. + - Info: successful transcript capture, feed digest, PR review completion. + +## Verification performed 2026-05-14 + +- `python -m py_compile` succeeded for both watchdog scripts. +- `system_threshold_watchdog.py --dry-run` returned OK with no threshold alerts. +- `blocked_kanban_escalation.py --dry-run` returned OK with no stale blocked tasks. +- Default-mode watchdog executions produced no stdout when healthy/no-op. +- Cron jobs `451d1563e678` and `02304524b741` were created under `hermes -p default` and force-triggered. +- After the scheduler tick, both new cron jobs showed last run `ok`. +- n8n, voice memo processor, Obsidian reindex, Docker health, and RAG/embedding health endpoints responded OK during implementation checks. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Atlas Kanban Durable Project Workflow.md b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Atlas Kanban Durable Project Workflow.md new file mode 100644 index 0000000..f425b9b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Atlas Kanban Durable Project Workflow.md @@ -0,0 +1,285 @@ +--- +type: runbook +system: atlas-kanban +status: active +owner: Will / Atlas +created: 2026-05-14 +related: + - "[[Atlas Capability Upgrade Program]]" + - "[[Kanban Task Graph Templates]]" +--- + +# Atlas Kanban Durable Project Workflow + +Use this runbook when a request should become durable, reviewable work instead of staying inside one chat thread. + +## When to create or reuse a board + +Create or reuse a Kanban board when any of these are true: + +- The work spans multiple roles, e.g. research, engineering, ops, review, writing. +- The work should survive an interrupted chat, gateway restart, or laptop sleep. +- A human may need to unblock, review, approve, or redirect a step. +- The output is an artifact, code/config change, runbook, or decision with audit value. +- The work can be parallelized or needs dependency gates. + +Use a dedicated board for durable programs and domains. Example: + +```bash +hermes kanban init atlas-capability-upgrades +``` + +Prefer one board per project/domain when unrelated tasks would make status hard to read. Use tenants only as soft namespacing inside a board; use separate boards for hard isolation. + +## Default workflow + +Default graph: + +```text +plan/spec -> task graph -> specialist execution -> reviewer gate -> Atlas synthesis/status report +``` + +Common stage mapping: + +1. Spec/discovery: ops, researcher, or writer creates an implementation-ready spec. +2. Orchestration: orchestrator verifies available profiles, then creates child cards and parent links. +3. Specialist execution: engineer, ops, researcher, writer, or other named specialist does the work in the right workspace. +4. Reviewer gate: reviewer or human reviews code/config/ops changes before they are considered done. +5. Synthesis/status: atlas or writer summarizes outcomes, artifacts, verification, blocked items, and next actions. + +## Step 0: inspect current state + +Before creating or changing tasks: + +```bash +hermes profile list +hermes kanban --board stats --json +hermes kanban --board list +``` + +Before touching a repository or vault: + +```bash +git -C status --short --branch +``` + +Do not route work to unknown profile names. The dispatcher will not invent missing assignees. + +## Workspace choice + +Choose the narrowest workspace that preserves the needed state: + +| Workspace kind | Use when | Notes | +|---|---|---| +| `scratch` | Research, specs, status summaries, throwaway artifacts | Fresh per run. Good default for notes that will be copied to durable paths. | +| `dir:` | Shared persistent notes/config/project directory | Use for Obsidian/vault or other durable shared directories. Inspect status first. | +| `worktree` | Code changes in a git repo | Use for implementation/review to isolate branches. Commit only intentional durable changes. | + +For config or repo changes, preserve the stable `default` profile as the production gateway unless Will explicitly asks to migrate it. + +## Profile routing policy + +Use actual profiles from `hermes profile list`. Current recommended routing: + +- `orchestrator`: decompose goals, create/link tasks, status synthesis. Do not implement. +- `researcher`: source discovery, comparisons, requirements investigation. +- `engineer`: code changes, tests, PR-ready diffs in worktree workspaces. +- `ops`: Hermes/profile/gateway/config/runbook operations and host/service diagnostics. +- `reviewer`: code/config/artifact review, approval, or blocking findings. +- `writer`: durable notes, reports, summaries, and polished user-facing artifacts. +- `glm-simple`: cheap/simple low-risk text cleanup or bounded deterministic tasks after an explicit routing decision. +- `atlas`: synthesis/status for Will-facing updates when a durable project needs a named Atlas output. +- `default`: stable production gateway only; do not use as a worker target unless Will explicitly asks. + +## Creating dependencies + +Use parent links at creation time whenever one task truly needs another task's output. + +Example shape: + +```bash +SPEC=$(hermes kanban --board create "spec: " --assignee ops --workspace scratch --priority 10 --json | jq -r .task_id) +IMPL=$(hermes kanban --board create "implement: " --assignee engineer --parent "$SPEC" --workspace worktree --skill test-driven-development --max-runtime 2h --priority 8 --json | jq -r .task_id) +REVIEW=$(hermes kanban --board create "review: " --assignee reviewer --parent "$IMPL" --workspace worktree --skill github-code-review --priority 7 --json | jq -r .task_id) +hermes kanban --board create "synthesize: status" --assignee writer --parent "$REVIEW" --workspace scratch --priority 5 +``` + +Rules: + +- Parallel lanes should be siblings with no parent links. +- Dependent stages should use `--parent`/`parents=[...]`; do not rely on prose like "wait for X". +- Create parents first, capture returned ids, then create children with parent ids immediately. +- Avoid linking after creation when a child could be claimed before the dependency exists. + +## Worker start and handoff standard + +Every worker starts by reading its card and parent handoffs. In a worker, use the Kanban tools; as a human, use: + +```bash +hermes kanban --board show +hermes kanban --board runs +hermes kanban --board log +``` + +Use structured metadata in completions/comments: + +```json +{ + "changed_files": ["path/to/file"], + "artifact_paths": ["path/to/artifact.md"], + "verification": ["exact command or check performed"], + "decisions": ["short decision and rationale"], + "residual_risk": ["known risk or empty list"], + "retry_notes": "what a retry should avoid or inspect first" +} +``` + +Never put secrets, raw tokens, raw personal data, long logs, or unrelated transcript text in task bodies, comments, or metadata. + +## Reviewer-gate policy + +Code, config, and ops changes normally do not complete directly from the implementer. + +Implementer workflow: + +1. Make narrow, reviewable changes. +2. Verify with targeted commands. +3. Add a Kanban comment containing `review-required handoff` and structured metadata. +4. Block the task with `reason="review-required: "`. + +Example worker-side shape: + +```python +kanban_comment( + body="review-required handoff:\n" + json.dumps({ + "changed_files": ["..."], + "tests_run": ["..."], + "verification": ["..."], + "diff_path": "...", + "decisions": ["..."], + "residual_risk": [] + }, indent=2) +) +kanban_block(reason="review-required: implementation finished; needs review before merge") +``` + +Reviewer workflow: + +- Complete the review task if approved, with findings and verification in metadata. +- Block with exact required changes if not approved. +- If changes are needed, create a new follow-up implementation task assigned to the original specialist; do not turn the reviewer card into implementation work. + +Docs, research, and spec-only tasks may complete directly when the artifact itself is the deliverable and no risk-bearing change was made. + +## Recovery procedure + +Do not blindly unblock. Inspect prior state first: + +```bash +hermes kanban --board show +hermes kanban --board runs +hermes kanban --board log +``` + +Blocked task: + +1. Read the block reason and comments. +2. If it asks for a human decision, answer in a comment, then unblock. +3. If it is `review-required`, route review or perform review before unblocking. +4. Unblock only after the missing input is present: + +```bash +hermes kanban --board unblock +``` + +Spawn failure or gave-up task: + +1. Confirm the assignee exists: + +```bash +hermes profile list +``` + +2. Check missing skill, credential, model, or PATH in that profile without printing secrets. +3. Reassign only to an existing profile when needed: + +```bash +hermes kanban --board reassign --reclaim --reason "profile recovery: " +``` + +Crashed, timed-out, or stale running task: + +1. Read runs/logs/comments first. +2. Prefer chunking scope, reducing memory, or raising max runtime only after understanding the prior failure. +3. Reclaim only when the worker is stale or known dead: + +```bash +hermes kanban --board reclaim --reason "stale claim: " +``` + +Watch active failures: + +```bash +hermes kanban --board watch --kinds completed,blocked,gave_up,crashed,timed_out +``` + +## Status reporting standard + +A daily or phase status report should be produced from board state, not from memory alone. + +Inputs: + +```bash +hermes kanban --board stats --json +hermes kanban --board list +hermes kanban --board watch --kinds completed,blocked,gave_up,crashed,timed_out +``` + +Report format: + +```markdown +# status - + +## Completed since last report +- : artifact, verification, downstream effect. + +## Running/ready by profile +- ops: ... +- engineer: ... +- reviewer: ... +- writer: ... + +## Blocked/gave_up items +- : owner/profile, exact blocker, next action, who owns it. + +## Risks / decisions needed +- ... + +## Next planned graph expansion +- ... +``` + +## delegate_task vs Kanban + +Use `delegate_task` for short, synchronous, non-durable reasoning inside the current turn when the parent needs the answer immediately. + +Use Kanban when work: + +- Must survive restarts or interruptions. +- Needs named persistent profiles. +- Requires human review/unblock. +- Spans multiple roles or artifacts. +- Needs dependency tracking or audit history. + +A Kanban worker may call `delegate_task` internally for bounded subtasks, but not as a substitute for board handoffs. + +## Verification checklist + +Before considering a durable project graph healthy: + +- `hermes profile list` confirms every assignee exists. +- `hermes kanban --board stats --json` returns successfully. +- Config parse confirms `kanban.dispatch_in_gateway=true` unless intentionally using manual dispatch. +- Task graph has parent links for true dependencies and no links for independent lanes. +- Code/config/ops changes end in reviewer-gated handoffs. +- Status reports include blocked/gave_up items and exact next actions. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Promote Session Output to Notes.md b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Promote Session Output to Notes.md new file mode 100644 index 0000000..7d03bf2 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Promote Session Output to Notes.md @@ -0,0 +1,86 @@ +--- +title: Promote Session Output to Notes +type: runbook +system: atlas-swarm +status: active +tags: + - type/runbook + - assistant + - atlas +created: 2026-05-14 +updated: 2026-05-14 +related: [[Ops Home]], [[Swarm Operating Manual]], [[Project Context Index]], [[Context Pack]] +--- + +# Runbook - Promote Session Output to Notes + +## When to use + +Use this when a chat, agent run, Kanban handoff, or meeting output contains durable knowledge that should be discoverable from Obsidian without rereading the original conversation. + +Do not use it for transient execution logs, one-off tool output, failed experiments with no lesson, or raw transcripts. + +## Preconditions + +- You know the audience and future use of the note. +- You can summarize the durable facts without copying secrets, credentials, raw PII, or unnecessary chat history. +- You have checked whether a relevant note already exists. + +## Destination rules + +Preserve the [[Ops Home]] capture flow: + +- Thread summary or stable reference -> `Resources/`. +- Active implementation or project state -> `Projects/`. +- Operational procedure -> `Runbooks/`. +- Important architectural/product/workflow choice -> `Decisions/`. +- Loose capture needing triage -> `Inbox/`. + +## Naming rules + +- One-off session summaries: `Notes/YYYY-MM-DD Topic.md` or `Resources/YYYY-MM-DD Topic Summary.md` when it should remain reference material. +- Durable references, runbooks, projects, and decisions: title-case stable names, e.g. `Swarm Operating Manual.md`. +- Avoid names that encode temporary task ids unless the note is specifically about that task. + +## Steps + +1. Classify the output by destination rules. +2. Search the target folder for an existing note before creating a new one. +3. Summarize durable content into one of these shapes: + - Project update: goal, current status, changed artifacts, next actions, blockers. + - Runbook: when to use, preconditions, steps, verification, rollback or recovery. + - Decision: context, options, decision, consequences, links. + - Resource: concise explanation, source links, related projects/runbooks. +4. Add frontmatter consistent with [[Vault Conventions]] or the local folder template. +5. Link back to the source project, runbook, decision, or [[Project Context Index]] row. +6. Update navigation where needed: + - Project notes link to new specs, runbooks, context packs, and decisions. + - [[Project Context Index]] row links to new project-critical artifacts. + - Home notes get links only when the artifact is a major entry point. +7. Record remaining uncertainty as `TBD (owner: ...)`, not guessed facts. + +## Verification + +- The note exists in the correct folder. +- The title and frontmatter are consistent with the vault conventions. +- The note links to related project/runbook/decision/resource notes. +- No secrets, tokens, private keys, credentials, raw PII, or auth state were copied. +- No raw transcript dump was pasted; the note contains a concise synthesis. +- Any project-critical artifact is discoverable from [[Project Context Index]] or the project note. + +## Rollback + +If a promoted note is wrong or unsafe: + +1. Remove any sensitive content immediately. +2. If the note should not exist, move it to `Archive/` or delete it per Will's instruction. +3. Remove or correct links from home notes, project notes, and the project index. +4. Leave a short correction note in the related project or decision if others may have seen the incorrect information. + +## Related + +- [[Swarm Operating Manual]] +- [[Project Context Index]] +- [[Context Pack]] +- [[Ops Home]] +- [[Vault Conventions]] diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Runbooks Home.md b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Runbooks Home.md new file mode 100644 index 0000000..6f8766e --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Runbooks/Runbooks Home.md @@ -0,0 +1,14 @@ +# Runbooks Home + +Runbooks are repeatable operational procedures. + +Create notes from [[Runbook]]. + +## Active runbooks + +```dataview +TABLE system, status +FROM "Runbooks" +WHERE type = "runbook" AND status != "archived" +SORT system ASC, file.name ASC +``` diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/README.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/README.md new file mode 100644 index 0000000..464d95e --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/README.md @@ -0,0 +1,64 @@ +--- +type: atlas-artifact-library +project: "Atlas Capability Upgrade Program" +status: accepted +owner: "writer profile / Atlas docs owner" +created: 2026-05-14 +updated: 2026-05-14 +source: "kanban:t_6f875045" +reviewer: "reviewer profile" +tags: [atlas, artifact, templates] +--- + +# Atlas Artifact Templates + +Canonical templates for durable Atlas outputs. Use these when chat, Kanban, or session work should become durable project state instead of staying only in a transcript. + +## Templates + +- [[implementation-plan]] — implementation and migration plans. +- [[decision-log]] — architecture or operations decisions. +- [[runbook]] — repeatable operational procedures. +- [[diagram]] — Mermaid/Excalidraw/SVG/source-backed diagrams. +- [[test-report]] — test, benchmark, evaluation, and smoke-check reports. +- [[status-report]] — weekly/monthly/milestone status updates. +- [[postmortem]] — incident/failure writeups. +- [[reviewer-checklist]] — common review checklist for all artifacts. + +## Destination policy + +- Plans: `Projects//Plans/` +- Decisions: `Projects//Decisions/` +- Runbooks: `Projects//Runbooks/` +- Diagrams: `Projects//Diagrams/` +- Test reports: `Projects//Reports/Test Reports/` +- Status reports: `Projects//Reports/Status/` +- Postmortems: `Projects//Reports/Postmortems/` + +## Naming conventions + +Use lowercase kebab-case filenames with a date prefix where chronology matters. + +- Plans: `YYYY-MM-DD--implementation-plan.md` +- Decisions: `YYYY-MM-DD-.md` +- Runbooks: `--runbook.md` +- Diagrams: `--diagram.md` +- Test reports: `YYYY-MM-DD--test-report.md` +- Status reports: `YYYY-MM-DD-status-report.md` +- Postmortems: `YYYY-MM-DD--postmortem.md` + +## Promotion workflow + +1. Decide whether a chat/session/Kanban result has durable value. +2. Pick the closest template from this folder. +3. Draft in the worker workspace if useful; save the final artifact in the project-local destination folder. +4. Link the artifact from the parent project note and from any relevant runbook/decision/status report. +5. Mention the artifact path in Kanban `metadata.created_artifacts` or in a review-required comment. +6. Run [[reviewer-checklist]] before marking the artifact accepted. + +## Required links in every artifact + +- Parent project note. +- Source Kanban task, session, PR, issue, or incident. +- Superseded artifact when replacing something. +- Owner and next action. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/decision-log.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/decision-log.md new file mode 100644 index 0000000..27c4d0b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/decision-log.md @@ -0,0 +1,69 @@ +--- +type: atlas-artifact +artifact_type: decision +project: "{{project}}" +status: draft +owner: "{{owner}}" +created: {{date}} +updated: {{date}} +source: "{{source}}" +reviewer: "{{reviewer|TBD}}" +tags: [atlas, artifact, decision] +--- +# Decision: {{title}} + +Parent project: [[{{project}}]] +Source: {{source}} +Supersedes: {{supersedes|N/A}} + +## Decision summary + +One sentence stating the decision. + +## Context + +Why this decision is needed now; include constraints and evidence. + +## Options considered + +| Option | Pros | Cons | Notes | +|---|---|---|---| +| A | | | | +| B | | | | +| C | | | | + +## Decision + +Chosen option and rationale. + +## Consequences + +- Positive consequences: ... +- Tradeoffs/costs: ... +- Follow-up tasks: ... + +## Revisit trigger/date + +Revisit when ... or by YYYY-MM-DD. + +## Owner + +Owner responsible for revisiting and maintaining this decision. + +## Decision-specific review checklist + +- [ ] Decision is explicit and not just context. +- [ ] Alternatives and tradeoffs are fairly represented. +- [ ] Revisit trigger/date is present. + +## Universal reviewer checklist + +Before accepting this artifact, verify: + +- [ ] Clear owner, status, date, source, and next action. +- [ ] Saved in the correct durable destination and named using the convention. +- [ ] Links back to the relevant project note and source task/issue/PR/session/incident. +- [ ] Claims are backed by evidence links, command output, or labeled assumptions. +- [ ] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [ ] No secrets, tokens, raw PII, private keys, or unredacted credentials are included. +- [ ] A new specialist can understand the artifact without rereading the whole chat. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/diagram.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/diagram.md new file mode 100644 index 0000000..deb6d01 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/diagram.md @@ -0,0 +1,73 @@ +--- +type: atlas-artifact +artifact_type: diagram +project: "{{project}}" +status: draft +owner: "{{owner}}" +created: {{date}} +updated: {{date}} +source: "{{source}}" +reviewer: "{{reviewer|TBD}}" +tags: [atlas, artifact, diagram] +--- +# Diagram: {{title}} + +Parent project: [[{{project}}]] +Source: {{source}} + +## Purpose and audience + +What this diagram explains and who it is for. + +## Source format + +Mermaid | Excalidraw | SVG | other: ... + +## Source file path + +`path/to/source-diagram` + +## Rendered/exported path + +`path/to/rendered-output` or N/A. + +## Diagram source + +```mermaid +flowchart TD + A[Source] --> B[Process] + B --> C[Artifact] +``` + +## Legend + +- Shape/color/edge meanings. + +## Assumptions / omitted details + +- Assumption: ... +- Omitted: ... because ... + +## Next action + +- Owner: ... +- Action: ... + +## Diagram-specific review checklist + +- [ ] Source is text/diffable when practical. +- [ ] Audience and purpose are clear. +- [ ] Legend explains non-obvious symbols. +- [ ] Omissions and assumptions are documented. + +## Universal reviewer checklist + +Before accepting this artifact, verify: + +- [ ] Clear owner, status, date, source, and next action. +- [ ] Saved in the correct durable destination and named using the convention. +- [ ] Links back to the relevant project note and source task/issue/PR/session/incident. +- [ ] Claims are backed by evidence links, command output, or labeled assumptions. +- [ ] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [ ] No secrets, tokens, raw PII, private keys, or unredacted credentials are included. +- [ ] A new specialist can understand the artifact without rereading the whole chat. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/implementation-plan.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/implementation-plan.md new file mode 100644 index 0000000..3c36722 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/implementation-plan.md @@ -0,0 +1,116 @@ +--- +type: atlas-artifact +artifact_type: plan +project: "{{project}}" +status: draft +owner: "{{owner}}" +created: {{date}} +updated: {{date}} +source: "{{source}}" +reviewer: "{{reviewer|TBD}}" +tags: [atlas, artifact, plan] +--- +# {{title}} Implementation Plan + +Parent project: [[{{project}}]] +Source: {{source}} +Supersedes: {{supersedes|N/A}} + +## Goal + +One sentence describing what this plan will build or change. + +## Non-goals + +- Explicitly out of scope: ... + +## Current state / context + +- Existing behavior, files, constraints, and relevant prior decisions. +- Assumptions: ... + +## Architecture approach + +2-3 sentences explaining the design, boundaries, and why this is the smallest durable change. + +## Files/tools to touch + +- Create: `path/to/new-file` +- Modify: `path/to/existing-file` +- Commands/tools: `exact command` + +## Task breakdown + +### Task 1: {{small-task-name}} + +Objective: one concrete 2-5 minute action. + +Files: +- Modify: `exact/path` +- Test: `exact/test/path` + +Step 1: Write the failing test or validation. + +```bash +# exact command +``` + +Expected: describe the expected failure or signal. + +Step 2: Implement the minimal change. + +```text +# paste exact code/config or describe precise edit +``` + +Step 3: Verify. + +```bash +# exact command +``` + +Expected: describe pass condition. + +Step 4: Commit if practical. + +```bash +git add exact/path exact/test/path +git commit -m "feat: add {{small-task-name}}" +``` + +## Tests and verification + +- [ ] `exact command` -> expected result. +- [ ] Manual check: ... + +## Rollback plan + +- Revert commit or restore files: ... + +## Risks and mitigations + +- Risk: ... Mitigation: ... + +## Next action + +- Owner: ... +- Action: ... + +## Plan-specific review checklist + +- [ ] Tasks are ordered and bite-sized. +- [ ] File paths and commands are exact. +- [ ] Tests/verification prove acceptance criteria. +- [ ] Rollback is clear. + +## Universal reviewer checklist + +Before accepting this artifact, verify: + +- [ ] Clear owner, status, date, source, and next action. +- [ ] Saved in the correct durable destination and named using the convention. +- [ ] Links back to the relevant project note and source task/issue/PR/session/incident. +- [ ] Claims are backed by evidence links, command output, or labeled assumptions. +- [ ] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [ ] No secrets, tokens, raw PII, private keys, or unredacted credentials are included. +- [ ] A new specialist can understand the artifact without rereading the whole chat. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/postmortem.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/postmortem.md new file mode 100644 index 0000000..a1e461d --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/postmortem.md @@ -0,0 +1,75 @@ +--- +type: atlas-artifact +artifact_type: postmortem +project: "{{project}}" +status: draft +owner: "{{owner}}" +created: {{date}} +updated: {{date}} +source: "{{source}}" +reviewer: "{{reviewer|TBD}}" +tags: [atlas, artifact, postmortem] +--- +# Postmortem: {{title}} + +Parent project: [[{{project}}]] +Source incident/task: {{source}} + +## Incident summary + +What happened, when, and how it was detected. + +## Impact + +Who/what was affected, duration, and severity. + +## Timeline + +| Time | Event | Source/evidence | +|---|---|---| +| YYYY-MM-DD HH:MM TZ | | | + +## Root cause + +Primary cause and contributing factors. + +## What went well + +- ... + +## What went poorly + +- ... + +## Corrective actions with owners + +| Action | Owner | Due | Verification | +|---|---|---|---| +| | | | | + +## Follow-up verification date + +YYYY-MM-DD. + +## Blamelessness note + +This postmortem focuses on system/process improvement, not blame. + +## Postmortem-specific review checklist + +- [ ] Timeline separates fact from interpretation. +- [ ] Root cause is specific enough to act on. +- [ ] Corrective actions have owners, due dates, and verification. +- [ ] No secrets or raw sensitive logs are included. + +## Universal reviewer checklist + +Before accepting this artifact, verify: + +- [ ] Clear owner, status, date, source, and next action. +- [ ] Saved in the correct durable destination and named using the convention. +- [ ] Links back to the relevant project note and source task/issue/PR/session/incident. +- [ ] Claims are backed by evidence links, command output, or labeled assumptions. +- [ ] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [ ] No secrets, tokens, raw PII, private keys, or unredacted credentials are included. +- [ ] A new specialist can understand the artifact without rereading the whole chat. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/reviewer-checklist.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/reviewer-checklist.md new file mode 100644 index 0000000..cf12ef0 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/reviewer-checklist.md @@ -0,0 +1,60 @@ +--- +type: atlas-artifact-template +artifact_type: reviewer-checklist +project: "Atlas Capability Upgrade Program" +status: accepted +owner: "writer profile / Atlas docs owner" +created: 2026-05-14 +updated: 2026-05-14 +source: "kanban:t_6f875045" +reviewer: "reviewer profile" +tags: [atlas, artifact, checklist] +--- + +# Atlas Artifact Reviewer Checklist + +Use this checklist before accepting any Atlas artifact as durable project state. + +## Destination and naming + +- [ ] The artifact is in the correct project-local folder: + - Plans: `Projects//Plans/` + - Decisions: `Projects//Decisions/` + - Runbooks: `Projects//Runbooks/` + - Diagrams: `Projects//Diagrams/` + - Test reports: `Projects//Reports/Test Reports/` + - Status reports: `Projects//Reports/Status/` + - Postmortems: `Projects//Reports/Postmortems/` +- [ ] Filename uses lowercase kebab-case and a date prefix where chronology matters. +- [ ] Template source is one of `Templates/Atlas Artifacts/*.md`. + +## Frontmatter and links + +- [ ] Frontmatter includes `type`, `artifact_type`, `project`, `status`, `owner`, `created`, `updated`, `source`, `reviewer`, and `tags`. +- [ ] The artifact links to the parent project note. +- [ ] The artifact links to source Kanban task, issue, PR, session, or incident when available. +- [ ] Superseded/replaced artifacts are linked when relevant. + +## Content quality + +- [ ] Purpose, audience, owner, status, and next action are clear. +- [ ] Claims are backed by command output, source links, or explicitly labeled assumptions. +- [ ] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [ ] The artifact is concise enough to use but complete enough to orient a new specialist. + +## Safety and durability + +- [ ] No secrets, tokens, private keys, raw PII, or unredacted credentials are included. +- [ ] Runtime churn/log dumps are summarized or linked safely rather than pasted wholesale. +- [ ] Any unsafe or destructive action is labeled with approval requirements. +- [ ] The Kanban handoff or project note includes the artifact path if this came from a worker task. + +## Artifact-specific checks + +- Plans: tasks are bite-sized, exact paths/commands are included, tests and rollback are clear. +- Decisions: options/tradeoffs are represented, decision is explicit, revisit trigger exists. +- Runbooks: prerequisites, safety tier, verification, rollback/recovery, and last-tested date exist. +- Diagrams: source format/path, legend, assumptions, and omitted details exist. +- Test reports: scope, environment, commands, results, evidence, and follow-ups exist. +- Status reports: color/status is justified; blockers, risks, decisions, and next actions have owners. +- Postmortems: timeline, root cause, corrective actions, follow-up verification, and blamelessness note exist. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/runbook.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/runbook.md new file mode 100644 index 0000000..ec99fe6 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/runbook.md @@ -0,0 +1,78 @@ +--- +type: atlas-artifact +artifact_type: runbook +project: "{{project}}" +status: draft +owner: "{{owner}}" +created: {{date}} +updated: {{date}} +source: "{{source}}" +reviewer: "{{reviewer|TBD}}" +tags: [atlas, artifact, runbook] +safety_tier: "read-only | low-risk-write | medium-risk-ops | high-risk-destructive" +--- +# Runbook: {{title}} + +Parent project: [[{{project}}]] +Source: {{source}} +Last tested: {{last_tested|YYYY-MM-DD or never}} + +## Purpose + +When and why to use this runbook. + +## Preconditions and credentials required + +- Required access/tools, without secrets. +- Confirm environment: ... + +## Safety tier / approval requirement + +- Tier: read-only | low-risk write | medium-risk ops | high-risk/destructive. +- Approval needed before: ... + +## Step-by-step procedure + +1. Do the first action. + ```bash + exact command + ``` + Expected: ... +2. Do the next action. + +## Verification + +- [ ] Check: ... +- [ ] Command: `...` -> expected ... + +## Rollback/recovery + +- If X fails, do Y. + +## Escalation path + +- Contact/person/profile/channel: ... + +## Next action + +- Owner: ... +- Action: ... + +## Runbook-specific review checklist + +- [ ] Commands are exact and safe for the stated environment. +- [ ] Credentials are referenced but not exposed. +- [ ] Verification and rollback/recovery are actionable. +- [ ] Last tested date is present. + +## Universal reviewer checklist + +Before accepting this artifact, verify: + +- [ ] Clear owner, status, date, source, and next action. +- [ ] Saved in the correct durable destination and named using the convention. +- [ ] Links back to the relevant project note and source task/issue/PR/session/incident. +- [ ] Claims are backed by evidence links, command output, or labeled assumptions. +- [ ] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [ ] No secrets, tokens, raw PII, private keys, or unredacted credentials are included. +- [ ] A new specialist can understand the artifact without rereading the whole chat. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/status-report.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/status-report.md new file mode 100644 index 0000000..ee5d05f --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/status-report.md @@ -0,0 +1,69 @@ +--- +type: atlas-artifact +artifact_type: status-report +project: "{{project}}" +status: draft +owner: "{{owner}}" +created: {{date}} +updated: {{date}} +source: "{{source}}" +reviewer: "{{reviewer|TBD}}" +tags: [atlas, artifact, status-report] +--- +# Status Report: {{title}} + +Parent project: [[{{project}}]] +Source: {{source}} + +## Reporting period + +YYYY-MM-DD to YYYY-MM-DD. + +## Overall status + +Green | Yellow | Red + +Reason: one sentence. + +## Completed work + +- Completed: ... Link: ... + +## Current blockers + +- Blocker: ... Owner: ... Needed by: ... + +## Risks + +- Risk: ... Impact: ... Mitigation: ... + +## Next actions + +- [ ] Owner: ... Action: ... Due: ... + +## Decisions needed + +- Decision: ... Owner: ... Deadline: ... + +## Links to artifacts created this period + +- [[artifact-name]] — purpose. + +## Status-report-specific review checklist + +- [ ] Status color is justified. +- [ ] Blockers, risks, and next actions have owners. +- [ ] Created artifacts are linked. +- [ ] Decisions needed are explicit. + +## Universal reviewer checklist + +Before accepting this artifact, verify: + +- [ ] Clear owner, status, date, source, and next action. +- [ ] Saved in the correct durable destination and named using the convention. +- [ ] Links back to the relevant project note and source task/issue/PR/session/incident. +- [ ] Claims are backed by evidence links, command output, or labeled assumptions. +- [ ] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [ ] No secrets, tokens, raw PII, private keys, or unredacted credentials are included. +- [ ] A new specialist can understand the artifact without rereading the whole chat. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/test-report.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/test-report.md new file mode 100644 index 0000000..add4a95 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Atlas Artifacts/test-report.md @@ -0,0 +1,77 @@ +--- +type: atlas-artifact +artifact_type: test-report +project: "{{project}}" +status: draft +owner: "{{owner}}" +created: {{date}} +updated: {{date}} +source: "{{source}}" +reviewer: "{{reviewer|TBD}}" +tags: [atlas, artifact, test-report] +--- +# Test Report: {{title}} + +Parent project: [[{{project}}]] +Source: {{source}} + +## Scope + +What was tested and what was excluded. + +## Environment + +- Host/platform: +- Branch/commit/version: +- Relevant config, with secrets redacted: + +## Commands run + +```bash +exact command +``` + +## Results summary + +- Total: +- Passed: +- Failed: +- Skipped: +- Duration: + +## Failures / flakes + +| Test/check | Result | Notes | Follow-up | +|---|---|---|---| +| | | | | + +## Evidence paths or logs + +- `path/to/log-or-artifact` + +## Interpretation + +What the results mean for the release/project. + +## Follow-up tasks + +- [ ] Owner: ... Action: ... + +## Test-report-specific review checklist + +- [ ] Scope and exclusions are explicit. +- [ ] Commands and environment are reproducible. +- [ ] Failures/flakes have owners or rationale. +- [ ] Logs/evidence do not include secrets. + +## Universal reviewer checklist + +Before accepting this artifact, verify: + +- [ ] Clear owner, status, date, source, and next action. +- [ ] Saved in the correct durable destination and named using the convention. +- [ ] Links back to the relevant project note and source task/issue/PR/session/incident. +- [ ] Claims are backed by evidence links, command output, or labeled assumptions. +- [ ] Risks, rollback, recovery, or revisit triggers are documented where relevant. +- [ ] No secrets, tokens, raw PII, private keys, or unredacted credentials are included. +- [ ] A new specialist can understand the artifact without rereading the whole chat. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Context Pack.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Context Pack.md new file mode 100644 index 0000000..2d7b981 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Context Pack.md @@ -0,0 +1,84 @@ +--- +title: Context Pack +type: template +area: projects +tags: [template, assistant, atlas, context-pack] +created: 2026-05-14 +updated: 2026-05-14 +status: active +related: [[Swarm Operating Manual]], [[Project Context Index]], [[Promote Session Output to Notes]] +--- + +# Context Pack - {{title}} + +Use this template when handing work to a specialist agent. Keep it short, current, and path-oriented. Do not paste raw transcripts. + +## Purpose / outcome + +What should the specialist produce or decide? + +- Desired outcome: +- Acceptance criteria: +- Definition of done: + +## Background links + +- Project note: +- Board / task source: +- Relevant specs: +- Related runbooks: +- Related decisions: + +## Current state + +Summarize only the facts needed to start work. + +- Current status: +- Recent completed work: +- Known blockers: +- What has not been decided: + +## Relevant files and repos + +Use concrete paths. Mark unknowns as `TBD (owner: ...)`. + +- Vault/project notes: +- Repository/workspace: +- Files likely to edit: +- Files to avoid touching: + +## Commands / verification + +- Discovery commands: +- Tests / smoke checks: +- Expected outputs: +- Before/after status checks: + +## Constraints / safety rules + +- Keep secrets, credentials, private keys, tokens, raw PII, and auth state out of notes, commits, task bodies, and final handoffs. +- Avoid runtime churn: caches, offsets, workspace UI state, generated WAL/SHM files, temporary logs, and unrelated dirty files. +- Make narrow, reviewable changes. +- If policy, product, or risk decisions are missing, block and ask rather than guessing. + +## Prior decisions + +- Decision: + - Source: + - Consequence for this task: + +## Open questions + +- Question: + - Owner: + - Blocks work? yes/no + +## Handoff expectations + +The specialist should return: + +- Summary of what changed or was learned. +- Changed files/artifacts with absolute paths. +- Verification performed and results. +- Any remaining risks or follow-up tasks. +- Review-required note when human or reviewer approval is needed. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Decision.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Decision.md new file mode 100644 index 0000000..5dfbff8 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Decision.md @@ -0,0 +1,30 @@ +--- +type: decision +date: {{date}} +status: accepted +project: +tags: + - type/decision +--- + +# Decision: {{title}} + +## Context + + +## Options considered + +1. +2. +3. + +## Decision + + +## Consequences + +- + +## Links + +- diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Kanban Task Graph Templates.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Kanban Task Graph Templates.md new file mode 100644 index 0000000..a56f82b --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Kanban Task Graph Templates.md @@ -0,0 +1,332 @@ +--- +type: template +system: atlas-kanban +status: active +owner: Will / Atlas +created: 2026-05-14 +related: + - "[[Atlas Kanban Durable Project Workflow]]" + - "[[Atlas Capability Upgrade Program]]" +--- + +# Kanban Task Graph Templates + +Copy these patterns when turning durable work into Hermes Kanban tasks. Replace placeholders in angle brackets. Always verify available profiles first: + +```bash +hermes profile list +hermes kanban --board stats --json +``` + +Default profile routing: + +- Spec/discovery: `ops`, `researcher`, or `writer` +- Task graph creation/status synthesis: `orchestrator` +- Code implementation: `engineer` +- Hermes/config/host/runbook operations: `ops` +- Review gate: `reviewer` +- Durable prose/status: `writer` or `atlas` +- Keep `default` reserved for stable production gateway unless Will explicitly asks otherwise. + +Common metadata shape for handoffs: + +```json +{ + "changed_files": [], + "artifact_paths": [], + "verification": [], + "decisions": [], + "residual_risk": [], + "retry_notes": "" +} +``` + +For code/config/ops changes, the implementer should leave a `review-required handoff` comment with metadata and then block instead of completing. Docs/research/spec-only tasks may complete directly when the artifact is the deliverable. + +## Template A: spec -> implementation -> reviewer -> synthesis + +Use for a durable code/config/runbook feature with one clear implementation path. + +Graph: + +```text +spec: -> implement: -> review: -> synthesize: status +``` + +Assignees and workspaces: + +| Stage | Assignee | Workspace | Max runtime | Skills | Completion policy | +|---|---|---|---|---|---| +| Spec | `ops` or `researcher` | `scratch` | `45m` | optional domain skill | Complete with artifact/spec metadata. | +| Implementation | `engineer` for code, `ops` for Hermes/config/runbook | `worktree` for code, `dir:` for durable notes/config, `scratch` for generated artifacts | `2h` | `test-driven-development` for code, `hermes-agent` for Hermes work, `obsidian` for vault notes | Comment review-required metadata, then block. | +| Review | `reviewer` | same repo/worktree or `scratch` if artifact-only | `1h` | `github-code-review` for code, relevant domain skill | Complete if approved; block with exact changes if not. | +| Synthesis | `writer` or `atlas` | `scratch` | `30m` | optional `obsidian` | Complete with final status/report artifact. | + +CLI skeleton: + +```bash +BOARD= +SPEC=$(hermes kanban --board "$BOARD" create "spec: " \ + --assignee ops \ + --workspace scratch \ + --priority 10 \ + --max-runtime 45m \ + --body "Write implementation-ready spec: goal, files/tools to touch, verification, risks, recommended owner, reviewer-gate requirement." \ + --json | jq -r .task_id) + +IMPL=$(hermes kanban --board "$BOARD" create "implement: " \ + --assignee engineer \ + --parent "$SPEC" \ + --workspace worktree \ + --skill test-driven-development \ + --priority 8 \ + --max-runtime 2h \ + --body "Implement exactly the parent spec. Inspect status first. Keep changes narrow. If code/config/ops changed, add review-required metadata comment and block instead of completing." \ + --json | jq -r .task_id) + +REVIEW=$(hermes kanban --board "$BOARD" create "review: " \ + --assignee reviewer \ + --parent "$IMPL" \ + --workspace worktree \ + --skill github-code-review \ + --priority 7 \ + --max-runtime 1h \ + --body "Review implementation against parent spec, tests, safety, secrets, and unintended diffs. Complete if approved; block with exact required changes if not." \ + --json | jq -r .task_id) + +hermes kanban --board "$BOARD" create "synthesize: status" \ + --assignee writer \ + --parent "$REVIEW" \ + --workspace scratch \ + --priority 5 \ + --max-runtime 30m \ + --body "Read parent handoffs and produce final status: artifacts, verification, decisions, residual risks, next actions." +``` + +Implementation review-required metadata: + +```json +{ + "changed_files": ["..."], + "tests_run": ["..."], + "verification": ["..."], + "diff_path": "", + "decisions": ["..."], + "residual_risk": [] +} +``` + +## Template B: parallel discovery lanes -> synthesis -> implementation -> reviewer + +Use when the approach is not yet known and multiple discovery lanes can run in parallel. + +Graph: + +```text +discovery: ┐ +discovery: ├-> synthesize: -> implement: -> review: +discovery: ┘ +``` + +Assignees and workspaces: + +| Stage | Assignee | Workspace | Max runtime | Skills | Completion policy | +|---|---|---|---|---|---| +| Discovery lanes | `researcher`, `ops`, or `engineer` depending on source | `scratch`, or `dir:` for repo/vault inspection | `45m` each | domain-specific | Complete with sources/artifacts/risks. | +| Synthesis | `writer`, `ops`, or `atlas` | `scratch` | `45m` | optional `obsidian` | Complete with recommendation and implementation spec. | +| Implementation | `engineer` or `ops` | `worktree` or `dir:` | `2h` | implementation skill(s) | Comment review-required metadata, then block. | +| Review | `reviewer` | matching repo/workspace | `1h` | review skill(s) | Complete or block with exact changes. | + +CLI skeleton: + +```bash +BOARD= +A=$(hermes kanban --board "$BOARD" create "discovery: " \ + --assignee researcher --workspace scratch --priority 10 --max-runtime 45m \ + --body "Investigate . Return sources, options, recommendation, verification, risks." --json | jq -r .task_id) +B=$(hermes kanban --board "$BOARD" create "discovery: " \ + --assignee researcher --workspace scratch --priority 10 --max-runtime 45m \ + --body "Investigate . Return sources, options, recommendation, verification, risks." --json | jq -r .task_id) +C=$(hermes kanban --board "$BOARD" create "discovery: " \ + --assignee ops --workspace scratch --priority 10 --max-runtime 45m \ + --body "Investigate . Return current-state evidence, options, verification, risks." --json | jq -r .task_id) + +SYNTH=$(hermes kanban --board "$BOARD" create "synthesize: " \ + --assignee writer \ + --parent "$A" --parent "$B" --parent "$C" \ + --workspace scratch --priority 8 --max-runtime 45m \ + --body "Read all discovery parent handoffs. Produce chosen approach, tradeoffs, implementation spec, verification plan, and reviewer-gate requirement." --json | jq -r .task_id) + +IMPL=$(hermes kanban --board "$BOARD" create "implement: " \ + --assignee engineer --parent "$SYNTH" --workspace worktree \ + --priority 7 --max-runtime 2h --skill test-driven-development \ + --body "Implement the synthesis recommendation. Keep diff narrow. Add review-required handoff and block if code/config changed." --json | jq -r .task_id) + +hermes kanban --board "$BOARD" create "review: " \ + --assignee reviewer --parent "$IMPL" --workspace worktree \ + --priority 6 --max-runtime 1h --skill github-code-review \ + --body "Review implementation against synthesis recommendation and tests. Complete if approved; block with exact findings if not." +``` + +Discovery handoff metadata: + +```json +{ + "sources_read": ["..."], + "artifact_paths": ["..."], + "recommendation": "...", + "verification": ["..."], + "risks": ["..."], + "open_questions": [] +} +``` + +## Template C: ops incident: triage -> mitigation -> verification -> postmortem + +Use for incidents, broken gateway/profile/tooling, failed dispatchers, or service degradation. + +Graph: + +```text +triage: -> mitigate: -> verify: -> postmortem: +``` + +Assignees and workspaces: + +| Stage | Assignee | Workspace | Max runtime | Skills | Completion policy | +|---|---|---|---|---|---| +| Triage | `ops` | `scratch` | `30m` | `systematic-debugging`, `sysadmin-health` if relevant | Complete with symptoms, scope, likely cause, safe mitigation plan; block if credentials/policy needed. | +| Mitigation | `ops` | `dir:` or `scratch` | `1h` | `systematic-debugging`, `hermes-agent` for Hermes | For config/ops changes, comment review-required metadata and block unless the task explicitly authorizes safe immediate completion. | +| Verification | `reviewer` or `ops` | `scratch` | `30m` | relevant ops skill | Complete with health checks and residual risks. | +| Postmortem | `writer` | `scratch` or `dir:` | `45m` | `obsidian` | Complete with durable postmortem path. | + +CLI skeleton: + +```bash +BOARD= +TRIAGE=$(hermes kanban --board "$BOARD" create "triage: " \ + --assignee ops --workspace scratch --priority 10 --max-runtime 30m \ + --skill systematic-debugging \ + --body "Identify symptoms, affected services, current status, likely root cause, non-secret log pointers, risk level, and safe mitigation plan. Block on destructive/policy decisions." --json | jq -r .task_id) + +MITIGATE=$(hermes kanban --board "$BOARD" create "mitigate: " \ + --assignee ops --parent "$TRIAGE" --workspace scratch --priority 9 --max-runtime 1h \ + --skill systematic-debugging --skill hermes-agent \ + --body "Apply the narrow approved mitigation from triage. Back up config before editing. Do not print secrets. Verify status after any restart. For config/ops changes, leave review-required metadata and block unless explicitly safe to complete." --json | jq -r .task_id) + +VERIFY=$(hermes kanban --board "$BOARD" create "verify: " \ + --assignee reviewer --parent "$MITIGATE" --workspace scratch --priority 8 --max-runtime 30m \ + --body "Verify service health, logs, config parse, dispatcher/gateway status, and that no unrelated changes occurred. Complete if healthy; block with exact findings if not." --json | jq -r .task_id) + +hermes kanban --board "$BOARD" create "postmortem: " \ + --assignee writer --parent "$VERIFY" --workspace scratch --priority 5 --max-runtime 45m \ + --skill obsidian \ + --body "Write durable postmortem: timeline, impact, root cause, resolution, prevention, follow-up tasks, artifact paths." +``` + +Triage metadata: + +```json +{ + "symptoms": ["..."], + "affected_services": ["..."], + "log_pointers": ["path plus line/range, no raw secrets"], + "risk_level": "low|medium|high", + "likely_cause": "...", + "mitigation_plan": ["..."] +} +``` + +## Template D: artifact pipeline: research -> draft -> review -> publish + +Use for durable notes, reports, runbooks, decision memos, diagrams, or public/internal docs. + +Graph: + +```text +research: -> draft: -> review: -> publish: +``` + +Assignees and workspaces: + +| Stage | Assignee | Workspace | Max runtime | Skills | Completion policy | +|---|---|---|---|---|---| +| Research | `researcher` or `ops` | `scratch` | `45m` | source/domain skill | Complete with sources, outline, risks, and recommended destination. | +| Draft | `writer` | `scratch` or `dir:` | `1h` | `obsidian` for vault notes | Complete directly if artifact-only and no risk-bearing change; otherwise request review. | +| Review | `reviewer` | `scratch` or `dir:` | `45m` | artifact/domain skill | Complete if approved; block with exact changes if not. | +| Publish | `writer` or `atlas` | `dir:` or destination workspace | `30m` | `obsidian` | Complete with final artifact path and verification. | + +CLI skeleton: + +```bash +BOARD= +RESEARCH=$(hermes kanban --board "$BOARD" create "research: " \ + --assignee researcher --workspace scratch --priority 9 --max-runtime 45m \ + --body "Gather sources and requirements for . Return outline, source list, audience, risks, and recommended destination path." --json | jq -r .task_id) + +DRAFT=$(hermes kanban --board "$BOARD" create "draft: " \ + --assignee writer --parent "$RESEARCH" --workspace scratch --priority 8 --max-runtime 1h \ + --skill obsidian \ + --body "Draft the artifact from parent research. Include wikilinks, frontmatter when appropriate, artifact path, and verification. Complete directly if artifact-only." --json | jq -r .task_id) + +REVIEW=$(hermes kanban --board "$BOARD" create "review: " \ + --assignee reviewer --parent "$DRAFT" --workspace scratch --priority 7 --max-runtime 45m \ + --body "Review for correctness, completeness, audience fit, links, secrets, and actionability. Complete if approved; block with exact edits if not." --json | jq -r .task_id) + +hermes kanban --board "$BOARD" create "publish: " \ + --assignee writer --parent "$REVIEW" --workspace dir:/home/will/lab/swarm/swarm-common/obsidian-vault/will/will-shared-zap \ + --priority 6 --max-runtime 30m --skill obsidian \ + --body "Publish final artifact to the durable destination. Verify file exists, links render, and final status names the artifact path." +``` + +Artifact metadata: + +```json +{ + "artifact_paths": ["/absolute/path/to/artifact.md"], + "sources_read": ["..."], + "review_findings": [], + "verification": ["read_file confirmed file exists", "links/frontmatter checked"], + "publish_destination": "...", + "residual_risk": [] +} +``` + +## Recovery and status snippets + +Inspect a task before acting: + +```bash +hermes kanban --board show +hermes kanban --board runs +hermes kanban --board log +``` + +Recover a stale or failed task: + +```bash +hermes kanban --board reclaim --reason "stale claim: " +hermes kanban --board reassign --reclaim --reason "profile recovery: " +hermes kanban --board unblock +``` + +Status report skeleton: + +```markdown +# status - + +## Completed since last report +- : artifact, verification, downstream effect. + +## Running/ready by profile +- : + +## Blocked/gave_up items +- : owner/profile, exact blocker, next action. + +## Risks / decisions needed +- ... + +## Next planned graph expansion +- ... +``` diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Meeting.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Meeting.md new file mode 100644 index 0000000..cdf26e8 --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Meeting.md @@ -0,0 +1,30 @@ +--- +type: meeting +date: {{date}} +attendees: +project: +tags: + - type/meeting +--- + +# Meeting - {{date}} - {{title}} + +## Agenda + +- + +## Notes + +- + +## Decisions + +- + +## Action items + +- [ ] + +## Links + +- diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Person.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Person.md new file mode 100644 index 0000000..6ea7e3e --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Person.md @@ -0,0 +1,24 @@ +--- +type: person +org: +role: +tags: + - type/person +--- + +# {{title}} + +## Context + + +## Contact / handles + +- + +## Projects + +- + +## Notes + +- diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Project.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Project.md new file mode 100644 index 0000000..44ff3ac --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Project.md @@ -0,0 +1,36 @@ +--- +type: project +status: active +owner: +started: {{date}} +target: +tags: + - type/project + - status/active +--- + +# {{title}} + +## Goal + +What outcome are we trying to create? + +## Current state + +- + +## Next actions + +- [ ] + +## Decisions + +- + +## Links + +- + +## Log + +- {{date}} — Created project note. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Runbook.md b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Runbook.md new file mode 100644 index 0000000..b8a39af --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Templates/Runbook.md @@ -0,0 +1,34 @@ +--- +type: runbook +system: +status: active +tags: + - type/runbook +--- + +# Runbook - {{title}} + +## When to use + + +## Preconditions + +- + +## Steps + +1. +2. +3. + +## Verification + +- + +## Rollback + +- + +## Related + +- diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Untitled.canvas b/swarm-common/obsidian-vault/will/will-shared-zap/Untitled.canvas deleted file mode 100644 index 9e26dfe..0000000 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Untitled.canvas +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Vault Conventions.md b/swarm-common/obsidian-vault/will/will-shared-zap/Vault Conventions.md new file mode 100644 index 0000000..bbd503c --- /dev/null +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Vault Conventions.md @@ -0,0 +1,3 @@ +# Vault Conventions + +Redirect/index note. Canonical note: [[Conventions]]. diff --git a/swarm-common/obsidian-vault/will/will-shared-zap/Weekend Activity Ideas.md b/swarm-common/obsidian-vault/will/will-shared-zap/Weekend Activity Ideas.md index 3f2637e..99f5058 100644 --- a/swarm-common/obsidian-vault/will/will-shared-zap/Weekend Activity Ideas.md +++ b/swarm-common/obsidian-vault/will/will-shared-zap/Weekend Activity Ideas.md @@ -1,52 +1,3 @@ ---- -title: Weekend Activity Ideas -created: 2026-04-29 -updated: 2026-04-29 -tags: - - personal - - lifestyle ---- - # Weekend Activity Ideas -Finding a new rhythm for your weekends is a great move. Replacing the social routine of a bar with something active or creative can be incredibly rewarding. Since you're looking for a mix of environments, here are a few ideas that offer a similar "event" feel without the focus on alcohol. - ---- - -## 🏠 At Home: The "Bad Weather" Retreat - -When the rain keeps you inside, you can still find activities that are engaging and collaborative. - -* **Modern Board Gaming:** Move beyond the classics. Games like *Catan*, *Ticket to Ride*, or cooperative games like *Pandemic* require strategy and communication, making the evening feel like an event. -* **Culinary Challenges:** Pick a complex cuisine you've never tried (like making homemade pasta or sushi) and spend the afternoon mastering it together. It turns a meal into a three-hour shared project. -* **Interactive Interior Design:** Use rainy days to brainstorm "layered lighting" or home automation projects. Mapping out how to improve your living space with smart tech can be a fun, ongoing hobby. - ---- - -## 🌲 Outdoors: For the Sunny Days - -Getting outside is the best way to reset after a long week, and it provides a natural dopamine hit that rivals any social hour. - -* **Urban Hiking & Parks:** Take advantage of local trails or large waterfront parks. Even a long walk through different neighborhoods can be a great way to explore the city's architecture and hidden gems. -* **Pickleball or Tennis:** These are social, easy to learn, and get your heart rate up. Many public parks have courts that are free or low-cost to use. -* **Weekend Markets:** Visiting farmers' markets or flower markets turns a chore into an outing. It's a great way to support local vendors and find fresh ingredients for your "At Home" cooking projects. - ---- - -## 🏢 Indoor (Out of the House): Culturally Immersive - -If you want to be "out and about" in a social setting that doesn't revolve around a taproom, try these alternatives: - -* **Live Music & Jazz Clubs:** Many venues offer incredible live performances where the focus is entirely on the stage. It keeps the "night out" energy alive while shifting the priority to the arts. -* **Bouldering or Climbing Gyms:** This is a very popular "alternative social" scene. It's physical, requires problem-solving, and has a very welcoming community atmosphere. -* **Cooking Classes or Workshops:** Many upscale grocers or specialized schools offer weekend workshops. Whether it's French pastry or Mediterranean small plates, you get the restaurant experience with a hands-on twist. - ---- - -## Comparison at a Glance - -| Setting | Activity Idea | Why it works | -| :--- | :--- | :--- | -| Home | Strategic Board Games | Mimics the social interaction of a bar but with more focus. | -| Outdoor | Waterfront Exploration | Low stress, high physical benefit, and great scenery. | -| Indoor | Bouldering/Climbing | High energy and a great way to meet a new, health-conscious crowd. | +Moved to [[Resources/Weekend Activity Ideas]].