HarnessOffer platform.harness-offer@1
Generated at from
openvibe-contracts v0.84.0 and
openvibe-sdk v0.26.0.
- Version
- 1.0.0
- Owner
- network
- Visibility
- public
- Status
- active
- Compatibility
- backward
- Decision
- ADR-034
- Schema
https://openvibe.network/contracts/platform/harness-offer.v1.json
Registered coding or agent harness, its access method, limits, and price (T1 Universal Fabric; ADR-034 proposed).
Fields
| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | string | yes | ||
name | string | yes | ||
provider | string | yes | ||
capabilities | object | yes |
| |
capabilities.host_access | boolean | yes | ||
capabilities.mcp | boolean | yes | ||
capabilities.long_autonomy | boolean | yes | ||
capabilities.resume | boolean | yes | ||
address | object | yes |
| |
address.kind | enum | yes |
| |
address.target | string | yes | Endpoint URI, executable, or MCP server name | |
price | object | yes |
| |
price.amount_usd | number | yes | Estimated USD |
|
price.unit | string | yes | Billing unit | |
limits | object | yes |
| |
limits.max_duration_seconds | integer | yes |
| |
limits.max_concurrent_runs | integer | yes |
| |
limits.max_context_tokens | integer |
|
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: example
{
"id": "harness-1",
"name": "Example Agent",
"provider": "example-ai",
"capabilities": {
"host_access": true,
"mcp": true,
"long_autonomy": true,
"resume": true
},
"address": {
"kind": "cli",
"target": "example-agent"
},
"price": {
"amount_usd": 0.1,
"unit": "hour"
},
"limits": {
"max_duration_seconds": 7200,
"max_concurrent_runs": 4,
"max_context_tokens": 128000
}
}Rejected: missing-id
{
"name": "Example Agent",
"provider": "example-ai",
"capabilities": {
"host_access": true,
"mcp": true,
"long_autonomy": true,
"resume": true
},
"address": {
"kind": "cli",
"target": "example-agent"
},
"price": {
"amount_usd": 0.1,
"unit": "hour"
},
"limits": {
"max_duration_seconds": 7200,
"max_concurrent_runs": 4,
"max_context_tokens": 128000
}
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('platform.harness-offer@1', value); // { valid, errors: [{ path, message }] }