@intent-systems/nexus 2026.1.5-3
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/CHANGELOG.md +222 -0
- package/LICENSE +21 -0
- package/README-header.png +0 -0
- package/README.md +462 -0
- package/dist/agents/agent-paths.js +16 -0
- package/dist/agents/agent-scope.js +44 -0
- package/dist/agents/auth-profiles.js +626 -0
- package/dist/agents/bash-process-registry.js +126 -0
- package/dist/agents/bash-tools.js +838 -0
- package/dist/agents/chutes-oauth.js +47 -0
- package/dist/agents/clawdbot-tools.js +62 -0
- package/dist/agents/context.js +34 -0
- package/dist/agents/defaults.js +6 -0
- package/dist/agents/memory-search.js +80 -0
- package/dist/agents/model-auth.js +115 -0
- package/dist/agents/model-catalog.js +55 -0
- package/dist/agents/model-fallback.js +210 -0
- package/dist/agents/model-scan.js +263 -0
- package/dist/agents/model-selection.js +152 -0
- package/dist/agents/models-config.js +171 -0
- package/dist/agents/nexus-tools.js +46 -0
- package/dist/agents/pi-embedded-block-chunker.js +188 -0
- package/dist/agents/pi-embedded-helpers.js +139 -0
- package/dist/agents/pi-embedded-runner.js +932 -0
- package/dist/agents/pi-embedded-subscribe.js +541 -0
- package/dist/agents/pi-embedded-utils.js +20 -0
- package/dist/agents/pi-embedded.js +1 -0
- package/dist/agents/pi-extensions/compaction-safeguard.js +140 -0
- package/dist/agents/pi-tool-definition-adapter.js +17 -0
- package/dist/agents/pi-tools.js +510 -0
- package/dist/agents/pi-tools.schema.js +358 -0
- package/dist/agents/sandbox-paths.js +68 -0
- package/dist/agents/sandbox.js +667 -0
- package/dist/agents/shell-utils.js +53 -0
- package/dist/agents/skill-runner.js +224 -0
- package/dist/agents/skill-state.js +164 -0
- package/dist/agents/skill-tools.js +191 -0
- package/dist/agents/skill-usage.js +43 -0
- package/dist/agents/skills-install.js +244 -0
- package/dist/agents/skills-status.js +157 -0
- package/dist/agents/skills.js +472 -0
- package/dist/agents/subagent-registry.js +321 -0
- package/dist/agents/subagent-registry.store.js +47 -0
- package/dist/agents/system-prompt.js +179 -0
- package/dist/agents/timeout.js +26 -0
- package/dist/agents/tool-display.js +155 -0
- package/dist/agents/tool-display.json +236 -0
- package/dist/agents/tool-images.js +138 -0
- package/dist/agents/tool-policy.js +87 -0
- package/dist/agents/tools/agent-step.js +41 -0
- package/dist/agents/tools/browser-tool.js +295 -0
- package/dist/agents/tools/canvas-tool.js +193 -0
- package/dist/agents/tools/common.js +88 -0
- package/dist/agents/tools/cron-tool.js +141 -0
- package/dist/agents/tools/discord-actions-guild.js +186 -0
- package/dist/agents/tools/discord-actions-messaging.js +313 -0
- package/dist/agents/tools/discord-actions-moderation.js +70 -0
- package/dist/agents/tools/discord-actions.js +56 -0
- package/dist/agents/tools/discord-schema.js +199 -0
- package/dist/agents/tools/discord-tool.js +16 -0
- package/dist/agents/tools/gateway-tool.js +46 -0
- package/dist/agents/tools/gateway.js +28 -0
- package/dist/agents/tools/image-tool.js +140 -0
- package/dist/agents/tools/memory-tool.js +92 -0
- package/dist/agents/tools/nodes-tool.js +413 -0
- package/dist/agents/tools/nodes-utils.js +92 -0
- package/dist/agents/tools/sessions-announce-target.js +35 -0
- package/dist/agents/tools/sessions-helpers.js +88 -0
- package/dist/agents/tools/sessions-history-tool.js +137 -0
- package/dist/agents/tools/sessions-list-tool.js +196 -0
- package/dist/agents/tools/sessions-send-helpers.js +103 -0
- package/dist/agents/tools/sessions-send-tool.js +371 -0
- package/dist/agents/tools/sessions-spawn-tool.js +319 -0
- package/dist/agents/tools/slack-actions.js +129 -0
- package/dist/agents/tools/slack-schema.js +59 -0
- package/dist/agents/tools/slack-tool.js +16 -0
- package/dist/agents/tools/telegram-actions.js +159 -0
- package/dist/agents/tools/telegram-schema.js +28 -0
- package/dist/agents/tools/telegram-tool.js +16 -0
- package/dist/agents/tools/whatsapp-login-tool.js +63 -0
- package/dist/agents/usage.js +58 -0
- package/dist/agents/workspace.js +264 -0
- package/dist/auto-reply/chunk.js +177 -0
- package/dist/auto-reply/command-auth.js +44 -0
- package/dist/auto-reply/command-detection.js +22 -0
- package/dist/auto-reply/envelope.js +30 -0
- package/dist/auto-reply/group-activation.js +20 -0
- package/dist/auto-reply/heartbeat.js +58 -0
- package/dist/auto-reply/model.js +22 -0
- package/dist/auto-reply/reply/abort.js +14 -0
- package/dist/auto-reply/reply/agent-runner.js +426 -0
- package/dist/auto-reply/reply/bash-command.js +314 -0
- package/dist/auto-reply/reply/block-streaming.js +34 -0
- package/dist/auto-reply/reply/body.js +29 -0
- package/dist/auto-reply/reply/commands.js +332 -0
- package/dist/auto-reply/reply/directive-handling.js +626 -0
- package/dist/auto-reply/reply/directives.js +59 -0
- package/dist/auto-reply/reply/dispatch-from-config.js +23 -0
- package/dist/auto-reply/reply/followup-runner.js +181 -0
- package/dist/auto-reply/reply/groups.js +152 -0
- package/dist/auto-reply/reply/mentions.js +64 -0
- package/dist/auto-reply/reply/model-selection.js +209 -0
- package/dist/auto-reply/reply/queue.js +399 -0
- package/dist/auto-reply/reply/reply-dispatcher.js +68 -0
- package/dist/auto-reply/reply/reply-tags.js +26 -0
- package/dist/auto-reply/reply/session-updates.js +103 -0
- package/dist/auto-reply/reply/session.js +169 -0
- package/dist/auto-reply/reply/typing.js +125 -0
- package/dist/auto-reply/reply.js +655 -0
- package/dist/auto-reply/send-policy.js +28 -0
- package/dist/auto-reply/status.js +197 -0
- package/dist/auto-reply/templating.js +9 -0
- package/dist/auto-reply/thinking.js +49 -0
- package/dist/auto-reply/tokens.js +2 -0
- package/dist/auto-reply/tool-meta.js +74 -0
- package/dist/auto-reply/transcription.js +57 -0
- package/dist/auto-reply/types.js +1 -0
- package/dist/browser/bridge-server.js +37 -0
- package/dist/browser/cdp.js +382 -0
- package/dist/browser/chrome.js +432 -0
- package/dist/browser/client-actions-core.js +67 -0
- package/dist/browser/client-actions-observe.js +24 -0
- package/dist/browser/client-actions-types.js +1 -0
- package/dist/browser/client-actions.js +3 -0
- package/dist/browser/client-fetch.js +43 -0
- package/dist/browser/client.js +105 -0
- package/dist/browser/config.js +155 -0
- package/dist/browser/constants.js +5 -0
- package/dist/browser/profiles-service.js +124 -0
- package/dist/browser/profiles.js +96 -0
- package/dist/browser/pw-ai.js +2 -0
- package/dist/browser/pw-session.js +144 -0
- package/dist/browser/pw-tools-core.js +363 -0
- package/dist/browser/routes/agent.js +535 -0
- package/dist/browser/routes/basic.js +155 -0
- package/dist/browser/routes/index.js +8 -0
- package/dist/browser/routes/tabs.js +105 -0
- package/dist/browser/routes/utils.js +62 -0
- package/dist/browser/screenshot.js +40 -0
- package/dist/browser/server-context.js +377 -0
- package/dist/browser/server.js +81 -0
- package/dist/browser/target-id.js +18 -0
- package/dist/browser/trash.js +21 -0
- package/dist/canvas-host/a2ui/a2ui.bundle.js +17768 -0
- package/dist/canvas-host/a2ui/index.html +246 -0
- package/dist/canvas-host/a2ui.js +187 -0
- package/dist/canvas-host/server.js +382 -0
- package/dist/channel-web.js +8 -0
- package/dist/cli/browser-cli-actions-input.js +459 -0
- package/dist/cli/browser-cli-actions-observe.js +56 -0
- package/dist/cli/browser-cli-examples.js +31 -0
- package/dist/cli/browser-cli-inspect.js +97 -0
- package/dist/cli/browser-cli-manage.js +286 -0
- package/dist/cli/browser-cli-shared.js +1 -0
- package/dist/cli/browser-cli.js +26 -0
- package/dist/cli/canvas-cli.js +416 -0
- package/dist/cli/cloud-cli.js +336 -0
- package/dist/cli/credential-cli.js +227 -0
- package/dist/cli/cron-cli.js +454 -0
- package/dist/cli/deps.js +17 -0
- package/dist/cli/dns-cli.js +180 -0
- package/dist/cli/gateway-cli.js +665 -0
- package/dist/cli/gateway-rpc.js +20 -0
- package/dist/cli/hooks-cli.js +135 -0
- package/dist/cli/memory-cli.js +101 -0
- package/dist/cli/models-cli.js +248 -0
- package/dist/cli/nodes-camera.js +57 -0
- package/dist/cli/nodes-canvas.js +26 -0
- package/dist/cli/nodes-cli.js +946 -0
- package/dist/cli/nodes-screen.js +37 -0
- package/dist/cli/pairing-cli.js +100 -0
- package/dist/cli/parse-duration.js +20 -0
- package/dist/cli/plugins-cli.js +158 -0
- package/dist/cli/ports.js +97 -0
- package/dist/cli/profile.js +81 -0
- package/dist/cli/program.js +162 -0
- package/dist/cli/prompt.js +19 -0
- package/dist/cli/run-main.js +48 -0
- package/dist/cli/skills-cli.js +132 -0
- package/dist/cli/skills-hub-cli.js +1093 -0
- package/dist/cli/telegram-cli.js +56 -0
- package/dist/cli/tool-connector-cli.js +118 -0
- package/dist/cli/tui-cli.js +35 -0
- package/dist/cli/upstream-sync-cli.js +2833 -0
- package/dist/cli/usage-cli.js +24 -0
- package/dist/cli/wait.js +8 -0
- package/dist/commands/agent-via-gateway.js +115 -0
- package/dist/commands/agent.js +665 -0
- package/dist/commands/antigravity-oauth.js +327 -0
- package/dist/commands/auth-choice-options.js +80 -0
- package/dist/commands/auth-choice.js +134 -0
- package/dist/commands/auth-token.js +31 -0
- package/dist/commands/bootstrap-preset.js +214 -0
- package/dist/commands/capabilities.js +36 -0
- package/dist/commands/chutes-oauth.js +144 -0
- package/dist/commands/claude-md.js +137 -0
- package/dist/commands/config-view.js +11 -0
- package/dist/commands/configure.js +648 -0
- package/dist/commands/credential.js +236 -0
- package/dist/commands/cursor-rules.js +230 -0
- package/dist/commands/doctor-state-migrations.js +358 -0
- package/dist/commands/doctor-ui.js +113 -0
- package/dist/commands/doctor.js +673 -0
- package/dist/commands/health.js +112 -0
- package/dist/commands/identity.js +54 -0
- package/dist/commands/init.js +167 -0
- package/dist/commands/models/aliases.js +85 -0
- package/dist/commands/models/fallbacks.js +123 -0
- package/dist/commands/models/image-fallbacks.js +123 -0
- package/dist/commands/models/list.js +347 -0
- package/dist/commands/models/scan.js +271 -0
- package/dist/commands/models/set-image.js +27 -0
- package/dist/commands/models/set.js +27 -0
- package/dist/commands/models/shared.js +73 -0
- package/dist/commands/models.js +7 -0
- package/dist/commands/onboard-auth.js +101 -0
- package/dist/commands/onboard-channels.js +814 -0
- package/dist/commands/onboard-eve-identity.js +98 -0
- package/dist/commands/onboard-github.js +153 -0
- package/dist/commands/onboard-helpers.js +303 -0
- package/dist/commands/onboard-interactive.js +17 -0
- package/dist/commands/onboard-non-interactive.js +228 -0
- package/dist/commands/onboard-providers.js +829 -0
- package/dist/commands/onboard-quickstart.js +185 -0
- package/dist/commands/onboard-remote.js +120 -0
- package/dist/commands/onboard-skills.js +148 -0
- package/dist/commands/onboard-types.js +1 -0
- package/dist/commands/onboard.js +19 -0
- package/dist/commands/openai-codex-model-default.js +38 -0
- package/dist/commands/poll.js +64 -0
- package/dist/commands/quest.js +27 -0
- package/dist/commands/reset.js +61 -0
- package/dist/commands/send.js +124 -0
- package/dist/commands/sessions-ingest.js +359 -0
- package/dist/commands/sessions.js +212 -0
- package/dist/commands/setup.js +59 -0
- package/dist/commands/signal-install.js +135 -0
- package/dist/commands/skills-manifest.js +235 -0
- package/dist/commands/status.js +139 -0
- package/dist/commands/suggestions.js +54 -0
- package/dist/commands/systemd-linger.js +71 -0
- package/dist/commands/update.js +16 -0
- package/dist/commands/usage-upload.js +27 -0
- package/dist/config/config.js +6 -0
- package/dist/config/defaults.js +140 -0
- package/dist/config/group-policy.js +49 -0
- package/dist/config/includes.js +183 -0
- package/dist/config/io.js +188 -0
- package/dist/config/legacy-migrate.js +13 -0
- package/dist/config/legacy.js +425 -0
- package/dist/config/paths.js +82 -0
- package/dist/config/port-defaults.js +32 -0
- package/dist/config/schema.js +173 -0
- package/dist/config/sessions.js +611 -0
- package/dist/config/talk.js +31 -0
- package/dist/config/types.js +1 -0
- package/dist/config/validation.js +29 -0
- package/dist/config/zod-schema.js +1110 -0
- package/dist/control-ui/assets/index-D8Q5AI4D.js +2393 -0
- package/dist/control-ui/assets/index-D8Q5AI4D.js.map +1 -0
- package/dist/control-ui/assets/index-g06q5Xc3.css +1 -0
- package/dist/control-ui/favicon.ico +0 -0
- package/dist/control-ui/index.html +16 -0
- package/dist/cron/isolated-agent.js +529 -0
- package/dist/cron/normalize.js +73 -0
- package/dist/cron/parse.js +24 -0
- package/dist/cron/run-log.js +72 -0
- package/dist/cron/schedule.js +24 -0
- package/dist/cron/service.js +471 -0
- package/dist/cron/store.js +43 -0
- package/dist/cron/types.js +1 -0
- package/dist/daemon/constants.js +10 -0
- package/dist/daemon/launchd.js +295 -0
- package/dist/daemon/legacy.js +63 -0
- package/dist/daemon/program-args.js +141 -0
- package/dist/daemon/schtasks.js +269 -0
- package/dist/daemon/service.js +69 -0
- package/dist/daemon/systemd.js +332 -0
- package/dist/discord/index.js +2 -0
- package/dist/discord/monitor.js +1089 -0
- package/dist/discord/probe.js +54 -0
- package/dist/discord/send.js +652 -0
- package/dist/discord/token.js +8 -0
- package/dist/entry.js +16 -0
- package/dist/gateway/auth.js +121 -0
- package/dist/gateway/call.js +103 -0
- package/dist/gateway/chat-attachments.js +41 -0
- package/dist/gateway/client.js +180 -0
- package/dist/gateway/config-reload.js +274 -0
- package/dist/gateway/control-ui.js +184 -0
- package/dist/gateway/hooks-mapping.js +282 -0
- package/dist/gateway/hooks.js +168 -0
- package/dist/gateway/net.js +29 -0
- package/dist/gateway/protocol/index.js +62 -0
- package/dist/gateway/protocol/schema.js +577 -0
- package/dist/gateway/server-bridge-subscriptions.js +93 -0
- package/dist/gateway/server-bridge.js +1066 -0
- package/dist/gateway/server-browser.js +11 -0
- package/dist/gateway/server-channels.js +680 -0
- package/dist/gateway/server-chat.js +159 -0
- package/dist/gateway/server-constants.js +8 -0
- package/dist/gateway/server-discovery.js +62 -0
- package/dist/gateway/server-http.js +165 -0
- package/dist/gateway/server-methods/agent-job.js +114 -0
- package/dist/gateway/server-methods/agent.js +254 -0
- package/dist/gateway/server-methods/channels.js +239 -0
- package/dist/gateway/server-methods/chat.js +207 -0
- package/dist/gateway/server-methods/config.js +50 -0
- package/dist/gateway/server-methods/connect.js +6 -0
- package/dist/gateway/server-methods/cron.js +89 -0
- package/dist/gateway/server-methods/health.js +28 -0
- package/dist/gateway/server-methods/models.js +16 -0
- package/dist/gateway/server-methods/nodes.js +294 -0
- package/dist/gateway/server-methods/providers.js +257 -0
- package/dist/gateway/server-methods/send.js +254 -0
- package/dist/gateway/server-methods/sessions.js +382 -0
- package/dist/gateway/server-methods/skills.js +83 -0
- package/dist/gateway/server-methods/system.js +118 -0
- package/dist/gateway/server-methods/talk.js +22 -0
- package/dist/gateway/server-methods/types.js +1 -0
- package/dist/gateway/server-methods/voicewake.js +30 -0
- package/dist/gateway/server-methods/web.js +81 -0
- package/dist/gateway/server-methods/wizard.js +100 -0
- package/dist/gateway/server-methods.js +53 -0
- package/dist/gateway/server-providers.js +687 -0
- package/dist/gateway/server-shared.js +1 -0
- package/dist/gateway/server-utils.js +35 -0
- package/dist/gateway/server.js +1478 -0
- package/dist/gateway/session-utils.js +355 -0
- package/dist/gateway/ws-log.js +343 -0
- package/dist/gateway/ws-logging.js +8 -0
- package/dist/globals.js +41 -0
- package/dist/hooks/gmail-ops.js +236 -0
- package/dist/hooks/gmail-setup-utils.js +278 -0
- package/dist/hooks/gmail-watcher.js +190 -0
- package/dist/hooks/gmail.js +177 -0
- package/dist/imessage/client.js +165 -0
- package/dist/imessage/index.js +3 -0
- package/dist/imessage/monitor.js +365 -0
- package/dist/imessage/probe.js +26 -0
- package/dist/imessage/send.js +83 -0
- package/dist/imessage/targets.js +176 -0
- package/dist/index.js +55 -0
- package/dist/infra/agent-events.js +46 -0
- package/dist/infra/binaries.js +9 -0
- package/dist/infra/bonjour-discovery.js +163 -0
- package/dist/infra/bonjour.js +200 -0
- package/dist/infra/bridge/server.js +564 -0
- package/dist/infra/canvas-host-url.js +54 -0
- package/dist/infra/channel-summary.js +78 -0
- package/dist/infra/control-ui-assets.js +112 -0
- package/dist/infra/dotenv.js +15 -0
- package/dist/infra/env.js +8 -0
- package/dist/infra/errors.js +28 -0
- package/dist/infra/event-log.js +251 -0
- package/dist/infra/gateway-lock.js +8 -0
- package/dist/infra/git-commit.js +91 -0
- package/dist/infra/heartbeat-events.js +21 -0
- package/dist/infra/heartbeat-runner.js +458 -0
- package/dist/infra/heartbeat-wake.js +61 -0
- package/dist/infra/is-main.js +37 -0
- package/dist/infra/json-file.js +21 -0
- package/dist/infra/machine-name.js +40 -0
- package/dist/infra/nexus-root.js +56 -0
- package/dist/infra/node-pairing.js +212 -0
- package/dist/infra/path-env.js +93 -0
- package/dist/infra/ports.js +87 -0
- package/dist/infra/provider-summary.js +80 -0
- package/dist/infra/provider-usage.auth.js +189 -0
- package/dist/infra/provider-usage.fetch.claude.js +129 -0
- package/dist/infra/provider-usage.fetch.codex.js +62 -0
- package/dist/infra/provider-usage.fetch.copilot.js +42 -0
- package/dist/infra/provider-usage.fetch.gemini.js +57 -0
- package/dist/infra/provider-usage.fetch.js +6 -0
- package/dist/infra/provider-usage.fetch.minimax.js +214 -0
- package/dist/infra/provider-usage.fetch.shared.js +11 -0
- package/dist/infra/provider-usage.fetch.zai.js +62 -0
- package/dist/infra/provider-usage.format.js +77 -0
- package/dist/infra/provider-usage.js +145 -0
- package/dist/infra/provider-usage.load.js +54 -0
- package/dist/infra/provider-usage.shared.js +19 -0
- package/dist/infra/provider-usage.types.js +1 -0
- package/dist/infra/restart.js +29 -0
- package/dist/infra/retry.js +16 -0
- package/dist/infra/runtime-guard.js +59 -0
- package/dist/infra/shell-env.js +88 -0
- package/dist/infra/system-events.js +71 -0
- package/dist/infra/system-presence.js +217 -0
- package/dist/infra/tailnet.js +46 -0
- package/dist/infra/tailscale.js +149 -0
- package/dist/infra/unhandled-rejections.js +19 -0
- package/dist/infra/usage-suggestions.js +241 -0
- package/dist/infra/usage-upload.js +290 -0
- package/dist/infra/voicewake.js +78 -0
- package/dist/infra/widearea-dns.js +123 -0
- package/dist/infra/ws.js +13 -0
- package/dist/logger.js +52 -0
- package/dist/logging.js +506 -0
- package/dist/macos/gateway-daemon.js +145 -0
- package/dist/macos/relay.js +49 -0
- package/dist/media/constants.js +33 -0
- package/dist/media/host.js +42 -0
- package/dist/media/image-ops.js +119 -0
- package/dist/media/mime.js +123 -0
- package/dist/media/parse.js +83 -0
- package/dist/media/server.js +64 -0
- package/dist/media/store.js +139 -0
- package/dist/polls.js +43 -0
- package/dist/process/command-queue.js +97 -0
- package/dist/process/exec.js +75 -0
- package/dist/provider-web.js +8 -0
- package/dist/providers/github-copilot-auth.js +123 -0
- package/dist/providers/github-copilot-models.js +35 -0
- package/dist/providers/github-copilot-token.js +11 -0
- package/dist/providers/location.js +48 -0
- package/dist/providers/web/index.js +2 -0
- package/dist/runtime.js +8 -0
- package/dist/sessions/level-overrides.js +9 -0
- package/dist/sessions/send-policy.js +68 -0
- package/dist/signal/client.js +134 -0
- package/dist/signal/daemon.js +69 -0
- package/dist/signal/index.js +3 -0
- package/dist/signal/monitor.js +411 -0
- package/dist/signal/probe.js +46 -0
- package/dist/signal/send.js +91 -0
- package/dist/slack/actions.js +97 -0
- package/dist/slack/index.js +5 -0
- package/dist/slack/monitor.js +1270 -0
- package/dist/slack/probe.js +47 -0
- package/dist/slack/send.js +131 -0
- package/dist/slack/token.js +10 -0
- package/dist/telegram/allowed-updates.js +8 -0
- package/dist/telegram/bot.js +724 -0
- package/dist/telegram/download.js +34 -0
- package/dist/telegram/index.js +4 -0
- package/dist/telegram/monitor.js +47 -0
- package/dist/telegram/pairing-store.js +77 -0
- package/dist/telegram/probe.js +63 -0
- package/dist/telegram/proxy.js +9 -0
- package/dist/telegram/reaction-level.js +45 -0
- package/dist/telegram/send.js +151 -0
- package/dist/telegram/sent-message-cache.js +65 -0
- package/dist/telegram/token.js +30 -0
- package/dist/telegram/update-offset-store.js +61 -0
- package/dist/telegram/webhook-set.js +12 -0
- package/dist/telegram/webhook.js +56 -0
- package/dist/tui/commands.js +87 -0
- package/dist/tui/components/assistant-message.js +16 -0
- package/dist/tui/components/chat-log.js +92 -0
- package/dist/tui/components/custom-editor.js +55 -0
- package/dist/tui/components/selectors.js +8 -0
- package/dist/tui/components/tool-execution.js +111 -0
- package/dist/tui/components/user-message.js +17 -0
- package/dist/tui/gateway-chat.js +140 -0
- package/dist/tui/theme/theme.js +80 -0
- package/dist/tui/tui.js +708 -0
- package/dist/utils.js +153 -0
- package/dist/version.js +18 -0
- package/dist/web/accounts.js +86 -0
- package/dist/web/active-listener.js +25 -0
- package/dist/web/auto-reply.js +1256 -0
- package/dist/web/inbound.js +649 -0
- package/dist/web/login-qr.js +230 -0
- package/dist/web/login.js +71 -0
- package/dist/web/media.js +175 -0
- package/dist/web/outbound.js +102 -0
- package/dist/web/qr-image.js +97 -0
- package/dist/web/reconnect.js +60 -0
- package/dist/web/session.js +370 -0
- package/dist/wizard/clack-prompter.js +56 -0
- package/dist/wizard/onboarding.js +620 -0
- package/dist/wizard/prompts.js +6 -0
- package/dist/wizard/session.js +203 -0
- package/docs/AGENTS.default.md +116 -0
- package/docs/CAPABILITIES.md +444 -0
- package/docs/CNAME +1 -0
- package/docs/NEXUS_CORE_REWRITE_SPEC.md +226 -0
- package/docs/RELEASING.md +69 -0
- package/docs/_config.yml +53 -0
- package/docs/_layouts/default.html +145 -0
- package/docs/agent-assisted-install.md +95 -0
- package/docs/agent-loop.md +61 -0
- package/docs/agent-send.md +21 -0
- package/docs/agent.md +108 -0
- package/docs/android.md +133 -0
- package/docs/architecture.md +114 -0
- package/docs/assets/markdown.css +133 -0
- package/docs/assets/pixel-lobster.svg +60 -0
- package/docs/assets/terminal.css +470 -0
- package/docs/assets/theme.js +55 -0
- package/docs/audio.md +48 -0
- package/docs/automation/nexus-sync.md +371 -0
- package/docs/background-process.md +74 -0
- package/docs/bash.md +32 -0
- package/docs/bedrock.md +71 -0
- package/docs/bonjour.md +159 -0
- package/docs/browser-linux-troubleshooting.md +114 -0
- package/docs/browser.md +293 -0
- package/docs/bun.md +56 -0
- package/docs/camera.md +152 -0
- package/docs/clawd.md +212 -0
- package/docs/concepts/usage-tracking.md +29 -0
- package/docs/configuration.md +1666 -0
- package/docs/control-ui.md +83 -0
- package/docs/cron.md +385 -0
- package/docs/dashboard.md +17 -0
- package/docs/device-models.md +46 -0
- package/docs/discord.md +308 -0
- package/docs/discovery.md +112 -0
- package/docs/docker.md +258 -0
- package/docs/docs.json +105 -0
- package/docs/doctor.md +68 -0
- package/docs/elevated.md +31 -0
- package/docs/faq.md +736 -0
- package/docs/feature-inventory/overview.md +141 -0
- package/docs/feature-inventory/rollout-checklist.md +53 -0
- package/docs/feature-inventory/test-matrix.md +87 -0
- package/docs/feature-inventory.md +9 -0
- package/docs/gateway/configuration-examples.md +221 -0
- package/docs/gateway/configuration.md +172 -0
- package/docs/gateway/cron.md +61 -0
- package/docs/gateway/heartbeat.md +207 -0
- package/docs/gateway/pairing.md +109 -0
- package/docs/gateway-lock.md +28 -0
- package/docs/gateway.md +227 -0
- package/docs/gmail-pubsub.md +191 -0
- package/docs/grammy.md +27 -0
- package/docs/group-messages.md +73 -0
- package/docs/groups.md +130 -0
- package/docs/health.md +28 -0
- package/docs/heartbeat.md +73 -0
- package/docs/home-userspace.md +277 -0
- package/docs/hubs.md +148 -0
- package/docs/images.md +51 -0
- package/docs/imessage.md +94 -0
- package/docs/index.md +196 -0
- package/docs/ios.md +372 -0
- package/docs/linux.md +11 -0
- package/docs/location-command.md +95 -0
- package/docs/location.md +46 -0
- package/docs/logging.md +110 -0
- package/docs/lore.md +131 -0
- package/docs/mac/bun.md +133 -0
- package/docs/mac/canvas.md +161 -0
- package/docs/mac/child-process.md +72 -0
- package/docs/mac/dev-setup.md +81 -0
- package/docs/mac/health.md +28 -0
- package/docs/mac/icon.md +26 -0
- package/docs/mac/logging.md +51 -0
- package/docs/mac/menu-bar.md +69 -0
- package/docs/mac/peekaboo.md +170 -0
- package/docs/mac/permissions.md +40 -0
- package/docs/mac/release.md +76 -0
- package/docs/mac/remote.md +57 -0
- package/docs/mac/signing.md +41 -0
- package/docs/mac/skills.md +27 -0
- package/docs/mac/voice-overlay.md +52 -0
- package/docs/mac/voicewake.md +56 -0
- package/docs/mac/webchat.md +27 -0
- package/docs/mac/xpc.md +40 -0
- package/docs/macos.md +104 -0
- package/docs/model-failover.md +75 -0
- package/docs/models.md +91 -0
- package/docs/multi-agent.md +74 -0
- package/docs/nix.md +95 -0
- package/docs/nodes.md +157 -0
- package/docs/onboarding-config-protocol.md +34 -0
- package/docs/onboarding.md +189 -0
- package/docs/pairing.md +85 -0
- package/docs/plans/cron-add-hardening.md +72 -0
- package/docs/plans/group-policy-hardening.md +121 -0
- package/docs/poll.md +52 -0
- package/docs/prereqs.md +67 -0
- package/docs/presence.md +133 -0
- package/docs/proposals/model-config.md +147 -0
- package/docs/provider-routing.md +25 -0
- package/docs/queue.md +78 -0
- package/docs/reference/templates/AGENTS.md +164 -0
- package/docs/remote-gateway-readme.md +153 -0
- package/docs/remote.md +61 -0
- package/docs/research/memory.md +227 -0
- package/docs/rpc.md +35 -0
- package/docs/security.md +200 -0
- package/docs/session-ingestion.md +119 -0
- package/docs/session-tool.md +154 -0
- package/docs/session.md +85 -0
- package/docs/sessions.md +8 -0
- package/docs/setup.md +131 -0
- package/docs/showcase.md +37 -0
- package/docs/signal.md +122 -0
- package/docs/skills-config.md +58 -0
- package/docs/skills.md +153 -0
- package/docs/slack.md +221 -0
- package/docs/subagents.md +72 -0
- package/docs/tailscale.md +71 -0
- package/docs/talk.md +79 -0
- package/docs/telegram.md +96 -0
- package/docs/templates/AGENTS.md +286 -0
- package/docs/templates/BOOTSTRAP.md +35 -0
- package/docs/templates/IDENTITY.md +17 -0
- package/docs/templates/PROFILE.md +14 -0
- package/docs/templates/SOUL.md +41 -0
- package/docs/templates/TOOLS.md +41 -0
- package/docs/templates/USER.md +8 -0
- package/docs/test.md +43 -0
- package/docs/testing-onboarding-quickstart.md +76 -0
- package/docs/testing-philosophy.md +211 -0
- package/docs/thinking.md +46 -0
- package/docs/timezone.md +40 -0
- package/docs/tools.md +346 -0
- package/docs/troubleshooting.md +257 -0
- package/docs/tui.md +71 -0
- package/docs/typebox.md +42 -0
- package/docs/updating.md +138 -0
- package/docs/usage-cloud-aggregation-spec.md +133 -0
- package/docs/usage-suggestions-pipeline.md +126 -0
- package/docs/voicewake.md +61 -0
- package/docs/web.md +115 -0
- package/docs/webchat.md +34 -0
- package/docs/webhook.md +132 -0
- package/docs/whatsapp-clawd.jpg +0 -0
- package/docs/whatsapp.md +170 -0
- package/docs/windows.md +11 -0
- package/docs/wizard.md +167 -0
- package/package.json +209 -0
- package/skills/1password/SKILL.md +54 -0
- package/skills/1password/docs/setup.md +85 -0
- package/skills/1password/docs/troubleshooting.md +63 -0
- package/skills/1password/references/cli-examples.md +29 -0
- package/skills/1password/references/get-started.md +17 -0
- package/skills/agent-browser/SKILL.md +450 -0
- package/skills/agent-browser/docs/browser-use-eval.md +95 -0
- package/skills/agent-browser/docs/first-tests.md +261 -0
- package/skills/agent-browser/docs/wordle-nyt-eval.js +32 -0
- package/skills/aix/SKILL.md +93 -0
- package/skills/aix/docs/embeddings.md +40 -0
- package/skills/aix/docs/setup.md +58 -0
- package/skills/aix/docs/troubleshooting.md +41 -0
- package/skills/aix/references/sql.md +48 -0
- package/skills/apple-notes/SKILL.md +50 -0
- package/skills/apple-reminders/SKILL.md +67 -0
- package/skills/bear-notes/SKILL.md +79 -0
- package/skills/bird/SKILL.md +32 -0
- package/skills/bird/docs/auth.md +31 -0
- package/skills/bird/docs/troubleshooting.md +31 -0
- package/skills/blogwatcher/SKILL.md +46 -0
- package/skills/blucli/SKILL.md +27 -0
- package/skills/brave-search/SKILL.md +36 -0
- package/skills/brave-search/docs/setup.md +40 -0
- package/skills/brave-search/docs/troubleshooting.md +37 -0
- package/skills/brave-search/docs/usage.md +28 -0
- package/skills/brave-search/scripts/content.mjs +53 -0
- package/skills/brave-search/scripts/search.mjs +79 -0
- package/skills/browser-use-agent-sdk/SKILL.md +90 -0
- package/skills/camsnap/SKILL.md +25 -0
- package/skills/clawdhub/SKILL.md +53 -0
- package/skills/coding-agent/SKILL.md +274 -0
- package/skills/comms/SKILL.md +249 -0
- package/skills/comms/docs/adapters.md +54 -0
- package/skills/comms/docs/setup.md +56 -0
- package/skills/comms/docs/troubleshooting.md +44 -0
- package/skills/comms/references/schema.md +49 -0
- package/skills/computer-use/SKILL.md +204 -0
- package/skills/computer-use/docs/open-interpreter.md +26 -0
- package/skills/computer-use/docs/peekaboo.md +26 -0
- package/skills/computer-use/docs/setup.md +47 -0
- package/skills/computer-use/docs/troubleshooting.md +33 -0
- package/skills/discord/SKILL.md +370 -0
- package/skills/eightctl/SKILL.md +29 -0
- package/skills/eve/SKILL.md +215 -0
- package/skills/eve/docs/dual-account.md +84 -0
- package/skills/eve/docs/intelligence.md +58 -0
- package/skills/eve/docs/setup.md +60 -0
- package/skills/eve/docs/troubleshooting.md +54 -0
- package/skills/eve/scripts/setup-dual-account.sh +125 -0
- package/skills/filesystem/SKILL.md +217 -0
- package/skills/food-order/SKILL.md +41 -0
- package/skills/gemini/SKILL.md +23 -0
- package/skills/gh/SKILL.md +22 -0
- package/skills/gh/docs/usage.md +41 -0
- package/skills/gifgrep/SKILL.md +47 -0
- package/skills/github/SKILL.md +26 -0
- package/skills/github/docs/setup.md +21 -0
- package/skills/github/docs/troubleshooting.md +24 -0
- package/skills/gog/SKILL.md +104 -0
- package/skills/gog/docs/portability.md +94 -0
- package/skills/gog/docs/setup.md +76 -0
- package/skills/gog/docs/troubleshooting.md +94 -0
- package/skills/gog/scripts/cdp/README.md +90 -0
- package/skills/gog/scripts/cdp/add_test_users.py +69 -0
- package/skills/gog/scripts/cdp/auth_add_accounts.py +209 -0
- package/skills/gog/scripts/cdp/auth_add_accounts_manual.py +206 -0
- package/skills/gog/scripts/cdp/create_oauth_client.py +165 -0
- package/skills/gog/scripts/cdp/launch_cdp_chrome.sh +58 -0
- package/skills/google-oauth/SKILL.md +94 -0
- package/skills/goplaces/SKILL.md +30 -0
- package/skills/imsg/SKILL.md +25 -0
- package/skills/json-render/SKILL.md +154 -0
- package/skills/json-render/assets/components/README.md +21 -0
- package/skills/json-render/assets/components/catalog.ts +78 -0
- package/skills/json-render/assets/components/registry.tsx +172 -0
- package/skills/json-render/assets/demo/App.css +397 -0
- package/skills/json-render/assets/demo/App.tsx +897 -0
- package/skills/json-render/assets/demo/README.md +22 -0
- package/skills/json-render/assets/demo/catalog.ts +78 -0
- package/skills/json-render/assets/demo/data/nexus-core.json +31 -0
- package/skills/json-render/assets/demo/index.css +27 -0
- package/skills/json-render/assets/demo/registry.tsx +150 -0
- package/skills/json-render/docs/nexus-state-demo.md +84 -0
- package/skills/json-render/docs/shadcn-preset.md +33 -0
- package/skills/json-render/scripts/create-vite-demo.sh +45 -0
- package/skills/json-render/scripts/llm-server/README.md +33 -0
- package/skills/json-render/scripts/llm-server/catalog.ts +78 -0
- package/skills/json-render/scripts/llm-server/package-lock.json +702 -0
- package/skills/json-render/scripts/llm-server/package.json +18 -0
- package/skills/json-render/scripts/llm-server/server.ts +285 -0
- package/skills/local-places/SERVER_README.md +101 -0
- package/skills/local-places/SKILL.md +91 -0
- package/skills/local-places/pyproject.toml +27 -0
- package/skills/local-places/src/local_places/__init__.py +2 -0
- package/skills/local-places/src/local_places/__pycache__/__init__.cpython-314.pyc +0 -0
- package/skills/local-places/src/local_places/__pycache__/google_places.cpython-314.pyc +0 -0
- package/skills/local-places/src/local_places/__pycache__/main.cpython-314.pyc +0 -0
- package/skills/local-places/src/local_places/__pycache__/schemas.cpython-314.pyc +0 -0
- package/skills/local-places/src/local_places/google_places.py +314 -0
- package/skills/local-places/src/local_places/main.py +65 -0
- package/skills/local-places/src/local_places/schemas.py +107 -0
- package/skills/mcporter/SKILL.md +38 -0
- package/skills/model-usage/SKILL.md +45 -0
- package/skills/model-usage/references/codexbar-cli.md +28 -0
- package/skills/model-usage/scripts/model_usage.py +310 -0
- package/skills/nano-banana-pro/SKILL.md +30 -0
- package/skills/nano-banana-pro/scripts/generate_image.py +169 -0
- package/skills/nano-pdf/SKILL.md +20 -0
- package/skills/nexus-cloud/SKILL.md +53 -0
- package/skills/nexus-cloud/docs/security.md +24 -0
- package/skills/nexus-cloud/docs/setup.md +51 -0
- package/skills/nexus-cloud/docs/troubleshooting.md +28 -0
- package/skills/notion/SKILL.md +156 -0
- package/skills/obsidian/SKILL.md +55 -0
- package/skills/onboarding/SKILL.md +515 -0
- package/skills/onboarding/docs/CAPABILITIES.md +444 -0
- package/skills/onboarding/docs/CAPABILITY_TAXONOMY.md +608 -0
- package/skills/onboarding/docs/CLI_GRAMMAR.md +797 -0
- package/skills/onboarding/docs/CLI_GRAMMAR_CREDENTIALS.md +632 -0
- package/skills/onboarding/docs/CLI_GRAMMAR_ONBOARDING.md +815 -0
- package/skills/onboarding/docs/CLI_GRAMMAR_SKILLS.md +449 -0
- package/skills/onboarding/docs/DOCUMENTATION_OVERVIEW.md +290 -0
- package/skills/onboarding/docs/ENTITY_MODEL.md +582 -0
- package/skills/onboarding/docs/GOAL_STATE_ARCHITECTURE.md +395 -0
- package/skills/onboarding/docs/NEXUS_SYSTEM_OVERVIEW.md +476 -0
- package/skills/onboarding/docs/SKILLS_HUB_SPEC.md +477 -0
- package/skills/onboarding/docs/SKILLS_SPECIFICATION.md +947 -0
- package/skills/onboarding/docs/SKILL_GATEWAY_DESIGN.md +702 -0
- package/skills/onboarding/docs/SKILL_GATEWAY_PRD.md +278 -0
- package/skills/onboarding/docs/SKILL_INVENTORY.md +266 -0
- package/skills/onboarding/docs/STATE_ARCHITECTURE.md +547 -0
- package/skills/onboarding/docs/TROUBLESHOOTING.md +363 -0
- package/skills/onboarding/docs/USER_JOURNEY.md +797 -0
- package/skills/onboarding/docs/WOW_MOMENTS.md +232 -0
- package/skills/onboarding/docs/agent-apple-id.md +289 -0
- package/skills/onboarding/docs/skill-deep-dives/1password.md +367 -0
- package/skills/onboarding/docs/skill-deep-dives/TEMPLATE.md +197 -0
- package/skills/onboarding/docs/skill-deep-dives/aix.md +498 -0
- package/skills/onboarding/docs/skill-deep-dives/bird.md +357 -0
- package/skills/onboarding/docs/skill-deep-dives/brave-search.md +601 -0
- package/skills/onboarding/docs/skill-deep-dives/comms.md +607 -0
- package/skills/onboarding/docs/skill-deep-dives/computer-use.md +599 -0
- package/skills/onboarding/docs/skill-deep-dives/cron-and-heartbeat.md +576 -0
- package/skills/onboarding/docs/skill-deep-dives/eve.md +711 -0
- package/skills/onboarding/docs/skill-deep-dives/github.md +333 -0
- package/skills/onboarding/docs/skill-deep-dives/gog.md +640 -0
- package/skills/onboarding/docs/skill-deep-dives/homebrew-prereqs.md +785 -0
- package/skills/onboarding/docs/skill-deep-dives/nexus-cloud.md +689 -0
- package/skills/onboarding/docs/skill-deep-dives/qmd.md +742 -0
- package/skills/onboarding/docs/skill-deep-dives/telegram.md +379 -0
- package/skills/onboarding/docs/skill-deep-dives/wacli.md +399 -0
- package/skills/onboarding/docs/skill-deep-dives/weather.md +513 -0
- package/skills/onboarding/scripts/ralph/prd.json +215 -0
- package/skills/onboarding/scripts/ralph/progress.txt +99 -0
- package/skills/onboarding/scripts/ralph/prompt.md +87 -0
- package/skills/onboarding/scripts/ralph/ralph.log +84 -0
- package/skills/onboarding/scripts/ralph/ralph.sh +45 -0
- package/skills/onboarding/scripts/setup-cursor-skills.sh +40 -0
- package/skills/openai-image-gen/SKILL.md +31 -0
- package/skills/openai-image-gen/scripts/gen.py +173 -0
- package/skills/openai-whisper/SKILL.md +19 -0
- package/skills/openai-whisper-api/SKILL.md +43 -0
- package/skills/openai-whisper-api/scripts/transcribe.sh +85 -0
- package/skills/openhue/SKILL.md +30 -0
- package/skills/oracle/SKILL.md +105 -0
- package/skills/ordercli/SKILL.md +47 -0
- package/skills/peekaboo/SKILL.md +153 -0
- package/skills/qmd/SKILL.md +32 -0
- package/skills/qmd/docs/mcp.md +30 -0
- package/skills/qmd/docs/ollama.md +42 -0
- package/skills/qmd/docs/setup.md +44 -0
- package/skills/sag/SKILL.md +62 -0
- package/skills/skill-cli-template/SKILL.md +109 -0
- package/skills/skill-creator/scripts/__pycache__/quick_validate.cpython-311.pyc +0 -0
- package/skills/slack/SKILL.md +144 -0
- package/skills/songsee/SKILL.md +29 -0
- package/skills/sonoscli/SKILL.md +26 -0
- package/skills/spotify-player/SKILL.md +34 -0
- package/skills/summarize/SKILL.md +49 -0
- package/skills/telegram/SKILL.md +20 -0
- package/skills/telegram/docs/pairing.md +30 -0
- package/skills/telegram/docs/setup.md +41 -0
- package/skills/telegram/docs/webhook.md +17 -0
- package/skills/things-mac/SKILL.md +61 -0
- package/skills/tmux/SKILL.md +121 -0
- package/skills/tmux/scripts/find-sessions.sh +112 -0
- package/skills/tmux/scripts/wait-for-text.sh +83 -0
- package/skills/trello/SKILL.md +84 -0
- package/skills/upstream-sync/SKILL.md +151 -0
- package/skills/upstream-sync/scripts/auto-port.sh +227 -0
- package/skills/upstream-sync/scripts/check-all.sh +88 -0
- package/skills/upstream-sync/scripts/check-nexus.sh +146 -0
- package/skills/upstream-sync/scripts/check-pi-ai.sh +129 -0
- package/skills/video-frames/SKILL.md +29 -0
- package/skills/video-frames/scripts/frame.sh +81 -0
- package/skills/wacli/SKILL.md +48 -0
- package/skills/wacli/docs/auth.md +21 -0
- package/skills/wacli/docs/backup.md +9 -0
- package/skills/wacli/docs/troubleshooting.md +21 -0
- package/skills/weather/SKILL.md +53 -0
- package/skills/weather/docs/usage.md +40 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bear-notes
|
|
3
|
+
description: Create, search, and manage Bear notes via grizzly CLI.
|
|
4
|
+
homepage: https://bear.app
|
|
5
|
+
metadata: {"nexus":{"emoji":"🐻","os":["darwin"],"requires":{"bins":["grizzly"]},"install":[{"id":"go","kind":"go","module":"github.com/tylerwince/grizzly/cmd/grizzly@latest","bins":["grizzly"],"label":"Install grizzly (go)"}]}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Bear Notes
|
|
9
|
+
|
|
10
|
+
Use `grizzly` to create, read, and manage notes in Bear on macOS.
|
|
11
|
+
|
|
12
|
+
Requirements
|
|
13
|
+
- Bear app installed and running
|
|
14
|
+
- For some operations (add-text, tags, open-note --selected), a Bear app token (stored in `~/.config/grizzly/token`)
|
|
15
|
+
|
|
16
|
+
## Getting a Bear Token
|
|
17
|
+
|
|
18
|
+
For operations that require a token (add-text, tags, open-note --selected), you need an authentication token:
|
|
19
|
+
1. Open Bear → Help → API Token → Copy Token
|
|
20
|
+
2. Save it: `echo "YOUR_TOKEN" > ~/.config/grizzly/token`
|
|
21
|
+
|
|
22
|
+
## Common Commands
|
|
23
|
+
|
|
24
|
+
Create a note
|
|
25
|
+
```bash
|
|
26
|
+
echo "Note content here" | grizzly create --title "My Note" --tag work
|
|
27
|
+
grizzly create --title "Quick Note" --tag inbox < /dev/null
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Open/read a note by ID
|
|
31
|
+
```bash
|
|
32
|
+
grizzly open-note --id "NOTE_ID" --enable-callback --json
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Append text to a note
|
|
36
|
+
```bash
|
|
37
|
+
echo "Additional content" | grizzly add-text --id "NOTE_ID" --mode append --token-file ~/.config/grizzly/token
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
List all tags
|
|
41
|
+
```bash
|
|
42
|
+
grizzly tags --enable-callback --json --token-file ~/.config/grizzly/token
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Search notes (via open-tag)
|
|
46
|
+
```bash
|
|
47
|
+
grizzly open-tag --name "work" --enable-callback --json
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Options
|
|
51
|
+
|
|
52
|
+
Common flags:
|
|
53
|
+
- `--dry-run` — Preview the URL without executing
|
|
54
|
+
- `--print-url` — Show the x-callback-url
|
|
55
|
+
- `--enable-callback` — Wait for Bear's response (needed for reading data)
|
|
56
|
+
- `--json` — Output as JSON (when using callbacks)
|
|
57
|
+
- `--token-file PATH` — Path to Bear API token file
|
|
58
|
+
|
|
59
|
+
## Configuration
|
|
60
|
+
|
|
61
|
+
Grizzly reads config from (in priority order):
|
|
62
|
+
1. CLI flags
|
|
63
|
+
2. Environment variables (`GRIZZLY_TOKEN_FILE`, `GRIZZLY_CALLBACK_URL`, `GRIZZLY_TIMEOUT`)
|
|
64
|
+
3. `.grizzly.toml` in current directory
|
|
65
|
+
4. `~/.config/grizzly/config.toml`
|
|
66
|
+
|
|
67
|
+
Example `~/.config/grizzly/config.toml`:
|
|
68
|
+
```toml
|
|
69
|
+
token_file = "~/.config/grizzly/token"
|
|
70
|
+
callback_url = "http://127.0.0.1:42123/success"
|
|
71
|
+
timeout = "5s"
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Notes
|
|
75
|
+
|
|
76
|
+
- Bear must be running for commands to work
|
|
77
|
+
- Note IDs are Bear's internal identifiers (visible in note info or via callbacks)
|
|
78
|
+
- Use `--enable-callback` when you need to read data back from Bear
|
|
79
|
+
- Some operations require a valid token (add-text, tags, open-note --selected)
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bird
|
|
3
|
+
description: X/Twitter CLI for reading, searching, and posting via cookies or Sweetistics.
|
|
4
|
+
homepage: https://bird.fast
|
|
5
|
+
metadata: {"nexus":{"emoji":"🐦","requires":{"bins":["bird"]},"install":[{"id":"brew","kind":"brew","formula":"steipete/tap/bird","bins":["bird"],"label":"Install bird (brew)"}]}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# bird
|
|
9
|
+
|
|
10
|
+
Use `bird` to read/search X and post tweets/replies.
|
|
11
|
+
|
|
12
|
+
## Docs
|
|
13
|
+
|
|
14
|
+
- `docs/auth.md`
|
|
15
|
+
- `docs/troubleshooting.md`
|
|
16
|
+
|
|
17
|
+
Quick start
|
|
18
|
+
- `bird check`
|
|
19
|
+
- `bird whoami`
|
|
20
|
+
- `bird read <url-or-id>`
|
|
21
|
+
- `bird thread <url-or-id>`
|
|
22
|
+
- `bird search "query" -n 5`
|
|
23
|
+
- `bird timeline -n 10`
|
|
24
|
+
|
|
25
|
+
Posting (confirm with user first)
|
|
26
|
+
- `bird tweet "text"`
|
|
27
|
+
- `bird reply <id-or-url> "text"`
|
|
28
|
+
|
|
29
|
+
Auth sources
|
|
30
|
+
- Browser cookies (default: Firefox/Chrome)
|
|
31
|
+
- Sweetistics API: set `SWEETISTICS_API_KEY` or use `--engine sweetistics`
|
|
32
|
+
- Check sources: `bird check`
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# bird Authentication
|
|
2
|
+
|
|
3
|
+
bird can authenticate via browser cookies (free) or Sweetistics (API key).
|
|
4
|
+
|
|
5
|
+
## Option 1: Browser cookies (recommended)
|
|
6
|
+
|
|
7
|
+
1. Log into X in Chrome or Firefox.
|
|
8
|
+
2. Run:
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
bird check
|
|
12
|
+
bird whoami
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
`bird check` should show Chrome/Firefox cookies as available.
|
|
16
|
+
|
|
17
|
+
## Option 2: Sweetistics API
|
|
18
|
+
|
|
19
|
+
If cookies are unavailable or unreliable:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
export SWEETISTICS_API_KEY="your-api-key"
|
|
23
|
+
bird --engine sweetistics whoami
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Persist in your shell profile if desired.
|
|
27
|
+
|
|
28
|
+
## Notes
|
|
29
|
+
|
|
30
|
+
- Cookie auth reads your browser session; it does not store passwords.
|
|
31
|
+
- If cookies expire, just log in again and re-run `bird check`.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# bird Troubleshooting
|
|
2
|
+
|
|
3
|
+
## No authentication sources available
|
|
4
|
+
|
|
5
|
+
**Symptom:** `bird check` shows no available auth.
|
|
6
|
+
|
|
7
|
+
**Fix:**
|
|
8
|
+
1. Log into X in Chrome or Firefox.
|
|
9
|
+
2. Re-run `bird check`.
|
|
10
|
+
3. Or use Sweetistics:
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
export SWEETISTICS_API_KEY="your-api-key"
|
|
14
|
+
bird --engine sweetistics check
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Cookie expired
|
|
18
|
+
|
|
19
|
+
**Symptom:** commands fail with auth errors.
|
|
20
|
+
|
|
21
|
+
**Fix:** log out and back in to X in your browser, then retry.
|
|
22
|
+
|
|
23
|
+
## Rate limiting
|
|
24
|
+
|
|
25
|
+
**Symptom:** "rate limit exceeded".
|
|
26
|
+
|
|
27
|
+
**Fix:** wait a bit or add a delay between requests:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
bird search "query" --delay 2000
|
|
31
|
+
```
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: blogwatcher
|
|
3
|
+
description: Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.
|
|
4
|
+
homepage: https://github.com/Hyaxia/blogwatcher
|
|
5
|
+
metadata: {"nexus":{"emoji":"📰","requires":{"bins":["blogwatcher"]},"install":[{"id":"go","kind":"go","module":"github.com/Hyaxia/blogwatcher/cmd/blogwatcher@latest","bins":["blogwatcher"],"label":"Install blogwatcher (go)"}]}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# blogwatcher
|
|
9
|
+
|
|
10
|
+
Track blog and RSS/Atom feed updates with the `blogwatcher` CLI.
|
|
11
|
+
|
|
12
|
+
Install
|
|
13
|
+
- Go: `go install github.com/Hyaxia/blogwatcher/cmd/blogwatcher@latest`
|
|
14
|
+
|
|
15
|
+
Quick start
|
|
16
|
+
- `blogwatcher --help`
|
|
17
|
+
|
|
18
|
+
Common commands
|
|
19
|
+
- Add a blog: `blogwatcher add "My Blog" https://example.com`
|
|
20
|
+
- List blogs: `blogwatcher blogs`
|
|
21
|
+
- Scan for updates: `blogwatcher scan`
|
|
22
|
+
- List articles: `blogwatcher articles`
|
|
23
|
+
- Mark an article read: `blogwatcher read 1`
|
|
24
|
+
- Mark all articles read: `blogwatcher read-all`
|
|
25
|
+
- Remove a blog: `blogwatcher remove "My Blog"`
|
|
26
|
+
|
|
27
|
+
Example output
|
|
28
|
+
```
|
|
29
|
+
$ blogwatcher blogs
|
|
30
|
+
Tracked blogs (1):
|
|
31
|
+
|
|
32
|
+
xkcd
|
|
33
|
+
URL: https://xkcd.com
|
|
34
|
+
```
|
|
35
|
+
```
|
|
36
|
+
$ blogwatcher scan
|
|
37
|
+
Scanning 1 blog(s)...
|
|
38
|
+
|
|
39
|
+
xkcd
|
|
40
|
+
Source: RSS | Found: 4 | New: 4
|
|
41
|
+
|
|
42
|
+
Found 4 new article(s) total!
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Notes
|
|
46
|
+
- Use `blogwatcher <command> --help` to discover flags and options.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: blucli
|
|
3
|
+
description: BluOS CLI (blu) for discovery, playback, grouping, and volume.
|
|
4
|
+
homepage: https://blucli.sh
|
|
5
|
+
metadata: {"nexus":{"emoji":"🫐","requires":{"bins":["blu"]},"install":[{"id":"go","kind":"go","module":"github.com/steipete/blucli/cmd/blu@latest","bins":["blu"],"label":"Install blucli (go)"}]}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# blucli (blu)
|
|
9
|
+
|
|
10
|
+
Use `blu` to control Bluesound/NAD players.
|
|
11
|
+
|
|
12
|
+
Quick start
|
|
13
|
+
- `blu devices` (pick target)
|
|
14
|
+
- `blu --device <id> status`
|
|
15
|
+
- `blu play|pause|stop`
|
|
16
|
+
- `blu volume set 15`
|
|
17
|
+
|
|
18
|
+
Target selection (in priority order)
|
|
19
|
+
- `--device <id|name|alias>`
|
|
20
|
+
- `BLU_DEVICE`
|
|
21
|
+
- config default (if set)
|
|
22
|
+
|
|
23
|
+
Common tasks
|
|
24
|
+
- Grouping: `blu group status|add|remove`
|
|
25
|
+
- TuneIn search/play: `blu tunein search "query"`, `blu tunein play "query"`
|
|
26
|
+
|
|
27
|
+
Prefer `--json` for scripts. Confirm the target device before changing playback.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: brave-search
|
|
3
|
+
description: Web search and content extraction via Brave Search API.
|
|
4
|
+
homepage: https://brave.com/search/api
|
|
5
|
+
metadata: {"nexus":{"emoji":"🦁","type":"connector","provides":["news","web-search"],"requires":{"bins":["node"],"env":["BRAVE_API_KEY"],"credentials":["brave-search"]},"primaryEnv":"BRAVE_API_KEY"}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Brave Search
|
|
9
|
+
|
|
10
|
+
Headless web search (and lightweight content extraction) using Brave Search API. No browser required.
|
|
11
|
+
|
|
12
|
+
## Docs
|
|
13
|
+
|
|
14
|
+
- `docs/setup.md`
|
|
15
|
+
- `docs/usage.md`
|
|
16
|
+
- `docs/troubleshooting.md`
|
|
17
|
+
|
|
18
|
+
## Search
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
node {baseDir}/scripts/search.mjs "query"
|
|
22
|
+
node {baseDir}/scripts/search.mjs "query" -n 10
|
|
23
|
+
node {baseDir}/scripts/search.mjs "query" --content
|
|
24
|
+
node {baseDir}/scripts/search.mjs "query" -n 3 --content
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Extract a page
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
node {baseDir}/scripts/content.mjs "https://example.com/article"
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Notes:
|
|
34
|
+
- Needs `BRAVE_API_KEY`.
|
|
35
|
+
- Content extraction is best-effort (good for articles; not for app-like sites).
|
|
36
|
+
- If a site is blocked or too JS-heavy, prefer the `summarize` skill (it can use a Firecrawl fallback).
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Brave Search Setup
|
|
2
|
+
|
|
3
|
+
This connector uses the Brave Search API.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
- Node.js available (`node --version`)
|
|
8
|
+
- Brave Search API key (`BRAVE_API_KEY`)
|
|
9
|
+
|
|
10
|
+
## Get an API key
|
|
11
|
+
|
|
12
|
+
1. Visit https://brave.com/search/api/
|
|
13
|
+
2. Create an API key (free tier is 2,000 queries/month)
|
|
14
|
+
|
|
15
|
+
Store in 1Password (recommended):
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
op item create \
|
|
19
|
+
--category "API Credential" \
|
|
20
|
+
--title "Brave Search API Key" \
|
|
21
|
+
--vault Personal \
|
|
22
|
+
"credential[password]=YOUR_API_KEY_HERE"
|
|
23
|
+
|
|
24
|
+
echo 'export BRAVE_API_KEY="op://Personal/Brave Search API Key/credential"' >> ~/.zshrc
|
|
25
|
+
echo 'eval "$(op plugin run -- zsh)"' >> ~/.zshrc
|
|
26
|
+
source ~/.zshrc
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Or set directly:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
export BRAVE_API_KEY="your-key-here"
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Verify
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
echo $BRAVE_API_KEY | grep -q . && echo "API key set"
|
|
39
|
+
node {baseDir}/scripts/search.mjs "test query" -n 3
|
|
40
|
+
```
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Brave Search Troubleshooting
|
|
2
|
+
|
|
3
|
+
## BRAVE_API_KEY not set
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
export BRAVE_API_KEY=$(op read "op://Personal/Brave Search API Key/credential")
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## Rate limit exceeded
|
|
10
|
+
|
|
11
|
+
Free tier allows 2,000 queries/month. Consider caching results:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
CACHE_DIR="/tmp/brave-search-cache"
|
|
15
|
+
mkdir -p "$CACHE_DIR"
|
|
16
|
+
QUERY="your query"
|
|
17
|
+
CACHE_FILE="$CACHE_DIR/$(echo "$QUERY" | md5).json"
|
|
18
|
+
|
|
19
|
+
if [ -f "$CACHE_FILE" ]; then
|
|
20
|
+
cat "$CACHE_FILE"
|
|
21
|
+
else
|
|
22
|
+
node {baseDir}/scripts/search.mjs "$QUERY" | tee "$CACHE_FILE"
|
|
23
|
+
fi
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Content extraction is empty
|
|
27
|
+
|
|
28
|
+
- Try a different URL (article vs app-like site).
|
|
29
|
+
- Use `summarize` or `computer-use` for JS-heavy sites.
|
|
30
|
+
|
|
31
|
+
## Cannot find module / script
|
|
32
|
+
|
|
33
|
+
Run from the skill directory or use absolute paths:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
node {baseDir}/scripts/search.mjs "test"
|
|
37
|
+
```
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Brave Search Usage
|
|
2
|
+
|
|
3
|
+
## Search
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
node {baseDir}/scripts/search.mjs "query"
|
|
7
|
+
node {baseDir}/scripts/search.mjs "query" -n 10
|
|
8
|
+
node {baseDir}/scripts/search.mjs "query" --content
|
|
9
|
+
node {baseDir}/scripts/search.mjs "query" -n 3 --content
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## Extract a page
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
node {baseDir}/scripts/content.mjs "https://example.com/article"
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Parse results with jq
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
node {baseDir}/scripts/search.mjs "topic" | jq -r '.web.results[].url'
|
|
22
|
+
node {baseDir}/scripts/search.mjs "topic" | jq -r '.web.results[] | "\(.title): \(.url)"'
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Notes
|
|
26
|
+
|
|
27
|
+
- Content extraction is best-effort (good for articles; not for app-like sites).
|
|
28
|
+
- For JS-heavy sites, consider `summarize` (Firecrawl fallback) or `computer-use`.
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
function usage() {
|
|
4
|
+
console.error(`Usage: content.mjs <url>`);
|
|
5
|
+
process.exit(2);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export async function fetchAsMarkdown(url) {
|
|
9
|
+
const resp = await fetch(url, {
|
|
10
|
+
headers: { "User-Agent": "nexus-brave-search/1.0" },
|
|
11
|
+
});
|
|
12
|
+
const html = await resp.text();
|
|
13
|
+
|
|
14
|
+
// Very lightweight “readability-ish” extraction without dependencies:
|
|
15
|
+
// - drop script/style/nav/footer
|
|
16
|
+
// - strip tags
|
|
17
|
+
// - keep paragraphs
|
|
18
|
+
const cleaned = html
|
|
19
|
+
.replace(/<script[\s\S]*?<\/script>/gi, " ")
|
|
20
|
+
.replace(/<style[\s\S]*?<\/style>/gi, " ")
|
|
21
|
+
.replace(/<(nav|footer|header)[\s\S]*?<\/\1>/gi, " ")
|
|
22
|
+
.replace(/<br\s*\/?>/gi, "\n")
|
|
23
|
+
.replace(/<\/p>/gi, "\n\n")
|
|
24
|
+
.replace(/<\/div>/gi, "\n")
|
|
25
|
+
.replace(/<[^>]+>/g, " ")
|
|
26
|
+
.replace(/ /g, " ")
|
|
27
|
+
.replace(/&/g, "&")
|
|
28
|
+
.replace(/</g, "<")
|
|
29
|
+
.replace(/>/g, ">")
|
|
30
|
+
.replace(/"/g, '"')
|
|
31
|
+
.replace(/'/g, "'")
|
|
32
|
+
.replace(/\s+\n/g, "\n")
|
|
33
|
+
.replace(/\n{3,}/g, "\n\n")
|
|
34
|
+
.replace(/[ \t]{2,}/g, " ")
|
|
35
|
+
.trim();
|
|
36
|
+
|
|
37
|
+
if (!resp.ok) {
|
|
38
|
+
return `> Fetch failed (${resp.status}).\n\n${cleaned.slice(0, 2000)}\n`;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
const paras = cleaned
|
|
42
|
+
.split("\n\n")
|
|
43
|
+
.map((p) => p.trim())
|
|
44
|
+
.filter(Boolean)
|
|
45
|
+
.slice(0, 30);
|
|
46
|
+
|
|
47
|
+
return paras.map((p) => `- ${p}`).join("\n") + "\n";
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
const args = process.argv.slice(2);
|
|
51
|
+
if (args.length === 0 || args[0] === "-h" || args[0] === "--help") usage();
|
|
52
|
+
const url = args[0];
|
|
53
|
+
process.stdout.write(await fetchAsMarkdown(url));
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
function usage() {
|
|
4
|
+
console.error(`Usage: search.mjs "query" [-n 5] [--content]`);
|
|
5
|
+
process.exit(2);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
const args = process.argv.slice(2);
|
|
9
|
+
if (args.length === 0 || args[0] === "-h" || args[0] === "--help") usage();
|
|
10
|
+
|
|
11
|
+
const query = args[0];
|
|
12
|
+
let n = 5;
|
|
13
|
+
let withContent = false;
|
|
14
|
+
|
|
15
|
+
for (let i = 1; i < args.length; i++) {
|
|
16
|
+
const a = args[i];
|
|
17
|
+
if (a === "-n") {
|
|
18
|
+
n = Number.parseInt(args[i + 1] ?? "5", 10);
|
|
19
|
+
i++;
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
if (a === "--content") {
|
|
23
|
+
withContent = true;
|
|
24
|
+
continue;
|
|
25
|
+
}
|
|
26
|
+
console.error(`Unknown arg: ${a}`);
|
|
27
|
+
usage();
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const apiKey = (process.env.BRAVE_API_KEY ?? "").trim();
|
|
31
|
+
if (!apiKey) {
|
|
32
|
+
console.error("Missing BRAVE_API_KEY");
|
|
33
|
+
process.exit(1);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const endpoint = new URL("https://api.search.brave.com/res/v1/web/search");
|
|
37
|
+
endpoint.searchParams.set("q", query);
|
|
38
|
+
endpoint.searchParams.set("count", String(Math.max(1, Math.min(n, 20))));
|
|
39
|
+
endpoint.searchParams.set("text_decorations", "false");
|
|
40
|
+
endpoint.searchParams.set("safesearch", "moderate");
|
|
41
|
+
|
|
42
|
+
const resp = await fetch(endpoint, {
|
|
43
|
+
headers: {
|
|
44
|
+
Accept: "application/json",
|
|
45
|
+
"X-Subscription-Token": apiKey,
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
if (!resp.ok) {
|
|
50
|
+
const text = await resp.text().catch(() => "");
|
|
51
|
+
throw new Error(`Brave Search failed (${resp.status}): ${text}`);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const data = await resp.json();
|
|
55
|
+
const results = (data?.web?.results ?? []).slice(0, n);
|
|
56
|
+
|
|
57
|
+
const lines = [];
|
|
58
|
+
for (const r of results) {
|
|
59
|
+
const title = String(r?.title ?? "").trim();
|
|
60
|
+
const url = String(r?.url ?? "").trim();
|
|
61
|
+
const desc = String(r?.description ?? "").trim();
|
|
62
|
+
if (!title || !url) continue;
|
|
63
|
+
lines.push(`- ${title}\n ${url}${desc ? `\n ${desc}` : ""}`);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
process.stdout.write(lines.join("\n\n") + "\n");
|
|
67
|
+
|
|
68
|
+
if (!withContent) process.exit(0);
|
|
69
|
+
|
|
70
|
+
process.stdout.write("\n---\n\n");
|
|
71
|
+
for (const r of results) {
|
|
72
|
+
const title = String(r?.title ?? "").trim();
|
|
73
|
+
const url = String(r?.url ?? "").trim();
|
|
74
|
+
if (!url) continue;
|
|
75
|
+
process.stdout.write(`# ${title || url}\n${url}\n\n`);
|
|
76
|
+
const child = await import("./content.mjs");
|
|
77
|
+
const text = await child.fetchAsMarkdown(url);
|
|
78
|
+
process.stdout.write(text.trimEnd() + "\n\n");
|
|
79
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: browser-use-agent-sdk
|
|
3
|
+
description: Minimal agent framework (bu-agent-sdk) for tool-call loops. Use when evaluating browser-use/agent-sdk or building a small tool-based agent without heavy abstractions.
|
|
4
|
+
homepage: https://github.com/browser-use/agent-sdk
|
|
5
|
+
type: guide
|
|
6
|
+
license: MIT
|
|
7
|
+
source:
|
|
8
|
+
repo: https://github.com/browser-use/agent-sdk
|
|
9
|
+
security:
|
|
10
|
+
openSource: true
|
|
11
|
+
audit: required
|
|
12
|
+
metadata: {"nexus":{"emoji":"🧭"}}
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# browser-use/agent-sdk
|
|
16
|
+
|
|
17
|
+
`bu-agent-sdk` is a tiny async agent loop for tool calls. It is not a browser by itself.
|
|
18
|
+
You provide tools (e.g., shell, agent-browser CLI) and let the LLM call them.
|
|
19
|
+
|
|
20
|
+
## Install (recommended: uv)
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
uv venv
|
|
24
|
+
uv add bu-agent-sdk
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Fallback (pip):
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
python3 -m venv .venv
|
|
31
|
+
source .venv/bin/activate
|
|
32
|
+
pip install bu-agent-sdk
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Quick eval harness (Wordle)
|
|
36
|
+
|
|
37
|
+
This wraps the existing `wordle-nyt-run.sh` script as a tool call so the
|
|
38
|
+
agent-sdk loop is actually exercised.
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
cat > /tmp/bu_wordle_eval.py << 'PY'
|
|
42
|
+
import asyncio
|
|
43
|
+
import os
|
|
44
|
+
from bu_agent_sdk import Agent, tool, TaskComplete
|
|
45
|
+
from bu_agent_sdk.llm import ChatAnthropic
|
|
46
|
+
|
|
47
|
+
@tool("Run the Wordle benchmark script")
|
|
48
|
+
async def run_wordle(args: str) -> str:
|
|
49
|
+
import subprocess
|
|
50
|
+
result = subprocess.run(
|
|
51
|
+
f"bash /Users/tyler/nexus/home/projects/wordle-nyt-run.sh {args}",
|
|
52
|
+
shell=True,
|
|
53
|
+
capture_output=True,
|
|
54
|
+
text=True,
|
|
55
|
+
)
|
|
56
|
+
return (result.stdout + result.stderr).strip()
|
|
57
|
+
|
|
58
|
+
@tool("Signal completion")
|
|
59
|
+
async def done(message: str) -> str:
|
|
60
|
+
raise TaskComplete(message)
|
|
61
|
+
|
|
62
|
+
model = os.environ.get("LLM_MODEL", "haiku")
|
|
63
|
+
agent = Agent(
|
|
64
|
+
llm=ChatAnthropic(model=model),
|
|
65
|
+
tools=[run_wordle, done],
|
|
66
|
+
require_done_tool=True,
|
|
67
|
+
)
|
|
68
|
+
|
|
69
|
+
async def main():
|
|
70
|
+
prompt = (
|
|
71
|
+
"Run Wordle benchmark with: --session bu-agent "
|
|
72
|
+
"--timing guess-only --wait-ms 300 --key-delay-ms 10 --no-screenshot. "
|
|
73
|
+
"Then call done with the RESULT line."
|
|
74
|
+
)
|
|
75
|
+
result = await agent.query(prompt)
|
|
76
|
+
print(result)
|
|
77
|
+
|
|
78
|
+
asyncio.run(main())
|
|
79
|
+
PY
|
|
80
|
+
|
|
81
|
+
LLM_MODEL=haiku python /tmp/bu_wordle_eval.py
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Notes:
|
|
85
|
+
- This is still **no-cheating**. The solver uses a local word list only.
|
|
86
|
+
- Use a unique `--session` per run to avoid Wordle state collisions.
|
|
87
|
+
|
|
88
|
+
## References
|
|
89
|
+
|
|
90
|
+
- Repo: https://github.com/browser-use/agent-sdk
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: camsnap
|
|
3
|
+
description: Capture frames or clips from RTSP/ONVIF cameras.
|
|
4
|
+
homepage: https://camsnap.ai
|
|
5
|
+
metadata: {"nexus":{"emoji":"📸","requires":{"bins":["camsnap"]},"install":[{"id":"brew","kind":"brew","formula":"steipete/tap/camsnap","bins":["camsnap"],"label":"Install camsnap (brew)"}]}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# camsnap
|
|
9
|
+
|
|
10
|
+
Use `camsnap` to grab snapshots, clips, or motion events from configured cameras.
|
|
11
|
+
|
|
12
|
+
Setup
|
|
13
|
+
- Config file: `~/.config/camsnap/config.yaml`
|
|
14
|
+
- Add camera: `camsnap add --name kitchen --host 192.168.0.10 --user user --pass pass`
|
|
15
|
+
|
|
16
|
+
Common commands
|
|
17
|
+
- Discover: `camsnap discover --info`
|
|
18
|
+
- Snapshot: `camsnap snap kitchen --out shot.jpg`
|
|
19
|
+
- Clip: `camsnap clip kitchen --dur 5s --out clip.mp4`
|
|
20
|
+
- Motion watch: `camsnap watch kitchen --threshold 0.2 --action '...'`
|
|
21
|
+
- Doctor: `camsnap doctor --probe`
|
|
22
|
+
|
|
23
|
+
Notes
|
|
24
|
+
- Requires `ffmpeg` on PATH.
|
|
25
|
+
- Prefer a short test capture before longer clips.
|