[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6D8DZ6P79XCXA5B9Z2EYB2W":3,"skill-same:01M6D8DZ6P79XCXA5B9Z2EYB2W":52},{"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":18,"publishedAt":23,"linkOnly":24,"markdownContent":25,"markdownBody":26,"frontMatter":27,"refName":28,"commitSha":29,"skillDirectory":30,"forksCount":31,"repositoryHtmlUrl":32,"repositoryHomepageUrl":33,"ownerHtmlUrl":34,"ownerBlogUrl":35,"ownerDescription":36,"updatedAt":37,"install":38,"resources":51},"01M6D8DZ6P79XCXA5B9Z2EYB2W","whereami",null,"Use when editing whereami. GET \u002Fwhereami returns request.cf (country, city, colo, etc.); no bindings.","shrinathsnayak\u002Fcloudflare-experiments","shrinathsnayak","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F19502016?v=4","01M6D8BPME3YRMPW470YRKKTE3","Shrinath Nayak","01M6D8BPSAKJ26YQJD7CA0YHNP",3,"MIT","https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Fwhereami\u002FSKILL.md",[],[5,19,20,21,22],"returns","editing","use","get","2026-11-10 10:12:30",false,"---\nname: whereami\ndescription: Use when editing whereami. GET \u002Fwhereami returns request.cf (country, city, colo, etc.); no bindings.\n---\n\n# Where Am I\n\n- **Route**: `GET \u002Fwhereami`\n- **Inputs**: None (uses incoming request).\n- **Outputs**: JSON from `request.cf` (country, city, region, timezone, colo, asn).\n- **Bindings**: None.\n","# Where Am I\n\n- **Route**: `GET \u002Fwhereami`\n- **Inputs**: None (uses incoming request).\n- **Outputs**: JSON from `request.cf` (country, city, region, timezone, colo, asn).\n- **Bindings**: None.\n",{"name":5,"description":7},"main","97dde57c39e492fe98d58aa38032bffa6efa575b",".cursor\u002Fskills\u002Fwhereami",0,"https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments","https:\u002F\u002Fcloudflare-experiments.com","https:\u002F\u002Fgithub.com\u002Fshrinathsnayak","https:\u002F\u002Fsnayak.dev","Software Engineer","2026-10-06 02:14:43",{"source":8,"skillName":5,"commands":39,"prompt":49,"zipAvailable":50},[40,43,46],{"tool":41,"command":42},"npx","npx skills add shrinathsnayak\u002Fcloudflare-experiments --skill whereami",{"tool":44,"command":45},"bunx","bunx skills add shrinathsnayak\u002Fcloudflare-experiments --skill whereami",{"tool":47,"command":48},"pnpm","pnpm dlx skills add shrinathsnayak\u002Fcloudflare-experiments --skill whereami","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Fwhereami\u002FSKILL.md",true,[],[53,65,77,98,107,118],{"skillNo":54,"name":55,"nameZh":6,"description":56,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":57,"categories":58,"keywords":59,"publishedAt":23},"01M6D8DWX5XRCTA5MJBXMQQ8VC","websocket-echo","Use when editing websocket-echo. GET \u002Fecho WebSocket upgrade; echoes messages.","https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Fwebsocket-echo\u002FSKILL.md",[],[60,61,62,22,63,21,20,64],"websocket echo","Echo","websocket","upgrade","messages",{"skillNo":66,"name":67,"nameZh":6,"description":68,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":69,"categories":70,"keywords":71,"publishedAt":23},"01M6D8DTBG6DGC7F5C8ZH0KJF6","website-to-llms-txt","Use when editing website-to-llms-txt. GET \u002Fllms.txt?url=; returns plain-text llms.txt format (title, description, links, contact); no bindings.","https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Fwebsite-to-llms-txt\u002FSKILL.md",[],[72,73,74,75,22,21,20,19,76],"website to llms txt","website","llms","format","text",{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":93,"publishedAt":23},"01M6D8DR35Q6ZAGM1G7T1S6K3S","website-to-api","Use when editing website-to-api. GET \u002Fapi?url=; returns structured title, headings, links, images.","https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Fwebsite-to-api\u002FSKILL.md",[83,88],{"categoryNo":84,"categoryName":85,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":89,"categoryName":90,"taxonomyType":91,"taxonomyTypeDesc":92},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[94,95,73,22,96,97,21,20,19],"website to api","api","structured","images",{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":23},"01M6D8DNPGAYTPY4M6N6E381JF","website-metadata-extractor","Use when editing website-metadata-extractor. GET \u002Fmetadata?url=; extracts title, description, canonical, og tags.","https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Fwebsite-metadata-extractor\u002FSKILL.md",[],[105,73,106,20,22,21],"website metadata extractor","metadata",{"skillNo":108,"name":109,"nameZh":6,"description":110,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":113,"publishedAt":23},"01M6D8DK34AE3W30DSXHZ5Q95T","website-devtools-inspector","Use when editing website-devtools-inspector. GET \u002Fdevtools?url=; headers, cookies, scripts, assets, metadata.","https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Fwebsite-devtools-inspector\u002FSKILL.md",[],[114,115,73,21,22,106,20,116,117],"website devtools inspector","devtools","assets","cookies",{"skillNo":119,"name":120,"nameZh":6,"description":121,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":122,"categories":123,"keywords":124,"publishedAt":23},"01M6D8DH2FSK7836BQC3T2MW6S","url-dns-lookup","Use when editing url-dns-lookup. GET \u002Fdns?url=; returns hostname and DNS records via DoH; no bindings.","https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Furl-dns-lookup\u002FSKILL.md",[],[125,126,127,19,20,21,22],"lookup","url dns lookup","dns"]