@tangle-network/agent-integrations 0.61.2 → 0.62.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/README.md +1 -0
- package/data/bundled-adapter-manifests.json +1 -1
- package/dist/{adapters-Dp5h7mF-.js → adapters-DZb0dJHa.js} +779 -44
- package/dist/{adapters-Dp5h7mF-.js.map → adapters-DZb0dJHa.js.map} +1 -1
- package/dist/{bundled-manifest-data-D8W3xNyQ.js → bundled-manifest-data-D5zxeonm.js} +413 -28
- package/dist/{bundled-manifest-data-D8W3xNyQ.js.map → bundled-manifest-data-D5zxeonm.js.map} +1 -1
- package/dist/connectors/adapters/index.js +1 -1
- package/dist/connectors/index.js +2 -2
- package/dist/coverage-catalog.js +2 -2
- package/dist/coverage-catalog.js.map +1 -1
- package/dist/index-BXhHnxfA.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/internal/bundled-manifest-runtime.js +1 -1
- package/dist/mcp.js +1 -1
- package/dist/registry.js +1 -1
- package/dist/{specs-ElJzHwc7.js → specs-k7fs10sB.js} +2 -2
- package/dist/{specs-ElJzHwc7.js.map → specs-k7fs10sB.js.map} +1 -1
- package/dist/specs.js +1 -1
- package/dist/{src-91m6v5vV.js → src-CZtOkebG.js} +3 -3
- package/dist/{src-91m6v5vV.js.map → src-CZtOkebG.js.map} +1 -1
- package/docs/voice-tools.md +41 -0
- package/package.json +1 -1
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Voice tools
|
|
2
|
+
|
|
3
|
+
Agents get voice through two connectors.
|
|
4
|
+
|
|
5
|
+
| Need | Connector | Who pays |
|
|
6
|
+
|---|---|---|
|
|
7
|
+
| Voice memo, voices, self-clone, transcription, voice agents, phone calls | `phony` (ph0ny) | The connected ph0ny account. Tangle's Hub connects with a Tangle-owned key; ph0ny holds the provider keys. |
|
|
8
|
+
| The same on a workspace's own ElevenLabs account | `elevenlabs` | The workspace (bring your own key). |
|
|
9
|
+
|
|
10
|
+
## ph0ny
|
|
11
|
+
|
|
12
|
+
| Capability | What it does |
|
|
13
|
+
|---|---|
|
|
14
|
+
| `list_voices` | Clones and provider voices. Each names `provider` and `providerVoiceId`; set them as an agent's `ttsProvider` and `voiceId`. `provider: "cartesia"` adds Cartesia's stock voices, the default call voices. |
|
|
15
|
+
| `synthesize_speech` | A voice memo. ph0ny stores the audio and returns `audioUrl`, valid for about an hour. Save the file; do not pass audio through the conversation. |
|
|
16
|
+
| `transcribe` | Speech to text from a public URL. |
|
|
17
|
+
| `clone_voice` | Instant clone of the requester's own voice. `consent.subject` must be `"self"` and `consent.statement` must quote them consenting. ph0ny stores the consent with the voice. Cloning another person is refused until signed third-party consent can be bound to the request. |
|
|
18
|
+
| `create_agent`, `update_agent`, `list_agents` | Voice agents. `personal_assistant` agents place calls. |
|
|
19
|
+
| `list_phone_numbers` | Caller ids for `start_outbound_call`. |
|
|
20
|
+
| `start_outbound_call` | A mission call: the agent opens by saying it is an AI assistant calling on the user's behalf, pursues `mission.goal`, and extracts the answer. `voiceCloneId` speaks with a clone (the agent's `ttsProvider` must match the clone's provider). `callback` receives the outcome once when the call ends. |
|
|
21
|
+
| `get_call`, `list_calls` | Call status, transcript, extracted fields and recording. |
|
|
22
|
+
|
|
23
|
+
### Call outcome callback
|
|
24
|
+
|
|
25
|
+
ph0ny POSTs one JSON body to `callback.url` when the call ends, whether it was answered, failed, busy or unanswered:
|
|
26
|
+
|
|
27
|
+
```json
|
|
28
|
+
{ "event": "outbound.call.completed", "callId": "...", "status": "completed", "goalMet": true,
|
|
29
|
+
"summary": "...", "extractedFields": { "summary": "...", "outcome": "..." },
|
|
30
|
+
"transcript": [{ "role": "assistant", "content": "..." }], "recordingUrl": "https://...", "durationMs": 61000 }
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
It is signed `X-Signature: hex(HMAC-SHA256(body, callback.token))` and carries `Authorization: Bearer <callback.token>` and `Idempotency-Key: outbound-outcome-<callId>`. The recording URL is signed for 7 days.
|
|
34
|
+
|
|
35
|
+
### Outbound gate
|
|
36
|
+
|
|
37
|
+
ph0ny dials only when its operator enabled outbound, the destination is on ph0ny's `OUTBOUND_ALLOWED_TO_NUMBERS` (people who agreed to test calls), or the caller's own call hook admits the number. Every call needs `userConsentRecorded: true` from the user who asked for it.
|
|
38
|
+
|
|
39
|
+
## ElevenLabs
|
|
40
|
+
|
|
41
|
+
`speech.synthesis` (base64 MP3), `voices.list`, `voices.clone_instant` (own voice only, paid ElevenLabs plan), `speech_to_text` (Scribe, from a URL), `agents.list`, `agents.create`. The key is sent as `xi-api-key`.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tangle-network/agent-integrations",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.62.0",
|
|
4
4
|
"description": "Vendor-neutral integration contracts and runtime helpers for sandbox and agent apps.",
|
|
5
5
|
"homepage": "https://github.com/tangle-network/agent-integrations#readme",
|
|
6
6
|
"repository": {
|