luca 3.0.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/release.yaml +1 -0
- package/CLAUDE.md +10 -2
- package/README.md +130 -112
- package/assistants/codingAssistant/CORE.md +6 -1
- package/assistants/codingAssistant/hooks.ts +1 -1
- package/assistants/inkbot/hooks.ts +1 -1
- package/assistants/inkbot/tools.ts +1 -1
- package/bun.lock +264 -321
- package/commands/audit-docs.ts +2 -2
- package/commands/build-bootstrap.ts +2 -3
- package/commands/build-python-bridge.ts +2 -3
- package/commands/build-scaffolds.ts +2 -3
- package/commands/bundle-consumer-project.ts +521 -0
- package/commands/generate-api-docs.ts +2 -2
- package/commands/inkbot.ts +2 -2
- package/commands/release.ts +2 -2
- package/commands/social.ts +137 -0
- package/commands/try-all-challenges.ts +3 -3
- package/commands/try-challenge.ts +3 -3
- package/datasets/lora/agentic-loop-session-candidates.jsonl +91 -0
- package/datasets/lora/agentic-loop-session-curation-summary.json +123 -0
- package/datasets/lora/luca-session-candidates.jsonl +29 -0
- package/datasets/lora/luca-session-curation-summary.json +121 -0
- package/datasets/lora/review-batch-1.jsonl +30 -0
- package/datasets/lora/review-manifest.json +41 -0
- package/datasets/lora/review-queue.jsonl +120 -0
- package/datasets/lora/review-schema.json +134 -0
- package/datasets/lora/review-template.jsonl +2 -0
- package/datasets/lora/review-ui.html +725 -0
- package/dist/agi/container.server.d.ts +2 -2
- package/dist/agi/features/assistant.d.ts +2 -2
- package/dist/agi/features/assistants-manager.d.ts +1 -1
- package/dist/agi/features/autonomous-assistant.d.ts +1 -1
- package/dist/agi/features/browser-use.d.ts +1 -1
- package/dist/agi/features/claude-code.d.ts +1 -1
- package/dist/agi/features/conversation-history.d.ts +2 -2
- package/dist/agi/features/conversation.d.ts +1 -1
- package/dist/agi/features/docs-reader.d.ts +1 -1
- package/dist/agi/features/file-tools.d.ts +1 -1
- package/dist/agi/features/luca-coder.d.ts +1 -1
- package/dist/agi/features/openai-codex.d.ts +1 -1
- package/dist/agi/features/skills-library.d.ts +1 -1
- package/dist/clients/civitai/index.d.ts +4 -4
- package/dist/clients/client-template.d.ts +4 -4
- package/dist/clients/comfyui/index.d.ts +2 -2
- package/dist/clients/elevenlabs/index.d.ts +2 -2
- package/dist/clients/openai/index.d.ts +2 -2
- package/dist/clients/supabase/index.d.ts +3 -3
- package/dist/command.d.ts +1 -1
- package/dist/node/container.d.ts +1 -1
- package/dist/node/features/helpers.d.ts +3 -3
- package/dist/node/features/semantic-search.d.ts +1 -1
- package/dist/node/features/vm.d.ts +3 -3
- package/dist/node.d.ts +1 -1
- package/dist/scaffolds/generated.d.ts +1 -1
- package/dist/selector.d.ts +1 -1
- package/features/cipher-social.ts +493 -0
- package/index.html +217 -190
- package/luca.console.ts +1 -1
- package/package.json +7 -2
- package/public/index.html +217 -190
- package/public/slides-ai-native.html +1 -1
- package/public/slides-intro.html +2 -2
- package/scripts/curate-claude-sessions.ts +561 -0
- package/scripts/examples/ask-luca-expert.ts +1 -1
- package/scripts/examples/assistant-questions.ts +1 -1
- package/scripts/examples/excalidraw-expert.ts +1 -1
- package/scripts/examples/file-manager.ts +1 -1
- package/scripts/examples/ideas.ts +1 -1
- package/scripts/examples/interactive-chat.ts +1 -1
- package/scripts/examples/opening-a-web-browser.ts +1 -1
- package/scripts/examples/telegram-bot.ts +1 -1
- package/scripts/examples/using-assistant-with-mcp.ts +1 -1
- package/scripts/examples/using-claude-code.ts +1 -1
- package/scripts/examples/using-contentdb.ts +2 -2
- package/scripts/examples/using-conversations.ts +1 -1
- package/scripts/examples/using-disk-cache.ts +1 -1
- package/scripts/examples/using-docker-shell.ts +1 -1
- package/scripts/examples/using-elevenlabs.ts +1 -1
- package/scripts/examples/using-google-calendar.ts +1 -1
- package/scripts/examples/using-google-docs.ts +1 -1
- package/scripts/examples/using-google-drive.ts +1 -1
- package/scripts/examples/using-google-sheets.ts +1 -1
- package/scripts/examples/using-nlp.ts +1 -1
- package/scripts/examples/using-ollama.ts +1 -1
- package/scripts/examples/using-postgres.ts +1 -1
- package/scripts/examples/using-runpod.ts +1 -1
- package/scripts/examples/using-tts.ts +1 -1
- package/scripts/scaffold.ts +5 -5
- package/scripts/scratch.ts +1 -1
- package/scripts/test-assistant-hooks.ts +1 -1
- package/scripts/test-docs-reader.ts +1 -1
- package/src/agi/container.server.ts +6 -2
- package/src/agi/features/agent-memory.ts +25 -25
- package/src/agi/features/assistant.ts +34 -5
- package/src/agi/features/assistants-manager.ts +122 -6
- package/src/agi/features/autonomous-assistant.ts +1 -1
- package/src/agi/features/browser-use.ts +20 -1
- package/src/agi/features/claude-code.ts +51 -5
- package/src/agi/features/coding-tools.ts +1 -1
- package/src/agi/features/conversation-history.ts +181 -4
- package/src/agi/features/conversation.ts +186 -15
- package/src/agi/features/docs-reader.ts +2 -2
- package/src/agi/features/file-tools.ts +49 -2
- package/src/agi/features/luca-coder.ts +7 -5
- package/src/agi/features/mcp-bridge.ts +532 -0
- package/src/agi/features/openai-codex.ts +2 -2
- package/src/agi/features/skills-library.ts +131 -52
- package/src/agi/lib/token-counter.ts +80 -0
- package/src/bootstrap/generated.ts +56 -57
- package/src/browser.ts +1 -1
- package/src/cli/build-info.ts +2 -2
- package/src/cli/cli.ts +2 -2
- package/src/clients/civitai/index.ts +5 -5
- package/src/clients/client-template.ts +4 -4
- package/src/clients/comfyui/index.ts +4 -4
- package/src/clients/elevenlabs/index.ts +4 -4
- package/src/clients/openai/index.ts +7 -7
- package/src/clients/supabase/index.ts +4 -4
- package/src/clients/voicebox/index.ts +4 -4
- package/src/command.ts +2 -1
- package/src/commands/chat.ts +1 -0
- package/src/commands/eval.ts +2 -56
- package/src/commands/introspect.ts +1 -1
- package/src/commands/prompt.ts +41 -9
- package/src/container-describer.ts +8 -1
- package/src/container.ts +13 -0
- package/src/entity.ts +2 -2
- package/src/helper.ts +1 -1
- package/src/introspection/generated.agi.ts +29596 -27654
- package/src/introspection/generated.node.ts +20284 -19247
- package/src/introspection/generated.web.ts +605 -584
- package/src/introspection/scan.ts +11 -6
- package/src/node/container.ts +9 -1
- package/src/node/features/content-db.ts +39 -2
- package/src/node/features/display-result.ts +57 -0
- package/src/node/features/helpers.ts +46 -7
- package/src/node/features/python.ts +25 -19
- package/src/node/features/repl.ts +1 -1
- package/src/node/features/secure-shell.ts +11 -17
- package/src/node/features/semantic-search.ts +2 -2
- package/src/node/features/socket-repl.ts +336 -0
- package/src/node/features/telnyx-assistant-connector.ts +1206 -0
- package/src/node/features/transpiler.ts +2 -3
- package/src/node/features/ui.ts +5 -0
- package/src/node/features/vm.ts +20 -3
- package/src/node.ts +3 -3
- package/src/python/generated.ts +0 -1
- package/src/scaffolds/generated.ts +82 -83
- package/src/selector.ts +1 -1
- package/src/servers/express.ts +1 -1
- package/src/web/features/helpers.ts +22 -0
- package/tsconfig.json +12 -12
- package/docs/CLI.md +0 -335
- package/docs/CNAME +0 -1
- package/docs/README.md +0 -60
- package/docs/TABLE-OF-CONTENTS.md +0 -183
- package/docs/apis/clients/elevenlabs.md +0 -308
- package/docs/apis/clients/graph.md +0 -107
- package/docs/apis/clients/openai.md +0 -429
- package/docs/apis/clients/rest.md +0 -161
- package/docs/apis/clients/websocket.md +0 -174
- package/docs/apis/features/agi/assistant.md +0 -625
- package/docs/apis/features/agi/assistants-manager.md +0 -282
- package/docs/apis/features/agi/auto-assistant.md +0 -279
- package/docs/apis/features/agi/browser-use.md +0 -802
- package/docs/apis/features/agi/claude-code.md +0 -884
- package/docs/apis/features/agi/conversation-history.md +0 -364
- package/docs/apis/features/agi/conversation.md +0 -548
- package/docs/apis/features/agi/docs-reader.md +0 -99
- package/docs/apis/features/agi/file-tools.md +0 -163
- package/docs/apis/features/agi/luca-coder.md +0 -407
- package/docs/apis/features/agi/openai-codex.md +0 -396
- package/docs/apis/features/agi/openapi.md +0 -138
- package/docs/apis/features/agi/semantic-search.md +0 -387
- package/docs/apis/features/agi/skills-library.md +0 -239
- package/docs/apis/features/node/container-link.md +0 -192
- package/docs/apis/features/node/content-db.md +0 -450
- package/docs/apis/features/node/disk-cache.md +0 -379
- package/docs/apis/features/node/dns.md +0 -652
- package/docs/apis/features/node/docker.md +0 -706
- package/docs/apis/features/node/downloader.md +0 -81
- package/docs/apis/features/node/esbuild.md +0 -60
- package/docs/apis/features/node/file-manager.md +0 -191
- package/docs/apis/features/node/fs.md +0 -1217
- package/docs/apis/features/node/git.md +0 -371
- package/docs/apis/features/node/google-auth.md +0 -193
- package/docs/apis/features/node/google-calendar.md +0 -202
- package/docs/apis/features/node/google-docs.md +0 -173
- package/docs/apis/features/node/google-drive.md +0 -246
- package/docs/apis/features/node/google-mail.md +0 -214
- package/docs/apis/features/node/google-sheets.md +0 -194
- package/docs/apis/features/node/grep.md +0 -292
- package/docs/apis/features/node/helpers.md +0 -164
- package/docs/apis/features/node/ink.md +0 -334
- package/docs/apis/features/node/ipc-socket.md +0 -249
- package/docs/apis/features/node/json-tree.md +0 -86
- package/docs/apis/features/node/networking.md +0 -316
- package/docs/apis/features/node/nlp.md +0 -133
- package/docs/apis/features/node/opener.md +0 -97
- package/docs/apis/features/node/os.md +0 -146
- package/docs/apis/features/node/package-finder.md +0 -392
- package/docs/apis/features/node/postgres.md +0 -234
- package/docs/apis/features/node/proc.md +0 -399
- package/docs/apis/features/node/process-manager.md +0 -305
- package/docs/apis/features/node/python.md +0 -604
- package/docs/apis/features/node/redis.md +0 -380
- package/docs/apis/features/node/repl.md +0 -88
- package/docs/apis/features/node/runpod.md +0 -674
- package/docs/apis/features/node/secure-shell.md +0 -176
- package/docs/apis/features/node/semantic-search.md +0 -408
- package/docs/apis/features/node/sqlite.md +0 -233
- package/docs/apis/features/node/telegram.md +0 -279
- package/docs/apis/features/node/transpiler.md +0 -74
- package/docs/apis/features/node/tts.md +0 -133
- package/docs/apis/features/node/ui.md +0 -701
- package/docs/apis/features/node/vault.md +0 -59
- package/docs/apis/features/node/vm.md +0 -75
- package/docs/apis/features/node/yaml-tree.md +0 -85
- package/docs/apis/features/node/yaml.md +0 -176
- package/docs/apis/features/web/asset-loader.md +0 -59
- package/docs/apis/features/web/container-link.md +0 -192
- package/docs/apis/features/web/esbuild.md +0 -54
- package/docs/apis/features/web/helpers.md +0 -164
- package/docs/apis/features/web/network.md +0 -44
- package/docs/apis/features/web/speech.md +0 -69
- package/docs/apis/features/web/vault.md +0 -59
- package/docs/apis/features/web/vm.md +0 -75
- package/docs/apis/features/web/voice.md +0 -84
- package/docs/apis/servers/express.md +0 -171
- package/docs/apis/servers/mcp.md +0 -238
- package/docs/apis/servers/websocket.md +0 -170
- package/docs/bootstrap/CLAUDE.md +0 -101
- package/docs/bootstrap/SKILL.md +0 -341
- package/docs/bootstrap/templates/about-command.ts +0 -41
- package/docs/bootstrap/templates/docs-models.ts +0 -22
- package/docs/bootstrap/templates/docs-readme.md +0 -43
- package/docs/bootstrap/templates/example-feature.ts +0 -53
- package/docs/bootstrap/templates/health-endpoint.ts +0 -15
- package/docs/bootstrap/templates/luca-cli.ts +0 -30
- package/docs/bootstrap/templates/runme.md +0 -54
- package/docs/challenges/caching-proxy.md +0 -16
- package/docs/challenges/content-db-round-trip.md +0 -14
- package/docs/challenges/custom-command.md +0 -9
- package/docs/challenges/file-watcher-pipeline.md +0 -11
- package/docs/challenges/grep-audit-report.md +0 -15
- package/docs/challenges/multi-feature-dashboard.md +0 -14
- package/docs/challenges/process-orchestrator.md +0 -17
- package/docs/challenges/rest-api-server-with-client.md +0 -12
- package/docs/challenges/script-runner-with-vm.md +0 -11
- package/docs/challenges/simple-rest-api.md +0 -15
- package/docs/challenges/websocket-serve-and-client.md +0 -11
- package/docs/challenges/yaml-config-system.md +0 -14
- package/docs/command-system-overhaul.md +0 -94
- package/docs/documentation-audit.md +0 -134
- package/docs/examples/assistant/CORE.md +0 -18
- package/docs/examples/assistant/hooks.ts +0 -3
- package/docs/examples/assistant/tools.ts +0 -10
- package/docs/examples/assistant-hooks-reference.ts +0 -171
- package/docs/examples/assistant-with-process-manager.md +0 -84
- package/docs/examples/content-db.md +0 -77
- package/docs/examples/disk-cache.md +0 -83
- package/docs/examples/docker.md +0 -101
- package/docs/examples/downloader.md +0 -70
- package/docs/examples/entity.md +0 -124
- package/docs/examples/esbuild.md +0 -80
- package/docs/examples/feature-as-tool-provider.md +0 -143
- package/docs/examples/file-manager.md +0 -82
- package/docs/examples/fs.md +0 -83
- package/docs/examples/git.md +0 -85
- package/docs/examples/google-auth.md +0 -88
- package/docs/examples/google-calendar.md +0 -94
- package/docs/examples/google-docs.md +0 -82
- package/docs/examples/google-drive.md +0 -96
- package/docs/examples/google-sheets.md +0 -95
- package/docs/examples/grep.md +0 -85
- package/docs/examples/ink-blocks.md +0 -75
- package/docs/examples/ink-renderer.md +0 -41
- package/docs/examples/ink.md +0 -103
- package/docs/examples/ipc-socket.md +0 -103
- package/docs/examples/json-tree.md +0 -91
- package/docs/examples/networking.md +0 -58
- package/docs/examples/nlp.md +0 -91
- package/docs/examples/opener.md +0 -78
- package/docs/examples/os.md +0 -72
- package/docs/examples/package-finder.md +0 -89
- package/docs/examples/postgres.md +0 -91
- package/docs/examples/proc.md +0 -81
- package/docs/examples/process-manager.md +0 -79
- package/docs/examples/python.md +0 -132
- package/docs/examples/repl.md +0 -93
- package/docs/examples/runpod.md +0 -119
- package/docs/examples/secure-shell.md +0 -92
- package/docs/examples/sqlite.md +0 -86
- package/docs/examples/structured-output-with-assistants.md +0 -144
- package/docs/examples/telegram.md +0 -77
- package/docs/examples/tts.md +0 -86
- package/docs/examples/ui.md +0 -80
- package/docs/examples/vault.md +0 -70
- package/docs/examples/vm.md +0 -86
- package/docs/examples/websocket-ask-and-reply-example.md +0 -128
- package/docs/examples/yaml-tree.md +0 -93
- package/docs/examples/yaml.md +0 -104
- package/docs/ideas/assistant-factory-pattern.md +0 -142
- package/docs/in-memory-fs.md +0 -4
- package/docs/introspection-audit.md +0 -49
- package/docs/introspection.md +0 -164
- package/docs/mcp/readme.md +0 -162
- package/docs/models.ts +0 -41
- package/docs/philosophy.md +0 -86
- package/docs/principles.md +0 -7
- package/docs/prompts/audit-codebase-for-failures-to-use-the-container.md +0 -34
- package/docs/prompts/check-for-undocumented-features.md +0 -27
- package/docs/prompts/mcp-test-easy-command.md +0 -27
- package/docs/scaffolds/client.md +0 -149
- package/docs/scaffolds/command.md +0 -120
- package/docs/scaffolds/endpoint.md +0 -171
- package/docs/scaffolds/feature.md +0 -158
- package/docs/scaffolds/selector.md +0 -91
- package/docs/scaffolds/server.md +0 -196
- package/docs/selectors.md +0 -115
- package/docs/sessions/custom-command/attempt-log-2.md +0 -195
- package/docs/sessions/file-watcher-pipeline/attempt-log-1.md +0 -728
- package/docs/sessions/file-watcher-pipeline/attempt-log-2.md +0 -555
- package/docs/sessions/grep-audit-report/attempt-log-1.md +0 -289
- package/docs/sessions/multi-feature-dashboard/attempt-log-2.md +0 -679
- package/docs/sessions/rest-api-server-with-client/attempt-log-1.md +0 -1
- package/docs/sessions/rest-api-server-with-client/attempt-log-3.md +0 -920
- package/docs/sessions/simple-rest-api/attempt-log-1.md +0 -593
- package/docs/sessions/websocket-serve-and-client/attempt-log-2.md +0 -995
- package/docs/tutorials/00-bootstrap.md +0 -166
- package/docs/tutorials/01-getting-started.md +0 -106
- package/docs/tutorials/02-container.md +0 -210
- package/docs/tutorials/03-scripts.md +0 -194
- package/docs/tutorials/04-features-overview.md +0 -196
- package/docs/tutorials/05-state-and-events.md +0 -171
- package/docs/tutorials/06-servers.md +0 -157
- package/docs/tutorials/07-endpoints.md +0 -198
- package/docs/tutorials/08-commands.md +0 -252
- package/docs/tutorials/09-clients.md +0 -162
- package/docs/tutorials/10-creating-features.md +0 -203
- package/docs/tutorials/11-contentbase.md +0 -191
- package/docs/tutorials/12-assistants.md +0 -215
- package/docs/tutorials/13-introspection.md +0 -157
- package/docs/tutorials/14-type-system.md +0 -174
- package/docs/tutorials/15-project-patterns.md +0 -222
- package/docs/tutorials/16-google-features.md +0 -534
- package/docs/tutorials/17-tui-blocks.md +0 -530
- package/docs/tutorials/18-semantic-search.md +0 -334
- package/docs/tutorials/19-python-sessions.md +0 -401
- package/docs/tutorials/20-browser-esm.md +0 -234
- package/index.ts +0 -1
- package/src/agi/endpoints/ask.ts +0 -60
- package/src/agi/endpoints/conversations/[id].ts +0 -45
- package/src/agi/endpoints/conversations.ts +0 -31
- package/src/agi/endpoints/experts.ts +0 -37
- package/test/assistant-hooks.test.ts +0 -306
- package/test/assistant.test.ts +0 -81
- package/test/bus.test.ts +0 -134
- package/test/clients-servers.test.ts +0 -217
- package/test/command.test.ts +0 -267
- package/test/container-link.test.ts +0 -274
- package/test/conversation.test.ts +0 -220
- package/test/features.test.ts +0 -160
- package/test/fork-and-research.test.ts +0 -450
- package/test/integration.test.ts +0 -787
- package/test/interceptor-chain.test.ts +0 -61
- package/test/node-container.test.ts +0 -121
- package/test/python-session.test.ts +0 -105
- package/test/rate-limit.test.ts +0 -272
- package/test/semantic-search.test.ts +0 -550
- package/test/state.test.ts +0 -121
- package/test/vm-context.test.ts +0 -146
- package/test/vm-loadmodule.test.ts +0 -213
- package/test/websocket-ask.test.ts +0 -101
- package/test-integration/assistant.test.ts +0 -138
- package/test-integration/assistants-manager.test.ts +0 -113
- package/test-integration/claude-code.test.ts +0 -98
- package/test-integration/conversation-history.test.ts +0 -205
- package/test-integration/conversation.test.ts +0 -137
- package/test-integration/elevenlabs.test.ts +0 -55
- package/test-integration/google-services.test.ts +0 -80
- package/test-integration/helpers.ts +0 -89
- package/test-integration/memory.test.ts +0 -204
- package/test-integration/openai-codex.test.ts +0 -93
- package/test-integration/runpod.test.ts +0 -58
- package/test-integration/server-endpoints.test.ts +0 -97
- package/test-integration/telegram.test.ts +0 -46
|
@@ -1,308 +0,0 @@
|
|
|
1
|
-
# ElevenLabsClient (clients.elevenlabs)
|
|
2
|
-
|
|
3
|
-
ElevenLabs client — text-to-speech synthesis via the ElevenLabs REST API. Provides methods for listing voices, listing models, and generating speech audio. Audio is returned as a Buffer; use `say()` for a convenience method that writes to disk.
|
|
4
|
-
|
|
5
|
-
## Usage
|
|
6
|
-
|
|
7
|
-
```ts
|
|
8
|
-
container.client('elevenlabs', {
|
|
9
|
-
// Base URL for the client connection
|
|
10
|
-
baseURL,
|
|
11
|
-
// Whether to automatically parse responses as JSON
|
|
12
|
-
json,
|
|
13
|
-
// ElevenLabs API key (falls back to ELEVENLABS_API_KEY env var)
|
|
14
|
-
apiKey,
|
|
15
|
-
// Default voice ID for speech synthesis
|
|
16
|
-
defaultVoiceId,
|
|
17
|
-
// Default TTS model ID
|
|
18
|
-
defaultModelId,
|
|
19
|
-
// Audio output format (e.g. mp3_44100_128, pcm_16000)
|
|
20
|
-
outputFormat,
|
|
21
|
-
})
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## Options (Zod v4 schema)
|
|
25
|
-
|
|
26
|
-
| Property | Type | Description |
|
|
27
|
-
|----------|------|-------------|
|
|
28
|
-
| `baseURL` | `string` | Base URL for the client connection |
|
|
29
|
-
| `json` | `boolean` | Whether to automatically parse responses as JSON |
|
|
30
|
-
| `apiKey` | `string` | ElevenLabs API key (falls back to ELEVENLABS_API_KEY env var) |
|
|
31
|
-
| `defaultVoiceId` | `string` | Default voice ID for speech synthesis |
|
|
32
|
-
| `defaultModelId` | `string` | Default TTS model ID |
|
|
33
|
-
| `outputFormat` | `string` | Audio output format (e.g. mp3_44100_128, pcm_16000) |
|
|
34
|
-
|
|
35
|
-
## Methods
|
|
36
|
-
|
|
37
|
-
### beforeRequest
|
|
38
|
-
|
|
39
|
-
Inject the xi-api-key header before each request.
|
|
40
|
-
|
|
41
|
-
**Returns:** `void`
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
### connect
|
|
46
|
-
|
|
47
|
-
Validate the API key by listing available models.
|
|
48
|
-
|
|
49
|
-
**Returns:** `Promise<this>`
|
|
50
|
-
|
|
51
|
-
```ts
|
|
52
|
-
await el.connect()
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
### listVoices
|
|
58
|
-
|
|
59
|
-
List available voices with optional search and filtering.
|
|
60
|
-
|
|
61
|
-
**Parameters:**
|
|
62
|
-
|
|
63
|
-
| Name | Type | Required | Description |
|
|
64
|
-
|------|------|----------|-------------|
|
|
65
|
-
| `options` | `{
|
|
66
|
-
search?: string
|
|
67
|
-
category?: string
|
|
68
|
-
voice_type?: string
|
|
69
|
-
page_size?: number
|
|
70
|
-
next_page_token?: string
|
|
71
|
-
}` | | Query parameters for filtering voices |
|
|
72
|
-
|
|
73
|
-
**Returns:** `Promise<any>`
|
|
74
|
-
|
|
75
|
-
```ts
|
|
76
|
-
const voices = await el.listVoices()
|
|
77
|
-
const premade = await el.listVoices({ category: 'premade' })
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
### getVoice
|
|
83
|
-
|
|
84
|
-
Get details for a single voice.
|
|
85
|
-
|
|
86
|
-
**Parameters:**
|
|
87
|
-
|
|
88
|
-
| Name | Type | Required | Description |
|
|
89
|
-
|------|------|----------|-------------|
|
|
90
|
-
| `voiceId` | `string` | ✓ | The voice ID to look up |
|
|
91
|
-
|
|
92
|
-
**Returns:** `Promise<any>`
|
|
93
|
-
|
|
94
|
-
```ts
|
|
95
|
-
const voice = await el.getVoice('21m00Tcm4TlvDq8ikWAM')
|
|
96
|
-
console.log(voice.name, voice.settings)
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
### listModels
|
|
102
|
-
|
|
103
|
-
List available TTS models.
|
|
104
|
-
|
|
105
|
-
**Returns:** `Promise<any[]>`
|
|
106
|
-
|
|
107
|
-
```ts
|
|
108
|
-
const models = await el.listModels()
|
|
109
|
-
console.log(models.map(m => m.model_id))
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
### synthesize
|
|
115
|
-
|
|
116
|
-
Synthesize speech from text, returning audio as a Buffer.
|
|
117
|
-
|
|
118
|
-
**Parameters:**
|
|
119
|
-
|
|
120
|
-
| Name | Type | Required | Description |
|
|
121
|
-
|------|------|----------|-------------|
|
|
122
|
-
| `text` | `string` | ✓ | The text to convert to speech |
|
|
123
|
-
| `options` | `SynthesizeOptions` | | Voice, model, format, and voice settings overrides |
|
|
124
|
-
|
|
125
|
-
`SynthesizeOptions` properties:
|
|
126
|
-
|
|
127
|
-
| Property | Type | Description |
|
|
128
|
-
|----------|------|-------------|
|
|
129
|
-
| `voiceId` | `string` | |
|
|
130
|
-
| `modelId` | `string` | |
|
|
131
|
-
| `outputFormat` | `string` | |
|
|
132
|
-
| `voiceSettings` | `ElevenLabsVoiceSettings` | |
|
|
133
|
-
| `disableCache` | `boolean` | |
|
|
134
|
-
|
|
135
|
-
**Returns:** `Promise<Buffer>`
|
|
136
|
-
|
|
137
|
-
```ts
|
|
138
|
-
const audio = await el.synthesize('Hello world')
|
|
139
|
-
// audio is a Buffer of mp3 data
|
|
140
|
-
|
|
141
|
-
const custom = await el.synthesize('Hello', {
|
|
142
|
-
voiceId: '21m00Tcm4TlvDq8ikWAM',
|
|
143
|
-
voiceSettings: { stability: 0.5, similarityBoost: 0.8 }
|
|
144
|
-
})
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
### say
|
|
150
|
-
|
|
151
|
-
Synthesize speech and write the audio to a file.
|
|
152
|
-
|
|
153
|
-
**Parameters:**
|
|
154
|
-
|
|
155
|
-
| Name | Type | Required | Description |
|
|
156
|
-
|------|------|----------|-------------|
|
|
157
|
-
| `text` | `string` | ✓ | The text to convert to speech |
|
|
158
|
-
| `outputPath` | `string` | ✓ | File path to write the audio to |
|
|
159
|
-
| `options` | `SynthesizeOptions` | | Voice, model, format, and voice settings overrides |
|
|
160
|
-
|
|
161
|
-
`SynthesizeOptions` properties:
|
|
162
|
-
|
|
163
|
-
| Property | Type | Description |
|
|
164
|
-
|----------|------|-------------|
|
|
165
|
-
| `voiceId` | `string` | |
|
|
166
|
-
| `modelId` | `string` | |
|
|
167
|
-
| `outputFormat` | `string` | |
|
|
168
|
-
| `voiceSettings` | `ElevenLabsVoiceSettings` | |
|
|
169
|
-
| `disableCache` | `boolean` | |
|
|
170
|
-
|
|
171
|
-
**Returns:** `Promise<string>`
|
|
172
|
-
|
|
173
|
-
```ts
|
|
174
|
-
const path = await el.say('Hello world', './hello.mp3')
|
|
175
|
-
console.log(`Audio saved to ${path}`)
|
|
176
|
-
```
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
## Getters
|
|
181
|
-
|
|
182
|
-
| Property | Type | Description |
|
|
183
|
-
|----------|------|-------------|
|
|
184
|
-
| `apiKey` | `string` | The resolved API key from options or environment. |
|
|
185
|
-
|
|
186
|
-
## Events (Zod v4 schema)
|
|
187
|
-
|
|
188
|
-
### failure
|
|
189
|
-
|
|
190
|
-
Emitted when a request fails
|
|
191
|
-
|
|
192
|
-
**Event Arguments:**
|
|
193
|
-
|
|
194
|
-
| Name | Type | Description |
|
|
195
|
-
|------|------|-------------|
|
|
196
|
-
| `arg0` | `any` | The error object |
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
### voices
|
|
201
|
-
|
|
202
|
-
Emitted after listing voices
|
|
203
|
-
|
|
204
|
-
**Event Arguments:**
|
|
205
|
-
|
|
206
|
-
| Name | Type | Description |
|
|
207
|
-
|------|------|-------------|
|
|
208
|
-
| `arg0` | `array` | |
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
### speech
|
|
213
|
-
|
|
214
|
-
Emitted after speech synthesis completes
|
|
215
|
-
|
|
216
|
-
**Event Arguments:**
|
|
217
|
-
|
|
218
|
-
| Name | Type | Description |
|
|
219
|
-
|------|------|-------------|
|
|
220
|
-
| `voiceId` | `string` | |
|
|
221
|
-
| `text` | `string` | |
|
|
222
|
-
| `audioSize` | `number` | |
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
## State (Zod v4 schema)
|
|
227
|
-
|
|
228
|
-
| Property | Type | Description |
|
|
229
|
-
|----------|------|-------------|
|
|
230
|
-
| `connected` | `boolean` | Whether the client is currently connected |
|
|
231
|
-
| `requestCount` | `number` | Total number of API requests made |
|
|
232
|
-
| `characterCount` | `number` | Total characters sent for synthesis (tracks billing usage) |
|
|
233
|
-
| `lastRequestTime` | `any` | Timestamp of the last API request |
|
|
234
|
-
|
|
235
|
-
## Environment Variables
|
|
236
|
-
|
|
237
|
-
- `ELEVENLABS_API_KEY`
|
|
238
|
-
|
|
239
|
-
## Examples
|
|
240
|
-
|
|
241
|
-
**clients.elevenlabs**
|
|
242
|
-
|
|
243
|
-
```ts
|
|
244
|
-
const el = container.client('elevenlabs')
|
|
245
|
-
await el.connect()
|
|
246
|
-
const voices = await el.listVoices()
|
|
247
|
-
const audio = await el.synthesize('Hello world')
|
|
248
|
-
// audio is a Buffer of mp3 data
|
|
249
|
-
```
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
**connect**
|
|
254
|
-
|
|
255
|
-
```ts
|
|
256
|
-
await el.connect()
|
|
257
|
-
```
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
**listVoices**
|
|
262
|
-
|
|
263
|
-
```ts
|
|
264
|
-
const voices = await el.listVoices()
|
|
265
|
-
const premade = await el.listVoices({ category: 'premade' })
|
|
266
|
-
```
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
**getVoice**
|
|
271
|
-
|
|
272
|
-
```ts
|
|
273
|
-
const voice = await el.getVoice('21m00Tcm4TlvDq8ikWAM')
|
|
274
|
-
console.log(voice.name, voice.settings)
|
|
275
|
-
```
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
**listModels**
|
|
280
|
-
|
|
281
|
-
```ts
|
|
282
|
-
const models = await el.listModels()
|
|
283
|
-
console.log(models.map(m => m.model_id))
|
|
284
|
-
```
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
**synthesize**
|
|
289
|
-
|
|
290
|
-
```ts
|
|
291
|
-
const audio = await el.synthesize('Hello world')
|
|
292
|
-
// audio is a Buffer of mp3 data
|
|
293
|
-
|
|
294
|
-
const custom = await el.synthesize('Hello', {
|
|
295
|
-
voiceId: '21m00Tcm4TlvDq8ikWAM',
|
|
296
|
-
voiceSettings: { stability: 0.5, similarityBoost: 0.8 }
|
|
297
|
-
})
|
|
298
|
-
```
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
**say**
|
|
303
|
-
|
|
304
|
-
```ts
|
|
305
|
-
const path = await el.say('Hello world', './hello.mp3')
|
|
306
|
-
console.log(`Audio saved to ${path}`)
|
|
307
|
-
```
|
|
308
|
-
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
# GraphClient (clients.graph)
|
|
2
|
-
|
|
3
|
-
GraphQL client that wraps RestClient with convenience methods for executing queries and mutations. Automatically handles the GraphQL request envelope (query/variables/operationName) and unwraps responses, extracting the `data` field and emitting events for GraphQL-level errors.
|
|
4
|
-
|
|
5
|
-
## Usage
|
|
6
|
-
|
|
7
|
-
```ts
|
|
8
|
-
container.client('graph', {
|
|
9
|
-
// Base URL for the client connection
|
|
10
|
-
baseURL,
|
|
11
|
-
// Whether to automatically parse responses as JSON
|
|
12
|
-
json,
|
|
13
|
-
// The GraphQL endpoint path, defaults to /graphql
|
|
14
|
-
endpoint,
|
|
15
|
-
})
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Options (Zod v4 schema)
|
|
19
|
-
|
|
20
|
-
| Property | Type | Description |
|
|
21
|
-
|----------|------|-------------|
|
|
22
|
-
| `baseURL` | `string` | Base URL for the client connection |
|
|
23
|
-
| `json` | `boolean` | Whether to automatically parse responses as JSON |
|
|
24
|
-
| `endpoint` | `string` | The GraphQL endpoint path, defaults to /graphql |
|
|
25
|
-
|
|
26
|
-
## Methods
|
|
27
|
-
|
|
28
|
-
### query
|
|
29
|
-
|
|
30
|
-
Execute a GraphQL query and return the unwrapped data.
|
|
31
|
-
|
|
32
|
-
**Parameters:**
|
|
33
|
-
|
|
34
|
-
| Name | Type | Required | Description |
|
|
35
|
-
|------|------|----------|-------------|
|
|
36
|
-
| `query` | `string` | ✓ | The GraphQL query string |
|
|
37
|
-
| `variables` | `Record<string, any>` | | Optional variables for the query |
|
|
38
|
-
| `operationName` | `string` | | Optional operation name when the query contains multiple operations |
|
|
39
|
-
|
|
40
|
-
**Returns:** `Promise<R>`
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
### mutate
|
|
45
|
-
|
|
46
|
-
Execute a GraphQL mutation and return the unwrapped data. Semantically identical to query() but named for clarity when performing mutations.
|
|
47
|
-
|
|
48
|
-
**Parameters:**
|
|
49
|
-
|
|
50
|
-
| Name | Type | Required | Description |
|
|
51
|
-
|------|------|----------|-------------|
|
|
52
|
-
| `mutation` | `string` | ✓ | The GraphQL mutation string |
|
|
53
|
-
| `variables` | `Record<string, any>` | | Optional variables for the mutation |
|
|
54
|
-
| `operationName` | `string` | | Optional operation name when the mutation contains multiple operations |
|
|
55
|
-
|
|
56
|
-
**Returns:** `Promise<R>`
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
## Getters
|
|
61
|
-
|
|
62
|
-
| Property | Type | Description |
|
|
63
|
-
|----------|------|-------------|
|
|
64
|
-
| `endpoint` | `any` | The GraphQL endpoint path. Defaults to '/graphql'. |
|
|
65
|
-
|
|
66
|
-
## Events (Zod v4 schema)
|
|
67
|
-
|
|
68
|
-
### graphqlError
|
|
69
|
-
|
|
70
|
-
Emitted when GraphQL-level errors are present in the response
|
|
71
|
-
|
|
72
|
-
**Event Arguments:**
|
|
73
|
-
|
|
74
|
-
| Name | Type | Description |
|
|
75
|
-
|------|------|-------------|
|
|
76
|
-
| `arg0` | `array` | Array of GraphQL errors |
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
### failure
|
|
81
|
-
|
|
82
|
-
Emitted when a request fails
|
|
83
|
-
|
|
84
|
-
**Event Arguments:**
|
|
85
|
-
|
|
86
|
-
| Name | Type | Description |
|
|
87
|
-
|------|------|-------------|
|
|
88
|
-
| `arg0` | `any` | The error object |
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
## State (Zod v4 schema)
|
|
93
|
-
|
|
94
|
-
| Property | Type | Description |
|
|
95
|
-
|----------|------|-------------|
|
|
96
|
-
| `connected` | `boolean` | Whether the client is currently connected |
|
|
97
|
-
|
|
98
|
-
## Examples
|
|
99
|
-
|
|
100
|
-
**clients.graph**
|
|
101
|
-
|
|
102
|
-
```ts
|
|
103
|
-
const gql = container.client('graph', { baseURL: 'https://api.example.com' })
|
|
104
|
-
const data = await gql.query(`{ users { id name } }`)
|
|
105
|
-
await gql.mutate(`mutation($name: String!) { createUser(name: $name) { id } }`, { name: 'Alice' })
|
|
106
|
-
```
|
|
107
|
-
|