xytara 3.1.8 → 3.1.10

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.
Files changed (52) hide show
  1. package/README.md +112 -1228
  2. package/REAL_PAYMENT_SETUP.md +313 -313
  3. package/RELEASE_NOTES.md +4 -6
  4. package/START_HERE.md +272 -272
  5. package/XT1_EXECUTION_TRUTH_STANDARD.md +1 -1
  6. package/adapters/AUTHORING_GUIDE.md +28 -28
  7. package/adapters/ONBOARDING_POSTURE.md +1 -1
  8. package/examples/generated.carried-handoff.json +3 -3
  9. package/lib/a2a_rpc.js +280 -0
  10. package/lib/account_auth.js +585 -518
  11. package/lib/agent_identity.js +162 -0
  12. package/lib/bolt_adapter.js +187 -0
  13. package/lib/bolt_payment_front.js +224 -172
  14. package/lib/checkout_processor_adapter.js +217 -0
  15. package/lib/command_flow.js +561 -411
  16. package/lib/commerce_artifacts.js +530 -503
  17. package/lib/commerce_bridge.js +274 -0
  18. package/lib/commerce_cases.js +399 -317
  19. package/lib/commerce_client.js +7694 -7687
  20. package/lib/commerce_runtime.js +322 -315
  21. package/lib/execution_dedupe.js +86 -0
  22. package/lib/external_credit_bridge.js +142 -142
  23. package/lib/external_execution_runtime.js +100 -34
  24. package/lib/http_transport.js +81 -73
  25. package/lib/l402_adapter.js +241 -0
  26. package/lib/l402_payment_front.js +265 -192
  27. package/lib/mpp_adapter.js +237 -0
  28. package/lib/payment_verification.js +52 -9
  29. package/lib/provider_network_contract.js +143 -0
  30. package/lib/provider_payout_execution.js +137 -0
  31. package/lib/provider_registry.js +666 -0
  32. package/lib/rate_limiter.js +81 -0
  33. package/lib/runtime_state_store.js +369 -354
  34. package/lib/stripe_mpp_payment_front.js +258 -158
  35. package/package.json +26 -5
  36. package/scripts/verify_a2a_rpc.js +105 -0
  37. package/scripts/verify_agent_identity.js +153 -0
  38. package/scripts/verify_bolt_adapter.js +128 -0
  39. package/scripts/verify_checkout_processor.js +109 -0
  40. package/scripts/verify_commerce_bridge.js +177 -0
  41. package/scripts/verify_execution_dedupe.js +189 -0
  42. package/scripts/verify_execution_surfacing.js +76 -0
  43. package/scripts/verify_external_execution_retry.js +140 -0
  44. package/scripts/verify_l402_adapter.js +86 -0
  45. package/scripts/verify_mpp_adapter.js +128 -0
  46. package/scripts/verify_provider_network.js +567 -0
  47. package/scripts/verify_rate_limiter.js +52 -0
  48. package/scripts/verify_refund_credit.js +106 -0
  49. package/scripts/verify_service.js +15421 -15410
  50. package/scripts/verify_settlement.js +116 -0
  51. package/scripts/verify_verify_execute_settle.js +208 -0
  52. package/server.js +684 -16
package/README.md CHANGED
@@ -1,1228 +1,112 @@
1
- # xytara
2
-
3
- `xytara` is the runtime and payment layer for the public two-repo stack.
4
-
5
- > New to the code? Read [`ARCHITECTURE.md`](ARCHITECTURE.md) first. It separates
6
- > the small execution-and-settlement engine (~9,300 lines) from the large
7
- > machine-readable breadth catalog, so the real runtime is legible in one sitting.
8
-
9
- It exists to let agents, developers, and systems:
10
-
11
- - discover tasks and workflows
12
- - quote work before execution
13
- - pay through supported payment paths
14
- - fund reusable balances and credits
15
- - execute tasks and workflows
16
- - dispatch runtime work
17
- - receive deliverables
18
- - inspect usage, metering, and lifecycle state
19
- - reconcile payment and settlement outcomes
20
- - inspect lifecycle state
21
- - operate through summaries and dashboards
22
- - review disputes, refunds, and remediation flows
23
- - integrate third-party adapters
24
- - emit proof-compatible facts for `xoonya` verification
25
-
26
- This repo is the runtime layer. It does not define base proof semantics. It references and emits proof-compatible facts, while `xoonya` owns canonical proof.
27
-
28
- The 10-phase public program is now complete. `xytara` is in terminal closeout posture rather than active milestone build posture.
29
-
30
- ## Public Boundary
31
-
32
- The public adoption story is intentionally simple:
33
-
34
- - install
35
- - discover
36
- - quote
37
- - pay or spend credits
38
- - execute
39
- - receive deliverables
40
- - hand off to `xoonya` when proof or review is needed
41
-
42
- Public docs and package surfaces should help builders integrate and pay for useful work. Real treasury destinations, custody details, and operator-only controls belong in private runtime configuration and operator handling, not in public marketing surfaces.
43
-
44
- ## Universal Runtime Shape
45
-
46
- `xytara` is intended to be usable from:
47
-
48
- - CLI and terminal
49
- - direct API calls
50
- - chat and agent environments that can issue HTTP calls
51
- - browsers and hosted checkout flows
52
- - operating-system or service wrappers
53
- - partner systems that need to add adapters or registry integrations
54
-
55
- The shortest public runtime loop is:
56
-
57
- - discover
58
- - quote
59
- - pay or spend credits
60
- - execute
61
- - receive deliverables
62
- - inspect results and economic state
63
- - hand off into `xoonya` when proof or review is required
64
-
65
- The frozen runtime-side fact model for that loop is documented in:
66
-
67
- - [XYTARA_EXECUTION_TRUTH_MODEL.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/XYTARA_EXECUTION_TRUTH_MODEL.md)
68
- - [XT1_EXECUTION_TRUTH_STANDARD.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/XT1_EXECUTION_TRUTH_STANDARD.md)
69
- - [OPERATIONAL_RECEIPT_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/docs/architecture/OPERATIONAL_RECEIPT_CONTRACT.md)
70
- - [MACHINE_IDENTITY_REGISTRY_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/docs/architecture/MACHINE_IDENTITY_REGISTRY_CONTRACT.md)
71
- - [CRYPTO_AGILITY_MATRIX.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/docs/architecture/CRYPTO_AGILITY_MATRIX.md)
72
- - [AUTHORITY_BINDING_LIFECYCLE_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/docs/architecture/AUTHORITY_BINDING_LIFECYCLE_CONTRACT.md)
73
- - [PUBLIC_SURFACE_POLICY_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/docs/architecture/PUBLIC_SURFACE_POLICY_CONTRACT.md)
74
- - [OFFLINE_VERIFIABILITY_AND_RECOVERY_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/docs/architecture/OFFLINE_VERIFIABILITY_AND_RECOVERY_CONTRACT.md)
75
- - [ADAPTER_CERTIFICATION_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/docs/architecture/ADAPTER_CERTIFICATION_CONTRACT.md)
76
- - [TRUST_PORTABILITY_BOUNDARY_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/docs/architecture/TRUST_PORTABILITY_BOUNDARY_CONTRACT.md)
77
- - [SIGNED_AUDIT_PROVENANCE_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/docs/architecture/SIGNED_AUDIT_PROVENANCE_CONTRACT.md)
78
-
79
- `XT1` is the coined public name for the `xytara` execution-truth standard, just as `XNYA` is the coined public name for the `xoonya` native proof primitive.
80
-
81
- Machine-readable execution-truth surfaces:
82
-
83
- - `GET /v1/xt1`
84
- - `GET /v1/xt1/summary`
85
- - `GET /v1/execution-truth`
86
- - `GET /v1/execution-truth/summary`
87
-
88
- The frozen multi-surface default-path model for `3.0.0` closeout is documented in:
89
-
90
- - [XYTARA_DEFAULT_PATH_MODEL.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/XYTARA_DEFAULT_PATH_MODEL.md)
91
-
92
- Machine-readable default-path surfaces:
93
-
94
- - `GET /v1/default-path`
95
- - `GET /v1/default-path/summary`
96
- - `GET /v1/default-path/:surface_id`
97
-
98
- The frozen payment-and-rail claim model for `3.0.0` closeout is documented in:
99
-
100
- - [XYTARA_PAYMENT_RAIL_TRUTH_MODEL.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/XYTARA_PAYMENT_RAIL_TRUTH_MODEL.md)
101
-
102
- Machine-readable payment-and-rail truth surfaces:
103
-
104
- - `GET /v1/payment-rail-truth`
105
- - `GET /v1/payment-rail-truth/summary`
106
- - `GET /v1/payment-rail-truth/:profile_id`
107
-
108
- The frozen adapter-and-protocol claim model for `3.0.0` closeout is documented in:
109
-
110
- - [XYTARA_ADAPTER_PROTOCOL_TRUTH_MODEL.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/XYTARA_ADAPTER_PROTOCOL_TRUTH_MODEL.md)
111
-
112
- Machine-readable adapter-and-protocol truth surfaces:
113
-
114
- - `GET /v1/adapter-protocol-truth`
115
- - `GET /v1/adapter-protocol-truth/summary`
116
- - `GET /v1/adapter-protocol-truth/:profile_id`
117
-
118
- The public autonomous-entry model for outside agents is documented in:
119
-
120
- - [XYTARA_AUTONOMOUS_ENTRY_MODEL.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/XYTARA_AUTONOMOUS_ENTRY_MODEL.md)
121
-
122
- Machine-readable autonomous-entry surfaces:
123
-
124
- - `GET /v1/autonomous-entry`
125
- - `GET /v1/autonomous-entry/summary`
126
- - `GET /v1/autonomous-entry/:profile_id`
127
-
128
- The current runtime breadth already includes:
129
-
130
- - discovery and workflow lookup
131
- - pricing and quote generation
132
- - direct machine payment
133
- - credits, grants, entitlements, and delegated spend
134
- - execution, result packages, and delivery
135
- - usage metering and account economics
136
- - hosted checkout and runtime-bridge dispatch surfaces
137
- - disputes, refunds, and remediation
138
- - activity ledger, reconciliation, and treasury-control visibility
139
- - adapter registration, review, and promotion surfaces
140
-
141
- It also already carries broader first-class runtime lanes for:
142
-
143
- - framework integrations such as `langchain`, `langgraph`, `semantic_kernel`, `autogen`, `crewai`, and `llamaindex`
144
- - machine and agent protocol fronts such as `mcp`, `a2a`, `a2c`, `acp`, `grpc`, `mqtt`, `kafka`, `nats`, `ros2`, and `webhook_event_bus`
145
- - identity and registry posture such as `erc8004`, registry identity, attestation refs, and anchor refs
146
- - operator and observability posture such as telemetry, provenance, artifact distribution, shared signals, feature control, pricing telemetry, and registry-side export surfaces
147
-
148
- If you want the broadest machine-readable census for these already-core runtime lanes, inspect:
149
-
150
- - `GET /v1/integration-matrix`
151
- - `GET /v1/telemetry`
152
- - `GET /v1/provenance`
153
- - `GET /v1/artifact-distribution`
154
- - `GET /v1/shared-signals`
155
- - `GET /v1/feature-control`
156
- - `GET /v1/adapter-certification`
157
- - `GET /v1/trust-portability-boundary`
158
- - `GET /v1/signed-audit-provenance`
159
-
160
- ## One-Line After Install
161
-
162
- If you only run two commands after install, use:
163
-
164
- - `xytara start-here`
165
- - `xytara first-run`
166
- - `xytara first-run --run-quote --account ACCOUNT_REF --pretty`
167
- - `xytara first-run --execute-with-credits --account ACCOUNT_REF --pretty`
168
- - `xytara release --summary`
169
-
170
- If you want the shortest machine-readable discovery path, inspect:
171
-
172
- - `GET /v1/providers`
173
- - `GET /v1/frameworks`
174
- - `GET /v1/protocols`
175
- - `GET /v1/integration-matrix`
176
- - `GET /v1/telemetry`
177
- - `GET /v1/provenance`
178
- - `GET /v1/adapter-certification`
179
- - `GET /v1/trust-portability-boundary`
180
- - `GET /v1/signed-audit-provenance`
181
-
182
- If you are working on shared evidence, inspect the operational receipt contract pack:
183
-
184
- - `buildOperationalReceiptContractPack()`
185
- - `summarizeOperationalReceiptContractPack()`
186
-
187
- If you are working on machine identity, inspect the registry contract pack:
188
-
189
- - `buildMachineIdentityRegistryContractPack()`
190
- - `summarizeMachineIdentityRegistryContractPack()`
191
-
192
- If you are working on crypto agility, inspect the matrix pack:
193
-
194
- - `buildCryptoAgilityMatrixPack()`
195
- - `summarizeCryptoAgilityMatrixPack()`
196
-
197
- If you are working on binding lifecycle, inspect the lifecycle pack:
198
-
199
- - `buildAuthorityBindingLifecycleContractPack()`
200
- - `summarizeAuthorityBindingLifecycleContractPack()`
201
-
202
- If you are working on public route policy, inspect the surface policy pack:
203
-
204
- - `buildPublicSurfacePolicyContractPack()`
205
- - `summarizePublicSurfacePolicyContractPack()`
206
-
207
- If you are working on offline recovery, inspect the recovery pack:
208
-
209
- - `buildOfflineVerifiabilityRecoveryContractPack()`
210
- - `summarizeOfflineVerifiabilityRecoveryContractPack()`
211
-
212
- If you are working on adapter certification, inspect the certification pack:
213
-
214
- - `buildAdapterCertificationContractPack()`
215
- - `summarizeAdapterCertificationContractPack()`
216
-
217
- If you are working on trust portability boundaries, inspect the boundary pack:
218
-
219
- - `buildTrustPortabilityBoundaryContractPack()`
220
- - `summarizeTrustPortabilityBoundaryContractPack()`
221
-
222
- If you are working on signed audit and provenance, inspect the audit/provenance pack:
223
-
224
- - `buildSignedAuditProvenanceContractPack()`
225
- - `summarizeSignedAuditProvenanceContractPack()`
226
-
227
- ## Start Here
228
-
229
- If you are new to the public stack, use this order:
230
-
231
- 1. read [START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/START_HERE.md)
232
- 2. run `node examples/quickstart.js`
233
- 3. run `npm run verify:all`
234
- 4. use [FINAL_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/FINAL_CONTRACT.md) and [SERVICE_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/SERVICE_CONTRACT.md) as the durable public contract
235
-
236
- If you are reading the GitHub repo and want deeper product context beyond the npm starter path, continue with:
237
-
238
- - [WHY_XYTARA_XOONYA.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/WHY_XYTARA_XOONYA.md)
239
- - [PARTNER_READY_PATH.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/PARTNER_READY_PATH.md)
240
-
241
- If you want one concrete cross-repo adoption story, start with:
242
-
243
- - [CARRIED_HANDOFF_DEMO.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/CARRIED_HANDOFF_DEMO.md)
244
-
245
- If you want the shortest neutral external-adoption bundle, continue with:
246
-
247
- - [PARTNER_READY_PATH.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/PARTNER_READY_PATH.md)
248
- - [PUBLIC_DEMO_SCRIPT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/PUBLIC_DEMO_SCRIPT.md)
249
- - [EXAMPLE_PATHS.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/EXAMPLE_PATHS.md)
250
- - `node examples/partner_launch_walkthrough.js`
251
-
252
- If you are building adapters, continue with:
253
-
254
- - [ADAPTER_START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/ADAPTER_START_HERE.md)
255
- - [ADAPTER_PROMOTION_START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/ADAPTER_PROMOTION_START_HERE.md)
256
- - [ADAPTER_PARTNER_PATH.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/ADAPTER_PARTNER_PATH.md)
257
- - [SOFT_LAUNCH_KIT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/SOFT_LAUNCH_KIT.md)
258
- - [OUTREACH_START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/OUTREACH_START_HERE.md)
259
- - [OUTREACH_MESSAGES.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/OUTREACH_MESSAGES.md)
260
- - [adapters/AUTHORING_GUIDE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/AUTHORING_GUIDE.md)
261
- - [adapters/ONBOARDING_POSTURE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/ONBOARDING_POSTURE.md)
262
- - [adapters/THIRD_PARTY_SUBMISSION_PROCESS.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/THIRD_PARTY_SUBMISSION_PROCESS.md)
263
-
264
- The fastest copy-and-adapt third-party starter now lives under:
265
-
266
- - `adapters/examples/minimal-third-party-execution-adapter.manifest.json`
267
- - `adapters/examples/minimal-third-party-execution-adapter.js`
268
- - `adapters/examples/minimal-third-party-execution-registration.record.json`
269
- - `adapters/examples/minimal-third-party-execution.certification-pack.json`
270
- - `adapters/examples/minimal-third-party-execution.submission-bundle.json`
271
- - `adapters/examples/langgraph-reference-execution-adapter.manifest.json`
272
- - `adapters/examples/langgraph-reference-execution-adapter.js`
273
- - `adapters/examples/langchain-reference-execution-adapter.manifest.json`
274
- - `adapters/examples/langchain-reference-execution-adapter.js`
275
-
276
- If you are wiring treasury, settlement, or payment activation, continue with:
277
-
278
- - [REAL_PAYMENT_SETUP.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/REAL_PAYMENT_SETUP.md)
279
- - [BSV_TERANODE_PLATFORM_DISCONTINUITY_RUNBOOK.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/BSV_TERANODE_PLATFORM_DISCONTINUITY_RUNBOOK.md)
280
-
281
- Production treasury and multi-rail payment activation are now centralized in `REAL_PAYMENT_SETUP.md` plus your private treasury source of truth outside the repos.
282
-
283
- If you want one private operator page that rolls up release posture, treasury landing, runtime activity, delivery, settlement readiness, and linked proof-facing health, use:
284
-
285
- - `GET /v1/business-cockpit`
286
- - `GET /v1/business-cockpit/summary`
287
- - `GET /business-cockpit`
288
-
289
- Those surfaces are private and are intended to be opened with the same operator bearer token used for other protected runtime views.
290
-
291
- If you are wiring external checkout or hosted funding paths, continue with:
292
-
293
- - [HUMAN_CHECKOUT_AND_RUNTIME_BRIDGE_PATTERN.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/HUMAN_CHECKOUT_AND_RUNTIME_BRIDGE_PATTERN.md)
294
- - [RUNTIME_BRIDGE_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/RUNTIME_BRIDGE_CONTRACT.md)
295
- - [HOSTED_CHECKOUT_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/HOSTED_CHECKOUT_CONTRACT.md)
296
- - [CHECKOUT_TO_CREDITS_AND_DISPATCH_PLAN.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/CHECKOUT_TO_CREDITS_AND_DISPATCH_PLAN.md)
297
-
298
- If you want the broader already-core runtime continuity layers, continue with:
299
-
300
- - [OPERATOR_START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/OPERATOR_START_HERE.md)
301
- - [GO_LIVE_OPERATOR_PACK.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/GO_LIVE_OPERATOR_PACK.md)
302
- - [PRODUCTION_MANUAL_CLOSEOUT_SEQUENCE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/PRODUCTION_MANUAL_CLOSEOUT_SEQUENCE.md)
303
-
304
- ## Production Path
305
-
306
- The intended production-facing default path is now:
307
-
308
- 1. discover a capability
309
- 2. preview or quote the transaction path
310
- 3. spend existing credits first when the caller prefers the reusable account path
311
- 4. fall back to direct machine payment when credits are not available or not preferred
312
- 5. execute through the default machine path
313
- 6. inspect the transaction-side result and lifecycle state
314
- 7. hand the result into `xoonya`
315
- 8. review and run the proof-side completion path
316
-
317
- The machine-facing execution surface now also supports a first-class reusable balance posture:
318
-
319
- - set `payment_preference: "credits_first"` on `POST /v1/commands/execute` when the caller wants to spend existing account credits before requesting a fresh payment
320
- - default spend posture is `open_spend`: if the funded caller can pay, `xytara` should spend and execute without extra runtime ceremony
321
- - bounded spend posture is optional and only applies when the caller intentionally uses an `agent_id` and/or `budget_id`
322
- - inspect account credit state with `GET /v1/economics/accounts/:account_id/credit-balance`
323
- - inspect deterministic usage metering state with `GET /v1/economics/accounts/:account_id/metering-summary`, `GET /v1/economics/accounts/:account_id/usage-meters`, and `GET /v1/economics/accounts/:account_id/usage-meters/:usage_meter_id`
324
- - expect reconciliation and operator-export surfaces to carry the same metering trail for audit visibility
325
- - export a canonical cross-repo economic handoff bundle with `POST /v1/economics/handoff-bundles/economic-consequence`
326
- - expect `POST /v1/transaction-center/result-packages/export` and result-package continuation export/prepare surfaces to auto-carry that same canonical economic bundle whenever the execution path spent credits and produced a deterministic usage meter
327
- - inspect pack-backed entitlement pools with `GET /v1/economics/accounts/:account_id/entitlements` and `GET /v1/economics/accounts/:account_id/entitlements/summary`
328
- - inspect low-balance and replenishment posture with `GET /v1/economics/accounts/:account_id/entitlements/replenishment-summary`
329
- - inspect one pool's replenishment view with `GET /v1/economics/accounts/:account_id/entitlements/:entitlement_id/replenishment-view`
330
- - inspect effective account spend posture with `GET /v1/economics/accounts/:account_id/policy-pack`
331
- - inspect effective agent spend posture with `GET /v1/economics/accounts/:account_id/agents/:agent_id/policy-view`
332
- - preflight a proposed credit spend with `POST /v1/economics/rails/credits/preview-spend`
333
- - record explicit bounded credit consumption with `POST /v1/economics/rails/credits/consume`
334
- - issue externally verified top-up grants with `POST /v1/credit-bridge/grants`
335
- - inspect externally issued grants with `GET /v1/credit-bridge/grants` and `GET /v1/credit-bridge/grants/:grant_id`
336
- - discover reusable funding posture through `GET /v1/credit-packs`, `GET /v1/credit-packs/summary`, and `GET /v1/credit-pack?ref=<pack_id>`
337
- - external grant callers can now fund a named public pack such as `credits.agent`, and `xytara` will validate and record that pack identity directly
338
-
339
- The SDK now exposes the same posture directly for agent callers:
340
-
341
- - `client.getCreditPackSummary()`
342
- - `client.getCreditBalance(accountId)`
343
- - `client.previewUsageMetering({ account_id, task_ref?, workflow_ref?, units? })`
344
- - `client.getUsageMeteringSummary(accountId)`
345
- - `client.listUsageMeters(accountId)`
346
- - `client.getUsageMeter(usageMeterId, accountId?)`
347
- - `client.exportEconomicConsequenceHandoffBundle({ account_id, usage_meter_id, credit_spend_id, meter_profile_ref? })`
348
- - `client.listEntitlements(accountId)`
349
- - `client.getEntitlementSummary(accountId)`
350
- - `client.getEntitlement(entitlementId, accountId?)`
351
- - `client.getEntitlementReplenishmentSummary(accountId)`
352
- - `client.getEntitlementReplenishmentView(entitlementId, accountId?)`
353
- - `client.updateEntitlementReplenishmentPreference(entitlementId, payload, accountId?)`
354
- - `client.previewCreditSpend({ account_id, task_ref, units, agent_id?, budget_id? })`
355
- - `client.getCreditSpendPolicyPack(accountId)`
356
- - `client.getAgentCreditSpendPolicyView(agentId, accountId?)`
357
- - `client.executeWithCreditsFirst(payload, options?)`
358
-
359
- The runtime now also supports a bounded delegated spend path for repeat-use automation:
360
-
361
- - issue a spend credential through `POST /v1/account-auth/spend-credentials`
362
- - use that credential as `authorization: Bearer <spend_credential>`
363
- - optionally bind the credential to a `pack_id` or `entitlement_id` when spend should stay inside one value pool
364
- - execute through the same `credits_first` path without sharing broad operator secrets
365
- - revoke it through `POST /v1/account-auth/spend-credentials/:credential_id/revoke`
366
-
367
- SDK helpers now include:
368
-
369
- - `client.createSpendCredential(payload, { bearerToken })`
370
- - `client.listSpendCredentials(filters?, { bearerToken? })`
371
- - `client.getSpendCredential(credentialId, { bearerToken? })`
372
- - `client.revokeSpendCredential(credentialId, payload, { bearerToken })`
373
- - `client.executeWithSpendCredential(payload, { spendToken })`
374
-
375
- This keeps one-off usage and repeat usage on the same public spine:
376
-
377
- - direct pay when the caller is using the stack once
378
- - credit balance when the caller is already funded and wants low-friction repeat execution
379
- - optional agent and budget controls can still bound that spend without changing the execution surface
380
-
381
- It also keeps the external funding boundary clean:
382
-
383
- - an external merchant-facing system can verify a purchase and issue a bounded credit grant into `xytara`
384
- - `xytara` records the granted value and consumes it during later runtime operations
385
- - the runtime does not need to absorb provider-specific checkout semantics to support repeat usage
386
- - in production, `POST /v1/credit-bridge/grants` should normally be protected with `XYTARA_CREDIT_BRIDGE_BEARER_TOKEN`
387
-
388
- The first external checkout convenience path now follows a parallel narrow route:
389
-
390
- 1. create hosted purchase intent
391
- 2. create checkout session
392
- 3. normalize payment success
393
- 4. issue credits or entitlement
394
- 5. dispatch through the runtime path when needed
395
- 6. converge back into the same `xytara` and `xoonya` spine
396
-
397
- The first direct hosted execution path now also has a public runtime dispatch surface:
398
-
399
- - `POST /v1/runtime-bridge/dispatch`
400
- - `GET /v1/runtime-bridge/dispatches`
401
- - `GET /v1/runtime-bridge/dispatches/:request_id`
402
-
403
- The hosted payment side is intentionally asymmetric:
404
-
405
- - pay-in should be simple and fast
406
- - execution and delivery should follow immediately after valid payment
407
- - refund or reversal requests should enter review first
408
- - no autonomous payout path should exist outside explicit operator review and completion
409
-
410
- The operator shell now also carries hosted checkout visibility so purchase, dispatch, and refund-review load can be monitored from the same public control surface.
411
-
412
- The rest of this README explains the full surface area and milestone trail, but the public starting posture should now be understandable from that one default path.
413
-
414
- For release-grade adoption posture, inspect:
415
-
416
- - `GET /v1/release-pack`
417
- - `GET /v1/release-pack/summary`
418
- - `GET /v1/release-pack/comparison`
419
- - `GET /v1/release-pack/comparison/summary`
420
- - `GET /v1/release-pack/adoption`
421
- - `GET /v1/release-pack/adoption/summary`
422
- - `GET /v1/release-pack/scenarios`
423
- - `GET /v1/release-pack/scenarios/summary`
424
- - `GET /v1/release-pack/launch`
425
- - `GET /v1/release-pack/launch/summary`
426
- - `GET /v1/release-manifest`
427
- - `GET /v1/release-manifest/summary`
428
- - `GET /v1/release-notes`
429
- - `GET /v1/release-notes/summary`
430
- - `GET /v1/release-center`
431
- - `GET /v1/release-center/summary`
432
- - `GET /v1/release-history`
433
- - `GET /v1/release-history/summary`
434
- - `GET /v1/adapter-pack`
435
- - `GET /v1/adapter-pack/summary`
436
- - `GET /v1/adapter-promotion`
437
- - `GET /v1/adapter-promotion/summary`
438
- - `GET /v1/adapter-partners`
439
- - `GET /v1/adapter-partners/summary`
440
- - `GET /v1/soft-launch`
441
- - `GET /v1/soft-launch/summary`
442
- - `GET /v1/outreach-copy`
443
- - `GET /v1/outreach-copy/summary`
444
- - `GET /v1/outreach-targets`
445
- - `GET /v1/outreach-targets/summary`
446
- - `GET /v1/outreach-messages`
447
- - `GET /v1/outreach-messages/summary`
448
- - `GET /v1/phases`
449
- - `GET /v1/phases/summary`
450
- - `GET /v1/phases/phase-1`
451
- - `GET /v1/phases/phase-1/summary`
452
- - `GET /v1/publish-plan`
453
- - `GET /v1/publish-plan/summary`
454
- - `GET /v1/ecosystem-entry`
455
- - `GET /v1/ecosystem-entry/summary`
456
- - `GET /v1/launch-narrative`
457
- - `GET /v1/launch-narrative/summary`
458
- - `GET /v1/outreach-proof`
459
- - `GET /v1/outreach-proof/summary`
460
- - `GET /v1/announcement-pack`
461
- - `GET /v1/announcement-pack/summary`
462
- - `GET /v1/release-candidate`
463
- - `GET /v1/release-candidate/summary`
464
- - `xytara-release --summary`
465
- - `xytara-release --comparison --summary`
466
- - `xytara-release --adoption --summary`
467
- - `xytara-release --scenarios --summary`
468
- - `xytara-release --launch --summary`
469
- - `xytara-release --manifest --summary`
470
- - `xytara-release --notes --summary`
471
- - `xytara-release --center --summary`
472
- - `xytara-release --history --summary`
473
- - `xytara-release --adapters --summary`
474
- - `xytara-release --adapter-promotion --summary`
475
- - `xytara-release --adapter-partners --summary`
476
- - `xytara-release --soft-launch --summary`
477
- - `xytara-release --outreach-copy --summary`
478
- - `xytara-release --outreach-targets --summary`
479
- - `xytara-release --outreach-messages --summary`
480
- - `xytara-release --phases --summary`
481
- - `xytara-release --phase-1 --summary`
482
- - `xytara-release --ecosystem --summary`
483
- - `xytara-release --narrative --summary`
484
- - `xytara-release --outreach-proof --summary`
485
- - `xytara-release --announcement --summary`
486
- - `xytara-release --candidate --summary`
487
-
488
- These surfaces package the current machine-commerce value story, first-contact CLI path, default transaction posture, catalog/task-pack coverage, credit-pack posture, and integration/settlement breadth into one machine-readable launch boundary.
489
-
490
- ## Commerce Loop
491
-
492
- The public product loop is:
493
-
494
- 1. discover
495
- 2. quote
496
- 3. pay
497
- 4. execute
498
- 5. deliver
499
- 6. inspect
500
- 7. prove
501
-
502
- The package and service surfaces both follow that model.
503
-
504
- The current built-in catalog now covers a broader first-party `1.4.0` kernel than the original narrow seed, including:
505
-
506
- - trust and receipt validation/handoff tasks
507
- - runtime consequence tasks
508
- - jobs, credits, and policy tasks
509
- - first-party `a2a` negotiation and commit tasks
510
- - first-party `a2c` session and task-pack preview tasks
511
- - identity attestation and registry-link tasks
512
- - registry and anchoring tasks
513
- - discovery, admission, and settlement tasks
514
- - an initial built-in `mcp` adapter task
515
-
516
- The current restoration phase also starts carrying grouped public workflows for:
517
-
518
- - `a2a` settlement negotiation
519
- - `a2c` tooling/session flow
520
- - identity registry plus anchoring flow
521
- - registry pack bundling plus anchoring flow
522
-
523
- The current built-in settlement posture also now reflects the canonical first-party center of gravity across:
524
-
525
- - `ethereum_evm`
526
- - `bsv_teranode`
527
- - `solana`
528
- - `proton_xpr`
529
- - `antelope_eosio`
530
-
531
- The economic artifact posture is also now more explicit across the default machine loop:
532
-
533
- - quotes carry normalized `payment`, `settlement`, and `treasury` state
534
- - executed transactions and receipts carry the same normalized economic objects
535
- - payment-ledger entries preserve linked payment / settlement / treasury outcomes
536
- - the default first-party economic path is easier to inspect without provider-shaped logic
537
-
538
- The same artifacts now also expose a normalized `default_path` object so the bundled economic center of gravity is visible as data instead of being inferred indirectly.
539
-
540
- The package and service also expose a default transaction center surface so the out-of-the-box path is easier to inspect directly:
541
-
542
- - default protocol lane: `mcp`
543
- - default payment protocol: `x402`
544
- - default settlement center: built-in chain settlement with `bsv_teranode` as the native default across the canonical bundled settlement modes
545
- - default treasury landing posture: account treasury destination by settlement mode
546
-
547
- That same default center is also reflected in direct helper paths for default MCP usage, so the default path can be previewed or quoted without repeating the full integration-selection story each time.
548
-
549
- The `1.6.0` convergence line starts broadening that same default path into grouped first-party entry packs:
550
-
551
- - `default.mcp.tool.invoke`
552
- - `default.a2c.tooling.run`
553
- - `default.identity.anchor.run`
554
-
555
- These default packs are intended to make the public machine loop easier to consume as grouped first-party paths instead of only as low-level primitives.
556
-
557
- The package and service now also expose:
558
-
559
- - default transaction economics visibility
560
- - default transaction task-pack catalog, summary, and detail routes
561
- - direct SDK helpers for default task-pack preview, quote, and invoke
562
-
563
- The next `1.6.0` carry also adds guided default loops on top of those packs:
564
-
565
- - default loop catalog and detail routes
566
- - direct loop-run service surface
567
- - SDK helpers that return bundled result-set, linked-record, activity, and economics summaries together
568
-
569
- That means the first-party path is easier to both run and inspect without manually stitching together monitor, receipt, delivery, and payment-ledger helpers after execution.
570
-
571
- The current `1.7.0` line starts widening that surface into real grouped transaction classes:
572
-
573
- - transaction-class pack catalog, summary, and detail routes
574
- - grouped transaction-class run routes for first-party commerce classes
575
- - proof-handoff summaries that make the next step into `xoonya` more obvious from transaction outputs
576
-
577
- This is the first step beyond “clear default loop” toward “broader useful machine-commerce classes plus clearer commerce-to-proof follow-through.”
578
-
579
- The current `1.8.0` line starts filling a thinner part of the interaction spine before committed execution:
580
-
581
- - grouped pre-commit pack catalog, summary, and detail routes
582
- - grouped pre-commit run routes for negotiation, admission, and commit-readiness posture
583
- - readiness summaries that make the next committed transaction surface more explicit
584
-
585
- This is intended to make the protocol-entry to committed-transaction transition feel more like one composable machine spine instead of a set of disconnected route families.
586
-
587
- The same `1.8.0` line also starts exposing grouped interaction spine paths that compose:
588
-
589
- - pre-commit readiness
590
- - committed execution
591
- - proof-aware handoff posture
592
-
593
- as one clearer cross-layer machine path instead of making callers stitch the layers together manually.
594
-
595
- The current `1.9.0` line starts hardening the output side of that spine into cleaner extension seams:
596
-
597
- - interaction result-package catalog, summary, and detail routes
598
- - direct result-package run surfaces derived from grouped spine paths
599
- - seam summaries that classify execution/consequence, payment/settlement/treasury, and proof-handoff carry together
600
- - result-package export surfaces that produce a portable handoff bundle for proof-side follow-through
601
-
602
- This is intended to make grouped spine outputs easier to treat as stable artifacts and future adapter-ready boundaries instead of one-off route responses.
603
-
604
- The current `1.10.0` line starts building on that by exposing reusable continuation templates on top of result packages:
605
-
606
- - result-package continuation catalog, summary, and detail routes
607
- - direct continuation run surfaces that preserve the default next proof path
608
- - continuation preparation surfaces that emit proof-ready request templates
609
- - continuation preparation summary surfaces that expose the stable prepared-artifact view directly
610
- - continuation summaries that make the default transaction-to-proof bridge explicit instead of inferred
611
- - prepared continuation artifacts that classify the preserved execution, economic, and proof-facing context that survives into proof-native follow-through
612
- - extension-seam summaries that distinguish stable carry from future adapter-ready boundary points on that durable path
613
- - reusable-default summaries that expose the stable prepared artifact as a clearer default follow-through pattern
614
- - reusable-default template surfaces that package that same default path into a direct proof-side review request
615
- - extension-template surfaces that turn the durable transaction-side artifact into a reusable proof-side extension-review request
616
-
617
- This is intended to make the public stack easier to compose after grouped execution, not just easier to inspect.
618
-
619
- The current `1.14.0` line starts hardening that reusable path into a clearer public composition contract:
620
-
621
- - prepared-artifact composition-contract summaries
622
- - composition-contract template surfaces for proof-side contract review
623
- - compact composition-contract bundles for direct transaction-side contract reuse
624
- - clearer public contract ids across the reusable-default continuation path
625
-
626
- This is intended to make the transaction-side continuation path easier to treat as a stable public contract instead of only a strong reusable default.
627
-
628
- The current `1.15.0` line starts turning that same contract path into a clearer adapter-ready public bridge:
629
-
630
- - prepared-artifact bridge summaries on top of the composition-contract continuation path
631
- - bridge template surfaces that package the next proof-side review request directly
632
- - compact bridge bundles for direct transaction-side bridge reuse
633
- - compact bridge-carry surfaces for direct transaction-side bridge reuse
634
-
635
- This is intended to make the transaction-side continuation path easier to hand across a stable adapter-ready bridge instead of treating bridge preparation as an implicit follow-on concern.
636
-
637
- The current `1.16.0` line starts turning that bridge into a clearer stable public handoff contract:
638
-
639
- - prepared-artifact handoff summaries on top of the bridge path
640
- - direct handoff template surfaces for proof-side handoff continuity review
641
- - compact handoff bundles for direct transaction-side handoff reuse
642
- - compact handoff-carry surfaces for direct transaction-side handoff reuse
643
-
644
- This is intended to make the transaction-side continuation path easier to treat as a stable handoff contract instead of only a well-described bridge.
645
-
646
- The current `1.17.0` line starts turning that stable handoff contract into a clearer adapter-consumable handoff surface:
647
-
648
- - adapter-consumable handoff-surface summaries on top of prepared handoff artifacts
649
- - direct handoff-surface template routes for proof-side intake review
650
- - compact handoff-surface bundles for direct adapter-facing reuse
651
- - clearer adapter-facing handoff-surface ids and stable consumable carry
652
-
653
- This is intended to make the transaction-side continuation path easier to consume directly as a stable adapter-facing handoff surface instead of only a well-described handoff contract.
654
-
655
- The current `1.18.0` line starts turning that adapter-consumable handoff surface into a clearer adapter-usable handoff package:
656
-
657
- - adapter-usable handoff-package summaries on top of prepared handoff artifacts
658
- - compact handoff-package bundles for direct adapter-facing use
659
- - default handoff-package summaries for the next proof-side follow-through
660
- - clearer adapter-facing handoff-package ids and stable usable carry
661
-
662
- This is intended to make the transaction-side continuation path easier to use directly as a stable public handoff package instead of only a surface that still needs extra glue logic.
663
-
664
- The current `1.19.0` line starts turning that adapter-usable handoff package into a clearer adapter-ready execution package:
665
-
666
- - execution-package summaries on top of the default handoff-package path
667
- - compact execution-package bundles for direct adapter-facing execution posture
668
- - default execution-package summaries for the next proof-side execution run posture
669
- - clearer execution-package ids and stable execution-ready carry
670
-
671
- This is intended to make the transaction-side continuation path easier to execute against directly as a stable public package instead of only a package that still needs execution glue.
672
-
673
- The current `1.20.0` line starts turning that adapter-ready execution package into a clearer adapter-operable execution contract:
674
-
675
- - execution-contract summaries on top of the default execution-package path
676
- - compact execution-contract bundles for direct adapter-facing operation posture
677
- - default execution-contract summaries for the next proof-side execution-contract run posture
678
- - clearer execution-contract ids and stable operable carry
679
-
680
- This is intended to make the transaction-side continuation path easier to operate against repeatedly as a stable public contract instead of only a package that is execution-ready by posture.
681
-
682
- The current `1.21.0` line starts turning that adapter-operable execution contract into a clearer adapter-stable operating contract:
683
-
684
- - operating-contract summaries on top of the default execution-contract path
685
- - compact operating-contract bundles for direct adapter-facing stable operation posture
686
- - default operating-contract summaries for the next proof-side operating-contract run posture
687
- - clearer operating-contract ids and stable recurring operating carry
688
-
689
- This is intended to make the transaction-side continuation path easier to depend on repeatedly as a durable public operating contract instead of only a contract that is operable in the moment.
690
-
691
- The current `1.22.0` line starts turning that adapter-stable operating contract into a clearer adapter-reliable operating interface:
692
-
693
- - operating-interface summaries on top of the default operating-contract path
694
- - compact operating-interface bundles for direct adapter-facing reliable interface posture
695
- - default operating-interface summaries for the next proof-side operating-interface run posture
696
- - clearer operating-interface ids and stable reliable interface carry
697
-
698
- This is intended to make the transaction-side continuation path easier to rely on operationally as a durable public interface instead of only a stable operating contract shape.
699
-
700
- The current `1.23.0` line starts turning that adapter-reliable operating interface into a clearer adapter-integrable operating path:
701
-
702
- - operating-integration summaries on top of the default operating-interface path
703
- - compact operating-integration bundles for direct adapter-facing integration posture
704
- - default operating-integration summaries for the next proof-side operating-integration run posture
705
- - clearer operating-integration ids and stable integrable carry
706
-
707
- This is intended to make the transaction-side continuation path easier to plug into adapters directly as a durable public operating path instead of only a reliable interface shape.
708
-
709
- The current `1.24.0` line starts turning that adapter-integrable operating path into a clearer adapter-ready default path:
710
-
711
- - operating-path summaries on top of the default operating-integration path
712
- - compact operating-path bundles for direct adapter-facing default-path posture
713
- - default operating-path summaries for the next proof-side operating-path run posture
714
- - clearer operating-path ids and stable default-path carry
715
-
716
- This is intended to make the transaction-side continuation path easier to use as the obvious first public adapter path instead of only a path that is integrable with a little extra coordination.
717
-
718
- The current `1.25.0` line starts turning that adapter-ready default path into a clearer adapter-complete default path:
719
-
720
- - complete-default-path summaries on top of the default operating-path path
721
- - compact complete-default-path bundles for direct adapter-facing complete-path posture
722
- - default complete-default-path summaries for the next proof-side complete-default-path run posture
723
- - clearer complete-default-path ids and stable complete-path carry
724
-
725
- This is intended to make the transaction-side continuation path easier to adopt as the complete public default path an outside builder can use without needing private interpretation.
726
-
727
- The current `1.26.0` line finalizes that public shape into a cleaner production-ready package:
728
-
729
- - a publishable [START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/START_HERE.md) onboarding path
730
- - clearer top-level README entry points for the default production flow
731
- - publishable contract and terminology docs carried in the package tarball
732
- - naming cleanup that keeps the public story anchored to `xytara` and `xoonya`
733
-
734
- This is intended to make the public transaction-side package feel like a finished production-facing product instead of a strong stack that still assumes milestone-history context.
735
-
736
- ## Package Surface
737
-
738
- The SDK is broad, but it stays organized into a few repeatable families instead of one-off surfaces.
739
-
740
- The main families are:
741
-
742
- - discovery and catalog
743
- - schemas, templates, and validation
744
- - quotes, previews, execution, and wait flows
745
- - records, operations, and operator summaries
746
- - inspection, reconciliation, and export helpers
747
-
748
- The intended usage style is simple:
749
-
750
- - use raw getters when you need exact records
751
- - use summary/list helpers when you need compact high-signal state
752
-
753
- ## Adapter Model
754
-
755
- Adapter support is now a first-class public surface.
756
-
757
- Core contract files:
758
-
759
- - [adapter-manifest.schema.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/adapter-manifest.schema.json)
760
- - [integration-registration-record.schema.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/integration-registration-record.schema.json)
761
- - [integration-certification-pack.schema.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/integration-certification-pack.schema.json)
762
- - [integration-submission-bundle.schema.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/integration-submission-bundle.schema.json)
763
- - [integration-submission-bundle-set.schema.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/integration-submission-bundle-set.schema.json)
764
- - [interfaces.js](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/interfaces.js)
765
-
766
- Builder-facing docs:
767
-
768
- - [AUTHORING_GUIDE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/AUTHORING_GUIDE.md)
769
- - [THIRD_PARTY_SUBMISSION_PROCESS.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/THIRD_PARTY_SUBMISSION_PROCESS.md)
770
- - [ONBOARDING_POSTURE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/ONBOARDING_POSTURE.md)
771
-
772
- Reference examples:
773
-
774
- - built-in class examples:
775
- [example-execution-adapter.manifest.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/examples/example-execution-adapter.manifest.json),
776
- [example-execution-adapter.js](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/examples/example-execution-adapter.js),
777
- [example-settlement-adapter.manifest.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/examples/example-settlement-adapter.manifest.json),
778
- [example-settlement-adapter.js](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/examples/example-settlement-adapter.js)
779
- - staged third-party artifact examples:
780
- protocol, identity, and settlement registration/certification/submission-bundle examples live under [adapters/examples](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/adapters/examples)
781
-
782
- Current adapter tooling exposes:
783
-
784
- - `ADAPTER_INTERFACE_VERSION`
785
- - `validateAdapterImplementation(...)`
786
-
787
- Initial certification starts with:
788
-
789
- ```bash
790
- npm run verify:adapters
791
- ```
792
-
793
- The LangGraph and LangChain reference adapters are local contract adapters. They normalize framework-style graph, chain, checkpoint, trace, and context payloads and emit proof-compatible execution facts. They do not claim live external framework-provider execution.
794
-
795
- The current seed freezes the starter contract for:
796
-
797
- - adapter identity
798
- - adapter class
799
- - registration posture
800
- - certification posture
801
- - compatibility
802
- - health contract
803
- - idempotency contract
804
- - failure contract
805
- - proof contract
806
-
807
- The current onboarding path is now documented for third parties:
808
-
809
- 1. choose adapter class
810
- 2. build manifest against the schema
811
- 3. implement the interface contract
812
- 4. certify locally with `npm run verify:adapters`
813
- 5. declare registration and certification posture
814
- 6. promote through explicit runtime registration
815
-
816
- Third-party integrations scale through one stable pattern:
817
-
818
- - manifest declares registration posture
819
- - manifest declares certification posture
820
- - certification runs locally first
821
- - promotion produces a normalized registration record
822
- - runtime registration remains an explicit product action
823
- - discovery can later surface maturity and trust without changing runtime contracts
824
-
825
- Discovery can represent non-bundled staged examples in the same normalized view:
826
-
827
- - built-in integrations can appear as `unregistered` but production-default
828
- - staged third-party integrations can appear as `staging_registered`
829
- - registration state stays separate from proof and commerce semantics
830
-
831
- The registry model now also has an explicit ingestion path:
832
-
833
- - adapter manifest defines the adapter contract
834
- - registration record defines promotion state
835
- - certification pack defines submitted verification evidence
836
- - submission bundle groups the reusable submission artifact
837
- - registry ingestion helper normalizes the runnable integration view
838
-
839
- The package surface also supports registry snapshot/export helpers, so multiple imported integrations can be packaged together without inventing a one-off format every time.
840
-
841
- Submission bundles can be exported back into a bundle set and then turned into a normalized registry snapshot.
842
-
843
- The same artifact model also produces thin review summaries:
844
-
845
- - submission bundles can be summarized for reviewer/operator inspection
846
- - submission bundle sets can be summarized as one staged review package
847
- - registry snapshots can be summarized as a review-ready state report
848
-
849
- That keeps inspection aligned with the real integration artifacts instead of inventing a parallel control-plane format.
850
-
851
- The intended posture is:
852
-
853
- - built-in certified integrations can be production-default
854
- - staged third-party integrations can be discoverable and reviewable
855
- - staged third-party integrations should normally require explicit selection
856
- - discoverable does not mean default
857
-
858
- The promotion-readiness layer now makes that posture explicit as review data:
859
-
860
- - review-ready means an integration is staged and inspectable
861
- - default-eligible means it is allowed to participate in default selection
862
- - production-default-ready means its certification, maturity, bundled posture, and selection posture all line up
863
- - blockers are returned as data instead of being left implicit
864
-
865
- That distinction matters as the registry grows.
866
-
867
- The promotion-action preview layer now builds on top of that readiness data without introducing mutation:
868
-
869
- - action previews stay read-only
870
- - current posture and resulting posture are both visible
871
- - requested action validity is explicit
872
- - blockers and blocker categories remain inspectable as data
873
- - the preview layer explains what would change before any future control-plane work exists
874
-
875
- There is also a small repo-local registry CLI for reviewer/operator use when working from a cloned `xytara` repository:
876
-
877
- - `node scripts/registry_cli.js validate-bundle --example protocol`
878
- - `node scripts/registry_cli.js validate-bundle --example identity`
879
- - `node scripts/registry_cli.js validate-bundle --example settlement`
880
- - `node scripts/registry_cli.js export-bundle-set`
881
- - `node scripts/registry_cli.js export-snapshot`
882
- - `node scripts/registry_cli.js review-bundle --example protocol`
883
- - `node scripts/registry_cli.js review-bundle --example identity`
884
- - `node scripts/registry_cli.js review-bundle-set`
885
- - `node scripts/registry_cli.js review-snapshot`
886
- - `node scripts/registry_cli.js promotion-readiness --integration partner.protocol.acme_mcp`
887
- - `node scripts/registry_cli.js promotion-action-preview --integration partner.protocol.acme_mcp --action complete_certification`
888
- - `node scripts/registry_cli.js promotion-action-set --integration partner.protocol.acme_mcp`
889
- - `node scripts/registry_cli.js promotion-action-set-summary --source third_party_example --bundled false`
890
-
891
- ## Integration Selection
892
-
893
- `xytara` now treats integration selection as an explicit part of the commerce contract.
894
-
895
- Callers can provide:
896
-
897
- - `integration_id`
898
- - `integration_ids`
899
- - `integration_context`
900
- - `protocol`
901
- - `payment_protocol`
902
- - settlement preferences
903
-
904
- Selection precedence is:
905
-
906
- 1. validate explicitly requested integrations
907
- 2. resolve protocol and payment protocol hints
908
- 3. resolve task-backed execution and identity integrations
909
- 4. resolve settlement integration from the requested settlement mode
910
- 5. reject the request if an explicit integration is unknown or incompatible
911
-
912
- This keeps the model stable as more integrations are added:
913
-
914
- - explicit overrides must be valid
915
- - defaults remain predictable
916
- - defaults only come from integrations that explicitly opt into default selection
917
- - explicit requests only constrain the relevant adapter class
918
- - protocol and settlement translation never redefine commerce semantics
919
-
920
- ## Quickstart
921
-
922
- Run:
923
-
924
- ```bash
925
- node examples/quickstart.js
926
- ```
927
-
928
- For a direct one-line machine run against a live service, use the bundled CLI:
929
-
930
- ```bash
931
- xytara first-run --run-quote --account ACCOUNT_REF --pretty
932
- ```
933
-
934
- The quickstart exercises:
935
-
936
- - health and catalog
937
- - discovery summaries and filters
938
- - restored `a2a`, `a2c`, and identity catalog families
939
- - staged-vs-default integration posture
940
- - submission bundle-set export
941
- - pricing, schema, and template access
942
- - validation
943
- - quote and execution flows
944
- - dedicated `mcp` invocation flow
945
- - named `a2a` negotiation and commit lanes
946
- - named `a2c` session and pack-preview lanes
947
- - named identity attestation preview and registry-link lanes
948
- - named registry-pack bundle and anchoring-pack preview lanes
949
- - grouped `a2a`, `a2c`, identity-anchor, and registry-pack-anchor convenience flows
950
- - named runtime, admission, registry, and anchoring task lanes
951
- - named trust and receipt-handoff lanes
952
- - lifecycle and operator helpers
953
- - service-backed client usage
954
-
955
- ## Service Surface
956
-
957
- Run:
958
-
959
- ```bash
960
- npm start
961
- ```
962
-
963
- Then in another shell:
964
-
965
- ```bash
966
- curl http://127.0.0.1:4320/v1/catalog/summary
967
- curl http://127.0.0.1:4320/v1/operations/dashboard
968
- curl http://127.0.0.1:4320/v1/operations/attention-records
969
- curl -X POST http://127.0.0.1:4320/v1/trust/handoffs/emit ^
970
- -H "content-type: application/json" ^
971
- -H "authorization: Bearer demo-api-key" ^
972
- -d "{\"subject_id\":\"subject-1\",\"execution_ref\":\"exec-1\"}"
973
- curl -X POST http://127.0.0.1:4320/v1/admission/preview ^
974
- -H "content-type: application/json" ^
975
- -H "authorization: Bearer demo-api-key" ^
976
- -d "{\"source_zone_id\":\"zone-a\",\"target_zone_id\":\"zone-b\"}"
977
- curl -X POST http://127.0.0.1:4320/v1/a2a/negotiate ^
978
- -H "content-type: application/json" ^
979
- -H "authorization: Bearer demo-api-key" ^
980
- -d "{\"counterparty_agent_id\":\"agent-counterparty-1\",\"task_pack_ref\":\"pack.a2a.demo\",\"negotiation_mode\":\"quote_then_commit\"}"
981
- curl -X POST http://127.0.0.1:4320/v1/a2c/packs/preview ^
982
- -H "content-type: application/json" ^
983
- -H "authorization: Bearer demo-api-key" ^
984
- -d "{\"agent_id\":\"agent-demo\",\"pack_ref\":\"pack.tools.research\"}"
985
- curl -X POST http://127.0.0.1:4320/v1/identity/attest/preview ^
986
- -H "content-type: application/json" ^
987
- -H "authorization: Bearer demo-api-key" ^
988
- -d "{\"subject_id\":\"subject-identity-1\",\"registry_scope\":\"registry.identity.default\"}"
989
- curl -X POST http://127.0.0.1:4320/v1/registry/packs/bundle ^
990
- -H "content-type: application/json" ^
991
- -H "authorization: Bearer demo-api-key" ^
992
- -d "{\"pack_ref\":\"pack.registry.identity\",\"subject_ids\":[\"subject-identity-1\",\"subject-identity-2\"]}"
993
- curl -X POST http://127.0.0.1:4320/v1/a2a/flows/settlement ^
994
- -H "content-type: application/json" ^
995
- -H "authorization: Bearer demo-api-key" ^
996
- -d "{\"counterparty_agent_id\":\"agent-counterparty-1\",\"task_pack_ref\":\"pack.a2a.demo\",\"negotiation_mode\":\"quote_then_commit\",\"negotiation_id\":\"negotiation-flow-1\",\"intent_id\":\"intent-a2a-flow-1\"}"
997
- curl -X POST http://127.0.0.1:4320/v1/identity/flows/anchor ^
998
- -H "content-type: application/json" ^
999
- -H "authorization: Bearer demo-api-key" ^
1000
- -d "{\"subject_id\":\"subject-identity-1\",\"registry_scope\":\"registry.identity.default\",\"record_type\":\"identity_attestation\",\"registry_record_id\":\"registry-record-identity-1\",\"commitment_hash\":\"commitment-identity-1\"}"
1001
- curl -X POST http://127.0.0.1:4320/v1/mcp/tools/invoke ^
1002
- -H "content-type: application/json" ^
1003
- -H "authorization: Bearer demo-api-key" ^
1004
- -d "{\"tool_name\":\"zones.lookup\",\"arguments\":{\"zone_id\":\"zone-1\"}}"
1005
- curl -X POST http://127.0.0.1:4320/v1/payment-quotes ^
1006
- -H "content-type: application/json" ^
1007
- -d "{\"command\":\"quickstart\",\"task_ref\":\"trust.verify\",\"body\":{\"subject_id\":\"subject-1\"}}"
1008
- ```
1009
-
1010
- Environment example:
1011
-
1012
- - [`.env.example`](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/.env.example)
1013
-
1014
- Production payment note:
1015
-
1016
- - `XYTARA_PAYMENT_VERIFICATION_MODE` defaults to `local_signed` (verifiable signed payment acceptance); `presence` must be opted into explicitly and only accepts plain header presence for local development
1017
- - operator write surfaces (`/v1/economics/*` ledger mutations, `/v1/agent-accounts`, `/v1/operator-shell/admin-pack`, `/v1/credit-bridge/grants`, business cockpit) fail closed with `operator_auth_not_configured` until `XYTARA_ACCOUNT_AUTH_BEARER_TOKEN` and `XYTARA_CREDIT_BRIDGE_BEARER_TOKEN` are set; send `Authorization: Bearer <token>`; query-string tokens are not accepted
1018
- - provide buyer wallet verification material through `XYTARA_WALLET_REGISTRY_JSON` or `XYTARA_WALLET_REGISTRY_PATH`
1019
- - set `XYTARA_TREASURY_DESTINATION_ID` and related treasury env vars so accepted payments land in your merchant treasury posture instead of the default local account placeholder
1020
- - built-in `x402` is the admission lane; real external payout/custody still depends on the payment rail and treasury destination you configure behind that lane
1021
- - for native BSV/Teranode live follow-through, set `XYTARA_BSV_TERANODE_SETTLEMENT_RUNTIME_MODE` to `observe` or `arc`
1022
- - use `XYTARA_BSV_ARC_RPC_URL` plus optional ARC RPC auth envs when the live runtime needs ARC submission; legacy `XYTARA_BSV_TERANODE_RPC_*` aliases remain accepted
1023
- - use `XYTARA_BSV_TERANODE_OBSERVER_URL` if you want to override the default live observer base
1024
-
1025
- Primary service routes:
1026
-
1027
- - `GET /health`
1028
- - `GET /v1/catalog`
1029
- - `GET /v1/catalog/summary`
1030
- - `GET /v1/catalog/task?ref=<task_ref_or_alias>`
1031
- - `GET /v1/catalog/workflows`
1032
- - `GET /v1/catalog/workflow?ref=<workflow_ref_or_alias>`
1033
- - `GET /v1/integrations`
1034
- - `GET /v1/integrations/summary`
1035
- - `GET /v1/integrations/classes`
1036
- - `GET /v1/integrations/protocols`
1037
- - `GET /v1/integrations/settlement-modes`
1038
- - `GET /v1/integrations/promotion-readiness`
1039
- - `GET /v1/integrations/:integration_id/promotion-readiness`
1040
- - `GET /v1/integrations/promotion-actions`
1041
- - `GET /v1/integrations/:integration_id/promotion-actions`
1042
- - `POST /v1/integrations/promotion-actions/preview`
1043
- - `POST /v1/integrations/review/submission-bundle`
1044
- - `POST /v1/integrations/review/submission-bundle-set`
1045
- - `POST /v1/integrations/review/registry-snapshot`
1046
- - `POST /v1/payment-quotes`
1047
- - `POST /v1/trust/handoffs/emit`
1048
- - `POST /v1/trust/handoffs/validate`
1049
- - `POST /v1/execution-receipts/handoffs/emit`
1050
- - `POST /v1/execution-receipts/handoffs/validate`
1051
- - `POST /v1/receipt-ledger/handoffs/emit`
1052
- - `POST /v1/receipt-ledger/handoffs/validate`
1053
- - `POST /v1/admission/preview`
1054
- - `POST /v1/a2a/negotiate`
1055
- - `POST /v1/a2a/commit`
1056
- - `POST /v1/a2a/flows/settlement`
1057
- - `POST /v1/a2c/sessions/open`
1058
- - `POST /v1/a2c/packs/preview`
1059
- - `POST /v1/a2c/flows/tooling`
1060
- - `POST /v1/identity/attest/preview`
1061
- - `POST /v1/identity/registry/link`
1062
- - `POST /v1/identity/flows/anchor`
1063
- - `POST /v1/runtime/emit`
1064
- - `POST /v1/runtime/anchor`
1065
- - `POST /v1/runtime/emit-anchor`
1066
- - `POST /v1/registry/register`
1067
- - `POST /v1/registry/packs/bundle`
1068
- - `POST /v1/registry/packs/anchor`
1069
- - `POST /v1/anchoring/submit`
1070
- - `POST /v1/anchoring/packs/preview`
1071
- - `GET /v1/coordination-center`
1072
- - `GET /v1/coordination-center/summary`
1073
- - `GET /v1/zones`
1074
- - `GET /v1/zones/compatibility-profiles`
1075
- - `GET /v1/zones/:zoneId/constitution`
1076
- - `POST /v1/coordination-center/interpretation-handoff/validate`
1077
- - `POST /v1/coordination-center/handshake-preview`
1078
- - `POST /v1/coordination-center/cross-zone-preview`
1079
- - `POST /v1/coordination-center/admission-case-projection`
1080
- - `POST /v1/coordination-center/admission-case-bundle`
1081
- - `POST /v1/coordination-center/operator-view`
1082
- - `POST /v1/coordination-center/admin-view`
1083
- - `POST /v1/coordination-center/admission-ops-pack`
1084
- - `POST /v1/coordination-center/admission-workflow-pack`
1085
- - `POST /v1/coordination-center/coordination-pack`
1086
- - `POST /v1/coordination-center/review-link`
1087
- - `GET /v1/coordination-center/zones-dashboard`
1088
- - `POST /v1/coordination-center/zones-dashboard-pack`
1089
- - `POST /v1/mcp/tools/invoke`
1090
- - `GET /v1/payment-quotes`
1091
- - `GET /v1/payment-quotes/:quote_id`
1092
- - `POST /v1/commands/execute`
1093
- - `POST /x402/commands/execute`
1094
- - `POST /x402/mcp/tools/invoke`
1095
- - `GET /v1/governed-transactions`
1096
- - `GET /v1/governed-transactions/:transaction_id`
1097
- - `GET /v1/receipts`
1098
- - `GET /v1/receipts/:receipt_id`
1099
- - `GET /v1/payment-ledger`
1100
- - `GET /v1/payment-ledger/:payment_id`
1101
- - `GET /v1/payment-ledger/:payment_id/operator-pack`
1102
- - `GET /v1/deliveries`
1103
- - `GET /v1/deliveries/:delivery_id`
1104
- - `GET /v1/disputes`
1105
- - `POST /v1/disputes`
1106
- - `GET /v1/disputes/:dispute_id`
1107
- - `POST /v1/disputes/:dispute_id/actions`
1108
- - `GET /v1/refunds`
1109
- - `POST /v1/refunds`
1110
- - `GET /v1/refunds/:refund_id`
1111
- - `POST /v1/refunds/:refund_id/actions`
1112
- - `POST /v1/remediation-tickets`
1113
- - `GET /v1/remediation-tickets`
1114
- - `GET /v1/remediation-tickets/:ticket_id`
1115
- - `POST /v1/remediation-tickets/:ticket_id/actions`
1116
- - `GET /v1/reconciliation-report`
1117
- - `GET /v1/operator-export-pack`
1118
- - `GET /v1/operations/dashboard`
1119
- - `GET /v1/operations/attention-records`
1120
- - `GET /v1/runtime/durability`
1121
- - `GET /v1/operator-shell`
1122
- - `GET /v1/operator-shell/summary`
1123
- - `POST /v1/operator-shell/summary`
1124
- - `POST /v1/operator-shell/workflow-pack`
1125
- - `POST /v1/operator-shell/admin-pack`
1126
- - `GET /v1/agent-accounts`
1127
- - `POST /v1/agent-accounts`
1128
- - `GET /v1/agent-accounts/:account_id`
1129
- - `POST /v1/economics/budgets`
1130
- - `POST /v1/economics/budgets/:budget_id/status`
1131
- - `POST /v1/economics/agents`
1132
- - `POST /v1/economics/agents/:agent_id/status`
1133
- - `POST /v1/economics/receipts`
1134
- - `POST /v1/economics/receipts/:receipt_id/lifecycle`
1135
- - `POST /v1/economics/receipts/:receipt_id/operator-action`
1136
- - `POST /v1/economics/allocations/mint`
1137
- - `POST /v1/economics/allocations/reverse`
1138
- - `POST /v1/economics/rails/credits/preview`
1139
- - `POST /v1/economics/rails/credits/apply`
1140
- - `POST /v1/economics/receipt-ledger/validate`
1141
- - `POST /v1/economics/interpretation-handoff`
1142
- - `POST /v1/economics/markets/preview`
1143
- - `POST /v1/economics/markets/workflow-pack`
1144
- - `POST /v1/economics/markets/signoff-pack`
1145
- - `POST /v1/economics/markets/coordination-pack`
1146
- - `GET /v1/economics/accounts/:account_id/budgets`
1147
- - `GET /v1/economics/accounts/:account_id/agents`
1148
- - `GET /v1/economics/accounts/:account_id/receipts`
1149
- - `GET /v1/economics/accounts/:account_id`
1150
- - `GET /v1/economics/accounts/:account_id/operator-view`
1151
- - `GET /v1/economics/accounts/:account_id/operator-dashboard`
1152
- - `GET /v1/economics/accounts/:account_id/treasury-summary`
1153
- - `GET /v1/economics/accounts/:account_id/ledger-export`
1154
- - `GET /v1/economics/accounts/:account_id/treasury-drilldown`
1155
- - `GET /v1/economics/accounts/:account_id/reconciliation-pack`
1156
- - `GET /v1/economics/accounts/:account_id/treasury-workflow-pack`
1157
- - `GET /v1/economics/accounts/:account_id/treasury-signoff-pack`
1158
- - `GET /v1/economics/accounts/:account_id/policy-summary`
1159
- - `GET /v1/economics/accounts/:account_id/rail-summary`
1160
- - `GET /v1/economics/accounts/:account_id/rail-workflow-pack`
1161
- - `GET /v1/economics/accounts/:account_id/rail-signoff-pack`
1162
- - `POST /v1/economics/jobs/:job_id/operator-action`
1163
- - `GET /v1/economics/evidence/receipts/:receipt_ref`
1164
- - `GET /v1/economics/evidence/jobs/:job_id`
1165
- - `GET /v1/economics/integration/jobs/:job_id`
1166
- - `GET /v1/settlement/bsv-teranode/readiness`
1167
- - `GET /v1/settlement/bsv-teranode/:settlement_id/operator-pack`
1168
-
1169
- The Wave C coordination carry-over line adds a bounded coordination center on top of the public transaction spine:
1170
-
1171
- - zone discovery, compatibility profiles, and constitution lookup
1172
- - interpretation-handoff validation and cross-zone handshake preview
1173
- - cross-zone admission-case projection and portable case-bundle export
1174
- - coordination operator/admin views plus explicit review-linkage into governance and proof follow-through
1175
- - admission ops/workflow packs, coordination packs, and zones dashboard packaging
1176
-
1177
- The Wave D adapter-breadth line broadens the bundled public integration surface as well:
1178
-
1179
- - additional built-in protocol surfaces for `a2a`, `acp`, `mqtt`, `grpc`, `kafka`, `nats`, and `ros2`
1180
- - additional built-in execution-front surfaces for `langchain`, `langgraph`, `semantic_kernel`, `autogen`, `crewai`, and `llamaindex`
1181
- - broader bundled payment and identity breadth through `mpp` and `erc8004`-oriented public integration surfaces
1182
-
1183
- The Wave F shell carry-over line adds a bounded operator shell inside public `xytara`:
1184
-
1185
- - self-serve agent account issuance for the public runtime path
1186
- - a unified operator shell summary across operations, economics, and coordination
1187
- - explicit runtime durability visibility for snapshot-backed recovery posture
1188
- - explicit native BSV/Teranode readiness visibility for merchant identity, transport, and verification posture
1189
- - compact workflow/admin shell exports that point cleanly into proof-side follow-through when needed
1190
-
1191
- This keeps the public product centered on `naxytra` while preserving the useful operator-shell capability directly inside `xytara` instead of splitting it into a separate surface.
1192
-
1193
- The durability and native-settlement readiness surfaces are also intended to make the remaining production boundary explicit:
1194
-
1195
- - `/v1/runtime/durability` exposes whether runtime snapshots are enabled, whether a recoverable snapshot exists yet, and any current durability blockers
1196
- - `/v1/settlement/bsv-teranode/readiness` exposes whether merchant identity, transport, verification mode, and runtime mode are production-ready, plus the next manual inputs still required
1197
- - `/v1/payment-ledger/:payment_id/operator-pack` and `/v1/settlement/bsv-teranode/:settlement_id/operator-pack` collapse payment, settlement, treasury, proof, and economic-consequence carry into one operator-facing pack so direct-pay and funded-runtime paths are easier to inspect without stitching raw records together
1198
-
1199
- If you use grants, entitlements, or usage metering in deployed `xytara`, `XYTARA_STATE_FILE` should point at persistent disk rather than ephemeral container storage. Otherwise those economics records will reset across restart.
1200
-
1201
- If your host does not provide persistent disk, use the Supabase-backed runtime state path documented in [SUPABASE_RUNTIME_STATE_SETUP.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_naxytra/naxytra/xytara/SUPABASE_RUNTIME_STATE_SETUP.md).
1202
-
1203
- ## Verification
1204
-
1205
- Local verification commands:
1206
-
1207
- - `npm run verify:package`
1208
- - `npm run verify:adapters`
1209
- - `npm run verify:tooling`
1210
- - `npm run verify:examples`
1211
- - `npm run verify:service`
1212
- - `npm run verify:all`
1213
-
1214
- The current verification covers:
1215
-
1216
- - package exports and helper breadth
1217
- - adapter manifest and implementation conformance
1218
- - registry bundle tooling behavior
1219
- - quickstart behavior
1220
- - service-route behavior
1221
- - preserved operator/reporting surfaces
1222
-
1223
- ## Control Files
1224
-
1225
- - `FINAL_CONTRACT.md`
1226
- - `TERMINOLOGY.md`
1227
- - `SERVICE_CONTRACT.md`
1228
-
1
+ # xytara
2
+
3
+ [![smithery badge](https://smithery.ai/badge/naxytra/xytara-mcp-executor)](https://smithery.ai/servers/naxytra/xytara-mcp-executor)
4
+
5
+ **x402 pay-per-call agent-commerce runtime** — the payment and execution layer of the naxytra
6
+ machine stack. An agent discovers a capability, pays once with x402 (gasless USDC on Base), and gets
7
+ a real deliverable, with settlement and revenue reconciled on-chain. The proof-side half is
8
+ [xoonya](https://naxytra.com/xoonya).
9
+
10
+ ## Proven live on Base mainnet
11
+
12
+ All demonstrated end to end on Base mainnet (provider-payout transactions are publicly verifiable —
13
+ see **Proof** below):
14
+
15
+ - **Open settling provider network** — a paid x402 call routes to an independently-registered
16
+ execution provider, returns a real deliverable, and splits revenue on-chain (reconciled ledger,
17
+ platform keeps the remainder).
18
+ - **Automated on-chain provider payouts** — a key-less runtime dispatches to an external signer that
19
+ sends USDC on Base; reconciled, idempotent, double-pay-safe.
20
+ - **Cryptographic bounded delegated spend** — a stolen bearer token cannot spend; each spend requires
21
+ a fresh ed25519 signature bound to the exact account, amount, and task.
22
+ - **Pay-per-call MCP** — 17 deterministic tools at a public endpoint, no API keys, no account.
23
+
24
+ ## Pay-per-call MCP (the easy on-ramp)
25
+
26
+ The public MCP executor is a genuine pay-per-call endpoint:
27
+
28
+ ```
29
+ endpoint: https://xytara-mcp-executor.onrender.com/mcp
30
+ tools/list -> free (17 deterministic tools)
31
+ tools/call -> 402 Payment Required with a price
32
+ -> sign ONE gasless USDC authorization (x402 / EIP-3009)
33
+ -> the Coinbase CDP facilitator verifies + settles it on Base
34
+ -> the tool runs; the response carries the result + an on-chain settlement receipt
35
+ ```
36
+
37
+ Tools: `summarize`, `text.extract`, `html.to-text`, `text.chunk`, `json.validate`, `zones.lookup`,
38
+ `keccak256`, `address.validate`, `abi.encode`, `abi.decode`, `merkle.verify`, `eip712.hash`,
39
+ `x402.decode`, `x402.verify-receipt`, `tx.status`, `reply.draft`, `catalog`.
40
+
41
+ ## Install
42
+
43
+ ```bash
44
+ npm install xytara
45
+ ```
46
+
47
+ ## Quickstart
48
+
49
+ ```bash
50
+ xytara start-here # the shortest first-run path
51
+ xytara first-run # guided discover -> quote -> pay -> execute -> prove
52
+ xytara run --help
53
+ npm start # run the xytara runtime yourself (see .env.example)
54
+ ```
55
+
56
+ ## What it does
57
+
58
+ - discover tasks and workflows, and quote work before execution
59
+ - pay via x402 (gasless USDC on Base) or spend from reusable credits
60
+ - route to an execution provider and receive the deliverable
61
+ - meter usage, reconcile settlement, and handle refunds/disputes
62
+ - integrate third-party adapters; emit proof-compatible facts for xoonya verification
63
+
64
+ xytara owns execution, quoting, payment, delivery, lifecycle, and integration. It emits
65
+ proof-compatible facts; canonical proof lives in [xoonya](https://naxytra.com/xoonya).
66
+
67
+ ## The open provider network
68
+
69
+ Any execution provider can plug in. Register an endpoint that serves one or more capabilities; once
70
+ the operator activates it, the runtime routes paid (x402-settled) agent calls to your `/execute`,
71
+ surfaces your output as the buyer's deliverable, splits the revenue, and reconciles a payout ledger.
72
+ The machine-readable integration contract is public:
73
+
74
+ ```
75
+ GET /v1/provider-network/contract # how to integrate (fields, routing, economics, lifecycle)
76
+ GET /v1/provider-network/providers # public discovery
77
+ POST /v1/provider-network/register # register your provider
78
+ ```
79
+
80
+ Routing is health-aware with reputation-weighted ordering and in-request failover on
81
+ provably-not-processed failures only (no double-execution).
82
+
83
+ ## Payment rails
84
+
85
+ x402 (gasless USDC on Base, via the Coinbase CDP facilitator) is the proven pay-per-call rail; A2A,
86
+ A2C, and BOLT (BSV) are also supported. Treasury settlement destinations are configured privately by
87
+ the operator — real treasury and custody details are never in public surfaces.
88
+
89
+ ## Honesty & boundaries
90
+
91
+ The runtime is **key-less**: payout auto-execution is a deliberate custody decision handled by an
92
+ external signer that holds the treasury key, never a key in the runtime. xytara emits
93
+ proof-compatible facts but does not define proof semantics — that is [xoonya](https://naxytra.com/xoonya).
94
+
95
+ ## Proof
96
+
97
+ Automated provider payouts, verifiable on Base mainnet (Basescan):
98
+ `0x264be245f6d58c0251bc1d9cbd124fdc46ad73ed746d7a07e750c522c37cac5b`,
99
+ `0x6aff9701556fe00cfb076f36a0cc27296619f1539d0c39242e98123abc288caa`,
100
+ `0xdba7cfef18e46da2cbb9a87a087df9fa1c790793bd9ab1034febe244d4565f36`.
101
+
102
+ ## Learn more
103
+
104
+ - Why two packages: [`WHY_XYTARA_XOONYA.md`](./WHY_XYTARA_XOONYA.md)
105
+ - Payment rail model: [`XYTARA_PAYMENT_RAIL_TRUTH_MODEL.md`](./XYTARA_PAYMENT_RAIL_TRUTH_MODEL.md)
106
+ - Real payment setup: [`REAL_PAYMENT_SETUP.md`](./REAL_PAYMENT_SETUP.md)
107
+ - Start here: [`START_HERE.md`](./START_HERE.md) · terminology: [`TERMINOLOGY.md`](./TERMINOLOGY.md)
108
+ - Live: https://naxytra.com/xytara · MCP endpoint: https://xytara-mcp-executor.onrender.com/mcp
109
+
110
+ ## License
111
+
112
+ Apache-2.0. See [`LICENSE`](./LICENSE) and [`NOTICE`](./NOTICE).