@symerian/symi 3.0.17 → 3.0.18

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.
Files changed (146) hide show
  1. package/dist/{audio-preflight-CBDFctZN.js → audio-preflight-BfmZbg4Y.js} +4 -4
  2. package/dist/{audio-preflight-gsZSpG-6.js → audio-preflight-DcuC-liM.js} +4 -4
  3. package/dist/build-info.json +3 -3
  4. package/dist/bundled/boot-md/handler.js +8 -8
  5. package/dist/bundled/session-memory/handler.js +7 -7
  6. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  7. package/dist/{chrome-nPMY1XTJ.js → chrome-Bo7cbvFK.js} +5 -5
  8. package/dist/{chrome-BjVab8gM.js → chrome-DYp18Q0t.js} +5 -5
  9. package/dist/{deliver-D-QFqm31.js → deliver-ChSIbiMM.js} +1 -1
  10. package/dist/{deliver-B4-bcot9.js → deliver-DEgRQM4J.js} +1 -1
  11. package/dist/extensionAPI.js +7 -7
  12. package/dist/{image-CDwtQjmt.js → image-Bx-hvoNJ.js} +1 -1
  13. package/dist/{image-CcS-vzTA.js → image-CQl_mjWk.js} +1 -1
  14. package/dist/llm-slug-generator.js +7 -7
  15. package/dist/{manager-BnEdHzmO.js → manager-D_pn0urG.js} +1 -1
  16. package/dist/{manager-09r0qPze.js → manager-YQxK2t0C.js} +1 -1
  17. package/dist/{pi-embedded-CWsY69-4.js → pi-embedded-CLw_ZzEZ.js} +16 -16
  18. package/dist/{pi-embedded-helpers-BBMy-lqr.js → pi-embedded-helpers-B5I53aw6.js} +4 -4
  19. package/dist/{pi-embedded-helpers-ChEYbgVj.js → pi-embedded-helpers-sUAEIC9X.js} +4 -4
  20. package/dist/plugin-sdk/{accounts-BfyWsC_i.js → accounts-CWFytwbR.js} +3 -3
  21. package/dist/plugin-sdk/{active-listener-DcJW7xAT.js → active-listener-BkZ4jHrL.js} +2 -2
  22. package/dist/plugin-sdk/{agent-scope-ChbGV6of.js → agent-scope-C9gfY_Gk.js} +2 -2
  23. package/dist/plugin-sdk/{audio-preflight-D3GtNLqW.js → audio-preflight-HKbdzXLZ.js} +21 -21
  24. package/dist/plugin-sdk/{bindings-CN2Qmefj.js → bindings-BaKIqPPy.js} +2 -2
  25. package/dist/plugin-sdk/{channel-web-DTyqujjA.js → channel-web-D5nWiTH1.js} +18 -18
  26. package/dist/plugin-sdk/{chrome-BKzAKr3K.js → chrome-klTSnz-9.js} +3 -3
  27. package/dist/plugin-sdk/{chunk-DhDkBujV.js → chunk-BbrYSny_.js} +1 -1
  28. package/dist/plugin-sdk/{command-format-CVrYFyZS.js → command-format-BN6tyZt6.js} +1 -1
  29. package/dist/plugin-sdk/{commands-registry-17yfZkHZ.js → commands-registry-CTzKKtY6.js} +4 -4
  30. package/dist/plugin-sdk/{config-7wk65zKC.js → config-Crv2qEdJ.js} +9 -9
  31. package/dist/plugin-sdk/{consolidate-exbAW0ml.js → consolidate-DT1QH65Q.js} +2 -2
  32. package/dist/plugin-sdk/{deliver-TxAcw7J5.js → deliver-7rOvAlrc.js} +12 -12
  33. package/dist/plugin-sdk/{diagnostic-Debx4frd.js → diagnostic-0nsxhWp7.js} +1 -1
  34. package/dist/plugin-sdk/{fs-safe-wBYbAkJF.js → fs-safe-DfWYBeWF.js} +1 -1
  35. package/dist/plugin-sdk/{gemini-auth-7U2pm2Ky.js → gemini-auth-C0N0_u49.js} +1 -1
  36. package/dist/plugin-sdk/{image-BtDVmYA5.js → image-WOSl2apK.js} +4 -4
  37. package/dist/plugin-sdk/index.js +43 -43
  38. package/dist/plugin-sdk/{ir-CKMvRrGW.js → ir-9J84MTls.js} +4 -4
  39. package/dist/plugin-sdk/{local-roots-c_gaPs01.js → local-roots-OLRDbvyY.js} +3 -3
  40. package/dist/plugin-sdk/{login-DUym1Jy0.js → login-C7x4q0i2.js} +7 -7
  41. package/dist/plugin-sdk/{login-qr-B-WBdvrX.js → login-qr-Dv5_MoAW.js} +9 -9
  42. package/dist/plugin-sdk/{manager-B71SCzos.js → manager-C83tK17x.js} +8 -8
  43. package/dist/plugin-sdk/{manifest-registry-Dnic6Chh.js → manifest-registry-CJMV-PI7.js} +1 -1
  44. package/dist/plugin-sdk/{markdown-tables-Dur7OTlM.js → markdown-tables-DXNKz5y_.js} +1 -1
  45. package/dist/plugin-sdk/{message-channel-BrAhJJV_.js → message-channel-aGy1HbQQ.js} +1 -1
  46. package/dist/plugin-sdk/{model-selection-B9qaVQSJ.js → model-selection-C-3-tpe7.js} +4 -4
  47. package/dist/plugin-sdk/{outbound-DB1wDM8b.js → outbound-DquCeSy5.js} +6 -6
  48. package/dist/plugin-sdk/{pi-auth-json-ZO118hoy.js → pi-auth-json-D9PDCXGn.js} +1 -1
  49. package/dist/plugin-sdk/{pi-embedded-helpers-s_U0Un7j.js → pi-embedded-helpers-D3ygfH7l.js} +16 -16
  50. package/dist/plugin-sdk/{plugins-DF81oSaI.js → plugins-DOwnSg9D.js} +4 -4
  51. package/dist/plugin-sdk/{pw-ai-CTwP02uv.js → pw-ai-rlengLjb.js} +8 -8
  52. package/dist/plugin-sdk/{qmd-manager-CBaSGant.js → qmd-manager-BzxFjRFa.js} +4 -4
  53. package/dist/plugin-sdk/{registry-CZVURNhF.js → registry-5iFfixlB.js} +2 -2
  54. package/dist/plugin-sdk/{replies-hwRbkU3z.js → replies-BXOzO_H5.js} +7 -7
  55. package/dist/plugin-sdk/{reply-prefix-CaXmzZlx.js → reply-prefix-INAKTqCU.js} +1 -1
  56. package/dist/plugin-sdk/{resolve-outbound-target-fxVSOBmk.js → resolve-outbound-target-DvbxHtqp.js} +2 -2
  57. package/dist/plugin-sdk/{resolve-route-ClCyiOeu.js → resolve-route-URXlY3AK.js} +3 -3
  58. package/dist/plugin-sdk/{runner-Cq5jvwQ7.js → runner-Bv0_DWoH.js} +9 -9
  59. package/dist/plugin-sdk/{session-B_TkB65Y.js → session-C3r8l7ou.js} +4 -4
  60. package/dist/plugin-sdk/{skill-commands-0LF9HTGr.js → skill-commands-KjLUGIdZ.js} +5 -5
  61. package/dist/plugin-sdk/{skills-BIT_O7J0.js → skills-BrsD4L5c.js} +7 -7
  62. package/dist/plugin-sdk/{sqlite-Bx5Y5U5X.js → sqlite-CjW7ME1H.js} +1 -1
  63. package/dist/plugin-sdk/{subsystem-CXqYeDy-.js → subsystem-DcOg1xJr.js} +1 -1
  64. package/dist/plugin-sdk/{synthesis-DtsYAj1E.js → synthesis-CY7YAasV.js} +38 -38
  65. package/dist/plugin-sdk/{target-errors-B8mokOeH.js → target-errors-BVWJGWFq.js} +2 -2
  66. package/dist/plugin-sdk/{thinking-Ca0DhqzO.js → thinking-CtsTDPOi.js} +3 -3
  67. package/dist/plugin-sdk/{tokens-CvlONEqh.js → tokens-8lqOTZCB.js} +1 -1
  68. package/dist/plugin-sdk/{tool-images-DpBaWEHT.js → tool-images-Cl_rGIUZ.js} +2 -2
  69. package/dist/plugin-sdk/{tool-loop-detection-BOvUFa0f.js → tool-loop-detection-Da4WUT_P.js} +2 -2
  70. package/dist/plugin-sdk/{unified-runner-CnM7lyNd.js → unified-runner-nwMnsZyj.js} +60 -60
  71. package/dist/plugin-sdk/web-BlweOZDp.js +54 -0
  72. package/dist/plugin-sdk/{whatsapp-actions-CvnfsFJm.js → whatsapp-actions-DpfaGYs7.js} +21 -21
  73. package/dist/{pw-ai-BW8_KeDf.js → pw-ai-BqxJG-Wh.js} +1 -1
  74. package/dist/{pw-ai-j9IE1K0-.js → pw-ai-C-NSGye0.js} +1 -1
  75. package/dist/{runner-8ALr2UII.js → runner-COGFTeDw.js} +1 -1
  76. package/dist/{runner-C4-9kFdR.js → runner-DhCi2lT1.js} +1 -1
  77. package/dist/{synthesis-Cph3LhA1.js → synthesis-CXZu24Vx.js} +7 -7
  78. package/dist/{synthesis-Cus0A2dL.js → synthesis-DrPxcMlQ.js} +7 -7
  79. package/dist/{unified-runner-CX80YMTk.js → unified-runner-iByUazvW.js} +16 -16
  80. package/dist/{web-ChozvJ7I.js → web-EsMQBIYf.js} +7 -7
  81. package/dist/{web-DFlsbXmQ.js → web-PPg5y6xI.js} +7 -7
  82. package/package.json +1 -1
  83. package/dist/plugin-sdk/web-CIPJBHAU.js +0 -54
  84. package/skills/1password/SKILL.md +0 -71
  85. package/skills/1password/references/cli-examples.md +0 -29
  86. package/skills/1password/references/get-started.md +0 -17
  87. package/skills/apple-notes/SKILL.md +0 -78
  88. package/skills/apple-reminders/SKILL.md +0 -119
  89. package/skills/bear-notes/SKILL.md +0 -108
  90. package/skills/blogwatcher/SKILL.md +0 -70
  91. package/skills/blucli/SKILL.md +0 -48
  92. package/skills/bluebubbles/SKILL.md +0 -132
  93. package/skills/camsnap/SKILL.md +0 -46
  94. package/skills/canvas/SKILL.md +0 -204
  95. package/skills/connect-email/SKILL.md +0 -142
  96. package/skills/document-generation/SKILL.md +0 -83
  97. package/skills/eightctl/SKILL.md +0 -51
  98. package/skills/food-order/SKILL.md +0 -49
  99. package/skills/gemini/SKILL.md +0 -44
  100. package/skills/gh-issues/SKILL.md +0 -865
  101. package/skills/gifgrep/SKILL.md +0 -80
  102. package/skills/github/SKILL.md +0 -164
  103. package/skills/gog/SKILL.md +0 -117
  104. package/skills/goplaces/SKILL.md +0 -53
  105. package/skills/healthcheck/SKILL.md +0 -246
  106. package/skills/himalaya/SKILL.md +0 -258
  107. package/skills/himalaya/references/configuration.md +0 -184
  108. package/skills/himalaya/references/message-composition.md +0 -199
  109. package/skills/imsg/SKILL.md +0 -122
  110. package/skills/long-task/SKILL.md +0 -58
  111. package/skills/long-task/scripts/detach-task.sh +0 -187
  112. package/skills/nano-banana-pro/SKILL.md +0 -59
  113. package/skills/nano-banana-pro/scripts/generate_image.py +0 -184
  114. package/skills/nano-pdf/SKILL.md +0 -39
  115. package/skills/notion/SKILL.md +0 -173
  116. package/skills/obsidian/SKILL.md +0 -82
  117. package/skills/openai-image-gen/SKILL.md +0 -90
  118. package/skills/openai-image-gen/scripts/gen.py +0 -240
  119. package/skills/openai-whisper/SKILL.md +0 -39
  120. package/skills/openai-whisper-api/SKILL.md +0 -53
  121. package/skills/openai-whisper-api/scripts/transcribe.sh +0 -85
  122. package/skills/openhue/SKILL.md +0 -113
  123. package/skills/oracle/SKILL.md +0 -126
  124. package/skills/ordercli/SKILL.md +0 -79
  125. package/skills/peekaboo/SKILL.md +0 -191
  126. package/skills/reactions-extensive/SKILL.md +0 -30
  127. package/skills/reactions-minimal/SKILL.md +0 -31
  128. package/skills/safe-edit/SKILL.md +0 -51
  129. package/skills/sag/SKILL.md +0 -88
  130. package/skills/sherpa-onnx-tts/SKILL.md +0 -104
  131. package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +0 -178
  132. package/skills/songsee/SKILL.md +0 -50
  133. package/skills/sonoscli/SKILL.md +0 -66
  134. package/skills/spotify-player/SKILL.md +0 -65
  135. package/skills/symihub/SKILL.md +0 -78
  136. package/skills/things-mac/SKILL.md +0 -87
  137. package/skills/tmux/SKILL.md +0 -153
  138. package/skills/tmux/scripts/find-sessions.sh +0 -112
  139. package/skills/tmux/scripts/wait-for-text.sh +0 -83
  140. package/skills/trello/SKILL.md +0 -96
  141. package/skills/video-frames/SKILL.md +0 -47
  142. package/skills/video-frames/scripts/frame.sh +0 -81
  143. package/skills/voice-call/SKILL.md +0 -46
  144. package/skills/wacli/SKILL.md +0 -73
  145. package/skills/weather/SKILL.md +0 -113
  146. package/skills/xurl/SKILL.md +0 -462
@@ -1,85 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
-
4
- usage() {
5
- cat >&2 <<'EOF'
6
- Usage:
7
- transcribe.sh <audio-file> [--model whisper-1] [--out /path/to/out.txt] [--language en] [--prompt "hint"] [--json]
8
- EOF
9
- exit 2
10
- }
11
-
12
- if [[ "${1:-}" == "" || "${1:-}" == "-h" || "${1:-}" == "--help" ]]; then
13
- usage
14
- fi
15
-
16
- in="${1:-}"
17
- shift || true
18
-
19
- model="whisper-1"
20
- out=""
21
- language=""
22
- prompt=""
23
- response_format="text"
24
-
25
- while [[ $# -gt 0 ]]; do
26
- case "$1" in
27
- --model)
28
- model="${2:-}"
29
- shift 2
30
- ;;
31
- --out)
32
- out="${2:-}"
33
- shift 2
34
- ;;
35
- --language)
36
- language="${2:-}"
37
- shift 2
38
- ;;
39
- --prompt)
40
- prompt="${2:-}"
41
- shift 2
42
- ;;
43
- --json)
44
- response_format="json"
45
- shift 1
46
- ;;
47
- *)
48
- echo "Unknown arg: $1" >&2
49
- usage
50
- ;;
51
- esac
52
- done
53
-
54
- if [[ ! -f "$in" ]]; then
55
- echo "File not found: $in" >&2
56
- exit 1
57
- fi
58
-
59
- if [[ "${OPENAI_API_KEY:-}" == "" ]]; then
60
- echo "Missing OPENAI_API_KEY" >&2
61
- exit 1
62
- fi
63
-
64
- if [[ "$out" == "" ]]; then
65
- base="${in%.*}"
66
- if [[ "$response_format" == "json" ]]; then
67
- out="${base}.json"
68
- else
69
- out="${base}.txt"
70
- fi
71
- fi
72
-
73
- mkdir -p "$(dirname "$out")"
74
-
75
- curl -sS https://api.openai.com/v1/audio/transcriptions \
76
- -H "Authorization: Bearer $OPENAI_API_KEY" \
77
- -H "Accept: application/json" \
78
- -F "file=@${in}" \
79
- -F "model=${model}" \
80
- -F "response_format=${response_format}" \
81
- ${language:+-F "language=${language}"} \
82
- ${prompt:+-F "prompt=${prompt}"} \
83
- >"$out"
84
-
85
- echo "$out"
@@ -1,113 +0,0 @@
1
- ---
2
- name: openhue
3
- description: Control Philips Hue lights and scenes via the OpenHue CLI.
4
- homepage: https://www.openhue.io/cli
5
- metadata:
6
- {
7
- "symi":
8
- {
9
- "emoji": "💡",
10
- "requires": { "bins": ["openhue"] },
11
- "install":
12
- [
13
- {
14
- "id": "brew",
15
- "kind": "brew",
16
- "formula": "openhue/cli/openhue-cli",
17
- "bins": ["openhue"],
18
- "label": "Install OpenHue CLI (brew)",
19
- },
20
- ],
21
- },
22
- }
23
- triggers: [openhue]
24
- ---
25
-
26
- # OpenHue CLI
27
-
28
- Use `openhue` to control Philips Hue lights and scenes via a Hue Bridge.
29
-
30
- ## When to Use
31
-
32
- ✅ **USE this skill when:**
33
-
34
- - "Turn on/off the lights"
35
- - "Dim the living room lights"
36
- - "Set a scene" or "movie mode"
37
- - Controlling specific Hue rooms or zones
38
- - Adjusting brightness, color, or color temperature
39
-
40
- ## When NOT to Use
41
-
42
- ❌ **DON'T use this skill when:**
43
-
44
- - Non-Hue smart devices (other brands) → not supported
45
- - HomeKit scenes or Shortcuts → use Apple's ecosystem
46
- - TV or entertainment system control
47
- - Thermostat or HVAC
48
- - Smart plugs (unless Hue smart plugs)
49
-
50
- ## Common Commands
51
-
52
- ### List Resources
53
-
54
- ```bash
55
- openhue get light # List all lights
56
- openhue get room # List all rooms
57
- openhue get scene # List all scenes
58
- ```
59
-
60
- ### Control Lights
61
-
62
- ```bash
63
- # Turn on/off
64
- openhue set light "Bedroom Lamp" --on
65
- openhue set light "Bedroom Lamp" --off
66
-
67
- # Brightness (0-100)
68
- openhue set light "Bedroom Lamp" --on --brightness 50
69
-
70
- # Color temperature (warm to cool: 153-500 mirek)
71
- openhue set light "Bedroom Lamp" --on --temperature 300
72
-
73
- # Color (by name or hex)
74
- openhue set light "Bedroom Lamp" --on --color red
75
- openhue set light "Bedroom Lamp" --on --rgb "#FF5500"
76
- ```
77
-
78
- ### Control Rooms
79
-
80
- ```bash
81
- # Turn off entire room
82
- openhue set room "Bedroom" --off
83
-
84
- # Set room brightness
85
- openhue set room "Bedroom" --on --brightness 30
86
- ```
87
-
88
- ### Scenes
89
-
90
- ```bash
91
- # Activate scene
92
- openhue set scene "Relax" --room "Bedroom"
93
- openhue set scene "Concentrate" --room "Office"
94
- ```
95
-
96
- ## Quick Presets
97
-
98
- ```bash
99
- # Bedtime (dim warm)
100
- openhue set room "Bedroom" --on --brightness 20 --temperature 450
101
-
102
- # Work mode (bright cool)
103
- openhue set room "Office" --on --brightness 100 --temperature 250
104
-
105
- # Movie mode (dim)
106
- openhue set room "Living Room" --on --brightness 10
107
- ```
108
-
109
- ## Notes
110
-
111
- - Bridge must be on local network
112
- - First run requires button press on Hue bridge to pair
113
- - Colors only work on color-capable bulbs (not white-only)
@@ -1,126 +0,0 @@
1
- ---
2
- name: oracle
3
- description: Best practices for using the oracle CLI (prompt + file bundling, engines, sessions, and file attachment patterns).
4
- homepage: https://askoracle.dev
5
- metadata:
6
- {
7
- "symi":
8
- {
9
- "emoji": "🧿",
10
- "requires": { "bins": ["oracle"] },
11
- "install":
12
- [
13
- {
14
- "id": "node",
15
- "kind": "node",
16
- "package": "@steipete/oracle",
17
- "bins": ["oracle"],
18
- "label": "Install oracle (node)",
19
- },
20
- ],
21
- },
22
- }
23
- triggers: [oracle]
24
- ---
25
-
26
- # oracle — best use
27
-
28
- Oracle bundles your prompt + selected files into one “one-shot” request so another model can answer with real repo context (API or browser automation). Treat output as advisory: verify against code + tests.
29
-
30
- ## Main use case (browser, GPT‑5.2 Pro)
31
-
32
- Default workflow here: `--engine browser` with GPT‑5.2 Pro in ChatGPT. This is the common “long think” path: ~10 minutes to ~1 hour is normal; expect a stored session you can reattach to.
33
-
34
- Recommended defaults:
35
-
36
- - Engine: browser (`--engine browser`)
37
- - Model: GPT‑5.2 Pro (`--model gpt-5.2-pro` or `--model "5.2 Pro"`)
38
-
39
- ## Golden path
40
-
41
- 1. Pick a tight file set (fewest files that still contain the truth).
42
- 2. Preview payload + token spend (`--dry-run` + `--files-report`).
43
- 3. Use browser mode for the usual GPT‑5.2 Pro workflow; use API only when you explicitly want it.
44
- 4. If the run detaches/timeouts: reattach to the stored session (don’t re-run).
45
-
46
- ## Commands (preferred)
47
-
48
- - Help:
49
- - `oracle --help`
50
- - If the binary isn’t installed: `npx -y @steipete/oracle --help` (avoid `pnpx` here; sqlite bindings).
51
-
52
- - Preview (no tokens):
53
- - `oracle --dry-run summary -p "<task>" --file "src/**" --file "!**/*.test.*"`
54
- - `oracle --dry-run full -p "<task>" --file "src/**"`
55
-
56
- - Token sanity:
57
- - `oracle --dry-run summary --files-report -p "<task>" --file "src/**"`
58
-
59
- - Browser run (main path; long-running is normal):
60
- - `oracle --engine browser --model gpt-5.2-pro -p "<task>" --file "src/**"`
61
-
62
- - Manual paste fallback:
63
- - `oracle --render --copy -p "<task>" --file "src/**"`
64
- - Note: `--copy` is a hidden alias for `--copy-markdown`.
65
-
66
- ## Attaching files (`--file`)
67
-
68
- `--file` accepts files, directories, and globs. You can pass it multiple times; entries can be comma-separated.
69
-
70
- - Include:
71
- - `--file "src/**"`
72
- - `--file src/index.ts`
73
- - `--file docs --file README.md`
74
-
75
- - Exclude:
76
- - `--file "src/**" --file "!src/**/*.test.ts" --file "!**/*.snap"`
77
-
78
- - Defaults (implementation behavior):
79
- - Default-ignored dirs: `node_modules`, `dist`, `coverage`, `.git`, `.turbo`, `.next`, `build`, `tmp` (skipped unless explicitly passed as literal dirs/files).
80
- - Honors `.gitignore` when expanding globs.
81
- - Does not follow symlinks.
82
- - Dotfiles filtered unless opted in via pattern (e.g. `--file ".github/**"`).
83
- - Files > 1 MB rejected.
84
-
85
- ## Engines (API vs browser)
86
-
87
- - Auto-pick: `api` when `OPENAI_API_KEY` is set; otherwise `browser`.
88
- - Browser supports GPT + Gemini only; use `--engine api` for Claude/Grok/Codex or multi-model runs.
89
- - Browser attachments:
90
- - `--browser-attachments auto|never|always` (auto pastes inline up to ~60k chars then uploads).
91
- - Remote browser host:
92
- - Host: `oracle serve --host 0.0.0.0 --port 9473 --token <secret>`
93
- - Client: `oracle --engine browser --remote-host <host:port> --remote-token <secret> -p "<task>" --file "src/**"`
94
-
95
- ## Sessions + slugs
96
-
97
- - Stored under `~/.oracle/sessions` (override with `ORACLE_HOME_DIR`).
98
- - Runs may detach or take a long time (browser + GPT‑5.2 Pro often does). If the CLI times out: don’t re-run; reattach.
99
- - List: `oracle status --hours 72`
100
- - Attach: `oracle session <id> --render`
101
- - Use `--slug "<3-5 words>"` to keep session IDs readable.
102
- - Duplicate prompt guard exists; use `--force` only when you truly want a fresh run.
103
-
104
- ## Prompt template (high signal)
105
-
106
- Oracle starts with **zero** project knowledge. Assume the model cannot infer your stack, build tooling, conventions, or “obvious” paths. Include:
107
-
108
- - Project briefing (stack + build/test commands + platform constraints).
109
- - “Where things live” (key directories, entrypoints, config files, boundaries).
110
- - Exact question + what you tried + the error text (verbatim).
111
- - Constraints (“don’t change X”, “must keep public API”, etc).
112
- - Desired output (“return patch plan + tests”, “give 3 options with tradeoffs”).
113
-
114
- ## Safety
115
-
116
- - Don’t attach secrets by default (`.env`, key files, auth tokens). Redact aggressively; share only what’s required.
117
-
118
- ## “Exhaustive prompt” restoration pattern
119
-
120
- For long investigations, write a standalone prompt + file set so you can rerun days later:
121
-
122
- - 6–30 sentence project briefing + the goal.
123
- - Repro steps + exact errors + what you tried.
124
- - Attach all context files needed (entrypoints, configs, key modules, docs).
125
-
126
- Oracle runs are one-shot; the model doesn’t remember prior runs. “Restoring context” means re-running with the same prompt + `--file …` set (or reattaching a still-running stored session).
@@ -1,79 +0,0 @@
1
- ---
2
- name: ordercli
3
- description: Foodora-only CLI for checking past orders and active order status (Deliveroo WIP).
4
- homepage: https://ordercli.sh
5
- metadata:
6
- {
7
- "symi":
8
- {
9
- "emoji": "🛵",
10
- "requires": { "bins": ["ordercli"] },
11
- "install":
12
- [
13
- {
14
- "id": "brew",
15
- "kind": "brew",
16
- "formula": "steipete/tap/ordercli",
17
- "bins": ["ordercli"],
18
- "label": "Install ordercli (brew)",
19
- },
20
- {
21
- "id": "go",
22
- "kind": "go",
23
- "module": "github.com/steipete/ordercli/cmd/ordercli@latest",
24
- "bins": ["ordercli"],
25
- "label": "Install ordercli (go)",
26
- },
27
- ],
28
- },
29
- }
30
- triggers: [ordercli]
31
- ---
32
-
33
- # ordercli
34
-
35
- Use `ordercli` to check past orders and track active order status (Foodora only right now).
36
-
37
- Quick start (Foodora)
38
-
39
- - `ordercli foodora countries`
40
- - `ordercli foodora config set --country AT`
41
- - `ordercli foodora login --email you@example.com --password-stdin`
42
- - `ordercli foodora orders`
43
- - `ordercli foodora history --limit 20`
44
- - `ordercli foodora history show <orderCode>`
45
-
46
- Orders
47
-
48
- - Active list (arrival/status): `ordercli foodora orders`
49
- - Watch: `ordercli foodora orders --watch`
50
- - Active order detail: `ordercli foodora order <orderCode>`
51
- - History detail JSON: `ordercli foodora history show <orderCode> --json`
52
-
53
- Reorder (adds to cart)
54
-
55
- - Preview: `ordercli foodora reorder <orderCode>`
56
- - Confirm: `ordercli foodora reorder <orderCode> --confirm`
57
- - Address: `ordercli foodora reorder <orderCode> --confirm --address-id <id>`
58
-
59
- Cloudflare / bot protection
60
-
61
- - Browser login: `ordercli foodora login --email you@example.com --password-stdin --browser`
62
- - Reuse profile: `--browser-profile "$HOME/Library/Application Support/ordercli/browser-profile"`
63
- - Import Chrome cookies: `ordercli foodora cookies chrome --profile "Default"`
64
-
65
- Session import (no password)
66
-
67
- - `ordercli foodora session chrome --url https://www.foodora.at/ --profile "Default"`
68
- - `ordercli foodora session refresh --client-id android`
69
-
70
- Deliveroo (WIP, not working yet)
71
-
72
- - Requires `DELIVEROO_BEARER_TOKEN` (optional `DELIVEROO_COOKIE`).
73
- - `ordercli deliveroo config set --market uk`
74
- - `ordercli deliveroo history`
75
-
76
- Notes
77
-
78
- - Use `--config /tmp/ordercli.json` for testing.
79
- - Confirm before any reorder or cart-changing action.
@@ -1,191 +0,0 @@
1
- ---
2
- name: peekaboo
3
- description: Capture and automate macOS UI with the Peekaboo CLI.
4
- homepage: https://peekaboo.boo
5
- metadata:
6
- {
7
- "symi":
8
- {
9
- "emoji": "👀",
10
- "os": ["darwin"],
11
- "requires": { "bins": ["peekaboo"] },
12
- "install":
13
- [
14
- {
15
- "id": "brew",
16
- "kind": "brew",
17
- "formula": "steipete/tap/peekaboo",
18
- "bins": ["peekaboo"],
19
- "label": "Install Peekaboo (brew)",
20
- },
21
- ],
22
- },
23
- }
24
- triggers: [peekaboo]
25
- ---
26
-
27
- # Peekaboo
28
-
29
- Peekaboo is a full macOS UI automation CLI: capture/inspect screens, target UI
30
- elements, drive input, and manage apps/windows/menus. Commands share a snapshot
31
- cache and support `--json`/`-j` for scripting. Run `peekaboo` or
32
- `peekaboo <cmd> --help` for flags; `peekaboo --version` prints build metadata.
33
- Tip: run via `polter peekaboo` to ensure fresh builds.
34
-
35
- ## Features (all CLI capabilities, excluding agent/MCP)
36
-
37
- Core
38
-
39
- - `bridge`: inspect Peekaboo Bridge host connectivity
40
- - `capture`: live capture or video ingest + frame extraction
41
- - `clean`: prune snapshot cache and temp files
42
- - `config`: init/show/edit/validate, providers, models, credentials
43
- - `image`: capture screenshots (screen/window/menu bar regions)
44
- - `learn`: print the full agent guide + tool catalog
45
- - `list`: apps, windows, screens, menubar, permissions
46
- - `permissions`: check Screen Recording/Accessibility status
47
- - `run`: execute `.peekaboo.json` scripts
48
- - `sleep`: pause execution for a duration
49
- - `tools`: list available tools with filtering/display options
50
-
51
- Interaction
52
-
53
- - `click`: target by ID/query/coords with smart waits
54
- - `drag`: drag & drop across elements/coords/Dock
55
- - `hotkey`: modifier combos like `cmd,shift,t`
56
- - `move`: cursor positioning with optional smoothing
57
- - `paste`: set clipboard -> paste -> restore
58
- - `press`: special-key sequences with repeats
59
- - `scroll`: directional scrolling (targeted + smooth)
60
- - `swipe`: gesture-style drags between targets
61
- - `type`: text + control keys (`--clear`, delays)
62
-
63
- System
64
-
65
- - `app`: launch/quit/relaunch/hide/unhide/switch/list apps
66
- - `clipboard`: read/write clipboard (text/images/files)
67
- - `dialog`: click/input/file/dismiss/list system dialogs
68
- - `dock`: launch/right-click/hide/show/list Dock items
69
- - `menu`: click/list application menus + menu extras
70
- - `menubar`: list/click status bar items
71
- - `open`: enhanced `open` with app targeting + JSON payloads
72
- - `space`: list/switch/move-window (Spaces)
73
- - `visualizer`: exercise Peekaboo visual feedback animations
74
- - `window`: close/minimize/maximize/move/resize/focus/list
75
-
76
- Vision
77
-
78
- - `see`: annotated UI maps, snapshot IDs, optional analysis
79
-
80
- Global runtime flags
81
-
82
- - `--json`/`-j`, `--verbose`/`-v`, `--log-level <level>`
83
- - `--no-remote`, `--bridge-socket <path>`
84
-
85
- ## Quickstart (happy path)
86
-
87
- ```bash
88
- peekaboo permissions
89
- peekaboo list apps --json
90
- peekaboo see --annotate --path /tmp/peekaboo-see.png
91
- peekaboo click --on B1
92
- peekaboo type "Hello" --return
93
- ```
94
-
95
- ## Common targeting parameters (most interaction commands)
96
-
97
- - App/window: `--app`, `--pid`, `--window-title`, `--window-id`, `--window-index`
98
- - Snapshot targeting: `--snapshot` (ID from `see`; defaults to latest)
99
- - Element/coords: `--on`/`--id` (element ID), `--coords x,y`
100
- - Focus control: `--no-auto-focus`, `--space-switch`, `--bring-to-current-space`,
101
- `--focus-timeout-seconds`, `--focus-retry-count`
102
-
103
- ## Common capture parameters
104
-
105
- - Output: `--path`, `--format png|jpg`, `--retina`
106
- - Targeting: `--mode screen|window|frontmost`, `--screen-index`,
107
- `--window-title`, `--window-id`
108
- - Analysis: `--analyze "prompt"`, `--annotate`
109
- - Capture engine: `--capture-engine auto|classic|cg|modern|sckit`
110
-
111
- ## Common motion/typing parameters
112
-
113
- - Timing: `--duration` (drag/swipe), `--steps`, `--delay` (type/scroll/press)
114
- - Human-ish movement: `--profile human|linear`, `--wpm` (typing)
115
- - Scroll: `--direction up|down|left|right`, `--amount <ticks>`, `--smooth`
116
-
117
- ## Examples
118
-
119
- ### See -> click -> type (most reliable flow)
120
-
121
- ```bash
122
- peekaboo see --app Safari --window-title "Login" --annotate --path /tmp/see.png
123
- peekaboo click --on B3 --app Safari
124
- peekaboo type "user@example.com" --app Safari
125
- peekaboo press tab --count 1 --app Safari
126
- peekaboo type "supersecret" --app Safari --return
127
- ```
128
-
129
- ### Target by window id
130
-
131
- ```bash
132
- peekaboo list windows --app "Visual Studio Code" --json
133
- peekaboo click --window-id 12345 --coords 120,160
134
- peekaboo type "Hello from Peekaboo" --window-id 12345
135
- ```
136
-
137
- ### Capture screenshots + analyze
138
-
139
- ```bash
140
- peekaboo image --mode screen --screen-index 0 --retina --path /tmp/screen.png
141
- peekaboo image --app Safari --window-title "Dashboard" --analyze "Summarize KPIs"
142
- peekaboo see --mode screen --screen-index 0 --analyze "Summarize the dashboard"
143
- ```
144
-
145
- ### Live capture (motion-aware)
146
-
147
- ```bash
148
- peekaboo capture live --mode region --region 100,100,800,600 --duration 30 \
149
- --active-fps 8 --idle-fps 2 --highlight-changes --path /tmp/capture
150
- ```
151
-
152
- ### App + window management
153
-
154
- ```bash
155
- peekaboo app launch "Safari" --open https://example.com
156
- peekaboo window focus --app Safari --window-title "Example"
157
- peekaboo window set-bounds --app Safari --x 50 --y 50 --width 1200 --height 800
158
- peekaboo app quit --app Safari
159
- ```
160
-
161
- ### Menus, menubar, dock
162
-
163
- ```bash
164
- peekaboo menu click --app Safari --item "New Window"
165
- peekaboo menu click --app TextEdit --path "Format > Font > Show Fonts"
166
- peekaboo menu click-extra --title "WiFi"
167
- peekaboo dock launch Safari
168
- peekaboo menubar list --json
169
- ```
170
-
171
- ### Mouse + gesture input
172
-
173
- ```bash
174
- peekaboo move 500,300 --smooth
175
- peekaboo drag --from B1 --to T2
176
- peekaboo swipe --from-coords 100,500 --to-coords 100,200 --duration 800
177
- peekaboo scroll --direction down --amount 6 --smooth
178
- ```
179
-
180
- ### Keyboard input
181
-
182
- ```bash
183
- peekaboo hotkey --keys "cmd,shift,t"
184
- peekaboo press escape
185
- peekaboo type "Line 1\nLine 2" --delay 10
186
- ```
187
-
188
- Notes
189
-
190
- - Requires Screen Recording + Accessibility permissions.
191
- - Use `peekaboo see --annotate` to identify targets before clicking.
@@ -1,30 +0,0 @@
1
- ---
2
- name: reactions-extensive
3
- description: Liberal reaction policy for channels configured in EXTENSIVE reactions mode. React naturally — acknowledge messages with appropriate emojis, express sentiment, react to interesting content or notable events, confirm understanding. React whenever it feels natural.
4
- triggers: [reactions, react, emoji, extensive-reactions]
5
- ---
6
-
7
- # Reactions — EXTENSIVE mode
8
-
9
- Reactions are enabled for the current channel in **EXTENSIVE** mode.
10
-
11
- ## Feel free to react liberally
12
-
13
- - **Acknowledge messages** with appropriate emojis when text alone would feel cold or robotic.
14
- - **Express sentiment and personality** through reactions — humor, agreement, appreciation, surprise.
15
- - **React to interesting content** — a clever solution, a funny remark, a notable result.
16
- - **Use reactions to confirm understanding** or agreement when a full text reply would be overkill.
17
-
18
- ## Cadence
19
-
20
- React whenever it **feels natural**. Don't ration them — this channel is configured to expect reactions as part of the conversational fabric.
21
-
22
- ## Still avoid
23
-
24
- - Reacting to your own replies.
25
- - Reactions that contradict the text you're sending alongside ("👎 sounds great!").
26
- - A reaction storm (5+ different emojis on the same message). Pick one.
27
-
28
- ## When in doubt
29
-
30
- In EXTENSIVE mode, lean toward reacting rather than not. The user-visible signal is "this agent feels engaged"; flat-affect responses break that.
@@ -1,31 +0,0 @@
1
- ---
2
- name: reactions-minimal
3
- description: Sparing reaction policy for channels configured in MINIMAL reactions mode. React only when truly relevant — important user requests, genuine sentiment, never routine messages or your own replies. Guideline at most 1 reaction per 5-10 exchanges.
4
- triggers: [reactions, react, emoji, minimal-reactions]
5
- ---
6
-
7
- # Reactions — MINIMAL mode
8
-
9
- Reactions are enabled for the current channel in **MINIMAL** mode.
10
-
11
- ## React ONLY when truly relevant
12
-
13
- - **Acknowledge important user requests** or confirmations (a thumbs-up on "yes that's exactly what I wanted" — but only if no text reply is also being sent).
14
- - **Express genuine sentiment** — humor, appreciation — sparingly. Don't fake it.
15
- - **Avoid reacting** to:
16
- - Routine messages and procedural exchanges.
17
- - Your own replies (never).
18
- - Every message in a back-and-forth (no reaction storms).
19
-
20
- ## Cadence
21
-
22
- At most **1 reaction per 5-10 exchanges**. If you've reacted recently, default to no reaction.
23
-
24
- ## Anti-patterns
25
-
26
- - 👍 on every user message: noise.
27
- - 🤔 on a question: meaningless.
28
- - 🚀 on a successful tool call: nobody asked.
29
- - A reaction PLUS a verbose reply: the reaction is redundant.
30
-
31
- If you're considering whether to react and not sure, don't.