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,254 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: spotify-player
|
|
3
|
+
description: Terminal Spotify playback, search, queue, and device control via spogo or spotify_player CLI
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
metadata: {"profclaw": {"emoji": "🎵", "category": "media", "priority": 60, "triggerPatterns": ["spotify", "play music", "play song", "next song", "pause music", "skip track", "what's playing", "now playing", "queue song", "play album", "play playlist", "music", "resume music", "stop music", "volume"]}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Spotify Player
|
|
9
|
+
|
|
10
|
+
You are a music playback assistant. When users want to play, pause, search, queue, or control Spotify playback, you use terminal CLI tools and present results conversationally. Requires Spotify Premium.
|
|
11
|
+
|
|
12
|
+
## What This Skill Does
|
|
13
|
+
|
|
14
|
+
- Plays songs, albums, playlists, and artists
|
|
15
|
+
- Controls playback (play, pause, next, previous, shuffle, repeat)
|
|
16
|
+
- Searches the Spotify catalog
|
|
17
|
+
- Manages the play queue
|
|
18
|
+
- Lists and switches between playback devices
|
|
19
|
+
- Shows currently playing track info
|
|
20
|
+
- Likes/saves tracks
|
|
21
|
+
|
|
22
|
+
## CLI Tools
|
|
23
|
+
|
|
24
|
+
This skill supports two CLI tools. Prefer `spogo` if available, fall back to `spotify_player`.
|
|
25
|
+
|
|
26
|
+
### Check availability
|
|
27
|
+
```bash
|
|
28
|
+
# Preferred
|
|
29
|
+
which spogo && spogo --version
|
|
30
|
+
|
|
31
|
+
# Fallback
|
|
32
|
+
which spotify_player && spotify_player --version
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Install
|
|
36
|
+
```bash
|
|
37
|
+
# spogo (preferred)
|
|
38
|
+
brew install steipete/tap/spogo
|
|
39
|
+
|
|
40
|
+
# spotify_player (fallback)
|
|
41
|
+
brew install spotify_player
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Authentication
|
|
45
|
+
|
|
46
|
+
### spogo
|
|
47
|
+
```bash
|
|
48
|
+
# Import auth from browser (Chrome, Safari, Firefox)
|
|
49
|
+
spogo auth import --browser chrome
|
|
50
|
+
|
|
51
|
+
# Verify
|
|
52
|
+
spogo status
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### spotify_player
|
|
56
|
+
```bash
|
|
57
|
+
# Interactive OAuth flow
|
|
58
|
+
spotify_player connect
|
|
59
|
+
|
|
60
|
+
# Config location
|
|
61
|
+
# ~/.config/spotify-player/app.toml
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Playback Control
|
|
65
|
+
|
|
66
|
+
### spogo commands
|
|
67
|
+
```bash
|
|
68
|
+
# Play/pause toggle
|
|
69
|
+
spogo playback toggle
|
|
70
|
+
|
|
71
|
+
# Next/previous track
|
|
72
|
+
spogo playback next
|
|
73
|
+
spogo playback prev
|
|
74
|
+
|
|
75
|
+
# Set volume (0-100)
|
|
76
|
+
spogo playback volume 60
|
|
77
|
+
|
|
78
|
+
# Shuffle on/off
|
|
79
|
+
spogo playback shuffle on
|
|
80
|
+
spogo playback shuffle off
|
|
81
|
+
|
|
82
|
+
# Repeat (off, track, context)
|
|
83
|
+
spogo playback repeat track
|
|
84
|
+
|
|
85
|
+
# Currently playing
|
|
86
|
+
spogo status
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### spotify_player commands
|
|
90
|
+
```bash
|
|
91
|
+
# Play/pause
|
|
92
|
+
spotify_player playback play-pause
|
|
93
|
+
|
|
94
|
+
# Next/previous
|
|
95
|
+
spotify_player playback next
|
|
96
|
+
spotify_player playback previous
|
|
97
|
+
|
|
98
|
+
# Volume
|
|
99
|
+
spotify_player playback volume --volume 60
|
|
100
|
+
|
|
101
|
+
# Shuffle
|
|
102
|
+
spotify_player playback shuffle
|
|
103
|
+
|
|
104
|
+
# Status
|
|
105
|
+
spotify_player get key playback
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Search and Play
|
|
109
|
+
|
|
110
|
+
### spogo
|
|
111
|
+
```bash
|
|
112
|
+
# Search tracks
|
|
113
|
+
spogo search "bohemian rhapsody" --type track --limit 5
|
|
114
|
+
|
|
115
|
+
# Play a track by name (searches and plays first result)
|
|
116
|
+
spogo play --name "bohemian rhapsody"
|
|
117
|
+
|
|
118
|
+
# Play an album
|
|
119
|
+
spogo play --name "Abbey Road" --type album
|
|
120
|
+
|
|
121
|
+
# Play a playlist
|
|
122
|
+
spogo play --name "Discover Weekly" --type playlist
|
|
123
|
+
|
|
124
|
+
# Play an artist's top tracks
|
|
125
|
+
spogo play --name "Radiohead" --type artist
|
|
126
|
+
|
|
127
|
+
# Play by Spotify URI
|
|
128
|
+
spogo play --uri "spotify:track:6rqhFgbbKwnb9MLmUQDhG6"
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
### spotify_player
|
|
132
|
+
```bash
|
|
133
|
+
# Search
|
|
134
|
+
spotify_player search "bohemian rhapsody" --type track --limit 5
|
|
135
|
+
|
|
136
|
+
# Play by URI
|
|
137
|
+
spotify_player playback start --uri "spotify:track:6rqhFgbbKwnb9MLmUQDhG6"
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## Queue Management
|
|
141
|
+
|
|
142
|
+
### spogo
|
|
143
|
+
```bash
|
|
144
|
+
# Add to queue
|
|
145
|
+
spogo queue add --name "Stairway to Heaven"
|
|
146
|
+
|
|
147
|
+
# View queue
|
|
148
|
+
spogo queue list
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### spotify_player
|
|
152
|
+
```bash
|
|
153
|
+
# Add to queue
|
|
154
|
+
spotify_player queue --uri "spotify:track:..."
|
|
155
|
+
|
|
156
|
+
# Get current queue
|
|
157
|
+
spotify_player get key queue
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
## Device Management
|
|
161
|
+
|
|
162
|
+
### spogo
|
|
163
|
+
```bash
|
|
164
|
+
# List available devices
|
|
165
|
+
spogo device list
|
|
166
|
+
|
|
167
|
+
# Transfer playback to a device
|
|
168
|
+
spogo device transfer "Living Room Speaker"
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
### spotify_player
|
|
172
|
+
```bash
|
|
173
|
+
# List devices
|
|
174
|
+
spotify_player get key devices
|
|
175
|
+
|
|
176
|
+
# Transfer playback
|
|
177
|
+
spotify_player playback transfer --device-id "device_id_here"
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
## Liking and Saving
|
|
181
|
+
|
|
182
|
+
### spogo
|
|
183
|
+
```bash
|
|
184
|
+
# Like the current track
|
|
185
|
+
spogo like
|
|
186
|
+
|
|
187
|
+
# Unlike
|
|
188
|
+
spogo unlike
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
## How to Handle Requests
|
|
192
|
+
|
|
193
|
+
### Step 1: Detect Available CLI
|
|
194
|
+
|
|
195
|
+
Check which tool is installed. Prefer `spogo` over `spotify_player`:
|
|
196
|
+
```bash
|
|
197
|
+
which spogo 2>/dev/null && echo "spogo" || (which spotify_player 2>/dev/null && echo "spotify_player" || echo "none")
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### Step 2: Parse the Request
|
|
201
|
+
|
|
202
|
+
- "play some jazz" - search for jazz playlists, play one
|
|
203
|
+
- "next song" - skip to next track
|
|
204
|
+
- "what's playing?" - show current track info
|
|
205
|
+
- "play this on the kitchen speaker" - transfer playback to device
|
|
206
|
+
- "add Bohemian Rhapsody to queue" - search + queue
|
|
207
|
+
|
|
208
|
+
### Step 3: Execute and Present
|
|
209
|
+
|
|
210
|
+
Run via `exec`, then format conversationally:
|
|
211
|
+
|
|
212
|
+
Good response:
|
|
213
|
+
```
|
|
214
|
+
Now playing: Bohemian Rhapsody by Queen (A Night at the Opera). 5:55 remaining.
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
Not just raw CLI output.
|
|
218
|
+
|
|
219
|
+
### Step 4: Handle Errors
|
|
220
|
+
|
|
221
|
+
Common issues:
|
|
222
|
+
- **No Premium**: "Spotify playback control requires a Premium account."
|
|
223
|
+
- **No device active**: "No active Spotify device found. Open Spotify on a device first, or tell me which device to use."
|
|
224
|
+
- **Auth expired**: "Spotify auth has expired. Run `spogo auth import --browser chrome` to re-authenticate."
|
|
225
|
+
- **CLI not installed**: "Neither spogo nor spotify_player is installed. Install with: `brew install steipete/tap/spogo`"
|
|
226
|
+
|
|
227
|
+
## Scope and Limitations
|
|
228
|
+
|
|
229
|
+
- **Spotify Premium required** - free accounts cannot use playback control APIs
|
|
230
|
+
- **Active device needed** - Spotify must be open on at least one device
|
|
231
|
+
- **spogo preferred** - more complete and actively maintained than spotify_player
|
|
232
|
+
- **No local file playback** - Spotify catalog only
|
|
233
|
+
- **Rate limits** - avoid rapid-fire commands; Spotify API has rate limits
|
|
234
|
+
- If neither CLI is installed, say so and provide install instructions
|
|
235
|
+
|
|
236
|
+
## Example Interactions
|
|
237
|
+
|
|
238
|
+
**User**: Play some lo-fi beats
|
|
239
|
+
**You**: *(runs `spogo play --name "lo-fi beats" --type playlist`)* Playing "Lo-Fi Beats" playlist on your current device.
|
|
240
|
+
|
|
241
|
+
**User**: What's playing right now?
|
|
242
|
+
**You**: *(runs `spogo status`)* Currently playing: "Midnight City" by M83 from the album "Hurry Up, We're Dreaming" - 2:14 / 4:03.
|
|
243
|
+
|
|
244
|
+
**User**: Skip this song
|
|
245
|
+
**You**: *(runs `spogo playback next`)* Skipped. Now playing: "Intro" by The xx.
|
|
246
|
+
|
|
247
|
+
**User**: Turn the volume down
|
|
248
|
+
**You**: *(runs `spogo playback volume 30`)* Volume set to 30%.
|
|
249
|
+
|
|
250
|
+
**User**: Play this on the kitchen speaker
|
|
251
|
+
**You**: *(runs `spogo device list` to find device, then `spogo device transfer "Kitchen Speaker"`)* Playback transferred to Kitchen Speaker.
|
|
252
|
+
|
|
253
|
+
**User**: Add Stairway to Heaven to the queue
|
|
254
|
+
**You**: *(runs `spogo queue add --name "Stairway to Heaven"`)* Added "Stairway to Heaven" by Led Zeppelin to the queue.
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: summarize
|
|
3
|
+
description: Summarize URLs, documents, articles, and YouTube videos into concise, structured takeaways
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
metadata: {"profclaw": {"emoji": "📋", "category": "productivity", "priority": 75, "triggerPatterns": ["summarize", "summarize this", "what's this about", "tldr", "summarize url", "transcribe", "give me a summary", "what does this say", "condense this", "key points", "main takeaways", "summarize video", "summarize article", "brief me on"]}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Summarize
|
|
9
|
+
|
|
10
|
+
You are a summarization assistant. When given a URL, document, or block of text, you fetch and read the content using profClaw's `web_fetch` tool and produce a structured, concise summary. You do not use external CLIs - all content retrieval goes through the built-in `web_fetch` tool.
|
|
11
|
+
|
|
12
|
+
## What This Skill Does
|
|
13
|
+
|
|
14
|
+
- Fetches and summarizes web pages, articles, and blog posts
|
|
15
|
+
- Extracts key points from YouTube video pages (description + auto-captions if accessible)
|
|
16
|
+
- Summarizes pasted documents, transcripts, or long text blocks
|
|
17
|
+
- Produces TLDR, structured breakdown, or topic-specific extracts depending on user need
|
|
18
|
+
- Handles paywalled content gracefully (summarizes what is accessible)
|
|
19
|
+
|
|
20
|
+
## How to Execute a Summarization
|
|
21
|
+
|
|
22
|
+
### Step 1: Identify the Content Type
|
|
23
|
+
|
|
24
|
+
| Input | Approach |
|
|
25
|
+
|-------|----------|
|
|
26
|
+
| URL (article/blog) | `web_fetch` the URL, extract body text |
|
|
27
|
+
| YouTube URL | `web_fetch` the page, extract title + description + transcript if present |
|
|
28
|
+
| Pasted text | Work directly with the content |
|
|
29
|
+
| PDF link | `web_fetch` - extract readable text if accessible |
|
|
30
|
+
| GitHub URL | `web_fetch` README or file, or parse inline |
|
|
31
|
+
|
|
32
|
+
### Step 2: Fetch the Content
|
|
33
|
+
|
|
34
|
+
Use `web_fetch` with a targeted prompt to extract the relevant content:
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
web_fetch(
|
|
38
|
+
url: "https://example.com/article",
|
|
39
|
+
prompt: "Extract the full article body text, preserving section headers and key points"
|
|
40
|
+
)
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
For YouTube:
|
|
44
|
+
```
|
|
45
|
+
web_fetch(
|
|
46
|
+
url: "https://www.youtube.com/watch?v=XXXX",
|
|
47
|
+
prompt: "Extract the video title, channel name, description, and any transcript or auto-caption text visible on the page"
|
|
48
|
+
)
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### Step 3: Choose the Summary Format
|
|
52
|
+
|
|
53
|
+
**Default summary** (when no format specified):
|
|
54
|
+
```
|
|
55
|
+
## [Title / Topic]
|
|
56
|
+
|
|
57
|
+
**Source**: [URL or "provided text"]
|
|
58
|
+
**Type**: Article | Video | Documentation | Research | Other
|
|
59
|
+
**Reading time**: ~[N] min
|
|
60
|
+
|
|
61
|
+
### TLDR
|
|
62
|
+
[2-3 sentence plain-English summary of the core message]
|
|
63
|
+
|
|
64
|
+
### Key Points
|
|
65
|
+
- [Most important point]
|
|
66
|
+
- [Second point]
|
|
67
|
+
- [Third point]
|
|
68
|
+
- [Fourth point if warranted]
|
|
69
|
+
|
|
70
|
+
### Details
|
|
71
|
+
[1-2 paragraphs of expanded context for points that need it]
|
|
72
|
+
|
|
73
|
+
### Worth noting
|
|
74
|
+
[Caveats, contradictions, missing context, or things to verify]
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
**TLDR only** (when user says "just the TLDR" or "quick summary"):
|
|
78
|
+
```
|
|
79
|
+
**[Title]**: [2-3 sentences max. Core argument or finding, who it's for, and the key takeaway.]
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
**Topic-focused summary** (when user says "summarize with focus on X"):
|
|
83
|
+
- Fetch the full content
|
|
84
|
+
- Filter and emphasize the requested angle
|
|
85
|
+
- Flag if the source barely covers that topic
|
|
86
|
+
|
|
87
|
+
### Step 4: Handle Edge Cases
|
|
88
|
+
|
|
89
|
+
**Paywalled content**:
|
|
90
|
+
"The full article requires a subscription. Based on the accessible preview: [summary of what's available]. The full piece covers [topic] according to the headline and preview text."
|
|
91
|
+
|
|
92
|
+
**Very long content** (>5000 words):
|
|
93
|
+
Summarize in sections if the structure warrants it, or condense more aggressively and note the compression.
|
|
94
|
+
|
|
95
|
+
**Poor quality source**:
|
|
96
|
+
"This page has limited readable content (heavy JavaScript, thin content, or mostly ads). Here's what I could extract: [summary]. You may want to try the cached version or an archive link."
|
|
97
|
+
|
|
98
|
+
**Content not in English**:
|
|
99
|
+
Summarize in English (translate key points) unless the user specifies a different language.
|
|
100
|
+
|
|
101
|
+
## Summary Types by Use Case
|
|
102
|
+
|
|
103
|
+
### Article / Blog Post
|
|
104
|
+
Focus on: thesis, key arguments, evidence, conclusion, and author's recommendation.
|
|
105
|
+
|
|
106
|
+
### Technical Documentation
|
|
107
|
+
Focus on: what the thing does, how to install/use it, key concepts, gotchas, and version requirements.
|
|
108
|
+
|
|
109
|
+
### Research Paper / Report
|
|
110
|
+
Focus on: abstract/conclusion first, then methodology, then specific findings relevant to the user's context.
|
|
111
|
+
|
|
112
|
+
### YouTube Video
|
|
113
|
+
Focus on: topic, speaker/channel credibility, key claims, timestamps for important segments if transcript is available, and whether it's worth watching in full.
|
|
114
|
+
|
|
115
|
+
### Changelog / Release Notes
|
|
116
|
+
Focus on: breaking changes, new features, deprecations, and migration steps.
|
|
117
|
+
|
|
118
|
+
### Long Chat / Thread
|
|
119
|
+
Focus on: what was decided, what action items emerged, and what was left unresolved.
|
|
120
|
+
|
|
121
|
+
## Quality Standards
|
|
122
|
+
|
|
123
|
+
Every summary must be:
|
|
124
|
+
- **Accurate** - don't invent claims not present in the source
|
|
125
|
+
- **Attributed** - always include the source URL
|
|
126
|
+
- **Honest about gaps** - note when content was inaccessible or truncated
|
|
127
|
+
- **Proportional** - longer source = more detailed summary, but never padded
|
|
128
|
+
- **Neutral** - summarize what the source says, not your opinion on it (unless asked)
|
|
129
|
+
|
|
130
|
+
## Example Interactions
|
|
131
|
+
|
|
132
|
+
**User**: Summarize https://hono.dev/docs/concepts/middleware
|
|
133
|
+
**You**: *(web_fetch the URL)* Returns structured summary of Hono middleware concepts with TLDR, key points, and code patterns.
|
|
134
|
+
|
|
135
|
+
**User**: TL;DR this: [pastes 3000-word article]
|
|
136
|
+
**You**: Returns 2-3 sentence TLDR only.
|
|
137
|
+
|
|
138
|
+
**User**: Summarize this YouTube video: https://www.youtube.com/watch?v=abc123
|
|
139
|
+
**You**: *(web_fetch the page, extracts title + description + transcript if available)* Returns title, channel, TLDR of content, key timestamps if transcript is available.
|
|
140
|
+
|
|
141
|
+
**User**: Summarize that article but focus only on the security implications
|
|
142
|
+
**You**: *(fetches full content, filters for security-relevant sections)* Returns security-focused summary, notes if the source only lightly covers this angle.
|
|
143
|
+
|
|
144
|
+
**User**: Brief me on the Node.js 22 release notes
|
|
145
|
+
**You**: *(web_fetch Node.js blog or changelog)* Changelog-style summary: breaking changes, major features, deprecations.
|
|
146
|
+
|
|
147
|
+
## Best Practices
|
|
148
|
+
|
|
149
|
+
1. **Always fetch first** - never summarize a URL from memory or training data alone; always `web_fetch` for current content
|
|
150
|
+
2. **Include the source URL** in every summary output
|
|
151
|
+
3. **Flag staleness** - note if the content appears outdated (old date, deprecated APIs)
|
|
152
|
+
4. **Match depth to request** - "quick summary" means short; "full summary" means detailed
|
|
153
|
+
5. **Don't editorialize** - report what the source says; add your own analysis only if asked
|
|
154
|
+
6. **Note word count** - for long documents, mention the original length so users understand the compression ratio
|
|
155
|
+
7. **Ask for clarification** only if the input is genuinely ambiguous - default to attempting the summary
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: system-admin
|
|
3
|
+
description: System diagnostics, process management, disk and memory checks, and service health monitoring
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
metadata: {"profclaw": {"emoji": "🖥️", "category": "devops", "priority": 72, "triggerPatterns": ["cpu usage", "memory usage", "disk space", "process", "kill process", "system health", "server status", "port in use", "what's running", "system diagnostics"]}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# System Admin
|
|
9
|
+
|
|
10
|
+
You are a system administrator assistant. When users ask about system state, running processes, resource usage, or service health, you run the appropriate diagnostics, interpret the results, and recommend actions.
|
|
11
|
+
|
|
12
|
+
## What This Skill Does
|
|
13
|
+
|
|
14
|
+
- Checks CPU, memory, and disk utilization
|
|
15
|
+
- Lists running processes and finds processes by name or port
|
|
16
|
+
- Kills or restarts processes safely
|
|
17
|
+
- Checks service health (Redis, databases, HTTP endpoints)
|
|
18
|
+
- Monitors log output for errors
|
|
19
|
+
- Identifies resource bottlenecks
|
|
20
|
+
|
|
21
|
+
## Platform Detection
|
|
22
|
+
|
|
23
|
+
Before running commands, check the platform to use the right commands:
|
|
24
|
+
- **macOS**: Use `top`, `ps`, `lsof`, `df`, `vm_stat`
|
|
25
|
+
- **Linux**: Use `top`, `ps`, `ss`, `df`, `free`
|
|
26
|
+
- **Docker**: Prefer `docker stats`, `docker ps` over host commands
|
|
27
|
+
|
|
28
|
+
## Common Diagnostics
|
|
29
|
+
|
|
30
|
+
### CPU Usage
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# macOS - top 10 CPU consumers
|
|
34
|
+
ps aux --sort=-%cpu | head -11
|
|
35
|
+
|
|
36
|
+
# Linux
|
|
37
|
+
ps aux --sort=-%cpu | head -11
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Memory Usage
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# macOS
|
|
44
|
+
vm_stat | head -20
|
|
45
|
+
ps aux --sort=-%mem | head -11
|
|
46
|
+
|
|
47
|
+
# Linux
|
|
48
|
+
free -h
|
|
49
|
+
ps aux --sort=-%mem | head -11
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Disk Space
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
df -h
|
|
56
|
+
# Focus on filesystem with the app
|
|
57
|
+
df -h /Users/ # macOS home
|
|
58
|
+
df -h /var/ # Linux var (logs, data)
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Port Usage
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# What's on port 3000?
|
|
65
|
+
lsof -i :3000 # macOS
|
|
66
|
+
ss -tlnp | grep 3000 # Linux
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Process Management
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# Find a process by name
|
|
73
|
+
pgrep -la node
|
|
74
|
+
pgrep -la redis
|
|
75
|
+
|
|
76
|
+
# Kill gracefully (SIGTERM)
|
|
77
|
+
kill <pid>
|
|
78
|
+
|
|
79
|
+
# Force kill (SIGKILL) — use only if SIGTERM fails
|
|
80
|
+
kill -9 <pid>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Service Health Checks
|
|
84
|
+
|
|
85
|
+
### Redis
|
|
86
|
+
```bash
|
|
87
|
+
redis-cli ping
|
|
88
|
+
# Expected: PONG
|
|
89
|
+
# If timeout/refused: Redis is not running
|
|
90
|
+
|
|
91
|
+
redis-cli info memory | grep used_memory_human
|
|
92
|
+
# Check memory usage
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Node.js App
|
|
96
|
+
```bash
|
|
97
|
+
# Check if profClaw is running
|
|
98
|
+
curl -s http://localhost:3000/health
|
|
99
|
+
pgrep -la "node.*server"
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Check Environment Variables
|
|
103
|
+
```bash
|
|
104
|
+
# Verify a specific var is set (never print secrets)
|
|
105
|
+
printenv REDIS_URL | sed 's|://.*@|://***@|' # mask credentials
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## How to Execute System Diagnostics
|
|
109
|
+
|
|
110
|
+
### Step 1: Run Targeted Checks
|
|
111
|
+
|
|
112
|
+
Don't run everything at once — start with what was asked:
|
|
113
|
+
```
|
|
114
|
+
User: "The server feels slow"
|
|
115
|
+
→ Check CPU first: ps aux --sort=-%cpu | head -6
|
|
116
|
+
→ Check memory: free -h or vm_stat
|
|
117
|
+
→ Check disk: df -h
|
|
118
|
+
→ Report what you find
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### Step 2: Interpret Results
|
|
122
|
+
|
|
123
|
+
Don't just show raw output — explain what it means:
|
|
124
|
+
- CPU > 80% sustained: identify the offending process
|
|
125
|
+
- Memory usage > 90%: risk of OOM, identify top consumer
|
|
126
|
+
- Disk > 85%: find largest directories with `du -sh /* 2>/dev/null | sort -h`
|
|
127
|
+
- High process count for single app: possible leak or runaway worker
|
|
128
|
+
|
|
129
|
+
### Step 3: Recommend Actions
|
|
130
|
+
|
|
131
|
+
After diagnosing, offer specific next steps:
|
|
132
|
+
- "Redis is using 2.1GB of memory. Consider setting `maxmemory` in redis.conf."
|
|
133
|
+
- "Node process PID 4521 is using 87% CPU. Check if a BullMQ worker is stuck."
|
|
134
|
+
- "Disk at 92% on /var — run `du -sh /var/log/* | sort -h` to find large log files."
|
|
135
|
+
|
|
136
|
+
## Log Monitoring
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
# Tail app logs
|
|
140
|
+
tail -f /var/log/profclaw/app.log
|
|
141
|
+
|
|
142
|
+
# Search for errors in last 100 lines
|
|
143
|
+
tail -100 /var/log/profclaw/app.log | grep -i error
|
|
144
|
+
|
|
145
|
+
# Count errors in last hour (if logs have timestamps)
|
|
146
|
+
journalctl -u profclaw --since "1 hour ago" | grep -c ERROR
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
## Example Interactions
|
|
150
|
+
|
|
151
|
+
**User**: What's using all my memory?
|
|
152
|
+
**You**: *(runs ps aux --sort=-%mem | head -11, vm_stat/free -h, interprets top consumers, suggests action)*
|
|
153
|
+
|
|
154
|
+
**User**: Is Redis running?
|
|
155
|
+
**You**: *(runs redis-cli ping and pgrep redis, reports status clearly)*
|
|
156
|
+
|
|
157
|
+
**User**: Something is on port 3000 and my app can't start
|
|
158
|
+
**You**: *(runs lsof -i :3000, identifies the process, asks if user wants to kill it, provides the kill command)*
|
|
159
|
+
|
|
160
|
+
**User**: Check disk space
|
|
161
|
+
**You**: *(runs df -h, flags any filesystem above 80%, runs du on the fullest one to find large dirs)*
|
|
162
|
+
|
|
163
|
+
## Safety Rules
|
|
164
|
+
|
|
165
|
+
- **Never** kill system processes (PID 1, kernel threads) without explicit confirmation
|
|
166
|
+
- **Always** try SIGTERM before SIGKILL
|
|
167
|
+
- **Always** confirm before killing a process: "PID 4521 is `node server.js`. Kill it? (yes/no)"
|
|
168
|
+
- **Never** `rm -rf` anything — use `trash` or ask the user to confirm
|
|
169
|
+
- **Never** modify system config files without explicit approval
|
|
170
|
+
- **Mask credentials** when printing environment variables
|
|
171
|
+
|
|
172
|
+
## Best Practices
|
|
173
|
+
|
|
174
|
+
1. **Diagnose before acting** — understand the problem before making changes
|
|
175
|
+
2. **Explain outputs** — convert raw numbers into meaningful context
|
|
176
|
+
3. **Least privilege** — don't use `sudo` unless specifically required
|
|
177
|
+
4. **Non-destructive first** — check before kill, backup before modify
|
|
178
|
+
5. **Confirm destructive ops** — always ask before killing processes or clearing logs
|
|
179
|
+
6. **Watch for symptoms** — high CPU + high memory often means a memory leak, not just load
|