{
  "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json",
  "name": "Certiv",
  "description": "Runtime assurance for AI agents. Discover every AI agent, understand reasoning and tool calls, and enforce policy before risky actions execute.",
  "when_to_use": "Use Certiv when you need to govern, observe, or gate AI agent behavior for an organization: list the policies that steer or block agent actions, create new guardrails, or inspect a policy. Start with health-check (no auth) to confirm api.certiv.ai is reachable, then use list-policies to orient. Authenticated skills require a JWT bearer token scoped to a Certiv organization; a human completes onboarding at https://certiv.ai/demo/ before an agent can call authenticated endpoints. Do not use Certiv to execute agent tasks directly - it governs and audits the agents that do.",
  "homepage": "https://app.certiv.ai/",
  "docs": {
    "agents": "https://certiv.ai/AGENTS.md",
    "llms": "https://app.certiv.ai/llms.txt",
    "openapi": "https://app.certiv.ai/openapi.json",
    "auth": "https://app.certiv.ai/auth.md",
    "catalog": "https://app.certiv.ai/.well-known/ai-catalog.json"
  },
  "contact": {
    "sales": "hello@certiv.ai",
    "security": "security@certiv.ai",
    "demo": "https://certiv.ai/demo/"
  },
  "authentication": {
    "type": "bearer",
    "description": "Authenticated skills require a JWT bearer token issued to a Certiv organization account. Obtain a token via POST /auth/login (see auth.md). Autonomous agents cannot self-provision credentials; a human completes onboarding at https://certiv.ai/demo/.",
    "guide": "https://app.certiv.ai/auth.md"
  },
  "skills": [
    {
      "name": "list-policies",
      "type": "skill-md",
      "url": "https://app.certiv.ai/.well-known/agent-skills/list-policies.md",
      "digest": "sha256:402e26dc1992480901789670e02a444715903a58ad053b33a7a6d49783ab2381",
      "description": "List the governance policies configured for the caller's organization, including deterministic rules and intent-based natural language rules.",
      "when_to_use": "Use when an agent or operator needs to review which Certiv policies currently steer, block, or pause agent actions for an organization.",
      "endpoint": "https://api.certiv.ai/policies",
      "method": "GET",
      "operationId": "listPolicies",
      "spec": "https://app.certiv.ai/openapi.json#/paths/~1policies/get",
      "auth": "bearer"
    },
    {
      "name": "create-policy",
      "type": "skill-md",
      "url": "https://app.certiv.ai/.well-known/agent-skills/create-policy.md",
      "digest": "sha256:081da2f8bcfae58f3ca4e33be3999c6eaff0d1bbe7b8065cef15058835542311",
      "description": "Create a governance policy that determines whether agent actions are allowed, blocked, or require human approval.",
      "when_to_use": "Use when codifying a new guardrail for AI agents in an organization. Prefer intent-based rules for natural-language conditions and deterministic rules for exact matches.",
      "endpoint": "https://api.certiv.ai/policies",
      "method": "POST",
      "operationId": "createPolicy",
      "spec": "https://app.certiv.ai/openapi.json#/paths/~1policies/post",
      "auth": "bearer"
    },
    {
      "name": "get-policy",
      "type": "skill-md",
      "url": "https://app.certiv.ai/.well-known/agent-skills/get-policy.md",
      "digest": "sha256:a201a56c350438f69a33df5189b4df148f1015ca9dbaaee5523d7c95999cd771",
      "description": "Fetch a single governance policy by id, scoped to the caller's organization.",
      "when_to_use": "Use to inspect the full definition of one policy after listing policies.",
      "endpoint": "https://api.certiv.ai/policies/{policy_id}",
      "method": "GET",
      "operationId": "getPolicy",
      "spec": "https://app.certiv.ai/openapi.json#/paths/~1policies~1{policy_id}/get",
      "auth": "bearer"
    },
    {
      "name": "health-check",
      "type": "skill-md",
      "url": "https://app.certiv.ai/.well-known/agent-skills/health-check.md",
      "digest": "sha256:87b9bb03bb6645c812853f7abde19e5f59eb78233211e0fcd2a208d7204d5de8",
      "description": "Liveness check for the Certiv product API. No authentication required.",
      "when_to_use": "Use to confirm the api.certiv.ai product API is reachable before attempting authenticated calls.",
      "endpoint": "https://api.certiv.ai/health",
      "method": "GET",
      "operationId": "getHealth",
      "spec": "https://app.certiv.ai/openapi.json#/paths/~1health/get",
      "auth": "none"
    }
  ]
}
