178 lines
5.0 KiB
Markdown
178 lines
5.0 KiB
Markdown
# TOOLS.md - Local Notes
|
|
|
|
## Cron-Jobs (proaktive Nachrichten)
|
|
|
|
Für Telegram/WhatsApp/etc. Zustellung:
|
|
- `--session isolated` (nicht main)
|
|
- `--message "..."` (nicht system-event)
|
|
- `--deliver --channel telegram --to <id>`
|
|
|
|
Siehe auch: `~/clawd/.learnings/LEARNINGS.md` (LRN-20260126-001)
|
|
|
|
## Generierte Bilder verschicken
|
|
|
|
Nach dem Generieren von Bildern (DALL-E, Gemini, etc.) immer das Bild auch **direkt im Chat schicken** — nicht nur mit `open` öffnen!
|
|
|
|
```typescript
|
|
// Telegram
|
|
message({
|
|
action: "send",
|
|
channel: "telegram",
|
|
target: "<chat_id>",
|
|
filePath: "/pfad/zum/bild.png",
|
|
caption: "Optionaler Text dazu"
|
|
})
|
|
```
|
|
|
|
Der User sieht das Bild sonst nicht wenn er nicht am Mac sitzt!
|
|
|
|
## Package Manager
|
|
|
|
- **Immer `pnpm` statt `npm` verwenden!**
|
|
- Global install: `pnpm add -g <package>`
|
|
- Local install: `pnpm add <package>`
|
|
|
|
## TTS / Sprachausgabe
|
|
|
|
- **Provider:** OpenAI
|
|
- **Stimme:** echo (männlich, schnelleres Tempo)
|
|
- **Alternativen:** onyx (tief/langsam), alloy (neutral), fable (britisch)
|
|
|
|
Skills define *how* tools work. This file is for *your* specifics — the stuff that's unique to your setup.
|
|
|
|
## Sprachnachrichten / Voice Transcription
|
|
|
|
**Skript:** `~/.clawdbot/scripts/transcribe.sh <audio_file> [language]`
|
|
- Default-Sprache: `de`
|
|
- Model: `~/.clawdbot/models/ggml-base.bin` (Whisper base)
|
|
- Konvertiert automatisch ogg/mp3/etc. zu wav
|
|
|
|
**Quick command:**
|
|
```bash
|
|
~/.clawdbot/scripts/transcribe.sh /path/to/audio.ogg
|
|
```
|
|
|
|
## Trello
|
|
|
|
- **Board "Ox Creek":** `65e4430389494d27d1691bb0`
|
|
- **Bei neuen Karten:** Immer Bastian als Mitglied hinzufügen (nur Bastian, nicht automatisch Jasmin)
|
|
- Bastian: `5a0b5d006ff181f7b23842f6`
|
|
- Jasmin: `5a0b5da354e70f2da859e083`
|
|
- **Jasmin Telegram-ID:** `8280212990`
|
|
- **Bastian Telegram-ID:** `24466372`
|
|
|
|
## Git
|
|
|
|
- **Author:** `James <clawd@noxware.de>` (meine Commits)
|
|
- Bastians Commits: `Bastian (BaM) <git@noxware.de>`
|
|
|
|
## Telegram
|
|
|
|
- **Bot-Username:** @SpecialAgentJamesBot
|
|
- **Bot-Token:** In Config (`channels.telegram.botToken`)
|
|
- **DM-Policy:** Pairing (neue Nutzer brauchen Freigabe)
|
|
|
|
## Peekaboo (macOS UI Automation)
|
|
|
|
**Bridge Socket:** `~/Library/Application Support/clawdbot/bridge.sock`
|
|
|
|
### ⚠️ Wichtiger Workaround: App-Fokussierung
|
|
|
|
Der `--app` Parameter bei Peekaboo hängt bei Focus-Operationen über die Clawdbot Bridge.
|
|
|
|
**❌ Funktioniert NICHT zuverlässig:**
|
|
```bash
|
|
peekaboo click --app Signal --coords 200,185 --bridge-socket "..."
|
|
peekaboo type "text" --app Signal --bridge-socket "..."
|
|
```
|
|
|
|
**✅ Stattdessen — erst mit `open -a` fokussieren:**
|
|
```bash
|
|
# 1. App fokussieren mit macOS open
|
|
open -a "Signal"
|
|
sleep 0.5
|
|
|
|
# 2. Dann Peekaboo OHNE --app Parameter
|
|
peekaboo see --path /tmp/screenshot.png --bridge-socket "~/Library/Application Support/clawdbot/bridge.sock"
|
|
peekaboo click --coords 200,185 --bridge-socket "..."
|
|
peekaboo click --snapshot <ID> --on elem_31 --bridge-socket "..."
|
|
```
|
|
|
|
### Standard-Workflow
|
|
```bash
|
|
# App öffnen & fokussieren
|
|
open -a "AppName" && sleep 0.5
|
|
|
|
# Screenshot mit Element-Erkennung
|
|
peekaboo see --annotate --path /tmp/app.png --bridge-socket "~/Library/Application Support/clawdbot/bridge.sock"
|
|
|
|
# Auf erkanntes Element klicken
|
|
peekaboo click --snapshot <SNAPSHOT-ID> --on elem_XX --bridge-socket "..."
|
|
|
|
# Oder auf Koordinaten klicken
|
|
peekaboo click --coords X,Y --bridge-socket "..."
|
|
|
|
# Text tippen
|
|
peekaboo type "Hello World" --bridge-socket "..."
|
|
```
|
|
|
|
### Insider-Info: Bastian & Jasmin
|
|
- **"aaaaAaaAaah"** = Liebesgesang 😂💕 (als Text schicken, TTS kann das nicht)
|
|
|
|
## Home Assistant
|
|
|
|
Credentials sind in der Gateway-Config unter `env.vars` gespeichert (`HA_URL`, `HA_TOKEN`).
|
|
|
|
### Smart EQ (E-Auto) Ladeüberwachung
|
|
- **Sensor:** `sensor.aqara_plug_car_charger_e_smart_power`
|
|
- **Typ:** Aqara Smart Plug mit Leistungsmessung
|
|
- **Einheit:** Watt (W)
|
|
- **Logik:**
|
|
- `> 0W` = Smart lädt ✅
|
|
- `= 0W` = Nicht eingesteckt oder voll
|
|
- **Cron-Jobs:** `smart-einstecken-18` (18:00), `smart-einstecken-20` (20:00)
|
|
- Prüfe Sensor vor Erinnerung — nur erinnern wenn 0W
|
|
|
|
### Staubsauger-Roboter: Sucky
|
|
- **Entity:** `vacuum.sucky` (Deebot)
|
|
- **Sensoren:** `sensor.sucky_batterie`, `sensor.sucky_flache_gereinigt`, etc.
|
|
- **Räume:** WC (1), Gästezimmer (2), Küche (3), Flur (4), Wohnzimmer (5)
|
|
- **Modi:** vacuum_and_mop, quiet, normal, max, max_plus
|
|
|
|
## Browser-Präferenzen
|
|
|
|
- **Cookie-Banner:** Immer "Alle akzeptieren" klicken (Bastians Erlaubnis)
|
|
|
|
## What Goes Here
|
|
|
|
Things like:
|
|
- Camera names and locations
|
|
- SSH hosts and aliases
|
|
- Preferred voices for TTS
|
|
- Speaker/room names
|
|
- Device nicknames
|
|
- Anything environment-specific
|
|
|
|
## Examples
|
|
|
|
```markdown
|
|
### Cameras
|
|
- living-room → Main area, 180° wide angle
|
|
- front-door → Entrance, motion-triggered
|
|
|
|
### SSH
|
|
- home-server → 192.168.1.100, user: admin
|
|
|
|
### TTS
|
|
- Preferred voice: "Nova" (warm, slightly British)
|
|
- Default speaker: Kitchen HomePod
|
|
```
|
|
|
|
## Why Separate?
|
|
|
|
Skills are shared. Your setup is yours. Keeping them apart means you can update skills without losing your notes, and share skills without leaking your infrastructure.
|
|
|
|
---
|
|
|
|
Add whatever helps you do your job. This is your cheat sheet.
|