{"items":[{"id":"discovery","name":"Discovery","description":"Machine-readable primitive and skill catalog so agents can discover capabilities and documentation dynamically.","utility":"Lets an agent landing on CloudHarness enumerate what primitives exist, where their docs live, and how to call them without hard-coding URLs.","progression":"P0","status":"implemented","apiPrefix":"/v1/primitives","issueUrl":"https://github.com/cloudharness/ch-core/issues/48","skillUrl":"https://cldhns.com/skills/discovery","skillRepoPath":"skills/cloudharness/discovery/SKILL.md"},{"id":"artifact","name":"Artifact","description":"Versioned, shareable objects: text, JSON, HTML, files, and blobs.","utility":"Universal output primitive — every agent needs to produce, version, and share artifacts.","progression":"P0","status":"implemented","apiPrefix":"/v1/artifacts","skillUrl":"https://cldhns.com/skills/artifact","skillRepoPath":"skills/cloudharness/artifact/SKILL.md"},{"id":"api-key","name":"API Key","description":"Self-service key provisioning; each key is its own account with free credits.","utility":"Authentication, account isolation, and billing identity without a signup flow.","progression":"P0","status":"implemented","apiPrefix":"/v1/keys","skillUrl":"https://cldhns.com/skills/api-key","skillRepoPath":"skills/cloudharness/api-key/SKILL.md"},{"id":"share","name":"Share","description":"Signed links and email-based sharing for artifacts and (future) runs.","utility":"Let agents and humans access a specific artifact without handing over the API key.","progression":"P0","status":"implemented","apiPrefix":"/v1/artifacts/:id","skillUrl":"https://cldhns.com/skills/share","skillRepoPath":"skills/cloudharness/share/SKILL.md"},{"id":"credits","name":"Credits","description":"Per-account credit ledger and usage-based billing for requests, writes, storage, and egress.","utility":"Meters usage so the service can be priced, limited, and monitored.","progression":"P0","status":"implemented","apiPrefix":"/v1/usage","skillUrl":"https://cldhns.com/skills/credits","skillRepoPath":"skills/cloudharness/credits/SKILL.md"},{"id":"rate-limit","name":"Rate Limiting","description":"Per-account fixed-window rate limiting.","utility":"Protects the service from abuse and noisy neighbors.","progression":"P0","status":"implemented","apiPrefix":"n/a","skillUrl":"https://cldhns.com/skills/rate-limit","skillRepoPath":"skills/cloudharness/rate-limit/SKILL.md"},{"id":"workbox","name":"Durable Workbox","description":"Durable, account-scoped work items with leased execution, bounded retries, and artifact-backed outcomes.","utility":"Lets producers enqueue durable agent work and workers safely claim, complete, or retry it without losing lifecycle state.","progression":"P0","status":"implemented","apiPrefix":"/v1/work","issueUrl":"https://github.com/cloudharness/ch-core/issues/66","skillUrl":"https://cldhns.com/skills/workbox","skillRepoPath":"skills/cloudharness/workbox/SKILL.md"},{"id":"queue","name":"Queue","description":"Durable FIFO task queue with worker leases, retries, visibility timeout, and dead-letter handling.","utility":"Agents hand off durable work to each other without building their own queue.","progression":"P0","status":"selected","apiPrefix":"/v1/queues","issueUrl":"https://github.com/cloudharness/ch-core/issues/14","skillUrl":"https://cldhns.com/skills/queue","skillRepoPath":"skills/cloudharness/queue/SKILL.md"},{"id":"run","name":"Run","description":"Observable execution trace for an agent: status, events, lineage, and artifact references.","utility":"The universal unit of work — lets agents and humans see what happened, why, and how much it cost.","progression":"P0","status":"selected","apiPrefix":"/v1/runs","issueUrl":"https://github.com/cloudharness/ch-core/issues/15","skillUrl":"https://cldhns.com/skills/run","skillRepoPath":"skills/cloudharness/run/SKILL.md"},{"id":"stack","name":"Stack","description":"Durable, account-scoped LIFO collection with atomic push, pop, and peek operations.","utility":"Keeps execution frames, undo records, and backtracking state without treating them as leased jobs.","progression":"P0","status":"selected","apiPrefix":"/v1/stacks","skillUrl":"https://cldhns.com/skills/stack","skillRepoPath":"skills/cloudharness/stack/SKILL.md"},{"id":"priority-queue","name":"Priority Queue","description":"Durable leased queue ordered by priority and then FIFO sequence within each priority lane.","utility":"Lets urgent agent work preempt ordinary work while retaining predictable ordering for equal priority.","progression":"P1","status":"selected","apiPrefix":"/v1/priority-queues","skillUrl":"https://cldhns.com/skills/priority-queue","skillRepoPath":"skills/cloudharness/priority-queue/SKILL.md"},{"id":"deque","name":"Deque","description":"Durable double-ended collection with atomic push and pop operations at either end.","utility":"Supports bounded producer/consumer buffers, work-stealing, and algorithms that need both FIFO and LIFO access.","progression":"P1","status":"selected","apiPrefix":"/v1/deques","skillUrl":"https://cldhns.com/skills/deque","skillRepoPath":"skills/cloudharness/deque/SKILL.md"},{"id":"trigger","name":"Trigger","description":"Activation conditions: webhooks, cron schedules, events, and manual fire.","utility":"Starts work automatically — connects the outside world to queues and runs.","progression":"P0","status":"planned","apiPrefix":"/v1/triggers","issueUrl":"https://github.com/cloudharness/ch-core/issues/16","skillUrl":"https://cldhns.com/skills/trigger","skillRepoPath":"skills/cloudharness/trigger/SKILL.md"},{"id":"task-graph","name":"Task Graph / DAG","description":"Graph primitive where nodes are tasks and edges are dependencies, with fan-out, fan-in, and conditional branching.","utility":"Compose multi-step workflows that depend on each other.","progression":"P1","status":"planned","apiPrefix":"/v1/graphs","issueUrl":"https://github.com/cloudharness/ch-core/issues/19","skillUrl":"https://cldhns.com/skills/task-graph","skillRepoPath":"skills/cloudharness/task-graph/SKILL.md"},{"id":"state-machine","name":"State Machine","description":"Workflow state-machine primitive for long-running, event-driven processes with pause/resume.","utility":"Model processes that wait for humans, webhooks, or timers.","progression":"P1","status":"planned","apiPrefix":"/v1/workflows","issueUrl":"https://github.com/cloudharness/ch-core/issues/20","skillUrl":"https://cldhns.com/skills/state-machine","skillRepoPath":"skills/cloudharness/state-machine/SKILL.md"},{"id":"scheduler","name":"Scheduler / Cron","description":"Cron-based schedule definitions for tasks, graphs, and triggers.","utility":"Run work on a recurring schedule.","progression":"P1","status":"planned","apiPrefix":"/v1/schedules","issueUrl":"https://github.com/cloudharness/ch-core/issues/21","skillUrl":"https://cldhns.com/skills/scheduler","skillRepoPath":"skills/cloudharness/scheduler/SKILL.md"},{"id":"job-lifecycle","name":"Job Lifecycle API","description":"Unified lifecycle controls: cancel, pause, resume, retry, replay, and inspect across tasks, graphs, and workflows.","utility":"Operate production work without needing direct DB access.","progression":"P1","status":"planned","apiPrefix":"/v1/jobs","issueUrl":"https://github.com/cloudharness/ch-core/issues/22","skillUrl":"https://cldhns.com/skills/job-lifecycle","skillRepoPath":"skills/cloudharness/job-lifecycle/SKILL.md"},{"id":"output-validation","name":"Structured Output / Schema Validation","description":"Enforce JSON Schema on LLM/tool outputs and retry/repair on validation failures.","utility":"Makes agent outputs reliable and machine-consumable.","progression":"P1","status":"planned","apiPrefix":"/v1/validate","issueUrl":"https://github.com/cloudharness/ch-core/issues/37","skillUrl":"https://cldhns.com/skills/output-validation","skillRepoPath":"skills/cloudharness/output-validation/SKILL.md"},{"id":"checkpoint","name":"Checkpoints & Resumability","description":"Save and restore mid-run state for tasks, graphs, and runs.","utility":"Resume long-running work after failure, timeout, or interruption.","progression":"P1","status":"planned","apiPrefix":"/v1/runs/:id/checkpoints","issueUrl":"https://github.com/cloudharness/ch-core/issues/38","skillUrl":"https://cldhns.com/skills/checkpoint","skillRepoPath":"skills/cloudharness/checkpoint/SKILL.md"},{"id":"trace","name":"Trace / Lineage Store","description":"Full execution trace of LLM calls, tool calls, events, and state transitions per run.","utility":"Debug and audit what an agent actually did.","progression":"P1","status":"planned","apiPrefix":"/v1/traces","issueUrl":"https://github.com/cloudharness/ch-core/issues/39","skillUrl":"https://cldhns.com/skills/trace","skillRepoPath":"skills/cloudharness/trace/SKILL.md"},{"id":"thread","name":"Thread Store","description":"Short-term conversation/thread storage per agent session with pagination, truncation, and rolling summarization.","utility":"Keep conversation context across multiple turns.","progression":"P2","status":"planned","apiPrefix":"/v1/threads","issueUrl":"https://github.com/cloudharness/ch-core/issues/23","skillUrl":"https://cldhns.com/skills/thread","skillRepoPath":"skills/cloudharness/thread/SKILL.md"},{"id":"vector","name":"Vector Store","description":"Long-term embedding-based memory with semantic search.","utility":"Recall facts and documents by meaning, not just keyword.","progression":"P2","status":"planned","apiPrefix":"/v1/memories","issueUrl":"https://github.com/cloudharness/ch-core/issues/24","skillUrl":"https://cldhns.com/skills/vector","skillRepoPath":"skills/cloudharness/vector/SKILL.md"},{"id":"state","name":"Working Memory / Key-Value State","description":"Structured scratchpad for agents with namespacing, TTL, and compare-and-swap support.","utility":"Store intermediate results and shared state across runs.","progression":"P2","status":"selected","apiPrefix":"/v1/state","issueUrl":"https://github.com/cloudharness/ch-core/issues/25","skillUrl":"https://cldhns.com/skills/state","skillRepoPath":"skills/cloudharness/state/SKILL.md"},{"id":"knowledge","name":"Knowledge Graph","description":"Entity/relation/observation triple store with extraction helpers and traversal queries.","utility":"Extract and query structured knowledge from agent outputs.","progression":"P2","status":"planned","apiPrefix":"/v1/knowledge","issueUrl":"https://github.com/cloudharness/ch-core/issues/26","skillUrl":"https://cldhns.com/skills/knowledge","skillRepoPath":"skills/cloudharness/knowledge/SKILL.md"},{"id":"document","name":"Document Ingestion","description":"Parse, chunk, embed, and index documents (PDF, text, markdown, HTML, JSON).","utility":"Make external documents searchable and usable by agents.","progression":"P2","status":"planned","apiPrefix":"/v1/documents","issueUrl":"https://github.com/cloudharness/ch-core/issues/27","skillUrl":"https://cldhns.com/skills/document","skillRepoPath":"skills/cloudharness/document/SKILL.md"},{"id":"tool-registry","name":"Tool Registry","description":"Schema-driven catalog of tools with JSON Schema inputs, versioning, deprecation, and discovery.","utility":"Agents can discover and safely call tools by name.","progression":"P3","status":"planned","apiPrefix":"/v1/tools","issueUrl":"https://github.com/cloudharness/ch-core/issues/28","skillUrl":"https://cldhns.com/skills/tool-registry","skillRepoPath":"skills/cloudharness/tool-registry/SKILL.md"},{"id":"tool-executor","name":"Tool Executor","description":"Invoke registered tools with schema validation, timeouts, retries, and circuit-breaker policy.","utility":"Safe, reliable execution of tools with clear error handling.","progression":"P3","status":"planned","apiPrefix":"/v1/tools/:name","issueUrl":"https://github.com/cloudharness/ch-core/issues/29","skillUrl":"https://cldhns.com/skills/tool-executor","skillRepoPath":"skills/cloudharness/tool-executor/SKILL.md"},{"id":"sandbox","name":"Code Execution Sandbox","description":"Safe, ephemeral execution of untrusted code with stdout/stderr capture and resource limits.","utility":"Agents can run generated code without compromising the host.","progression":"P3","status":"planned","apiPrefix":"/v1/sandbox","issueUrl":"https://github.com/cloudharness/ch-core/issues/30","skillUrl":"https://cldhns.com/skills/sandbox","skillRepoPath":"skills/cloudharness/sandbox/SKILL.md"},{"id":"browser","name":"Browser / Computer-Use Driver","description":"Headless browser actions for navigation, interaction, screenshots, and extraction.","utility":"Agents can interact with web UIs that have no API.","progression":"P3","status":"planned","apiPrefix":"/v1/browser/sessions","issueUrl":"https://github.com/cloudharness/ch-core/issues/31","skillUrl":"https://cldhns.com/skills/browser","skillRepoPath":"skills/cloudharness/browser/SKILL.md"},{"id":"mcp","name":"MCP / External Tool Bridge","description":"Expose CloudHarness tools via MCP and consume external MCP/OpenAPI tools.","utility":"Connect to the growing ecosystem of MCP servers and third-party APIs.","progression":"P3","status":"planned","apiPrefix":"/v1/mcp","issueUrl":"https://github.com/cloudharness/ch-core/issues/32","skillUrl":"https://cldhns.com/skills/mcp","skillRepoPath":"skills/cloudharness/mcp/SKILL.md"},{"id":"event","name":"Event Ingestion","description":"Normalize, verify, and deduplicate events from webhooks, queues, polling, and files.","utility":"Bring external signals into CloudHarness in a standard format.","progression":"P4","status":"planned","apiPrefix":"/v1/events","issueUrl":"https://github.com/cloudharness/ch-core/issues/33","skillUrl":"https://cldhns.com/skills/event","skillRepoPath":"skills/cloudharness/event/SKILL.md"},{"id":"stream","name":"Event Stream / Subscription","description":"Topic-based pub/sub over SSE/WebSocket with filtering, cursors, and replay.","utility":"Deliver real-time progress, partial outputs, and notifications to agents and humans.","progression":"P1","status":"selected","apiPrefix":"/v1/subscriptions","issueUrl":"https://github.com/cloudharness/ch-core/issues/34","skillUrl":"https://cldhns.com/skills/stream","skillRepoPath":"skills/cloudharness/stream/SKILL.md"},{"id":"parse","name":"File & Media Parsing","description":"Extract content from PDF, DOCX, images (OCR), audio, HTML, JSON, CSV.","utility":"Turn files and media into structured text for agents.","progression":"P4","status":"planned","apiPrefix":"/v1/parse","issueUrl":"https://github.com/cloudharness/ch-core/issues/35","skillUrl":"https://cldhns.com/skills/parse","skillRepoPath":"skills/cloudharness/parse/SKILL.md"},{"id":"observation","name":"Observation Log","description":"Immutable append-only log of events, parsed documents, tool outputs, and user messages.","utility":"A complete, queryable record of everything an agent perceived.","progression":"P4","status":"planned","apiPrefix":"/v1/observations","issueUrl":"https://github.com/cloudharness/ch-core/issues/36","skillUrl":"https://cldhns.com/skills/observation","skillRepoPath":"skills/cloudharness/observation/SKILL.md"},{"id":"agent-registry","name":"Agent Registry","description":"Register and discover agents with capabilities, versions, health, and status.","utility":"Find the right agent for a task.","progression":"P5","status":"planned","apiPrefix":"/v1/agents","issueUrl":"https://github.com/cloudharness/ch-core/issues/40","skillUrl":"https://cldhns.com/skills/agent-registry","skillRepoPath":"skills/cloudharness/agent-registry/SKILL.md"},{"id":"a2a","name":"Agent-to-Agent Messaging","description":"Async request/reply and pub/sub messaging between agents with durable inboxes.","utility":"Agents coordinate without tight coupling.","progression":"P5","status":"planned","apiPrefix":"/v1/agents/:id/messages","issueUrl":"https://github.com/cloudharness/ch-core/issues/41","skillUrl":"https://cldhns.com/skills/a2a","skillRepoPath":"skills/cloudharness/a2a/SKILL.md"},{"id":"delegation","name":"Delegation / Planning","description":"Hand off goals to other agents and track sub-task completion with result aggregation.","utility":"Break complex goals across specialized agents.","progression":"P5","status":"planned","apiPrefix":"/v1/delegations","issueUrl":"https://github.com/cloudharness/ch-core/issues/42","skillUrl":"https://cldhns.com/skills/delegation","skillRepoPath":"skills/cloudharness/delegation/SKILL.md"},{"id":"human","name":"Human-in-the-Loop","description":"Approval gates, clarifications, and overrides with notifications and resume API.","utility":"Pause agents for human judgment when stakes or uncertainty are high.","progression":"P5","status":"planned","apiPrefix":"/v1/runs/:id/human-requests","issueUrl":"https://github.com/cloudharness/ch-core/issues/43","skillUrl":"https://cldhns.com/skills/human","skillRepoPath":"skills/cloudharness/human/SKILL.md"},{"id":"lock","name":"Locking / Concurrency","description":"Lease-based distributed locks for shared resources, with ownership tokens and automatic expiry.","utility":"Prevent concurrent agents from corrupting shared foundational state without creating permanent deadlocks.","progression":"P0","status":"selected","apiPrefix":"/v1/locks","issueUrl":"https://github.com/cloudharness/ch-core/issues/44","skillUrl":"https://cldhns.com/skills/lock","skillRepoPath":"skills/cloudharness/lock/SKILL.md"},{"id":"gateway","name":"Webhook / API Gateway","description":"Expose agents/workflows as HTTP endpoints with routing, validation, auth, and rate limits.","utility":"Turn CloudHarness work into public or internal APIs.","progression":"P6","status":"planned","apiPrefix":"/v1/gateways","issueUrl":"https://github.com/cloudharness/ch-core/issues/45","skillUrl":"https://cldhns.com/skills/gateway","skillRepoPath":"skills/cloudharness/gateway/SKILL.md"},{"id":"cli","name":"CLI / SDK","description":"TypeScript and Python clients plus a CLI for authentication, task submission, and deployment.","utility":"Developer ergonomics and CI/CD integration.","progression":"P6","status":"planned","apiPrefix":"n/a","issueUrl":"https://github.com/cloudharness/ch-core/issues/46","skillUrl":"https://cldhns.com/skills/cli","skillRepoPath":"skills/cloudharness/cli/SKILL.md"},{"id":"observability","name":"Observability Hooks","description":"Metrics, traces, structured logs, and alerting hooks for the harness and runs.","utility":"Operate CloudHarness in production with confidence.","progression":"P6","status":"planned","apiPrefix":"/v1/metrics","issueUrl":"https://github.com/cloudharness/ch-core/issues/47","skillUrl":"https://cldhns.com/skills/observability","skillRepoPath":"skills/cloudharness/observability/SKILL.md"}],"count":42}