{
  "version": "20260604_core_validation_v45",
  "title": "OligoVigil universal agent connect layer",
  "summary": "A guarded, tool-agnostic reuse layer for agentic clients, coding tools, MCP clients, notebooks, and lightweight apps that need citable oligonucleotide safety evidence without scraping the portal.",
  "release_snapshot": {
    "verified_release_records": 737,
    "benchmark_split_rows": 344,
    "candidate_gap_records": 41114,
    "candidate_policy": "candidate rows are non-citable gap-finding context"
  },
  "summary_cards": [
    {
      "label": "Universal manifest",
      "value": "agent.json",
      "note": "Single discovery file for any agent that can fetch a public URL."
    },
    {
      "label": "OpenAPI import",
      "value": "REST",
      "note": "API/action builders can import /api/openapi.json without a custom skill."
    },
    {
      "label": "MCP tools",
      "value": "6",
      "note": "Search, record detail, triage, modification profile, benchmark, and manifest."
    },
    {
      "label": "Agent discovery",
      "value": "llms.txt",
      "note": "Concise and full machine-readable instructions are exposed at stable root paths."
    },
    {
      "label": "Starter clients",
      "value": "Python / JS / R",
      "note": "Small dependency-light clients for scripts, apps, and notebooks."
    },
    {
      "label": "Optional Codex skill",
      "value": "oligovigil",
      "note": "Bundled for Codex users, but not required for universal access."
    }
  ],
  "guardrails": [
    {
      "rule": "Verified release evidence only for claims",
      "why": "Candidates are derived annotations awaiting human review.",
      "enforced_by": [
        "/api/evidence_records",
        "/api/evidence_detail",
        "oligovigil_skill"
      ]
    },
    {
      "rule": "Record-level citations required",
      "why": "Safety claims need evidence grade, source location, PMID/DOI, and audit status.",
      "enforced_by": [
        "/api/evidence_detail",
        "/api/citation"
      ]
    },
    {
      "rule": "No de novo safety prediction",
      "why": "Safety triage is source-grounded and does not replace alignment, toxicology, or regulatory review.",
      "enforced_by": [
        "/api/safety_triage",
        "/api/sequence_search"
      ]
    },
    {
      "rule": "Benchmark splits are fixed",
      "why": "Reusable ML results require unchanged leakage groups and versioned checksums.",
      "enforced_by": [
        "/api/benchmark",
        "/api/download/benchmark_reference_splits.csv"
      ]
    },
    {
      "rule": "No fake adoption claims",
      "why": "Usage and citation claims must come from post-deployment evidence, not generated copy.",
      "enforced_by": [
        "/api/adoption_packet",
        "/api/archive_readiness"
      ]
    }
  ],
  "workflows": [
    {
      "title": "Ask an agent for a citable safety packet",
      "entry": "/api/search",
      "next": "/api/evidence_detail",
      "output": "Evidence grade, exact source location, PMID/DOI, citation text, and audit trail."
    },
    {
      "title": "Build a design-review dashboard",
      "entry": "/api/safety_triage",
      "next": "/api/download/evidence_release.csv",
      "output": "Release-supported concerns, candidate gaps, and validation checklist."
    },
    {
      "title": "Reuse benchmark splits in a notebook",
      "entry": "/api/benchmark",
      "next": "/api/download/benchmark_reference_splits.csv",
      "output": "Task cards, fixed split groups, baseline rows, and citation metadata."
    },
    {
      "title": "Connect any agentic client",
      "entry": "/agent.json",
      "next": "/api/openapi.json or /mcp.json",
      "output": "Automatic endpoint discovery plus evidence guardrails."
    },
    {
      "title": "Install local agent helpers",
      "entry": "/api/download/oligovigil_agent_pack.zip",
      "next": "agent_ready/oligovigil_skill/SKILL.md",
      "output": "Skill, MCP server, SDK clients, prompts, and starter templates."
    }
  ],
  "downloads": {
    "agent_pack_zip": "/api/download/oligovigil_agent_pack.zip",
    "universal_manifest": "/agent.json",
    "well_known_manifest": "/.well-known/oligovigil-agent.json",
    "openapi_action_manifest": "/.well-known/ai-plugin.json",
    "mcp_config": "/mcp.json",
    "agent_connect": "/api/agent_connect",
    "llms_txt": "/llms.txt",
    "llms_full_txt": "/llms-full.txt",
    "openapi": "/api/openapi.json"
  },
  "tool_profiles": [
    {
      "profile": "OpenAPI importer",
      "works_for": "coding tools, API action builders, no-code agents, and client generators",
      "entrypoint": "/api/openapi.json",
      "what_it_enables": "Automatic discovery of search, evidence detail, triage, benchmark, and download endpoints.",
      "url": "/api/openapi.json"
    },
    {
      "profile": "MCP-compatible agent",
      "works_for": "desktop assistants and coding agents that accept MCP server configs",
      "entrypoint": "/mcp.json",
      "what_it_enables": "Tool calls for search, citable record retrieval, safety triage, modification profile, benchmark metadata, and downloads.",
      "url": "/mcp.json"
    },
    {
      "profile": "Dossier-first agent",
      "works_for": "vibe-coding tools, notebooks, and assistants that need a single high-level output",
      "entrypoint": "/api/safety_dossier",
      "what_it_enables": "One request returns design context, risk matrix, evidence graph, provenance links, export actions, and benchmark reuse hooks.",
      "url": "/api/safety_dossier"
    },
    {
      "profile": "NLWeb-style client",
      "works_for": "natural-language web agents and site-discovery clients",
      "entrypoint": "/nlweb.json",
      "what_it_enables": "Tool discovery for dossier generation, evidence graph retrieval, verified-evidence search, and release download.",
      "url": "/nlweb.json"
    },
    {
      "profile": "Documentation-first agent",
      "works_for": "agents that can read URLs but cannot install tools",
      "entrypoint": "/llms.txt",
      "what_it_enables": "Guardrailed use of OligoVigil through stable URLs and endpoint instructions.",
      "url": "/llms.txt"
    },
    {
      "profile": "Notebook or data app",
      "works_for": "Python, R, JavaScript, Streamlit, and dashboard builders",
      "entrypoint": "/api/download/oligovigil_agent_pack.zip",
      "what_it_enables": "SDK clients, starter templates, fixed benchmark splits, and CSV downloads.",
      "url": "/api/download/oligovigil_agent_pack.zip"
    },
    {
      "profile": "Web fetch or RAG agent",
      "works_for": "tools that index public web pages and machine-readable text files",
      "entrypoint": "/agent.json",
      "what_it_enables": "Single-page discovery of access policy, protocols, primary endpoints, and guardrails.",
      "url": "/agent.json"
    }
  ],
  "pack": {
    "filename": "oligovigil_agent_pack.zip",
    "url": "/api/download/oligovigil_agent_pack.zip",
    "bytes": 17199,
    "sha256": "4ede1f04694785535d42933c6cc759cc28cd9f2d95d7a92766921e83b76a64dc",
    "files": 16
  },
  "artifacts": [
    {
      "path": "agent_ready/agent_access_manifest.json",
      "kind": "agent_artifact",
      "purpose": "Agent reuse artifact.",
      "bytes": 3095,
      "sha256": "3f0137cde13a2167631e9a58934dc277853581fb4ea9c9ae4c4f34753b5a41dc"
    },
    {
      "path": "agent_ready/clients/javascript/oligovigil-client.mjs",
      "kind": "javascript_client",
      "purpose": "Browser or Node fetch client for common OligoVigil workflows.",
      "bytes": 2699,
      "sha256": "1ace5a08be1c10ce7dea4668d7198be79bb8770feeabd4ccfbe8f12754f0038e"
    },
    {
      "path": "agent_ready/clients/python/oligovigil_client.py",
      "kind": "python_client",
      "purpose": "Minimal standard-library client for JSON and CSV endpoints.",
      "bytes": 4413,
      "sha256": "867dfbe4d4cb7dc503ea0ad8135aedfe120451fde45177b02008132a2a8fad7d"
    },
    {
      "path": "agent_ready/clients/r/oligovigil_client.R",
      "kind": "r_client",
      "purpose": "R helper functions for search, evidence records, details, benchmark metadata, and release CSV.",
      "bytes": 3344,
      "sha256": "b26b39d13ae9e49f310a8201d70a924441fc9c63a8c9eb6ce031d92de82ca1df"
    },
    {
      "path": "agent_ready/connectors/mcp_client_config.json",
      "kind": "mcp_client_config",
      "purpose": "Generic MCP client configuration pointing to the bundled OligoVigil MCP server.",
      "bytes": 461,
      "sha256": "3444c0e272d4e13293331fef6f42754149ee88e2e485fb4e56021750d66f1b37"
    },
    {
      "path": "agent_ready/connectors/openapi_action_manifest.json",
      "kind": "openapi_action_manifest",
      "purpose": "OpenAPI action/plugin-style manifest for tools that import REST APIs.",
      "bytes": 713,
      "sha256": "52205d7457fda3c3e9b5b6cafb6d45d4abdbdad86142324b9f1bf3b4c4d01766"
    },
    {
      "path": "agent_ready/connectors/tool_profiles.json",
      "kind": "tool_profiles",
      "purpose": "Connection profiles for OpenAPI importers, MCP agents, documentation-first agents, notebooks, and web-fetch/RAG agents.",
      "bytes": 2168,
      "sha256": "8ab50597836d954616c8ecfa4523715aadb2641fc466d7e1985211017a88ff53"
    },
    {
      "path": "agent_ready/connectors/universal_agent_manifest.json",
      "kind": "universal_agent_manifest",
      "purpose": "Tool-agnostic discovery manifest for agents that can read a public URL.",
      "bytes": 2292,
      "sha256": "5ee51f1336791bf03ca597e724fff43fc2c7abe3d1481df6fa00836e17a2a580"
    },
    {
      "path": "agent_ready/llms-full.txt",
      "kind": "agent_discovery",
      "purpose": "Detailed machine-readable instructions for AI agents.",
      "bytes": 3742,
      "sha256": "e824b5d3ccb1da9639c6cbe067519e8701cfd586378073405afc7c8b36e903dc"
    },
    {
      "path": "agent_ready/llms.txt",
      "kind": "agent_discovery",
      "purpose": "Concise machine-readable instructions for AI agents.",
      "bytes": 2143,
      "sha256": "a5ea81fd1947e1cbc15ccc90e92f8b3e5488c218b6f43262f357a9b031f8fa5d"
    },
    {
      "path": "agent_ready/mcp_server/oligovigil_mcp_server.py",
      "kind": "mcp_server",
      "purpose": "Tool server exposing search, record detail, safety triage, modification profile, benchmark, and download manifest tools.",
      "bytes": 4239,
      "sha256": "ffdaff62973bb247b642e69c9129af680e4079b622f3e803d3734fbc9fc92432"
    },
    {
      "path": "agent_ready/oligovigil_skill/SKILL.md",
      "kind": "codex_skill",
      "purpose": "Optional Codex-specific skill instructions; not required for universal agent access.",
      "bytes": 3446,
      "sha256": "ca38484b39749a5cada236628f2e5f63e6340ef02f9af8dd860e0b1c2111de1c"
    },
    {
      "path": "agent_ready/prompts/oligovigil_prompt_pack.md",
      "kind": "prompt_pack",
      "purpose": "Reusable prompts for research agents and agentic client workflows.",
      "bytes": 1685,
      "sha256": "59accfe8bf1aa0409efdd449fd441d1edfe61cb29f99eae43aa29852a363627a"
    },
    {
      "path": "agent_ready/prompts/universal_vibecoding_connector.md",
      "kind": "universal_prompt",
      "purpose": "Copy-paste connector prompt for agentic coding tools.",
      "bytes": 1228,
      "sha256": "03b6bbb052cc612e70e56d90ed558e168e19d2974ccaa9cb85fc45afbcc52cee"
    },
    {
      "path": "agent_ready/templates/benchmark_reuse_notebook.py",
      "kind": "starter_template",
      "purpose": "Notebook-style benchmark reuse starter.",
      "bytes": 1226,
      "sha256": "4d682bdaa306dda49ee512cafc356020ec53a485531a9fa8b3843b550217fb0b"
    },
    {
      "path": "agent_ready/templates/streamlit_safety_dashboard.py",
      "kind": "starter_template",
      "purpose": "Small safety-evidence dashboard starter.",
      "bytes": 2180,
      "sha256": "bac93307e9f5e066ae3dfe72e7f2245a3f7e9693b5f9360060e066aecc670d0a"
    }
  ]
}