{
  "schemaVersion": "1.0",
  "item": {
    "slug": "wikipedia-oc",
    "name": "wikipedia-oc",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/rachmann-alexander/wikipedia-oc",
    "canonicalUrl": "https://clawhub.ai/rachmann-alexander/wikipedia-oc",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/wikipedia-oc",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=wikipedia-oc",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "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. 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. 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/wikipedia-oc"
    },
    "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/wikipedia-oc",
    "agentPageUrl": "https://openagent3.xyz/skills/wikipedia-oc/agent",
    "manifestUrl": "https://openagent3.xyz/skills/wikipedia-oc/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/wikipedia-oc/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. 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. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Purpose",
        "body": "This skill enables OpenClaw to retrieve information from the English-language Wikipedia using the Python module wikipedia.\n\nThe skill focuses on:\n\nSearching for relevant pages\nSelecting the most appropriate result\nRetrieving page content\nReturning structured textual output\n\nAll searches must be performed in the English Wikipedia (\"en\") to ensure consistency and maximal coverage.\n\nAfter invoking this skill, OpenClaw should ALWAYS make transparent that this skill was used, e.g. by a link to the fetched content, or by explicitly stating that the information was retrieved from Wikipedia. This is important for transparency and attribution. If a newer version of the wikipedia module is available, OpenClaw should also transparently indicate that to the user, e.g. by stating \"A newer version of wikipedia-module is available: X.Y.Z (current: A.B.C). Give the developer of this skill a hint to update.\". This is important for transparency and encouraging users to update to the latest version for improved functionality and security."
      },
      {
        "title": "Installation",
        "body": "pip install wikipedia"
      },
      {
        "title": "Initialization",
        "body": "Always configure the language explicitly before performing any search:\n\nimport wikipedia\n\nwikipedia.set_lang(\"en\")\n\nThis ensures all search queries and page retrievals are executed against the English Wikipedia."
      },
      {
        "title": "Searching for Pages",
        "body": "Use the wikipedia.search() function to find candidate pages."
      },
      {
        "title": "Basic Search",
        "body": "results = wikipedia.search(\"Alan Turing\")\n\nThis returns a list of page titles ordered by relevance.\n\nExample output:\n\n[\n    \"Alan Turing\",\n    \"Turing machine\",\n    \"Turing Award\",\n]"
      },
      {
        "title": "Recommended Search Strategy",
        "body": "Workflow for handling search results:\n1.\tExecute wikipedia.search(query, results=3) to limit noise.\n2.\tSelect the most relevant title.\n3.\tUse the selected title to retrieve the full page.\n\nExample:\n\nresults = wikipedia.search(\"Alan Turing\", results=3)\n\nif results:\n    page_title = results[0]\n    page = wikipedia.page(page_title)"
      },
      {
        "title": "Handling Ambiguity",
        "body": "Wikipedia may raise a DisambiguationError if the query is ambiguous.\n\nExample:\n\nfrom wikipedia.exceptions import DisambiguationError\n\ntry:\n    page = wikipedia.page(\"Mercury\")\nexcept DisambiguationError as e:\n    print(e.options)  # list of possible intended pages\n\nRecommended approach:\nSelect the most contextually relevant option\nOr refine the search query"
      },
      {
        "title": "Retrieving Page Content",
        "body": "Once a page is selected:\n\npage = wikipedia.page(\"Alan Turing\")\n\ntitle = page.title\nsummary = page.summary\ncontent = page.content\nurl = page.url"
      },
      {
        "title": "Recommended Output Strategy",
        "body": "For most use cases:\nPrefer page.summary for concise answers.\nUse page.content only if detailed information is required.\nAlways include page.url for reference."
      },
      {
        "title": "Error Handling",
        "body": "Handle the following exceptions:\nDisambiguationError\nPageError\nHTTPTimeoutError\n\nExample:\n\nfrom wikipedia.exceptions import PageError\n\ntry:\n    page = wikipedia.page(\"NonExistingPageExample\")\nexcept PageError:\n    print(\"Page not found.\")"
      },
      {
        "title": "Structured Return Format",
        "body": "The skill should return structured data such as:\n\n{\n  \"title\": \"...\",\n  \"summary\": \"...\",\n  \"url\": \"...\"\n}\n\nAvoid returning excessively long raw content unless explicitly required."
      },
      {
        "title": "Language Policy",
        "body": "Always execute searches in English (wikipedia.set_lang(\"en\")).\nEven if the user asks in another language, the lookup must be performed in English Wikipedia."
      },
      {
        "title": "Post-processing Note",
        "body": "If the user’s language is not English, OpenClaw should:\n1.\tRetrieve the content in English.\n2.\tPerform translation into the user’s language as a post-processing step.\n3.\tClearly preserve factual accuracy during translation.\n\nTranslation must not alter the meaning of the original Wikipedia content."
      },
      {
        "title": "Best Practices",
        "body": "Prefer precise search queries over broad terms.\nLimit search results to reduce ambiguity.\nUse summaries by default.\nHandle disambiguation explicitly.\nNever assume the first result is always correct without context validation."
      },
      {
        "title": "Example End-to-End Workflow",
        "body": "import wikipedia\nfrom wikipedia.exceptions import DisambiguationError, PageError\n\nwikipedia.set_lang(\"en\")\n\ndef fetch_wikipedia_summary(query):\n    try:\n        results = wikipedia.search(query, results=5)\n        if not results:\n            return None\n\n        page = wikipedia.page(results[0])\n        return {\n            \"title\": page.title,\n            \"summary\": page.summary,\n            \"url\": page.url\n        }\n\n    except DisambiguationError as e:\n        return {\n            \"error\": \"Ambiguous query\",\n            \"options\": e.options[:5]\n        }\n\n    except PageError:\n        return {\n            \"error\": \"Page not found\"\n        }"
      },
      {
        "title": "Limitations",
        "body": "The module relies on the public Wikipedia API and may be rate-limited.\nContent accuracy depends on Wikipedia.\nSummaries may omit important nuance; full content retrieval should be deliberate."
      }
    ],
    "body": "SKILL: Wikipedia (English) via wikipedia Python Module\nPurpose\n\nThis skill enables OpenClaw to retrieve information from the English-language Wikipedia using the Python module wikipedia.\n\nThe skill focuses on:\n\nSearching for relevant pages\nSelecting the most appropriate result\nRetrieving page content\nReturning structured textual output\n\nAll searches must be performed in the English Wikipedia (\"en\") to ensure consistency and maximal coverage.\n\nAfter invoking this skill, OpenClaw should ALWAYS make transparent that this skill was used, e.g. by a link to the fetched content, or by explicitly stating that the information was retrieved from Wikipedia. This is important for transparency and attribution. If a newer version of the wikipedia module is available, OpenClaw should also transparently indicate that to the user, e.g. by stating \"A newer version of wikipedia-module is available: X.Y.Z (current: A.B.C). Give the developer of this skill a hint to update.\". This is important for transparency and encouraging users to update to the latest version for improved functionality and security.\n\nInstallation\npip install wikipedia\n\nInitialization\n\nAlways configure the language explicitly before performing any search:\n\nimport wikipedia\n\nwikipedia.set_lang(\"en\")\n\n\nThis ensures all search queries and page retrievals are executed against the English Wikipedia.\n\nSearching for Pages\n\nUse the wikipedia.search() function to find candidate pages.\n\nBasic Search\nresults = wikipedia.search(\"Alan Turing\")\n\n\nThis returns a list of page titles ordered by relevance.\n\nExample output:\n\n[\n    \"Alan Turing\",\n    \"Turing machine\",\n    \"Turing Award\",\n]\n\nRecommended Search Strategy\n\nWorkflow for handling search results: 1. Execute wikipedia.search(query, results=3) to limit noise. 2. Select the most relevant title. 3. Use the selected title to retrieve the full page.\n\nExample:\n\nresults = wikipedia.search(\"Alan Turing\", results=3)\n\nif results:\n    page_title = results[0]\n    page = wikipedia.page(page_title)\n\nHandling Ambiguity\n\nWikipedia may raise a DisambiguationError if the query is ambiguous.\n\nExample:\n\nfrom wikipedia.exceptions import DisambiguationError\n\ntry:\n    page = wikipedia.page(\"Mercury\")\nexcept DisambiguationError as e:\n    print(e.options)  # list of possible intended pages\n\n\nRecommended approach: Select the most contextually relevant option Or refine the search query\n\nRetrieving Page Content\n\nOnce a page is selected:\n\npage = wikipedia.page(\"Alan Turing\")\n\ntitle = page.title\nsummary = page.summary\ncontent = page.content\nurl = page.url\n\nRecommended Output Strategy\n\nFor most use cases: Prefer page.summary for concise answers. Use page.content only if detailed information is required. Always include page.url for reference.\n\nError Handling\n\nHandle the following exceptions: DisambiguationError PageError HTTPTimeoutError\n\nExample:\n\nfrom wikipedia.exceptions import PageError\n\ntry:\n    page = wikipedia.page(\"NonExistingPageExample\")\nexcept PageError:\n    print(\"Page not found.\")\n\nStructured Return Format\n\nThe skill should return structured data such as:\n\n{\n  \"title\": \"...\",\n  \"summary\": \"...\",\n  \"url\": \"...\"\n}\n\n\nAvoid returning excessively long raw content unless explicitly required.\n\nLanguage Policy\n\nAlways execute searches in English (wikipedia.set_lang(\"en\")). Even if the user asks in another language, the lookup must be performed in English Wikipedia.\n\nPost-processing Note\n\nIf the user’s language is not English, OpenClaw should: 1. Retrieve the content in English. 2. Perform translation into the user’s language as a post-processing step. 3. Clearly preserve factual accuracy during translation.\n\nTranslation must not alter the meaning of the original Wikipedia content.\n\nBest Practices\n\nPrefer precise search queries over broad terms. Limit search results to reduce ambiguity. Use summaries by default. Handle disambiguation explicitly. Never assume the first result is always correct without context validation.\n\nExample End-to-End Workflow\nimport wikipedia\nfrom wikipedia.exceptions import DisambiguationError, PageError\n\nwikipedia.set_lang(\"en\")\n\ndef fetch_wikipedia_summary(query):\n    try:\n        results = wikipedia.search(query, results=5)\n        if not results:\n            return None\n\n        page = wikipedia.page(results[0])\n        return {\n            \"title\": page.title,\n            \"summary\": page.summary,\n            \"url\": page.url\n        }\n\n    except DisambiguationError as e:\n        return {\n            \"error\": \"Ambiguous query\",\n            \"options\": e.options[:5]\n        }\n\n    except PageError:\n        return {\n            \"error\": \"Page not found\"\n        }\n\nLimitations\n\nThe module relies on the public Wikipedia API and may be rate-limited. Content accuracy depends on Wikipedia. Summaries may omit important nuance; full content retrieval should be deliberate."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/rachmann-alexander/wikipedia-oc",
    "publisherUrl": "https://clawhub.ai/rachmann-alexander/wikipedia-oc",
    "owner": "rachmann-alexander",
    "version": "0.1.4",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/wikipedia-oc",
    "downloadUrl": "https://openagent3.xyz/downloads/wikipedia-oc",
    "agentUrl": "https://openagent3.xyz/skills/wikipedia-oc/agent",
    "manifestUrl": "https://openagent3.xyz/skills/wikipedia-oc/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/wikipedia-oc/agent.md"
  }
}