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,203 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Skill Extraction Helper
|
|
3
|
+
# Creates a new skill from a learning entry
|
|
4
|
+
# Usage: ./extract-skill.sh <skill-name> [--dry-run]
|
|
5
|
+
|
|
6
|
+
set -e
|
|
7
|
+
|
|
8
|
+
# Configuration
|
|
9
|
+
SKILLS_DIR="${SKILLS_DIR:-./skills}"
|
|
10
|
+
TEMPLATE_DIR="$(dirname "$0")/../assets"
|
|
11
|
+
|
|
12
|
+
# Colors for output
|
|
13
|
+
RED='\033[0;31m'
|
|
14
|
+
GREEN='\033[0;32m'
|
|
15
|
+
YELLOW='\033[1;33m'
|
|
16
|
+
NC='\033[0m' # No Color
|
|
17
|
+
|
|
18
|
+
usage() {
|
|
19
|
+
cat << EOF
|
|
20
|
+
Usage: $(basename "$0") <skill-name> [options]
|
|
21
|
+
|
|
22
|
+
Create a new skill from a learning entry.
|
|
23
|
+
|
|
24
|
+
Arguments:
|
|
25
|
+
skill-name Name of the skill (lowercase, hyphens for spaces)
|
|
26
|
+
|
|
27
|
+
Options:
|
|
28
|
+
--dry-run Show what would be created without creating files
|
|
29
|
+
--output-dir Override skills directory (default: ./skills)
|
|
30
|
+
-h, --help Show this help message
|
|
31
|
+
|
|
32
|
+
Examples:
|
|
33
|
+
$(basename "$0") docker-m1-fixes
|
|
34
|
+
$(basename "$0") api-timeout-patterns --dry-run
|
|
35
|
+
$(basename "$0") pnpm-setup --output-dir /path/to/skills
|
|
36
|
+
|
|
37
|
+
The skill will be created in: \$SKILLS_DIR/<skill-name>/
|
|
38
|
+
EOF
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
log_info() {
|
|
42
|
+
echo -e "${GREEN}[INFO]${NC} $1"
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
log_warn() {
|
|
46
|
+
echo -e "${YELLOW}[WARN]${NC} $1"
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
log_error() {
|
|
50
|
+
echo -e "${RED}[ERROR]${NC} $1" >&2
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
# Parse arguments
|
|
54
|
+
SKILL_NAME=""
|
|
55
|
+
DRY_RUN=false
|
|
56
|
+
|
|
57
|
+
while [[ $# -gt 0 ]]; do
|
|
58
|
+
case $1 in
|
|
59
|
+
--dry-run)
|
|
60
|
+
DRY_RUN=true
|
|
61
|
+
shift
|
|
62
|
+
;;
|
|
63
|
+
--output-dir)
|
|
64
|
+
SKILLS_DIR="$2"
|
|
65
|
+
shift 2
|
|
66
|
+
;;
|
|
67
|
+
-h|--help)
|
|
68
|
+
usage
|
|
69
|
+
exit 0
|
|
70
|
+
;;
|
|
71
|
+
-*)
|
|
72
|
+
log_error "Unknown option: $1"
|
|
73
|
+
usage
|
|
74
|
+
exit 1
|
|
75
|
+
;;
|
|
76
|
+
*)
|
|
77
|
+
if [ -z "$SKILL_NAME" ]; then
|
|
78
|
+
SKILL_NAME="$1"
|
|
79
|
+
else
|
|
80
|
+
log_error "Unexpected argument: $1"
|
|
81
|
+
usage
|
|
82
|
+
exit 1
|
|
83
|
+
fi
|
|
84
|
+
shift
|
|
85
|
+
;;
|
|
86
|
+
esac
|
|
87
|
+
done
|
|
88
|
+
|
|
89
|
+
# Validate skill name
|
|
90
|
+
if [ -z "$SKILL_NAME" ]; then
|
|
91
|
+
log_error "Skill name is required"
|
|
92
|
+
usage
|
|
93
|
+
exit 1
|
|
94
|
+
fi
|
|
95
|
+
|
|
96
|
+
# Validate skill name format (lowercase, hyphens, no spaces)
|
|
97
|
+
if ! [[ "$SKILL_NAME" =~ ^[a-z0-9]+(-[a-z0-9]+)*$ ]]; then
|
|
98
|
+
log_error "Invalid skill name format. Use lowercase letters, numbers, and hyphens only."
|
|
99
|
+
log_error "Examples: 'docker-fixes', 'api-patterns', 'pnpm-setup'"
|
|
100
|
+
exit 1
|
|
101
|
+
fi
|
|
102
|
+
|
|
103
|
+
SKILL_PATH="$SKILLS_DIR/$SKILL_NAME"
|
|
104
|
+
|
|
105
|
+
# Check if skill already exists
|
|
106
|
+
if [ -d "$SKILL_PATH" ] && [ "$DRY_RUN" = false ]; then
|
|
107
|
+
log_error "Skill already exists: $SKILL_PATH"
|
|
108
|
+
log_error "Use a different name or remove the existing skill first."
|
|
109
|
+
exit 1
|
|
110
|
+
fi
|
|
111
|
+
|
|
112
|
+
# Dry run output
|
|
113
|
+
if [ "$DRY_RUN" = true ]; then
|
|
114
|
+
log_info "Dry run - would create:"
|
|
115
|
+
echo " $SKILL_PATH/"
|
|
116
|
+
echo " $SKILL_PATH/SKILL.md"
|
|
117
|
+
echo ""
|
|
118
|
+
echo "Template content would be:"
|
|
119
|
+
echo "---"
|
|
120
|
+
cat << TEMPLATE
|
|
121
|
+
name: $SKILL_NAME
|
|
122
|
+
description: "[TODO: Add a concise description of what this skill does and when to use it]"
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
# $(echo "$SKILL_NAME" | sed 's/-/ /g' | awk '{for(i=1;i<=NF;i++) $i=toupper(substr($i,1,1)) tolower(substr($i,2))}1')
|
|
126
|
+
|
|
127
|
+
[TODO: Brief introduction explaining the skill's purpose]
|
|
128
|
+
|
|
129
|
+
## Quick Reference
|
|
130
|
+
|
|
131
|
+
| Situation | Action |
|
|
132
|
+
|-----------|--------|
|
|
133
|
+
| [Trigger condition] | [What to do] |
|
|
134
|
+
|
|
135
|
+
## Usage
|
|
136
|
+
|
|
137
|
+
[TODO: Detailed usage instructions]
|
|
138
|
+
|
|
139
|
+
## Examples
|
|
140
|
+
|
|
141
|
+
[TODO: Add concrete examples]
|
|
142
|
+
|
|
143
|
+
## Source Learning
|
|
144
|
+
|
|
145
|
+
This skill was extracted from a learning entry.
|
|
146
|
+
- Learning ID: [TODO: Add original learning ID]
|
|
147
|
+
- Original File: .learnings/LEARNINGS.md
|
|
148
|
+
TEMPLATE
|
|
149
|
+
echo "---"
|
|
150
|
+
exit 0
|
|
151
|
+
fi
|
|
152
|
+
|
|
153
|
+
# Create skill directory structure
|
|
154
|
+
log_info "Creating skill: $SKILL_NAME"
|
|
155
|
+
|
|
156
|
+
mkdir -p "$SKILL_PATH"
|
|
157
|
+
|
|
158
|
+
# Create SKILL.md from template
|
|
159
|
+
cat > "$SKILL_PATH/SKILL.md" << TEMPLATE
|
|
160
|
+
---
|
|
161
|
+
name: $SKILL_NAME
|
|
162
|
+
description: "[TODO: Add a concise description of what this skill does and when to use it]"
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
# $(echo "$SKILL_NAME" | sed 's/-/ /g' | awk '{for(i=1;i<=NF;i++) $i=toupper(substr($i,1,1)) tolower(substr($i,2))}1')
|
|
166
|
+
|
|
167
|
+
[TODO: Brief introduction explaining the skill's purpose]
|
|
168
|
+
|
|
169
|
+
## Quick Reference
|
|
170
|
+
|
|
171
|
+
| Situation | Action |
|
|
172
|
+
|-----------|--------|
|
|
173
|
+
| [Trigger condition] | [What to do] |
|
|
174
|
+
|
|
175
|
+
## Usage
|
|
176
|
+
|
|
177
|
+
[TODO: Detailed usage instructions]
|
|
178
|
+
|
|
179
|
+
## Examples
|
|
180
|
+
|
|
181
|
+
[TODO: Add concrete examples]
|
|
182
|
+
|
|
183
|
+
## Source Learning
|
|
184
|
+
|
|
185
|
+
This skill was extracted from a learning entry.
|
|
186
|
+
- Learning ID: [TODO: Add original learning ID]
|
|
187
|
+
- Original File: .learnings/LEARNINGS.md
|
|
188
|
+
TEMPLATE
|
|
189
|
+
|
|
190
|
+
log_info "Created: $SKILL_PATH/SKILL.md"
|
|
191
|
+
|
|
192
|
+
# Suggest next steps
|
|
193
|
+
echo ""
|
|
194
|
+
log_info "Skill scaffold created successfully!"
|
|
195
|
+
echo ""
|
|
196
|
+
echo "Next steps:"
|
|
197
|
+
echo " 1. Edit $SKILL_PATH/SKILL.md"
|
|
198
|
+
echo " 2. Fill in the TODO sections with content from your learning"
|
|
199
|
+
echo " 3. Add references/ folder if you have detailed documentation"
|
|
200
|
+
echo " 4. Add scripts/ folder if you have executable code"
|
|
201
|
+
echo " 5. Update the original learning entry with:"
|
|
202
|
+
echo " **Status**: promoted_to_skill"
|
|
203
|
+
echo " **Skill-Path**: skills/$SKILL_NAME"
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: self-love-confidence
|
|
3
|
+
description: "Builds self-love and confidence through affirmations, wins logging, and inner critic reframing. Use when the user wants emotional support, confidence boosting, or self-worth exercises."
|
|
4
|
+
author: clawd-team
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
triggers:
|
|
7
|
+
- "self love practice"
|
|
8
|
+
- "boost my confidence"
|
|
9
|
+
- "affirmations"
|
|
10
|
+
- "feeling insecure"
|
|
11
|
+
- "self worth"
|
|
12
|
+
negative_triggers:
|
|
13
|
+
- "love this feature"
|
|
14
|
+
- "confident this code works"
|
|
15
|
+
- "self-hosting setup"
|
|
16
|
+
- "improve my resume"
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# Self-Love & Confidence
|
|
20
|
+
|
|
21
|
+
Build unshakeable self-worth through daily practices, wins logging, and inner critic reframing.
|
|
22
|
+
|
|
23
|
+
## What it does
|
|
24
|
+
|
|
25
|
+
This skill transforms self-doubt into self-trust through four core practices:
|
|
26
|
+
|
|
27
|
+
- **Affirmations**: Personalized affirmations across five dimensions of worth (self-worth, capability, body, relationships, growth)
|
|
28
|
+
- **Wins Logging**: Capture daily wins—big and small—to counteract the brain's negativity bias
|
|
29
|
+
- **Inner Critic Reframing**: Convert harsh self-talk into compassionate, realistic self-dialogue
|
|
30
|
+
- **Confidence Tracking**: Monitor confidence levels over time to spot patterns and celebrate progress
|
|
31
|
+
|
|
32
|
+
## Usage
|
|
33
|
+
|
|
34
|
+
### Daily Affirmation
|
|
35
|
+
Start your morning with a personalized affirmation from your chosen category. The skill adapts affirmations based on your recent logs and patterns.
|
|
36
|
+
|
|
37
|
+
**Trigger:** "Give me an affirmation" or "self love practice"
|
|
38
|
+
|
|
39
|
+
### Log a Win
|
|
40
|
+
Record a win—any accomplishment, no matter size. Won a small argument with your inner critic? Shipped a feature? Drank enough water? Log it. The wins compound into visible proof of your capability.
|
|
41
|
+
|
|
42
|
+
**Trigger:** "Log a win" or "I accomplished..."
|
|
43
|
+
|
|
44
|
+
### Reframe Thought
|
|
45
|
+
Caught yourself in harsh self-talk? Feed it to the skill. It will help you see the thought as data, not truth, and reframe it into something grounded and compassionate.
|
|
46
|
+
|
|
47
|
+
**Trigger:** "Reframe this thought" or "I'm feeling insecure about..."
|
|
48
|
+
|
|
49
|
+
### Confidence Check
|
|
50
|
+
Quick pulse on your current confidence level (1-10) across dimensions. Track shifts and what caused them.
|
|
51
|
+
|
|
52
|
+
**Trigger:** "Confidence check" or "How confident am I today?"
|
|
53
|
+
|
|
54
|
+
### Review Progress
|
|
55
|
+
See your wins, affirmation history, and confidence trend over the past week, month, or custom range. Spot patterns. Celebrate growth.
|
|
56
|
+
|
|
57
|
+
**Trigger:** "Show my progress" or "Review my wins"
|
|
58
|
+
|
|
59
|
+
## Affirmation Categories
|
|
60
|
+
|
|
61
|
+
The skill offers affirmations across five dimensions:
|
|
62
|
+
|
|
63
|
+
- **Self-Worth**: Core belief in your inherent value, independent of achievement
|
|
64
|
+
- **Capability**: Trust in your ability to learn, solve, and grow
|
|
65
|
+
- **Body**: Gratitude and respect for your physical self
|
|
66
|
+
- **Relationships**: Healthy boundaries and deserving of good connection
|
|
67
|
+
- **Growth**: Embracing challenge and seeing failure as feedback
|
|
68
|
+
|
|
69
|
+
## Tips
|
|
70
|
+
|
|
71
|
+
1. **Consistency beats intensity.** One affirmation daily is more powerful than ten sporadic ones. The brain needs repetition to rewire.
|
|
72
|
+
|
|
73
|
+
2. **Logs are proof.** When doubt creeps in, scroll your wins. Your brain forgot what you accomplished—remind it.
|
|
74
|
+
|
|
75
|
+
3. **Reframe regularly.** The inner critic is a reflex. Catching and reframing each thought weakens its grip over time.
|
|
76
|
+
|
|
77
|
+
4. **Small wins count.** Logging "I drank water" is not trivial. It's evidence that you follow through on commitments to yourself.
|
|
78
|
+
|
|
79
|
+
5. **All data stays local on your machine.** Your affirmations, wins, and inner critic conversations never leave your device. Privacy by design.
|
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
# 🪞 Self-Reflection
|
|
2
|
+
|
|
3
|
+
A continuous self-improvement skill for AI agents. Track mistakes, log lessons learned, and build institutional memory over time.
|
|
4
|
+
|
|
5
|
+
## Why?
|
|
6
|
+
|
|
7
|
+
AI agents make mistakes. Without memory, they repeat them. This skill creates a structured feedback loop where agents regularly pause, reflect on their performance, and document learnings.
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
"The only real mistake is the one from which we learn nothing."
|
|
11
|
+
— Henry Ford
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Architecture
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
┌─────────────────────────────────────────────────────────────────────┐
|
|
18
|
+
│ OPENCLAW GATEWAY │
|
|
19
|
+
├─────────────────────────────────────────────────────────────────────┤
|
|
20
|
+
│ │
|
|
21
|
+
│ ┌─────────────┐ Heartbeat ┌──────────────────────────────┐ │
|
|
22
|
+
│ │ │ (every 60m) │ │ │
|
|
23
|
+
│ │ AGENT │ ───────────────► │ HEARTBEAT.md │ │
|
|
24
|
+
│ │ │ │ └─► "self-reflection check" │ │
|
|
25
|
+
│ │ │ │ │ │
|
|
26
|
+
│ └──────┬──────┘ └──────────────────────────────┘ │
|
|
27
|
+
│ │ │
|
|
28
|
+
│ │ executes │
|
|
29
|
+
│ ▼ │
|
|
30
|
+
│ ┌─────────────────────────────────────────────────────────────┐ │
|
|
31
|
+
│ │ SELF-REFLECTION SKILL │ │
|
|
32
|
+
│ ├─────────────────────────────────────────────────────────────┤ │
|
|
33
|
+
│ │ │ │
|
|
34
|
+
│ │ $ self-reflection check │ │
|
|
35
|
+
│ │ │ │ │
|
|
36
|
+
│ │ ▼ │ │
|
|
37
|
+
│ │ ┌─────────────┐ │ │
|
|
38
|
+
│ │ │ < 60 min ? │ │ │
|
|
39
|
+
│ │ └──────┬──────┘ │ │
|
|
40
|
+
│ │ │ │ │
|
|
41
|
+
│ │ YES │ NO │ │
|
|
42
|
+
│ │ ┌─────┴─────┐ │ │
|
|
43
|
+
│ │ ▼ ▼ │ │
|
|
44
|
+
│ │ ┌───┐ ┌─────────┐ │ │
|
|
45
|
+
│ │ │OK │ │ ALERT │──► Agent reflects │ │
|
|
46
|
+
│ │ └───┘ └─────────┘ └──► self-reflection read │ │
|
|
47
|
+
│ │ │ └──► self-reflection log │ │
|
|
48
|
+
│ │ ▼ │ │ │
|
|
49
|
+
│ │ Continue ▼ │ │
|
|
50
|
+
│ │ normally ┌────────────┐ │ │
|
|
51
|
+
│ │ │ MEMORY.md │ │ │
|
|
52
|
+
│ │ │ (lessons) │ │ │
|
|
53
|
+
│ │ └────────────┘ │ │
|
|
54
|
+
│ │ │ │
|
|
55
|
+
│ └─────────────────────────────────────────────────────────────┘ │
|
|
56
|
+
│ │
|
|
57
|
+
└─────────────────────────────────────────────────────────────────────┘
|
|
58
|
+
|
|
59
|
+
┌──────────────────┐
|
|
60
|
+
│ STATE FILE │
|
|
61
|
+
│ (last_reflection │
|
|
62
|
+
│ timestamp) │
|
|
63
|
+
└──────────────────┘
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## How It Works
|
|
67
|
+
|
|
68
|
+
1. **Heartbeat triggers** → OpenClaw runs heartbeat every 60 minutes (08:00-22:00)
|
|
69
|
+
2. **Agent reads HEARTBEAT.md** → Sees instruction to run `self-reflection check`
|
|
70
|
+
3. **Skill checks timer** → Compares current time with last reflection
|
|
71
|
+
4. **If ALERT** → Agent reviews past lessons and logs new insights
|
|
72
|
+
5. **Memory persists** → Lessons stored in markdown for future reference
|
|
73
|
+
|
|
74
|
+
## Quick Start
|
|
75
|
+
|
|
76
|
+
### Installation
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
# Clone the skill
|
|
80
|
+
git clone https://github.com/hopyky/self-reflection.git ~/.openclaw/skills/self-reflection
|
|
81
|
+
|
|
82
|
+
# Add to PATH
|
|
83
|
+
ln -sf ~/.openclaw/skills/self-reflection/bin/self-reflection ~/bin/self-reflection
|
|
84
|
+
|
|
85
|
+
# Create config
|
|
86
|
+
cp ~/.openclaw/skills/self-reflection/self-reflection.example.json ~/.openclaw/self-reflection.json
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### OpenClaw Integration
|
|
90
|
+
|
|
91
|
+
Add heartbeat to your `~/.openclaw/openclaw.json`:
|
|
92
|
+
|
|
93
|
+
```json
|
|
94
|
+
{
|
|
95
|
+
"agents": {
|
|
96
|
+
"defaults": {
|
|
97
|
+
"heartbeat": {
|
|
98
|
+
"every": "60m",
|
|
99
|
+
"activeHours": {
|
|
100
|
+
"start": "08:00",
|
|
101
|
+
"end": "22:00"
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Add to your `HEARTBEAT.md`:
|
|
110
|
+
|
|
111
|
+
```markdown
|
|
112
|
+
## Self-Reflection Check (required)
|
|
113
|
+
|
|
114
|
+
Run `self-reflection check` at each heartbeat.
|
|
115
|
+
|
|
116
|
+
- If **OK**: Continue normally.
|
|
117
|
+
- If **ALERT**: Run `self-reflection read`, reflect, then `self-reflection log`.
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Commands
|
|
121
|
+
|
|
122
|
+
| Command | Description |
|
|
123
|
+
|---------|-------------|
|
|
124
|
+
| `self-reflection check` | Check if reflection is due (OK or ALERT) |
|
|
125
|
+
| `self-reflection check --quiet` | Silent mode for scripts |
|
|
126
|
+
| `self-reflection log <tag> <miss> <fix>` | Log a new reflection |
|
|
127
|
+
| `self-reflection read [n]` | Read last n reflections (default: 5) |
|
|
128
|
+
| `self-reflection stats` | Show statistics and top tags |
|
|
129
|
+
| `self-reflection reset` | Reset the timer |
|
|
130
|
+
|
|
131
|
+
## Usage Examples
|
|
132
|
+
|
|
133
|
+
### Check Status
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
$ self-reflection check
|
|
137
|
+
OK: Status good. Next reflection due in 45 minutes.
|
|
138
|
+
|
|
139
|
+
# When reflection is needed:
|
|
140
|
+
$ self-reflection check
|
|
141
|
+
ALERT: Self-reflection required. Last reflection was 65 minutes ago.
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### Log a Reflection
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
$ self-reflection log "error-handling" \
|
|
148
|
+
"Forgot to handle API timeout" \
|
|
149
|
+
"Always add timeout parameter to requests"
|
|
150
|
+
|
|
151
|
+
Reflection logged successfully.
|
|
152
|
+
Tag: error-handling
|
|
153
|
+
Miss: Forgot to handle API timeout
|
|
154
|
+
Fix: Always add timeout parameter to requests
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### Read Past Lessons
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
$ self-reflection read 3
|
|
161
|
+
=== Last 3 reflections (of 12 total) ===
|
|
162
|
+
|
|
163
|
+
## 2026-01-30 14:30 | error-handling
|
|
164
|
+
|
|
165
|
+
**Miss:** Forgot to handle API timeout
|
|
166
|
+
**Fix:** Always add timeout parameter to requests
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## 2026-01-30 10:15 | communication
|
|
171
|
+
|
|
172
|
+
**Miss:** Response was too verbose
|
|
173
|
+
**Fix:** Lead with the answer, then explain
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
### View Statistics
|
|
179
|
+
|
|
180
|
+
```bash
|
|
181
|
+
$ self-reflection stats
|
|
182
|
+
=== Self-Reflection Statistics ===
|
|
183
|
+
|
|
184
|
+
Last reflection: 2026-01-30 14:30:00
|
|
185
|
+
Total reflections: 12
|
|
186
|
+
|
|
187
|
+
Entries in memory: 12
|
|
188
|
+
|
|
189
|
+
Top tags:
|
|
190
|
+
error-handling: 4
|
|
191
|
+
communication: 3
|
|
192
|
+
api: 2
|
|
193
|
+
|
|
194
|
+
Threshold: 60 minutes
|
|
195
|
+
Memory file: ~/workspace/memory/self-review.md
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
## Configuration
|
|
199
|
+
|
|
200
|
+
Create `~/.openclaw/self-reflection.json`:
|
|
201
|
+
|
|
202
|
+
```json
|
|
203
|
+
{
|
|
204
|
+
"threshold_minutes": 60,
|
|
205
|
+
"memory_file": "~/workspace/memory/self-review.md",
|
|
206
|
+
"state_file": "~/.openclaw/self-review-state.json",
|
|
207
|
+
"max_entries_context": 5
|
|
208
|
+
}
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
| Option | Default | Description |
|
|
212
|
+
|--------|---------|-------------|
|
|
213
|
+
| `threshold_minutes` | 60 | Minutes between required reflections |
|
|
214
|
+
| `memory_file` | `~/workspace/memory/self-review.md` | Where reflections are stored |
|
|
215
|
+
| `state_file` | `~/.openclaw/self-review-state.json` | Timer state file |
|
|
216
|
+
| `max_entries_context` | 5 | Default entries shown by `read` |
|
|
217
|
+
|
|
218
|
+
## Memory Format
|
|
219
|
+
|
|
220
|
+
Reflections are stored in human-readable Markdown:
|
|
221
|
+
|
|
222
|
+
```markdown
|
|
223
|
+
# Self-Review Log
|
|
224
|
+
|
|
225
|
+
This file contains lessons learned and improvements for continuous growth.
|
|
226
|
+
|
|
227
|
+
---
|
|
228
|
+
|
|
229
|
+
## 2026-01-30 14:30 | error-handling
|
|
230
|
+
|
|
231
|
+
**Miss:** Forgot to handle API timeout
|
|
232
|
+
**Fix:** Always add timeout parameter to requests
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
## 2026-01-30 10:15 | communication
|
|
237
|
+
|
|
238
|
+
**Miss:** Response was too verbose
|
|
239
|
+
**Fix:** Lead with the answer, then explain
|
|
240
|
+
|
|
241
|
+
---
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
## Recommended Tags
|
|
245
|
+
|
|
246
|
+
| Tag | Use for |
|
|
247
|
+
|-----|---------|
|
|
248
|
+
| `error-handling` | Missing try/catch, unhandled edge cases |
|
|
249
|
+
| `communication` | Verbose responses, unclear explanations |
|
|
250
|
+
| `api` | API usage mistakes, wrong endpoints |
|
|
251
|
+
| `performance` | Slow code, inefficient algorithms |
|
|
252
|
+
| `ux` | Poor user experience decisions |
|
|
253
|
+
| `security` | Security oversights |
|
|
254
|
+
| `testing` | Missing tests, untested edge cases |
|
|
255
|
+
|
|
256
|
+
## File Structure
|
|
257
|
+
|
|
258
|
+
```
|
|
259
|
+
~/.openclaw/
|
|
260
|
+
├── skills/
|
|
261
|
+
│ └── self-reflection/
|
|
262
|
+
│ ├── bin/
|
|
263
|
+
│ │ └── self-reflection # CLI script
|
|
264
|
+
│ ├── README.md
|
|
265
|
+
│ ├── SKILL.md # OpenClaw manifest
|
|
266
|
+
│ ├── LICENSE
|
|
267
|
+
│ └── self-reflection.example.json
|
|
268
|
+
├── self-reflection.json # Your config
|
|
269
|
+
└── self-review-state.json # Timer state (auto-created)
|
|
270
|
+
|
|
271
|
+
~/workspace/
|
|
272
|
+
└── memory/
|
|
273
|
+
└── self-review.md # Lessons (auto-created)
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
## Dependencies
|
|
277
|
+
|
|
278
|
+
- `bash` (4.0+)
|
|
279
|
+
- `jq` (JSON processing)
|
|
280
|
+
- `date` (GNU coreutils)
|
|
281
|
+
|
|
282
|
+
## License
|
|
283
|
+
|
|
284
|
+
MIT License - See [LICENSE](LICENSE) for details.
|
|
285
|
+
|
|
286
|
+
## Author
|
|
287
|
+
|
|
288
|
+
Created by [hopyky](https://github.com/hopyky)
|
|
289
|
+
|
|
290
|
+
## Contributing
|
|
291
|
+
|
|
292
|
+
Issues and PRs welcome at [github.com/hopyky/self-reflection](https://github.com/hopyky/self-reflection)
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: self-reflection
|
|
3
|
+
description: "Tracks agent mistakes, lessons learned, and improvements via heartbeat-triggered reflections. Use when the agent needs to review past errors, log new lessons, or check if a reflection cycle is due."
|
|
4
|
+
version: 1.1.1
|
|
5
|
+
triggers:
|
|
6
|
+
- "reflect on mistakes"
|
|
7
|
+
- "self-reflection check"
|
|
8
|
+
- "review lessons learned"
|
|
9
|
+
- "what did I learn from that"
|
|
10
|
+
- "log a lesson"
|
|
11
|
+
negative_triggers:
|
|
12
|
+
- "remember this for later"
|
|
13
|
+
- "search my memories"
|
|
14
|
+
- "store a memory"
|
|
15
|
+
- "agent action plan"
|
|
16
|
+
metadata: {"openclaw":{"emoji":"🪞","requires":{"bins":["jq","date"]}}}
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# 🪞 Self-Reflection
|
|
20
|
+
|
|
21
|
+
A skill for continuous self-improvement. The agent tracks mistakes, lessons learned, and improvements over time through regular heartbeat-triggered reflections.
|
|
22
|
+
|
|
23
|
+
## Quick Start
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# Check if reflection is needed
|
|
27
|
+
self-reflection check
|
|
28
|
+
|
|
29
|
+
# Log a new reflection
|
|
30
|
+
self-reflection log "error-handling" "Forgot timeout on API call" "Always add timeout=30"
|
|
31
|
+
|
|
32
|
+
# Read recent lessons
|
|
33
|
+
self-reflection read
|
|
34
|
+
|
|
35
|
+
# View statistics
|
|
36
|
+
self-reflection stats
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## How It Works
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
Heartbeat (60m) → Agent reads HEARTBEAT.md → Runs self-reflection check
|
|
43
|
+
│
|
|
44
|
+
┌─────────┴─────────┐
|
|
45
|
+
▼ ▼
|
|
46
|
+
OK ALERT
|
|
47
|
+
│ │
|
|
48
|
+
Continue Reflect
|
|
49
|
+
│
|
|
50
|
+
┌─────────┴─────────┐
|
|
51
|
+
▼ ▼
|
|
52
|
+
read log
|
|
53
|
+
(past lessons) (new insights)
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Commands
|
|
57
|
+
|
|
58
|
+
| Command | Description |
|
|
59
|
+
|---------|-------------|
|
|
60
|
+
| `check [--quiet]` | Check if reflection is due (OK or ALERT) |
|
|
61
|
+
| `log <tag> <miss> <fix>` | Log a new reflection |
|
|
62
|
+
| `read [n]` | Read last n reflections (default: 5) |
|
|
63
|
+
| `stats` | Show reflection statistics |
|
|
64
|
+
| `reset` | Reset the timer |
|
|
65
|
+
|
|
66
|
+
## OpenClaw Integration
|
|
67
|
+
|
|
68
|
+
Enable heartbeat in `~/.openclaw/openclaw.json`:
|
|
69
|
+
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"agents": {
|
|
73
|
+
"defaults": {
|
|
74
|
+
"heartbeat": {
|
|
75
|
+
"every": "60m",
|
|
76
|
+
"activeHours": { "start": "08:00", "end": "22:00" }
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Add to your workspace `HEARTBEAT.md`:
|
|
84
|
+
|
|
85
|
+
```markdown
|
|
86
|
+
## Self-Reflection Check (required)
|
|
87
|
+
Run `self-reflection check` at each heartbeat.
|
|
88
|
+
If ALERT: read past lessons, reflect, then log insights.
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Configuration
|
|
92
|
+
|
|
93
|
+
Create `~/.openclaw/self-reflection.json`:
|
|
94
|
+
|
|
95
|
+
```json
|
|
96
|
+
{
|
|
97
|
+
"threshold_minutes": 60,
|
|
98
|
+
"memory_file": "~/workspace/memory/self-review.md",
|
|
99
|
+
"state_file": "~/.openclaw/self-review-state.json",
|
|
100
|
+
"max_entries_context": 5
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Author
|
|
105
|
+
|
|
106
|
+
Created by [hopyky](https://github.com/hopyky)
|
|
107
|
+
|
|
108
|
+
## License
|
|
109
|
+
|
|
110
|
+
MIT
|