ChatVibeDeliverRequest chat.vibe-deliver-request@1
Generated at from
openvibe-contracts v0.221.0 and
openvibe-sdk v0.65.0.
- Version
- 1.0.0
- Owner
- chat
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/chat/vibe-deliver-request.v1.json
chat.vibe-deliver-request@1: a first-party service puts a result of the person's own work into their Vibe chats (OpenVibe.Actor: each finished run of one of their OpenVibe Agents, when the agent sends its results to Vibe). Chat keeps one chat per source, named after it, and posts the text there as Vibe's message, so each run is a chat they can open and continue. No AI answer is made and nothing counts against their allowance. POST /internal/chat/vibe/deliver, capability chat.vibe.deliver, loopback only.
Fields
| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
subject | string | yes | The person whose work it is, as the calling service vouches (Actor: the agent's owner). |
|
source | object | yes |
| |
source.kind | enum | yes |
| |
source.id | string | yes | The source's stable id (the agent's agt_ id): one chat per source. |
|
source.name | string | What to call it in the chat's name (the agent's name). |
| |
text | string | yes | The result, in Markdown (as Vibe's answers are shown). |
|
url | string | Where the whole run is (its steps, sources and cost). |
| |
idempotency_key | string | yes | The caller's id for this result (Actor: the run's task id): sent again, it is posted once. |
|
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: agent-run
{
"subject": "usr_01JABCDEFGHJKMNPQRSTVWXYZ0",
"source": {
"kind": "agent",
"id": "agt_01JABCDEFGHJKMNPQRSTVWXYZ1",
"name": "Remote jobs"
},
"text": "**3 new remote video editing jobs** today:\n\n- [Editor at Example](https://example.com/jobs/1)",
"url": "https://openvibe.actor/tasks/tsk_01JABCDEFGHJKMNPQRSTVWXYZ2",
"idempotency_key": "agent-run-0001"
}Rejected: no-key
{
"subject": "usr_01JABCDEFGHJKMNPQRSTVWXYZ0",
"source": {
"kind": "agent",
"id": "agt_01JABCDEFGHJKMNPQRSTVWXYZ1"
},
"text": "Done."
}Rejected: voice-source
{
"subject": "usr_01JABCDEFGHJKMNPQRSTVWXYZ0",
"source": {
"kind": "voice",
"id": "dev_1"
},
"text": "Done.",
"idempotency_key": "k1"
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('chat.vibe-deliver-request@1', value); // { valid, errors: [{ path, message }] }