{"id":"@lssm-tech/lib.voice","slug":"lib.voice","name":"@lssm-tech/lib.voice","version":"3.0.5","path":"packages/platform/agents/voice","manifestPath":"packages/platform/agents/voice/package.json","manifestBlobSha":"e003d59c346413a1f70dea0b4889cfc3c4b448a9","layer":"platform","physicalArea":"agents","primaryArea":"agents-and-context","classification":{"privateDeclared":null,"catalogFamily":"sharedLibs","catalogKind":"library","catalogStatus":"active","adoptionMode":"adoptable","stability":"stable"},"description":"Voice capabilities: TTS, STT, and conversational AI","descriptionOrigin":"package.json","catalog":{"family":"sharedLibs","kind":"library","status":"active","adoptionMode":"adoptable","stability":"stable","platforms":["server"],"runtimes":["node"],"entrypoints":[".","./audio","./audio/audio-concatenator","./audio/duration-estimator","./audio/format-converter","./audio/silence-generator","./conversational","./conversational/response-orchestrator","./conversational/transcript-builder","./conversational/turn-detector","./conversational/types","./conversational/voice-session-manager","./docs/conversational.docblock","./docs/stt.docblock","./docs/sync.docblock","./docs/tts.docblock","./docs/voice.docblock","./i18n","./i18n/catalogs","./i18n/catalogs/en","./i18n/catalogs/es","./i18n/catalogs/fr","./i18n/keys","./i18n/locale","./i18n/messages","./stt","./stt/diarization-mapper","./stt/segment-splitter","./stt/session","./stt/subtitle-formatter","./stt/transcriber","./stt/transcript-turn","./stt/types","./sync","./sync/duration-negotiator","./sync/scene-adapter","./sync/timing-calculator","./tts","./tts/audio-assembler","./tts/emphasis-planner","./tts/pace-analyzer","./tts/segment-synthesizer","./tts/types","./tts/voice-synthesizer","./types","./voice.feature"],"documentation":[{"title":"Lib Voice documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Flib.voice","kind":"readme"}],"examples":[],"replacements":[],"capabilities":[{"id":"package.lssm.tech.lib.voice","title":"Lib Voice","description":"Voice capabilities: TTS, STT, and conversational AI","status":"active","useCases":["Adopt voice capabilities: tts, stt, and conversational ai"],"aliases":["contractspec","voice","tts","stt","conversational","ai","typescript","lib"],"pythonEquivalents":[],"canonicalImports":[{"from":"@lssm-tech/lib.voice","symbols":[]},{"from":"@lssm-tech/lib.voice/audio","symbols":[]},{"from":"@lssm-tech/lib.voice/audio/audio-concatenator","symbols":[]},{"from":"@lssm-tech/lib.voice/audio/duration-estimator","symbols":[]},{"from":"@lssm-tech/lib.voice/audio/format-converter","symbols":[]},{"from":"@lssm-tech/lib.voice/audio/silence-generator","symbols":[]},{"from":"@lssm-tech/lib.voice/conversational","symbols":[]},{"from":"@lssm-tech/lib.voice/conversational/response-orchestrator","symbols":[]},{"from":"@lssm-tech/lib.voice/conversational/transcript-builder","symbols":[]},{"from":"@lssm-tech/lib.voice/conversational/turn-detector","symbols":[]},{"from":"@lssm-tech/lib.voice/conversational/types","symbols":[]},{"from":"@lssm-tech/lib.voice/conversational/voice-session-manager","symbols":[]}],"constraints":{"platforms":["server"],"runtimes":["node"],"avoidWhen":["The @lssm-tech/lib.voice package constraints do not match the target runtime or platform."],"requires":["TypeScript"]},"alternatives":[],"relationships":[],"resolutionPriority":50}]},"canonicalImports":[{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/audio","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/audio/audio-concatenator","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/audio/duration-estimator","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/audio/format-converter","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/audio/silence-generator","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/conversational","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/conversational/response-orchestrator","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/conversational/transcript-builder","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/conversational/turn-detector","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/conversational/types","symbols":[]},{"capabilityId":"package.lssm.tech.lib.voice","from":"@lssm-tech/lib.voice/conversational/voice-session-manager","symbols":[]}],"scripts":{"publish:pkg":"bun publish --tolerate-republish --ignore-scripts --verbose","publish:pkg:canary":"bun publish:pkg --tag canary","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":"bun lint:fix","lint:fix":"node ../../../../scripts/biome.cjs check --write --unsafe --only=nursery/useSortedClasses . && node ../../../../scripts/biome.cjs check --write .","lint:check":"node ../../../../scripts/biome.cjs check .","test":"bun test --pass-with-no-tests","prebuild":"contractspec-bun-build prebuild","typecheck":"tsgo --noEmit"},"scriptStatus":"complete pinned manifest","dependencies":{"@lssm-tech/lib.ai-providers":"workspace:^","@lssm-tech/lib.contracts-integrations":"workspace:^","@lssm-tech/lib.contracts-spec-core":"workspace:^","@lssm-tech/lib.crypto-utils":"workspace:^","@lssm-tech/lib.translation-runtime":"workspace:^"},"devDependencies":{"@lssm-tech/tool.typescript":"workspace:*","@lssm-tech/tool.bun":"workspace:*","typescript":"catalog:"},"peerDependencies":{},"optionalDependencies":{},"peerDependenciesMeta":{},"bundledDependencies":null,"dependencyStatus":"complete pinned manifest","exports":{".":"./src/index.ts","./audio":"./src/audio/index.ts","./audio/audio-concatenator":"./src/audio/audio-concatenator.ts","./audio/duration-estimator":"./src/audio/duration-estimator.ts","./audio/format-converter":"./src/audio/format-converter.ts","./audio/silence-generator":"./src/audio/silence-generator.ts","./conversational":"./src/conversational/index.ts","./conversational/response-orchestrator":"./src/conversational/response-orchestrator.ts","./conversational/transcript-builder":"./src/conversational/transcript-builder.ts","./conversational/turn-detector":"./src/conversational/turn-detector.ts","./conversational/types":"./src/conversational/types.ts","./conversational/voice-session-manager":"./src/conversational/voice-session-manager.ts","./docs/conversational.docblock":"./src/docs/conversational.docblock.ts","./docs/stt.docblock":"./src/docs/stt.docblock.ts","./docs/sync.docblock":"./src/docs/sync.docblock.ts","./docs/tts.docblock":"./src/docs/tts.docblock.ts","./docs/voice.docblock":"./src/docs/voice.docblock.ts","./i18n":"./src/i18n/index.ts","./i18n/catalogs":"./src/i18n/catalogs/index.ts","./i18n/catalogs/en":"./src/i18n/catalogs/en.ts","./i18n/catalogs/es":"./src/i18n/catalogs/es.ts","./i18n/catalogs/fr":"./src/i18n/catalogs/fr.ts","./i18n/keys":"./src/i18n/keys.ts","./i18n/locale":"./src/i18n/locale.ts","./i18n/messages":"./src/i18n/messages.ts","./stt":"./src/stt/index.ts","./stt/diarization-mapper":"./src/stt/diarization-mapper.ts","./stt/segment-splitter":"./src/stt/segment-splitter.ts","./stt/session":"./src/stt/session.ts","./stt/subtitle-formatter":"./src/stt/subtitle-formatter.ts","./stt/transcriber":"./src/stt/transcriber.ts","./stt/transcript-turn":"./src/stt/transcript-turn.ts","./stt/types":"./src/stt/types.ts","./sync":"./src/sync/index.ts","./sync/duration-negotiator":"./src/sync/duration-negotiator.ts","./sync/scene-adapter":"./src/sync/scene-adapter.ts","./sync/timing-calculator":"./src/sync/timing-calculator.ts","./tts":"./src/tts/index.ts","./tts/audio-assembler":"./src/tts/audio-assembler.ts","./tts/emphasis-planner":"./src/tts/emphasis-planner.ts","./tts/pace-analyzer":"./src/tts/pace-analyzer.ts","./tts/segment-synthesizer":"./src/tts/segment-synthesizer.ts","./tts/types":"./src/tts/types.ts","./tts/voice-synthesizer":"./src/tts/voice-synthesizer.ts","./types":"./src/types.ts","./voice.feature":"./src/voice.feature.ts"},"publishExports":{".":{"types":"./dist/index.d.ts","browser":"./dist/browser/index.js","bun":"./dist/index.js","node":"./dist/node/index.js","default":"./dist/index.js"},"./audio":{"types":"./dist/audio/index.d.ts","browser":"./dist/browser/audio/index.js","bun":"./dist/audio/index.js","node":"./dist/node/audio/index.js","default":"./dist/audio/index.js"},"./audio/audio-concatenator":{"types":"./dist/audio/audio-concatenator.d.ts","browser":"./dist/browser/audio/audio-concatenator.js","bun":"./dist/audio/audio-concatenator.js","node":"./dist/node/audio/audio-concatenator.js","default":"./dist/audio/audio-concatenator.js"},"./audio/duration-estimator":{"types":"./dist/audio/duration-estimator.d.ts","browser":"./dist/browser/audio/duration-estimator.js","bun":"./dist/audio/duration-estimator.js","node":"./dist/node/audio/duration-estimator.js","default":"./dist/audio/duration-estimator.js"},"./audio/format-converter":{"types":"./dist/audio/format-converter.d.ts","browser":"./dist/browser/audio/format-converter.js","bun":"./dist/audio/format-converter.js","node":"./dist/node/audio/format-converter.js","default":"./dist/audio/format-converter.js"},"./audio/silence-generator":{"types":"./dist/audio/silence-generator.d.ts","browser":"./dist/browser/audio/silence-generator.js","bun":"./dist/audio/silence-generator.js","node":"./dist/node/audio/silence-generator.js","default":"./dist/audio/silence-generator.js"},"./conversational":{"types":"./dist/conversational/index.d.ts","browser":"./dist/browser/conversational/index.js","bun":"./dist/conversational/index.js","node":"./dist/node/conversational/index.js","default":"./dist/conversational/index.js"},"./conversational/response-orchestrator":{"types":"./dist/conversational/response-orchestrator.d.ts","browser":"./dist/browser/conversational/response-orchestrator.js","bun":"./dist/conversational/response-orchestrator.js","node":"./dist/node/conversational/response-orchestrator.js","default":"./dist/conversational/response-orchestrator.js"},"./conversational/transcript-builder":{"types":"./dist/conversational/transcript-builder.d.ts","browser":"./dist/browser/conversational/transcript-builder.js","bun":"./dist/conversational/transcript-builder.js","node":"./dist/node/conversational/transcript-builder.js","default":"./dist/conversational/transcript-builder.js"},"./conversational/turn-detector":{"types":"./dist/conversational/turn-detector.d.ts","browser":"./dist/browser/conversational/turn-detector.js","bun":"./dist/conversational/turn-detector.js","node":"./dist/node/conversational/turn-detector.js","default":"./dist/conversational/turn-detector.js"},"./conversational/types":{"types":"./dist/conversational/types.d.ts","browser":"./dist/browser/conversational/types.js","bun":"./dist/conversational/types.js","node":"./dist/node/conversational/types.js","default":"./dist/conversational/types.js"},"./conversational/voice-session-manager":{"types":"./dist/conversational/voice-session-manager.d.ts","browser":"./dist/browser/conversational/voice-session-manager.js","bun":"./dist/conversational/voice-session-manager.js","node":"./dist/node/conversational/voice-session-manager.js","default":"./dist/conversational/voice-session-manager.js"},"./docs/conversational.docblock":{"types":"./dist/docs/conversational.docblock.d.ts","browser":"./dist/browser/docs/conversational.docblock.js","bun":"./dist/docs/conversational.docblock.js","node":"./dist/node/docs/conversational.docblock.js","default":"./dist/docs/conversational.docblock.js"},"./docs/stt.docblock":{"types":"./dist/docs/stt.docblock.d.ts","browser":"./dist/browser/docs/stt.docblock.js","bun":"./dist/docs/stt.docblock.js","node":"./dist/node/docs/stt.docblock.js","default":"./dist/docs/stt.docblock.js"},"./docs/sync.docblock":{"types":"./dist/docs/sync.docblock.d.ts","browser":"./dist/browser/docs/sync.docblock.js","bun":"./dist/docs/sync.docblock.js","node":"./dist/node/docs/sync.docblock.js","default":"./dist/docs/sync.docblock.js"},"./docs/tts.docblock":{"types":"./dist/docs/tts.docblock.d.ts","browser":"./dist/browser/docs/tts.docblock.js","bun":"./dist/docs/tts.docblock.js","node":"./dist/node/docs/tts.docblock.js","default":"./dist/docs/tts.docblock.js"},"./docs/voice.docblock":{"types":"./dist/docs/voice.docblock.d.ts","browser":"./dist/browser/docs/voice.docblock.js","bun":"./dist/docs/voice.docblock.js","node":"./dist/node/docs/voice.docblock.js","default":"./dist/docs/voice.docblock.js"},"./i18n":{"types":"./dist/i18n/index.d.ts","browser":"./dist/browser/i18n/index.js","bun":"./dist/i18n/index.js","node":"./dist/node/i18n/index.js","default":"./dist/i18n/index.js"},"./i18n/catalogs":{"types":"./dist/i18n/catalogs/index.d.ts","browser":"./dist/browser/i18n/catalogs/index.js","bun":"./dist/i18n/catalogs/index.js","node":"./dist/node/i18n/catalogs/index.js","default":"./dist/i18n/catalogs/index.js"},"./i18n/catalogs/en":{"types":"./dist/i18n/catalogs/en.d.ts","browser":"./dist/browser/i18n/catalogs/en.js","bun":"./dist/i18n/catalogs/en.js","node":"./dist/node/i18n/catalogs/en.js","default":"./dist/i18n/catalogs/en.js"},"./i18n/catalogs/es":{"types":"./dist/i18n/catalogs/es.d.ts","browser":"./dist/browser/i18n/catalogs/es.js","bun":"./dist/i18n/catalogs/es.js","node":"./dist/node/i18n/catalogs/es.js","default":"./dist/i18n/catalogs/es.js"},"./i18n/catalogs/fr":{"types":"./dist/i18n/catalogs/fr.d.ts","browser":"./dist/browser/i18n/catalogs/fr.js","bun":"./dist/i18n/catalogs/fr.js","node":"./dist/node/i18n/catalogs/fr.js","default":"./dist/i18n/catalogs/fr.js"},"./i18n/keys":{"types":"./dist/i18n/keys.d.ts","browser":"./dist/browser/i18n/keys.js","bun":"./dist/i18n/keys.js","node":"./dist/node/i18n/keys.js","default":"./dist/i18n/keys.js"},"./i18n/locale":{"types":"./dist/i18n/locale.d.ts","browser":"./dist/browser/i18n/locale.js","bun":"./dist/i18n/locale.js","node":"./dist/node/i18n/locale.js","default":"./dist/i18n/locale.js"},"./i18n/messages":{"types":"./dist/i18n/messages.d.ts","browser":"./dist/browser/i18n/messages.js","bun":"./dist/i18n/messages.js","node":"./dist/node/i18n/messages.js","default":"./dist/i18n/messages.js"},"./stt":{"types":"./dist/stt/index.d.ts","browser":"./dist/browser/stt/index.js","bun":"./dist/stt/index.js","node":"./dist/node/stt/index.js","default":"./dist/stt/index.js"},"./stt/diarization-mapper":{"types":"./dist/stt/diarization-mapper.d.ts","browser":"./dist/browser/stt/diarization-mapper.js","bun":"./dist/stt/diarization-mapper.js","node":"./dist/node/stt/diarization-mapper.js","default":"./dist/stt/diarization-mapper.js"},"./stt/segment-splitter":{"types":"./dist/stt/segment-splitter.d.ts","browser":"./dist/browser/stt/segment-splitter.js","bun":"./dist/stt/segment-splitter.js","node":"./dist/node/stt/segment-splitter.js","default":"./dist/stt/segment-splitter.js"},"./stt/session":{"types":"./dist/stt/session.d.ts","browser":"./dist/browser/stt/session.js","bun":"./dist/stt/session.js","node":"./dist/node/stt/session.js","default":"./dist/stt/session.js"},"./stt/subtitle-formatter":{"types":"./dist/stt/subtitle-formatter.d.ts","browser":"./dist/browser/stt/subtitle-formatter.js","bun":"./dist/stt/subtitle-formatter.js","node":"./dist/node/stt/subtitle-formatter.js","default":"./dist/stt/subtitle-formatter.js"},"./stt/transcriber":{"types":"./dist/stt/transcriber.d.ts","browser":"./dist/browser/stt/transcriber.js","bun":"./dist/stt/transcriber.js","node":"./dist/node/stt/transcriber.js","default":"./dist/stt/transcriber.js"},"./stt/transcript-turn":{"types":"./dist/stt/transcript-turn.d.ts","browser":"./dist/browser/stt/transcript-turn.js","bun":"./dist/stt/transcript-turn.js","node":"./dist/node/stt/transcript-turn.js","default":"./dist/stt/transcript-turn.js"},"./stt/types":{"types":"./dist/stt/types.d.ts","browser":"./dist/browser/stt/types.js","bun":"./dist/stt/types.js","node":"./dist/node/stt/types.js","default":"./dist/stt/types.js"},"./sync":{"types":"./dist/sync/index.d.ts","browser":"./dist/browser/sync/index.js","bun":"./dist/sync/index.js","node":"./dist/node/sync/index.js","default":"./dist/sync/index.js"},"./sync/duration-negotiator":{"types":"./dist/sync/duration-negotiator.d.ts","browser":"./dist/browser/sync/duration-negotiator.js","bun":"./dist/sync/duration-negotiator.js","node":"./dist/node/sync/duration-negotiator.js","default":"./dist/sync/duration-negotiator.js"},"./sync/scene-adapter":{"types":"./dist/sync/scene-adapter.d.ts","browser":"./dist/browser/sync/scene-adapter.js","bun":"./dist/sync/scene-adapter.js","node":"./dist/node/sync/scene-adapter.js","default":"./dist/sync/scene-adapter.js"},"./sync/timing-calculator":{"types":"./dist/sync/timing-calculator.d.ts","browser":"./dist/browser/sync/timing-calculator.js","bun":"./dist/sync/timing-calculator.js","node":"./dist/node/sync/timing-calculator.js","default":"./dist/sync/timing-calculator.js"},"./tts":{"types":"./dist/tts/index.d.ts","browser":"./dist/browser/tts/index.js","bun":"./dist/tts/index.js","node":"./dist/node/tts/index.js","default":"./dist/tts/index.js"},"./tts/audio-assembler":{"types":"./dist/tts/audio-assembler.d.ts","browser":"./dist/browser/tts/audio-assembler.js","bun":"./dist/tts/audio-assembler.js","node":"./dist/node/tts/audio-assembler.js","default":"./dist/tts/audio-assembler.js"},"./tts/emphasis-planner":{"types":"./dist/tts/emphasis-planner.d.ts","browser":"./dist/browser/tts/emphasis-planner.js","bun":"./dist/tts/emphasis-planner.js","node":"./dist/node/tts/emphasis-planner.js","default":"./dist/tts/emphasis-planner.js"},"./tts/pace-analyzer":{"types":"./dist/tts/pace-analyzer.d.ts","browser":"./dist/browser/tts/pace-analyzer.js","bun":"./dist/tts/pace-analyzer.js","node":"./dist/node/tts/pace-analyzer.js","default":"./dist/tts/pace-analyzer.js"},"./tts/segment-synthesizer":{"types":"./dist/tts/segment-synthesizer.d.ts","browser":"./dist/browser/tts/segment-synthesizer.js","bun":"./dist/tts/segment-synthesizer.js","node":"./dist/node/tts/segment-synthesizer.js","default":"./dist/tts/segment-synthesizer.js"},"./tts/types":{"types":"./dist/tts/types.d.ts","browser":"./dist/browser/tts/types.js","bun":"./dist/tts/types.js","node":"./dist/node/tts/types.js","default":"./dist/tts/types.js"},"./tts/voice-synthesizer":{"types":"./dist/tts/voice-synthesizer.d.ts","browser":"./dist/browser/tts/voice-synthesizer.js","bun":"./dist/tts/voice-synthesizer.js","node":"./dist/node/tts/voice-synthesizer.js","default":"./dist/tts/voice-synthesizer.js"},"./types":{"types":"./dist/types.d.ts","browser":"./dist/browser/types.js","bun":"./dist/types.js","node":"./dist/node/types.js","default":"./dist/types.js"},"./voice.feature":{"types":"./dist/voice.feature.d.ts","browser":"./dist/browser/voice.feature.js","bun":"./dist/voice.feature.js","node":"./dist/node/voice.feature.js","default":"./dist/voice.feature.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/lib.voice","target":"./src/index.ts","targets":[{"conditions":[],"target":"./src/index.ts","sourcePath":"packages/platform/agents/voice/src/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./audio","importPath":"@lssm-tech/lib.voice/audio","target":"./src/audio/index.ts","targets":[{"conditions":[],"target":"./src/audio/index.ts","sourcePath":"packages/platform/agents/voice/src/audio/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/audio/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./audio/audio-concatenator","importPath":"@lssm-tech/lib.voice/audio/audio-concatenator","target":"./src/audio/audio-concatenator.ts","targets":[{"conditions":[],"target":"./src/audio/audio-concatenator.ts","sourcePath":"packages/platform/agents/voice/src/audio/audio-concatenator.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/audio/audio-concatenator.ts","sourceStatus":"verified source file"}]},{"subpath":"./audio/duration-estimator","importPath":"@lssm-tech/lib.voice/audio/duration-estimator","target":"./src/audio/duration-estimator.ts","targets":[{"conditions":[],"target":"./src/audio/duration-estimator.ts","sourcePath":"packages/platform/agents/voice/src/audio/duration-estimator.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/audio/duration-estimator.ts","sourceStatus":"verified source file"}]},{"subpath":"./audio/format-converter","importPath":"@lssm-tech/lib.voice/audio/format-converter","target":"./src/audio/format-converter.ts","targets":[{"conditions":[],"target":"./src/audio/format-converter.ts","sourcePath":"packages/platform/agents/voice/src/audio/format-converter.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/audio/format-converter.ts","sourceStatus":"verified source file"}]},{"subpath":"./audio/silence-generator","importPath":"@lssm-tech/lib.voice/audio/silence-generator","target":"./src/audio/silence-generator.ts","targets":[{"conditions":[],"target":"./src/audio/silence-generator.ts","sourcePath":"packages/platform/agents/voice/src/audio/silence-generator.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/audio/silence-generator.ts","sourceStatus":"verified source file"}]},{"subpath":"./conversational","importPath":"@lssm-tech/lib.voice/conversational","target":"./src/conversational/index.ts","targets":[{"conditions":[],"target":"./src/conversational/index.ts","sourcePath":"packages/platform/agents/voice/src/conversational/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/conversational/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./conversational/response-orchestrator","importPath":"@lssm-tech/lib.voice/conversational/response-orchestrator","target":"./src/conversational/response-orchestrator.ts","targets":[{"conditions":[],"target":"./src/conversational/response-orchestrator.ts","sourcePath":"packages/platform/agents/voice/src/conversational/response-orchestrator.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/conversational/response-orchestrator.ts","sourceStatus":"verified source file"}]},{"subpath":"./conversational/transcript-builder","importPath":"@lssm-tech/lib.voice/conversational/transcript-builder","target":"./src/conversational/transcript-builder.ts","targets":[{"conditions":[],"target":"./src/conversational/transcript-builder.ts","sourcePath":"packages/platform/agents/voice/src/conversational/transcript-builder.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/conversational/transcript-builder.ts","sourceStatus":"verified source file"}]},{"subpath":"./conversational/turn-detector","importPath":"@lssm-tech/lib.voice/conversational/turn-detector","target":"./src/conversational/turn-detector.ts","targets":[{"conditions":[],"target":"./src/conversational/turn-detector.ts","sourcePath":"packages/platform/agents/voice/src/conversational/turn-detector.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/conversational/turn-detector.ts","sourceStatus":"verified source file"}]},{"subpath":"./conversational/types","importPath":"@lssm-tech/lib.voice/conversational/types","target":"./src/conversational/types.ts","targets":[{"conditions":[],"target":"./src/conversational/types.ts","sourcePath":"packages/platform/agents/voice/src/conversational/types.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/conversational/types.ts","sourceStatus":"verified source file"}]},{"subpath":"./conversational/voice-session-manager","importPath":"@lssm-tech/lib.voice/conversational/voice-session-manager","target":"./src/conversational/voice-session-manager.ts","targets":[{"conditions":[],"target":"./src/conversational/voice-session-manager.ts","sourcePath":"packages/platform/agents/voice/src/conversational/voice-session-manager.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/conversational/voice-session-manager.ts","sourceStatus":"verified source file"}]},{"subpath":"./docs/conversational.docblock","importPath":"@lssm-tech/lib.voice/docs/conversational.docblock","target":"./src/docs/conversational.docblock.ts","targets":[{"conditions":[],"target":"./src/docs/conversational.docblock.ts","sourcePath":"packages/platform/agents/voice/src/docs/conversational.docblock.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/docs/conversational.docblock.ts","sourceStatus":"verified source file"}]},{"subpath":"./docs/stt.docblock","importPath":"@lssm-tech/lib.voice/docs/stt.docblock","target":"./src/docs/stt.docblock.ts","targets":[{"conditions":[],"target":"./src/docs/stt.docblock.ts","sourcePath":"packages/platform/agents/voice/src/docs/stt.docblock.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/docs/stt.docblock.ts","sourceStatus":"verified source file"}]},{"subpath":"./docs/sync.docblock","importPath":"@lssm-tech/lib.voice/docs/sync.docblock","target":"./src/docs/sync.docblock.ts","targets":[{"conditions":[],"target":"./src/docs/sync.docblock.ts","sourcePath":"packages/platform/agents/voice/src/docs/sync.docblock.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/docs/sync.docblock.ts","sourceStatus":"verified source file"}]},{"subpath":"./docs/tts.docblock","importPath":"@lssm-tech/lib.voice/docs/tts.docblock","target":"./src/docs/tts.docblock.ts","targets":[{"conditions":[],"target":"./src/docs/tts.docblock.ts","sourcePath":"packages/platform/agents/voice/src/docs/tts.docblock.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/docs/tts.docblock.ts","sourceStatus":"verified source file"}]},{"subpath":"./docs/voice.docblock","importPath":"@lssm-tech/lib.voice/docs/voice.docblock","target":"./src/docs/voice.docblock.ts","targets":[{"conditions":[],"target":"./src/docs/voice.docblock.ts","sourcePath":"packages/platform/agents/voice/src/docs/voice.docblock.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/docs/voice.docblock.ts","sourceStatus":"verified source file"}]},{"subpath":"./i18n","importPath":"@lssm-tech/lib.voice/i18n","target":"./src/i18n/index.ts","targets":[{"conditions":[],"target":"./src/i18n/index.ts","sourcePath":"packages/platform/agents/voice/src/i18n/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/i18n/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./i18n/catalogs","importPath":"@lssm-tech/lib.voice/i18n/catalogs","target":"./src/i18n/catalogs/index.ts","targets":[{"conditions":[],"target":"./src/i18n/catalogs/index.ts","sourcePath":"packages/platform/agents/voice/src/i18n/catalogs/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/i18n/catalogs/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./i18n/catalogs/en","importPath":"@lssm-tech/lib.voice/i18n/catalogs/en","target":"./src/i18n/catalogs/en.ts","targets":[{"conditions":[],"target":"./src/i18n/catalogs/en.ts","sourcePath":"packages/platform/agents/voice/src/i18n/catalogs/en.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/i18n/catalogs/en.ts","sourceStatus":"verified source file"}]},{"subpath":"./i18n/catalogs/es","importPath":"@lssm-tech/lib.voice/i18n/catalogs/es","target":"./src/i18n/catalogs/es.ts","targets":[{"conditions":[],"target":"./src/i18n/catalogs/es.ts","sourcePath":"packages/platform/agents/voice/src/i18n/catalogs/es.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/i18n/catalogs/es.ts","sourceStatus":"verified source file"}]},{"subpath":"./i18n/catalogs/fr","importPath":"@lssm-tech/lib.voice/i18n/catalogs/fr","target":"./src/i18n/catalogs/fr.ts","targets":[{"conditions":[],"target":"./src/i18n/catalogs/fr.ts","sourcePath":"packages/platform/agents/voice/src/i18n/catalogs/fr.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/i18n/catalogs/fr.ts","sourceStatus":"verified source file"}]},{"subpath":"./i18n/keys","importPath":"@lssm-tech/lib.voice/i18n/keys","target":"./src/i18n/keys.ts","targets":[{"conditions":[],"target":"./src/i18n/keys.ts","sourcePath":"packages/platform/agents/voice/src/i18n/keys.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/i18n/keys.ts","sourceStatus":"verified source file"}]},{"subpath":"./i18n/locale","importPath":"@lssm-tech/lib.voice/i18n/locale","target":"./src/i18n/locale.ts","targets":[{"conditions":[],"target":"./src/i18n/locale.ts","sourcePath":"packages/platform/agents/voice/src/i18n/locale.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/i18n/locale.ts","sourceStatus":"verified source file"}]},{"subpath":"./i18n/messages","importPath":"@lssm-tech/lib.voice/i18n/messages","target":"./src/i18n/messages.ts","targets":[{"conditions":[],"target":"./src/i18n/messages.ts","sourcePath":"packages/platform/agents/voice/src/i18n/messages.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/i18n/messages.ts","sourceStatus":"verified source file"}]},{"subpath":"./stt","importPath":"@lssm-tech/lib.voice/stt","target":"./src/stt/index.ts","targets":[{"conditions":[],"target":"./src/stt/index.ts","sourcePath":"packages/platform/agents/voice/src/stt/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/stt/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./stt/diarization-mapper","importPath":"@lssm-tech/lib.voice/stt/diarization-mapper","target":"./src/stt/diarization-mapper.ts","targets":[{"conditions":[],"target":"./src/stt/diarization-mapper.ts","sourcePath":"packages/platform/agents/voice/src/stt/diarization-mapper.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/stt/diarization-mapper.ts","sourceStatus":"verified source file"}]},{"subpath":"./stt/segment-splitter","importPath":"@lssm-tech/lib.voice/stt/segment-splitter","target":"./src/stt/segment-splitter.ts","targets":[{"conditions":[],"target":"./src/stt/segment-splitter.ts","sourcePath":"packages/platform/agents/voice/src/stt/segment-splitter.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/stt/segment-splitter.ts","sourceStatus":"verified source file"}]},{"subpath":"./stt/session","importPath":"@lssm-tech/lib.voice/stt/session","target":"./src/stt/session.ts","targets":[{"conditions":[],"target":"./src/stt/session.ts","sourcePath":"packages/platform/agents/voice/src/stt/session.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/stt/session.ts","sourceStatus":"verified source file"}]},{"subpath":"./stt/subtitle-formatter","importPath":"@lssm-tech/lib.voice/stt/subtitle-formatter","target":"./src/stt/subtitle-formatter.ts","targets":[{"conditions":[],"target":"./src/stt/subtitle-formatter.ts","sourcePath":"packages/platform/agents/voice/src/stt/subtitle-formatter.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/stt/subtitle-formatter.ts","sourceStatus":"verified source file"}]},{"subpath":"./stt/transcriber","importPath":"@lssm-tech/lib.voice/stt/transcriber","target":"./src/stt/transcriber.ts","targets":[{"conditions":[],"target":"./src/stt/transcriber.ts","sourcePath":"packages/platform/agents/voice/src/stt/transcriber.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/stt/transcriber.ts","sourceStatus":"verified source file"}]},{"subpath":"./stt/transcript-turn","importPath":"@lssm-tech/lib.voice/stt/transcript-turn","target":"./src/stt/transcript-turn.ts","targets":[{"conditions":[],"target":"./src/stt/transcript-turn.ts","sourcePath":"packages/platform/agents/voice/src/stt/transcript-turn.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/stt/transcript-turn.ts","sourceStatus":"verified source file"}]},{"subpath":"./stt/types","importPath":"@lssm-tech/lib.voice/stt/types","target":"./src/stt/types.ts","targets":[{"conditions":[],"target":"./src/stt/types.ts","sourcePath":"packages/platform/agents/voice/src/stt/types.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/stt/types.ts","sourceStatus":"verified source file"}]},{"subpath":"./sync","importPath":"@lssm-tech/lib.voice/sync","target":"./src/sync/index.ts","targets":[{"conditions":[],"target":"./src/sync/index.ts","sourcePath":"packages/platform/agents/voice/src/sync/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/sync/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./sync/duration-negotiator","importPath":"@lssm-tech/lib.voice/sync/duration-negotiator","target":"./src/sync/duration-negotiator.ts","targets":[{"conditions":[],"target":"./src/sync/duration-negotiator.ts","sourcePath":"packages/platform/agents/voice/src/sync/duration-negotiator.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/sync/duration-negotiator.ts","sourceStatus":"verified source file"}]},{"subpath":"./sync/scene-adapter","importPath":"@lssm-tech/lib.voice/sync/scene-adapter","target":"./src/sync/scene-adapter.ts","targets":[{"conditions":[],"target":"./src/sync/scene-adapter.ts","sourcePath":"packages/platform/agents/voice/src/sync/scene-adapter.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/sync/scene-adapter.ts","sourceStatus":"verified source file"}]},{"subpath":"./sync/timing-calculator","importPath":"@lssm-tech/lib.voice/sync/timing-calculator","target":"./src/sync/timing-calculator.ts","targets":[{"conditions":[],"target":"./src/sync/timing-calculator.ts","sourcePath":"packages/platform/agents/voice/src/sync/timing-calculator.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/sync/timing-calculator.ts","sourceStatus":"verified source file"}]},{"subpath":"./tts","importPath":"@lssm-tech/lib.voice/tts","target":"./src/tts/index.ts","targets":[{"conditions":[],"target":"./src/tts/index.ts","sourcePath":"packages/platform/agents/voice/src/tts/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/tts/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./tts/audio-assembler","importPath":"@lssm-tech/lib.voice/tts/audio-assembler","target":"./src/tts/audio-assembler.ts","targets":[{"conditions":[],"target":"./src/tts/audio-assembler.ts","sourcePath":"packages/platform/agents/voice/src/tts/audio-assembler.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/tts/audio-assembler.ts","sourceStatus":"verified source file"}]},{"subpath":"./tts/emphasis-planner","importPath":"@lssm-tech/lib.voice/tts/emphasis-planner","target":"./src/tts/emphasis-planner.ts","targets":[{"conditions":[],"target":"./src/tts/emphasis-planner.ts","sourcePath":"packages/platform/agents/voice/src/tts/emphasis-planner.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/tts/emphasis-planner.ts","sourceStatus":"verified source file"}]},{"subpath":"./tts/pace-analyzer","importPath":"@lssm-tech/lib.voice/tts/pace-analyzer","target":"./src/tts/pace-analyzer.ts","targets":[{"conditions":[],"target":"./src/tts/pace-analyzer.ts","sourcePath":"packages/platform/agents/voice/src/tts/pace-analyzer.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/tts/pace-analyzer.ts","sourceStatus":"verified source file"}]},{"subpath":"./tts/segment-synthesizer","importPath":"@lssm-tech/lib.voice/tts/segment-synthesizer","target":"./src/tts/segment-synthesizer.ts","targets":[{"conditions":[],"target":"./src/tts/segment-synthesizer.ts","sourcePath":"packages/platform/agents/voice/src/tts/segment-synthesizer.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/tts/segment-synthesizer.ts","sourceStatus":"verified source file"}]},{"subpath":"./tts/types","importPath":"@lssm-tech/lib.voice/tts/types","target":"./src/tts/types.ts","targets":[{"conditions":[],"target":"./src/tts/types.ts","sourcePath":"packages/platform/agents/voice/src/tts/types.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/tts/types.ts","sourceStatus":"verified source file"}]},{"subpath":"./tts/voice-synthesizer","importPath":"@lssm-tech/lib.voice/tts/voice-synthesizer","target":"./src/tts/voice-synthesizer.ts","targets":[{"conditions":[],"target":"./src/tts/voice-synthesizer.ts","sourcePath":"packages/platform/agents/voice/src/tts/voice-synthesizer.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/tts/voice-synthesizer.ts","sourceStatus":"verified source file"}]},{"subpath":"./types","importPath":"@lssm-tech/lib.voice/types","target":"./src/types.ts","targets":[{"conditions":[],"target":"./src/types.ts","sourcePath":"packages/platform/agents/voice/src/types.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/types.ts","sourceStatus":"verified source file"}]},{"subpath":"./voice.feature","importPath":"@lssm-tech/lib.voice/voice.feature","target":"./src/voice.feature.ts","targets":[{"conditions":[],"target":"./src/voice.feature.ts","sourcePath":"packages/platform/agents/voice/src/voice.feature.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/src/voice.feature.ts","sourceStatus":"verified source file"}]}],"entryCount":46,"namedSymbolCoverage":"catalog declarations only; exhaustive TypeScript symbols not extracted","installationStatus":"not verified"},"docsLinks":[{"title":"Lib Voice documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Flib.voice","kind":"readme","pinnedUrl":null,"sourceStatus":"declared link; destination not verified"}],"sourceUrls":{"package":"https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice","manifest":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/package.json","readme":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/README.md","guide":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/lib.voice.txt"},"readme":{"status":"available","body":"# @lssm-tech/lib.voice\n\nWebsite: https://contractspec.io\n\n**Voice capabilities: TTS, STT, and conversational AI.**\n\n## What It Provides\n\n- **Layer**: lib.\n- **Consumers**: video-gen, bundles.\n- `src/docs/` contains docblocks and documentation-facing exports.\n- Related ContractSpec packages include `@lssm-tech/lib.ai-providers`, `@lssm-tech/lib.contracts-integrations`, `@lssm-tech/lib.contracts-spec`, `@lssm-tech/tool.bun`, `@lssm-tech/tool.typescript`.\n- `src/docs/` contains docblocks and documentation-facing exports.\n\n## Installation\n\n`npm install @lssm-tech/lib.voice`\n\nor\n\n`bun add @lssm-tech/lib.voice`\n\n## Usage\n\nImport the root entrypoint from `@lssm-tech/lib.voice`, or choose a documented subpath when you only need one part of the package surface.\n\n## Architecture\n\n- `src/audio` is part of the package's public or composition surface.\n- `src/conversational` is part of the package's public or composition surface.\n- `src/docs/` contains docblocks and documentation-facing exports.\n- `src/i18n` is part of the package's public or composition surface.\n- `src/index.ts` is the root public barrel and package entrypoint.\n- `src/stt` is part of the package's public or composition surface.\n- `src/sync` is part of the package's public or composition surface.\n- `src/types.ts` is shared public type definitions.\n\n## Public Entry Points\n\n- Export `.` resolves through `./src/index.ts`.\n- Export `./audio` resolves through `./src/audio/index.ts`.\n- Export `./audio/audio-concatenator` resolves through `./src/audio/audio-concatenator.ts`.\n- Export `./audio/duration-estimator` resolves through `./src/audio/duration-estimator.ts`.\n- Export `./audio/format-converter` resolves through `./src/audio/format-converter.ts`.\n- Export `./audio/silence-generator` resolves through `./src/audio/silence-generator.ts`.\n- Export `./conversational` resolves through `./src/conversational/index.ts`.\n- Export `./conversational/response-orchestrator` resolves through `./src/conversational/response-orchestrator.ts`.\n- Export `./conversational/transcript-builder` resolves through `./src/conversational/transcript-builder.ts`.\n- Export `./conversational/turn-detector` resolves through `./src/conversational/turn-detector.ts`.\n- The package publishes 43 total export subpaths; keep docs aligned with `package.json`.\n\n## Local Commands\n\n- `bun run dev` — contractspec-bun-build dev\n- `bun run build` — contractspec-bun-build build\n- `bun run test` — bun test --pass-with-no-tests\n- `bun run lint` — bun lint:fix\n- `bun run lint:check` — biome check .\n- `bun run lint:fix` — biome check --write --unsafe --only=nursery/useSortedClasses . && biome check --write .\n- `bun run typecheck` — tsgo --noEmit\n- `bun run publish:pkg` — bun publish --tolerate-republish --ignore-scripts --verbose\n- `bun run publish:pkg:canary` — bun publish:pkg --tag canary\n- `bun run clean` — rimraf dist .turbo\n- `bun run build:bundle` — contractspec-bun-build transpile\n- `bun run build:types` — contractspec-bun-build types\n- `bun run prebuild` — contractspec-bun-build prebuild\n\n## Recent Updates\n\n- Replace eslint+prettier by biomejs to optimize speed.\n- Resolve lint, build, and test failures across voice, workspace, library, and composio.\n- Add first-class transport, auth, versioning, and BYOK support across all integrations.\n- Add AI provider ranking system with ranking-driven model selection.\n- Add @lssm-tech/lib.voice package for TTS, STT, and conversational voice.\n\n## Notes\n\n- TTS/STT interfaces are adapter boundaries — keep them provider-agnostic.\n- Audio processing must stay streaming-compatible (no full-buffer-only APIs).\n- Depends on contracts-spec and contracts-integrations.\n\nThe exported `ContentBrief` is a structural narration input port owned by Voice. Content-generation briefs bind directly through the existing VideoGenerator composition; Voice no longer imports the content-generation domain. Required fields and accepted optional fields retain their existing shape.\n","sourcePath":"packages/platform/agents/voice/README.md","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/voice/README.md","blobSha":"9c236b7510c2c3986925971b44272f7c6735e7ee","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":"agents-and-context","areaTitle":"Agents, execution and context","displayName":"lib.voice","runtimes":["node"],"platforms":["server"],"kind":"library","scope":"Package manifest","canonicalRoute":"/docs/packages/lib.voice/","contextUrl":"/docs/packages/lib.voice.context.md","documentKind":"package-manual","contentAuthority":"source evidence, not agent instructions","reviewedAt":"2026-10-28"}