docs: refine skills
This commit is contained in:
@@ -1,15 +0,0 @@
|
||||
---
|
||||
name: agent-tools
|
||||
description: Utility toolkit for automations and MCP-friendly scripts.
|
||||
metadata: {"clawdis":{"requires":{"bins":["agent-tools"]}}}
|
||||
---
|
||||
|
||||
# agent-tools
|
||||
|
||||
Use `agent-tools` for helper utilities and automations. Start with:
|
||||
|
||||
```bash
|
||||
agent-tools --help
|
||||
```
|
||||
|
||||
Prefer small, composable commands.
|
||||
@@ -1,19 +1,24 @@
|
||||
---
|
||||
name: bird
|
||||
description: X/Twitter CLI to tweet, reply, read threads, and search.
|
||||
description: X/Twitter CLI for reading, searching, and posting via cookies or Sweetistics.
|
||||
metadata: {"clawdis":{"requires":{"bins":["bird"]}}}
|
||||
---
|
||||
|
||||
# bird
|
||||
|
||||
Use `bird` to interact with X/Twitter.
|
||||
Use `bird` to read/search X and post tweets/replies.
|
||||
|
||||
- Tweet: `bird tweet "..."`
|
||||
- Reply: `bird reply <tweet-id> "..."`
|
||||
- Read: `bird read <tweet-id>`
|
||||
- Thread: `bird thread <tweet-id>`
|
||||
- Search: `bird search "query"`
|
||||
- Mentions: `bird mentions`
|
||||
- Whoami: `bird whoami`
|
||||
Quick start
|
||||
- `bird whoami`
|
||||
- `bird read <url-or-id>`
|
||||
- `bird thread <url-or-id>`
|
||||
- `bird search "query" -n 5`
|
||||
|
||||
Confirm before posting publicly.
|
||||
Posting (confirm with user first)
|
||||
- `bird tweet "text"`
|
||||
- `bird reply <id-or-url> "text"`
|
||||
|
||||
Auth sources
|
||||
- Browser cookies (default: Firefox/Chrome)
|
||||
- Sweetistics API: set `SWEETISTICS_API_KEY` or use `--engine sweetistics`
|
||||
- Check sources: `bird check`
|
||||
|
||||
@@ -1,15 +1,26 @@
|
||||
---
|
||||
name: blucli
|
||||
description: Control BluOS players from the CLI.
|
||||
metadata: {"clawdis":{"requires":{"bins":["blucli"]}}}
|
||||
description: BluOS CLI (blu) for discovery, playback, grouping, and volume.
|
||||
metadata: {"clawdis":{"requires":{"bins":["blu"]}}}
|
||||
---
|
||||
|
||||
# blucli
|
||||
# blucli (blu)
|
||||
|
||||
Use `blucli` to control BluOS players. Start with:
|
||||
Use `blu` to control Bluesound/NAD players.
|
||||
|
||||
```bash
|
||||
blucli --help
|
||||
```
|
||||
Quick start
|
||||
- `blu devices` (pick target)
|
||||
- `blu --device <id> status`
|
||||
- `blu play|pause|stop`
|
||||
- `blu volume set 15`
|
||||
|
||||
Confirm target player before changing playback.
|
||||
Target selection (in priority order)
|
||||
- `--device <id|name|alias>`
|
||||
- `BLU_DEVICE`
|
||||
- config default (if set)
|
||||
|
||||
Common tasks
|
||||
- Grouping: `blu group status|add|remove`
|
||||
- TuneIn search/play: `blu tunein search "query"`, `blu tunein play "query"`
|
||||
|
||||
Prefer `--json` for scripts. Confirm the target device before changing playback.
|
||||
|
||||
21
skills/brave-search/SKILL.md
Normal file
21
skills/brave-search/SKILL.md
Normal file
@@ -0,0 +1,21 @@
|
||||
---
|
||||
name: brave-search
|
||||
description: Headless web search and content extraction via Brave Search scripts.
|
||||
metadata: {"clawdis":{"requires":{"bins":["search.js","content.js"]}}}
|
||||
---
|
||||
|
||||
# brave-search
|
||||
|
||||
Use `search.js` and `content.js` from `~/agent-tools/brave-search` (PATH).
|
||||
|
||||
Search
|
||||
- `search.js "query"`
|
||||
- `search.js "query" -n 10`
|
||||
- `search.js "query" --content`
|
||||
|
||||
Extract content
|
||||
- `content.js https://example.com/article`
|
||||
|
||||
Notes
|
||||
- No browser required; results come from Brave Search HTML.
|
||||
- If commands are missing, add `~/agent-tools/brave-search` to PATH and install deps.
|
||||
@@ -6,10 +6,19 @@ metadata: {"clawdis":{"requires":{"bins":["camsnap"]}}}
|
||||
|
||||
# camsnap
|
||||
|
||||
Use `camsnap` to grab frames or clips from configured cameras. Start with:
|
||||
Use `camsnap` to grab snapshots, clips, or motion events from configured cameras.
|
||||
|
||||
```bash
|
||||
camsnap --help
|
||||
```
|
||||
Setup
|
||||
- Config file: `~/.config/camsnap/config.yaml`
|
||||
- Add camera: `camsnap add --name kitchen --host 192.168.0.10 --user user --pass pass`
|
||||
|
||||
Prefer small test captures before longer clips.
|
||||
Common commands
|
||||
- Discover: `camsnap discover --info`
|
||||
- Snapshot: `camsnap snap kitchen --out shot.jpg`
|
||||
- Clip: `camsnap clip kitchen --dur 5s --out clip.mp4`
|
||||
- Motion watch: `camsnap watch kitchen --threshold 0.2 --action '...'`
|
||||
- Doctor: `camsnap doctor --probe`
|
||||
|
||||
Notes
|
||||
- Requires `ffmpeg` on PATH.
|
||||
- Prefer a short test capture before longer clips.
|
||||
|
||||
@@ -6,13 +6,26 @@ metadata: {"clawdis":{"requires":{"config":["browser.enabled"]}}}
|
||||
|
||||
# Clawdis Browser
|
||||
|
||||
Use the clawd-managed Chrome/Chromium instance through `clawdis browser` commands.
|
||||
Use the clawd-managed Chrome/Chromium instance through `clawdis browser`.
|
||||
Only available when `browser.enabled` is true.
|
||||
|
||||
## Common commands
|
||||
Core flow
|
||||
- `clawdis browser status`
|
||||
- `clawdis browser start` (if stopped)
|
||||
- `clawdis browser tabs`
|
||||
- `clawdis browser open <url>`
|
||||
|
||||
- Status/start/stop: `clawdis browser status|start|stop`
|
||||
- Tabs: `clawdis browser tabs|open <url>|focus <id>|close <id>`
|
||||
- Snapshot/screenshot: `clawdis browser snapshot --format ai|aria`, `clawdis browser screenshot [--full-page]`
|
||||
- Actions: `clawdis browser click|type|hover|drag|select|upload|press|wait|navigate|back|evaluate|run`
|
||||
Inspection
|
||||
- `clawdis browser snapshot --format ai|aria [--limit N]`
|
||||
- `clawdis browser screenshot [--full-page]`
|
||||
|
||||
If disabled, ask the user to enable `browser.enabled` in `~/.clawdis/clawdis.json`.
|
||||
Actions
|
||||
- `clawdis browser click <ref>`
|
||||
- `clawdis browser type <ref> "text" --submit`
|
||||
- `clawdis browser press Enter`
|
||||
- `clawdis browser navigate <url>`
|
||||
- `clawdis browser wait --text "Done"`
|
||||
|
||||
Notes
|
||||
- This is a dedicated profile; do not use the user's personal browser.
|
||||
- If disabled, ask the user to enable `browser.enabled` in `~/.clawdis/clawdis.json`.
|
||||
|
||||
@@ -8,15 +8,16 @@ metadata: {"clawdis":{"always":true}}
|
||||
|
||||
Use Canvas to render HTML/JS or A2UI surfaces and capture snapshots.
|
||||
|
||||
## Core commands
|
||||
|
||||
- Show/hide: `clawdis canvas present [--node <id>] [--target <path>]`, `clawdis canvas hide`
|
||||
- JS eval: `clawdis canvas eval --js "..."`
|
||||
Core commands
|
||||
- Present: `clawdis canvas present [--node <id>] [--target <path>]`
|
||||
- Hide: `clawdis canvas hide`
|
||||
- Eval JS: `clawdis canvas eval --js "..."`
|
||||
- Snapshot: `clawdis canvas snapshot`
|
||||
|
||||
## A2UI
|
||||
|
||||
A2UI
|
||||
- Push JSONL: `clawdis canvas a2ui push --jsonl /path/to/file.jsonl`
|
||||
- Reset: `clawdis canvas a2ui reset`
|
||||
|
||||
If targeting remote nodes, use the canvas host (LAN/tailnet) and keep HTML under `~/clawd/canvas`.
|
||||
Notes
|
||||
- Keep HTML under `~/clawd/canvas` when targeting remote nodes.
|
||||
- Use snapshot after renders to verify UI state.
|
||||
|
||||
@@ -1,15 +1,28 @@
|
||||
---
|
||||
name: eightctl
|
||||
description: Control sleep workflows with eightctl.
|
||||
description: Control Eight Sleep pods (status, temperature, alarms, schedules).
|
||||
metadata: {"clawdis":{"requires":{"bins":["eightctl"]}}}
|
||||
---
|
||||
|
||||
# eightctl
|
||||
|
||||
Use `eightctl` for sleep/wake automation. Start with:
|
||||
Use `eightctl` for Eight Sleep pod control. Requires auth.
|
||||
|
||||
```bash
|
||||
eightctl --help
|
||||
```
|
||||
Auth
|
||||
- Config: `~/.config/eightctl/config.yaml`
|
||||
- Env: `EIGHTCTL_EMAIL`, `EIGHTCTL_PASSWORD`
|
||||
|
||||
Confirm before scheduling disruptive actions.
|
||||
Quick start
|
||||
- `eightctl status`
|
||||
- `eightctl on|off`
|
||||
- `eightctl temp 20`
|
||||
|
||||
Common tasks
|
||||
- Alarms: `eightctl alarm list|create|dismiss`
|
||||
- Schedules: `eightctl schedule list|create|update`
|
||||
- Audio: `eightctl audio state|play|pause`
|
||||
- Base: `eightctl base info|angle`
|
||||
|
||||
Notes
|
||||
- API is unofficial and rate-limited; avoid repeated logins.
|
||||
- Confirm before changing temperature or alarms.
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
---
|
||||
name: gemini-cli
|
||||
description: Use the Gemini CLI for fast Q&A and generation.
|
||||
metadata: {"clawdis":{"requires":{"bins":["gemini"]}}}
|
||||
---
|
||||
|
||||
# Gemini CLI
|
||||
|
||||
Use `gemini` for quick prompts. Start with:
|
||||
|
||||
```bash
|
||||
gemini --help
|
||||
```
|
||||
|
||||
If auth is required, set the provider's API key in the environment.
|
||||
@@ -1,21 +1,22 @@
|
||||
---
|
||||
name: gemini
|
||||
description: Use Gemini CLI for coding assistance and Google search lookups.
|
||||
description: Gemini CLI for one-shot Q&A, summaries, and generation.
|
||||
metadata: {"clawdis":{"requires":{"bins":["gemini"]}}}
|
||||
---
|
||||
|
||||
# Gemini
|
||||
# Gemini CLI
|
||||
|
||||
Use `gemini` in **one-shot mode** via the positional prompt (avoid interactive mode).
|
||||
Use Gemini in one-shot mode with a positional prompt (avoid interactive mode).
|
||||
|
||||
Good for:
|
||||
- Coding agent Q&A and fixes.
|
||||
- Google search style lookups (ask for sources, dates, and summaries).
|
||||
Quick start
|
||||
- `gemini "Answer this question..."`
|
||||
- `gemini --model <name> "Prompt..."`
|
||||
- `gemini --output-format json "Return JSON"`
|
||||
|
||||
Examples:
|
||||
Extensions
|
||||
- List: `gemini --list-extensions`
|
||||
- Manage: `gemini extensions <command>`
|
||||
|
||||
```bash
|
||||
gemini "Search Google for the latest X. Return top 5 results with title, URL, date, and 1-line summary."
|
||||
```
|
||||
|
||||
If you need structured output, add `--output-format json`.
|
||||
Notes
|
||||
- If auth is required, run `gemini` once interactively and follow the login flow.
|
||||
- Avoid `--yolo` for safety.
|
||||
|
||||
@@ -1,15 +1,25 @@
|
||||
---
|
||||
name: gog
|
||||
description: Google Suite CLI for Gmail, Calendar, Drive, and Contacts.
|
||||
description: Google Workspace CLI for Gmail, Calendar, Drive, and Contacts.
|
||||
metadata: {"clawdis":{"requires":{"bins":["gog"]}}}
|
||||
---
|
||||
|
||||
# gog
|
||||
|
||||
Use `gog` for Gmail/Calendar/Drive/Contacts. Start with:
|
||||
Use `gog` for Gmail/Calendar/Drive/Contacts. Requires OAuth setup.
|
||||
|
||||
```bash
|
||||
gog --help
|
||||
```
|
||||
Setup (once)
|
||||
- `gog auth credentials /path/to/client_secret.json`
|
||||
- `gog auth add you@gmail.com --services gmail,calendar,drive,contacts`
|
||||
- `gog auth list`
|
||||
|
||||
Ask for confirmation before sending emails or creating events.
|
||||
Common commands
|
||||
- Gmail search: `gog gmail search 'newer_than:7d' --max 10`
|
||||
- Gmail send: `gog gmail send --to a@b.com --subject "Hi" --body "Hello"`
|
||||
- Calendar: `gog calendar events <calendarId> --from <iso> --to <iso>`
|
||||
- Drive: `gog drive search "query" --max 10`
|
||||
- Contacts: `gog contacts list --max 20`
|
||||
|
||||
Notes
|
||||
- Set `GOG_ACCOUNT=you@gmail.com` to avoid repeating `--account`.
|
||||
- Confirm before sending mail or creating events.
|
||||
|
||||
@@ -1,15 +1,24 @@
|
||||
---
|
||||
name: imsg
|
||||
description: Send or read iMessage/SMS using the imsg CLI.
|
||||
description: iMessage/SMS CLI for listing chats, history, watch, and sending.
|
||||
metadata: {"clawdis":{"requires":{"bins":["imsg"]}}}
|
||||
---
|
||||
|
||||
# imsg
|
||||
|
||||
Use `imsg` for iMessage/SMS. Start with:
|
||||
Use `imsg` to read and send Messages.app iMessage/SMS on macOS.
|
||||
|
||||
```bash
|
||||
imsg --help
|
||||
```
|
||||
Requirements
|
||||
- Messages.app signed in
|
||||
- Full Disk Access for your terminal
|
||||
- Automation permission to control Messages.app (for sending)
|
||||
|
||||
Confirm recipients and message text before sending.
|
||||
Common commands
|
||||
- List chats: `imsg chats --limit 10`
|
||||
- History: `imsg history --chat-id 1 --limit 20 --attachments --json`
|
||||
- Watch: `imsg watch --chat-id 1 --attachments`
|
||||
- Send: `imsg send --to "+14155551212" --text "hi" --file /path/pic.jpg`
|
||||
|
||||
Notes
|
||||
- `--service imessage|sms|auto` controls delivery.
|
||||
- Confirm recipient + message before sending.
|
||||
|
||||
@@ -1,15 +1,26 @@
|
||||
---
|
||||
name: mcporter
|
||||
description: Manage MCP servers (install, list, sync) with mcporter.
|
||||
description: Manage and call MCP servers (list, call, auth, daemon).
|
||||
metadata: {"clawdis":{"requires":{"bins":["mcporter"]}}}
|
||||
---
|
||||
|
||||
# mcporter
|
||||
|
||||
Use the `mcporter` CLI to install, list, and sync MCP servers. Start with:
|
||||
Use `mcporter` to list MCP servers and call tools.
|
||||
|
||||
```bash
|
||||
mcporter --help
|
||||
```
|
||||
Quick start
|
||||
- `mcporter list`
|
||||
- `mcporter list <server> --schema`
|
||||
- `mcporter call <server.tool> arg=value`
|
||||
|
||||
If the tool is missing, ask the user to install it from the Tools tab.
|
||||
Auth + lifecycle
|
||||
- OAuth: `mcporter auth <server>`
|
||||
- Daemon: `mcporter daemon status|start|stop`
|
||||
|
||||
Ad-hoc servers
|
||||
- HTTP: `mcporter list --http-url https://host/mcp --name <name>`
|
||||
- STDIO: `mcporter call --stdio "bun run ./server.ts" --name <name>`
|
||||
|
||||
Notes
|
||||
- Config sources: `~/.mcporter/mcporter.json[c]` and `config/mcporter.json`.
|
||||
- Prefer `--json` when you need machine-readable output.
|
||||
|
||||
@@ -1,42 +1,28 @@
|
||||
---
|
||||
name: nano-banana-pro
|
||||
description: Generate or edit images via Gemini 3 Pro Image (Nano Banana Pro).
|
||||
metadata: {"clawdis":{"requires":{"env":["GEMINI_API_KEY"]},"primaryEnv":"GEMINI_API_KEY"}}
|
||||
metadata: {"clawdis":{"requires":{"bins":["uv"],"env":["GEMINI_API_KEY"]},"primaryEnv":"GEMINI_API_KEY"}}
|
||||
---
|
||||
|
||||
# Nano Banana Pro Image Generation & Editing
|
||||
# Nano Banana Pro (Gemini 3 Pro Image)
|
||||
|
||||
Generate new images or edit existing ones using Google's Nano Banana Pro API.
|
||||
Use the bundled script to generate or edit images.
|
||||
|
||||
## Usage (always run from the current working directory)
|
||||
|
||||
**Generate new image:**
|
||||
Generate
|
||||
```bash
|
||||
uv run {baseDir}/scripts/generate_image.py --prompt "your image description" --filename "output-name.png" [--resolution 1K|2K|4K]
|
||||
uv run {baseDir}/scripts/generate_image.py --prompt "your image description" --filename "output.png" --resolution 1K
|
||||
```
|
||||
|
||||
**Edit existing image:**
|
||||
Edit
|
||||
```bash
|
||||
uv run {baseDir}/scripts/generate_image.py --prompt "editing instructions" --filename "output-name.png" --input-image "path/to/input.png" [--resolution 1K|2K|4K]
|
||||
uv run {baseDir}/scripts/generate_image.py --prompt "edit instructions" --filename "output.png" --input-image "/path/in.png" --resolution 2K
|
||||
```
|
||||
|
||||
## API key
|
||||
API key
|
||||
- `GEMINI_API_KEY` env var
|
||||
- Or set `skills."nano-banana-pro".apiKey` / `skills."nano-banana-pro".env.GEMINI_API_KEY` in `~/.clawdis/clawdis.json`
|
||||
|
||||
The script uses:
|
||||
1) `GEMINI_API_KEY` environment variable
|
||||
2) `--api-key` argument (optional)
|
||||
|
||||
If the key is missing, check `skills."nano-banana-pro".apiKey` or `skills."nano-banana-pro".env.GEMINI_API_KEY` in `~/.clawdis/clawdis.json`, or ask the user to provide one.
|
||||
|
||||
## Resolution
|
||||
|
||||
- `1K` (default), `2K`, `4K`
|
||||
- Map user intent: low/1080 → `1K`, medium/2K → `2K`, high/ultra/4K → `4K`
|
||||
|
||||
## Filename
|
||||
|
||||
Use `{timestamp}-{short-name}.png` (yyyy-mm-dd-hh-mm-ss, lowercase, hyphens).
|
||||
|
||||
## Output
|
||||
|
||||
Do **not** read the image back; just report the saved path.
|
||||
Notes
|
||||
- Resolutions: `1K` (default), `2K`, `4K`.
|
||||
- Use timestamps in filenames: `yyyy-mm-dd-hh-mm-ss-name.png`.
|
||||
- Do not read the image back; report the saved path only.
|
||||
|
||||
36
skills/openai-image-gen/SKILL.md
Normal file
36
skills/openai-image-gen/SKILL.md
Normal file
@@ -0,0 +1,36 @@
|
||||
---
|
||||
name: openai-image-gen
|
||||
description: Batch-generate images via OpenAI Images API. Random prompt sampler + `index.html` gallery.
|
||||
metadata: {"clawdis":{"requires":{"bins":["python3"],"env":["OPENAI_API_KEY"]},"primaryEnv":"OPENAI_API_KEY"}}
|
||||
---
|
||||
|
||||
# OpenAI Image Gen
|
||||
|
||||
Generate a handful of "random but structured" prompts and render them via OpenAI Images API.
|
||||
|
||||
## Setup
|
||||
|
||||
- Needs env: `OPENAI_API_KEY`
|
||||
|
||||
## Run
|
||||
|
||||
From any directory (outputs to `~/Projects/tmp/...` when present; else `./tmp/...`):
|
||||
|
||||
```bash
|
||||
python3 ~/Projects/agent-scripts/skills/openai-image-gen/scripts/gen.py
|
||||
open ~/Projects/tmp/openai-image-gen-*/index.html
|
||||
```
|
||||
|
||||
Useful flags:
|
||||
|
||||
```bash
|
||||
python3 ~/Projects/agent-scripts/skills/openai-image-gen/scripts/gen.py --count 16 --model gpt-image-1.5
|
||||
python3 ~/Projects/agent-scripts/skills/openai-image-gen/scripts/gen.py --prompt "ultra-detailed studio photo of a lobster astronaut" --count 4
|
||||
python3 ~/Projects/agent-scripts/skills/openai-image-gen/scripts/gen.py --size 1536x1024 --quality high --out-dir ./out/images
|
||||
```
|
||||
|
||||
## Output
|
||||
|
||||
- `*.png` images
|
||||
- `prompts.json` (prompt to file mapping)
|
||||
- `index.html` (thumbnail gallery)
|
||||
@@ -1,15 +1,18 @@
|
||||
---
|
||||
name: openai-whisper
|
||||
description: Local speech-to-text using OpenAI Whisper CLI.
|
||||
description: Local speech-to-text with the Whisper CLI (no API key).
|
||||
metadata: {"clawdis":{"requires":{"bins":["whisper"]}}}
|
||||
---
|
||||
|
||||
# OpenAI Whisper (CLI)
|
||||
# Whisper (CLI)
|
||||
|
||||
Use `whisper` for local speech-to-text. Start with:
|
||||
Use `whisper` to transcribe audio locally.
|
||||
|
||||
```bash
|
||||
whisper --help
|
||||
```
|
||||
Quick start
|
||||
- `whisper /path/audio.mp3 --model medium --output_format txt --output_dir .`
|
||||
- `whisper /path/audio.m4a --task translate --output_format srt`
|
||||
|
||||
Prefer small files first; keep outputs in the current working directory.
|
||||
Notes
|
||||
- Models download to `~/.cache/whisper` on first run.
|
||||
- `--model` defaults to `turbo` on this install.
|
||||
- Use smaller models for speed, larger for accuracy.
|
||||
|
||||
@@ -1,15 +1,29 @@
|
||||
---
|
||||
name: openhue
|
||||
description: Control Philips Hue lights and scenes via CLI.
|
||||
description: Control Philips Hue lights/scenes via the OpenHue CLI.
|
||||
metadata: {"clawdis":{"requires":{"bins":["openhue"]}}}
|
||||
---
|
||||
|
||||
# OpenHue CLI
|
||||
|
||||
Use `openhue` to control Hue lights/scenes. Start with:
|
||||
Use `openhue` to control Hue lights and scenes via a Hue Bridge.
|
||||
|
||||
```bash
|
||||
openhue --help
|
||||
```
|
||||
Setup
|
||||
- Discover bridges: `openhue discover`
|
||||
- Guided setup: `openhue setup`
|
||||
|
||||
Prefer listing lights/scenes before toggling.
|
||||
Read
|
||||
- `openhue get light --json`
|
||||
- `openhue get room --json`
|
||||
- `openhue get scene --json`
|
||||
|
||||
Write
|
||||
- Turn on: `openhue set light <id-or-name> --on`
|
||||
- Turn off: `openhue set light <id-or-name> --off`
|
||||
- Brightness: `openhue set light <id> --on --brightness 50`
|
||||
- Color: `openhue set light <id> --on --rgb #3399FF`
|
||||
- Scene: `openhue set scene <scene-id>`
|
||||
|
||||
Notes
|
||||
- You may need to press the Hue Bridge button during setup.
|
||||
- Use `--room "Room Name"` when light names are ambiguous.
|
||||
|
||||
@@ -6,10 +6,17 @@ metadata: {"clawdis":{"requires":{"bins":["oracle"]}}}
|
||||
|
||||
# oracle
|
||||
|
||||
Use `oracle` to run a second-model review or debugging pass.
|
||||
Use `oracle` to bundle prompts + files for a second model.
|
||||
|
||||
```bash
|
||||
oracle --help
|
||||
```
|
||||
Quick start
|
||||
- `oracle --help`
|
||||
- `oracle -p "Review this" --file "src/**/*.ts"`
|
||||
- `oracle --render --copy -p "Summarize" --file docs/README.md`
|
||||
|
||||
If the binary is missing, use `npx -y @steipete/oracle --help`.
|
||||
Engines
|
||||
- API: requires `OPENAI_API_KEY` (plus `GEMINI_API_KEY` / `ANTHROPIC_API_KEY` for those models)
|
||||
- Browser: `oracle --engine browser ...` (uses logged-in Chrome)
|
||||
|
||||
Notes
|
||||
- If missing, run `npx -y @steipete/oracle --help`.
|
||||
- For long runs, add `--wait` to block until done.
|
||||
|
||||
@@ -1,20 +1,21 @@
|
||||
---
|
||||
name: peekaboo
|
||||
description: Capture and inspect macOS UI via the Peekaboo CLI.
|
||||
description: Capture and automate macOS UI with the Peekaboo CLI.
|
||||
metadata: {"clawdis":{"requires":{"bins":["peekaboo"]}}}
|
||||
---
|
||||
|
||||
# Peekaboo
|
||||
|
||||
Fast UI capture and inspection.
|
||||
|
||||
## Common commands
|
||||
Use `peekaboo` to capture, inspect, and interact with macOS UI.
|
||||
|
||||
Core commands
|
||||
- Capture: `peekaboo capture`
|
||||
- Inspect: `peekaboo see`
|
||||
- Click: `peekaboo click`
|
||||
- Inspect: `peekaboo see --annotate`
|
||||
- Click: `peekaboo click --target "..."`
|
||||
- List windows: `peekaboo list`
|
||||
- Tool info: `peekaboo tools`
|
||||
- Permissions: `peekaboo permissions status`
|
||||
|
||||
Requires Screen Recording + Accessibility permissions.
|
||||
Notes
|
||||
- Requires Screen Recording + Accessibility permissions.
|
||||
- Use `peekaboo see --annotate` to identify targets before clicking.
|
||||
|
||||
@@ -1,15 +1,25 @@
|
||||
---
|
||||
name: qmd
|
||||
description: Search notes/content with qmd (BM25 + vectors + rerank).
|
||||
description: Local search/indexing CLI (BM25 + vectors + rerank) with MCP mode.
|
||||
metadata: {"clawdis":{"requires":{"bins":["qmd"]}}}
|
||||
---
|
||||
|
||||
# qmd
|
||||
|
||||
Use `qmd` to search local content. Start with:
|
||||
Use `qmd` to index local files and search them.
|
||||
|
||||
```bash
|
||||
qmd --help
|
||||
```
|
||||
Indexing
|
||||
- Add collection: `qmd collection add /path --name docs --mask "**/*.md"`
|
||||
- Update index: `qmd update`
|
||||
- Status: `qmd status`
|
||||
|
||||
Use concise queries and refine with filters if available.
|
||||
Search
|
||||
- BM25: `qmd search "query"`
|
||||
- Vector: `qmd vsearch "query"`
|
||||
- Hybrid: `qmd query "query"`
|
||||
- Get doc: `qmd get docs/path.md:10 -l 40`
|
||||
|
||||
Notes
|
||||
- Embeddings/rerank use Ollama at `OLLAMA_URL` (default `http://localhost:11434`).
|
||||
- Index lives under `~/.cache/qmd` by default.
|
||||
- MCP mode: `qmd mcp`.
|
||||
|
||||
@@ -1,15 +1,29 @@
|
||||
---
|
||||
name: sag
|
||||
description: ElevenLabs text-to-speech with mac-style say UX.
|
||||
metadata: {"clawdis":{"requires":{"bins":["sag"]}}}
|
||||
metadata: {"clawdis":{"requires":{"bins":["sag"],"env":["ELEVENLABS_API_KEY"]},"primaryEnv":"ELEVENLABS_API_KEY"}}
|
||||
---
|
||||
|
||||
# sag
|
||||
|
||||
Use `sag` to speak or stream text to speakers. Start with:
|
||||
Use `sag` for ElevenLabs TTS with local playback.
|
||||
|
||||
```bash
|
||||
sag --help
|
||||
```
|
||||
API key (required)
|
||||
- `ELEVENLABS_API_KEY` (preferred)
|
||||
- `SAG_API_KEY` also supported by the CLI
|
||||
|
||||
Confirm the voice/speaker before long output.
|
||||
Quick start
|
||||
- `sag "Hello there"`
|
||||
- `sag speak -v "Roger" "Hello"`
|
||||
- `sag voices`
|
||||
- `sag prompting` (model-specific tips)
|
||||
|
||||
Model notes
|
||||
- Default: `eleven_v3` (expressive)
|
||||
- Stable: `eleven_multilingual_v2`
|
||||
- Fast: `eleven_flash_v2_5`
|
||||
|
||||
Voice defaults
|
||||
- `ELEVENLABS_VOICE_ID` or `SAG_VOICE_ID`
|
||||
|
||||
Confirm voice + speaker before long output.
|
||||
|
||||
@@ -6,12 +6,20 @@ metadata: {"clawdis":{"requires":{"bins":["sonos"]}}}
|
||||
|
||||
# Sonos CLI
|
||||
|
||||
Use `sonos` to control Sonos speakers.
|
||||
Use `sonos` to control Sonos speakers on the local network.
|
||||
|
||||
- Discover: `sonos discover`
|
||||
- Status: `sonos status`
|
||||
- Playback: `sonos play|pause|stop`
|
||||
- Volume: `sonos volume set <0-100>`
|
||||
- Group: `sonos group <leader> <member>`
|
||||
Quick start
|
||||
- `sonos discover`
|
||||
- `sonos status --name "Kitchen"`
|
||||
- `sonos play|pause|stop --name "Kitchen"`
|
||||
- `sonos volume set 15 --name "Kitchen"`
|
||||
|
||||
If SSDP fails, specify `--ip <speaker-ip>`.
|
||||
Common tasks
|
||||
- Grouping: `sonos group status|join|unjoin|party|solo`
|
||||
- Favorites: `sonos favorites list|open`
|
||||
- Queue: `sonos queue list|play|clear`
|
||||
- Spotify search (via SMAPI): `sonos smapi search --service "Spotify" --category tracks "query"`
|
||||
|
||||
Notes
|
||||
- If SSDP fails, specify `--ip <speaker-ip>`.
|
||||
- Spotify Web API search is optional and requires `SPOTIFY_CLIENT_ID/SECRET`.
|
||||
|
||||
@@ -1,15 +1,24 @@
|
||||
---
|
||||
name: spotify-player
|
||||
description: Control Spotify playback from the terminal.
|
||||
metadata: {"clawdis":{"requires":{"bins":["spotify-player"]}}}
|
||||
description: Terminal Spotify client (TUI + CLI commands) for playback and search.
|
||||
metadata: {"clawdis":{"requires":{"bins":["spotify_player"]}}}
|
||||
---
|
||||
|
||||
# spotify-player
|
||||
# spotify_player
|
||||
|
||||
Use `spotify-player` to search, queue, and control playback.
|
||||
Use `spotify_player` for Spotify playback/search in the terminal.
|
||||
|
||||
```bash
|
||||
spotify-player --help
|
||||
```
|
||||
Requirements
|
||||
- Spotify Premium account.
|
||||
- First-time auth: `spotify_player authenticate`.
|
||||
|
||||
Confirm the device/target if multiple are available.
|
||||
Common CLI commands
|
||||
- Search: `spotify_player search "query"`
|
||||
- Playback: `spotify_player playback play|pause|next|previous`
|
||||
- Connect device: `spotify_player connect`
|
||||
- Like track: `spotify_player like`
|
||||
|
||||
Notes
|
||||
- Config folder: `~/.config/spotify-player` (e.g., `app.toml`).
|
||||
- For Spotify Connect integration, set a user `client_id` in config.
|
||||
- TUI shortcuts are available via `?` in the app.
|
||||
|
||||
@@ -1,15 +1,27 @@
|
||||
---
|
||||
name: wacli
|
||||
description: WhatsApp CLI for syncing, searching, and sending messages.
|
||||
description: WhatsApp CLI for sync, search, and sending messages.
|
||||
metadata: {"clawdis":{"requires":{"bins":["wacli"]}}}
|
||||
---
|
||||
|
||||
# wacli
|
||||
|
||||
Use `wacli` to sync/search/send WhatsApp messages. Start with:
|
||||
Use `wacli` for WhatsApp sync/search/send via WhatsApp Web protocol.
|
||||
|
||||
```bash
|
||||
wacli --help
|
||||
```
|
||||
Auth + sync
|
||||
- `wacli auth` (QR login + initial sync)
|
||||
- `wacli sync --follow` (continuous sync)
|
||||
- `wacli doctor`
|
||||
|
||||
Confirm before sending messages.
|
||||
Search + history
|
||||
- `wacli messages search "query"`
|
||||
- `wacli history backfill --chat <jid> --requests 5 --count 50`
|
||||
|
||||
Send
|
||||
- Text: `wacli send text --to 1234567890 --message "hello"`
|
||||
- File: `wacli send file --to 1234567890 --file /path/pic.jpg --caption "hi"`
|
||||
|
||||
Notes
|
||||
- Store dir: `~/.wacli` (override with `--store`).
|
||||
- Backfill requires your phone online; results are best-effort.
|
||||
- Confirm recipient + message before sending.
|
||||
|
||||
Reference in New Issue
Block a user