openclaw-node-harness 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +184 -0
- package/bin/discord-read.js +228 -0
- package/bin/fleet-deploy.js +365 -0
- package/bin/lane-watchdog.js +232 -0
- package/bin/mesh-agent.js +714 -0
- package/bin/mesh-bridge.js +535 -0
- package/bin/mesh-deploy-listener.js +322 -0
- package/bin/mesh-deploy.js +1048 -0
- package/bin/mesh-health-publisher.js +247 -0
- package/bin/mesh-task-daemon.js +451 -0
- package/bin/mesh-tool-discord.js +293 -0
- package/bin/mesh.js +649 -0
- package/boot/manifest.yaml +187 -0
- package/cli.js +35 -0
- package/config/daemon.json.template +16 -0
- package/config/obsidian-sync.json.template +39 -0
- package/config/openclaw.json.template +124 -0
- package/config/transcript-sources.json.template +22 -0
- package/identity/AGENTS.md +201 -0
- package/identity/CLAUDE.md +64 -0
- package/identity/DELEGATION.md +304 -0
- package/identity/HEARTBEAT.md +163 -0
- package/identity/MEMORY_SPEC.md +368 -0
- package/identity/PRINCIPLES.md +81 -0
- package/identity/SOUL.md +48 -0
- package/identity/TOOLS.md +47 -0
- package/install.sh +895 -0
- package/lib/agent-activity.js +390 -0
- package/lib/kanban-io.js +352 -0
- package/lib/mesh-registry.js +194 -0
- package/lib/mesh-roles.js +13 -0
- package/lib/mesh-tasks.js +306 -0
- package/lib/nats-resolve.js +108 -0
- package/mission-control/README.md +36 -0
- package/mission-control/drizzle/0000_simple_silhouette.sql +62 -0
- package/mission-control/drizzle/meta/0000_snapshot.json +413 -0
- package/mission-control/drizzle/meta/_journal.json +13 -0
- package/mission-control/drizzle.config.ts +13 -0
- package/mission-control/eslint.config.mjs +18 -0
- package/mission-control/next.config.ts +7 -0
- package/mission-control/package-lock.json +10518 -0
- package/mission-control/package.json +49 -0
- package/mission-control/postcss.config.mjs +7 -0
- package/mission-control/public/file.svg +1 -0
- package/mission-control/public/globe.svg +1 -0
- package/mission-control/public/next.svg +1 -0
- package/mission-control/public/vercel.svg +1 -0
- package/mission-control/public/window.svg +1 -0
- package/mission-control/scripts/enrich-descriptions.js +193 -0
- package/mission-control/scripts/gen-chronology.js +102 -0
- package/mission-control/scripts/import-pipeline-v2.js +523 -0
- package/mission-control/scripts/import-pipeline.js +295 -0
- package/mission-control/src/app/api/activity/live/route.ts +27 -0
- package/mission-control/src/app/api/activity/route.ts +47 -0
- package/mission-control/src/app/api/burndown/route.ts +112 -0
- package/mission-control/src/app/api/critical-path/route.ts +159 -0
- package/mission-control/src/app/api/dependencies/route.ts +176 -0
- package/mission-control/src/app/api/memory/categories/route.ts +93 -0
- package/mission-control/src/app/api/memory/consolidate/route.ts +107 -0
- package/mission-control/src/app/api/memory/doc/route.ts +89 -0
- package/mission-control/src/app/api/memory/flush/route.ts +129 -0
- package/mission-control/src/app/api/memory/graph/route.ts +105 -0
- package/mission-control/src/app/api/memory/items/route.ts +86 -0
- package/mission-control/src/app/api/memory/list/route.ts +48 -0
- package/mission-control/src/app/api/memory/retrieve/route.ts +51 -0
- package/mission-control/src/app/api/memory/search/route.ts +143 -0
- package/mission-control/src/app/api/memory/sync/route.ts +23 -0
- package/mission-control/src/app/api/memory/wikilinks/route.ts +75 -0
- package/mission-control/src/app/api/mesh/events/route.ts +67 -0
- package/mission-control/src/app/api/mesh/nodes/route.ts +221 -0
- package/mission-control/src/app/api/mesh/tokens/route.ts +133 -0
- package/mission-control/src/app/api/projects/route.ts +102 -0
- package/mission-control/src/app/api/resolve-path/route.ts +92 -0
- package/mission-control/src/app/api/scheduler/tick/route.ts +38 -0
- package/mission-control/src/app/api/scheduler/waves/route.ts +54 -0
- package/mission-control/src/app/api/screenshot/route.ts +127 -0
- package/mission-control/src/app/api/settings/gateway/route.ts +92 -0
- package/mission-control/src/app/api/skills/[id]/health/route.ts +57 -0
- package/mission-control/src/app/api/skills/list/route.ts +41 -0
- package/mission-control/src/app/api/souls/[id]/evolution/route.ts +253 -0
- package/mission-control/src/app/api/souls/[id]/prompt/route.ts +205 -0
- package/mission-control/src/app/api/souls/[id]/propagate/route.ts +146 -0
- package/mission-control/src/app/api/souls/route.ts +174 -0
- package/mission-control/src/app/api/tasks/[id]/handoff/route.ts +115 -0
- package/mission-control/src/app/api/tasks/[id]/route.ts +266 -0
- package/mission-control/src/app/api/tasks/[id]/tree/route.ts +94 -0
- package/mission-control/src/app/api/tasks/route.ts +253 -0
- package/mission-control/src/app/api/tts/route.ts +47 -0
- package/mission-control/src/app/api/workspace/files/route.ts +88 -0
- package/mission-control/src/app/api/workspace/read/route.ts +73 -0
- package/mission-control/src/app/burndown/page.tsx +309 -0
- package/mission-control/src/app/calendar/page.tsx +839 -0
- package/mission-control/src/app/favicon.ico +0 -0
- package/mission-control/src/app/globals.css +67 -0
- package/mission-control/src/app/graph/page.tsx +352 -0
- package/mission-control/src/app/layout.tsx +35 -0
- package/mission-control/src/app/live/page.tsx +232 -0
- package/mission-control/src/app/memory/page.tsx +154 -0
- package/mission-control/src/app/mesh/page.tsx +457 -0
- package/mission-control/src/app/obsidian/page.tsx +252 -0
- package/mission-control/src/app/page.tsx +70 -0
- package/mission-control/src/app/roadmap/page.tsx +1757 -0
- package/mission-control/src/app/settings/page.tsx +260 -0
- package/mission-control/src/app/souls/page.tsx +573 -0
- package/mission-control/src/components/board/activity-timeline.tsx +96 -0
- package/mission-control/src/components/board/daily-board.tsx +373 -0
- package/mission-control/src/components/board/kanban-board.tsx +364 -0
- package/mission-control/src/components/board/kanban-column.tsx +105 -0
- package/mission-control/src/components/board/live-stream.tsx +116 -0
- package/mission-control/src/components/board/skill-health-card.tsx +128 -0
- package/mission-control/src/components/board/status-banner.tsx +124 -0
- package/mission-control/src/components/board/task-card.tsx +454 -0
- package/mission-control/src/components/board/unified-task-dialog.tsx +1043 -0
- package/mission-control/src/components/layout/resizable-layout.tsx +68 -0
- package/mission-control/src/components/layout/sidebar.tsx +90 -0
- package/mission-control/src/components/live/audio-spectrum.tsx +106 -0
- package/mission-control/src/components/live/chat-bubble.tsx +52 -0
- package/mission-control/src/components/live/chat-input.tsx +92 -0
- package/mission-control/src/components/memory/doc-reader.tsx +172 -0
- package/mission-control/src/components/memory/memory-list.tsx +169 -0
- package/mission-control/src/components/memory/search-bar.tsx +67 -0
- package/mission-control/src/components/memory/search-results.tsx +149 -0
- package/mission-control/src/components/obsidian/backlinks-panel.tsx +52 -0
- package/mission-control/src/components/obsidian/file-tree.tsx +186 -0
- package/mission-control/src/components/obsidian/local-graph.tsx +107 -0
- package/mission-control/src/components/obsidian/obsidian-graph.tsx +192 -0
- package/mission-control/src/components/obsidian/obsidian-reader.tsx +246 -0
- package/mission-control/src/lib/activity.ts +29 -0
- package/mission-control/src/lib/config.ts +21 -0
- package/mission-control/src/lib/db/index.ts +429 -0
- package/mission-control/src/lib/db/schema.ts +218 -0
- package/mission-control/src/lib/gateway-notify.ts +113 -0
- package/mission-control/src/lib/hooks.ts +536 -0
- package/mission-control/src/lib/memory/categories.ts +125 -0
- package/mission-control/src/lib/memory/entities.ts +482 -0
- package/mission-control/src/lib/memory/extract.ts +369 -0
- package/mission-control/src/lib/memory/retrieval.ts +281 -0
- package/mission-control/src/lib/memory/wikilinks.ts +147 -0
- package/mission-control/src/lib/nats.ts +126 -0
- package/mission-control/src/lib/parsers/clawvault-doc.ts +98 -0
- package/mission-control/src/lib/parsers/daily-log.ts +73 -0
- package/mission-control/src/lib/parsers/memory-md.ts +81 -0
- package/mission-control/src/lib/parsers/task-markdown.ts +459 -0
- package/mission-control/src/lib/parsers/transcript.ts +209 -0
- package/mission-control/src/lib/scheduler.ts +394 -0
- package/mission-control/src/lib/speech/use-speech-pipeline.ts +176 -0
- package/mission-control/src/lib/sync/memory.ts +224 -0
- package/mission-control/src/lib/sync/tasks.ts +271 -0
- package/mission-control/src/lib/tts/edge.ts +31 -0
- package/mission-control/src/lib/tts/google.ts +78 -0
- package/mission-control/src/lib/tts/index.ts +39 -0
- package/mission-control/src/lib/tts/types.ts +18 -0
- package/mission-control/tsconfig.json +42 -0
- package/obsidian-vault/.obsidian/app.json +10 -0
- package/obsidian-vault/.obsidian/community-plugins.json +8 -0
- package/obsidian-vault/.obsidian/graph.json +40 -0
- package/obsidian-vault/.obsidian/plugins/obsidian-local-rest-api/main.js +58769 -0
- package/obsidian-vault/.obsidian/plugins/obsidian-local-rest-api/manifest.json +10 -0
- package/obsidian-vault/.obsidian/plugins/obsidian-local-rest-api/styles.css +47 -0
- package/obsidian-vault/00-meta/.gitkeep +0 -0
- package/obsidian-vault/01-architecture/.gitkeep +0 -0
- package/obsidian-vault/02-smart-contracts/.gitkeep +0 -0
- package/obsidian-vault/03-backend/.gitkeep +0 -0
- package/obsidian-vault/04-mobile/.gitkeep +0 -0
- package/obsidian-vault/05-ar-mapping/.gitkeep +0 -0
- package/obsidian-vault/06-3d-assets/.gitkeep +0 -0
- package/obsidian-vault/07-sound-music/.gitkeep +0 -0
- package/obsidian-vault/08-lore/.gitkeep +0 -0
- package/obsidian-vault/09-quests-playthrough/.gitkeep +0 -0
- package/obsidian-vault/10-economy/.gitkeep +0 -0
- package/obsidian-vault/11-nft-assets/.gitkeep +0 -0
- package/obsidian-vault/12-nft-mechanics/.gitkeep +0 -0
- package/obsidian-vault/13-dao-guild-social/.gitkeep +0 -0
- package/obsidian-vault/14-game-progression/.gitkeep +0 -0
- package/obsidian-vault/15-analytics/.gitkeep +0 -0
- package/obsidian-vault/16-security/.gitkeep +0 -0
- package/obsidian-vault/17-devops/.gitkeep +0 -0
- package/obsidian-vault/18-marketplace/.gitkeep +0 -0
- package/obsidian-vault/19-decisions/.gitkeep +0 -0
- package/obsidian-vault/20-business-strategy/.gitkeep +0 -0
- package/obsidian-vault/21-legal-regulatory/.gitkeep +0 -0
- package/obsidian-vault/nodes/.gitkeep +0 -0
- package/openclaw.env.example +17 -0
- package/package.json +45 -0
- package/services/launchd/ai.openclaw.gateway.plist +59 -0
- package/services/launchd/ai.openclaw.lane-watchdog.plist +32 -0
- package/services/launchd/ai.openclaw.log-rotate.plist +28 -0
- package/services/launchd/ai.openclaw.memory-daemon.plist +36 -0
- package/services/launchd/ai.openclaw.mesh-agent.plist +38 -0
- package/services/launchd/ai.openclaw.mesh-bridge.plist +36 -0
- package/services/launchd/ai.openclaw.mesh-deploy-listener.plist +33 -0
- package/services/launchd/ai.openclaw.mesh-health-publisher.plist +29 -0
- package/services/launchd/ai.openclaw.mesh-task-daemon.plist +36 -0
- package/services/launchd/ai.openclaw.mesh-tool-discord.plist +36 -0
- package/services/launchd/ai.openclaw.mission-control.plist +41 -0
- package/services/service-manifest.json +13 -0
- package/services/systemd/openclaw-gateway.service +21 -0
- package/services/systemd/openclaw-lane-watchdog.service +21 -0
- package/services/systemd/openclaw-log-rotate.service +13 -0
- package/services/systemd/openclaw-log-rotate.timer +9 -0
- package/services/systemd/openclaw-memory-daemon.service +21 -0
- package/services/systemd/openclaw-mesh-agent.service +19 -0
- package/services/systemd/openclaw-mesh-bridge.service +21 -0
- package/services/systemd/openclaw-mesh-deploy-listener.service +23 -0
- package/services/systemd/openclaw-mesh-health-publisher.service +21 -0
- package/services/systemd/openclaw-mesh-task-daemon.service +21 -0
- package/services/systemd/openclaw-mesh-tool-discord.service +21 -0
- package/services/systemd/openclaw-mission-control.service +22 -0
- package/skills/1password/.clawhub/origin.json +7 -0
- package/skills/1password/SKILL.md +63 -0
- package/skills/1password/references/cli-examples.md +29 -0
- package/skills/1password/references/get-started.md +17 -0
- package/skills/acquisition-channel-advisor/SKILL.md +643 -0
- package/skills/acquisition-channel-advisor/examples/conversation-flow.md +531 -0
- package/skills/agent-browser/.clawhub/origin.json +7 -0
- package/skills/agent-browser/CONTRIBUTING.md +63 -0
- package/skills/agent-browser/SKILL.md +338 -0
- package/skills/agentic-compass/.clawhub/origin.json +7 -0
- package/skills/agentic-compass/README.md +96 -0
- package/skills/agentic-compass/SKILL.md +112 -0
- package/skills/agentic-compass/references/README.md +5 -0
- package/skills/agentic-compass/scripts/agentic-compass.py +196 -0
- package/skills/arcane-dev-ops/SKILL.md +61 -0
- package/skills/arcane-dev-ops/references/checklist.md +22 -0
- package/skills/arcane-dev-ops/references/validation-cases.md +11 -0
- package/skills/arcane-dev-ops/scripts/prepush_check.sh +41 -0
- package/skills/auto-updater/.clawhub/origin.json +7 -0
- package/skills/auto-updater/SKILL.md +158 -0
- package/skills/auto-updater/references/agent-guide.md +152 -0
- package/skills/auto-updater/references/summary-examples.md +109 -0
- package/skills/business-health-diagnostic/SKILL.md +782 -0
- package/skills/byterover/.clawhub/origin.json +7 -0
- package/skills/byterover/SKILL.md +105 -0
- package/skills/byterover/TROUBLESHOOTING.md +50 -0
- package/skills/byterover/WORKFLOWS.md +229 -0
- package/skills/capability-evolver/.clawhub/origin.json +7 -0
- package/skills/capability-evolver/CONTRIBUTING.md +11 -0
- package/skills/capability-evolver/README.md +157 -0
- package/skills/capability-evolver/README.zh-CN.md +112 -0
- package/skills/capability-evolver/SKILL.md +93 -0
- package/skills/capability-evolver/assets/gep/capsules.json +5 -0
- package/skills/capability-evolver/assets/gep/genes.json +104 -0
- package/skills/capability-evolver/index.js +59 -0
- package/skills/capability-evolver/package.json +22 -0
- package/skills/capability-evolver/scripts/analyze_by_skill.js +121 -0
- package/skills/capability-evolver/scripts/build_public.js +350 -0
- package/skills/capability-evolver/scripts/export_history.js +98 -0
- package/skills/capability-evolver/scripts/extract_log.js +85 -0
- package/skills/capability-evolver/scripts/generate_history.js +75 -0
- package/skills/capability-evolver/scripts/human_report.js +147 -0
- package/skills/capability-evolver/scripts/publish_public.js +516 -0
- package/skills/capability-evolver/scripts/suggest_version.js +89 -0
- package/skills/capability-evolver/src/evolve.js +594 -0
- package/skills/capability-evolver/src/gep/assetStore.js +204 -0
- package/skills/capability-evolver/src/gep/candidates.js +134 -0
- package/skills/capability-evolver/src/gep/paths.js +23 -0
- package/skills/capability-evolver/src/gep/prompt.js +254 -0
- package/skills/capability-evolver/src/gep/selector.js +89 -0
- package/skills/capability-evolver/src/gep/signals.js +27 -0
- package/skills/cc-godmode/.clawhub/origin.json +7 -0
- package/skills/cc-godmode/CHANGELOG.md +66 -0
- package/skills/cc-godmode/README.md +293 -0
- package/skills/cc-godmode/SKILL.md +242 -0
- package/skills/cc-godmode/docs/AGENTS.md +332 -0
- package/skills/cc-godmode/docs/MIGRATION.md +206 -0
- package/skills/cc-godmode/docs/TROUBLESHOOTING.md +357 -0
- package/skills/cc-godmode/docs/WORKFLOWS.md +329 -0
- package/skills/cc-godmode/references/agents.md +433 -0
- package/skills/cc-godmode/scripts/build-skill.js +232 -0
- package/skills/clawdbot-filesystem/.clawhub/origin.json +7 -0
- package/skills/clawdbot-filesystem/LICENSE.md +21 -0
- package/skills/clawdbot-filesystem/README.md +322 -0
- package/skills/clawdbot-filesystem/SKILL.md +219 -0
- package/skills/clawdbot-filesystem/config.json +41 -0
- package/skills/clawdbot-filesystem/package.json +69 -0
- package/skills/clawdbot-security-check/.clawhub/origin.json +7 -0
- package/skills/clawdbot-security-check/README.md +168 -0
- package/skills/clawdbot-security-check/SKILL.md +145 -0
- package/skills/clawdbot-security-check/references/audit-checks.md +521 -0
- package/skills/clawdbot-security-check/skill.json +42 -0
- package/skills/clawddocs/.clawhub/origin.json +7 -0
- package/skills/clawddocs/SKILL.md +176 -0
- package/skills/clawddocs/package.json +9 -0
- package/skills/clawddocs/scripts/build-index.sh +17 -0
- package/skills/clawddocs/scripts/cache.sh +13 -0
- package/skills/clawddocs/scripts/fetch-doc.sh +7 -0
- package/skills/clawddocs/scripts/recent.sh +5 -0
- package/skills/clawddocs/scripts/search.sh +8 -0
- package/skills/clawddocs/scripts/sitemap.sh +23 -0
- package/skills/clawddocs/scripts/track-changes.sh +16 -0
- package/skills/clawddocs/snippets/common-configs.md +69 -0
- package/skills/clawguard/.clawhub/origin.json +7 -0
- package/skills/clawguard/SKILL.md +137 -0
- package/skills/company-research/SKILL.md +393 -0
- package/skills/company-research/examples/sample.md +164 -0
- package/skills/company-research/template.md +60 -0
- package/skills/crypto-price/.clawhub/origin.json +7 -0
- package/skills/crypto-price/ARCHITECTURE.md +437 -0
- package/skills/crypto-price/README.md +194 -0
- package/skills/crypto-price/SKILL.md +61 -0
- package/skills/crypto-price/requirements.txt +1 -0
- package/skills/crypto-price/scripts/get_price_chart.py +988 -0
- package/skills/customer-journey-map/SKILL.md +343 -0
- package/skills/customer-journey-map/examples/sample.md +33 -0
- package/skills/customer-journey-map/template.md +28 -0
- package/skills/customer-journey-mapping-workshop/SKILL.md +522 -0
- package/skills/deep-research/.clawhub/origin.json +7 -0
- package/skills/deep-research/SKILL.md +93 -0
- package/skills/deep-research/rules/logic.md +32 -0
- package/skills/discord-telegram-triage/SKILL.md +59 -0
- package/skills/discord-telegram-triage/references/discord-runbook.md +28 -0
- package/skills/discord-telegram-triage/references/validation-cases.md +11 -0
- package/skills/discord-telegram-triage/scripts/triage_snapshot.sh +23 -0
- package/skills/discovery-interview-prep/SKILL.md +408 -0
- package/skills/discovery-process/SKILL.md +503 -0
- package/skills/discovery-process/examples/sample.md +60 -0
- package/skills/discovery-process/template.md +39 -0
- package/skills/dist/arcane-dev-ops.skill +0 -0
- package/skills/dist/discord-telegram-triage.skill +0 -0
- package/skills/dist/founder-brief-summarizer.skill +0 -0
- package/skills/epic-breakdown-advisor/SKILL.md +664 -0
- package/skills/epic-hypothesis/SKILL.md +285 -0
- package/skills/epic-hypothesis/examples/sample.md +104 -0
- package/skills/epic-hypothesis/template.md +30 -0
- package/skills/excel/.clawhub/origin.json +7 -0
- package/skills/excel/SKILL.md +332 -0
- package/skills/excel/scripts/excel.py +1120 -0
- package/skills/fast-browser-use/.clawhub/origin.json +7 -0
- package/skills/fast-browser-use/CODEBUDDY.md +142 -0
- package/skills/fast-browser-use/Cargo.toml +77 -0
- package/skills/fast-browser-use/README.md +62 -0
- package/skills/fast-browser-use/SKILL.md +217 -0
- package/skills/fast-browser-use/package-lock.json +28 -0
- package/skills/fast-browser-use/package.json +8 -0
- package/skills/fast-browser-use/rustfmt.toml +10 -0
- package/skills/fast-browser-use/src/bin/cli.rs +373 -0
- package/skills/fast-browser-use/src/bin/mcp_server.rs +203 -0
- package/skills/fast-browser-use/src/browser/config.rs +136 -0
- package/skills/fast-browser-use/src/browser/debug.rs +16 -0
- package/skills/fast-browser-use/src/browser/mod.rs +61 -0
- package/skills/fast-browser-use/src/browser/session.rs +478 -0
- package/skills/fast-browser-use/src/dom/element.rs +442 -0
- package/skills/fast-browser-use/src/dom/extract_dom.js +849 -0
- package/skills/fast-browser-use/src/dom/mod.rs +14 -0
- package/skills/fast-browser-use/src/dom/tree.rs +296 -0
- package/skills/fast-browser-use/src/dom/yaml.rs +149 -0
- package/skills/fast-browser-use/src/error.rs +115 -0
- package/skills/fast-browser-use/src/lib.rs +17 -0
- package/skills/fast-browser-use/src/mcp/handler.rs +63 -0
- package/skills/fast-browser-use/src/mcp/mod.rs +81 -0
- package/skills/fast-browser-use/src/tools/Readability.min.js +1480 -0
- package/skills/fast-browser-use/src/tools/annotate.rs +165 -0
- package/skills/fast-browser-use/src/tools/click.rs +84 -0
- package/skills/fast-browser-use/src/tools/close.rs +35 -0
- package/skills/fast-browser-use/src/tools/close_tab.rs +45 -0
- package/skills/fast-browser-use/src/tools/convert_to_markdown.js +117 -0
- package/skills/fast-browser-use/src/tools/cookies.rs +58 -0
- package/skills/fast-browser-use/src/tools/debug.rs +44 -0
- package/skills/fast-browser-use/src/tools/evaluate.rs +40 -0
- package/skills/fast-browser-use/src/tools/extract.rs +66 -0
- package/skills/fast-browser-use/src/tools/go_back.rs +35 -0
- package/skills/fast-browser-use/src/tools/go_forward.rs +35 -0
- package/skills/fast-browser-use/src/tools/hover.js +33 -0
- package/skills/fast-browser-use/src/tools/hover.rs +97 -0
- package/skills/fast-browser-use/src/tools/html_to_markdown.rs +99 -0
- package/skills/fast-browser-use/src/tools/input.rs +93 -0
- package/skills/fast-browser-use/src/tools/local_storage.rs +159 -0
- package/skills/fast-browser-use/src/tools/markdown.rs +181 -0
- package/skills/fast-browser-use/src/tools/mod.rs +326 -0
- package/skills/fast-browser-use/src/tools/navigate.rs +55 -0
- package/skills/fast-browser-use/src/tools/new_tab.rs +60 -0
- package/skills/fast-browser-use/src/tools/press_key.rs +78 -0
- package/skills/fast-browser-use/src/tools/read_links.rs +59 -0
- package/skills/fast-browser-use/src/tools/readability_script.rs +8 -0
- package/skills/fast-browser-use/src/tools/screenshot.rs +47 -0
- package/skills/fast-browser-use/src/tools/scroll.js +22 -0
- package/skills/fast-browser-use/src/tools/scroll.rs +95 -0
- package/skills/fast-browser-use/src/tools/select.js +23 -0
- package/skills/fast-browser-use/src/tools/select.rs +129 -0
- package/skills/fast-browser-use/src/tools/sitemap.rs +426 -0
- package/skills/fast-browser-use/src/tools/snapshot.rs +324 -0
- package/skills/fast-browser-use/src/tools/switch_tab.rs +69 -0
- package/skills/fast-browser-use/src/tools/tab_list.rs +76 -0
- package/skills/fast-browser-use/src/tools/utils.rs +92 -0
- package/skills/fast-browser-use/src/tools/wait.rs +53 -0
- package/skills/fast-browser-use/test_auth.json +3 -0
- package/skills/fast-browser-use/test_state.json +6 -0
- package/skills/fast-browser-use/tests/browser_tools_integration.rs +233 -0
- package/skills/fast-browser-use/tests/cli_recipes_integration.rs +112 -0
- package/skills/fast-browser-use/tests/cookies_integration.rs +56 -0
- package/skills/fast-browser-use/tests/debug_integration.rs +83 -0
- package/skills/fast-browser-use/tests/dom_integration.rs +170 -0
- package/skills/fast-browser-use/tests/local_storage_integration.rs +75 -0
- package/skills/fast-browser-use/tests/markdown_integration.rs +448 -0
- package/skills/fast-browser-use/tests/navigation_integration.rs +241 -0
- package/skills/fast-browser-use/tests/sitemap_integration.rs +326 -0
- package/skills/fast-browser-use/tests/tab_management_integration.rs +300 -0
- package/skills/feature-investment-advisor/SKILL.md +639 -0
- package/skills/feature-investment-advisor/examples/conversation-flow.md +538 -0
- package/skills/finance-based-pricing-advisor/SKILL.md +763 -0
- package/skills/finance-metrics-quickref/SKILL.md +309 -0
- package/skills/find-skills/.clawhub/origin.json +7 -0
- package/skills/find-skills/SKILL.md +143 -0
- package/skills/flavor-text-writer/SKILL.md +27 -0
- package/skills/founder-brief-summarizer/SKILL.md +52 -0
- package/skills/founder-brief-summarizer/references/response-templates.md +15 -0
- package/skills/founder-brief-summarizer/references/validation-cases.md +11 -0
- package/skills/founder-brief-summarizer/scripts/brief_template.sh +28 -0
- package/skills/frontend-design/.clawhub/origin.json +7 -0
- package/skills/frontend-design/LICENSE.txt +190 -0
- package/skills/frontend-design/SKILL.md +53 -0
- package/skills/gemini/.clawhub/origin.json +7 -0
- package/skills/gemini/SKILL.md +33 -0
- package/skills/gemini-deep-research/.clawhub/origin.json +7 -0
- package/skills/gemini-deep-research/SKILL.md +78 -0
- package/skills/gemini-deep-research/scripts/deep_research.py +176 -0
- package/skills/git-essentials/.clawhub/origin.json +7 -0
- package/skills/git-essentials/SKILL.md +239 -0
- package/skills/git-essentials/references/advanced.md +211 -0
- package/skills/github/.clawhub/origin.json +7 -0
- package/skills/github/SKILL.md +57 -0
- package/skills/google-drive/.clawhub/origin.json +7 -0
- package/skills/google-drive/LICENSE.txt +21 -0
- package/skills/google-drive/SKILL.md +320 -0
- package/skills/growth-loop/SKILL.md +270 -0
- package/skills/growth-loop/_meta.json +9 -0
- package/skills/growth-loop/references/diagnosis-framework.md +84 -0
- package/skills/growth-loop/references/platform-benchmarks.md +79 -0
- package/skills/growth-loop/scripts/init-campaign.sh +274 -0
- package/skills/humanize-ai-text/.clawhub/origin.json +7 -0
- package/skills/humanize-ai-text/SKILL.md +192 -0
- package/skills/humanize-ai-text/scripts/compare.py +58 -0
- package/skills/humanize-ai-text/scripts/detect.py +160 -0
- package/skills/humanize-ai-text/scripts/patterns.json +191 -0
- package/skills/humanize-ai-text/scripts/transform.py +127 -0
- package/skills/humanizer/.clawhub/origin.json +7 -0
- package/skills/humanizer/README.md +82 -0
- package/skills/humanizer/SKILL.md +443 -0
- package/skills/jobs-to-be-done/SKILL.md +378 -0
- package/skills/jobs-to-be-done/examples/sample.md +80 -0
- package/skills/jobs-to-be-done/template.md +65 -0
- package/skills/lean-ux-canvas/SKILL.md +561 -0
- package/skills/lean-ux-canvas/examples/sample.md +88 -0
- package/skills/lean-ux-canvas/template.md +32 -0
- package/skills/markdown-formatter/.clawhub/origin.json +7 -0
- package/skills/markdown-formatter/README.md +137 -0
- package/skills/markdown-formatter/SKILL.md +369 -0
- package/skills/markdown-formatter/config.json +20 -0
- package/skills/markdown-formatter/index.js +439 -0
- package/skills/markdown-formatter/package.json +23 -0
- package/skills/markdown-formatter/test.js +23 -0
- package/skills/marketing-mode/.clawhub/origin.json +7 -0
- package/skills/marketing-mode/README.md +49 -0
- package/skills/marketing-mode/SKILL.md +703 -0
- package/skills/marketing-mode/mode-prompt.md +39 -0
- package/skills/marketing-mode/skill.json +51 -0
- package/skills/memory-hygiene/.clawhub/origin.json +7 -0
- package/skills/memory-hygiene/SKILL.md +91 -0
- package/skills/memory-setup/.clawhub/origin.json +7 -0
- package/skills/memory-setup/SKILL.md +180 -0
- package/skills/memorylayer/.clawhub/origin.json +7 -0
- package/skills/memorylayer/README.md +197 -0
- package/skills/memorylayer/SKILL.md +227 -0
- package/skills/memorylayer/examples/agent-integration.js +145 -0
- package/skills/memorylayer/examples/basic-usage.js +87 -0
- package/skills/memorylayer/examples/token-savings-demo.js +183 -0
- package/skills/memorylayer/index.js +115 -0
- package/skills/memorylayer/package-lock.json +295 -0
- package/skills/memorylayer/package.json +27 -0
- package/skills/memorylayer/python/memorylayer_skill.py +230 -0
- package/skills/memorylayer/python/requirements.txt +7 -0
- package/skills/mesh/SKILL.md +184 -0
- package/skills/model-usage/.clawhub/origin.json +7 -0
- package/skills/model-usage/SKILL.md +54 -0
- package/skills/model-usage/references/codexbar-cli.md +28 -0
- package/skills/model-usage/scripts/model_usage.py +310 -0
- package/skills/moltbook-interact/.clawhub/origin.json +7 -0
- package/skills/moltbook-interact/INSTALL.md +139 -0
- package/skills/moltbook-interact/README.md +198 -0
- package/skills/moltbook-interact/SKILL.md +72 -0
- package/skills/moltbook-interact/references/api.md +106 -0
- package/skills/moltbook-interact/scripts/moltbook.sh +142 -0
- package/skills/moltbook-registry/.clawhub/origin.json +7 -0
- package/skills/moltbook-registry/README.md +26 -0
- package/skills/moltbook-registry/SKILL.md +82 -0
- package/skills/moltbook-registry/index.js +180 -0
- package/skills/moltbook-registry/package.json +11 -0
- package/skills/mythril-scanner/SKILL.md +27 -0
- package/skills/n8n/.clawhub/origin.json +7 -0
- package/skills/n8n/SKILL.md +141 -0
- package/skills/n8n/references/api.md +156 -0
- package/skills/n8n/scripts/n8n_api.py +158 -0
- package/skills/n8n-workflow-automation/.clawhub/origin.json +7 -0
- package/skills/n8n-workflow-automation/SKILL.md +103 -0
- package/skills/n8n-workflow-automation/assets/runbook-template.md +32 -0
- package/skills/narrative-designer/SKILL.md +27 -0
- package/skills/ontology/.clawhub/origin.json +7 -0
- package/skills/ontology/SKILL.md +236 -0
- package/skills/ontology/references/queries.md +211 -0
- package/skills/ontology/references/schema.md +322 -0
- package/skills/ontology/scripts/ontology.py +374 -0
- package/skills/openai-image-gen/.clawhub/origin.json +7 -0
- package/skills/openai-image-gen/SKILL.md +45 -0
- package/skills/openai-image-gen/scripts/gen.py +227 -0
- package/skills/openclaw-agent-optimize/.clawhub/origin.json +7 -0
- package/skills/openclaw-agent-optimize/SKILL.md +33 -0
- package/skills/openclaw-agent-optimize/references/agent-orchestration.md +20 -0
- package/skills/openclaw-agent-optimize/references/context-management.md +15 -0
- package/skills/openclaw-agent-optimize/references/continuous-learning.md +14 -0
- package/skills/openclaw-agent-optimize/references/cron-optimization.md +16 -0
- package/skills/openclaw-agent-optimize/references/memory-patterns.md +14 -0
- package/skills/openclaw-agent-optimize/references/model-selection.md +18 -0
- package/skills/openclaw-skill-scanner/.clawhub/origin.json +7 -0
- package/skills/openclaw-skill-scanner/SKILL.md +88 -0
- package/skills/openclaw-skill-scanner/install-hook.sh +294 -0
- package/skills/openclaw-skill-scanner/report-template.md +53 -0
- package/skills/openclaw-skill-scanner/scanner.py +929 -0
- package/skills/openclaw-skill-scanner/whitelist.json +18 -0
- package/skills/opportunity-solution-tree/SKILL.md +428 -0
- package/skills/opportunity-solution-tree/examples/sample.md +104 -0
- package/skills/opportunity-solution-tree/template.md +33 -0
- package/skills/pdf/.clawhub/origin.json +7 -0
- package/skills/pdf/SKILL.md +304 -0
- package/skills/pestel-analysis/SKILL.md +384 -0
- package/skills/pestel-analysis/examples/sample.md +143 -0
- package/skills/pestel-analysis/template.md +53 -0
- package/skills/pol-probe/SKILL.md +217 -0
- package/skills/pol-probe/examples/sample.md +136 -0
- package/skills/pol-probe/template.md +59 -0
- package/skills/pol-probe-advisor/SKILL.md +492 -0
- package/skills/positioning-statement/SKILL.md +229 -0
- package/skills/positioning-statement/examples/sample.md +51 -0
- package/skills/positioning-statement/template.md +25 -0
- package/skills/positioning-workshop/SKILL.md +424 -0
- package/skills/prd-development/SKILL.md +654 -0
- package/skills/prd-development/examples/sample.md +43 -0
- package/skills/prd-development/template.md +55 -0
- package/skills/press-release/SKILL.md +277 -0
- package/skills/press-release/examples/sample.md +73 -0
- package/skills/press-release/template.md +39 -0
- package/skills/prioritization-advisor/SKILL.md +451 -0
- package/skills/proactive-messages/.clawhub/origin.json +7 -0
- package/skills/proactive-messages/SKILL.md +91 -0
- package/skills/problem-framing-canvas/SKILL.md +466 -0
- package/skills/problem-framing-canvas/examples/sample.md +58 -0
- package/skills/problem-framing-canvas/template.md +22 -0
- package/skills/problem-statement/SKILL.md +255 -0
- package/skills/problem-statement/examples/sample.md +82 -0
- package/skills/problem-statement/template.md +37 -0
- package/skills/product-strategy-session/SKILL.md +434 -0
- package/skills/product-strategy-session/examples/sample.md +67 -0
- package/skills/product-strategy-session/template.md +38 -0
- package/skills/prompt-guard/.clawhub/origin.json +7 -0
- package/skills/prompt-guard/ARCHITECTURE.md +364 -0
- package/skills/prompt-guard/CHANGELOG.md +200 -0
- package/skills/prompt-guard/README.md +215 -0
- package/skills/prompt-guard/SECURITY.md +66 -0
- package/skills/prompt-guard/SKILL.md +174 -0
- package/skills/prompt-guard/blog/how-i-secured-my-ai-agent.md +185 -0
- package/skills/prompt-guard/config.example.yaml +56 -0
- package/skills/prompt-guard/references/detection-patterns.md +298 -0
- package/skills/prompt-guard/requirements.txt +1 -0
- package/skills/prompt-guard/scripts/analyze_log.py +224 -0
- package/skills/prompt-guard/scripts/audit.py +344 -0
- package/skills/prompt-guard/scripts/detect.py +1587 -0
- package/skills/prompt-guard/scripts/hivefence.py +345 -0
- package/skills/proto-persona/SKILL.md +336 -0
- package/skills/proto-persona/examples/sample.md +97 -0
- package/skills/proto-persona/template.md +45 -0
- package/skills/recommendation-canvas/SKILL.md +382 -0
- package/skills/recommendation-canvas/examples/sample.md +94 -0
- package/skills/recommendation-canvas/template.md +86 -0
- package/skills/refactor-suggest/.clawhub/origin.json +7 -0
- package/skills/refactor-suggest/SKILL.md +94 -0
- package/skills/roadmap-planning/SKILL.md +506 -0
- package/skills/roadmap-planning/examples/sample.md +62 -0
- package/skills/roadmap-planning/template.md +30 -0
- package/skills/saas-economics-efficiency-metrics/SKILL.md +694 -0
- package/skills/saas-economics-efficiency-metrics/examples/cash-trap.md +365 -0
- package/skills/saas-economics-efficiency-metrics/examples/healthy-unit-economics.md +279 -0
- package/skills/saas-economics-efficiency-metrics/template.md +263 -0
- package/skills/saas-revenue-growth-metrics/SKILL.md +629 -0
- package/skills/saas-revenue-growth-metrics/examples/healthy-saas.md +131 -0
- package/skills/saas-revenue-growth-metrics/examples/warning-signs.md +229 -0
- package/skills/saas-revenue-growth-metrics/template.md +192 -0
- package/skills/save-money/.clawhub/origin.json +7 -0
- package/skills/save-money/SKILL.md +173 -0
- package/skills/scripts/golden_skills_v3.sh +32 -0
- package/skills/search/.clawhub/origin.json +7 -0
- package/skills/search/SKILL.md +18 -0
- package/skills/search/skill.json +1 -0
- package/skills/second-brain/.clawhub/origin.json +7 -0
- package/skills/second-brain/SKILL.md +278 -0
- package/skills/second-brain/scripts/ensue-api.sh +37 -0
- package/skills/self-improving-agent/.clawhub/origin.json +7 -0
- package/skills/self-improving-agent/.learnings/ERRORS.md +5 -0
- package/skills/self-improving-agent/.learnings/FEATURE_REQUESTS.md +5 -0
- package/skills/self-improving-agent/.learnings/LEARNINGS.md +5 -0
- package/skills/self-improving-agent/SKILL.md +130 -0
- package/skills/self-improving-agent/assets/LEARNINGS.md +45 -0
- package/skills/self-improving-agent/assets/SKILL-TEMPLATE.md +177 -0
- package/skills/self-improving-agent/hooks/openclaw/HOOK.md +23 -0
- package/skills/self-improving-agent/hooks/openclaw/handler.js +56 -0
- package/skills/self-improving-agent/hooks/openclaw/handler.ts +62 -0
- package/skills/self-improving-agent/references/examples.md +374 -0
- package/skills/self-improving-agent/references/hooks-setup.md +223 -0
- package/skills/self-improving-agent/references/openclaw-integration.md +248 -0
- package/skills/self-improving-agent/references/templates.md +480 -0
- package/skills/self-improving-agent/scripts/activator.sh +20 -0
- package/skills/self-improving-agent/scripts/error-detector.sh +55 -0
- package/skills/self-improving-agent/scripts/extract-skill.sh +203 -0
- package/skills/self-improving-agent-1-0-2/.clawhub/origin.json +7 -0
- package/skills/self-improving-agent-1-0-2/SKILL.md +562 -0
- package/skills/self-improving-agent-1-0-2/assets/LEARNINGS.md +45 -0
- package/skills/self-improving-agent-1-0-2/assets/SKILL-TEMPLATE.md +182 -0
- package/skills/self-improving-agent-1-0-2/references/clawdbot-integration.md +311 -0
- package/skills/self-improving-agent-1-0-2/references/examples.md +374 -0
- package/skills/self-improving-agent-1-0-2/references/hooks-setup.md +223 -0
- package/skills/self-improving-agent-1-0-2/scripts/activator.sh +20 -0
- package/skills/self-improving-agent-1-0-2/scripts/error-detector.sh +55 -0
- package/skills/self-improving-agent-1-0-2/scripts/extract-skill.sh +203 -0
- package/skills/self-love-confidence/.clawhub/origin.json +7 -0
- package/skills/self-love-confidence/SKILL.md +79 -0
- package/skills/self-reflection/.clawhub/origin.json +7 -0
- package/skills/self-reflection/README.md +292 -0
- package/skills/self-reflection/SKILL.md +110 -0
- package/skills/self-reflection/self-reflection.example.json +6 -0
- package/skills/slither-analyzer/SKILL.md +27 -0
- package/skills/solidity-audit/SKILL.md +27 -0
- package/skills/soulcraft/.clawhub/origin.json +7 -0
- package/skills/soulcraft/README.md +123 -0
- package/skills/soulcraft/SKILL.md +340 -0
- package/skills/soulcraft/references/question-bank.md +154 -0
- package/skills/soulcraft/references/soul-examples.md +207 -0
- package/skills/soulcraft/research/RESEARCH_REPORT.md +317 -0
- package/skills/spotify-player/.clawhub/origin.json +7 -0
- package/skills/spotify-player/SKILL.md +44 -0
- package/skills/storyboard/SKILL.md +259 -0
- package/skills/storyboard/examples/sample.md +71 -0
- package/skills/storyboard/template.md +41 -0
- package/skills/summarize/.clawhub/origin.json +7 -0
- package/skills/summarize/SKILL.md +59 -0
- package/skills/superdesign/.clawhub/origin.json +7 -0
- package/skills/superdesign/SKILL.md +224 -0
- package/skills/tam-sam-som-calculator/SKILL.md +399 -0
- package/skills/tam-sam-som-calculator/examples/sample.md +142 -0
- package/skills/tam-sam-som-calculator/scripts/market-sizing.py +95 -0
- package/skills/tam-sam-som-calculator/template.md +35 -0
- package/skills/tavily-search/.clawhub/origin.json +7 -0
- package/skills/tavily-search/SKILL.md +49 -0
- package/skills/tavily-search/scripts/extract.mjs +59 -0
- package/skills/tavily-search/scripts/search.mjs +101 -0
- package/skills/twitter/SKILL.md +74 -0
- package/skills/twitter/_meta.json +9 -0
- package/skills/twitter/references/validation-cases.md +53 -0
- package/skills/twitter/scripts/twitter.sh +421 -0
- package/skills/ui-ux-pro-max/.clawhub/origin.json +7 -0
- package/skills/ui-ux-pro-max/SKILL.md +54 -0
- package/skills/ui-ux-pro-max/assets/data/charts.csv +26 -0
- package/skills/ui-ux-pro-max/assets/data/colors.csv +97 -0
- package/skills/ui-ux-pro-max/assets/data/icons.csv +101 -0
- package/skills/ui-ux-pro-max/assets/data/landing.csv +31 -0
- package/skills/ui-ux-pro-max/assets/data/products.csv +97 -0
- package/skills/ui-ux-pro-max/assets/data/react-performance.csv +45 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/astro.csv +54 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/flutter.csv +53 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/html-tailwind.csv +56 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/jetpack-compose.csv +53 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/nextjs.csv +53 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/nuxt-ui.csv +51 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/nuxtjs.csv +59 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/react-native.csv +52 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/react.csv +54 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/shadcn.csv +61 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/svelte.csv +54 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/swiftui.csv +51 -0
- package/skills/ui-ux-pro-max/assets/data/stacks/vue.csv +50 -0
- package/skills/ui-ux-pro-max/assets/data/styles.csv +68 -0
- package/skills/ui-ux-pro-max/assets/data/typography.csv +58 -0
- package/skills/ui-ux-pro-max/assets/data/ui-reasoning.csv +101 -0
- package/skills/ui-ux-pro-max/assets/data/ux-guidelines.csv +100 -0
- package/skills/ui-ux-pro-max/assets/data/web-interface.csv +31 -0
- package/skills/ui-ux-pro-max/references/upstream-README.md +488 -0
- package/skills/ui-ux-pro-max/references/upstream-skill-content.md +288 -0
- package/skills/ui-ux-pro-max/scripts/__init__.py +0 -0
- package/skills/ui-ux-pro-max/scripts/core.py +253 -0
- package/skills/ui-ux-pro-max/scripts/design_system.py +1071 -0
- package/skills/ui-ux-pro-max/scripts/search.py +111 -0
- package/skills/user-story/SKILL.md +272 -0
- package/skills/user-story/examples/sample.md +110 -0
- package/skills/user-story/scripts/user-story-template.py +65 -0
- package/skills/user-story/template.md +32 -0
- package/skills/user-story-mapping/SKILL.md +296 -0
- package/skills/user-story-mapping/examples/sample.md +77 -0
- package/skills/user-story-mapping/template.md +41 -0
- package/skills/user-story-mapping-workshop/SKILL.md +485 -0
- package/skills/user-story-mapping-workshop/template.md +28 -0
- package/skills/user-story-splitting/SKILL.md +313 -0
- package/skills/user-story-splitting/examples/sample.md +147 -0
- package/skills/user-story-splitting/template.md +37 -0
- package/skills/wacli/.clawhub/origin.json +7 -0
- package/skills/wacli/SKILL.md +53 -0
- package/skills/web-search/.clawhub/origin.json +7 -0
- package/skills/web-search/SKILL.md +151 -0
- package/skills/web-search/references/api-details.md +207 -0
- package/skills/web-search/scripts/search.py +576 -0
- package/skills/workshop-facilitation/SKILL.md +88 -0
- package/skills/world-builder/SKILL.md +27 -0
- package/souls/blockchain-auditor/PRINCIPLES.md +75 -0
- package/souls/blockchain-auditor/SOUL.md +56 -0
- package/souls/blockchain-auditor/capabilities.json +33 -0
- package/souls/blockchain-auditor/evolution/capsules.json +4 -0
- package/souls/blockchain-auditor/evolution/events.jsonl +1 -0
- package/souls/blockchain-auditor/evolution/genes.json +62 -0
- package/souls/daedalus/PRINCIPLES.md +78 -0
- package/souls/daedalus/SOUL.md +48 -0
- package/souls/daedalus/capabilities.json +46 -0
- package/souls/identity-architect/PRINCIPLES.md +83 -0
- package/souls/identity-architect/SOUL.md +66 -0
- package/souls/identity-architect/capabilities.json +38 -0
- package/souls/identity-architect/evolution/capsules.json +4 -0
- package/souls/identity-architect/evolution/events.jsonl +0 -0
- package/souls/identity-architect/evolution/genes.json +4 -0
- package/souls/infra-ops/PRINCIPLES.md +77 -0
- package/souls/infra-ops/SOUL.md +56 -0
- package/souls/infra-ops/capabilities.json +33 -0
- package/souls/infra-ops/evolution/capsules.json +4 -0
- package/souls/infra-ops/evolution/events.jsonl +0 -0
- package/souls/infra-ops/evolution/genes.json +4 -0
- package/souls/lore-writer/PRINCIPLES.md +74 -0
- package/souls/lore-writer/SOUL.md +54 -0
- package/souls/lore-writer/capabilities.json +37 -0
- package/souls/lore-writer/evolution/capsules.json +4 -0
- package/souls/lore-writer/evolution/events.jsonl +0 -0
- package/souls/lore-writer/evolution/genes.json +4 -0
- package/souls/qa-evidence/PRINCIPLES.md +97 -0
- package/souls/qa-evidence/SOUL.md +66 -0
- package/souls/qa-evidence/capabilities.json +32 -0
- package/souls/qa-evidence/evolution/capsules.json +4 -0
- package/souls/qa-evidence/evolution/events.jsonl +0 -0
- package/souls/qa-evidence/evolution/genes.json +4 -0
- package/souls/registry.json +211 -0
- package/souls/sync-registry.js +65 -0
- package/uninstall.sh +102 -0
- package/workspace-bin/auto-checkpoint +60 -0
- package/workspace-bin/clawvault-access-control +65 -0
- package/workspace-bin/clawvault-local +28 -0
- package/workspace-bin/compile-boot +494 -0
- package/workspace-bin/daily-log-writer.mjs +251 -0
- package/workspace-bin/evolve +540 -0
- package/workspace-bin/fitness_score.py +395 -0
- package/workspace-bin/hooks/pre-commit +80 -0
- package/workspace-bin/install-daemon +299 -0
- package/workspace-bin/lane-watchdog.js +232 -0
- package/workspace-bin/lib/__init__.py +0 -0
- package/workspace-bin/lib/frontmatter.py +114 -0
- package/workspace-bin/memory-daemon.mjs +879 -0
- package/workspace-bin/memory-maintenance.mjs +531 -0
- package/workspace-bin/mesh-bridge.mjs +154 -0
- package/workspace-bin/multi-review +130 -0
- package/workspace-bin/obsidian +125 -0
- package/workspace-bin/obsidian-sync.mjs +888 -0
- package/workspace-bin/openclaw-register-source +102 -0
- package/workspace-bin/proactive-scan +147 -0
- package/workspace-bin/quality-gate +175 -0
- package/workspace-bin/screenshot +96 -0
- package/workspace-bin/session-recap +453 -0
- package/workspace-bin/skill-audit +494 -0
- package/workspace-bin/skill-quality-check +134 -0
- package/workspace-bin/skill-routing-eval +599 -0
- package/workspace-bin/soul-prompt +251 -0
- package/workspace-bin/subagent-audit.mjs +267 -0
- package/workspace-bin/test-multi-soul-workflow +130 -0
- package/workspace-bin/trust-registry +465 -0
- package/workspace-docs/AGENTS.md +201 -0
- package/workspace-docs/CLAUDE.md +64 -0
- package/workspace-docs/PRINCIPLES.md +81 -0
- package/workspace-docs/SOUL.md +48 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# CLAUDE.md — Auto-loaded Session Init
|
|
2
|
+
|
|
3
|
+
# Identity
|
|
4
|
+
You are Daedalus. Read SOUL.md for who you are.
|
|
5
|
+
|
|
6
|
+
# Session Bootstrap (do this EVERY session, silently)
|
|
7
|
+
Read in this order — static identity first, dynamic state last (maximizes prompt cache hits):
|
|
8
|
+
1. `SOUL.md` — identity, voice, relationship
|
|
9
|
+
2. `PRINCIPLES.md` — decision heuristics
|
|
10
|
+
3. `AGENTS.md` — operational rules, memory protocol, safety
|
|
11
|
+
4. `.companion-state.md` — immediate session context
|
|
12
|
+
5. `memory/active-tasks.md` — current work state (running/done/blocked only, ~12KB)
|
|
13
|
+
6. `.learnings/lessons.md` — accumulated corrections and preferences (behavior loop)
|
|
14
|
+
7. `memory/last-session-recap.md` — rolling conversation digest from prior sessions (continuity across crashes)
|
|
15
|
+
8. `memory/YYYY-MM-DD.md` (today's daily) if it exists
|
|
16
|
+
9. `MEMORY.md` — long-term memory (main sessions only, never in shared/group contexts)
|
|
17
|
+
|
|
18
|
+
**Lazy-loaded (read only when needed):**
|
|
19
|
+
- `TOOLS.md` — environment-specific notes (only if task involves TTS, SSH, cameras, etc.)
|
|
20
|
+
- `memory/task-backlog.md` — 504 queued pipeline tasks. Read when activating a new phase, NOT at boot.
|
|
21
|
+
|
|
22
|
+
Do NOT ask permission to read these. Just do it. Do NOT narrate that you're reading them unless the user asks.
|
|
23
|
+
|
|
24
|
+
# Session Continuity
|
|
25
|
+
Memory automation runs at the platform level via `bin/memory-daemon` (launchd service `ai.openclaw.memory-daemon`). It automatically handles session-recap, ClawVault wake, daily file creation, and memory maintenance — across ALL frontends (Claude Code, Discord, Telegram, etc.).
|
|
26
|
+
|
|
27
|
+
You do NOT need to run `session-recap` or `clawvault wake` manually. The daemon detects your session and runs bootstrap automatically. Just read `memory/last-session-recap.md` during boot — it will already be current.
|
|
28
|
+
|
|
29
|
+
# Workspace
|
|
30
|
+
- Primary project: Arcane (AR + blockchain + AI geolocated gaming platform)
|
|
31
|
+
- Project root: `projects/arcane/`
|
|
32
|
+
- User: Gui (Eastern time, based Montreal, currently in Medellin)
|
|
33
|
+
|
|
34
|
+
# Style
|
|
35
|
+
- Concise. No filler. No sycophancy.
|
|
36
|
+
- Timestamps in Montreal local time (full date + time).
|
|
37
|
+
- Confirm before external/irreversible actions.
|
|
38
|
+
- Security-first. No spam.
|
|
39
|
+
|
|
40
|
+
# HARD RULE — Task Lifecycle (File-Driven)
|
|
41
|
+
The kanban auto-reads `memory/active-tasks.md` every 3 seconds. No API calls needed.
|
|
42
|
+
- **START:** Add/update task entry in `memory/active-tasks.md` with `status: running`
|
|
43
|
+
- **END:** Move to `status: waiting-user` (NEVER `done` — only Gui marks done)
|
|
44
|
+
- ✅ `[task name] ready for review.` — with one-liner of what was accomplished
|
|
45
|
+
- ❌ `[task name] failed — [reason].`
|
|
46
|
+
- Parallel agents: report EACH one individually as they land
|
|
47
|
+
- No silent completions. No batching. No waiting. The moment work finishes, Gui hears about it.
|
|
48
|
+
- Also keep `.companion-state.md` current — it feeds the Live Session banner.
|
|
49
|
+
This is non-negotiable. Treat it as an interrupt — stop whatever you're doing and report.
|
|
50
|
+
|
|
51
|
+
# HARD RULE — Auto-Start Tasks (Kanban Daemon)
|
|
52
|
+
When a task has auto-start enabled (`needs_approval: false`), the kanban daemon owns dispatch:
|
|
53
|
+
|
|
54
|
+
1. **ONE task at a time.** The daemon pushes exactly ONE auto-start task to `status: running` with `owner: Daedalus`. All others stay queued in backlog until the current one clears.
|
|
55
|
+
2. **YOU OWN IT. YOU DO IT AUTONOMOUSLY.** When you see a task dispatched to you (owner=Daedalus, status=running), you execute it immediately. No asking permission. No waiting. Just do the work.
|
|
56
|
+
- **ALWAYS read the full task first.** Title is not enough. Read description, success criteria, artifacts, next_action — understand the full spec before writing a single line. If the description references documents (TECH_ARCHITECTURE.md, lore specs, design docs, etc.), READ THOSE TOO. No excuses.
|
|
57
|
+
3. **If blocked → contact Gui.** Move to `status: blocked` with explanation. The daemon will push the next task.
|
|
58
|
+
4. **When finished → `status: waiting-user` (ALWAYS).** Daedalus NEVER marks a task `done`. Every completed task goes to review. Only Gui moves it to `done`. The daemon sees the slot is free and dispatches the next queued task.
|
|
59
|
+
5. **Priority order.** Higher `auto_priority` dispatches first. Dependencies respected.
|
|
60
|
+
6. **Backlog visibility.** Remaining queued auto-start tasks are visible in backlog. They get pushed one-by-one as you complete/clear work.
|
|
61
|
+
|
|
62
|
+
**Flow:** Queued → [daemon dispatches 1] → Running (Daedalus executes) → Review/Blocked → [Gui approves → Done] → [daemon dispatches next]
|
|
63
|
+
|
|
64
|
+
**The distinction:** Auto-start = Daedalus does the work autonomously. Non-auto tasks = Gui triggers manually. Never confuse the two.
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
# Delegation Protocol — Full Reference
|
|
2
|
+
# Lazy-loaded by Daedalus when spawning sub-agents with soul-aware or trust-informed delegation.
|
|
3
|
+
# Boot summary lives in compiled boot artifact. This file has the complete protocol.
|
|
4
|
+
|
|
5
|
+
## Soul-Aware Spawning
|
|
6
|
+
|
|
7
|
+
When spawning a sub-agent as a specific soul (e.g., blockchain-auditor, lore-writer):
|
|
8
|
+
|
|
9
|
+
1. Generate the soul preamble:
|
|
10
|
+
```bash
|
|
11
|
+
bin/soul-prompt <soul-id> [--task-id T-xxx] [--extra-context "..."]
|
|
12
|
+
```
|
|
13
|
+
Reads the soul's SOUL.md, PRINCIPLES.md, learned genes, permissions, handoff context → outputs full preamble to stdout.
|
|
14
|
+
|
|
15
|
+
2. Check recommended subagent_type (printed to stderr):
|
|
16
|
+
- Soul has Write/Edit/Bash in tools → `general-purpose`
|
|
17
|
+
- Soul only has read-only tools → `Explore`
|
|
18
|
+
|
|
19
|
+
3. Call the Task tool:
|
|
20
|
+
```
|
|
21
|
+
subagent_type: <from step 2>
|
|
22
|
+
prompt: "<preamble>\n\n## Task\n<your actual task>"
|
|
23
|
+
name: "<soul-id>"
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Use soul-aware when:** task matches a specialist's domain, you want learned genes applied, or a handoff doc exists.
|
|
27
|
+
**Use generic when:** general-purpose tasks, quick searches, soul identity would add noise.
|
|
28
|
+
|
|
29
|
+
Mission Control (optional): `POST /api/souls/<soul-id>/prompt` returns the same preamble and logs the spawn.
|
|
30
|
+
|
|
31
|
+
## Contract Template
|
|
32
|
+
|
|
33
|
+
Every sub-agent prompt MUST include:
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
## Contract
|
|
37
|
+
- **Deliverable:** [exact output format — file path, JSON structure, test result]
|
|
38
|
+
- **Verification:** [mechanical check — "tests pass", "file exists at X", "no lint errors"]
|
|
39
|
+
- **Boundaries:** [tools/paths in scope, what is OUT of scope]
|
|
40
|
+
- **Budget:** [max turns before mandatory escalation — default 15]
|
|
41
|
+
- **Escalation:** [what to do if blocked]
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
If the deliverable can't be verified mechanically, decompose further. Unit of delegation = unit of verification.
|
|
45
|
+
Subjective outputs (lore, design) require a verification proxy: word count, format compliance, checklist.
|
|
46
|
+
|
|
47
|
+
## Trust-Informed Delegation
|
|
48
|
+
|
|
49
|
+
Check `bin/trust-registry` before delegating to a specialist soul.
|
|
50
|
+
|
|
51
|
+
| Tier | Min Tasks | Trust >= | Autonomy | Model |
|
|
52
|
+
|---|---|---|---|---|
|
|
53
|
+
| new | 0 | — | atomic (strict I/O) | sonnet |
|
|
54
|
+
| developing | 3 | 0.50 | guided (can decompose, must report steps) | sonnet |
|
|
55
|
+
| proven | 10 | 0.65 | open-ended (pursue sub-goals, report at end) | sonnet |
|
|
56
|
+
| expert | 25 | 0.80 | full (can sub-delegate, minimal oversight) | opus |
|
|
57
|
+
|
|
58
|
+
After every delegation: `bin/trust-registry update <soul-id> --result success|failure --turns N --verified true|false --task "description"`
|
|
59
|
+
|
|
60
|
+
## Two-Stage Review Gate
|
|
61
|
+
|
|
62
|
+
Any sub-agent producing code/file changes:
|
|
63
|
+
|
|
64
|
+
1. **Spec compliance** — output matches contract? Deliverable format, file locations, scope. Reject immediately if wrong.
|
|
65
|
+
2. **Code quality** — correct, safe, minimal? Security, complexity, scope creep, broken patterns. Only if stage 1 passes.
|
|
66
|
+
|
|
67
|
+
Apply by task size:
|
|
68
|
+
- Simple (<20 lines): mental check both inline
|
|
69
|
+
- Substantial (multi-file): explicitly verify stage 1 first
|
|
70
|
+
- Expert-tier: stage 1 only, trust their quality
|
|
71
|
+
|
|
72
|
+
## Task Granularity
|
|
73
|
+
|
|
74
|
+
Every delegated task: completable in **2-5 minutes**.
|
|
75
|
+
- \>5min = decompose into sequential sub-tasks with verifiable deliverables
|
|
76
|
+
- <2min = below complexity floor, do inline
|
|
77
|
+
- Exception: exploratory tasks — cap at 15 turns with mandatory checkpoint
|
|
78
|
+
|
|
79
|
+
## Re-Delegation Protocol
|
|
80
|
+
|
|
81
|
+
On sub-agent failure:
|
|
82
|
+
1. Retry once with enriched context (add the error + background)
|
|
83
|
+
2. Re-delegate to different soul if capability mismatch
|
|
84
|
+
3. Escalate model (sonnet → opus)
|
|
85
|
+
4. Escalate to Gui if 1-3 fail or task is high-criticality
|
|
86
|
+
|
|
87
|
+
Never retry same prompt unchanged. Each retry must add information.
|
|
88
|
+
|
|
89
|
+
## Circuit Breaker
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
bin/trust-registry check <soul-id>
|
|
93
|
+
# Exit 0 = available (CLOSED or HALF_OPEN)
|
|
94
|
+
# Exit 1 = blocked (OPEN, in cooldown)
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Thresholds:
|
|
98
|
+
- 3 consecutive failures → OPEN
|
|
99
|
+
- 30min cooldown → HALF_OPEN (1 probe allowed)
|
|
100
|
+
- Probe success → CLOSED
|
|
101
|
+
- Probe failure → OPEN (restart cooldown)
|
|
102
|
+
|
|
103
|
+
If OPEN, skip soul → use Re-Delegation Protocol.
|
|
104
|
+
|
|
105
|
+
## Wave-Based Parallel Execution
|
|
106
|
+
|
|
107
|
+
Scheduler dispatches in dependency waves via `computeWaves()`:
|
|
108
|
+
- Wave 0 = all independent tasks (concurrent, capacity-permitting)
|
|
109
|
+
- Wave 1+ = wait for prior wave
|
|
110
|
+
- Capacity: light=0.5, normal=1.0, heavy=2.0, MAX=2.0
|
|
111
|
+
- Debug: `GET /api/scheduler/waves`
|
|
112
|
+
|
|
113
|
+
## Quality Gate
|
|
114
|
+
|
|
115
|
+
Sub-agents MUST run after significant code changes:
|
|
116
|
+
```bash
|
|
117
|
+
bin/quality-gate --files <changed-files>
|
|
118
|
+
# Exit 0 = clear, Exit 1 = must fix, Exit 2 = warnings only
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## Criticality Levels
|
|
122
|
+
|
|
123
|
+
| Level | Triggers | Review |
|
|
124
|
+
|---|---|---|
|
|
125
|
+
| normal | Default | Standard two-stage |
|
|
126
|
+
| high | Security, payments, auth, migration, smart contracts | Multi-model review (3 parallel) |
|
|
127
|
+
|
|
128
|
+
High-criticality auto-detection:
|
|
129
|
+
- Paths: `contracts/`, `auth/`, `payments/`, `migration/`
|
|
130
|
+
- Keywords: security, audit, authentication, payment, migration, selfdestruct
|
|
131
|
+
|
|
132
|
+
Multi-model review: `bin/multi-review --task-id T-xxx --files <changed-files>` → 3 parallel reviewers (Logic, Security, Architecture). Any critical issue = revision required.
|
|
133
|
+
|
|
134
|
+
## Screenshot Gate (UI Changes)
|
|
135
|
+
|
|
136
|
+
UI files (`*.tsx/*.jsx` in components/pages/app/screens, `*.css/*.scss`) require visual evidence:
|
|
137
|
+
- Screenshot paths in `artifacts:` field
|
|
138
|
+
- Before/after description in completion report
|
|
139
|
+
- Or flag: `artifacts: [visual-verification-needed]`
|
|
140
|
+
|
|
141
|
+
No evidence on UI change → reject with "Missing visual evidence."
|
|
142
|
+
|
|
143
|
+
## Permission Scoping
|
|
144
|
+
|
|
145
|
+
Default sub-agent restrictions:
|
|
146
|
+
- No git push without contract permission
|
|
147
|
+
- No external API calls without contract permission
|
|
148
|
+
- No file deletion (use `trash`)
|
|
149
|
+
- No writing to SOUL.md, PRINCIPLES.md, AGENTS.md, MEMORY.md (genome files = human-approved only)
|
|
150
|
+
|
|
151
|
+
Soul-specific permissions: `capabilities.json`, enforced by `soul-prompt`.
|
|
152
|
+
|
|
153
|
+
## Handoff Templates
|
|
154
|
+
|
|
155
|
+
Standardized templates for context transfer between souls. Every handoff uses one of these — no cold starts.
|
|
156
|
+
|
|
157
|
+
### Standard Handoff (soul-to-soul work transfer)
|
|
158
|
+
|
|
159
|
+
```markdown
|
|
160
|
+
# Handoff: [Task ID]
|
|
161
|
+
**From:** [source-soul] → **To:** [target-soul]
|
|
162
|
+
**Reason:** [why this soul is better suited]
|
|
163
|
+
**Timestamp:** [datetime]
|
|
164
|
+
|
|
165
|
+
## Context
|
|
166
|
+
- **Task:** [title and description]
|
|
167
|
+
- **Current state:** [what's been done so far]
|
|
168
|
+
- **Key files:** [paths relevant to this task]
|
|
169
|
+
- **Dependencies:** [what this task needs from other work]
|
|
170
|
+
|
|
171
|
+
## Acceptance Criteria
|
|
172
|
+
- [mechanical verification for completion]
|
|
173
|
+
|
|
174
|
+
## Constraints
|
|
175
|
+
- [out-of-scope items, restricted paths, time budget]
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
### QA Pass
|
|
179
|
+
|
|
180
|
+
```markdown
|
|
181
|
+
# QA Verdict: PASS — [Task ID]
|
|
182
|
+
**Reviewer:** qa-evidence
|
|
183
|
+
**Timestamp:** [datetime]
|
|
184
|
+
|
|
185
|
+
## Evidence
|
|
186
|
+
- **Screenshots:** [paths/descriptions — minimum 2 viewports]
|
|
187
|
+
- **Test results:** [pass/fail per checklist item]
|
|
188
|
+
- **Performance:** [LCP, P95, Lighthouse score]
|
|
189
|
+
|
|
190
|
+
## Spec Compliance
|
|
191
|
+
- [x] [Requirement] — verified ([evidence ref])
|
|
192
|
+
|
|
193
|
+
## Notes
|
|
194
|
+
- [anything the next phase should know]
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### QA Fail
|
|
198
|
+
|
|
199
|
+
```markdown
|
|
200
|
+
# QA Verdict: NEEDS WORK — [Task ID]
|
|
201
|
+
**Reviewer:** qa-evidence
|
|
202
|
+
**Attempt:** [N/3]
|
|
203
|
+
**Timestamp:** [datetime]
|
|
204
|
+
|
|
205
|
+
## Issues
|
|
206
|
+
1. **[Blocker/Major/Minor]** — [specific description + location]
|
|
207
|
+
- **Expected:** [what should happen]
|
|
208
|
+
- **Actual:** [what happens, with evidence]
|
|
209
|
+
- **Fix guidance:** [suggested approach]
|
|
210
|
+
- **Files:** [specific files to modify]
|
|
211
|
+
|
|
212
|
+
## What Passed
|
|
213
|
+
- [items that don't need re-work]
|
|
214
|
+
|
|
215
|
+
## Re-test Scope
|
|
216
|
+
- [what to re-verify after fixes, including regression checks]
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
### Escalation Report (3-strike)
|
|
220
|
+
|
|
221
|
+
```markdown
|
|
222
|
+
# Escalation: [Task ID]
|
|
223
|
+
**From:** [soul-id]
|
|
224
|
+
**Attempts:** 3/3 exhausted
|
|
225
|
+
**Timestamp:** [datetime]
|
|
226
|
+
|
|
227
|
+
## Failure History
|
|
228
|
+
1. **Attempt 1:** [what was tried, why it failed]
|
|
229
|
+
2. **Attempt 2:** [enriched context, what changed, why it still failed]
|
|
230
|
+
3. **Attempt 3:** [final attempt, root cause analysis]
|
|
231
|
+
|
|
232
|
+
## Root Cause Assessment
|
|
233
|
+
- [structural issue, capability mismatch, or spec ambiguity]
|
|
234
|
+
|
|
235
|
+
## Recommended Resolution
|
|
236
|
+
- [ ] Reassign to different soul ([who] and [why])
|
|
237
|
+
- [ ] Decompose into smaller tasks
|
|
238
|
+
- [ ] Revise spec/requirements
|
|
239
|
+
- [ ] Defer to next sprint
|
|
240
|
+
- [ ] Accept with documented limitations
|
|
241
|
+
|
|
242
|
+
## Impact
|
|
243
|
+
- [what's blocked by this task, downstream effects]
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### Phase Gate Handoff
|
|
247
|
+
|
|
248
|
+
```markdown
|
|
249
|
+
# Phase Gate: [Phase N] → [Phase N+1]
|
|
250
|
+
**Gate keeper:** [soul-id]
|
|
251
|
+
**Verdict:** [PASS / NEEDS WORK / NOT READY]
|
|
252
|
+
**Timestamp:** [datetime]
|
|
253
|
+
|
|
254
|
+
## Gate Criteria Results
|
|
255
|
+
| Criterion | Status | Evidence |
|
|
256
|
+
|-----------|--------|----------|
|
|
257
|
+
| [requirement] | PASS/FAIL | [evidence ref] |
|
|
258
|
+
|
|
259
|
+
## Carried Forward
|
|
260
|
+
- **Documents:** [architecture docs, specs, task lists]
|
|
261
|
+
- **Key constraints:** [decisions that affect next phase]
|
|
262
|
+
- **Known risks:** [items to watch]
|
|
263
|
+
|
|
264
|
+
## Next Phase Activation
|
|
265
|
+
- **Souls to activate:** [list of souls needed for next phase]
|
|
266
|
+
- **Priority tasks:** [what to start first]
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
### Incident Handoff
|
|
270
|
+
|
|
271
|
+
```markdown
|
|
272
|
+
# Incident: [ID]
|
|
273
|
+
**Severity:** [P0-Critical / P1-High / P2-Medium / P3-Low]
|
|
274
|
+
**Reported by:** [soul-id or "user"]
|
|
275
|
+
**Timestamp:** [datetime]
|
|
276
|
+
|
|
277
|
+
## Description
|
|
278
|
+
- **What broke:** [specific system/feature]
|
|
279
|
+
- **User impact:** [who's affected, how]
|
|
280
|
+
- **First detected:** [when and how]
|
|
281
|
+
|
|
282
|
+
## Current State
|
|
283
|
+
- **Status:** [investigating / mitigating / resolved]
|
|
284
|
+
- **Actions taken:** [what's been done so far]
|
|
285
|
+
- **Rollback status:** [rolled back? partial? not needed?]
|
|
286
|
+
|
|
287
|
+
## Context for Next Responder
|
|
288
|
+
- **Relevant logs:** [paths or snippets]
|
|
289
|
+
- **Suspected cause:** [hypothesis if any]
|
|
290
|
+
- **Files touched:** [recent changes that might be related]
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
### Soul Routing Guide
|
|
294
|
+
|
|
295
|
+
When delegating, match the task to the right soul:
|
|
296
|
+
|
|
297
|
+
| Task Domain | Primary Soul | QA Soul | Escalation |
|
|
298
|
+
|------------|-------------|---------|------------|
|
|
299
|
+
| Smart contract code | blockchain-auditor | qa-evidence | Daedalus |
|
|
300
|
+
| Narrative/lore design | lore-writer | qa-evidence (checklist proxy) | Daedalus |
|
|
301
|
+
| CI/CD, deployment, monitoring | infra-ops | qa-evidence | Daedalus |
|
|
302
|
+
| Identity systems, trust models, SBT | identity-architect | blockchain-auditor | Daedalus |
|
|
303
|
+
| UI/frontend verification | (dev soul) | qa-evidence (screenshot gate) | Daedalus |
|
|
304
|
+
| Cross-domain / architectural | Daedalus | multi-model review | Gui |
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
# Heartbeat Protocol (20-min interval)
|
|
2
|
+
|
|
3
|
+
This file is the SINGLE SOURCE OF TRUTH for heartbeat behavior.
|
|
4
|
+
AGENTS.md points here. All heartbeat logic lives here.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## When to Reach Out (report to Gui)
|
|
9
|
+
|
|
10
|
+
- Important email arrived
|
|
11
|
+
- Calendar event coming up (<2h)
|
|
12
|
+
- Something interesting you found
|
|
13
|
+
- It's been >8h since you said anything
|
|
14
|
+
- Maintenance flagged warnings that need attention
|
|
15
|
+
|
|
16
|
+
## When to Stay Quiet (respond HEARTBEAT_OK)
|
|
17
|
+
|
|
18
|
+
- Late night (23:00-08:00) unless urgent
|
|
19
|
+
- Human is clearly busy
|
|
20
|
+
- Nothing new since last check
|
|
21
|
+
- You just checked <30 minutes ago
|
|
22
|
+
|
|
23
|
+
## Heartbeat vs Cron: When to Use Each
|
|
24
|
+
|
|
25
|
+
**Use heartbeat when:**
|
|
26
|
+
- Multiple checks can batch together (inbox + calendar + notifications in one turn)
|
|
27
|
+
- You need conversational context from recent messages
|
|
28
|
+
- Timing can drift slightly (every ~30 min is fine, not exact)
|
|
29
|
+
|
|
30
|
+
**Use cron when:**
|
|
31
|
+
- Exact timing matters ("9:00 AM sharp every Monday")
|
|
32
|
+
- Task needs isolation from main session history
|
|
33
|
+
- One-shot reminders ("remind me in 20 minutes")
|
|
34
|
+
- Output should deliver directly to a channel without main session involvement
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## MANDATORY: Memory Maintenance (every heartbeat)
|
|
39
|
+
|
|
40
|
+
1. Run `bin/memory-maintenance --force --verbose`
|
|
41
|
+
2. Read `.tmp/maintenance-results` — if any warnings, report to Gui
|
|
42
|
+
3. Specific attention:
|
|
43
|
+
- ARCHIVAL: daily files >30 days → archived automatically
|
|
44
|
+
- PREDICTIONS: open >7 days → expired automatically
|
|
45
|
+
- STALE_TASKS: running >24h → flagged
|
|
46
|
+
- MEMORY_STALE: MEMORY.md >7 days old → needs manual update (do it NOW)
|
|
47
|
+
- MC_SYNC: Mission Control memory index refreshed
|
|
48
|
+
- ERRORS_STALE: pending errors >14 days → need resolution
|
|
49
|
+
4. If MEMORY_STALE flagged: update MEMORY.md immediately (move Active→Recent, add recent work)
|
|
50
|
+
|
|
51
|
+
## MANDATORY: Fact Extraction (every heartbeat if MC running)
|
|
52
|
+
**Requires LLM — cannot be automated in bash. Run inline during heartbeat.**
|
|
53
|
+
|
|
54
|
+
1. Check if Mission Control is running: `curl -s localhost:3000/api/tasks`
|
|
55
|
+
2. If running, check last flush: `curl -s localhost:3000/api/memory/flush`
|
|
56
|
+
3. If last flush > 24 hours ago OR no flush ever:
|
|
57
|
+
a. Read today's daily file (`memory/YYYY-MM-DD.md`)
|
|
58
|
+
b. Extract atomic facts using write gate rules (AGENTS.md)
|
|
59
|
+
c. POST extracted facts to `localhost:3000/api/memory/items`
|
|
60
|
+
d. POST to `localhost:3000/api/memory/flush` to record the flush
|
|
61
|
+
4. If MC not running, skip silently
|
|
62
|
+
|
|
63
|
+
## Active Job Monitor
|
|
64
|
+
1. Read `memory/active-tasks.md` — check for any task with status `running`
|
|
65
|
+
2. If running task exists, check its `next_action` and report status
|
|
66
|
+
3. If blocked, report the blocker
|
|
67
|
+
4. Check `git status` in project dirs for uncommitted work
|
|
68
|
+
5. Report findings concisely
|
|
69
|
+
|
|
70
|
+
## Skill Quality Check (weekly)
|
|
71
|
+
- Run `bin/skill-quality-check` to compare against last audit
|
|
72
|
+
- If regressions found, report them
|
|
73
|
+
- Otherwise, skip silently
|
|
74
|
+
|
|
75
|
+
## Routing Eval Baseline (monthly, 1st of month)
|
|
76
|
+
- Run `bin/skill-routing-eval --compare .tmp/last-routing-eval.json`
|
|
77
|
+
- If accuracy dropped or new conflicts appeared, report them
|
|
78
|
+
- Refresh baseline: `bin/skill-routing-eval --baseline`
|
|
79
|
+
- Otherwise, skip silently
|
|
80
|
+
|
|
81
|
+
## Proactive Scan
|
|
82
|
+
1. Run `bin/proactive-scan --dry-run`
|
|
83
|
+
2. If triggers found:
|
|
84
|
+
- `stale_task`: Check on the running task, escalate if needed
|
|
85
|
+
- `uncommitted_work`: Review and commit if appropriate
|
|
86
|
+
- `circuit_recovery`: Consider probe delegation to recovered soul
|
|
87
|
+
3. Only spawn agents for triggers that align with active project priorities
|
|
88
|
+
|
|
89
|
+
## Security Gate
|
|
90
|
+
- Pre-commit hook active: `bin/hooks/pre-commit`
|
|
91
|
+
- Any skill change auto-scanned before commit
|
|
92
|
+
- Setup: `git config core.hooksPath bin/hooks`
|
|
93
|
+
|
|
94
|
+
## Mesh Health
|
|
95
|
+
1. Run `mesh health --json --all` silently (if mesh available)
|
|
96
|
+
2. If any node degraded/down: `mesh repair --all`, retry, log if still broken
|
|
97
|
+
3. If 3 consecutive failures: escalate to user
|
|
98
|
+
|
|
99
|
+
## Proactive Work (safe to do without asking)
|
|
100
|
+
|
|
101
|
+
- Read and organize memory files
|
|
102
|
+
- Check on projects (git status, etc.)
|
|
103
|
+
- Update documentation
|
|
104
|
+
- Commit and push your own changes
|
|
105
|
+
- Review and update MEMORY.md
|
|
106
|
+
- Run `bin/proactive-scan` to discover actionable triggers
|
|
107
|
+
- Act on stale tasks (check status, escalate blockers)
|
|
108
|
+
- Commit clean uncommitted work in project directories
|
|
109
|
+
- Probe recovered souls via delegation (circuit breaker half-open)
|
|
110
|
+
|
|
111
|
+
## Prediction-Outcome Calibration
|
|
112
|
+
|
|
113
|
+
**Log:** `memory/predictions.md`
|
|
114
|
+
|
|
115
|
+
Before significant decisions, write a structured prediction:
|
|
116
|
+
|
|
117
|
+
```
|
|
118
|
+
### YYYY-MM-DD — [decision name]
|
|
119
|
+
**Decision:** What you chose and why
|
|
120
|
+
**Prediction:** What you expect to happen
|
|
121
|
+
**Confidence:** High / Medium / Low
|
|
122
|
+
**Outcome:**
|
|
123
|
+
**Delta:** [what surprised you]
|
|
124
|
+
**Lesson:** [what to update in your model]
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**When to predict:** New tool/pattern adoption, delegation to untested soul, architectural choices with uncertain outcomes.
|
|
128
|
+
**When NOT to predict:** Routine tasks, obvious outcomes, one-off questions.
|
|
129
|
+
|
|
130
|
+
**Closing predictions (during maintenance):**
|
|
131
|
+
1. Scan for open predictions older than 7 days
|
|
132
|
+
2. Fill in Outcome/Delta/Lesson if result is observable
|
|
133
|
+
3. Mark `[expired — no signal]` if untestable
|
|
134
|
+
4. Watch for systematic overconfidence or complexity underestimates
|
|
135
|
+
|
|
136
|
+
## Current State
|
|
137
|
+
- Memory maintenance: AUTOMATED via auto-checkpoint (every 30min) + heartbeat (every 20min)
|
|
138
|
+
- Principle 11 active: all structural systems must be automated
|
|
139
|
+
- Skill Quality Engineering: complete (Phases 1-6)
|
|
140
|
+
- Routing eval baseline: 95.9% accuracy, 29 conflict pairs
|
|
141
|
+
- Security gate: active via core.hooksPath
|
|
142
|
+
|
|
143
|
+
# Mesh Health (add to ~/.openclaw/workspace/HEARTBEAT.md)
|
|
144
|
+
|
|
145
|
+
## Mesh maintenance check
|
|
146
|
+
|
|
147
|
+
Every heartbeat, verify the mesh is operational:
|
|
148
|
+
|
|
149
|
+
1. Run `mesh health --json --all` silently
|
|
150
|
+
2. Parse the JSON — check if `overall` is `"ok"` for each node
|
|
151
|
+
3. If any node shows `"degraded"` or `"down"`:
|
|
152
|
+
a. Run `mesh repair --all`
|
|
153
|
+
b. Wait 10 seconds, then `mesh health --json --all` again
|
|
154
|
+
c. If still broken, append a timestamped entry to `~/openclaw/shared/mesh-incidents.log`:
|
|
155
|
+
```
|
|
156
|
+
[2026-03-02T14:30:00Z] UNRESOLVED: ubuntu/nats_server down after repair attempt
|
|
157
|
+
```
|
|
158
|
+
d. If the issue persists across 3 consecutive heartbeats, escalate:
|
|
159
|
+
send a message to the user noting which services are down and what was tried.
|
|
160
|
+
4. If all healthy: HEARTBEAT_OK (no output needed)
|
|
161
|
+
|
|
162
|
+
**Priority**: Run this check BEFORE any task that involves the remote node.
|
|
163
|
+
If mesh is unhealthy, do not delegate work to the remote node — do it locally or queue it.
|