profclaw 0.0.1-beta.1
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/.env.example +215 -0
- package/CHANGELOG.md +49 -0
- package/CONTRIBUTING.md +119 -0
- package/Dockerfile +107 -0
- package/LICENSE +661 -0
- package/README.md +196 -0
- package/config/agents.yml +55 -0
- package/config/budget.yml +15 -0
- package/config/pricing.yml +46 -0
- package/config/settings.yml +168 -0
- package/dist/adapters/claude-code.d.ts +46 -0
- package/dist/adapters/claude-code.js +215 -0
- package/dist/adapters/index.d.ts +4 -0
- package/dist/adapters/index.js +4 -0
- package/dist/adapters/ollama.d.ts +45 -0
- package/dist/adapters/ollama.js +277 -0
- package/dist/adapters/openclaw.d.ts +60 -0
- package/dist/adapters/openclaw.js +289 -0
- package/dist/adapters/registry.d.ts +56 -0
- package/dist/adapters/registry.js +163 -0
- package/dist/agents/executor.d.ts +78 -0
- package/dist/agents/executor.js +657 -0
- package/dist/agents/index.d.ts +10 -0
- package/dist/agents/index.js +27 -0
- package/dist/agents/stop-conditions.d.ts +108 -0
- package/dist/agents/stop-conditions.js +299 -0
- package/dist/agents/types.d.ts +185 -0
- package/dist/agents/types.js +14 -0
- package/dist/ai/embedding-service.d.ts +96 -0
- package/dist/ai/embedding-service.js +333 -0
- package/dist/auth/api-tokens.d.ts +71 -0
- package/dist/auth/api-tokens.js +235 -0
- package/dist/auth/auth-service.d.ts +75 -0
- package/dist/auth/auth-service.js +557 -0
- package/dist/auth/device-identity.d.ts +96 -0
- package/dist/auth/device-identity.js +250 -0
- package/dist/auth/github-oauth.d.ts +20 -0
- package/dist/auth/github-oauth.js +59 -0
- package/dist/auth/jira-oauth.d.ts +25 -0
- package/dist/auth/jira-oauth.js +75 -0
- package/dist/auth/linear-oauth.d.ts +21 -0
- package/dist/auth/linear-oauth.js +59 -0
- package/dist/auth/middleware.d.ts +44 -0
- package/dist/auth/middleware.js +190 -0
- package/dist/auth/pairing-codes.d.ts +109 -0
- package/dist/auth/pairing-codes.js +274 -0
- package/dist/auth/password.d.ts +53 -0
- package/dist/auth/password.js +126 -0
- package/dist/auth/qr-pairing.d.ts +36 -0
- package/dist/auth/qr-pairing.js +138 -0
- package/dist/auth/slack-oauth.d.ts +31 -0
- package/dist/auth/slack-oauth.js +80 -0
- package/dist/backup/index.d.ts +50 -0
- package/dist/backup/index.js +184 -0
- package/dist/browser/adapters.d.ts +25 -0
- package/dist/browser/adapters.js +32 -0
- package/dist/browser/cli.d.ts +19 -0
- package/dist/browser/cli.js +277 -0
- package/dist/browser/compression.d.ts +32 -0
- package/dist/browser/compression.js +269 -0
- package/dist/browser/extensions.d.ts +144 -0
- package/dist/browser/extensions.js +251 -0
- package/dist/browser/index.d.ts +37 -0
- package/dist/browser/index.js +43 -0
- package/dist/browser/refs.d.ts +46 -0
- package/dist/browser/refs.js +120 -0
- package/dist/browser/search.d.ts +36 -0
- package/dist/browser/search.js +193 -0
- package/dist/browser/service.d.ts +94 -0
- package/dist/browser/service.js +358 -0
- package/dist/browser/snapshot.d.ts +19 -0
- package/dist/browser/snapshot.js +250 -0
- package/dist/browser/tools.d.ts +259 -0
- package/dist/browser/tools.js +463 -0
- package/dist/browser/types.d.ts +134 -0
- package/dist/browser/types.js +17 -0
- package/dist/chat/agentic-executor.d.ts +108 -0
- package/dist/chat/agentic-executor.js +739 -0
- package/dist/chat/api-key-detector.d.ts +41 -0
- package/dist/chat/api-key-detector.js +290 -0
- package/dist/chat/auto-reply.d.ts +90 -0
- package/dist/chat/auto-reply.js +272 -0
- package/dist/chat/conversations.d.ts +91 -0
- package/dist/chat/conversations.js +297 -0
- package/dist/chat/execution/audit.d.ts +192 -0
- package/dist/chat/execution/audit.js +323 -0
- package/dist/chat/execution/executor.d.ts +56 -0
- package/dist/chat/execution/executor.js +654 -0
- package/dist/chat/execution/guardrails.d.ts +98 -0
- package/dist/chat/execution/guardrails.js +571 -0
- package/dist/chat/execution/index.d.ts +61 -0
- package/dist/chat/execution/index.js +129 -0
- package/dist/chat/execution/model-capability.d.ts +34 -0
- package/dist/chat/execution/model-capability.js +96 -0
- package/dist/chat/execution/process-pool.d.ts +110 -0
- package/dist/chat/execution/process-pool.js +290 -0
- package/dist/chat/execution/pty.d.ts +92 -0
- package/dist/chat/execution/pty.js +285 -0
- package/dist/chat/execution/rate-limiter.d.ts +87 -0
- package/dist/chat/execution/rate-limiter.js +305 -0
- package/dist/chat/execution/registry.d.ts +54 -0
- package/dist/chat/execution/registry.js +220 -0
- package/dist/chat/execution/sandbox.d.ts +109 -0
- package/dist/chat/execution/sandbox.js +684 -0
- package/dist/chat/execution/secrets.d.ts +45 -0
- package/dist/chat/execution/secrets.js +338 -0
- package/dist/chat/execution/security.d.ts +179 -0
- package/dist/chat/execution/security.js +739 -0
- package/dist/chat/execution/self-correction.d.ts +162 -0
- package/dist/chat/execution/self-correction.js +557 -0
- package/dist/chat/execution/session-manager.d.ts +79 -0
- package/dist/chat/execution/session-manager.js +356 -0
- package/dist/chat/execution/session-spawn/config.d.ts +37 -0
- package/dist/chat/execution/session-spawn/config.js +83 -0
- package/dist/chat/execution/session-spawn/index.d.ts +10 -0
- package/dist/chat/execution/session-spawn/index.js +10 -0
- package/dist/chat/execution/session-spawn/manager.d.ts +35 -0
- package/dist/chat/execution/session-spawn/manager.js +418 -0
- package/dist/chat/execution/session-spawn/types.d.ts +117 -0
- package/dist/chat/execution/session-spawn/types.js +16 -0
- package/dist/chat/execution/smart-prompts.d.ts +34 -0
- package/dist/chat/execution/smart-prompts.js +151 -0
- package/dist/chat/execution/stream-results.d.ts +65 -0
- package/dist/chat/execution/stream-results.js +156 -0
- package/dist/chat/execution/tool-router.d.ts +76 -0
- package/dist/chat/execution/tool-router.js +296 -0
- package/dist/chat/execution/tools/agents-list.d.ts +49 -0
- package/dist/chat/execution/tools/agents-list.js +165 -0
- package/dist/chat/execution/tools/browser.d.ts +12 -0
- package/dist/chat/execution/tools/browser.js +14 -0
- package/dist/chat/execution/tools/canvas.d.ts +61 -0
- package/dist/chat/execution/tools/canvas.js +150 -0
- package/dist/chat/execution/tools/complete-task.d.ts +72 -0
- package/dist/chat/execution/tools/complete-task.js +104 -0
- package/dist/chat/execution/tools/cron-tool.d.ts +204 -0
- package/dist/chat/execution/tools/cron-tool.js +680 -0
- package/dist/chat/execution/tools/discord-actions.d.ts +120 -0
- package/dist/chat/execution/tools/discord-actions.js +361 -0
- package/dist/chat/execution/tools/exec.d.ts +43 -0
- package/dist/chat/execution/tools/exec.js +223 -0
- package/dist/chat/execution/tools/file-ops.d.ts +175 -0
- package/dist/chat/execution/tools/file-ops.js +723 -0
- package/dist/chat/execution/tools/git.d.ts +143 -0
- package/dist/chat/execution/tools/git.js +395 -0
- package/dist/chat/execution/tools/github.d.ts +42 -0
- package/dist/chat/execution/tools/github.js +184 -0
- package/dist/chat/execution/tools/glinr-ops.d.ts +202 -0
- package/dist/chat/execution/tools/glinr-ops.js +694 -0
- package/dist/chat/execution/tools/image-analyze.d.ts +29 -0
- package/dist/chat/execution/tools/image-analyze.js +127 -0
- package/dist/chat/execution/tools/index.d.ts +64 -0
- package/dist/chat/execution/tools/index.js +245 -0
- package/dist/chat/execution/tools/integrations.d.ts +109 -0
- package/dist/chat/execution/tools/integrations.js +237 -0
- package/dist/chat/execution/tools/link-understand.d.ts +34 -0
- package/dist/chat/execution/tools/link-understand.js +307 -0
- package/dist/chat/execution/tools/maintenance.d.ts +29 -0
- package/dist/chat/execution/tools/maintenance.js +105 -0
- package/dist/chat/execution/tools/memory-tools.d.ts +76 -0
- package/dist/chat/execution/tools/memory-tools.js +278 -0
- package/dist/chat/execution/tools/openai-image-gen.d.ts +51 -0
- package/dist/chat/execution/tools/openai-image-gen.js +212 -0
- package/dist/chat/execution/tools/profclaw-ops.d.ts +204 -0
- package/dist/chat/execution/tools/profclaw-ops.js +665 -0
- package/dist/chat/execution/tools/session-spawn.d.ts +146 -0
- package/dist/chat/execution/tools/session-spawn.js +544 -0
- package/dist/chat/execution/tools/session-status.d.ts +38 -0
- package/dist/chat/execution/tools/session-status.js +185 -0
- package/dist/chat/execution/tools/sessions-list.d.ts +49 -0
- package/dist/chat/execution/tools/sessions-list.js +153 -0
- package/dist/chat/execution/tools/sessions-send.d.ts +48 -0
- package/dist/chat/execution/tools/sessions-send.js +207 -0
- package/dist/chat/execution/tools/sessions-spawn.d.ts +51 -0
- package/dist/chat/execution/tools/sessions-spawn.js +137 -0
- package/dist/chat/execution/tools/slack-actions.d.ts +90 -0
- package/dist/chat/execution/tools/slack-actions.js +272 -0
- package/dist/chat/execution/tools/subagent-orchestrate.d.ts +66 -0
- package/dist/chat/execution/tools/subagent-orchestrate.js +313 -0
- package/dist/chat/execution/tools/system.d.ts +121 -0
- package/dist/chat/execution/tools/system.js +415 -0
- package/dist/chat/execution/tools/telegram-actions.d.ts +126 -0
- package/dist/chat/execution/tools/telegram-actions.js +339 -0
- package/dist/chat/execution/tools/test-run.d.ts +43 -0
- package/dist/chat/execution/tools/test-run.js +391 -0
- package/dist/chat/execution/tools/tts-speak.d.ts +39 -0
- package/dist/chat/execution/tools/tts-speak.js +199 -0
- package/dist/chat/execution/tools/web-fetch.d.ts +42 -0
- package/dist/chat/execution/tools/web-fetch.js +247 -0
- package/dist/chat/execution/tools/web-search.d.ts +53 -0
- package/dist/chat/execution/tools/web-search.js +130 -0
- package/dist/chat/execution/types.d.ts +337 -0
- package/dist/chat/execution/types.js +8 -0
- package/dist/chat/execution/workflows/built-in.d.ts +10 -0
- package/dist/chat/execution/workflows/built-in.js +249 -0
- package/dist/chat/execution/workflows/executor.d.ts +13 -0
- package/dist/chat/execution/workflows/executor.js +259 -0
- package/dist/chat/execution/workflows/index.d.ts +5 -0
- package/dist/chat/execution/workflows/index.js +5 -0
- package/dist/chat/execution/workflows/trigger.d.ts +15 -0
- package/dist/chat/execution/workflows/trigger.js +111 -0
- package/dist/chat/execution/workflows/types.d.ts +80 -0
- package/dist/chat/execution/workflows/types.js +2 -0
- package/dist/chat/failover/error.d.ts +73 -0
- package/dist/chat/failover/error.js +412 -0
- package/dist/chat/failover/index.d.ts +10 -0
- package/dist/chat/failover/index.js +11 -0
- package/dist/chat/failover/model-fallback.d.ts +97 -0
- package/dist/chat/failover/model-fallback.js +328 -0
- package/dist/chat/failover/types.d.ts +47 -0
- package/dist/chat/failover/types.js +8 -0
- package/dist/chat/format/chunk.d.ts +59 -0
- package/dist/chat/format/chunk.js +253 -0
- package/dist/chat/format/index.d.ts +7 -0
- package/dist/chat/format/index.js +7 -0
- package/dist/chat/format/tool-result-formatter.d.ts +30 -0
- package/dist/chat/format/tool-result-formatter.js +177 -0
- package/dist/chat/group.d.ts +232 -0
- package/dist/chat/group.js +311 -0
- package/dist/chat/index.d.ts +21 -0
- package/dist/chat/index.js +30 -0
- package/dist/chat/memory.d.ts +108 -0
- package/dist/chat/memory.js +343 -0
- package/dist/chat/message-handler.d.ts +38 -0
- package/dist/chat/message-handler.js +274 -0
- package/dist/chat/proactive/index.d.ts +167 -0
- package/dist/chat/proactive/index.js +721 -0
- package/dist/chat/prompt-adapter.d.ts +52 -0
- package/dist/chat/prompt-adapter.js +245 -0
- package/dist/chat/providers/dingtalk/index.d.ts +69 -0
- package/dist/chat/providers/dingtalk/index.js +225 -0
- package/dist/chat/providers/discord/index.d.ts +264 -0
- package/dist/chat/providers/discord/index.js +657 -0
- package/dist/chat/providers/feishu/index.d.ts +97 -0
- package/dist/chat/providers/feishu/index.js +362 -0
- package/dist/chat/providers/googlechat/index.d.ts +269 -0
- package/dist/chat/providers/googlechat/index.js +634 -0
- package/dist/chat/providers/imessage/index.d.ts +61 -0
- package/dist/chat/providers/imessage/index.js +166 -0
- package/dist/chat/providers/index.d.ts +76 -0
- package/dist/chat/providers/index.js +430 -0
- package/dist/chat/providers/irc/index.d.ts +101 -0
- package/dist/chat/providers/irc/index.js +557 -0
- package/dist/chat/providers/line/index.d.ts +113 -0
- package/dist/chat/providers/line/index.js +434 -0
- package/dist/chat/providers/matrix/index.d.ts +161 -0
- package/dist/chat/providers/matrix/index.js +559 -0
- package/dist/chat/providers/mattermost/index.d.ts +106 -0
- package/dist/chat/providers/mattermost/index.js +425 -0
- package/dist/chat/providers/msteams/index.d.ts +198 -0
- package/dist/chat/providers/msteams/index.js +694 -0
- package/dist/chat/providers/nextcloud/index.d.ts +52 -0
- package/dist/chat/providers/nextcloud/index.js +156 -0
- package/dist/chat/providers/nostr/index.d.ts +60 -0
- package/dist/chat/providers/nostr/index.js +200 -0
- package/dist/chat/providers/qq/index.d.ts +57 -0
- package/dist/chat/providers/qq/index.js +260 -0
- package/dist/chat/providers/registry.d.ts +89 -0
- package/dist/chat/providers/registry.js +213 -0
- package/dist/chat/providers/signal/index.d.ts +88 -0
- package/dist/chat/providers/signal/index.js +357 -0
- package/dist/chat/providers/slack/index.d.ts +52 -0
- package/dist/chat/providers/slack/index.js +477 -0
- package/dist/chat/providers/synology/index.d.ts +50 -0
- package/dist/chat/providers/synology/index.js +138 -0
- package/dist/chat/providers/telegram/index.d.ts +148 -0
- package/dist/chat/providers/telegram/index.js +492 -0
- package/dist/chat/providers/tlon/index.d.ts +44 -0
- package/dist/chat/providers/tlon/index.js +243 -0
- package/dist/chat/providers/twitch/index.d.ts +79 -0
- package/dist/chat/providers/twitch/index.js +349 -0
- package/dist/chat/providers/types.d.ts +437 -0
- package/dist/chat/providers/types.js +14 -0
- package/dist/chat/providers/webchat/index.d.ts +38 -0
- package/dist/chat/providers/webchat/index.js +214 -0
- package/dist/chat/providers/wecom/index.d.ts +62 -0
- package/dist/chat/providers/wecom/index.js +228 -0
- package/dist/chat/providers/whatsapp/index.d.ts +147 -0
- package/dist/chat/providers/whatsapp/index.js +396 -0
- package/dist/chat/providers/zalo/index.d.ts +54 -0
- package/dist/chat/providers/zalo/index.js +158 -0
- package/dist/chat/providers/zalo-personal/index.d.ts +53 -0
- package/dist/chat/providers/zalo-personal/index.js +212 -0
- package/dist/chat/skills.d.ts +82 -0
- package/dist/chat/skills.js +410 -0
- package/dist/chat/system-prompts.d.ts +76 -0
- package/dist/chat/system-prompts.js +407 -0
- package/dist/chat/tool-handler.d.ts +57 -0
- package/dist/chat/tool-handler.js +336 -0
- package/dist/chat/tools.d.ts +373 -0
- package/dist/chat/tools.js +512 -0
- package/dist/cli/commands/agent.d.ts +3 -0
- package/dist/cli/commands/agent.js +108 -0
- package/dist/cli/commands/auth.d.ts +12 -0
- package/dist/cli/commands/auth.js +301 -0
- package/dist/cli/commands/browser.d.ts +3 -0
- package/dist/cli/commands/browser.js +138 -0
- package/dist/cli/commands/canvas.d.ts +3 -0
- package/dist/cli/commands/canvas.js +155 -0
- package/dist/cli/commands/channels.d.ts +3 -0
- package/dist/cli/commands/channels.js +167 -0
- package/dist/cli/commands/chat.d.ts +9 -0
- package/dist/cli/commands/chat.js +360 -0
- package/dist/cli/commands/completion.d.ts +3 -0
- package/dist/cli/commands/completion.js +170 -0
- package/dist/cli/commands/config.d.ts +3 -0
- package/dist/cli/commands/config.js +193 -0
- package/dist/cli/commands/cost.d.ts +3 -0
- package/dist/cli/commands/cost.js +134 -0
- package/dist/cli/commands/daemon.d.ts +3 -0
- package/dist/cli/commands/daemon.js +381 -0
- package/dist/cli/commands/devices.d.ts +3 -0
- package/dist/cli/commands/devices.js +150 -0
- package/dist/cli/commands/doctor.d.ts +3 -0
- package/dist/cli/commands/doctor.js +295 -0
- package/dist/cli/commands/logs.d.ts +3 -0
- package/dist/cli/commands/logs.js +139 -0
- package/dist/cli/commands/mcp.d.ts +15 -0
- package/dist/cli/commands/mcp.js +157 -0
- package/dist/cli/commands/memory.d.ts +3 -0
- package/dist/cli/commands/memory.js +170 -0
- package/dist/cli/commands/models.d.ts +3 -0
- package/dist/cli/commands/models.js +197 -0
- package/dist/cli/commands/nodes.d.ts +3 -0
- package/dist/cli/commands/nodes.js +193 -0
- package/dist/cli/commands/onboard.d.ts +13 -0
- package/dist/cli/commands/onboard.js +360 -0
- package/dist/cli/commands/plugin.d.ts +15 -0
- package/dist/cli/commands/plugin.js +226 -0
- package/dist/cli/commands/provider.d.ts +16 -0
- package/dist/cli/commands/provider.js +320 -0
- package/dist/cli/commands/security.d.ts +3 -0
- package/dist/cli/commands/security.js +180 -0
- package/dist/cli/commands/serve.d.ts +3 -0
- package/dist/cli/commands/serve.js +179 -0
- package/dist/cli/commands/session.d.ts +3 -0
- package/dist/cli/commands/session.js +172 -0
- package/dist/cli/commands/setup.d.ts +13 -0
- package/dist/cli/commands/setup.js +636 -0
- package/dist/cli/commands/skill.d.ts +15 -0
- package/dist/cli/commands/skill.js +191 -0
- package/dist/cli/commands/status.d.ts +3 -0
- package/dist/cli/commands/status.js +71 -0
- package/dist/cli/commands/summary.d.ts +3 -0
- package/dist/cli/commands/summary.js +160 -0
- package/dist/cli/commands/task.d.ts +3 -0
- package/dist/cli/commands/task.js +170 -0
- package/dist/cli/commands/ticket.d.ts +3 -0
- package/dist/cli/commands/ticket.js +421 -0
- package/dist/cli/commands/tools.d.ts +9 -0
- package/dist/cli/commands/tools.js +508 -0
- package/dist/cli/commands/tui.d.ts +3 -0
- package/dist/cli/commands/tui.js +158 -0
- package/dist/cli/commands/tunnel.d.ts +3 -0
- package/dist/cli/commands/tunnel.js +135 -0
- package/dist/cli/commands/webhooks.d.ts +3 -0
- package/dist/cli/commands/webhooks.js +191 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.js +127 -0
- package/dist/cli/utils/api.d.ts +17 -0
- package/dist/cli/utils/api.js +63 -0
- package/dist/cli/utils/config.d.ts +31 -0
- package/dist/cli/utils/config.js +81 -0
- package/dist/cli/utils/output.d.ts +58 -0
- package/dist/cli/utils/output.js +148 -0
- package/dist/core/deployment.d.ts +30 -0
- package/dist/core/deployment.js +114 -0
- package/dist/core/sandbox-config.d.ts +63 -0
- package/dist/core/sandbox-config.js +148 -0
- package/dist/costs/budget.d.ts +28 -0
- package/dist/costs/budget.js +57 -0
- package/dist/costs/persistence.d.ts +77 -0
- package/dist/costs/persistence.js +210 -0
- package/dist/costs/pricing.d.ts +16 -0
- package/dist/costs/pricing.js +39 -0
- package/dist/costs/token-tracker.d.ts +34 -0
- package/dist/costs/token-tracker.js +141 -0
- package/dist/cron/heartbeat.d.ts +23 -0
- package/dist/cron/heartbeat.js +109 -0
- package/dist/cron/index.d.ts +22 -0
- package/dist/cron/index.js +37 -0
- package/dist/cron/issue-poller.d.ts +15 -0
- package/dist/cron/issue-poller.js +174 -0
- package/dist/cron/scheduler.d.ts +315 -0
- package/dist/cron/scheduler.js +1008 -0
- package/dist/cron/stale-checker.d.ts +16 -0
- package/dist/cron/stale-checker.js +61 -0
- package/dist/cron/templates.d.ts +107 -0
- package/dist/cron/templates.js +395 -0
- package/dist/diagnostics/exporters.d.ts +21 -0
- package/dist/diagnostics/exporters.js +138 -0
- package/dist/diagnostics/index.d.ts +10 -0
- package/dist/diagnostics/index.js +9 -0
- package/dist/diagnostics/middleware.d.ts +12 -0
- package/dist/diagnostics/middleware.js +58 -0
- package/dist/diagnostics/tracer.d.ts +133 -0
- package/dist/diagnostics/tracer.js +257 -0
- package/dist/discovery/index.d.ts +8 -0
- package/dist/discovery/index.js +7 -0
- package/dist/discovery/mdns.d.ts +40 -0
- package/dist/discovery/mdns.js +249 -0
- package/dist/gateway/index.d.ts +35 -0
- package/dist/gateway/index.js +36 -0
- package/dist/gateway/router.d.ts +110 -0
- package/dist/gateway/router.js +649 -0
- package/dist/gateway/types.d.ts +275 -0
- package/dist/gateway/types.js +2 -0
- package/dist/gateway/workflows.d.ts +37 -0
- package/dist/gateway/workflows.js +748 -0
- package/dist/hooks/agent-webhook.d.ts +277 -0
- package/dist/hooks/agent-webhook.js +197 -0
- package/dist/hooks/index.d.ts +13 -0
- package/dist/hooks/index.js +15 -0
- package/dist/hooks/prompt-submit.d.ts +45 -0
- package/dist/hooks/prompt-submit.js +111 -0
- package/dist/hooks/schemas.d.ts +563 -0
- package/dist/hooks/schemas.js +108 -0
- package/dist/hooks/session-end.d.ts +25 -0
- package/dist/hooks/session-end.js +153 -0
- package/dist/hooks/tool-use.d.ts +41 -0
- package/dist/hooks/tool-use.js +201 -0
- package/dist/hooks/types.d.ts +76 -0
- package/dist/hooks/types.js +7 -0
- package/dist/integrations/cloudflare-tunnel.d.ts +78 -0
- package/dist/integrations/cloudflare-tunnel.js +268 -0
- package/dist/integrations/github-client.d.ts +27 -0
- package/dist/integrations/github-client.js +79 -0
- package/dist/integrations/github-projects.d.ts +97 -0
- package/dist/integrations/github-projects.js +433 -0
- package/dist/integrations/github-ticket-sync.d.ts +82 -0
- package/dist/integrations/github-ticket-sync.js +352 -0
- package/dist/integrations/github.d.ts +11 -0
- package/dist/integrations/github.js +241 -0
- package/dist/integrations/jira-client.d.ts +30 -0
- package/dist/integrations/jira-client.js +67 -0
- package/dist/integrations/jira.d.ts +13 -0
- package/dist/integrations/jira.js +108 -0
- package/dist/integrations/linear-client.d.ts +23 -0
- package/dist/integrations/linear-client.js +52 -0
- package/dist/integrations/linear.d.ts +15 -0
- package/dist/integrations/linear.js +312 -0
- package/dist/integrations/tailscale.d.ts +68 -0
- package/dist/integrations/tailscale.js +173 -0
- package/dist/integrations/web-search.d.ts +112 -0
- package/dist/integrations/web-search.js +287 -0
- package/dist/intelligence/index.d.ts +8 -0
- package/dist/intelligence/index.js +8 -0
- package/dist/intelligence/ollama.d.ts +50 -0
- package/dist/intelligence/ollama.js +213 -0
- package/dist/intelligence/rules.d.ts +39 -0
- package/dist/intelligence/rules.js +308 -0
- package/dist/labels/index.d.ts +93 -0
- package/dist/labels/index.js +248 -0
- package/dist/mcp/browser-tools.d.ts +10 -0
- package/dist/mcp/browser-tools.js +16 -0
- package/dist/mcp/client.d.ts +54 -0
- package/dist/mcp/client.js +153 -0
- package/dist/mcp/index.d.ts +12 -0
- package/dist/mcp/index.js +13 -0
- package/dist/mcp/server.d.ts +40 -0
- package/dist/mcp/server.js +826 -0
- package/dist/mcp/tool-adapter.d.ts +49 -0
- package/dist/mcp/tool-adapter.js +193 -0
- package/dist/memory/experience-store.d.ts +121 -0
- package/dist/memory/experience-store.js +439 -0
- package/dist/memory/index.d.ts +8 -0
- package/dist/memory/index.js +25 -0
- package/dist/memory/memory-service.d.ts +312 -0
- package/dist/memory/memory-service.js +1172 -0
- package/dist/memory/memory-watcher.d.ts +116 -0
- package/dist/memory/memory-watcher.js +239 -0
- package/dist/middleware/logging.d.ts +34 -0
- package/dist/middleware/logging.js +184 -0
- package/dist/middleware/rate-limit.d.ts +29 -0
- package/dist/middleware/rate-limit.js +91 -0
- package/dist/notifications/in-app.d.ts +28 -0
- package/dist/notifications/in-app.js +53 -0
- package/dist/notifications/index.d.ts +3 -0
- package/dist/notifications/index.js +3 -0
- package/dist/notifications/push.d.ts +74 -0
- package/dist/notifications/push.js +175 -0
- package/dist/notifications/slack.d.ts +32 -0
- package/dist/notifications/slack.js +157 -0
- package/dist/plugins/clawhub.d.ts +70 -0
- package/dist/plugins/clawhub.js +260 -0
- package/dist/plugins/loader.d.ts +23 -0
- package/dist/plugins/loader.js +140 -0
- package/dist/plugins/marketplace.d.ts +77 -0
- package/dist/plugins/marketplace.js +275 -0
- package/dist/plugins/registry.d.ts +122 -0
- package/dist/plugins/registry.js +352 -0
- package/dist/plugins/sandbox.d.ts +77 -0
- package/dist/plugins/sandbox.js +287 -0
- package/dist/plugins/scaffolder.d.ts +28 -0
- package/dist/plugins/scaffolder.js +409 -0
- package/dist/plugins/sdk.d.ts +35 -0
- package/dist/plugins/sdk.js +8 -0
- package/dist/plugins/search/brave.d.ts +9 -0
- package/dist/plugins/search/brave.js +157 -0
- package/dist/plugins/search/duckduckgo.d.ts +9 -0
- package/dist/plugins/search/duckduckgo.js +171 -0
- package/dist/plugins/search/index.d.ts +13 -0
- package/dist/plugins/search/index.js +23 -0
- package/dist/plugins/search/searxng.d.ts +9 -0
- package/dist/plugins/search/searxng.js +170 -0
- package/dist/plugins/search/serper.d.ts +9 -0
- package/dist/plugins/search/serper.js +135 -0
- package/dist/plugins/search/tavily.d.ts +9 -0
- package/dist/plugins/search/tavily.js +146 -0
- package/dist/plugins/types.d.ts +174 -0
- package/dist/plugins/types.js +8 -0
- package/dist/projects/index.d.ts +133 -0
- package/dist/projects/index.js +897 -0
- package/dist/projects/types.d.ts +444 -0
- package/dist/projects/types.js +207 -0
- package/dist/providers/adapters/anthropic.d.ts +26 -0
- package/dist/providers/adapters/anthropic.js +306 -0
- package/dist/providers/adapters/base.d.ts +53 -0
- package/dist/providers/adapters/base.js +99 -0
- package/dist/providers/adapters/ollama.d.ts +30 -0
- package/dist/providers/adapters/ollama.js +292 -0
- package/dist/providers/ai-sdk.d.ts +178 -0
- package/dist/providers/ai-sdk.js +1552 -0
- package/dist/providers/core/index.d.ts +8 -0
- package/dist/providers/core/index.js +10 -0
- package/dist/providers/core/models.d.ts +31 -0
- package/dist/providers/core/models.js +949 -0
- package/dist/providers/core/types.d.ts +117 -0
- package/dist/providers/core/types.js +83 -0
- package/dist/providers/index.d.ts +7 -0
- package/dist/providers/index.js +7 -0
- package/dist/providers/registry.d.ts +93 -0
- package/dist/providers/registry.js +228 -0
- package/dist/providers/schema-utils.d.ts +23 -0
- package/dist/providers/schema-utils.js +545 -0
- package/dist/providers/types.d.ts +609 -0
- package/dist/providers/types.js +279 -0
- package/dist/queue/failure-handler.d.ts +93 -0
- package/dist/queue/failure-handler.js +379 -0
- package/dist/queue/index.d.ts +23 -0
- package/dist/queue/index.js +86 -0
- package/dist/queue/memory-queue.d.ts +30 -0
- package/dist/queue/memory-queue.js +429 -0
- package/dist/queue/notifications.d.ts +6 -0
- package/dist/queue/notifications.js +128 -0
- package/dist/queue/task-queue.d.ts +55 -0
- package/dist/queue/task-queue.js +518 -0
- package/dist/queue/webhook-queue.d.ts +47 -0
- package/dist/queue/webhook-queue.js +158 -0
- package/dist/routes/agents.d.ts +4 -0
- package/dist/routes/agents.js +45 -0
- package/dist/routes/auth.d.ts +19 -0
- package/dist/routes/auth.js +492 -0
- package/dist/routes/backup.d.ts +6 -0
- package/dist/routes/backup.js +71 -0
- package/dist/routes/chat.d.ts +10 -0
- package/dist/routes/chat.js +1678 -0
- package/dist/routes/clawhub.d.ts +8 -0
- package/dist/routes/clawhub.js +89 -0
- package/dist/routes/costs.d.ts +4 -0
- package/dist/routes/costs.js +78 -0
- package/dist/routes/cron.d.ts +11 -0
- package/dist/routes/cron.js +708 -0
- package/dist/routes/devices.d.ts +9 -0
- package/dist/routes/devices.js +490 -0
- package/dist/routes/discord.d.ts +15 -0
- package/dist/routes/discord.js +524 -0
- package/dist/routes/dlq.d.ts +4 -0
- package/dist/routes/dlq.js +64 -0
- package/dist/routes/gateway.d.ts +4 -0
- package/dist/routes/gateway.js +253 -0
- package/dist/routes/health.d.ts +29 -0
- package/dist/routes/health.js +296 -0
- package/dist/routes/hooks.d.ts +4 -0
- package/dist/routes/hooks.js +170 -0
- package/dist/routes/import.d.ts +9 -0
- package/dist/routes/import.js +540 -0
- package/dist/routes/index.d.ts +38 -0
- package/dist/routes/index.js +39 -0
- package/dist/routes/integrations.d.ts +10 -0
- package/dist/routes/integrations.js +200 -0
- package/dist/routes/labels.d.ts +8 -0
- package/dist/routes/labels.js +240 -0
- package/dist/routes/mcp.d.ts +14 -0
- package/dist/routes/mcp.js +125 -0
- package/dist/routes/memory.d.ts +10 -0
- package/dist/routes/memory.js +622 -0
- package/dist/routes/notifications.d.ts +9 -0
- package/dist/routes/notifications.js +154 -0
- package/dist/routes/oobe.d.ts +10 -0
- package/dist/routes/oobe.js +405 -0
- package/dist/routes/openapi.d.ts +9 -0
- package/dist/routes/openapi.js +537 -0
- package/dist/routes/plugins.d.ts +8 -0
- package/dist/routes/plugins.js +108 -0
- package/dist/routes/projects.d.ts +8 -0
- package/dist/routes/projects.js +592 -0
- package/dist/routes/push.d.ts +8 -0
- package/dist/routes/push.js +75 -0
- package/dist/routes/search.d.ts +4 -0
- package/dist/routes/search.js +189 -0
- package/dist/routes/security.d.ts +10 -0
- package/dist/routes/security.js +189 -0
- package/dist/routes/settings.d.ts +4 -0
- package/dist/routes/settings.js +119 -0
- package/dist/routes/setup.d.ts +11 -0
- package/dist/routes/setup.js +525 -0
- package/dist/routes/skills.d.ts +13 -0
- package/dist/routes/skills.js +152 -0
- package/dist/routes/slack.d.ts +12 -0
- package/dist/routes/slack.js +999 -0
- package/dist/routes/states.d.ts +8 -0
- package/dist/routes/states.js +123 -0
- package/dist/routes/stats.d.ts +6 -0
- package/dist/routes/stats.js +369 -0
- package/dist/routes/summaries.d.ts +4 -0
- package/dist/routes/summaries.js +344 -0
- package/dist/routes/sync.d.ts +13 -0
- package/dist/routes/sync.js +268 -0
- package/dist/routes/tasks.d.ts +4 -0
- package/dist/routes/tasks.js +473 -0
- package/dist/routes/telegram.d.ts +14 -0
- package/dist/routes/telegram.js +420 -0
- package/dist/routes/tickets.d.ts +4 -0
- package/dist/routes/tickets.js +1090 -0
- package/dist/routes/tokens.d.ts +4 -0
- package/dist/routes/tokens.js +83 -0
- package/dist/routes/tools.d.ts +14 -0
- package/dist/routes/tools.js +790 -0
- package/dist/routes/tunnels.d.ts +8 -0
- package/dist/routes/tunnels.js +145 -0
- package/dist/routes/users.d.ts +15 -0
- package/dist/routes/users.js +998 -0
- package/dist/routes/voice.d.ts +8 -0
- package/dist/routes/voice.js +127 -0
- package/dist/routes/webchat.d.ts +11 -0
- package/dist/routes/webchat.js +173 -0
- package/dist/routes/webhook-dedup.d.ts +11 -0
- package/dist/routes/webhook-dedup.js +49 -0
- package/dist/routes/webhooks.d.ts +4 -0
- package/dist/routes/webhooks.js +71 -0
- package/dist/routes/whatsapp.d.ts +14 -0
- package/dist/routes/whatsapp.js +391 -0
- package/dist/security/audit-scanner.d.ts +32 -0
- package/dist/security/audit-scanner.js +217 -0
- package/dist/security/fs-guard.d.ts +41 -0
- package/dist/security/fs-guard.js +206 -0
- package/dist/security/prompt-guard.d.ts +47 -0
- package/dist/security/prompt-guard.js +198 -0
- package/dist/security/ssrf-guard.d.ts +38 -0
- package/dist/security/ssrf-guard.js +266 -0
- package/dist/security/types.d.ts +92 -0
- package/dist/security/types.js +8 -0
- package/dist/server/route-loader.d.ts +15 -0
- package/dist/server/route-loader.js +135 -0
- package/dist/server.d.ts +5 -0
- package/dist/server.js +835 -0
- package/dist/settings/index.d.ts +841 -0
- package/dist/settings/index.js +451 -0
- package/dist/skills/compiler.d.ts +83 -0
- package/dist/skills/compiler.js +358 -0
- package/dist/skills/frontmatter.d.ts +33 -0
- package/dist/skills/frontmatter.js +175 -0
- package/dist/skills/index.d.ts +19 -0
- package/dist/skills/index.js +24 -0
- package/dist/skills/installer.d.ts +22 -0
- package/dist/skills/installer.js +220 -0
- package/dist/skills/loader.d.ts +72 -0
- package/dist/skills/loader.js +484 -0
- package/dist/skills/prompt-builder.d.ts +48 -0
- package/dist/skills/prompt-builder.js +135 -0
- package/dist/skills/registry.d.ts +115 -0
- package/dist/skills/registry.js +225 -0
- package/dist/skills/types.d.ts +202 -0
- package/dist/skills/types.js +24 -0
- package/dist/states/index.d.ts +64 -0
- package/dist/states/index.js +142 -0
- package/dist/storage/adapter.d.ts +146 -0
- package/dist/storage/adapter.js +2 -0
- package/dist/storage/index.d.ts +48 -0
- package/dist/storage/index.js +135 -0
- package/dist/storage/libsql.d.ts +99 -0
- package/dist/storage/libsql.js +1873 -0
- package/dist/storage/migrations.d.ts +65 -0
- package/dist/storage/migrations.js +289 -0
- package/dist/storage/schema.d.ts +10185 -0
- package/dist/storage/schema.js +1113 -0
- package/dist/summaries/extractor.d.ts +56 -0
- package/dist/summaries/extractor.js +377 -0
- package/dist/summaries/index.d.ts +13 -0
- package/dist/summaries/index.js +14 -0
- package/dist/summaries/storage.d.ts +51 -0
- package/dist/summaries/storage.js +101 -0
- package/dist/summaries/templates.d.ts +68 -0
- package/dist/summaries/templates.js +245 -0
- package/dist/sync/adapters/base.d.ts +42 -0
- package/dist/sync/adapters/base.js +142 -0
- package/dist/sync/adapters/github.d.ts +45 -0
- package/dist/sync/adapters/github.js +445 -0
- package/dist/sync/adapters/linear.d.ts +40 -0
- package/dist/sync/adapters/linear.js +434 -0
- package/dist/sync/config.d.ts +388 -0
- package/dist/sync/config.js +281 -0
- package/dist/sync/engine.d.ts +112 -0
- package/dist/sync/engine.js +623 -0
- package/dist/sync/index.d.ts +31 -0
- package/dist/sync/index.js +34 -0
- package/dist/sync/integration.d.ts +53 -0
- package/dist/sync/integration.js +231 -0
- package/dist/sync/types.d.ts +249 -0
- package/dist/sync/types.js +30 -0
- package/dist/tickets/index.d.ts +139 -0
- package/dist/tickets/index.js +1406 -0
- package/dist/tickets/types.d.ts +817 -0
- package/dist/tickets/types.js +310 -0
- package/dist/tools/adapters.d.ts +56 -0
- package/dist/tools/adapters.js +183 -0
- package/dist/tools/index.d.ts +66 -0
- package/dist/tools/index.js +105 -0
- package/dist/tools/types.d.ts +117 -0
- package/dist/tools/types.js +20 -0
- package/dist/types/agent.d.ts +101 -0
- package/dist/types/agent.js +2 -0
- package/dist/types/errors.d.ts +150 -0
- package/dist/types/errors.js +338 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/index.js +3 -0
- package/dist/types/summary.d.ts +638 -0
- package/dist/types/summary.js +137 -0
- package/dist/types/task.d.ts +123 -0
- package/dist/types/task.js +46 -0
- package/dist/utils/ai-cache.d.ts +72 -0
- package/dist/utils/ai-cache.js +204 -0
- package/dist/utils/ai-inference.d.ts +57 -0
- package/dist/utils/ai-inference.js +190 -0
- package/dist/utils/ai-responder.d.ts +44 -0
- package/dist/utils/ai-responder.js +272 -0
- package/dist/utils/circuit-breaker.d.ts +139 -0
- package/dist/utils/circuit-breaker.js +281 -0
- package/dist/utils/config-loader.d.ts +12 -0
- package/dist/utils/config-loader.js +44 -0
- package/dist/utils/crypto.d.ts +10 -0
- package/dist/utils/crypto.js +59 -0
- package/dist/utils/env-validator.d.ts +44 -0
- package/dist/utils/env-validator.js +236 -0
- package/dist/utils/file-lock.d.ts +85 -0
- package/dist/utils/file-lock.js +204 -0
- package/dist/utils/logger.d.ts +153 -0
- package/dist/utils/logger.js +282 -0
- package/dist/utils/metrics.d.ts +183 -0
- package/dist/utils/metrics.js +345 -0
- package/dist/utils/security.d.ts +90 -0
- package/dist/utils/security.js +347 -0
- package/dist/voice/index.d.ts +79 -0
- package/dist/voice/index.js +144 -0
- package/dist/voice/stt/whisper.d.ts +13 -0
- package/dist/voice/stt/whisper.js +116 -0
- package/dist/voice/tts/elevenlabs.d.ts +18 -0
- package/dist/voice/tts/elevenlabs.js +178 -0
- package/dist/voice/tts/openai-tts.d.ts +19 -0
- package/dist/voice/tts/openai-tts.js +127 -0
- package/dist/voice/tts/system.d.ts +26 -0
- package/dist/voice/tts/system.js +146 -0
- package/dist/voice/wake-word.d.ts +44 -0
- package/dist/voice/wake-word.js +145 -0
- package/docker-compose.yml +222 -0
- package/package.json +154 -0
- package/profclaw.mjs +24 -0
- package/skills/1password/SKILL.md +155 -0
- package/skills/api-tester/SKILL.md +177 -0
- package/skills/apple-notes/SKILL.md +167 -0
- package/skills/apple-reminders/SKILL.md +178 -0
- package/skills/bear-notes/SKILL.md +166 -0
- package/skills/blogwatcher/SKILL.md +177 -0
- package/skills/camsnap/SKILL.md +130 -0
- package/skills/code-generation/SKILL.md +139 -0
- package/skills/code-review/SKILL.md +116 -0
- package/skills/coding-agent/SKILL.md +184 -0
- package/skills/cron-manager/SKILL.md +141 -0
- package/skills/debug-helper/SKILL.md +134 -0
- package/skills/docker-ops/SKILL.md +246 -0
- package/skills/file-manager/SKILL.md +160 -0
- package/skills/git-workflow/SKILL.md +171 -0
- package/skills/github-issues/SKILL.md +244 -0
- package/skills/gog/SKILL.md +191 -0
- package/skills/goplaces/SKILL.md +156 -0
- package/skills/healthcheck/SKILL.md +270 -0
- package/skills/himalaya/SKILL.md +165 -0
- package/skills/mcp-discovery/SKILL.md +109 -0
- package/skills/memory-manager/SKILL.md +151 -0
- package/skills/model-usage/SKILL.md +177 -0
- package/skills/nano-banana-pro/SKILL.md +214 -0
- package/skills/nano-pdf/SKILL.md +165 -0
- package/skills/notion/SKILL.md +147 -0
- package/skills/obsidian/SKILL.md +163 -0
- package/skills/openai-image-gen/SKILL.md +194 -0
- package/skills/openai-whisper/SKILL.md +98 -0
- package/skills/openai-whisper-api/SKILL.md +130 -0
- package/skills/openhue/SKILL.md +203 -0
- package/skills/oracle/SKILL.md +236 -0
- package/skills/phone-control/SKILL.md +201 -0
- package/skills/profclaw-assistant/SKILL.md +81 -0
- package/skills/profclaw-projects/SKILL.md +68 -0
- package/skills/profclaw-tickets/SKILL.md +91 -0
- package/skills/session-logs/SKILL.md +216 -0
- package/skills/sherpa-onnx-tts/SKILL.md +134 -0
- package/skills/skill-creator/SKILL.md +183 -0
- package/skills/songsee/SKILL.md +170 -0
- package/skills/spotify-player/SKILL.md +254 -0
- package/skills/summarize/SKILL.md +155 -0
- package/skills/system-admin/SKILL.md +179 -0
- package/skills/things-mac/SKILL.md +179 -0
- package/skills/tmux/SKILL.md +170 -0
- package/skills/trello/SKILL.md +154 -0
- package/skills/video-frames/SKILL.md +127 -0
- package/skills/weather/SKILL.md +186 -0
- package/skills/web-research/SKILL.md +128 -0
- package/skills/xurl/SKILL.md +198 -0
- package/ui/README.md +73 -0
- package/ui/dist/assets/ActivityView-CkPgKhwm.js +1 -0
- package/ui/dist/assets/AgentList-C3SVdeEz.js +1 -0
- package/ui/dist/assets/AnalyticsDashboard-DVU--vlP.js +1 -0
- package/ui/dist/assets/AreaChart-B5qMEGWj.js +1 -0
- package/ui/dist/assets/CartesianChart-B50bcUJi.js +36 -0
- package/ui/dist/assets/ChatView-BZFJs7w_.js +10 -0
- package/ui/dist/assets/CostsDashboard-ChfH8BlG.js +1 -0
- package/ui/dist/assets/EstimateSelect-CLpB4NQO.js +1 -0
- package/ui/dist/assets/FloatingChatbot-CBzBY9a0.js +2 -0
- package/ui/dist/assets/InviteCodeManagement-DsbdPa6W.js +2 -0
- package/ui/dist/assets/ProjectDetail-BEM3tFXg.js +2 -0
- package/ui/dist/assets/ProjectDetail-D1-0B2xV.css +1 -0
- package/ui/dist/assets/ProjectIcon-CN1FmFAk.js +1 -0
- package/ui/dist/assets/ProjectList-DSDaNhxQ.js +4 -0
- package/ui/dist/assets/Settings-dPVcqC_d.js +6 -0
- package/ui/dist/assets/StatusIndicator-DA3NAo_b.js +1 -0
- package/ui/dist/assets/SummaryDetail-Bjnf9lT8.js +27 -0
- package/ui/dist/assets/SummaryList-ENwKDBKW.js +1 -0
- package/ui/dist/assets/TaskDetail-DnwG6MzB.js +1 -0
- package/ui/dist/assets/TaskList-D9Ug_HiV.js +1 -0
- package/ui/dist/assets/TicketBoard-CviH1571.js +1 -0
- package/ui/dist/assets/TicketDetail-8Jk8O-33.js +1 -0
- package/ui/dist/assets/TicketList-B-iV4rRA.js +1 -0
- package/ui/dist/assets/UserManagement-CPZ8s7s2.js +2 -0
- package/ui/dist/assets/ViewSwitcher-BUyOOWDI.js +1 -0
- package/ui/dist/assets/alert-dialog-BOmnTkN-.js +7 -0
- package/ui/dist/assets/archive-D5my9zOG.js +1 -0
- package/ui/dist/assets/badge-B4ov81_m.js +1 -0
- package/ui/dist/assets/brain-C53ElFLD.js +1 -0
- package/ui/dist/assets/bug-D0TJoCYn.js +1 -0
- package/ui/dist/assets/calendar-BkWIhKa1.js +1 -0
- package/ui/dist/assets/chevron-up-BRTtndUZ.js +1 -0
- package/ui/dist/assets/circle-x-BN89YhbS.js +1 -0
- package/ui/dist/assets/constants-fc7TFI7u.js +1 -0
- package/ui/dist/assets/cpu-B41x1-vV.js +1 -0
- package/ui/dist/assets/database-D9Cnfmzj.js +1 -0
- package/ui/dist/assets/defineProperty-CoXUr7_6.js +2 -0
- package/ui/dist/assets/dialog-DrWB4EYD.js +1 -0
- package/ui/dist/assets/element-adapter-DL0DQilL.js +4 -0
- package/ui/dist/assets/ellipsis-NuUWekvu.js +1 -0
- package/ui/dist/assets/ellipsis-vertical-BueMfuCw.js +1 -0
- package/ui/dist/assets/file-code-HR9829Jc.js +1 -0
- package/ui/dist/assets/folder-open-C_7oYEqe.js +1 -0
- package/ui/dist/assets/funnel-B5gmNXGf.js +1 -0
- package/ui/dist/assets/git-branch-BRMiJmV3.js +1 -0
- package/ui/dist/assets/git-commit-horizontal-CXOUQeJI.js +1 -0
- package/ui/dist/assets/globe-CCspjvus.js +1 -0
- package/ui/dist/assets/hash-g3102kPC.js +1 -0
- package/ui/dist/assets/history-CNqcBBrV.js +1 -0
- package/ui/dist/assets/index-27mTPKuh.js +1 -0
- package/ui/dist/assets/index-BMx3fH-e.js +1 -0
- package/ui/dist/assets/index-C9jNQXzL.js +1 -0
- package/ui/dist/assets/index-CEZ6R2Uw.js +7 -0
- package/ui/dist/assets/index-DURTouJI.js +1 -0
- package/ui/dist/assets/index-WclMPci1.css +1 -0
- package/ui/dist/assets/index-kb4AJXUB.js +67 -0
- package/ui/dist/assets/layers-CLXiHN6o.js +1 -0
- package/ui/dist/assets/layout-dashboard-B07MFhBs.js +1 -0
- package/ui/dist/assets/lightbulb-B2dgG5ks.js +1 -0
- package/ui/dist/assets/link-2-BxNmr9hL.js +1 -0
- package/ui/dist/assets/markdown-renderer-CjU6hBcW.js +36 -0
- package/ui/dist/assets/message-square-Bf2-CVbt.js +1 -0
- package/ui/dist/assets/pencil-D096Ey62.js +1 -0
- package/ui/dist/assets/play-DfdcSI3x.js +1 -0
- package/ui/dist/assets/popover-BV0QJDQq.js +1 -0
- package/ui/dist/assets/progress-DjPEDJfI.js +1 -0
- package/ui/dist/assets/rocket-CPsTc-5G.js +1 -0
- package/ui/dist/assets/select-LsO16slr.js +1 -0
- package/ui/dist/assets/send-BDYBZDUZ.js +1 -0
- package/ui/dist/assets/server-B3k6noce.js +1 -0
- package/ui/dist/assets/settings-2-Cu4xTjhG.js +1 -0
- package/ui/dist/assets/sheet-BScLnPKX.js +1 -0
- package/ui/dist/assets/shield-check-CQqkwufI.js +1 -0
- package/ui/dist/assets/shield-off-ZFruH9KO.js +1 -0
- package/ui/dist/assets/skeleton-CtkIA_MU.js +1 -0
- package/ui/dist/assets/smartphone-DnoksVkc.js +1 -0
- package/ui/dist/assets/square-uD9ZHMfW.js +1 -0
- package/ui/dist/assets/switch-MQPnwGJK.js +1 -0
- package/ui/dist/assets/table-B8cqlywA.js +1 -0
- package/ui/dist/assets/tag-wEJQRWlV.js +1 -0
- package/ui/dist/assets/textarea-D5LJCOGl.js +1 -0
- package/ui/dist/assets/timer-mbGHegmr.js +1 -0
- package/ui/dist/assets/tooltip-Df1CunSp.js +1 -0
- package/ui/dist/assets/trash-2-B4oAXsX-.js +1 -0
- package/ui/dist/assets/trending-up-BGWxvlmZ.js +1 -0
- package/ui/dist/assets/wand-sparkles-CZy4xvL3.js +1 -0
- package/ui/dist/assets/wrench-ByZkjO6m.js +1 -0
- package/ui/dist/audio-worklets/vad-processor.js +132 -0
- package/ui/dist/brand/profclaw-appicon-192.png +0 -0
- package/ui/dist/brand/profclaw-appicon-512.png +0 -0
- package/ui/dist/brand/profclaw-appicon-shadow.svg +51 -0
- package/ui/dist/brand/profclaw-appicon.svg +50 -0
- package/ui/dist/brand/profclaw-favicon-coral-bg-128.png +0 -0
- package/ui/dist/brand/profclaw-favicon-coral-bg-64.png +0 -0
- package/ui/dist/brand/profclaw-favicon-coral-bg.svg +52 -0
- package/ui/dist/brand/profclaw-favicon-coral-body-128.png +0 -0
- package/ui/dist/brand/profclaw-favicon-coral-body.svg +41 -0
- package/ui/dist/brand/profclaw-favicon-shadow-128.png +0 -0
- package/ui/dist/brand/profclaw-favicon-shadow-64.png +0 -0
- package/ui/dist/brand/profclaw-favicon-shadow.svg +51 -0
- package/ui/dist/brand/profclaw-mark-coral-256.png +0 -0
- package/ui/dist/brand/profclaw-mark-coral-64.png +0 -0
- package/ui/dist/brand/profclaw-mark-coral.svg +31 -0
- package/ui/dist/brand/profclaw-mono-white.svg +18 -0
- package/ui/dist/brand/profclaw-text-dark.svg +18 -0
- package/ui/dist/brand/profclaw-text-light.svg +18 -0
- package/ui/dist/brand/profclaw-wordmark-dark.svg +48 -0
- package/ui/dist/brand/profclaw-wordmark-light.svg +48 -0
- package/ui/dist/brand/safari-pinned-tab.svg +15 -0
- package/ui/dist/favicon/android-chrome-192x192.png +0 -0
- package/ui/dist/favicon/android-chrome-384x384.png +0 -0
- package/ui/dist/favicon/android-chrome-512x512.png +0 -0
- package/ui/dist/favicon/apple-touch-icon.png +0 -0
- package/ui/dist/favicon/browserconfig.xml +9 -0
- package/ui/dist/favicon/favicon-16x16.png +0 -0
- package/ui/dist/favicon/favicon-32x32.png +0 -0
- package/ui/dist/favicon/favicon.ico +0 -0
- package/ui/dist/favicon/mstile-150x150.png +0 -0
- package/ui/dist/favicon/safari-pinned-tab.svg +46 -0
- package/ui/dist/favicon/site.webmanifest +22 -0
- package/ui/dist/index.html +32 -0
- package/ui/dist/manifest.json +49 -0
- package/ui/dist/sw.js +124 -0
- package/ui/dist/vite.svg +1 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skills Registry
|
|
3
|
+
*
|
|
4
|
+
* Central registry for managing skills and their snapshots.
|
|
5
|
+
* Supports MCP server discovery for dynamic capability extension.
|
|
6
|
+
*/
|
|
7
|
+
import type { SkillEntry, SkillSnapshot, SkillsSystemConfig } from './types.js';
|
|
8
|
+
/**
|
|
9
|
+
* MCP Server capability info
|
|
10
|
+
*/
|
|
11
|
+
export interface MCPServerInfo {
|
|
12
|
+
name: string;
|
|
13
|
+
connected: boolean;
|
|
14
|
+
tools: Array<{
|
|
15
|
+
name: string;
|
|
16
|
+
description: string;
|
|
17
|
+
inputSchema?: Record<string, unknown>;
|
|
18
|
+
}>;
|
|
19
|
+
resources?: Array<{
|
|
20
|
+
uri: string;
|
|
21
|
+
name: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
}>;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Skills Registry - manages loaded skills and snapshots
|
|
27
|
+
*/
|
|
28
|
+
export declare class SkillsRegistry {
|
|
29
|
+
private entries;
|
|
30
|
+
private snapshot;
|
|
31
|
+
private snapshotVersion;
|
|
32
|
+
private config;
|
|
33
|
+
private workspaceDir;
|
|
34
|
+
private mcpServers;
|
|
35
|
+
/**
|
|
36
|
+
* Initialize the registry with a workspace
|
|
37
|
+
*/
|
|
38
|
+
initialize(params: {
|
|
39
|
+
workspaceDir?: string;
|
|
40
|
+
config?: SkillsSystemConfig;
|
|
41
|
+
}): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* Reload all skills from disk
|
|
44
|
+
*/
|
|
45
|
+
reload(): Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* Register an MCP server and its capabilities
|
|
48
|
+
*/
|
|
49
|
+
registerMCPServer(info: MCPServerInfo): void;
|
|
50
|
+
/**
|
|
51
|
+
* Unregister an MCP server
|
|
52
|
+
*/
|
|
53
|
+
unregisterMCPServer(name: string): void;
|
|
54
|
+
/**
|
|
55
|
+
* Generate skill content from MCP server info
|
|
56
|
+
*/
|
|
57
|
+
private generateMCPSkillContent;
|
|
58
|
+
/**
|
|
59
|
+
* Get all entries (raw, unfiltered)
|
|
60
|
+
*/
|
|
61
|
+
getAllEntries(): SkillEntry[];
|
|
62
|
+
/**
|
|
63
|
+
* Get eligible entries based on current context
|
|
64
|
+
*/
|
|
65
|
+
getEligibleEntries(): SkillEntry[];
|
|
66
|
+
/**
|
|
67
|
+
* Get a skill by name
|
|
68
|
+
*/
|
|
69
|
+
getSkill(name: string): SkillEntry | undefined;
|
|
70
|
+
/**
|
|
71
|
+
* Get connected MCP servers
|
|
72
|
+
*/
|
|
73
|
+
getMCPServers(): MCPServerInfo[];
|
|
74
|
+
/**
|
|
75
|
+
* Get or build skills snapshot for the current session
|
|
76
|
+
*/
|
|
77
|
+
getSnapshot(): Promise<SkillSnapshot>;
|
|
78
|
+
/**
|
|
79
|
+
* Get skills prompt for injection into system message
|
|
80
|
+
*/
|
|
81
|
+
getSkillsPrompt(): Promise<string>;
|
|
82
|
+
/**
|
|
83
|
+
* Estimate token cost of current skills
|
|
84
|
+
*/
|
|
85
|
+
estimateTokenCost(): Promise<number>;
|
|
86
|
+
/**
|
|
87
|
+
* Update configuration
|
|
88
|
+
*/
|
|
89
|
+
setConfig(config: SkillsSystemConfig): void;
|
|
90
|
+
/**
|
|
91
|
+
* Get list of loaded skill names
|
|
92
|
+
*/
|
|
93
|
+
getLoadedSkillNames(): string[];
|
|
94
|
+
/**
|
|
95
|
+
* Get registry stats
|
|
96
|
+
*/
|
|
97
|
+
getStats(): {
|
|
98
|
+
totalSkills: number;
|
|
99
|
+
bySource: Record<string, number>;
|
|
100
|
+
mcpServers: number;
|
|
101
|
+
estimatedTokens: number;
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Get the global skills registry instance
|
|
106
|
+
*/
|
|
107
|
+
export declare function getSkillsRegistry(): SkillsRegistry;
|
|
108
|
+
/**
|
|
109
|
+
* Initialize the global skills registry
|
|
110
|
+
*/
|
|
111
|
+
export declare function initializeSkillsRegistry(params: {
|
|
112
|
+
workspaceDir?: string;
|
|
113
|
+
config?: SkillsSystemConfig;
|
|
114
|
+
}): Promise<SkillsRegistry>;
|
|
115
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skills Registry
|
|
3
|
+
*
|
|
4
|
+
* Central registry for managing skills and their snapshots.
|
|
5
|
+
* Supports MCP server discovery for dynamic capability extension.
|
|
6
|
+
*/
|
|
7
|
+
import { loadAllSkills, filterSkills } from './loader.js';
|
|
8
|
+
import { buildSkillSnapshot, estimateSkillsTokenCost } from './prompt-builder.js';
|
|
9
|
+
import { logger } from '../utils/logger.js';
|
|
10
|
+
/**
|
|
11
|
+
* Skills Registry - manages loaded skills and snapshots
|
|
12
|
+
*/
|
|
13
|
+
export class SkillsRegistry {
|
|
14
|
+
entries = new Map();
|
|
15
|
+
snapshot = null;
|
|
16
|
+
snapshotVersion = 0;
|
|
17
|
+
config;
|
|
18
|
+
workspaceDir = null;
|
|
19
|
+
mcpServers = new Map();
|
|
20
|
+
/**
|
|
21
|
+
* Initialize the registry with a workspace
|
|
22
|
+
*/
|
|
23
|
+
async initialize(params) {
|
|
24
|
+
this.workspaceDir = params.workspaceDir || null;
|
|
25
|
+
this.config = params.config;
|
|
26
|
+
await this.reload();
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Reload all skills from disk
|
|
30
|
+
*/
|
|
31
|
+
async reload() {
|
|
32
|
+
const allEntries = await loadAllSkills({
|
|
33
|
+
workspaceDir: this.workspaceDir || undefined,
|
|
34
|
+
extraDirs: this.config?.load?.extraDirs,
|
|
35
|
+
});
|
|
36
|
+
this.entries.clear();
|
|
37
|
+
for (const entry of allEntries) {
|
|
38
|
+
this.entries.set(entry.name, entry);
|
|
39
|
+
}
|
|
40
|
+
// Invalidate snapshot
|
|
41
|
+
this.snapshotVersion++;
|
|
42
|
+
this.snapshot = null;
|
|
43
|
+
logger.info(`[SkillsRegistry] Loaded ${this.entries.size} skills`);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Register an MCP server and its capabilities
|
|
47
|
+
*/
|
|
48
|
+
registerMCPServer(info) {
|
|
49
|
+
this.mcpServers.set(info.name, info);
|
|
50
|
+
// Create a dynamic skill for this MCP server
|
|
51
|
+
const mcpSkill = {
|
|
52
|
+
name: `mcp-${info.name}`,
|
|
53
|
+
description: `MCP server: ${info.name} - ${info.tools.length} tools available`,
|
|
54
|
+
source: 'plugin', // MCP skills are treated as plugins
|
|
55
|
+
dirPath: `mcp://${info.name}`,
|
|
56
|
+
skillMdPath: `mcp://${info.name}/SKILL.md`,
|
|
57
|
+
frontmatter: {
|
|
58
|
+
name: `mcp-${info.name}`,
|
|
59
|
+
description: `MCP server capabilities for ${info.name}`,
|
|
60
|
+
},
|
|
61
|
+
metadata: {
|
|
62
|
+
toolCategories: info.tools.map((t) => t.name),
|
|
63
|
+
},
|
|
64
|
+
instructions: this.generateMCPSkillContent(info),
|
|
65
|
+
invocation: {
|
|
66
|
+
userInvocable: true,
|
|
67
|
+
modelInvocable: true,
|
|
68
|
+
},
|
|
69
|
+
eligible: true,
|
|
70
|
+
eligibilityErrors: [],
|
|
71
|
+
enabled: true,
|
|
72
|
+
};
|
|
73
|
+
this.entries.set(mcpSkill.name, mcpSkill);
|
|
74
|
+
// Invalidate snapshot
|
|
75
|
+
this.snapshotVersion++;
|
|
76
|
+
this.snapshot = null;
|
|
77
|
+
logger.info(`[SkillsRegistry] Registered MCP server: ${info.name} with ${info.tools.length} tools`);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Unregister an MCP server
|
|
81
|
+
*/
|
|
82
|
+
unregisterMCPServer(name) {
|
|
83
|
+
this.mcpServers.delete(name);
|
|
84
|
+
this.entries.delete(`mcp-${name}`);
|
|
85
|
+
// Invalidate snapshot
|
|
86
|
+
this.snapshotVersion++;
|
|
87
|
+
this.snapshot = null;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Generate skill content from MCP server info
|
|
91
|
+
*/
|
|
92
|
+
generateMCPSkillContent(info) {
|
|
93
|
+
const toolDocs = info.tools.map((tool) => {
|
|
94
|
+
const params = tool.inputSchema
|
|
95
|
+
? `\nParameters: ${JSON.stringify(tool.inputSchema, null, 2)}`
|
|
96
|
+
: '';
|
|
97
|
+
return `### ${tool.name}\n${tool.description}${params}`;
|
|
98
|
+
}).join('\n\n');
|
|
99
|
+
const resourceDocs = info.resources && info.resources.length > 0
|
|
100
|
+
? `\n## Resources\n\n${info.resources.map((r) => `- **${r.name}** (${r.uri}): ${r.description || 'No description'}`).join('\n')}`
|
|
101
|
+
: '';
|
|
102
|
+
return `# MCP Server: ${info.name}
|
|
103
|
+
|
|
104
|
+
This server provides the following capabilities via MCP (Model Context Protocol).
|
|
105
|
+
|
|
106
|
+
## Available Tools
|
|
107
|
+
|
|
108
|
+
${toolDocs}
|
|
109
|
+
${resourceDocs}
|
|
110
|
+
|
|
111
|
+
## Usage
|
|
112
|
+
|
|
113
|
+
Call these tools using the MCP protocol. The tools will be executed by the MCP server.
|
|
114
|
+
`;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Get all entries (raw, unfiltered)
|
|
118
|
+
*/
|
|
119
|
+
getAllEntries() {
|
|
120
|
+
return Array.from(this.entries.values());
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Get eligible entries based on current context
|
|
124
|
+
*/
|
|
125
|
+
getEligibleEntries() {
|
|
126
|
+
return filterSkills(this.getAllEntries(), this.config);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Get a skill by name
|
|
130
|
+
*/
|
|
131
|
+
getSkill(name) {
|
|
132
|
+
return this.entries.get(name);
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Get connected MCP servers
|
|
136
|
+
*/
|
|
137
|
+
getMCPServers() {
|
|
138
|
+
return Array.from(this.mcpServers.values());
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Get or build skills snapshot for the current session
|
|
142
|
+
*/
|
|
143
|
+
async getSnapshot() {
|
|
144
|
+
// Return cached snapshot if still valid
|
|
145
|
+
if (this.snapshot && this.snapshot.version === this.snapshotVersion) {
|
|
146
|
+
return this.snapshot;
|
|
147
|
+
}
|
|
148
|
+
// Build fresh snapshot
|
|
149
|
+
this.snapshot = await buildSkillSnapshot({
|
|
150
|
+
workspaceDir: this.workspaceDir || undefined,
|
|
151
|
+
config: this.config,
|
|
152
|
+
entries: this.getAllEntries(),
|
|
153
|
+
version: this.snapshotVersion,
|
|
154
|
+
});
|
|
155
|
+
return this.snapshot;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Get skills prompt for injection into system message
|
|
159
|
+
*/
|
|
160
|
+
async getSkillsPrompt() {
|
|
161
|
+
const snapshot = await this.getSnapshot();
|
|
162
|
+
return snapshot.prompt;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Estimate token cost of current skills
|
|
166
|
+
*/
|
|
167
|
+
async estimateTokenCost() {
|
|
168
|
+
const eligible = this.getEligibleEntries();
|
|
169
|
+
const promptEntries = eligible.filter((e) => e.invocation.modelInvocable);
|
|
170
|
+
return estimateSkillsTokenCost(promptEntries);
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Update configuration
|
|
174
|
+
*/
|
|
175
|
+
setConfig(config) {
|
|
176
|
+
this.config = config;
|
|
177
|
+
// Invalidate snapshot on config change
|
|
178
|
+
this.snapshotVersion++;
|
|
179
|
+
this.snapshot = null;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Get list of loaded skill names
|
|
183
|
+
*/
|
|
184
|
+
getLoadedSkillNames() {
|
|
185
|
+
return Array.from(this.entries.keys());
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Get registry stats
|
|
189
|
+
*/
|
|
190
|
+
getStats() {
|
|
191
|
+
const bySource = {};
|
|
192
|
+
for (const entry of this.entries.values()) {
|
|
193
|
+
const source = entry.source;
|
|
194
|
+
bySource[source] = (bySource[source] || 0) + 1;
|
|
195
|
+
}
|
|
196
|
+
const eligible = this.getEligibleEntries();
|
|
197
|
+
const promptEntries = eligible.filter((e) => e.invocation.modelInvocable);
|
|
198
|
+
return {
|
|
199
|
+
totalSkills: this.entries.size,
|
|
200
|
+
bySource,
|
|
201
|
+
mcpServers: this.mcpServers.size,
|
|
202
|
+
estimatedTokens: estimateSkillsTokenCost(promptEntries),
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
// Singleton instance
|
|
207
|
+
let registryInstance = null;
|
|
208
|
+
/**
|
|
209
|
+
* Get the global skills registry instance
|
|
210
|
+
*/
|
|
211
|
+
export function getSkillsRegistry() {
|
|
212
|
+
if (!registryInstance) {
|
|
213
|
+
registryInstance = new SkillsRegistry();
|
|
214
|
+
}
|
|
215
|
+
return registryInstance;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Initialize the global skills registry
|
|
219
|
+
*/
|
|
220
|
+
export async function initializeSkillsRegistry(params) {
|
|
221
|
+
const registry = getSkillsRegistry();
|
|
222
|
+
await registry.initialize(params);
|
|
223
|
+
return registry;
|
|
224
|
+
}
|
|
225
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skills System - Core Types
|
|
3
|
+
*
|
|
4
|
+
* Modular capability system inspired by OpenClaw's SKILL.md format
|
|
5
|
+
* and the Agent Skills open specification.
|
|
6
|
+
*
|
|
7
|
+
* Skills are discoverable instruction packages that extend agent capabilities
|
|
8
|
+
* via progressive disclosure: metadata loads early, full instructions on demand.
|
|
9
|
+
*/
|
|
10
|
+
/** Parsed SKILL.md frontmatter (YAML header) */
|
|
11
|
+
export interface SkillFrontmatter {
|
|
12
|
+
name: string;
|
|
13
|
+
description: string;
|
|
14
|
+
/** Whether users can invoke this skill via /command */
|
|
15
|
+
'user-invocable'?: boolean;
|
|
16
|
+
/** Whether AI models can auto-invoke this skill */
|
|
17
|
+
'disable-model-invocation'?: boolean;
|
|
18
|
+
/** Command dispatch to a tool */
|
|
19
|
+
'command-dispatch'?: 'tool';
|
|
20
|
+
'command-tool'?: string;
|
|
21
|
+
'command-arg-mode'?: 'raw' | 'parsed';
|
|
22
|
+
/** Extended metadata */
|
|
23
|
+
metadata?: string;
|
|
24
|
+
}
|
|
25
|
+
/** Extended metadata (parsed from frontmatter.metadata JSON) */
|
|
26
|
+
export interface SkillMetadata {
|
|
27
|
+
/** Always enable this skill regardless of requirements */
|
|
28
|
+
always?: boolean;
|
|
29
|
+
/** Override skill key (for config lookups) */
|
|
30
|
+
skillKey?: string;
|
|
31
|
+
/** Primary environment variable (API key) */
|
|
32
|
+
primaryEnv?: string;
|
|
33
|
+
/** Visual identifier */
|
|
34
|
+
emoji?: string;
|
|
35
|
+
/** Documentation URL */
|
|
36
|
+
homepage?: string;
|
|
37
|
+
/** Supported platforms */
|
|
38
|
+
os?: ('darwin' | 'linux' | 'win32')[];
|
|
39
|
+
/** Required dependencies */
|
|
40
|
+
requires?: {
|
|
41
|
+
/** All of these binaries must be available */
|
|
42
|
+
bins?: string[];
|
|
43
|
+
/** At least one of these binaries must be available */
|
|
44
|
+
anyBins?: string[];
|
|
45
|
+
/** All of these env vars must be set */
|
|
46
|
+
env?: string[];
|
|
47
|
+
/** All of these config paths must be truthy */
|
|
48
|
+
config?: string[];
|
|
49
|
+
};
|
|
50
|
+
/** Installation instructions for dependencies */
|
|
51
|
+
install?: SkillInstallSpec[];
|
|
52
|
+
/** Tool categories this skill provides */
|
|
53
|
+
toolCategories?: string[];
|
|
54
|
+
}
|
|
55
|
+
/** How to install a missing dependency */
|
|
56
|
+
export interface SkillInstallSpec {
|
|
57
|
+
kind: 'brew' | 'npm' | 'pnpm' | 'go' | 'pip' | 'download';
|
|
58
|
+
id?: string;
|
|
59
|
+
label?: string;
|
|
60
|
+
bins?: string[];
|
|
61
|
+
os?: string[];
|
|
62
|
+
formula?: string;
|
|
63
|
+
package?: string;
|
|
64
|
+
module?: string;
|
|
65
|
+
url?: string;
|
|
66
|
+
archive?: string;
|
|
67
|
+
extract?: boolean;
|
|
68
|
+
targetDir?: string;
|
|
69
|
+
}
|
|
70
|
+
/** Source of a skill */
|
|
71
|
+
export type SkillSource = 'bundled' | 'managed' | 'workspace' | 'plugin';
|
|
72
|
+
/** A loaded skill entry */
|
|
73
|
+
export interface SkillEntry {
|
|
74
|
+
/** Unique skill name */
|
|
75
|
+
name: string;
|
|
76
|
+
/** Human-readable description */
|
|
77
|
+
description: string;
|
|
78
|
+
/** Source where this skill was loaded from */
|
|
79
|
+
source: SkillSource;
|
|
80
|
+
/** Directory path containing the skill */
|
|
81
|
+
dirPath: string;
|
|
82
|
+
/** SKILL.md file path */
|
|
83
|
+
skillMdPath: string;
|
|
84
|
+
/** Parsed frontmatter */
|
|
85
|
+
frontmatter: SkillFrontmatter;
|
|
86
|
+
/** Parsed extended metadata */
|
|
87
|
+
metadata?: SkillMetadata;
|
|
88
|
+
/** Full instructions (body of SKILL.md after frontmatter) */
|
|
89
|
+
instructions: string;
|
|
90
|
+
/** Invocation policy */
|
|
91
|
+
invocation: SkillInvocationPolicy;
|
|
92
|
+
/** Whether this skill is eligible (requirements met) */
|
|
93
|
+
eligible: boolean;
|
|
94
|
+
/** Reasons skill is ineligible (missing bins, env, etc.) */
|
|
95
|
+
eligibilityErrors: string[];
|
|
96
|
+
/** Whether this skill is enabled in config */
|
|
97
|
+
enabled: boolean;
|
|
98
|
+
/** Chat command spec (if user-invocable) */
|
|
99
|
+
command?: SkillCommandSpec;
|
|
100
|
+
}
|
|
101
|
+
/** Controls how the skill can be invoked */
|
|
102
|
+
export interface SkillInvocationPolicy {
|
|
103
|
+
/** Users can invoke via /command */
|
|
104
|
+
userInvocable: boolean;
|
|
105
|
+
/** AI models can auto-invoke */
|
|
106
|
+
modelInvocable: boolean;
|
|
107
|
+
}
|
|
108
|
+
/** Chat command mapping */
|
|
109
|
+
export interface SkillCommandSpec {
|
|
110
|
+
/** Command name (e.g., "python") for /python */
|
|
111
|
+
name: string;
|
|
112
|
+
/** Skill it maps to */
|
|
113
|
+
skillName: string;
|
|
114
|
+
/** Description (max 100 chars) */
|
|
115
|
+
description: string;
|
|
116
|
+
/** Optional: dispatch to a specific tool */
|
|
117
|
+
dispatch?: {
|
|
118
|
+
kind: 'tool';
|
|
119
|
+
toolName: string;
|
|
120
|
+
argMode?: 'raw' | 'parsed';
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
/** Snapshot of skill state for prompt injection */
|
|
124
|
+
export interface SkillSnapshot {
|
|
125
|
+
/** Formatted skills prompt for AI model */
|
|
126
|
+
prompt: string;
|
|
127
|
+
/** Summary of available skills */
|
|
128
|
+
skills: Array<{
|
|
129
|
+
name: string;
|
|
130
|
+
description: string;
|
|
131
|
+
primaryEnv?: string;
|
|
132
|
+
source: SkillSource;
|
|
133
|
+
}>;
|
|
134
|
+
/** Resolved skill entries */
|
|
135
|
+
entries: SkillEntry[];
|
|
136
|
+
/** Change tracking version */
|
|
137
|
+
version: number;
|
|
138
|
+
/** When this snapshot was built */
|
|
139
|
+
builtAt: number;
|
|
140
|
+
}
|
|
141
|
+
/** Per-skill config (from settings) */
|
|
142
|
+
export interface SkillConfig {
|
|
143
|
+
enabled?: boolean;
|
|
144
|
+
apiKey?: string;
|
|
145
|
+
env?: Record<string, string>;
|
|
146
|
+
config?: Record<string, unknown>;
|
|
147
|
+
}
|
|
148
|
+
/** Skills system configuration */
|
|
149
|
+
export interface SkillsSystemConfig {
|
|
150
|
+
/** Directories to load skills from */
|
|
151
|
+
load: {
|
|
152
|
+
/** Additional skill directories */
|
|
153
|
+
extraDirs: string[];
|
|
154
|
+
/** Watch for file changes */
|
|
155
|
+
watch: boolean;
|
|
156
|
+
/** Debounce delay for file watcher */
|
|
157
|
+
watchDebounceMs: number;
|
|
158
|
+
};
|
|
159
|
+
/** Installation preferences */
|
|
160
|
+
install: {
|
|
161
|
+
/** Prefer brew over other package managers */
|
|
162
|
+
preferBrew: boolean;
|
|
163
|
+
/** Node package manager */
|
|
164
|
+
nodeManager: 'npm' | 'pnpm' | 'yarn';
|
|
165
|
+
};
|
|
166
|
+
/** Per-skill configuration overrides */
|
|
167
|
+
entries: Record<string, SkillConfig>;
|
|
168
|
+
/** Bundled skills allowlist (empty = all allowed) */
|
|
169
|
+
allowBundled: string[];
|
|
170
|
+
}
|
|
171
|
+
/** Default configuration */
|
|
172
|
+
export declare const DEFAULT_SKILLS_CONFIG: SkillsSystemConfig;
|
|
173
|
+
/** Detailed status for a single skill */
|
|
174
|
+
export interface SkillStatus {
|
|
175
|
+
name: string;
|
|
176
|
+
source: SkillSource;
|
|
177
|
+
enabled: boolean;
|
|
178
|
+
eligible: boolean;
|
|
179
|
+
errors: string[];
|
|
180
|
+
missing: {
|
|
181
|
+
bins: string[];
|
|
182
|
+
env: string[];
|
|
183
|
+
config: string[];
|
|
184
|
+
};
|
|
185
|
+
installOptions: SkillInstallSpec[];
|
|
186
|
+
metadata?: SkillMetadata;
|
|
187
|
+
}
|
|
188
|
+
/** Overall skills system status */
|
|
189
|
+
export interface SkillsStatus {
|
|
190
|
+
totalLoaded: number;
|
|
191
|
+
totalEligible: number;
|
|
192
|
+
totalEnabled: number;
|
|
193
|
+
skills: SkillStatus[];
|
|
194
|
+
sources: {
|
|
195
|
+
bundled: number;
|
|
196
|
+
managed: number;
|
|
197
|
+
workspace: number;
|
|
198
|
+
plugin: number;
|
|
199
|
+
};
|
|
200
|
+
version: number;
|
|
201
|
+
}
|
|
202
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skills System - Core Types
|
|
3
|
+
*
|
|
4
|
+
* Modular capability system inspired by OpenClaw's SKILL.md format
|
|
5
|
+
* and the Agent Skills open specification.
|
|
6
|
+
*
|
|
7
|
+
* Skills are discoverable instruction packages that extend agent capabilities
|
|
8
|
+
* via progressive disclosure: metadata loads early, full instructions on demand.
|
|
9
|
+
*/
|
|
10
|
+
/** Default configuration */
|
|
11
|
+
export const DEFAULT_SKILLS_CONFIG = {
|
|
12
|
+
load: {
|
|
13
|
+
extraDirs: [],
|
|
14
|
+
watch: true,
|
|
15
|
+
watchDebounceMs: 250,
|
|
16
|
+
},
|
|
17
|
+
install: {
|
|
18
|
+
preferBrew: true,
|
|
19
|
+
nodeManager: 'pnpm',
|
|
20
|
+
},
|
|
21
|
+
entries: {},
|
|
22
|
+
allowBundled: [],
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* States Service
|
|
3
|
+
*
|
|
4
|
+
* Manages customizable workflow states for projects.
|
|
5
|
+
* Maps custom states to core StateGroups (backlog, unstarted, started, completed, cancelled).
|
|
6
|
+
*/
|
|
7
|
+
import type { StateGroup } from '../tickets/types.js';
|
|
8
|
+
export interface State {
|
|
9
|
+
id: string;
|
|
10
|
+
projectId: string | null;
|
|
11
|
+
name: string;
|
|
12
|
+
slug: string;
|
|
13
|
+
color: string;
|
|
14
|
+
description: string | null;
|
|
15
|
+
stateGroup: StateGroup;
|
|
16
|
+
isDefault: boolean;
|
|
17
|
+
sequence: number;
|
|
18
|
+
createdAt: Date;
|
|
19
|
+
updatedAt: Date;
|
|
20
|
+
}
|
|
21
|
+
export interface CreateStateInput {
|
|
22
|
+
projectId?: string;
|
|
23
|
+
name: string;
|
|
24
|
+
slug?: string;
|
|
25
|
+
color?: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
stateGroup: StateGroup;
|
|
28
|
+
isDefault?: boolean;
|
|
29
|
+
sequence?: number;
|
|
30
|
+
}
|
|
31
|
+
export interface UpdateStateInput {
|
|
32
|
+
name?: string;
|
|
33
|
+
slug?: string;
|
|
34
|
+
color?: string;
|
|
35
|
+
description?: string;
|
|
36
|
+
statusGroup?: StateGroup;
|
|
37
|
+
isDefault?: boolean;
|
|
38
|
+
sequence?: number;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Create a new state
|
|
42
|
+
*/
|
|
43
|
+
export declare function createState(input: CreateStateInput): Promise<State>;
|
|
44
|
+
/**
|
|
45
|
+
* Get a state by ID
|
|
46
|
+
*/
|
|
47
|
+
export declare function getState(id: string): Promise<State | null>;
|
|
48
|
+
/**
|
|
49
|
+
* List states for a project
|
|
50
|
+
*/
|
|
51
|
+
export declare function listStates(projectId?: string): Promise<State[]>;
|
|
52
|
+
/**
|
|
53
|
+
* Update a state
|
|
54
|
+
*/
|
|
55
|
+
export declare function updateState(id: string, input: UpdateStateInput): Promise<State>;
|
|
56
|
+
/**
|
|
57
|
+
* Delete a state
|
|
58
|
+
*/
|
|
59
|
+
export declare function deleteState(id: string): Promise<void>;
|
|
60
|
+
/**
|
|
61
|
+
* Initialize default states for a new project
|
|
62
|
+
*/
|
|
63
|
+
export declare function initializeProjectStates(projectId: string): Promise<State[]>;
|
|
64
|
+
//# sourceMappingURL=index.d.ts.map
|