{
  "schemaVersion": "1.0",
  "item": {
    "slug": "ontopo",
    "name": "ontopo",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/alexpolonsky/ontopo",
    "canonicalUrl": "https://clawhub.ai/alexpolonsky/ontopo",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/ontopo",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=ontopo",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "scripts/ontopo-cli.py",
      "tests/test_commands.sh",
      "tests/test_edge_cases.sh",
      "tests/test_skill_selection.sh"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/ontopo"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/ontopo",
    "agentPageUrl": "https://openagent3.xyz/skills/ontopo/agent",
    "manifestUrl": "https://openagent3.xyz/skills/ontopo/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/ontopo/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Ontopo Restaurant Search",
        "body": "Search Israeli restaurants, check table availability, view menus, and get direct booking links on the Ontopo platform.\n\nDisclaimer: This is an unofficial tool, not affiliated with or endorsed by Ontopo. Availability data queries APIs that power the website and may not reflect actual availability. This tool does NOT place reservations - it generates booking links for manual confirmation on Ontopo's website. Provided \"as is\" without warranty of any kind."
      },
      {
        "title": "Quick Start",
        "body": "# Search for a restaurant\npython3 {baseDir}/scripts/ontopo-cli.py search \"taizu\"\n\n# Find available restaurants for tonight\npython3 {baseDir}/scripts/ontopo-cli.py available tomorrow 19:00 --city tel-aviv"
      },
      {
        "title": "cities",
        "body": "List supported cities.\n\npython3 {baseDir}/scripts/ontopo-cli.py cities\npython3 {baseDir}/scripts/ontopo-cli.py cities --json"
      },
      {
        "title": "categories",
        "body": "List venue categories.\n\npython3 {baseDir}/scripts/ontopo-cli.py categories"
      },
      {
        "title": "search",
        "body": "Find restaurants by name.\n\npython3 {baseDir}/scripts/ontopo-cli.py search \"taizu\"\npython3 {baseDir}/scripts/ontopo-cli.py search \"sushi\" --city tel-aviv\npython3 {baseDir}/scripts/ontopo-cli.py search \"taizu\" --json"
      },
      {
        "title": "available",
        "body": "Find venues with availability for date and time. Date and time are POSITIONAL arguments.\n\npython3 {baseDir}/scripts/ontopo-cli.py available tomorrow 19:00\npython3 {baseDir}/scripts/ontopo-cli.py available tomorrow 20:00 --city tel-aviv\npython3 {baseDir}/scripts/ontopo-cli.py available +3 19:00 --party-size 4"
      },
      {
        "title": "check",
        "body": "Check availability at specific venue. Supports venue name or ID.\n\npython3 {baseDir}/scripts/ontopo-cli.py check taizu tomorrow 19:00\npython3 {baseDir}/scripts/ontopo-cli.py check taizu +2 20:00\npython3 {baseDir}/scripts/ontopo-cli.py check 36960535 tomorrow 19:00 --party-size 4"
      },
      {
        "title": "range",
        "body": "Check availability across date range. Times is OPTIONAL (defaults to 19:00,20:00).\n\npython3 {baseDir}/scripts/ontopo-cli.py range taizu tomorrow +3\npython3 {baseDir}/scripts/ontopo-cli.py range 36960535 tomorrow +5 --times \"18:00,19:00,20:00\"\npython3 {baseDir}/scripts/ontopo-cli.py range taizu +1 +7 --party-size 4"
      },
      {
        "title": "menu",
        "body": "View venue menu with optional filters.\n\npython3 {baseDir}/scripts/ontopo-cli.py menu 66915792\npython3 {baseDir}/scripts/ontopo-cli.py menu 66915792 --section drinks\npython3 {baseDir}/scripts/ontopo-cli.py menu 66915792 --search \"pasta\" --max-price 100"
      },
      {
        "title": "info",
        "body": "Get venue details.\n\npython3 {baseDir}/scripts/ontopo-cli.py info 36960535\npython3 {baseDir}/scripts/ontopo-cli.py info 66915792 --json"
      },
      {
        "title": "url",
        "body": "Get booking URL for venue.\n\npython3 {baseDir}/scripts/ontopo-cli.py url 36960535\npython3 {baseDir}/scripts/ontopo-cli.py url 66915792 --locale he"
      },
      {
        "title": "Options Reference",
        "body": "OptionCommandsDescription--jsonallOutput in JSON format--localesearch, info, urlLanguage: en or he--cityavailable, searchCity filter (tel-aviv, jerusalem, etc.)--party-sizeavailable, check, rangeNumber of guests (default: 2)--timesrangeComma-separated times (default: 19:00,20:00)--sectionmenuFilter by menu section--searchmenuSearch menu items by name--min-pricemenuMinimum price filter--max-pricemenuMaximum price filter"
      },
      {
        "title": "Date/Time Formats",
        "body": "Dates: YYYY-MM-DD, today, tomorrow, +N (days from now)\nTimes: HH:MM, HHMM, 7pm, 19:30"
      },
      {
        "title": "Supported Cities",
        "body": "tel-aviv, jerusalem, haifa, herzliya, raanana, ramat-gan, netanya, ashdod, ashkelon, beer-sheva, eilat, modiin, rehovot, rishon-lezion, petah-tikva, holon, kfar-saba, hod-hasharon, caesarea"
      },
      {
        "title": "Workflow Example",
        "body": "# 1. Search for restaurant\npython3 {baseDir}/scripts/ontopo-cli.py search \"taizu\"\n# Note the venue ID from results (e.g., 36960535)\n\n# 2. Check availability\npython3 {baseDir}/scripts/ontopo-cli.py check 36960535 tomorrow --time 19:00\n\n# 3. View menu\npython3 {baseDir}/scripts/ontopo-cli.py menu 36960535\n\n# 4. Get booking link\npython3 {baseDir}/scripts/ontopo-cli.py url 36960535"
      },
      {
        "title": "Notes",
        "body": "Manual booking: Generates links - complete reservation on Ontopo website\nNo API key: Queries APIs that power the website\nBilingual: Supports Hebrew and English\nReal-time data: Availability fetched live from Ontopo"
      }
    ],
    "body": "Ontopo Restaurant Search\n\nSearch Israeli restaurants, check table availability, view menus, and get direct booking links on the Ontopo platform.\n\nDisclaimer: This is an unofficial tool, not affiliated with or endorsed by Ontopo. Availability data queries APIs that power the website and may not reflect actual availability. This tool does NOT place reservations - it generates booking links for manual confirmation on Ontopo's website. Provided \"as is\" without warranty of any kind.\n\nQuick Start\n# Search for a restaurant\npython3 {baseDir}/scripts/ontopo-cli.py search \"taizu\"\n\n# Find available restaurants for tonight\npython3 {baseDir}/scripts/ontopo-cli.py available tomorrow 19:00 --city tel-aviv\n\nCommands\ncities\n\nList supported cities.\n\npython3 {baseDir}/scripts/ontopo-cli.py cities\npython3 {baseDir}/scripts/ontopo-cli.py cities --json\n\ncategories\n\nList venue categories.\n\npython3 {baseDir}/scripts/ontopo-cli.py categories\n\nsearch\n\nFind restaurants by name.\n\npython3 {baseDir}/scripts/ontopo-cli.py search \"taizu\"\npython3 {baseDir}/scripts/ontopo-cli.py search \"sushi\" --city tel-aviv\npython3 {baseDir}/scripts/ontopo-cli.py search \"taizu\" --json\n\navailable\n\nFind venues with availability for date and time. Date and time are POSITIONAL arguments.\n\npython3 {baseDir}/scripts/ontopo-cli.py available tomorrow 19:00\npython3 {baseDir}/scripts/ontopo-cli.py available tomorrow 20:00 --city tel-aviv\npython3 {baseDir}/scripts/ontopo-cli.py available +3 19:00 --party-size 4\n\ncheck\n\nCheck availability at specific venue. Supports venue name or ID.\n\npython3 {baseDir}/scripts/ontopo-cli.py check taizu tomorrow 19:00\npython3 {baseDir}/scripts/ontopo-cli.py check taizu +2 20:00\npython3 {baseDir}/scripts/ontopo-cli.py check 36960535 tomorrow 19:00 --party-size 4\n\nrange\n\nCheck availability across date range. Times is OPTIONAL (defaults to 19:00,20:00).\n\npython3 {baseDir}/scripts/ontopo-cli.py range taizu tomorrow +3\npython3 {baseDir}/scripts/ontopo-cli.py range 36960535 tomorrow +5 --times \"18:00,19:00,20:00\"\npython3 {baseDir}/scripts/ontopo-cli.py range taizu +1 +7 --party-size 4\n\nmenu\n\nView venue menu with optional filters.\n\npython3 {baseDir}/scripts/ontopo-cli.py menu 66915792\npython3 {baseDir}/scripts/ontopo-cli.py menu 66915792 --section drinks\npython3 {baseDir}/scripts/ontopo-cli.py menu 66915792 --search \"pasta\" --max-price 100\n\ninfo\n\nGet venue details.\n\npython3 {baseDir}/scripts/ontopo-cli.py info 36960535\npython3 {baseDir}/scripts/ontopo-cli.py info 66915792 --json\n\nurl\n\nGet booking URL for venue.\n\npython3 {baseDir}/scripts/ontopo-cli.py url 36960535\npython3 {baseDir}/scripts/ontopo-cli.py url 66915792 --locale he\n\nOptions Reference\nOption\tCommands\tDescription\n--json\tall\tOutput in JSON format\n--locale\tsearch, info, url\tLanguage: en or he\n--city\tavailable, search\tCity filter (tel-aviv, jerusalem, etc.)\n--party-size\tavailable, check, range\tNumber of guests (default: 2)\n--times\trange\tComma-separated times (default: 19:00,20:00)\n--section\tmenu\tFilter by menu section\n--search\tmenu\tSearch menu items by name\n--min-price\tmenu\tMinimum price filter\n--max-price\tmenu\tMaximum price filter\nDate/Time Formats\n\nDates: YYYY-MM-DD, today, tomorrow, +N (days from now) Times: HH:MM, HHMM, 7pm, 19:30\n\nSupported Cities\n\ntel-aviv, jerusalem, haifa, herzliya, raanana, ramat-gan, netanya, ashdod, ashkelon, beer-sheva, eilat, modiin, rehovot, rishon-lezion, petah-tikva, holon, kfar-saba, hod-hasharon, caesarea\n\nWorkflow Example\n# 1. Search for restaurant\npython3 {baseDir}/scripts/ontopo-cli.py search \"taizu\"\n# Note the venue ID from results (e.g., 36960535)\n\n# 2. Check availability\npython3 {baseDir}/scripts/ontopo-cli.py check 36960535 tomorrow --time 19:00\n\n# 3. View menu\npython3 {baseDir}/scripts/ontopo-cli.py menu 36960535\n\n# 4. Get booking link\npython3 {baseDir}/scripts/ontopo-cli.py url 36960535\n\nNotes\nManual booking: Generates links - complete reservation on Ontopo website\nNo API key: Queries APIs that power the website\nBilingual: Supports Hebrew and English\nReal-time data: Availability fetched live from Ontopo"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/alexpolonsky/ontopo",
    "publisherUrl": "https://clawhub.ai/alexpolonsky/ontopo",
    "owner": "alexpolonsky",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/ontopo",
    "downloadUrl": "https://openagent3.xyz/downloads/ontopo",
    "agentUrl": "https://openagent3.xyz/skills/ontopo/agent",
    "manifestUrl": "https://openagent3.xyz/skills/ontopo/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/ontopo/agent.md"
  }
}