pawmode 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +337 -0
- package/dist/index.js +2925 -0
- package/dist/permissions-BHOAvP8i.js +55 -0
- package/dist/permissions-CoaVX2ZM.js +3 -0
- package/dist/skills-CJ_pyPlv.js +53 -0
- package/dist/skills-DwMXaN3R.js +3 -0
- package/package.json +60 -0
- package/skills/c-ai/SKILL.md +68 -0
- package/skills/c-apps/SKILL.md +42 -0
- package/skills/c-bluetooth/SKILL.md +42 -0
- package/skills/c-briefing/SKILL.md +80 -0
- package/skills/c-browser/SKILL.md +66 -0
- package/skills/c-calendar/SKILL.md +47 -0
- package/skills/c-core/SKILL.md +83 -0
- package/skills/c-cron/SKILL.md +58 -0
- package/skills/c-display/SKILL.md +45 -0
- package/skills/c-email/SKILL.md +54 -0
- package/skills/c-files/SKILL.md +52 -0
- package/skills/c-github/SKILL.md +61 -0
- package/skills/c-jira/SKILL.md +66 -0
- package/skills/c-lights/SKILL.md +55 -0
- package/skills/c-linear/SKILL.md +64 -0
- package/skills/c-location/SKILL.md +47 -0
- package/skills/c-memory/SKILL.md +86 -0
- package/skills/c-messaging/SKILL.md +51 -0
- package/skills/c-music/SKILL.md +59 -0
- package/skills/c-network/SKILL.md +71 -0
- package/skills/c-notes/SKILL.md +45 -0
- package/skills/c-notify/SKILL.md +39 -0
- package/skills/c-notion/SKILL.md +53 -0
- package/skills/c-obsidian/SKILL.md +63 -0
- package/skills/c-research/SKILL.md +45 -0
- package/skills/c-screen/SKILL.md +55 -0
- package/skills/c-secrets/SKILL.md +62 -0
- package/skills/c-slack/SKILL.md +46 -0
- package/skills/c-social/SKILL.md +57 -0
- package/skills/c-speakers/SKILL.md +59 -0
- package/skills/c-system/SKILL.md +72 -0
- package/skills/c-tasks/SKILL.md +60 -0
- package/skills/c-telegram/SKILL.md +66 -0
- package/skills/c-tracking/SKILL.md +46 -0
- package/skills/c-video/SKILL.md +56 -0
- package/skills/c-voice/SKILL.md +58 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-network
|
|
3
|
+
description: DNS lookups with doggo and readable HTTP requests with httpie — modern networking tools for the terminal.
|
|
4
|
+
tags: [dns, http, networking, api]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Networking
|
|
8
|
+
|
|
9
|
+
## doggo (DNS client)
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# Basic DNS lookup
|
|
13
|
+
doggo example.com
|
|
14
|
+
|
|
15
|
+
# Specific record type
|
|
16
|
+
doggo example.com MX
|
|
17
|
+
doggo example.com AAAA
|
|
18
|
+
doggo example.com TXT
|
|
19
|
+
doggo example.com NS
|
|
20
|
+
doggo example.com CNAME
|
|
21
|
+
|
|
22
|
+
# Use specific nameserver
|
|
23
|
+
doggo example.com --nameserver 1.1.1.1
|
|
24
|
+
doggo example.com --nameserver 8.8.8.8
|
|
25
|
+
|
|
26
|
+
# DNS over HTTPS
|
|
27
|
+
doggo example.com --class IN --type A --nameserver https://cloudflare-dns.com/dns-query
|
|
28
|
+
|
|
29
|
+
# JSON output
|
|
30
|
+
doggo example.com --json
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## httpie (HTTP client)
|
|
34
|
+
|
|
35
|
+
Human-friendly alternative to curl:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
# GET request
|
|
39
|
+
http GET api.example.com/users
|
|
40
|
+
|
|
41
|
+
# POST with JSON body
|
|
42
|
+
http POST api.example.com/users name=John email=john@example.com
|
|
43
|
+
|
|
44
|
+
# Headers
|
|
45
|
+
http GET api.example.com Authorization:"Bearer token123"
|
|
46
|
+
|
|
47
|
+
# Download file
|
|
48
|
+
http --download https://example.com/file.zip
|
|
49
|
+
|
|
50
|
+
# Form upload
|
|
51
|
+
http --form POST api.example.com file@photo.jpg
|
|
52
|
+
|
|
53
|
+
# With auth
|
|
54
|
+
http -a user:password GET api.example.com/protected
|
|
55
|
+
|
|
56
|
+
# Follow redirects
|
|
57
|
+
http --follow GET example.com
|
|
58
|
+
|
|
59
|
+
# Show only response headers
|
|
60
|
+
http --headers GET example.com
|
|
61
|
+
|
|
62
|
+
# Verbose (show request + response)
|
|
63
|
+
http --verbose GET example.com
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Guidelines
|
|
67
|
+
|
|
68
|
+
- Use `doggo` for DNS debugging instead of `dig` or `nslookup`
|
|
69
|
+
- Use `http` (httpie) for API testing instead of curl — output is colorized and formatted
|
|
70
|
+
- For POST requests, httpie auto-detects JSON vs form data
|
|
71
|
+
- `key=value` sends as JSON string, `key:=123` sends as JSON number
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-notes
|
|
3
|
+
description: Manage Apple Notes and Apple Reminders from the CLI. Uses memo for Notes and remindctl for Reminders. Supports listing, searching, reading, creating notes, and adding/completing reminders.
|
|
4
|
+
tags: [notes, reminders, apple, memo, remindctl]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
This skill manages Apple Notes via `memo` and Apple Reminders via `remindctl`.
|
|
8
|
+
|
|
9
|
+
## Apple Notes — `memo`
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
memo list # List all notes
|
|
13
|
+
memo list --folder "Work" # List notes in a folder
|
|
14
|
+
memo search "query" # Search notes by content or title
|
|
15
|
+
memo read "Note Title" # Read a specific note
|
|
16
|
+
memo create "Title" "Body text" # Create a new note
|
|
17
|
+
memo create --folder "Work" "Title" "Body"
|
|
18
|
+
memo delete "Note Title" # Delete a note
|
|
19
|
+
memo folders # List all folders
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Apple Reminders — `remindctl`
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
remindctl list # List all reminders
|
|
26
|
+
remindctl list "List Name" # List reminders in a specific list
|
|
27
|
+
remindctl add "Task" --due "tomorrow 9am"
|
|
28
|
+
remindctl add "Task" --list "Work" --due "2026-03-01"
|
|
29
|
+
remindctl complete "Task name" # Mark reminder as complete
|
|
30
|
+
remindctl delete "Task name" # Delete a reminder
|
|
31
|
+
remindctl lists # Show all reminder lists
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Usage Guidelines
|
|
35
|
+
|
|
36
|
+
- Use `memo search` before creating to avoid duplicates.
|
|
37
|
+
- Dates for `remindctl --due` accept natural language ("tomorrow", "next Monday") and ISO format.
|
|
38
|
+
- If `memo` or `remindctl` is not found, inform the user and suggest installing the OpenPaw c-notes skill.
|
|
39
|
+
- Notes are stored locally in Apple Notes app — no external API needed.
|
|
40
|
+
|
|
41
|
+
## Notes
|
|
42
|
+
|
|
43
|
+
- `memo` requires macOS and Apple Notes app.
|
|
44
|
+
- `remindctl` requires macOS and Apple Reminders app.
|
|
45
|
+
- Both tools operate on the local user account.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-notify
|
|
3
|
+
description: Send native macOS notification center alerts from the command line using terminal-notifier.
|
|
4
|
+
tags: [notifications, alerts, macos]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Notifications (terminal-notifier)
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# Simple notification
|
|
11
|
+
terminal-notifier -title "OpenPaw" -message "Task complete!"
|
|
12
|
+
|
|
13
|
+
# With subtitle and sound
|
|
14
|
+
terminal-notifier -title "Build" -subtitle "Project X" -message "Done!" -sound default
|
|
15
|
+
|
|
16
|
+
# Open URL when clicked
|
|
17
|
+
terminal-notifier -title "PR Merged" -message "Click to view" -open "https://github.com/..."
|
|
18
|
+
|
|
19
|
+
# Activate app when clicked
|
|
20
|
+
terminal-notifier -title "Music" -message "Now playing" -activate "com.spotify.client"
|
|
21
|
+
|
|
22
|
+
# Group notifications (replaces previous in same group)
|
|
23
|
+
terminal-notifier -title "Progress" -message "50%" -group "build"
|
|
24
|
+
terminal-notifier -title "Progress" -message "100%" -group "build"
|
|
25
|
+
|
|
26
|
+
# Remove a notification group
|
|
27
|
+
terminal-notifier -remove "build"
|
|
28
|
+
|
|
29
|
+
# Custom app icon
|
|
30
|
+
terminal-notifier -title "Alert" -message "Hello" -appIcon /path/to/icon.png
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Guidelines
|
|
34
|
+
|
|
35
|
+
- Use notifications to alert the user when long tasks complete
|
|
36
|
+
- Group related notifications so they don't spam
|
|
37
|
+
- Add `-sound default` for important alerts
|
|
38
|
+
- Use `-open URL` to make notifications actionable
|
|
39
|
+
- Keep messages short — notifications truncate long text
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-notion
|
|
3
|
+
description: Manage Notion pages and databases from the CLI using notion-cli. Create, read, search, and update pages. Query databases, add entries, and manage blocks and properties.
|
|
4
|
+
tags: [notion, pages, databases, notion-cli, productivity]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
This skill manages Notion workspaces using the `notion-cli` tool.
|
|
8
|
+
|
|
9
|
+
## Pages
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
notion-cli page list # List recent pages
|
|
13
|
+
notion-cli page search "query" # Search pages by title/content
|
|
14
|
+
notion-cli page get <page-id> # Get page content
|
|
15
|
+
notion-cli page create --title "Title" --parent <page-id>
|
|
16
|
+
notion-cli page create --title "Title" --content "Body text"
|
|
17
|
+
notion-cli page update <page-id> --title "New Title"
|
|
18
|
+
notion-cli page delete <page-id>
|
|
19
|
+
notion-cli page append <page-id> "Additional content"
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Databases
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
notion-cli db list # List all databases
|
|
26
|
+
notion-cli db query <db-id> # Query all entries
|
|
27
|
+
notion-cli db query <db-id> --filter "Status=Done"
|
|
28
|
+
notion-cli db query <db-id> --sort "Created" --desc
|
|
29
|
+
notion-cli db add <db-id> --props "Name=Task,Status=In Progress"
|
|
30
|
+
notion-cli db update <page-id> --props "Status=Done"
|
|
31
|
+
notion-cli db get <db-id> # Get database schema
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Blocks
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
notion-cli block list <page-id> # List blocks in a page
|
|
38
|
+
notion-cli block append <page-id> --type "paragraph" --text "Hello"
|
|
39
|
+
notion-cli block append <page-id> --type "todo" --text "Task item"
|
|
40
|
+
notion-cli block delete <block-id>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Usage Guidelines
|
|
44
|
+
|
|
45
|
+
- Use `notion-cli page search` to find pages before creating duplicates.
|
|
46
|
+
- Page and database IDs can be found in the Notion URL after the workspace slug.
|
|
47
|
+
- The `--props` flag uses `Key=Value` pairs separated by commas.
|
|
48
|
+
- Notion API token must be configured: `notion-cli auth` or via `NOTION_TOKEN` env var.
|
|
49
|
+
|
|
50
|
+
## Notes
|
|
51
|
+
|
|
52
|
+
- Requires a Notion integration token with appropriate permissions.
|
|
53
|
+
- If `notion-cli` is missing, suggest installing the OpenPaw c-notion skill.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-obsidian
|
|
3
|
+
description: Obsidian vault as persistent memory — daily notes, session logs, knowledge capture, and search across your entire vault.
|
|
4
|
+
tags: [obsidian, notes, knowledge-base, memory, daily-notes]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Obsidian — Knowledge Base & Memory
|
|
8
|
+
|
|
9
|
+
Manage your Obsidian vault as a persistent memory layer. Use it for daily notes, session logs, knowledge capture, and searching your second brain.
|
|
10
|
+
|
|
11
|
+
## CLI Commands
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# Search before creating (avoid duplicates)
|
|
15
|
+
obsidian-cli search "query"
|
|
16
|
+
obsidian-cli search --tag "project" --folder "Work"
|
|
17
|
+
|
|
18
|
+
# Create and edit
|
|
19
|
+
obsidian-cli create "Title" --content "Body"
|
|
20
|
+
obsidian-cli create "Title" --template "Daily Note"
|
|
21
|
+
obsidian-cli append "Note Title" "Additional content"
|
|
22
|
+
|
|
23
|
+
# Open, list, vault
|
|
24
|
+
obsidian-cli open "Note Title"
|
|
25
|
+
obsidian-cli list --folder "Projects"
|
|
26
|
+
obsidian-cli tags
|
|
27
|
+
obsidian-cli vault --list
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Daily Notes Integration
|
|
31
|
+
|
|
32
|
+
When the user starts a session, check for today's daily note:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
obsidian-cli search --folder "Daily Notes" "$(date +%Y-%m-%d)"
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
If none exists, create one:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
obsidian-cli create "$(date +%Y-%m-%d)" --folder "Daily Notes" --content "# $(date +%Y-%m-%d)\n\n## Tasks\n\n## Notes\n\n## Session Log\n"
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Append a session log entry at the end of each session:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
obsidian-cli append "$(date +%Y-%m-%d)" "### Session $(date +%H:%M)\n- [summary of what was done]\n"
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Memory Sync
|
|
51
|
+
|
|
52
|
+
If both c-memory and c-obsidian are installed, keep them in sync:
|
|
53
|
+
- Key facts in `~/.claude/memory/MEMORY.md` should also appear in an Obsidian note (e.g., `AI/Memory.md`)
|
|
54
|
+
- When the user says "remember this", save to both systems
|
|
55
|
+
- Obsidian is the long-term archive; `~/.claude/memory/` is the quick-access cache
|
|
56
|
+
|
|
57
|
+
## Guidelines
|
|
58
|
+
|
|
59
|
+
- Always search before creating to avoid duplicate notes
|
|
60
|
+
- Use frontmatter tags: `tags: [project, active]`
|
|
61
|
+
- File paths are relative to vault root
|
|
62
|
+
- Obsidian app does not need to be running
|
|
63
|
+
- Keep daily notes in a consistent folder (default: `Daily Notes/`)
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-research
|
|
3
|
+
description: Summarize web URLs, PDFs, YouTube videos, and podcasts using the `summarize` CLI. Instantly extract key points from any content type without manual reading. Useful for research, link digests, and media review.
|
|
4
|
+
tags: [research, summarize, ai, youtube, pdf, web, podcast]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What This Skill Does
|
|
8
|
+
|
|
9
|
+
Uses the `summarize` CLI to extract key information from URLs, PDFs, YouTube videos, and podcast feeds. Returns a concise summary of the content.
|
|
10
|
+
|
|
11
|
+
## CLI Tool: `summarize`
|
|
12
|
+
|
|
13
|
+
### Common Commands
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Summarize a web URL
|
|
17
|
+
summarize https://example.com/article
|
|
18
|
+
|
|
19
|
+
# Summarize a PDF (local file or URL)
|
|
20
|
+
summarize /path/to/document.pdf
|
|
21
|
+
summarize https://example.com/report.pdf
|
|
22
|
+
|
|
23
|
+
# Summarize a YouTube video
|
|
24
|
+
summarize https://www.youtube.com/watch?v=VIDEO_ID
|
|
25
|
+
|
|
26
|
+
# Summarize a podcast episode
|
|
27
|
+
summarize https://podcast-feed-url.com/episode.mp3
|
|
28
|
+
|
|
29
|
+
# Request a specific output format
|
|
30
|
+
summarize --format bullets https://example.com/article
|
|
31
|
+
summarize --format paragraph https://example.com/article
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Usage Guidelines
|
|
35
|
+
|
|
36
|
+
1. Always pass the full URL or absolute file path.
|
|
37
|
+
2. For YouTube, use the full `watch?v=` URL — short links may not resolve.
|
|
38
|
+
3. If the user asks to "look up", "read", or "check" a link, default to summarizing it.
|
|
39
|
+
4. Present the summary in a clean, readable format — use bullet points for articles, prose for videos/podcasts.
|
|
40
|
+
|
|
41
|
+
## Notes
|
|
42
|
+
|
|
43
|
+
- Requires an active internet connection for remote content.
|
|
44
|
+
- Very large PDFs may take longer to process.
|
|
45
|
+
- If `summarize` is not installed, check the project docs for the install method.
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-screen
|
|
3
|
+
description: Capture screenshots and extract text via OCR using `peekaboo`, and capture webcam images using `camsnap`. Enables visual analysis of screen content and camera input.
|
|
4
|
+
tags: [screenshot, ocr, webcam, peekaboo, camsnap, vision]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What This Skill Does
|
|
8
|
+
|
|
9
|
+
Enables Claude to take screenshots, extract text from the screen via OCR, and capture webcam images for visual analysis using `peekaboo` and `camsnap`.
|
|
10
|
+
|
|
11
|
+
## Available CLI Tools
|
|
12
|
+
|
|
13
|
+
### `peekaboo` — Screenshots & OCR
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Take a full screenshot and save to file
|
|
17
|
+
peekaboo screenshot --output ~/Desktop/screen.png
|
|
18
|
+
|
|
19
|
+
# Take screenshot and extract all text via OCR
|
|
20
|
+
peekaboo ocr
|
|
21
|
+
|
|
22
|
+
# OCR a specific region (x, y, width, height)
|
|
23
|
+
peekaboo ocr --region 0,0,1280,720
|
|
24
|
+
|
|
25
|
+
# Screenshot a specific window by app name
|
|
26
|
+
peekaboo screenshot --app "Safari" --output window.png
|
|
27
|
+
|
|
28
|
+
# Screenshot and pipe to stdout for immediate analysis
|
|
29
|
+
peekaboo screenshot --stdout
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### `camsnap` — Webcam Capture
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
# Capture a single webcam frame
|
|
36
|
+
camsnap --output ~/Desktop/photo.jpg
|
|
37
|
+
|
|
38
|
+
# Capture with a specific camera device
|
|
39
|
+
camsnap --device 0 --output shot.jpg
|
|
40
|
+
|
|
41
|
+
# Capture and print file path
|
|
42
|
+
camsnap --output /tmp/cam.jpg && echo "Saved"
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Usage Guidelines
|
|
46
|
+
|
|
47
|
+
- Use `peekaboo ocr` when the user wants text extracted from the screen
|
|
48
|
+
- Use `camsnap` only when the user explicitly wants a webcam image
|
|
49
|
+
- After capturing, read the image file to analyze its contents visually
|
|
50
|
+
|
|
51
|
+
## Notes
|
|
52
|
+
|
|
53
|
+
- macOS screen recording permission required for `peekaboo`
|
|
54
|
+
- Camera permission required for `camsnap`
|
|
55
|
+
- OCR accuracy depends on font size and screen resolution
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-secrets
|
|
3
|
+
description: Look up and manage secrets using 1Password CLI (`op`) or Bitwarden CLI (`bw`). Retrieve passwords, generate new passwords, and copy credentials to clipboard. CRITICAL: Never display passwords in plain text — always copy to clipboard.
|
|
4
|
+
tags: [passwords, secrets, 1password, bitwarden, credentials, security]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What This Skill Does
|
|
8
|
+
|
|
9
|
+
Retrieves credentials and generates passwords using `op` (1Password CLI) or `bw` (Bitwarden CLI). All passwords are copied to clipboard — never printed to the terminal.
|
|
10
|
+
|
|
11
|
+
## CRITICAL RULE
|
|
12
|
+
|
|
13
|
+
**NEVER display passwords, tokens, or secret values in plain text output.** Always use clipboard copy commands. This applies to every secret retrieval, no exceptions.
|
|
14
|
+
|
|
15
|
+
## CLI Tools
|
|
16
|
+
|
|
17
|
+
### 1Password (`op`)
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
# Copy a password to clipboard (PREFERRED — never print)
|
|
21
|
+
op item get "GitHub" --fields password | pbcopy
|
|
22
|
+
|
|
23
|
+
# Look up an item
|
|
24
|
+
op item get "GitHub"
|
|
25
|
+
|
|
26
|
+
# List all items
|
|
27
|
+
op item list
|
|
28
|
+
|
|
29
|
+
# Generate a password (copy to clipboard)
|
|
30
|
+
op generate-password --length 20 --symbols | pbcopy
|
|
31
|
+
|
|
32
|
+
# Get a specific field
|
|
33
|
+
op item get "AWS" --fields "Access Key ID"
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Bitwarden (`bw`)
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# Unlock vault first (session token required)
|
|
40
|
+
export BW_SESSION=$(bw unlock --raw)
|
|
41
|
+
|
|
42
|
+
# Copy password to clipboard (PREFERRED)
|
|
43
|
+
bw get password "GitHub" | pbcopy
|
|
44
|
+
|
|
45
|
+
# Look up an item
|
|
46
|
+
bw get item "GitHub"
|
|
47
|
+
|
|
48
|
+
# Generate a password (copy to clipboard)
|
|
49
|
+
bw generate --length 20 --special | pbcopy
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Usage Guidelines
|
|
53
|
+
|
|
54
|
+
1. **Always pipe passwords to `pbcopy`** — confirm "Copied to clipboard" to the user instead of showing the value.
|
|
55
|
+
2. If the user asks to "show" or "display" a password, redirect: copy it to clipboard and inform them.
|
|
56
|
+
3. For lookups, show non-sensitive fields (username, URL, notes) but never the password itself.
|
|
57
|
+
4. If vault is locked, prompt the user to unlock it manually before proceeding.
|
|
58
|
+
|
|
59
|
+
## Notes
|
|
60
|
+
|
|
61
|
+
- `op` requires 1Password app installed and CLI signed in: `op signin`
|
|
62
|
+
- `bw` requires Bitwarden CLI installed and vault unlocked each session
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-slack
|
|
3
|
+
description: Send messages and upload files to Slack channels using the `slack` CLI. Supports direct messages, channel posts, file uploads, and thread replies.
|
|
4
|
+
tags: [slack, messaging, communication, files]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What This Skill Does
|
|
8
|
+
|
|
9
|
+
Enables Claude to send messages and share files to Slack channels and users via the `slack` CLI tool.
|
|
10
|
+
|
|
11
|
+
## Available CLI Tool: `slack`
|
|
12
|
+
|
|
13
|
+
### Common Commands
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Send a message to a channel
|
|
17
|
+
slack chat send --channel "#general" --text "Hello team"
|
|
18
|
+
|
|
19
|
+
# Send a direct message to a user
|
|
20
|
+
slack chat send --channel "@username" --text "Hey!"
|
|
21
|
+
|
|
22
|
+
# Upload a file to a channel
|
|
23
|
+
slack files upload --channel "#general" --file ./report.pdf --title "Weekly Report"
|
|
24
|
+
|
|
25
|
+
# Post with markdown formatting
|
|
26
|
+
slack chat send --channel "#dev" --text "*Bold* and _italic_ text"
|
|
27
|
+
|
|
28
|
+
# Reply in a thread (requires thread timestamp)
|
|
29
|
+
slack chat send --channel "#general" --thread-ts "1234567890.123456" --text "Reply here"
|
|
30
|
+
|
|
31
|
+
# List channels
|
|
32
|
+
slack channels list
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Usage Guidelines
|
|
36
|
+
|
|
37
|
+
- Always confirm the target channel or user before sending
|
|
38
|
+
- Use `#channel-name` syntax for channels and `@username` for DMs
|
|
39
|
+
- File uploads support PDF, images, text, and most common formats
|
|
40
|
+
- Keep messages concise; use threads for follow-ups
|
|
41
|
+
|
|
42
|
+
## Notes
|
|
43
|
+
|
|
44
|
+
- Requires `slack` CLI to be installed and authenticated (`slack auth`)
|
|
45
|
+
- Bot token must have `chat:write` and `files:write` scopes
|
|
46
|
+
- Rate limits apply — avoid bulk sending in tight loops
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-social
|
|
3
|
+
description: Post tweets, read timelines, search, and reply on Twitter/X using the `bird` CLI. Supports text posts, media attachments, quote tweets, and user lookups.
|
|
4
|
+
tags: [twitter, x, social-media, bird, posting]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What This Skill Does
|
|
8
|
+
|
|
9
|
+
Enables Claude to interact with Twitter/X — posting, reading, searching, and replying — via the `bird` CLI.
|
|
10
|
+
|
|
11
|
+
## Available CLI Tool: `bird`
|
|
12
|
+
|
|
13
|
+
### Common Commands
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Post a tweet
|
|
17
|
+
bird tweet post "Hello world!"
|
|
18
|
+
|
|
19
|
+
# Post with media
|
|
20
|
+
bird tweet post "Check this out" --media ./image.png
|
|
21
|
+
|
|
22
|
+
# Read your home timeline
|
|
23
|
+
bird timeline home
|
|
24
|
+
|
|
25
|
+
# Read a user's timeline
|
|
26
|
+
bird timeline user --username elonmusk
|
|
27
|
+
|
|
28
|
+
# Search tweets
|
|
29
|
+
bird search "openai announcement" --limit 10
|
|
30
|
+
|
|
31
|
+
# Reply to a tweet
|
|
32
|
+
bird tweet reply --id 1234567890 --text "Great point!"
|
|
33
|
+
|
|
34
|
+
# Quote tweet
|
|
35
|
+
bird tweet quote --id 1234567890 --text "Adding context here"
|
|
36
|
+
|
|
37
|
+
# Like a tweet
|
|
38
|
+
bird tweet like --id 1234567890
|
|
39
|
+
|
|
40
|
+
# Get your own profile info
|
|
41
|
+
bird user me
|
|
42
|
+
|
|
43
|
+
# Look up a user
|
|
44
|
+
bird user get --username sama
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Usage Guidelines
|
|
48
|
+
|
|
49
|
+
- Keep tweets under 280 characters; check length before posting
|
|
50
|
+
- Search results are newest-first by default
|
|
51
|
+
- Always confirm content before posting on behalf of the user
|
|
52
|
+
|
|
53
|
+
## Notes
|
|
54
|
+
|
|
55
|
+
- Requires `bird` CLI authenticated with Twitter API v2 credentials
|
|
56
|
+
- Media uploads support JPG, PNG, GIF, and MP4
|
|
57
|
+
- Rate limits: 50 tweets/day on free tier; check before bulk posting
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-speakers
|
|
3
|
+
description: Control Sonos speakers using the `sonos` CLI (sonoscli). Play, pause, adjust volume, manage groups, and play favorites across rooms and speaker zones.
|
|
4
|
+
tags: [sonos, speakers, audio, smart-home, music, sonoscli]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What This Skill Does
|
|
8
|
+
|
|
9
|
+
Enables Claude to control Sonos speakers — playback, volume, grouping, and favorites — via the `sonos` CLI.
|
|
10
|
+
|
|
11
|
+
## Available CLI Tool: `sonos`
|
|
12
|
+
|
|
13
|
+
### Common Commands
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# List all Sonos rooms/players
|
|
17
|
+
sonos rooms
|
|
18
|
+
|
|
19
|
+
# Play and pause
|
|
20
|
+
sonos play --room "Living Room"
|
|
21
|
+
sonos pause --room "Living Room"
|
|
22
|
+
|
|
23
|
+
# Skip tracks
|
|
24
|
+
sonos next --room "Living Room"
|
|
25
|
+
sonos previous --room "Living Room"
|
|
26
|
+
|
|
27
|
+
# Set volume (0-100)
|
|
28
|
+
sonos volume 50 --room "Living Room"
|
|
29
|
+
|
|
30
|
+
# Adjust volume relative
|
|
31
|
+
sonos volume +10 --room "Kitchen"
|
|
32
|
+
sonos volume -5 --room "Kitchen"
|
|
33
|
+
|
|
34
|
+
# Play a favorite (from Sonos app favorites)
|
|
35
|
+
sonos favorite "Morning Jazz" --room "Bedroom"
|
|
36
|
+
|
|
37
|
+
# List favorites
|
|
38
|
+
sonos favorites
|
|
39
|
+
|
|
40
|
+
# Group rooms together
|
|
41
|
+
sonos group "Kitchen" --with "Living Room"
|
|
42
|
+
|
|
43
|
+
# Ungroup a room
|
|
44
|
+
sonos ungroup "Kitchen"
|
|
45
|
+
|
|
46
|
+
# Show now playing info
|
|
47
|
+
sonos status --room "Living Room"
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Usage Guidelines
|
|
51
|
+
|
|
52
|
+
- Always specify `--room` to target the correct speaker
|
|
53
|
+
- Use `sonos rooms` to discover available rooms if unsure of names
|
|
54
|
+
- Grouping joins a room into the specified room's group
|
|
55
|
+
|
|
56
|
+
## Notes
|
|
57
|
+
|
|
58
|
+
- Requires `sonos` CLI (sonoscli) installed and Sonos system on local network
|
|
59
|
+
- Favorites must be pre-configured in the Sonos app
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: c-system
|
|
3
|
+
description: macOS Swiss Army Knife — control volume, wifi, battery, dock, display, trash, firewall, screensaver, shutdown, and more via m-cli.
|
|
4
|
+
tags: [macos, system, volume, wifi, battery]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# System Control (m-cli)
|
|
8
|
+
|
|
9
|
+
Swiss Army Knife for macOS. Run `m` followed by a category:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# Volume
|
|
13
|
+
m volume 50 # Set volume to 50%
|
|
14
|
+
m volume mute # Mute
|
|
15
|
+
m volume unmute # Unmute
|
|
16
|
+
|
|
17
|
+
# WiFi
|
|
18
|
+
m wifi status # Show WiFi status
|
|
19
|
+
m wifi scan # Scan available networks
|
|
20
|
+
m wifi connect SSID PASSWORD
|
|
21
|
+
m wifi off # Turn WiFi off
|
|
22
|
+
m wifi on # Turn WiFi on
|
|
23
|
+
|
|
24
|
+
# Battery
|
|
25
|
+
m battery status # Battery percentage and state
|
|
26
|
+
m battery cycle # Battery cycle count
|
|
27
|
+
|
|
28
|
+
# Display
|
|
29
|
+
m display status # Display info
|
|
30
|
+
m display up # Increase brightness
|
|
31
|
+
m display down # Decrease brightness
|
|
32
|
+
|
|
33
|
+
# Dock
|
|
34
|
+
m dock addblank # Add blank space to dock
|
|
35
|
+
m dock autohide YES # Enable auto-hide
|
|
36
|
+
m dock magnification YES
|
|
37
|
+
|
|
38
|
+
# Trash
|
|
39
|
+
m trash clean # Empty trash
|
|
40
|
+
m trash status # Show trash size
|
|
41
|
+
|
|
42
|
+
# Bluetooth
|
|
43
|
+
m bluetooth status
|
|
44
|
+
m bluetooth on
|
|
45
|
+
m bluetooth off
|
|
46
|
+
|
|
47
|
+
# Network
|
|
48
|
+
m network ls # List network interfaces
|
|
49
|
+
m network location # Show current location
|
|
50
|
+
|
|
51
|
+
# Power
|
|
52
|
+
m nosleep # Prevent sleep (until Ctrl+C)
|
|
53
|
+
m restart # Restart Mac
|
|
54
|
+
m shutdown # Shut down Mac
|
|
55
|
+
m screensaver # Start screensaver
|
|
56
|
+
m lock # Lock screen
|
|
57
|
+
|
|
58
|
+
# Finder
|
|
59
|
+
m finder showpath YES # Show full path in title
|
|
60
|
+
m finder showhidden YES # Show hidden files
|
|
61
|
+
|
|
62
|
+
# Firewall
|
|
63
|
+
m firewall status
|
|
64
|
+
m firewall enable
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Guidelines
|
|
68
|
+
|
|
69
|
+
- `m` requires no auth for most commands; some need sudo
|
|
70
|
+
- Always confirm before `m restart`, `m shutdown`, or `m trash clean`
|
|
71
|
+
- Use `m wifi` instead of raw `networksetup` commands
|
|
72
|
+
- Use `m volume` instead of `osascript` for volume control
|