{"_id":"@airnauts/comments-notifier-slack","_rev":"7-ee4912e5c943717cf28138af569f38e9","name":"@airnauts/comments-notifier-slack","dist-tags":{"latest":"0.7.0"},"versions":{"0.1.0":{"name":"@airnauts/comments-notifier-slack","version":"0.1.0","keywords":["comments","commenting","annotations","feedback","airnauts","notifications","slack"],"author":{"name":"Airnauts"},"license":"MIT","_id":"@airnauts/comments-notifier-slack@0.1.0","maintainers":[{"name":"jkrzemie","email":"hello@airnauts.com"},{"name":"mateuszpaulski","email":"mateusz@airnauts.com"}],"homepage":"https://github.com/Airnauts/commenting-tool#readme","bugs":{"url":"https://github.com/Airnauts/commenting-tool/issues"},"dist":{"shasum":"bc2e092de8b97d7017662449bd006a4718c9e6f1","tarball":"https://registry.npmjs.org/@airnauts/comments-notifier-slack/-/comments-notifier-slack-0.1.0.tgz","fileCount":7,"integrity":"sha512-pCsrD+8FnM3n4o2o5jWUJnGLgvR3zzaEKKKiVrXBdrS9gwqBOW1kUd8+fZePPgKx4bBCmvC1Mr/QRJh3G+6qJQ==","signatures":[{"sig":"MEYCIQCk5wdShWxD5jPX978gYhv8D+WnYUhUC4yXNBCEbn+cswIhAKcPtSLeLLEHxpwp+iyeW5D8Qmv6fRDuRJEdQRYEI4Rl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9200},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"29dcd09f155b244558266967cc3222815fe97293","scripts":{"test":"vitest run","build":"tsup && tsc --build --force","typecheck":"tsc --build"},"_npmUser":{"name":"mateuszpaulski","email":"mateusz@airnauts.com"},"repository":{"url":"git+https://github.com/Airnauts/commenting-tool.git","type":"git","directory":"packages/notifier-slack"},"_npmVersion":"10.9.2","description":"Slack Incoming Webhook notifier for the Airnauts commenting tool server.","directories":{},"_nodeVersion":"22.13.0","dependencies":{"@airnauts/comments-core":"workspace:^","@airnauts/comments-server":"workspace:^"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@airnauts/comments-test-support":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/comments-notifier-slack_0.1.0_1780913731759_0.24313368573763494","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @airnauts/airside-extension-slack — install that instead. No longer maintained."},"0.4.0":{"name":"@airnauts/comments-notifier-slack","version":"0.4.0","keywords":["comments","commenting","annotations","feedback","airnauts","notifications","slack"],"author":{"name":"Airnauts"},"license":"MIT","_id":"@airnauts/comments-notifier-slack@0.4.0","maintainers":[{"name":"jkrzemie","email":"hello@airnauts.com"},{"name":"mateuszpaulski","email":"mateusz@airnauts.com"}],"homepage":"https://github.com/Airnauts/commenting-tool#readme","bugs":{"url":"https://github.com/Airnauts/commenting-tool/issues"},"dist":{"shasum":"daaaaf63fd356f9692ac1f1beeb40e2a594b1d58","tarball":"https://registry.npmjs.org/@airnauts/comments-notifier-slack/-/comments-notifier-slack-0.4.0.tgz","fileCount":7,"integrity":"sha512-wXhcqQgEU7rAgQazMujSSUeFGjQh0E9fsbHtr40WFpWh6j3eRo5LJOtM2BH7wznF4ACJzuhDpTjKJt/eUhJoeA==","signatures":[{"sig":"MEUCIQDvVjPyZTSoiMbWuuLvX8t2rS9x36I36g9UEU1ivQ87owIgV0JSEXTPLD9Myj8l5feZ9O+Jlni35MtZeMov+Kuq460=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9183},"type":"module","_from":"file:airnauts-comments-notifier-slack-0.4.0.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsup && tsc --build --force","typecheck":"tsc --build"},"_npmUser":{"name":"mateuszpaulski","email":"mateusz@airnauts.com"},"_resolved":"/tmp/12f3cd5575fa0ce8b8bed257fc8507f1/airnauts-comments-notifier-slack-0.4.0.tgz","_integrity":"sha512-wXhcqQgEU7rAgQazMujSSUeFGjQh0E9fsbHtr40WFpWh6j3eRo5LJOtM2BH7wznF4ACJzuhDpTjKJt/eUhJoeA==","repository":{"url":"git+https://github.com/Airnauts/commenting-tool.git","type":"git","directory":"packages/notifier-slack"},"_npmVersion":"10.9.8","description":"Slack Incoming Webhook notifier for the Airnauts commenting tool server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@airnauts/comments-core":"^0.4.0","@airnauts/comments-server":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@airnauts/comments-test-support":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/comments-notifier-slack_0.4.0_1780915787458_0.6571652697904558","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @airnauts/airside-extension-slack — install that instead. No longer maintained."},"0.5.0":{"name":"@airnauts/comments-notifier-slack","version":"0.5.0","keywords":["comments","commenting","annotations","feedback","airnauts","notifications","slack"],"author":{"name":"Airnauts"},"license":"MIT","_id":"@airnauts/comments-notifier-slack@0.5.0","maintainers":[{"name":"jkrzemie","email":"hello@airnauts.com"},{"name":"mateuszpaulski","email":"mateusz@airnauts.com"}],"homepage":"https://github.com/Airnauts/commenting-tool#readme","bugs":{"url":"https://github.com/Airnauts/commenting-tool/issues"},"dist":{"shasum":"fe30370faf2c26eeb9adb6d54c5b85199821f86a","tarball":"https://registry.npmjs.org/@airnauts/comments-notifier-slack/-/comments-notifier-slack-0.5.0.tgz","fileCount":7,"integrity":"sha512-cwagH7U/98bqKACgvamvmUXAPJHlLavuY/IPv1RcILspP1LwSWt4evg1GTyHX6znV8nfwQyaubnGv4uVhIcGCA==","signatures":[{"sig":"MEYCIQD9AtMix5BwAoGGb1QHdY9QGM39d1uIVkldCVXUaxDp+gIhAKj6/IjHacn7W4a0fAIWj/hQZlCGMH3OkijcFcJ4D0hz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11330},"type":"module","_from":"file:airnauts-comments-notifier-slack-0.5.0.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsup && tsc --build --force","typecheck":"tsc --build"},"_npmUser":{"name":"mateuszpaulski","email":"mateusz@airnauts.com"},"_resolved":"/tmp/c35d9c6f107bba23d0eadc486095a397/airnauts-comments-notifier-slack-0.5.0.tgz","_integrity":"sha512-cwagH7U/98bqKACgvamvmUXAPJHlLavuY/IPv1RcILspP1LwSWt4evg1GTyHX6znV8nfwQyaubnGv4uVhIcGCA==","repository":{"url":"git+https://github.com/Airnauts/commenting-tool.git","type":"git","directory":"packages/notifier-slack"},"_npmVersion":"10.9.8","description":"Slack Incoming Webhook notifier for the Airnauts commenting tool server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@airnauts/comments-core":"^0.5.0","@airnauts/comments-server":"^0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@airnauts/comments-test-support":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/comments-notifier-slack_0.5.0_1780919620358_0.11067381267657805","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @airnauts/airside-extension-slack — install that instead. No longer maintained."},"0.5.1":{"name":"@airnauts/comments-notifier-slack","version":"0.5.1","keywords":["comments","commenting","annotations","feedback","airnauts","notifications","slack"],"author":{"name":"Airnauts"},"license":"MIT","_id":"@airnauts/comments-notifier-slack@0.5.1","maintainers":[{"name":"jkrzemie","email":"hello@airnauts.com"},{"name":"mateuszpaulski","email":"mateusz@airnauts.com"}],"homepage":"https://github.com/Airnauts/commenting-tool#readme","bugs":{"url":"https://github.com/Airnauts/commenting-tool/issues"},"dist":{"shasum":"4ba3453a3132415053b2b339297b2a36c2f132aa","tarball":"https://registry.npmjs.org/@airnauts/comments-notifier-slack/-/comments-notifier-slack-0.5.1.tgz","fileCount":7,"integrity":"sha512-GlcxDmuobRmgEyhzQVW+4X+fBLZ5wUvz6vTElRDtaFPmeRCmyjMDkJJVEimVKp6wehv0BkCK6x/Hz8qpMIR0yg==","signatures":[{"sig":"MEYCIQCcBkw05HIMsZE+UvMyPQUGS4pNVbGvkJ6WpY+JeB6t6AIhAKhN71b0OL1IMbu9zvu2npO4SX8rfsq9w1ldSoKjETyY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11330},"type":"module","_from":"file:airnauts-comments-notifier-slack-0.5.1.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsup && tsc --build --force","typecheck":"tsc --build"},"_npmUser":{"name":"mateuszpaulski","email":"mateusz@airnauts.com"},"_resolved":"/tmp/da77bb31ada20439b8b7f5fe53b5abd0/airnauts-comments-notifier-slack-0.5.1.tgz","_integrity":"sha512-GlcxDmuobRmgEyhzQVW+4X+fBLZ5wUvz6vTElRDtaFPmeRCmyjMDkJJVEimVKp6wehv0BkCK6x/Hz8qpMIR0yg==","repository":{"url":"git+https://github.com/Airnauts/commenting-tool.git","type":"git","directory":"packages/notifier-slack"},"_npmVersion":"10.9.8","description":"Slack Incoming Webhook notifier for the Airnauts commenting tool server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@airnauts/comments-core":"^0.5.1","@airnauts/comments-server":"^0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@airnauts/comments-test-support":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/comments-notifier-slack_0.5.1_1780924735783_0.4960342747380009","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @airnauts/airside-extension-slack — install that instead. No longer maintained."},"0.6.0":{"name":"@airnauts/comments-notifier-slack","version":"0.6.0","keywords":["comments","commenting","annotations","feedback","airnauts","notifications","slack"],"author":{"name":"Airnauts"},"license":"MIT","_id":"@airnauts/comments-notifier-slack@0.6.0","maintainers":[{"name":"jkrzemie","email":"hello@airnauts.com"},{"name":"mateuszpaulski","email":"mateusz@airnauts.com"}],"homepage":"https://github.com/Airnauts/commenting-tool#readme","bugs":{"url":"https://github.com/Airnauts/commenting-tool/issues"},"dist":{"shasum":"ec31f539c1f893002e144f6558072c52877624a8","tarball":"https://registry.npmjs.org/@airnauts/comments-notifier-slack/-/comments-notifier-slack-0.6.0.tgz","fileCount":7,"integrity":"sha512-rpO3bLxmUTqBKUYh56mt6Rj7GQ9ISLi5GcFWBNXVFgXQkuLq+yFci8QVuuZvhl9NobTAD16SoVrBGvobOa34Cw==","signatures":[{"sig":"MEUCIQDaIVMNoOfuJKypuTDrh6YyTi4y4jchLSx7W4TNypJB0gIgcTlCg4rSNkcyI9Kp33feyWlIcatDwqGihc8dnBQHZbQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10972},"type":"module","_from":"file:airnauts-comments-notifier-slack-0.6.0.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsup && tsc --build --force","typecheck":"tsc --build"},"_npmUser":{"name":"mateuszpaulski","email":"mateusz@airnauts.com"},"_resolved":"/tmp/77dac0b121ddedb68c1644a4565711b6/airnauts-comments-notifier-slack-0.6.0.tgz","_integrity":"sha512-rpO3bLxmUTqBKUYh56mt6Rj7GQ9ISLi5GcFWBNXVFgXQkuLq+yFci8QVuuZvhl9NobTAD16SoVrBGvobOa34Cw==","repository":{"url":"git+https://github.com/Airnauts/commenting-tool.git","type":"git","directory":"packages/notifier-slack"},"_npmVersion":"10.9.8","description":"Slack Incoming Webhook notifier for the Airnauts commenting tool server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@airnauts/comments-core":"^0.6.0","@airnauts/comments-server":"^0.6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@airnauts/comments-test-support":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/comments-notifier-slack_0.6.0_1781537514166_0.16248980727068685","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @airnauts/airside-extension-slack — install that instead. No longer maintained."},"0.7.0":{"name":"@airnauts/comments-notifier-slack","version":"0.7.0","keywords":["comments","commenting","annotations","feedback","airnauts","notifications","slack"],"author":{"name":"Airnauts"},"license":"MIT","_id":"@airnauts/comments-notifier-slack@0.7.0","maintainers":[{"name":"jkrzemie","email":"hello@airnauts.com"},{"name":"mateuszpaulski","email":"mateusz@airnauts.com"}],"homepage":"https://github.com/Airnauts/commenting-tool#readme","bugs":{"url":"https://github.com/Airnauts/commenting-tool/issues"},"dist":{"shasum":"37ab00544b994ca82af2a35e320c6b2733d13ae8","tarball":"https://registry.npmjs.org/@airnauts/comments-notifier-slack/-/comments-notifier-slack-0.7.0.tgz","fileCount":7,"integrity":"sha512-EK2Ox1Q0WWdS+SlWS5bKOVDNLwayqckExvj8E5VPWwPe2tfQd2nkQEHn/fW2Rs4dHj5ocYQJWt6u7VySirxQBw==","signatures":[{"sig":"MEUCIQDtiEiIqXe/h/lJ05ggD1L9pwISaqRFnQM4NsOD1XiYWAIgHhtXSCQyJhGHtwlZuXIa5TMp5yM0kudsef2fmq6bF/k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11677},"type":"module","_from":"file:airnauts-comments-notifier-slack-0.7.0.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsup && tsc --build --force","typecheck":"tsc --build"},"_npmUser":{"name":"mateuszpaulski","email":"mateusz@airnauts.com"},"_resolved":"/tmp/77864823023883541adb856334d3e307/airnauts-comments-notifier-slack-0.7.0.tgz","_integrity":"sha512-EK2Ox1Q0WWdS+SlWS5bKOVDNLwayqckExvj8E5VPWwPe2tfQd2nkQEHn/fW2Rs4dHj5ocYQJWt6u7VySirxQBw==","repository":{"url":"git+https://github.com/Airnauts/commenting-tool.git","type":"git","directory":"packages/notifier-slack"},"_npmVersion":"10.9.8","description":"Slack Incoming Webhook notifier for the Airnauts commenting tool server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@airnauts/comments-core":"^0.7.0","@airnauts/comments-server":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@airnauts/comments-test-support":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/comments-notifier-slack_0.7.0_1781540305079_0.924212748174144","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @airnauts/airside-extension-slack — install that instead. No longer maintained."}},"time":{"created":"2026-06-08T10:15:31.599Z","modified":"2026-06-16T09:42:44.975Z","0.1.0":"2026-06-08T10:15:31.967Z","0.4.0":"2026-06-08T10:49:47.592Z","0.5.0":"2026-06-08T11:53:40.489Z","0.5.1":"2026-06-08T13:18:55.907Z","0.6.0":"2026-06-15T15:31:54.306Z","0.7.0":"2026-06-15T16:18:25.208Z"},"bugs":{"url":"https://github.com/Airnauts/commenting-tool/issues"},"author":{"name":"Airnauts"},"license":"MIT","homepage":"https://github.com/Airnauts/commenting-tool#readme","keywords":["comments","commenting","annotations","feedback","airnauts","notifications","slack"],"repository":{"url":"git+https://github.com/Airnauts/commenting-tool.git","type":"git","directory":"packages/notifier-slack"},"description":"Slack Incoming Webhook notifier for the Airnauts commenting tool server.","maintainers":[{"name":"jkrzemie","email":"hello@airnauts.com"},{"name":"mateuszpaulski","email":"mateusz@airnauts.com"}],"readme":"# @airnauts/comments-notifier-slack\n\nSlack Incoming Webhook notification extension for the [Airnauts commenting tool](https://github.com/Airnauts/commenting-tool) server. Posts a Block Kit message to a Slack channel whenever a reviewer creates a thread or adds a reply.\n\n## Installation\n\n```bash\npnpm add @airnauts/comments-notifier-slack\n```\n\n## Quick start\n\n1. In Slack, create (or pick) an app, enable **Incoming Webhooks**, and add a webhook to your channel. Copy the `https://hooks.slack.com/services/…` URL — the channel is baked into it.\n\n2. Pass the result to `createCommentsServer`:\n\n```ts\nimport { createCommentsServer } from '@airnauts/comments-server'\nimport { slackExtension } from '@airnauts/comments-notifier-slack'\n\ncreateCommentsServer({\n  repository,\n  storage,\n  secretKey: process.env.COMMENTS_SECRET!,\n  projectId: 'my-app',\n  allowedOrigins: ['https://my-app.example.com'],\n  extensions: slackExtension({\n    webhookUrl: process.env.COMMENTS_SLACK_WEBHOOK_URL!,\n  }),\n})\n```\n\n## API reference\n\n### `slackExtension(opts)`\n\n```ts\nslackExtension({\n  webhookUrl: string  // Slack Incoming Webhook URL (required)\n}): NotificationExtension[]\n```\n\nReturns a `NotificationExtension[]` ready to pass to `extensions`. Notification failures are isolated — a hung or erroring webhook never breaks the comment write. Each webhook request is bounded by a 3-second timeout.\n\n### `formatSlackMessage(event)`\n\n```ts\nimport { formatSlackMessage } from '@airnauts/comments-notifier-slack'\n\nconst message: SlackMessage = formatSlackMessage(event)\n// { text: string; blocks: unknown[] }\n```\n\nRenders a `NotificationEvent` as a Slack Block Kit message with a plain-text fallback. Exported for testing or custom dispatch.\n\n### Types\n\n| Export | Description |\n|---|---|\n| `SlackExtensionOptions` | `{ webhookUrl: string }` |\n| `SlackMessage` | `{ text: string; blocks: unknown[] }` |\n\n## Configuration / env vars\n\n| Env var | Description |\n|---|---|\n| `COMMENTS_SLACK_WEBHOOK_URL` | Slack Incoming Webhook URL |\n\n## Requirements\n\n- Node.js ≥ 18 (or any fetch-capable runtime)\n\n## Related packages\n\n- **`@airnauts/comments-server`** — defines `NotificationExtension` and `NotificationEvent`\n- **`@airnauts/comments-notifier-email`** — email notification alternative\n- **`@airnauts/comments-integration-jira`** — Jira thread-action extension\n\n## License\n\nMIT © Airnauts\n","readmeFilename":"README.md"}