{"_id":"@dbalabka/notify-send-wsl","_rev":"2-d58d4c64f0c724ac71e8c016f6410039","name":"@dbalabka/notify-send-wsl","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@dbalabka/notify-send-wsl","version":"0.1.0","keywords":["wsl","windows","notification","toast","notify-send"],"author":{"name":"Dmitry Balabka"},"license":"MIT","_id":"@dbalabka/notify-send-wsl@0.1.0","maintainers":[{"name":"dbalabka","email":"dmitry.balabka@gmail.com"}],"homepage":"https://github.com/dbalabka/notify-send-wsl#readme","bugs":{"url":"https://github.com/dbalabka/notify-send-wsl/issues"},"bin":{"notify-send-wsl":"notify-send-wsl"},"dist":{"shasum":"bb0f012cdd70eb6013fb3c02b18cfe6578a65173","tarball":"https://registry.npmjs.org/@dbalabka/notify-send-wsl/-/notify-send-wsl-0.1.0.tgz","fileCount":4,"integrity":"sha512-ZgfrqTgdTFDILwkwGG1v+FcoDm1xBnpCLt0ge37EaeALapNqBYPFcwgOA/aMy+hkhwpYE8E3OcdhGrSaZOsrGQ==","signatures":[{"sig":"MEUCIQDTXRgkpQH/OiGioJ+1ZwO6pMLxBQmuJ6HVJQ4FWo3lLAIgL0j5uac8Do9748pUQSLw23uFnkLP4oZ74e3ZTTOX3bE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21666},"gitHead":"74d98ecf619664dd4212a9c4e1bc56b978047e72","_npmUser":{"name":"dbalabka","email":"dmitry.balabka@gmail.com"},"repository":{"url":"git+https://github.com/dbalabka/notify-send-wsl.git","type":"git"},"_npmVersion":"10.9.2","description":"WSL helper that shows Windows toast notifications from the shell via powershell.exe.","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/notify-send-wsl_0.1.0_1773937209168_0.8935518796474662","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@dbalabka/notify-send-wsl","version":"0.1.1","description":"WSL helper that shows Windows toast notifications from the shell via powershell.exe.","bin":{"notify-send-wsl":"notify-send-wsl"},"keywords":["wsl","windows","notification","toast","notify-send"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/dbalabka/notify-send-wsl.git"},"author":{"name":"Dmitry Balabka"},"bugs":{"url":"https://github.com/dbalabka/notify-send-wsl/issues"},"homepage":"https://github.com/dbalabka/notify-send-wsl#readme","publishConfig":{"access":"public"},"_id":"@dbalabka/notify-send-wsl@0.1.1","gitHead":"4acfbaf0969d0fa5717f2ae830daae841953f814","_nodeVersion":"22.14.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-x0zFuFCroYWyJXC3s+ihjWwUrr3NqzIiFuVbjqo3NfnuPEW9qByjnfRodNnRxPSY3+OA2S2QbOI776BkXajOrg==","shasum":"909c3dbf775647eb74c8c1a480c2f414640ca7f9","tarball":"https://registry.npmjs.org/@dbalabka/notify-send-wsl/-/notify-send-wsl-0.1.1.tgz","fileCount":4,"unpackedSize":22084,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICQ0JWqLMvABnzhxxVFgWg0tuBLa7rAtaqFkNUiuIGeZAiA/Fl/JrDaXwztSbbOa62Zb74/DJiabADeCL/4ItmJgoA=="}]},"_npmUser":{"name":"dbalabka","email":"dmitry.balabka@gmail.com"},"directories":{},"maintainers":[{"name":"dbalabka","email":"dmitry.balabka@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/notify-send-wsl_0.1.1_1773942902735_0.1210344150460465"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-19T16:20:09.070Z","modified":"2026-03-19T17:55:02.959Z","0.1.0":"2026-03-19T16:20:09.371Z","0.1.1":"2026-03-19T17:55:02.863Z"},"bugs":{"url":"https://github.com/dbalabka/notify-send-wsl/issues"},"author":{"name":"Dmitry Balabka"},"license":"MIT","homepage":"https://github.com/dbalabka/notify-send-wsl#readme","keywords":["wsl","windows","notification","toast","notify-send"],"repository":{"type":"git","url":"git+https://github.com/dbalabka/notify-send-wsl.git"},"description":"WSL helper that shows Windows toast notifications from the shell via powershell.exe.","maintainers":[{"name":"dbalabka","email":"dmitry.balabka@gmail.com"}],"readme":"# notify-send-wsl\n\nSend native Windows toast notifications directly from WSL.\n\n`notify-send-wsl` is a small dependency-light CLI that runs inside WSL and forwards notifications through `powershell.exe`. It works well as a lightweight `notify-send` replacement for shell scripts, local tooling, and agent hooks.\n\n## ✨ Quick start\n\nRun it once with `npx`:\n\n```bash\nnpx @dbalabka/notify-send-wsl \"Hello from WSL\" \"It works\"\n```\n\n## 💡 Why use it\n\n- Native Windows toast notifications from WSL\n- No setup beyond WSL and `powershell.exe`\n- Works well for scripts, CI helpers, Codex, and Claude hooks\n\n## 📋 Requirements\n\n- WSL on Windows\n- `powershell.exe` available in `PATH`\n\n## 📦 Installation\n\n### `npx`\n\n```bash\nnpx @dbalabka/notify-send-wsl \"Installed\" \"Ready to use\"\n```\n\n### Global npm install\n\n```bash\nnpm install -g @dbalabka/notify-send-wsl\nnotify-send-wsl \"Installed\" \"Ready to use\"\n```\n\nOptional alias for Linux-style calls:\n\n```bash\nalias notify-send=notify-send-wsl\n```\n\n## 🚀 Usage\n\n```bash\nnotify-send-wsl [OPTIONS] <summary> [body]\n```\n\n## 🛠 Supported options\n\n- `-u, --urgency=LEVEL` with `low`, `normal`, or `critical`\n- `-t, --expire-time=TIME_MS`\n- `-i, --icon=ICON`\n- `-a, --app-name=APP_NAME`\n- `-c, --category=TYPE[,TYPE...]`\n- `-h, --hint=TYPE:NAME:VALUE`\n- `--agent=auto|codex|claude`\n- `-?, --help`\n\n## 🧪 Examples\n\nBasic notification:\n\n```bash\nnotify-send-wsl \"Build complete\" \"All checks passed\"\n```\n\nCritical notification:\n\n```bash\nnotify-send-wsl -u critical \"Build failed\" \"Check CI logs\"\n```\n\nApp logo image:\n\n```bash\nnotify-send-wsl \\\n  -i /mnt/c/Windows/Web/Screen/img100.jpg \\\n  \"Build complete\" \\\n  \"All checks passed\"\n```\n\n## 🤖 Agent integration\n\nFrom Codex JSON payload:\n\n```bash\nnotify-send-wsl --agent=codex '{\"title\":\"Codex task done\",\"message\":\"Implemented feature\"}'\n```\n\nCodex config:\n\n```toml\nnotify = [\"npx\", \"@dbalabka/notify-send-wsl\", \"--agent\", \"codex\"]\n```\n\nCodex event compatibility:\n\n- `type` must be `agent-turn-complete`; other event types are ignored\n- title becomes `Codex: <last-assistant-message>` with fallback `Turn Complete!`\n- body is derived from `input-messages`, then common body-like fields\n- category/group becomes `codex-<thread-id>` when available\n\nFrom Claude JSON payload on stdin:\n\n```bash\ncat claude-event.json | notify-send-wsl --agent=claude -\n```\n\nClaude config:\n\n```json\n{\n  \"hooks\": {\n    \"Notification\": [\n      {\n        \"matcher\": \"\",\n        \"hooks\": [\n          {\n            \"type\": \"command\",\n            \"command\": \"npx @dbalabka/notify-send-wsl --agent claude\"\n          }\n        ]\n      }\n    ]\n  }\n}\n```\n\nRaw JSON string mode:\n\n```bash\nnotify-send-wsl --agent=auto '{\"title\":\"Done\",\"message\":\"Task finished\"}' 'ignored'\n```\n\nWhen `--agent=...` is used, the first positional argument is treated as JSON input. Use `-` to read JSON from stdin. Any second positional argument is ignored.\n\n## 🔢 Exit codes\n\n- `0` success\n- `1` usage or validation error\n- `2` PowerShell execution failure\n- `3` unsupported option\n\n## 📦 Publishing\n\nThis repository is set up to publish the executable as the public npm package `@dbalabka/notify-send-wsl`.\n\nDry run:\n\n```bash\nnpm pack --dry-run\n```\n\nPublish:\n\n```bash\nnpm publish\n```\n\n## 📚 Reference\n\n- Microsoft docs: <https://learn.microsoft.com/en-us/windows/apps/develop/notifications/app-notifications/adaptive-interactive-toasts?tabs=appsdk>\n","readmeFilename":"README.md"}