Skip to main content

act_types/
constants.rs

1//! Well-known constants used across the ACT protocol.
2//!
3//! Authoritative list: `ACT-CONSTANTS.md` in the spec repo.
4
5// ── Error kinds ──
6
7pub const ERR_NOT_FOUND: &str = "std:not-found";
8pub const ERR_INVALID_ARGS: &str = "std:invalid-args";
9pub const ERR_TIMEOUT: &str = "std:timeout";
10pub const ERR_CAPABILITY_DENIED: &str = "std:capability-denied";
11pub const ERR_INTERNAL: &str = "std:internal";
12
13// ── Component info keys ──
14
15pub const COMPONENT_NAME: &str = "std:name";
16pub const COMPONENT_VERSION: &str = "std:version";
17pub const COMPONENT_DESCRIPTION: &str = "std:description";
18pub const COMPONENT_DEFAULT_LANGUAGE: &str = "std:default-language";
19pub const COMPONENT_CAPABILITIES: &str = "std:capabilities";
20pub const COMPONENT_SKILL: &str = "std:skill";
21
22// ── Tool definition metadata keys ──
23
24pub const META_READ_ONLY: &str = "std:read-only";
25pub const META_IDEMPOTENT: &str = "std:idempotent";
26pub const META_DESTRUCTIVE: &str = "std:destructive";
27pub const META_STREAMING: &str = "std:streaming";
28pub const META_TIMEOUT_MS: &str = "std:timeout-ms";
29pub const META_USAGE_HINTS: &str = "std:usage-hints";
30pub const META_ANTI_USAGE_HINTS: &str = "std:anti-usage-hints";
31pub const META_EXAMPLES: &str = "std:examples";
32pub const META_TAGS: &str = "std:tags";
33
34// ── Content part metadata keys ──
35
36pub const META_PROGRESS: &str = "std:progress";
37pub const META_PROGRESS_TOTAL: &str = "std:progress-total";
38
39// ── Cross-cutting metadata keys ──
40
41pub const META_TRACEPARENT: &str = "std:traceparent";
42pub const META_TRACESTATE: &str = "std:tracestate";
43pub const META_REQUEST_ID: &str = "std:request-id";
44pub const META_PROGRESS_TOKEN: &str = "std:progress-token";
45
46// ── Bridge metadata keys ──
47
48pub const META_FORWARD: &str = "std:forward";
49
50// ── Authentication metadata keys ──
51
52pub const AUTH_API_KEY: &str = "std:api-key";
53pub const AUTH_BEARER_TOKEN: &str = "std:bearer-token";
54pub const AUTH_USERNAME: &str = "std:username";
55pub const AUTH_PASSWORD: &str = "std:password";
56
57// ── Event kinds ──
58
59pub const EVENT_TOOLS_CHANGED: &str = "std:tools:changed";
60pub const EVENT_RESOURCES_CHANGED: &str = "std:resources:changed";
61pub const EVENT_EVENTS_CHANGED: &str = "std:events:changed";
62
63// ── Resource URIs ──
64
65pub const RESOURCE_ICON: &str = "std:icon";
66
67// ── WASM custom sections ──
68
69pub const SECTION_ACT_COMPONENT: &str = "act:component";
70
71// ── MIME types ──
72
73pub const MIME_JSON: &str = "application/json";
74pub const MIME_CBOR: &str = "application/cbor";
75pub const MIME_TEXT: &str = "text/plain";
76pub const MIME_SSE: &str = "text/event-stream";