{"_id":"openclaw-seatalk","_rev":"56-cb6f2ee4728caabf6df4c6f48e6c7dfc","name":"openclaw-seatalk","dist-tags":{"latest":"1.1.1"},"versions":{"0.1.0":{"name":"openclaw-seatalk","version":"0.1.0","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.1.0","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"e7c42492153a4c0bd4f625340e0119f05dc04004","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.1.0.tgz","fileCount":22,"integrity":"sha512-NH+jjwv21n3z3A+x8oVRnjrmW5+1vr0cC40JMLMukykCEhG0M8Me44irxXcVpqE2o5bAgJG7Z93sUsAa8iZX9Q==","signatures":[{"sig":"MEUCIQCG0sNpPPWIaLDiynL0xii6dlEIE3RvRaK2dWUALhxdmQIgSHsxMi5a1lTNYftWH6rOjQzQVA6/mJdAYs7bSKlRT20=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117041},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"3baac097fa5d67bb0adf94dab03b6a4cdb9ec62b","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format ."},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.1.0_1772770327064_0.13304719855301816","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"openclaw-seatalk","version":"0.1.1","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.1.1","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"ad91b5c593a03ae08fba7ea72f37dd2069df7e48","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.1.1.tgz","fileCount":22,"integrity":"sha512-INxjsxo0/wgVfKj1NceRWdd2vn6KeTd42HzwvX0i0pl/nNnOsojAv98SmPtgmwpX1yLiI+i97usSFGr9si4xWg==","signatures":[{"sig":"MEUCIQDezQH/ScIDW1YolDk5hqn0Q9EhsQqWaGAfnXnoKco0xAIgdI/o7K2lnyjdkNwoJWCiBLEvoHQDb8VpqunV/Z+QQQs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117053},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"828cb7569b2dd8c1d7ef66a45defa2e836ba25e5","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format ."},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.1.1_1772771172451_0.1010407441267478","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"openclaw-seatalk","version":"0.1.3","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.1.3","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"b6e24da64207d3af087ea144a700d4363577681f","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.1.3.tgz","fileCount":23,"integrity":"sha512-/Ur2lHoeK4lcFEKHb5sLhNcEucZr2KHxC0hKgvzDKq4jq0SL7F4A9OpFMRfWBjXxzLV3dyanJuzVOic++QpTsw==","signatures":[{"sig":"MEUCIQDRO9b5N3r3ODZaCaLI6qyzn+fmB16kjwOeVe+YKdE1dgIgJOHI9rHxG5fG81f+rfPA/BBdqS+gqQbbtk0qBqQd7KQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117446},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"c579fffbd207762de72970573849644083a57e21","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format ."},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.1.3_1772783175692_0.5097227886588547","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"openclaw-seatalk","version":"0.1.4","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.1.4","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"e9a5238c23bac3a3e21f211e54882b9ee1a16bd7","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.1.4.tgz","fileCount":23,"integrity":"sha512-4OtIfc/7xn7IQe5sMc3kWplJ4x+5dwqiogQ8M7XACif+PwH5jdScHfmxPdM+QVIV8KQkEfENvw+/ZMQjd99a4Q==","signatures":[{"sig":"MEUCIGU+/UXUl6uAb0lxdIfRYs1kvkj7eqtPiilUvMYrJ2igAiEAq1XLherzxxnDjPrtM+oxUPkp2ZO/A8KwSIr83yngT+w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117644},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"918592c59c62d29ec7aea38e7863fb379cbf41e5","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format ."},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.1.4_1773131296376_0.2708995866632009","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"openclaw-seatalk","version":"0.1.5","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.1.5","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"3867316b8aebceefa4bf3e5baa2ff15a42eb12f3","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.1.5.tgz","fileCount":23,"integrity":"sha512-TVN9/udetxNFcHTTHuG7qCsKhvEdWdIwBuM3zXWDV9T+FaKSIuGWt/iu0CGgj4bnZyOsZD/kcZ2jmT94OrurNQ==","signatures":[{"sig":"MEUCIHA8uvHjD56cc8femJdqN6t0bD6aPDfgL0JWxOpj1vFHAiEAnAcYOijoJ7qBkSsJ7jBi22klkVp3oZtAcUVBn7ebO2A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117654},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"f4af281e36e8fabd073584c85e4c315ff7a9195e","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format ."},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.1.5_1773631794080_0.8944448579828812","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"openclaw-seatalk","version":"0.1.6","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.1.6","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"44c2fb88446f3b49a171549509aec579be89aa23","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.1.6.tgz","fileCount":23,"integrity":"sha512-/VXU03PGcKJIbIJzPzYBaZ2KiVNXx9DjGbNBbxzeY5bYZfOc18GM+C7RCgcQqnW4VtcldSymf7mQhbLxzVW20Q==","signatures":[{"sig":"MEUCIQDDgyyQazg2MNhAew9eSo68VVwJ6OkXviIr3Mso4323GgIgXg5tL0CgQ+kJP3ukT/OKO6yD0exGwgMJ6h2VrWy5PiM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117619},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"da52f4f99ba5afde7e1acc104142135663599002","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format ."},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.1.6_1774001627679_0.5041865105796437","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"openclaw-seatalk","version":"0.2.0","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.2.0","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"ce73aa9b215ee20074a7e3f4124af8d8c0cf4ea6","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.2.0.tgz","fileCount":24,"integrity":"sha512-KK96aM9EKmsZZJKZRxGzHAFZjHOnywXPKe2LGgWzqNMaxCSZ2l13nvwEuKv/5uamMlrI1gJamAltEiJkPXKLzw==","signatures":[{"sig":"MEUCIQCYkE52HkehDE/44Rs7UMlCwFCnY9326cmDLSwP5SBcsQIgckL3EsRP/ofyWGjZt+DMwxOHXglFotueW342NY152XY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121085},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"4bff566d21df03e446ab92890e5ae5c5b3a258d2","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format ."},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"extensions":["./index.ts"],"setupEntry":"./setup-entry.ts"},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.3.22"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.2.0_1774597014134_0.8261039786014646","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"openclaw-seatalk","version":"0.2.1","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.2.1","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"c4d0636af0c9be0d8c5a7ecfe06a9d157216a408","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.2.1.tgz","fileCount":24,"integrity":"sha512-9L67FKOZYiR1UsXgFNW7ZVU/EmKU9iaO1yhGRD2/t8BJNfWz9fAhivtUc2WYICwtJ+eNEVeYujWMrMq7Q6PT2g==","signatures":[{"sig":"MEYCIQD+DzD3lFfr/8fVSpInTFpcXpxwwVLhE5ec6gAWjPDuhgIhAN7FtlYCnpi0W6XzJqixRz1B5NBHa4nOcCQFRO1MU+Zh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121051},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"b13d55e1615b13657bd4aed64767f01af67fe58b","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format ."},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"compat":{"pluginApi":">=2026.3.22"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.3.22"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.2.1_1774845387721_0.6325172232188137","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"openclaw-seatalk","version":"0.3.0","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.3.0","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"2ba714e38c22ab8f9a5c3d5209dcf279be6c159e","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.3.0.tgz","fileCount":27,"integrity":"sha512-2UL262Isy/PxPBYBHht59W1HKqiaQJOMYV9JpXhW95tustUqNycaQxcoijRzPrfHuvz/Dsh9jlsF+FUPvVJCeg==","signatures":[{"sig":"MEYCIQCuhbuSHbLT1R40p96H19mKwJHWn7OZftUzHFI4Aw6XUgIhAJm+8dqqINZyO+o+W8E0Y3ZNmrhBi3w4fPo1dS10BUuQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133908},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"f0af4d27b3be822b6f5faae5c70290c22ee1258f","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format ."},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"compat":{"pluginApi":">=2026.3.22"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.3.22"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.3.0_1775308821840_0.0837760148311717","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"openclaw-seatalk","version":"0.3.1","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.3.1","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"881b3d0d45f2138b16a56a28d09e2bcf9ceed4c5","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.3.1.tgz","fileCount":27,"integrity":"sha512-B8XcOuZY81CRq/Vzd2L+TG89slKSQdnWu+f8V2zGXQKJ2vaP/rx8g2lmx2WaZnXotmEhsj6BpYFOd3yb52NjNQ==","signatures":[{"sig":"MEYCIQDdyOMZLd2ElfUq3tdEcd4hK5yh5B8fuPjixoNOaM76WgIhAOaWbg57qIRf+p+qS2VQE6Rb6AnTPSKAf8lXUjxN//W7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134980},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"88a46a88ecf8f03269ecf0338b16f9e9156bb129","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format .","pack:clawhub":"mkdir -p dist && npm pack --pack-destination dist"},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"build":{"openclawVersion":"2026.3.22","pluginSdkVersion":"2026.3.22"},"compat":{"pluginApi":">=2026.3.22"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.3.22"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.3.1_1777182614713_0.2715386264871995","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"openclaw-seatalk","version":"0.3.2","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.3.2","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"a07b5795cf6490f064faf604b5c9764aa65688f8","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.3.2.tgz","fileCount":27,"integrity":"sha512-DAv0kT3N8xqP/+Wn2NLCc2zCmbhomWxMphgk1JU0Emh3ovuQMhSVo/t6j8+jUlgLgcv+N6znESHzsLpaYgzJ8Q==","signatures":[{"sig":"MEUCIQDz9/5eYytgi8bGsGkrrLeSGduuy+FkuoL1qxeLUsd1HwIgQ2jXHeJuvz49gHGgyRVhCVT3Eb4ngJ2EDzbuAWbuXoE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":135681},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"7b30d14f128c25c50bc9f23eb04a3b6b75fbd080","scripts":{"lint":"biome lint .","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format .","pack:clawhub":"mkdir -p dist && npm pack --pack-destination dist"},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"build":{"openclawVersion":"2026.3.22","pluginSdkVersion":"2026.3.22"},"compat":{"pluginApi":">=2026.3.22"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"latest","@types/ws":"^8.5.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.3.22"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.3.2_1777457491792_0.04832601269734593","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"openclaw-seatalk","version":"0.3.3","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.3.3","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"50f29537587fed3efe1431ff23c4148e2573d736","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.3.3.tgz","fileCount":7,"integrity":"sha512-oKEY5FB2osJ+WmiU4UCy2JRx9G9aa3SR1WI2hkn3uxRiNkhEfVff6H5W5E3FS5kccg51wex4W0CYvxEOffsTlw==","signatures":[{"sig":"MEUCIFotW8EtCK9hKV9McDkIAHf/ZusjBmJU4JMLYsnnSwIWAiEAtNitYQ5ysjuMFZbEoaltjIhv24f4mpmvSAVHa8U4m48=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":130733},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"51713ef9381453efd59f3ead7ee28a25c839180c","scripts":{"lint":"biome lint .","build":"tsup","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format .","prepublishOnly":"pnpm build"},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"build":{"openclawVersion":"2026.3.22","pluginSdkVersion":"2026.3.22"},"compat":{"pluginApi":">=2026.3.22"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"release":{"publishToNpm":true,"publishToClawHub":true},"extensions":["./dist/index.js"],"setupEntry":"./dist/setup-entry.js"},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","openclaw":"latest","@types/ws":"^8.5.0","typescript":"^5.6.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.3.22"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.3.3_1778140293155_0.809620639838476","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"openclaw-seatalk","version":"0.4.0","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.4.0","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"9d3263578ed30581083d9b26d62e3f67a680b1ff","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.4.0.tgz","fileCount":7,"integrity":"sha512-sle9fFHRo0Adg7gsTkwbO/Ssf/asGM2/2nALtxvJSvy7euzc4VI3XUnBEv9n+wNBawU7AZhs/v5IAjxAF5NaXA==","signatures":[{"sig":"MEUCIFEugzGQsjSckJ90EvqdZ51IBtuVXp6j640Lzs17rIE0AiEArlrnh5yjBW9SF2c2TZ2yW+n525UREmIq23HVdOhllRw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":137679},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"4d80f98c1584074b13f43c3144cf51efcdf33f5a","scripts":{"lint":"biome lint .","build":"tsup","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format .","prepublishOnly":"pnpm build"},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"build":{"openclawVersion":"2026.3.22","pluginSdkVersion":"2026.3.22"},"compat":{"pluginApi":">=2026.3.22"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"release":{"publishToNpm":true,"publishToClawHub":true},"extensions":["./dist/index.js"],"setupEntry":"./dist/setup-entry.js"},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","openclaw":"latest","@types/ws":"^8.5.0","typescript":"^5.6.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.3.22"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.4.0_1778641169526_0.8738299483929286","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"openclaw-seatalk","version":"0.4.1","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@0.4.1","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"9605c7203cd3e5cfc9e434cd3ed929195931f316","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-0.4.1.tgz","fileCount":7,"integrity":"sha512-OOkV21bu1LBU1r9/1wSHr9utnyP7by2n2JKCFKvYv68JNebOhHj9ijkffyOkq+ugVVFKWqyQgSYpfLt005Kx5Q==","signatures":[{"sig":"MEYCIQDu2AyrYNw/2VyGjGbMFm7CixxKofjJTAHsi7pEzQYKBgIhAJHD5c/aqQNAgFGuBPkf4nzo5oSHy3cv3Kj3cdjHacc2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":137777},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"382c7d462942663c21f7dcded886b62dbfb6700d","scripts":{"lint":"biome lint .","build":"tsup","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format .","prepublishOnly":"pnpm build"},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"build":{"openclawVersion":"2026.3.22","pluginSdkVersion":"2026.3.22"},"compat":{"pluginApi":">=2026.3.22"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"release":{"publishToNpm":true,"publishToClawHub":true},"extensions":["./dist/index.js"],"setupEntry":"./dist/setup-entry.js"},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","openclaw":"latest","@types/ws":"^8.5.0","typescript":"^5.6.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.3.22"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_0.4.1_1779433979726_0.010756386754341873","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"openclaw-seatalk","version":"1.0.0","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@1.0.0","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"24d4183413bd331dabe6353a601718170a49944f","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-1.0.0.tgz","fileCount":7,"integrity":"sha512-dGSRqJOENecTYEdNJ4Lewglb9Pbi0yElzL7lr0w8fX88qBTnknr5GD8RW07YN9z7NGtfeQSFQ8HCh/GavPwk5A==","signatures":[{"sig":"MEUCIEzl+eT43t83T+DrmQSRTDnU2wNQbKtS3LaxAVblSMaXAiEAk7m8mVlSsFdALcTB+i2QIQ6OVMqcpTGH+90ab1d84bc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134777},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"88a16da9b08134a6eeb5744219157b041b528c4f","scripts":{"lint":"biome lint .","build":"tsup","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format .","prepublishOnly":"pnpm build"},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"build":{"openclawVersion":"2026.6.1","pluginSdkVersion":"2026.6.1"},"compat":{"pluginApi":">=2026.6.1"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"release":{"publishToNpm":true,"publishToClawHub":true},"extensions":["./dist/index.js"],"setupEntry":"./dist/setup-entry.js"},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","openclaw":"2026.6.1","@types/ws":"^8.5.0","typescript":"^5.6.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.6.1"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_1.0.0_1780900249600_0.23001235731808856","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"openclaw-seatalk","version":"1.0.1","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@1.0.1","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"ec0a727db93aeba7a142fffa3bd5e81bcbf821cb","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-1.0.1.tgz","fileCount":7,"integrity":"sha512-dc1CtKn09AI3M5cASE2Wj+qOoL8D7B4DXZoQXrjKlpNU882aUu0AaizRw5lkyuQMDOhQXiZvmQ7YgBZL5n/dOw==","signatures":[{"sig":"MEQCIBgiSRac7HKyCPmfIofXnHPDzyKCqe4qyxYPrnl/+1AMAiA/i57mGYF7wIFRjBzvtLGmnO+XIoMw2S3ntoG7C7D9eQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":135438},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"4634b8a3f552338a4204f2d78c27d15ffe2154a9","scripts":{"lint":"biome lint .","build":"tsup","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format .","prepublishOnly":"pnpm build"},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"build":{"openclawVersion":"2026.6.1","pluginSdkVersion":"2026.6.1"},"compat":{"pluginApi":">=2026.6.1"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"release":{"publishToNpm":true,"publishToClawHub":true},"extensions":["./dist/index.js"],"setupEntry":"./dist/setup-entry.js"},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","openclaw":"2026.6.1","@types/ws":"^8.5.0","typescript":"^5.6.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.6.1"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_1.0.1_1781075934715_0.965591891187632","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"openclaw-seatalk","version":"1.1.0","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"license":"Apache-2.0","_id":"openclaw-seatalk@1.1.0","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"dist":{"shasum":"8f8f04f849f259ad77f92f2cf647be6078814512","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-1.1.0.tgz","fileCount":7,"integrity":"sha512-v+bKZYgwFL6FBJka2Z5ZLSP4d0kG1Jh5xILuAH7QoC1E9mjgDvCTkaZL3E6ZkTmoFq9eEG68FxRB9tbsWDILCA==","signatures":[{"sig":"MEQCICIwDGWViQly0ktzJlMVtRNTwf4oUZXnlM4LIBM7xJ/PAiBHapMAYqzXuN3udYj52q0TysJpj/dwbQ6cC0YTDgPlTg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":148358},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"type":"module","engines":{"node":">=22.16.0"},"gitHead":"8418a1da4591090c5a5b907e642f882664950148","scripts":{"lint":"biome lint .","build":"tsup","check":"biome check .","format":"biome format --write .","lint:fix":"biome lint --fix .","check:fix":"biome check --fix .","format:check":"biome format .","prepublishOnly":"pnpm build"},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"openclaw":{"build":{"openclawVersion":"2026.6.1","pluginSdkVersion":"2026.6.1"},"compat":{"pluginApi":">=2026.6.1"},"channel":{"id":"seatalk","blurb":"SeaTalk messaging integration","label":"SeaTalk","order":70,"selectionLabel":"SeaTalk (plugin)","quickstartAllowFrom":true},"install":{"npmSpec":"openclaw-seatalk","clawhubSpec":"openclaw-seatalk","defaultChoice":"npm"},"release":{"publishToNpm":true,"publishToClawHub":true},"extensions":["./dist/index.js"],"setupEntry":"./dist/setup-entry.js"},"repository":{"url":"git+https://github.com/lf4096/openclaw-seatalk.git","type":"git"},"_npmVersion":"11.6.2","description":"OpenClaw SeaTalk channel plugin","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","zod":"^4.3.6","@sinclair/typebox":"0.34.48"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","openclaw":"2026.6.1","@types/ws":"^8.5.0","typescript":"^5.6.0","@biomejs/biome":"^1.9.0"},"peerDependencies":{"openclaw":">=2026.6.1"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/openclaw-seatalk_1.1.0_1784790511861_0.45876527362257913","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"openclaw-seatalk","version":"1.1.1","description":"OpenClaw SeaTalk channel plugin","type":"module","main":"./dist/index.js","license":"Apache-2.0","repository":{"type":"git","url":"git+https://github.com/lf4096/openclaw-seatalk.git"},"homepage":"https://github.com/lf4096/openclaw-seatalk#readme","bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"keywords":["openclaw","seatalk","chatbot","channel-plugin"],"engines":{"node":">=22.16.0"},"scripts":{"build":"tsup","format":"biome format --write .","format:check":"biome format .","lint":"biome lint .","lint:fix":"biome lint --fix .","check":"biome check .","check:fix":"biome check --fix .","typecheck":"tsc --noEmit","prepublishOnly":"pnpm typecheck && pnpm build"},"dependencies":{"@sinclair/typebox":"0.34.48","ws":"^8.18.0","zod":"^4.3.6"},"devDependencies":{"@biomejs/biome":"^1.9.0","@types/node":"^22.16.0","@types/ws":"^8.5.0","openclaw":"2026.6.1","tsup":"^8.3.0","typescript":"^5.6.0"},"peerDependencies":{"openclaw":">=2026.6.1"},"peerDependenciesMeta":{"openclaw":{"optional":true}},"pnpm":{"onlyBuiltDependencies":["@biomejs/biome"]},"openclaw":{"extensions":["./dist/index.js"],"setupEntry":"./dist/setup-entry.js","channel":{"id":"seatalk","label":"SeaTalk","selectionLabel":"SeaTalk (plugin)","blurb":"SeaTalk messaging integration","order":70,"quickstartAllowFrom":true},"install":{"clawhubSpec":"openclaw-seatalk","npmSpec":"openclaw-seatalk","defaultChoice":"npm"},"compat":{"pluginApi":">=2026.6.1"},"build":{"openclawVersion":"2026.6.1","pluginSdkVersion":"2026.6.1"},"release":{"publishToNpm":true,"publishToClawHub":true}},"gitHead":"22b9541b388f0ccc372667b376a566a32ebdbbf2","_id":"openclaw-seatalk@1.1.1","_nodeVersion":"22.20.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-n3gjic3/sDhvlDcrTSk7oVtbDupfcopjLdBfJi1k0YXWbvUWi3nMQP6KOxpyTDF2TSQMe0AtBXxzZEwvqE0QBA==","shasum":"13f2abfe3e617ba7fd73e2fabfc9dc25c9863cf3","tarball":"https://registry.npmjs.org/openclaw-seatalk/-/openclaw-seatalk-1.1.1.tgz","fileCount":7,"unpackedSize":150131,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD9i9LakoNBFT9R8TjSNvwKPOku/2Ak29xwATktyuoiXAIgLmuRvuixizMuAZl0rcLm0Dm3dOcuBSk6mD1z2SnHrYA="}]},"_npmUser":{"name":"lf4096","email":"lf4096@gmail.com"},"directories":{},"maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/openclaw-seatalk_1.1.1_1787727054522_0.009938253184198942"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-06T04:12:06.986Z","modified":"2026-08-26T06:50:54.819Z","0.1.0":"2026-03-06T04:12:07.230Z","0.1.1":"2026-03-06T04:26:12.607Z","0.1.2":"2026-03-06T06:45:31.940Z","0.1.3":"2026-03-06T07:46:15.843Z","0.1.4":"2026-03-10T08:28:16.522Z","0.1.5":"2026-03-16T03:29:54.298Z","0.1.6":"2026-03-20T10:13:47.849Z","0.2.0-beta.1":"2026-03-26T05:54:29.861Z","0.2.0-beta.2":"2026-03-26T10:11:48.959Z","0.2.0-beta.3":"2026-03-27T03:27:07.316Z","0.2.0":"2026-03-27T07:36:54.291Z","0.2.1-beta.1":"2026-03-30T04:18:49.509Z","0.2.1":"2026-03-30T04:36:27.869Z","0.3.0-beta.0":"2026-04-03T08:22:46.285Z","0.3.0":"2026-04-04T13:20:22.024Z","0.3.1-beta.1":"2026-04-26T03:31:46.049Z","0.3.1-beta.2":"2026-04-26T03:58:10.073Z","0.3.1":"2026-04-26T05:50:14.864Z","0.3.2-beta.1":"2026-04-29T09:27:52.648Z","0.3.2":"2026-04-29T10:11:31.929Z","0.3.3-beta.0":"2026-05-07T06:49:48.272Z","0.3.3-beta.1":"2026-05-07T07:00:53.912Z","0.3.3-beta.2":"2026-05-07T07:09:40.484Z","0.3.3-beta.3":"2026-05-07T07:24:46.853Z","0.3.3":"2026-05-07T07:51:33.289Z","0.4.0-beta.0":"2026-05-12T07:27:31.012Z","0.4.0-beta.1":"2026-05-12T07:46:19.343Z","0.4.0-beta.3":"2026-05-12T09:06:02.401Z","0.4.0":"2026-05-13T02:59:29.670Z","0.4.1-beta.0":"2026-05-22T06:49:44.264Z","0.4.1":"2026-05-22T07:12:59.864Z","0.5.0-beta.0":"2026-06-08T03:31:55.562Z","1.0.0":"2026-06-08T06:30:49.757Z","1.0.1-beta.0":"2026-06-10T07:05:12.112Z","1.0.1":"2026-06-10T07:18:54.864Z","1.1.0":"2026-07-23T07:08:32.005Z","1.1.1":"2026-08-26T06:50:54.697Z"},"bugs":{"url":"https://github.com/lf4096/openclaw-seatalk/issues"},"license":"Apache-2.0","homepage":"https://github.com/lf4096/openclaw-seatalk#readme","keywords":["openclaw","seatalk","chatbot","channel-plugin"],"repository":{"type":"git","url":"git+https://github.com/lf4096/openclaw-seatalk.git"},"description":"OpenClaw SeaTalk channel plugin","maintainers":[{"name":"lf4096","email":"lf4096@gmail.com"}],"readme":"# openclaw-seatalk\n\nOpenClaw channel plugin for [SeaTalk](https://seatalk.io/) messaging.\n\n## Features\n\n### Messaging\n\n- **Private chat** — bidirectional text, image, file messaging with bot subscribers\n- **Group chat** — receive @mentioned messages, send text/image/file replies; configurable group allow-list and per-sender access control\n- **Thread messages** — each DM or group thread runs as an isolated agent session that inherits the parent transcript on first reply; replies are routed back to the originating thread\n- **Quoted messages** — inbound messages with `quoted_message_id` are automatically resolved (text + media download) and provided to the AI as context\n- **Media handling** — inbound: image/file/video URL download; outbound: image/file base64 upload; video receive-only\n- **Typing indicator** — one-shot typing status via SeaTalk API for both private and group chats (configurable: `typing` or `off`)\n\n### Agent Tool\n\n- `group_history` — fetch group chat messages in chronological order with auto-resolved quoted messages\n- `group_info` — get group details (name, avatar, member list)\n- `group_list` — list groups the bot has joined\n- `thread_history` — fetch DM or group thread messages with auto-resolved quoted messages\n- `get_message` — retrieve any message by ID\n\n### Infrastructure\n\n- **Gateway modes** — **webhook** (direct HTTP server), **websocket** (official SeaTalk WebSocket, no public URL), or **relay** (WebSocket client via [seatalk-relay](https://github.com/lf4096/seatalk-relay))\n- **Security** — SHA256 signature verification for incoming events (webhook/relay modes; websocket mode authenticates the connection itself)\n- **Token management** — automatic access token obtain, cache, and refresh\n- **Outbound coalescing** — consecutive reply payloads are merged into a single message with automatic markdown-aware chunking at 4000 chars; configurable via `outboundCoalescing`\n- **Deduplication** — event ID dedup + per-sender debounce buffer (thread-aware)\n- **Access control** — DM policy (`open`/`allowlist`/`pairing`), group policy (`disabled`/`allowlist`/`open`), per-group and per-sender allow-lists\n- **Email resolution** — email-to-employee_code lookup for outbound message targets\n- **Multi-account** — multiple SeaTalk bot apps in one OpenClaw instance\n- **Health probing** — connection health check on startup\n- **CLI onboarding** — interactive setup wizard\n\n## Prerequisites\n\n1. Create a Bot App on [SeaTalk Open Platform](https://open.seatalk.io/)\n2. Get **App ID**, **App Secret** from Basic Info & Credentials\n3. Get **Signing Secret** from Event Callback settings (webhook/relay modes only)\n4. Enable Bot capability and set status to **Online**\n5. Enable required permissions:\n   - **Send Message to Bot User**\n   - **Get Employee Code with Email** (for email-to-employee_code resolution)\n   - **Set Typing Status in Private Chat** (for DM processing indicator)\n   - **Set Typing Status in Group Chat** (for group processing indicator)\n   - **Get Chat History** (for group history tool)\n   - **Get Group Info** (for group info tool)\n   - **Get Joined Group Chat List** (for group list tool)\n   - **Get Thread by Thread ID in Private Chat** (for DM thread tool)\n   - **Get Thread by Thread ID** (for group thread tool)\n6. Configure event delivery in Event Callback settings:\n   - **Webhook mode**: set the callback URL to your OpenClaw server (e.g. `https://your-server:3210/callback`)\n   - **Relay mode**: set the callback URL to your seatalk-relay service (e.g. `https://relay.example.com/seatalk/callback`)\n   - **WebSocket mode**: switch the bot to WebSocket delivery; the gateway must already be connected before the portal \"Re-verify\" passes\n\n## Installation\n\n### From npm\n\n```bash\nopenclaw plugins install openclaw-seatalk\n```\n\nOpenClaw downloads the package, installs dependencies, and registers the plugin automatically. The plugin will appear in the `openclaw onboard` channel selection.\n\n| Plugin version | OpenClaw version |\n|---------------|-----------------|\n| 0.2.x | >= 2026.3.22 |\n| 0.1.x | < 2026.3.22 |\n\nv0.2.0 migrated to the new plugin SDK (`openclaw/plugin-sdk/*`). If you are running OpenClaw < 2026.3.22, pin to 0.1.x:\n\n```bash\nopenclaw plugins install openclaw-seatalk@0.1.6\n```\n\n### From source (development)\n\n```bash\ngit clone https://github.com/lf4096/openclaw-seatalk.git\ncd openclaw-seatalk\npnpm install\npnpm build\nopenclaw plugins install -l .\n```\n\n## Upgrading\n\n```bash\nopenclaw plugins update openclaw-seatalk\nopenclaw gateway restart\n```\n\nUpgrading OpenClaw across the 2026.3.22 SDK boundary (e.g. 2026.3.13 -> 2026.3.22):\n\n```bash\nopenclaw plugins disable openclaw-seatalk\nopenclaw update\nopenclaw plugins update openclaw-seatalk\nopenclaw plugins enable openclaw-seatalk\nopenclaw gateway restart\n```\n\nThe plugin must be disabled before upgrading because the old plugin (0.1.x) imports SDK exports removed in OpenClaw >= 2026.3.22. Disabling prevents it from loading during the upgrade.\n\n## Gateway Modes\n\nThe plugin supports three gateway modes for receiving SeaTalk events:\n\n### Webhook Mode (default)\n\nThe plugin starts an HTTP server to receive SeaTalk Event Callbacks directly. Suitable when the OpenClaw host is publicly reachable or behind a reverse proxy.\n\n```\nSeaTalk --HTTP POST-> OpenClaw (webhook server)\n```\n\n### WebSocket Mode (official, no public URL)\n\nThe plugin opens an outbound WebSocket to SeaTalk's official developer-bot endpoint (`wss://ws-openapi.haiserve.com/ws/bot`) and registers with `appId` + `appSecret`. No public callback URL, relay service, or signing secret is required. Switch the bot to WebSocket in the SeaTalk portal (Event Callback settings); the gateway must already be connected before the portal \"Re-verify\" passes.\n\n```\nSeaTalk WS endpoint <-WebSocket-> OpenClaw (websocket mode)\n```\n\n### Relay Mode (recommended for multiple apps sharing one callback)\n\nThe plugin connects to a [seatalk-relay](https://github.com/lf4096/seatalk-relay) service as a WebSocket client. The relay service receives webhooks from SeaTalk and forwards events to the plugin. Suitable when OpenClaw runs behind a firewall or NAT without a public address and the official WebSocket mode is not used.\n\n```\nSeaTalk API --HTTP POST-> seatalk-relay <-WebSocket-- OpenClaw (relay mode)\n```\n\nIn relay and websocket modes, outbound messages (sending replies) are still sent directly from the plugin to the SeaTalk API.\n\n## Configuration\n\nYou can configure the plugin interactively:\n\n```bash\nopenclaw configure      # config wizard with SeaTalk channel\n```\n\nOr edit the OpenClaw config file directly (`~/.openclaw/openclaw.json`).\n\n### Webhook mode (DM only)\n\n```json5\n{\n  channels: {\n    seatalk: {\n      enabled: true,\n      mode: \"webhook\",  // default, can be omitted\n      appId: \"your_app_id\",\n      appSecret: \"your_app_secret\",\n      signingSecret: \"your_signing_secret\",\n      webhookPort: 3210,\n      webhookPath: \"/callback\",\n      dmPolicy: \"open\",  // or \"allowlist\" | \"pairing\"\n      allowFrom: [\"*\"],  // dmPolicy \"open\" requires the explicit wildcard\n    },\n  },\n}\n```\n\n### WebSocket mode (official, no public URL)\n\n```json5\n{\n  channels: {\n    seatalk: {\n      enabled: true,\n      mode: \"websocket\",\n      appId: \"your_app_id\",\n      appSecret: \"your_app_secret\",\n      dmPolicy: \"allowlist\",\n      allowFrom: [\"alice@company.com\"],\n    },\n  },\n}\n```\n\n### Relay mode with group chat\n\n```json5\n{\n  channels: {\n    seatalk: {\n      enabled: true,\n      mode: \"relay\",\n      appId: \"your_app_id\",\n      appSecret: \"your_app_secret\",\n      signingSecret: \"your_signing_secret\",\n      relayUrl: \"ws://relay.example.com:8080/ws\",\n      dmPolicy: \"allowlist\",\n      allowFrom: [\"alice@company.com\"],\n      groupPolicy: \"allowlist\",      // \"disabled\" | \"allowlist\" | \"open\"\n      groupAllowFrom: [\"group_abc123\"],\n      groupSenderAllowFrom: [\"alice@company.com\"],  // optional sender-level filter\n      processingIndicator: \"typing\", // \"typing\" (default) | \"off\"\n      tools: {\n        groupInfo: true,\n        groupHistory: true,\n        groupList: true,\n        threadHistory: true,\n        getMessage: true,\n      },\n    },\n  },\n}\n```\n\n### Config fields\n\n| Field | Type | Default | Description |\n|-------|------|---------|-------------|\n| `mode` | `\"webhook\"` \\| `\"relay\"` \\| `\"websocket\"` | `\"webhook\"` | Gateway mode |\n| `appId` | string | — | SeaTalk App ID |\n| `appSecret` | string | — | SeaTalk App Secret |\n| `signingSecret` | string | — | SeaTalk Signing Secret (webhook/relay modes only) |\n| `webhookPort` | number | `8080` | HTTP port (webhook mode only) |\n| `webhookPath` | string | `\"/callback\"` | HTTP path (webhook mode only) |\n| `relayUrl` | string | — | WebSocket URL (relay mode only) |\n| `dmPolicy` | `\"open\"` \\| `\"allowlist\"` \\| `\"pairing\"` | `\"allowlist\"` | Who can DM the bot (`pairing`: approve via CLI) |\n| `allowFrom` | string[] | — | Allowed DM senders (employee codes or emails) |\n| `dmThreadSession` | boolean | `true` | Route each DM thread to its own agent session |\n| `groupPolicy` | `\"disabled\"` \\| `\"allowlist\"` \\| `\"open\"` | `\"disabled\"` | Group chat policy |\n| `groupAllowFrom` | string[] | — | Allowed group IDs (when `groupPolicy: \"allowlist\"`) |\n| `groupSenderAllowFrom` | string[] | — | Allowed senders within groups (employee codes or emails) |\n| `groupThreadSession` | boolean | `true` | Route each group thread to its own agent session |\n| `threadInheritParent` | boolean | `true` | Fork the parent transcript into new thread sessions on first reply |\n| `outboundCoalescing` | boolean | `true` | Merge consecutive reply payloads into a single message (4000-char chunking) |\n| `processingIndicator` | `\"typing\"` \\| `\"off\"` | `\"typing\"` | Show typing status while processing |\n| `mediaAllowHosts` | string[] | `[\"openapi.seatalk.io\"]` | Allowed hostnames for inbound media downloads (HTTPS only) |\n| `tools.groupInfo` | boolean | `true` | Enable `seatalk` tool `group_info` action |\n| `tools.groupHistory` | boolean | `true` | Enable `seatalk` tool `group_history` action |\n| `tools.groupList` | boolean | `true` | Enable `seatalk` tool `group_list` action |\n| `tools.threadHistory` | boolean | `true` | Enable `seatalk` tool `thread_history` action |\n| `tools.getMessage` | boolean | `true` | Enable `seatalk` tool `get_message` action |\n\n### Multi-account\n\nEach account has its own credentials and gateway mode. Top-level fields (e.g. `tools`, `dmPolicy`) serve as defaults that accounts inherit and can override.\n\n```json5\n{\n  channels: {\n    seatalk: {\n      dmPolicy: \"allowlist\",\n      tools: { groupHistory: false },\n      accounts: {\n        production: {\n          enabled: true,\n          appId: \"prod_app_id\",\n          appSecret: \"prod_app_secret\",\n          signingSecret: \"prod_signing_secret\",\n          mode: \"relay\",\n          relayUrl: \"wss://relay.example.com/ws\",\n          groupPolicy: \"open\",\n        },\n        staging: {\n          enabled: true,\n          appId: \"staging_app_id\",\n          appSecret: \"staging_app_secret\",\n          signingSecret: \"staging_signing_secret\",\n          mode: \"webhook\",\n          webhookPort: 3211,\n        },\n      },\n    },\n  },\n}\n```\n\n## Agent Tool\n\nThe plugin registers a `seatalk` agent tool using a `Type.Union` schema (each action defines its own required/optional parameters):\n\n| Action | Description | Required params | Optional params |\n|--------|-------------|-----------------|-----------------|\n| `group_history` | Fetch recent group messages (chronological order, quoted messages auto-resolved) | `group_id` | `page_size`, `cursor` |\n| `group_info` | Get group details (name, members) | `group_id` | — |\n| `group_list` | List groups the bot has joined | — | `page_size`, `cursor` |\n| `thread_history` | Fetch thread messages (chronological order, quoted messages auto-resolved) | `thread_id` | `group_id`, `employee_code`, `page_size`, `cursor` |\n| `get_message` | Get a single message by ID (resolves any message_id or quoted_message_id) | `message_id` | — |\n\n**Quoted messages:** `group_history` and `thread_history` auto-resolve `quoted_message_id` for each message, embedding the result as a `quoted_message` field. Use `get_message` for ad-hoc lookups.\n\nEach action can be individually disabled via the `tools` config.\n\n## Development\n\nInstall dependencies:\n\n```bash\npnpm install\n```\n\nBuild `dist/`:\n\n```bash\npnpm build\n```\n\nFormat code:\n\n```bash\npnpm format\n```\n\nLint:\n\n```bash\npnpm lint\n```\n\nCheck formatting and lint:\n\n```bash\npnpm check\n```\n\n## Publishing\n\nFor npm releases, `prepublishOnly` rebuilds `dist/` automatically:\n\n```bash\nnpm version patch\nnpm publish --access public\n```\n\nFor beta builds, publish with the `beta` dist-tag:\n\n```bash\nnpm publish --tag beta\n```\n\nFor ClawHub releases, build first because `prepublishOnly` does not run:\n\n```bash\npnpm build\nclawhub package publish .\n```\n\nInspect tarball contents with `npm pack --dry-run`.\n","readmeFilename":"README.md"}