[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6HX3SC6S8DXFNNTZDWB0X34":3,"skill-same:01M6HX3SC6S8DXFNNTZDWB0X34":74},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":41,"linkOnly":42,"markdownContent":43,"markdownBody":44,"frontMatter":45,"refName":46,"commitSha":47,"skillDirectory":48,"forksCount":49,"repositoryHtmlUrl":50,"repositoryHomepageUrl":6,"ownerHtmlUrl":51,"ownerBlogUrl":52,"ownerDescription":6,"updatedAt":53,"install":54,"resources":67},"01M6HX3SC6S8DXFNNTZDWB0X34","ssl-proxy-debug-workflow",null,"Systematic debugging workflow for SSL\u002Fproxy connectivity issues with government and institutional websites","HKUDS\u002FAgentPilot","HKUDS","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F118165258?v=4","01M6HW8VRNZP64G0P4MVJW2KKQ","✨Data Intelligence Lab@HKU✨","01M6HW8VWZVHBRHYH3T330PFWV",8024,"MIT","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Fssl-proxy-debug-workflow\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40],"workflow","debug","proxy","ssl","ssl proxy debug workflow","systematic debugging","debugging","issues","connectivity","systematic","with","for","2026-11-10 10:12:30",false,"---\nname: ssl-proxy-debug-workflow\ndescription: Systematic debugging workflow for SSL\u002Fproxy connectivity issues with government and institutional websites\n---\n\n# SSL\u002FProxy Debugging Workflow for Government Websites\n\nThis skill provides a systematic approach to troubleshoot and resolve SSL certificate, proxy, and connectivity issues commonly encountered when accessing government and institutional websites.\n\n## Recognizing the Problem\n\nTypical symptoms indicating SSL\u002Fproxy issues:\n- `requests.exceptions.SSLError` or `certificate verify failed` errors\n- Connection timeouts despite the site being publicly accessible\n- Proxy authentication failures\n- HTTP 403\u002F407 errors on otherwise valid requests\n- Mixed success across different access methods (browser works, script fails)\n\n## Systematic Troubleshooting Steps\n\n### Step 1: Verify Basic Connectivity\n\nBefore assuming SSL issues, confirm the target is reachable:\n\n```python\nimport requests\nimport socket\n\n# Test DNS resolution\ntry:\n    ip = socket.gethostbyname('example.gov')\n    print(f\"DNS resolved: {ip}\")\nexcept Exception as e:\n    print(f\"DNS failure: {e}\")\n\n# Test basic TCP connectivity\ntry:\n    sock = socket.create_connection(('example.gov', 443), timeout=5)\n    sock.close()\n    print(\"TCP connection successful\")\nexcept Exception as e:\n    print(f\"TCP failure: {e}\")\n```\n\n### Step 2: Try Protocol Variations\n\nTest both HTTP and HTTPS, and try without www prefix:\n\n```python\nurls_to_try = [\n    'https:\u002F\u002Fexample.gov',\n    'http:\u002F\u002Fexample.gov',\n    'https:\u002F\u002Fwww.example.gov',\n    'http:\u002F\u002Fwww.example.gov',\n    'https:\u002F\u002Fsubdomain.example.gov',\n]\n\nfor url in urls_to_try:\n    try:\n        response = requests.get(url, timeout=10)\n        print(f\"SUCCESS: {url} - Status: {response.status_code}\")\n        break\n    except Exception as e:\n        print(f\"FAILED: {url} - {type(e).__name__}: {e}\")\n```\n\n### Step 3: Disable SSL Verification (Temporary Debug)\n\nFor debugging only - never use in production with sensitive data:\n\n```python\nimport urllib3\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\nresponse = requests.get('https:\u002F\u002Fexample.gov', verify=False, timeout=10)\nprint(f\"Status: {response.status_code}\")\n```\n\n### Step 4: Manipulate Proxy Settings\n\nGovernment networks often require specific proxy configurations:\n\n```python\n# Try without proxy\nsession = requests.Session()\nsession.trust_env = False  # Ignore system proxy settings\nresponse = session.get('https:\u002F\u002Fexample.gov', timeout=10)\n\n# Try with explicit proxy\nproxies = {\n    'http': 'http:\u002F\u002Fproxy.example.com:8080',\n    'https': 'http:\u002F\u002Fproxy.example.com:8080',\n}\nresponse = requests.get('https:\u002F\u002Fexample.gov', proxies=proxies, timeout=10)\n\n# Try with proxy authentication\nproxies = {\n    'https': 'http:\u002F\u002Fusername:password@proxy.example.com:8080',\n}\n```\n\n### Step 5: Adjust Request Headers\n\nSome government sites block automated requests:\n\n```python\nheaders = {\n    'User-Agent': 'Mozilla\u002F5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\u002F537.36',\n    'Accept': 'text\u002Fhtml,application\u002Fxhtml+xml,application\u002Fxml;q=0.9,*\u002F*;q=0.8',\n    'Accept-Language': 'en-US,en;q=0.5',\n    'Accept-Encoding': 'gzip, deflate',\n    'Connection': 'keep-alive',\n}\nresponse = requests.get('https:\u002F\u002Fexample.gov', headers=headers, timeout=10)\n```\n\n### Step 6: Test Alternative Domains\u002FEndpoints\n\nGovernment data may be available through multiple portals:\n\n```python\n# Common alternative patterns\nalternative_domains = [\n    'data.example.gov',\n    'api.example.gov',\n    'services.example.gov',\n    'example.illinois.gov',  # State-specific\n    'www.epa.gov\u002Fexample',   # Federal parent site\n]\n\n# Search for data mirrors\n# Check data.gov, state open data portals, etc.\n```\n\n### Step 7: Increase Timeouts and Add Retries\n\nGovernment sites may be slow or rate-limit:\n\n```python\nfrom requests.adapters import HTTPAdapter\nfrom urllib3.util.retry import Retry\n\nsession = requests.Session()\nretry = Retry(\n    total=5,\n    backoff_factor=2,\n    status_forcelist=[429, 500, 502, 503, 504],\n)\nadapter = HTTPAdapter(max_retries=retry)\nsession.mount('https:\u002F\u002F', adapter)\nsession.mount('http:\u002F\u002F', adapter)\n\nresponse = session.get('https:\u002F\u002Fexample.gov', timeout=30)\n```\n\n## Fallback Strategies When Primary Source Fails\n\n### Strategy A: Find Alternative Data Sources\n\n```python\n# 1. Check federal aggregators\n#    - data.gov\n#    - epa.gov (for environmental data)\n#    - census.gov (for demographic data)\n\n# 2. Check state open data portals\n#    - Format: data.{state}.gov or {state}.gov\u002Fopen-data\n\n# 3. Check county\u002Fmunicipal portals\n#    - Often have more accessible APIs\n\n# 4. Search for cached\u002Farchived versions\n#    - Web Archive (archive.org)\n#    - Google Cache\n```\n\n### Strategy B: Use Search to Discover Working Endpoints\n\n```python\n# Search for the data with specific file types\nsearch_queries = [\n    'site:example.gov well data filetype:csv',\n    'site:example.gov water quality filetype:json',\n    'example.gov API endpoint documentation',\n]\n```\n\n### Strategy C: Manual Download as Last Resort\n\nIf programmatic access consistently fails:\n1. Document the exact URL that works in a browser\n2. Note any authentication\u002Fcookie requirements\n3. Consider browser automation (Selenium\u002FPlaywright) as fallback\n4. Schedule manual data collection if volume permits\n\n## Complete Troubleshooting Function\n\n```python\ndef debug_government_url(base_url, max_attempts=5):\n    \"\"\"Systematic debugging for government website access.\"\"\"\n    import requests\n    import urllib3\n    from requests.adapters import HTTPAdapter\n    from urllib3.util.retry import Retry\n    \n    urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n    \n    # Generate URL variations\n    variations = []\n    for proto in ['https', 'http']:\n        for prefix in ['', 'www.']:\n            variations.append(f\"{proto}:\u002F\u002F{prefix}{base_url}\")\n    \n    # Configure retry session\n    session = requests.Session()\n    session.trust_env = False  # Bypass system proxy\n    retry = Retry(total=3, backoff_factor=1, status_forcelist=[500, 502, 503, 504])\n    adapter = HTTPAdapter(max_retries=retry)\n    session.mount('https:\u002F\u002F', adapter)\n    \n    headers = {'User-Agent': 'Mozilla\u002F5.0'}\n    \n    for url in variations:\n        print(f\"Trying: {url}\")\n        try:\n            # First attempt: normal\n            resp = session.get(url, headers=headers, timeout=15)\n            if resp.status_code \u003C 400:\n                print(f\"SUCCESS (normal): {url}\")\n                return {'url': url, 'method': 'normal', 'response': resp}\n        except Exception as e:\n            print(f\"  Normal failed: {e}\")\n        \n        try:\n            # Second attempt: no SSL verify\n            resp = session.get(url, headers=headers, verify=False, timeout=15)\n            if resp.status_code \u003C 400:\n                print(f\"SUCCESS (no-verify): {url}\")\n                return {'url': url, 'method': 'no-verify', 'response': resp}\n        except Exception as e:\n            print(f\"  No-verify failed: {e}\")\n    \n    return {'error': 'All attempts failed', 'url': base_url}\n```\n\n## Best Practices\n\n1. **Never hardcode credentials** - Use environment variables for proxy auth\n2. **Log all attempts** - Document which methods succeeded\u002Ffailed for future reference\n3. **Respect rate limits** - Add delays between requests (1-2 seconds minimum)\n4. **Check robots.txt** - Verify scraping is permitted\n5. **Have exit criteria** - Know when to abandon a source and find alternatives\n6. **Cache successful configurations** - Save working URL\u002Fmethod combinations\n\n## When to Give Up\n\nAfter exhausting these steps, consider:\n- The data may no longer be publicly available\n- The site may require special authentication (contact the agency)\n- Alternative sources may have the same data in more accessible format\n- The task scope may need adjustment based on data availability","# SSL\u002FProxy Debugging Workflow for Government Websites\n\nThis skill provides a systematic approach to troubleshoot and resolve SSL certificate, proxy, and connectivity issues commonly encountered when accessing government and institutional websites.\n\n## Recognizing the Problem\n\nTypical symptoms indicating SSL\u002Fproxy issues:\n- `requests.exceptions.SSLError` or `certificate verify failed` errors\n- Connection timeouts despite the site being publicly accessible\n- Proxy authentication failures\n- HTTP 403\u002F407 errors on otherwise valid requests\n- Mixed success across different access methods (browser works, script fails)\n\n## Systematic Troubleshooting Steps\n\n### Step 1: Verify Basic Connectivity\n\nBefore assuming SSL issues, confirm the target is reachable:\n\n```python\nimport requests\nimport socket\n\n# Test DNS resolution\ntry:\n    ip = socket.gethostbyname('example.gov')\n    print(f\"DNS resolved: {ip}\")\nexcept Exception as e:\n    print(f\"DNS failure: {e}\")\n\n# Test basic TCP connectivity\ntry:\n    sock = socket.create_connection(('example.gov', 443), timeout=5)\n    sock.close()\n    print(\"TCP connection successful\")\nexcept Exception as e:\n    print(f\"TCP failure: {e}\")\n```\n\n### Step 2: Try Protocol Variations\n\nTest both HTTP and HTTPS, and try without www prefix:\n\n```python\nurls_to_try = [\n    'https:\u002F\u002Fexample.gov',\n    'http:\u002F\u002Fexample.gov',\n    'https:\u002F\u002Fwww.example.gov',\n    'http:\u002F\u002Fwww.example.gov',\n    'https:\u002F\u002Fsubdomain.example.gov',\n]\n\nfor url in urls_to_try:\n    try:\n        response = requests.get(url, timeout=10)\n        print(f\"SUCCESS: {url} - Status: {response.status_code}\")\n        break\n    except Exception as e:\n        print(f\"FAILED: {url} - {type(e).__name__}: {e}\")\n```\n\n### Step 3: Disable SSL Verification (Temporary Debug)\n\nFor debugging only - never use in production with sensitive data:\n\n```python\nimport urllib3\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\nresponse = requests.get('https:\u002F\u002Fexample.gov', verify=False, timeout=10)\nprint(f\"Status: {response.status_code}\")\n```\n\n### Step 4: Manipulate Proxy Settings\n\nGovernment networks often require specific proxy configurations:\n\n```python\n# Try without proxy\nsession = requests.Session()\nsession.trust_env = False  # Ignore system proxy settings\nresponse = session.get('https:\u002F\u002Fexample.gov', timeout=10)\n\n# Try with explicit proxy\nproxies = {\n    'http': 'http:\u002F\u002Fproxy.example.com:8080',\n    'https': 'http:\u002F\u002Fproxy.example.com:8080',\n}\nresponse = requests.get('https:\u002F\u002Fexample.gov', proxies=proxies, timeout=10)\n\n# Try with proxy authentication\nproxies = {\n    'https': 'http:\u002F\u002Fusername:password@proxy.example.com:8080',\n}\n```\n\n### Step 5: Adjust Request Headers\n\nSome government sites block automated requests:\n\n```python\nheaders = {\n    'User-Agent': 'Mozilla\u002F5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\u002F537.36',\n    'Accept': 'text\u002Fhtml,application\u002Fxhtml+xml,application\u002Fxml;q=0.9,*\u002F*;q=0.8',\n    'Accept-Language': 'en-US,en;q=0.5',\n    'Accept-Encoding': 'gzip, deflate',\n    'Connection': 'keep-alive',\n}\nresponse = requests.get('https:\u002F\u002Fexample.gov', headers=headers, timeout=10)\n```\n\n### Step 6: Test Alternative Domains\u002FEndpoints\n\nGovernment data may be available through multiple portals:\n\n```python\n# Common alternative patterns\nalternative_domains = [\n    'data.example.gov',\n    'api.example.gov',\n    'services.example.gov',\n    'example.illinois.gov',  # State-specific\n    'www.epa.gov\u002Fexample',   # Federal parent site\n]\n\n# Search for data mirrors\n# Check data.gov, state open data portals, etc.\n```\n\n### Step 7: Increase Timeouts and Add Retries\n\nGovernment sites may be slow or rate-limit:\n\n```python\nfrom requests.adapters import HTTPAdapter\nfrom urllib3.util.retry import Retry\n\nsession = requests.Session()\nretry = Retry(\n    total=5,\n    backoff_factor=2,\n    status_forcelist=[429, 500, 502, 503, 504],\n)\nadapter = HTTPAdapter(max_retries=retry)\nsession.mount('https:\u002F\u002F', adapter)\nsession.mount('http:\u002F\u002F', adapter)\n\nresponse = session.get('https:\u002F\u002Fexample.gov', timeout=30)\n```\n\n## Fallback Strategies When Primary Source Fails\n\n### Strategy A: Find Alternative Data Sources\n\n```python\n# 1. Check federal aggregators\n#    - data.gov\n#    - epa.gov (for environmental data)\n#    - census.gov (for demographic data)\n\n# 2. Check state open data portals\n#    - Format: data.{state}.gov or {state}.gov\u002Fopen-data\n\n# 3. Check county\u002Fmunicipal portals\n#    - Often have more accessible APIs\n\n# 4. Search for cached\u002Farchived versions\n#    - Web Archive (archive.org)\n#    - Google Cache\n```\n\n### Strategy B: Use Search to Discover Working Endpoints\n\n```python\n# Search for the data with specific file types\nsearch_queries = [\n    'site:example.gov well data filetype:csv',\n    'site:example.gov water quality filetype:json',\n    'example.gov API endpoint documentation',\n]\n```\n\n### Strategy C: Manual Download as Last Resort\n\nIf programmatic access consistently fails:\n1. Document the exact URL that works in a browser\n2. Note any authentication\u002Fcookie requirements\n3. Consider browser automation (Selenium\u002FPlaywright) as fallback\n4. Schedule manual data collection if volume permits\n\n## Complete Troubleshooting Function\n\n```python\ndef debug_government_url(base_url, max_attempts=5):\n    \"\"\"Systematic debugging for government website access.\"\"\"\n    import requests\n    import urllib3\n    from requests.adapters import HTTPAdapter\n    from urllib3.util.retry import Retry\n    \n    urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n    \n    # Generate URL variations\n    variations = []\n    for proto in ['https', 'http']:\n        for prefix in ['', 'www.']:\n            variations.append(f\"{proto}:\u002F\u002F{prefix}{base_url}\")\n    \n    # Configure retry session\n    session = requests.Session()\n    session.trust_env = False  # Bypass system proxy\n    retry = Retry(total=3, backoff_factor=1, status_forcelist=[500, 502, 503, 504])\n    adapter = HTTPAdapter(max_retries=retry)\n    session.mount('https:\u002F\u002F', adapter)\n    \n    headers = {'User-Agent': 'Mozilla\u002F5.0'}\n    \n    for url in variations:\n        print(f\"Trying: {url}\")\n        try:\n            # First attempt: normal\n            resp = session.get(url, headers=headers, timeout=15)\n            if resp.status_code \u003C 400:\n                print(f\"SUCCESS (normal): {url}\")\n                return {'url': url, 'method': 'normal', 'response': resp}\n        except Exception as e:\n            print(f\"  Normal failed: {e}\")\n        \n        try:\n            # Second attempt: no SSL verify\n            resp = session.get(url, headers=headers, verify=False, timeout=15)\n            if resp.status_code \u003C 400:\n                print(f\"SUCCESS (no-verify): {url}\")\n                return {'url': url, 'method': 'no-verify', 'response': resp}\n        except Exception as e:\n            print(f\"  No-verify failed: {e}\")\n    \n    return {'error': 'All attempts failed', 'url': base_url}\n```\n\n## Best Practices\n\n1. **Never hardcode credentials** - Use environment variables for proxy auth\n2. **Log all attempts** - Document which methods succeeded\u002Ffailed for future reference\n3. **Respect rate limits** - Add delays between requests (1-2 seconds minimum)\n4. **Check robots.txt** - Verify scraping is permitted\n5. **Have exit criteria** - Know when to abandon a source and find alternatives\n6. **Cache successful configurations** - Save working URL\u002Fmethod combinations\n\n## When to Give Up\n\nAfter exhausting these steps, consider:\n- The data may no longer be publicly available\n- The site may require special authentication (contact the agency)\n- Alternative sources may have the same data in more accessible format\n- The task scope may need adjustment based on data availability",{"name":5,"description":7},"main","6b84b0689ca0d9e7b1e4061188ff6b60758e0f8a","openspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Fssl-proxy-debug-workflow",941,"https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot","https:\u002F\u002Fgithub.com\u002FHKUDS","https:\u002F\u002Fsites.google.com\u002Fview\u002Fchaoh","2026-11-12 22:26:39",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add HKUDS\u002FAgentPilot --skill ssl-proxy-debug-workflow",{"tool":60,"command":61},"bunx","bunx skills add HKUDS\u002FAgentPilot --skill ssl-proxy-debug-workflow",{"tool":63,"command":64},"pnpm","pnpm dlx skills add HKUDS\u002FAgentPilot --skill ssl-proxy-debug-workflow","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Fssl-proxy-debug-workflow\u002FSKILL.md",true,[68],{"path":69,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":72,"sourceHtmlUrl":73},".skill_id","OTHER","其他",38,"https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Fssl-proxy-debug-workflow\u002F.skill_id",[75,94,113,134,157,180],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":41},"01M6HYB297NDABRERJRVG0K8R0","agentpilot","Set up AgentPilot and use its single entry to prepare missing inputs and run configured RSI experiments. Use when the user requests AgentPilot installation or work with AgentPilot.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fplugins\u002Fagentpilot\u002Fskills\u002Fagentpilot\u002FSKILL.md",[],[77,82,83,39,84,85,86,87,88,89,90,91,92,93],"prepare","requests","missing","installation","rsi","up","use","user","work","SET","run","experiments",{"skillNo":95,"name":96,"nameZh":6,"description":97,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":98,"categories":99,"keywords":100,"publishedAt":41},"01M6HYAYWXTTE1J7DJM0MFNQ4H","remember","Review auto-memory entries and propose promotions to OPENSPACE.md, OPENSPACE.local.md, or retained auto-memory topics; detect duplicates, stale facts, conflicts, and ambiguous entries before making changes.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fopenspace\u002Fskills\u002Fremember\u002FSKILL.md",[],[96,101,102,103,104,105,106,107,108,109,110,111,112],"memory","review","auto","openspace","changes","facts","detect","entries","local","conflicts","stale","duplicates",{"skillNo":114,"name":115,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":120,"publishedAt":41},"01M6HYAVMPM4SBDV60R2B5HPV8","skill-discovery","Search reusable OpenSpace skills locally, and browse cloud packages step by step when a cloud skill may help. Reusing proven skills saves tokens, improves reliability, and extends your capabilities beyond built-in tools.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fopenspace\u002Fhost_skills\u002Fskill-discovery\u002FSKILL.md",[119],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[121,122,123,104,124,125,126,127,128,129,130,131,132,133],"skill discovery","discovery","reusable","step by step","tokens","packages","help","cloud","reliability","capabilities","browse","search","Tools",{"skillNo":135,"name":136,"nameZh":6,"description":137,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":138,"categories":139,"keywords":141,"publishedAt":41},"01M6HYAR811B3RB0M50RBEDGN6","delegate-task","Delegate tasks to OpenSpace — a full-stack autonomous worker for coding, DevOps, web research, and desktop automation, backed by an extensive MCP tool and skill library. Skills auto-improve through use, reducing token consumption over time. A cloud community lets agents share and collectively evolve reusable skills.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fopenspace\u002Fhost_skills\u002Fdelegate-task\u002FSKILL.md",[140],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[142,143,144,104,145,146,147,148,149,123,103,88,150,151,152,40,153,154,155,156],"delegate","task","delegate task","time","improve","desktop automation","worker","community","autonomous","tool","stack","share","tasks","automation","MCP",{"skillNo":158,"name":159,"nameZh":6,"description":160,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":161,"categories":162,"keywords":163,"publishedAt":41},"01M6HYAM9FSGV6E52AYENDQXYH","write-special-chars-ts-check","Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) using a Python heredoc script, plus a reliable TypeScript type-checking step that filters output to only the newly-written files to avoid being misled by pre-existing errors.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Flegacy\u002Fv1\u002Fshowcase\u002Fskills\u002Fwrite-special-chars-ts-check\u002FSKILL.md",[],[164,165,166,167,168,169,170,171,172,173,174,175,176,177,40,178,179],"write special chars ts check","write","check","type","files","filters","only","template","file","python","typescript","output","Existing","type-checking","errors","script",{"skillNo":181,"name":182,"nameZh":6,"description":183,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":184,"categories":185,"keywords":186,"publishedAt":41},"01M6HYAH05HGV7SVWSVR8PJRQD","write-special-chars-readback","Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) using a Python heredoc script, with mandatory post-write verification via read_file and cleanup of \u002Ftmp helper scripts.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Flegacy\u002Fv1\u002Fshowcase\u002Fskills\u002Fwrite-special-chars-readback\u002FSKILL.md",[],[187,188,165,39,40,179,189,190,191,192,193,171,172,194,195,173],"write special chars readback","readback","helper","post","via","scripts","read","verification","cleanup"]