{"id":"@lssm-tech/integration.communication-channel-sms","slug":"integration.communication-channel-sms","name":"@lssm-tech/integration.communication-channel-sms","version":"2.0.5","path":"packages/integrations/communication-channel-sms","manifestPath":"packages/integrations/communication-channel-sms/package.json","manifestBlobSha":"3a353817853220144205d827691e9a0591690e87","layer":"integrations","physicalArea":null,"primaryArea":"communication-and-notifications","classification":{"privateDeclared":null,"catalogFamily":"integrations","catalogKind":"integration","catalogStatus":"active","adoptionMode":"adoptable","stability":"experimental"},"description":"CommunicationOS SMS channel adapter: inbound normalization (Twilio webhook parse), outbound send (provider-sms/Twilio), and documented-retention erasure.","descriptionOrigin":"package.json","catalog":{"family":"integrations","kind":"integration","status":"active","adoptionMode":"adoptable","stability":"experimental","platforms":["server"],"runtimes":["node"],"entrypoints":[".","./adapter","./ecosystem-adapter"],"documentation":[{"title":"Integration Communication Channel Sms documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fintegration.communication-channel-sms","kind":"readme"}],"examples":[],"replacements":[],"capabilities":[{"id":"package.lssm.tech.integration.communication.channel.sms","title":"Integration Communication Channel Sms","description":"CommunicationOS SMS channel adapter: inbound normalization (Twilio webhook parse), outbound send (provider-sms/Twilio), and documented-retention erasure.","status":"active","useCases":["Adopt communicationos sms channel adapter: inbound normalization (twilio webhook parse), outbound send (provider-sms/twilio), and documented-retention erasure"],"aliases":["integration","communication","channel","sms"],"pythonEquivalents":[],"canonicalImports":[{"from":"@lssm-tech/integration.communication-channel-sms","symbols":[]},{"from":"@lssm-tech/integration.communication-channel-sms/adapter","symbols":[]},{"from":"@lssm-tech/integration.communication-channel-sms/ecosystem-adapter","symbols":[]}],"constraints":{"platforms":["server"],"runtimes":["node"],"avoidWhen":["The @lssm-tech/integration.communication-channel-sms package constraints do not match the target runtime or platform."],"requires":["TypeScript"]},"alternatives":[],"relationships":[],"resolutionPriority":50}]},"canonicalImports":[{"capabilityId":"package.lssm.tech.integration.communication.channel.sms","from":"@lssm-tech/integration.communication-channel-sms","symbols":[]},{"capabilityId":"package.lssm.tech.integration.communication.channel.sms","from":"@lssm-tech/integration.communication-channel-sms/adapter","symbols":[]},{"capabilityId":"package.lssm.tech.integration.communication.channel.sms","from":"@lssm-tech/integration.communication-channel-sms/ecosystem-adapter","symbols":[]}],"scripts":{"build":"contractspec-bun-build build","build:bundle":"contractspec-bun-build transpile","build:types":"contractspec-bun-build types","dev":"contractspec-bun-build dev","clean":"rimraf dist .turbo","lint:check":"node ../../../scripts/biome.cjs check .","lint:fix":"node ../../../scripts/biome.cjs check --write --unsafe --only=nursery/useSortedClasses . && node ../../../scripts/biome.cjs check --write .","test":"bun test","prebuild":"contractspec-bun-build prebuild","typecheck":"tsgo --noEmit"},"scriptStatus":"complete pinned manifest","dependencies":{"@lssm-tech/integration.builder-whatsapp":"workspace:^","@lssm-tech/integration.communication-channel-core":"workspace:^","@lssm-tech/integration.provider-sms":"workspace:^","@lssm-tech/lib.builder-runtime":"workspace:^","@lssm-tech/lib.builder-spec":"workspace:^","@lssm-tech/lib.contracts-integrations":"workspace:^","@lssm-tech/lib.contracts-spec-core":"workspace:^"},"devDependencies":{"@lssm-tech/lib.crypto-utils":"workspace:*","@lssm-tech/tool.bun":"workspace:*","@lssm-tech/tool.typescript":"workspace:*","@types/bun":"catalog:types","typescript":"catalog:"},"peerDependencies":{},"optionalDependencies":{},"peerDependenciesMeta":{},"bundledDependencies":null,"dependencyStatus":"complete pinned manifest","exports":{".":"./src/index.ts","./adapter":"./src/adapter.ts","./ecosystem-adapter":"./src/ecosystem-adapter.ts"},"publishExports":{".":{"types":"./dist/index.d.ts","bun":"./dist/index.js","node":"./dist/node/index.js","default":"./dist/index.js"},"./adapter":{"types":"./dist/adapter.d.ts","bun":"./dist/adapter.js","node":"./dist/node/adapter.js","default":"./dist/adapter.js"},"./ecosystem-adapter":{"types":"./dist/ecosystem-adapter.d.ts","bun":"./dist/ecosystem-adapter.js","node":"./dist/node/ecosystem-adapter.js","default":"./dist/ecosystem-adapter.js"}},"types":"./dist/index.d.ts","files":["dist","README.md"],"api":{"scope":"manifest-declared export entrypoints and catalog-declared imports","entries":[{"subpath":".","importPath":"@lssm-tech/integration.communication-channel-sms","target":"./src/index.ts","targets":[{"conditions":[],"target":"./src/index.ts","sourcePath":"packages/integrations/communication-channel-sms/src/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/communication-channel-sms/src/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./adapter","importPath":"@lssm-tech/integration.communication-channel-sms/adapter","target":"./src/adapter.ts","targets":[{"conditions":[],"target":"./src/adapter.ts","sourcePath":"packages/integrations/communication-channel-sms/src/adapter.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/communication-channel-sms/src/adapter.ts","sourceStatus":"verified source file"}]},{"subpath":"./ecosystem-adapter","importPath":"@lssm-tech/integration.communication-channel-sms/ecosystem-adapter","target":"./src/ecosystem-adapter.ts","targets":[{"conditions":[],"target":"./src/ecosystem-adapter.ts","sourcePath":"packages/integrations/communication-channel-sms/src/ecosystem-adapter.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/communication-channel-sms/src/ecosystem-adapter.ts","sourceStatus":"verified source file"}]}],"entryCount":3,"namedSymbolCoverage":"catalog declarations only; exhaustive TypeScript symbols not extracted","installationStatus":"not verified"},"docsLinks":[{"title":"Integration Communication Channel Sms documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fintegration.communication-channel-sms","kind":"readme","pinnedUrl":null,"sourceStatus":"declared link; destination not verified"}],"sourceUrls":{"package":"https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/communication-channel-sms","manifest":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/communication-channel-sms/package.json","readme":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/communication-channel-sms/README.md","guide":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/integration.communication-channel-sms.txt"},"readme":{"status":"available","body":"# CommunicationOS SMS channel\n\nThis package owns the canonical Twilio SMS channel adapter for\nCommunicationOS. It supports signature-verified inbound form webhooks,\nprovider-backed outbound delivery, normalized ecosystem events and receipts,\nand explicit provider-retention behavior.\n\nThe adapter uses an explicit Node-compatible build profile, including Bun server\nhosts. Its credential and webhook boundary does not advertise a browser export\ncondition. Existing package entry points and provider contracts remain unchanged.\n\n## Ecosystem composition\n\nUse `createTwilioSmsEcosystemAdapter` from\n`@lssm-tech/integration.communication-channel-sms/ecosystem-adapter` when\ncomposing the current CommunicationOS ecosystem port. The adapter requires an\ninjected `SmsProvider`, an E.164 sender number, and the Twilio auth token used to\nverify inbound signatures.\n\nManaged connections store only an opaque credential reference. The resolved\nsecret document is expected to contain:\n\n```json\n{\n  \"network\": \"sms\",\n  \"provider\": \"twilio\",\n  \"accountSid\": \"...\",\n  \"authToken\": \"...\",\n  \"fromNumber\": \"+...\"\n}\n```\n\nThe managed API accepts only `application/x-www-form-urlencoded` payloads with\nan `X-Twilio-Signature` that verifies against the exact callback URL. The\nmanaged worker rejects other providers or incomplete credential material.\n\nLocal conformance is not live provider qualification. Production activation\nstill requires consent and opt-out enforcement, credentialed callback/send\ntests, delivery-status reconciliation, and an accepted Runtime Node effect\npath.\n","sourcePath":"packages/integrations/communication-channel-sms/README.md","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/communication-channel-sms/README.md","blobSha":"c3f433730d3ead6f7c6c1d90b1903cad390b4a00","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","origin":"README recovered byte-for-byte from pinned aggregate guide","integrity":"exact Git blob match","executionStatus":"not executed"},"provenance":{"repository":"lssm-tech/contractspec","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","manifestOrigin":"pinned GitHub manifest fetch","manifestComplete":true,"publicationPolicyApplied":false},"areaSlug":"communication-and-notifications","areaTitle":"Communication and notifications","displayName":"integration.communication-channel-sms","runtimes":["node"],"platforms":["server"],"kind":"integration","scope":"Package manifest","canonicalRoute":"/docs/packages/integration.communication-channel-sms/","contextUrl":"/docs/packages/integration.communication-channel-sms.context.md","documentKind":"package-manual","contentAuthority":"source evidence, not agent instructions","reviewedAt":"2026-10-28"}