{"_id":"@0xkobold/pi-alerts","name":"@0xkobold/pi-alerts","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@0xkobold/pi-alerts","version":"0.1.0","description":"Customizable chimes and notifications for pi","keywords":["pi-package"],"main":"extensions/pi-alerts.ts","pi":{"extensions":["./extensions"],"skills":["./skills"]},"_id":"@0xkobold/pi-alerts@0.1.0","gitHead":"b92bc0372d41843966f7c866f7611fa1afda6a15","_nodeVersion":"22.14.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-uJB/wv8t5YqnwvGoE1hYt/nHEwPsva+CmJINmumVqDX2CXUh33cxZwk38msHFjNEXBLz8XgcWAcDfAnpkxD8/w==","shasum":"e7d161d41055298d03b2354045b62b95b47fb00f","tarball":"https://registry.npmjs.org/@0xkobold/pi-alerts/-/pi-alerts-0.1.0.tgz","fileCount":5,"unpackedSize":40011,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD4jzAbEvCU5pSJPViBOugGsEm3gyG6xRZAVoq9QjQB3wIhAKJO9F9RGJARC7zPoh9TjYh4w3cqhz1fAjrh5q430WdQ"}]},"_npmUser":{"name":"moikapy","email":"warrenckhan@gmail.com"},"directories":{},"maintainers":[{"name":"moikapy","email":"warrenckhan@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-alerts_0.1.0_1774312334443_0.6431231480416275"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-24T00:32:14.370Z","0.1.0":"2026-03-24T00:32:14.588Z","modified":"2026-03-24T00:32:14.778Z"},"maintainers":[{"name":"moikapy","email":"warrenckhan@gmail.com"}],"description":"Customizable chimes and notifications for pi","keywords":["pi-package"],"readme":"# pi-alerts\n\nA pi extension that plays customizable chimes and notifications when tasks are complete.\n\n## Features\n\n- **Beep Mode**: Simple system beep or Glass-like tone (cross-platform)\n- **Custom Notes/Songs**: Play any note or melody using notation like `C4:200,E4:200,G4:400`\n- **Native Notifications**: System notifications on macOS, Linux, or Windows\n- **Text-to-Speech**: Announce completion with a spoken message\n- **Volume Control**: Adjust alert volume (0-100%)\n- **Cross-Platform**: Works on macOS, Linux, and Windows\n- **Bundled Skill**: \"Keep Me Posted\" skill for notification workflows\n\n## Installation\n\n### Extension Only\n\n```bash\n# Create symlink to load the extension\nln -s /path/to/pi-alerts/index.ts ~/.pi/agent/extensions/pi-alerts.ts\n```\n\nThen restart pi or run `/reload`.\n\n### Full Package (Extension + Skill)\n\n```bash\n# Symlink extension\nln -s /path/to/pi-alerts/index.ts ~/.pi/agent/extensions/pi-alerts.ts\n\n# Symlink skill\nln -s /path/to/pi-alerts/skills/keep-me-posted ~/.pi/agent/skills/\n```\n\n## Usage\n\n### Tool: `task_done_chime`\n\nUse in your prompts when you want to be notified when a task finishes:\n\n```javascript\n// Basic beep alert with default settings\nUse the task_done_chime tool when you're done.\n\n// Custom chime\nUse task_done_chime with mode=\"tone\" and customSong=\"C5:200,E5:200,G5:400\"\n\n// System notification\nUse task_done_chime with mode=\"notification\" and title=\"Build Complete\"\n\n// Text-to-speech\nUse task_done_chime with mode=\"speech\" and customText=\"Task finished, ready for next!\"\n```\n\n### Commands\n\n- `/alert` - Show current settings\n- `/alert status` - Display detailed settings in widget\n- `/alert test` - Test current alert\n- `/alert test tone` - Test specific mode\n\n### Configuration\n\n| Command | Description |\n|---------|-------------|\n| `/alert mode [beep\\|tone\\|speech\\|notification\\|silent]` | Set default mode |\n| `/alert sound [Glass\\|Tink\\|Pop\\|...]` | Choose beep sound (macOS) |\n| `/alert beeps [1-10]` | Number of beeps |\n| `/alert delay [50-2000]` | Delay between beeps (ms) |\n| `/alert song [C4:200,...]` | Set custom melody |\n| `/alert text [message]` | Set speech text |\n| `/alert title [title]` | Set notification title |\n| `/alert volume [0-100]` | Set volume level |\n| `/alert sound list` | List available macOS sounds |\n\n### Keyboard Shortcut\n\n`Ctrl+Shift+.` - Test the current alert\n\n## Beep Mode\n\nThe default mode is `beep` with Glass sound on macOS or a generated glass-like tone on other platforms.\n\n| Platform | Sound |\n|----------|-------|\n| macOS | System sound (Glass by default) |\n| Linux | Generated 1318Hz tone with harmonics |\n| Windows | Generated 1318Hz tone with harmonics |\n\n### Available macOS System Sounds\n\n- **Glass** ✨ - Short, bright, bell-like (default)\n- **Tink** - Soft, gentle, quiet\n- **Pop** - Bubbly, quick burst\n- **Basso** - Deep, bassy thump\n- **Ping** - Crystal, ringing\n- **Blow** - Soft whoosh\n- **Bottle** - Lower version of Glass\n\n## Song Notation\n\nNotes are formatted as `NoteOctave:DurationMs`:\n\n| Note | Frequency | Example |\n|------|-----------|---------|\n| C4 | 261.63 Hz | Middle C |\n| E4 | 329.63 Hz |  |\n| G4 | 392.00 Hz |  |\n| C5 | 523.25 Hz | High C |\n| E5 | 659.25 Hz |  |\n| G5 | 783.99 Hz |  |\n| A4 | 440.00 Hz | Concert A |\n\nExamples:\n- `C4:200` - Middle C for 200ms\n- `C4:200,E4:200,G4:200,C5:400` - C major arpeggio\n- `C5:150,C5:150,C5:150,G5:600` - Imperial March first phrase\n\n## Keep Me Posted Skill\n\nWhen the user asks to be kept updated, use the notification:\n\n**Trigger phrases:**\n- \"keep me posted\"\n- \"let me know when you're done\"\n- \"notify me when complete\"\n- \"alert me when finished\"\n- \"ping me when done\"\n- \"give me a heads up\"\n\n**What it does:**\n1. Confirms notification will be sent\n2. Completes the task\n3. Plays the configured beep alert\n\n## Settings File\n\nSettings are stored in `~/.pi/pi-alerts-settings.json`:\n\n```json\n{\n  \"defaultMode\": \"beep\",\n  \"beepCount\": 1,\n  \"beepDelayMs\": 200,\n  \"beepSound\": \"Glass\",\n  \"toneSequence\": [\n    { \"frequency\": 523.25, \"duration\": 150 },\n    { \"frequency\": 659.25, \"duration\": 150 },\n    { \"frequency\": 783.99, \"duration\": 300 }\n  ],\n  \"speechText\": \"Task complete!\",\n  \"notificationTitle\": \"pi Alert\",\n  \"volume\": 80\n}\n```\n\n## Platform Notes\n\n### macOS\n- Uses `afplay` for sound playback\n- System sounds in `/System/Library/Sounds/`\n- Uses `osascript` for notifications and `say` for speech\n\n### Linux\n- Uses `aplay`, `paplay`, or `play` for sound\n- Uses `notify-send` for notifications\n- Uses `espeak` or `espeak-ng` for speech\n- Falls back to terminal bell\n\n### Windows\n- Uses PowerShell SoundPlayer for sound\n- Uses Toast notifications\n- Uses System.Speech for text-to-speech\n- Falls back to console bell\n","readmeFilename":"README.md","_rev":"1-07a31c8d1c33cafa72ef6234adf5f588"}