[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6D8DWX5XRCTA5MJBXMQQ8VC":3,"skill-same:01M6D8DWX5XRCTA5MJBXMQQ8VC":56},{"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":27,"linkOnly":28,"markdownContent":29,"markdownBody":30,"frontMatter":31,"refName":32,"commitSha":33,"skillDirectory":34,"forksCount":35,"repositoryHtmlUrl":36,"repositoryHomepageUrl":37,"ownerHtmlUrl":38,"ownerBlogUrl":39,"ownerDescription":40,"updatedAt":41,"install":42,"resources":55},"01M6D8DWX5XRCTA5MJBXMQQ8VC","websocket-echo",null,"Use when editing websocket-echo. GET \u002Fecho WebSocket upgrade; echoes messages.","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\u002Fwebsocket-echo\u002FSKILL.md",[],[19,20,21,22,23,24,25,26],"websocket","Echo","websocket echo","messages","editing","use","upgrade","get","2026-11-10 10:12:30",false,"---\nname: websocket-echo\ndescription: Use when editing websocket-echo. GET \u002Fecho WebSocket upgrade; echoes messages.\n---\n\n# WebSocket Echo\n\n- **Route**: `GET \u002Fecho` (WebSocket upgrade required)\n- **Behavior**: Prefixes each message with `echo: `\n- **Bindings**: None. Uses `WebSocketPair`.\n","# WebSocket Echo\n\n- **Route**: `GET \u002Fecho` (WebSocket upgrade required)\n- **Behavior**: Prefixes each message with `echo: `\n- **Bindings**: None. Uses `WebSocketPair`.\n",{"name":5,"description":7},"main","97dde57c39e492fe98d58aa38032bffa6efa575b",".cursor\u002Fskills\u002Fwebsocket-echo",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":43,"prompt":53,"zipAvailable":54},[44,47,50],{"tool":45,"command":46},"npx","npx skills add shrinathsnayak\u002Fcloudflare-experiments --skill websocket-echo",{"tool":48,"command":49},"bunx","bunx skills add shrinathsnayak\u002Fcloudflare-experiments --skill websocket-echo",{"tool":51,"command":52},"pnpm","pnpm dlx skills add shrinathsnayak\u002Fcloudflare-experiments --skill websocket-echo","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Fwebsocket-echo\u002FSKILL.md",true,[],[57,65,77,98,107,118],{"skillNo":58,"name":59,"nameZh":6,"description":60,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":61,"categories":62,"keywords":63,"publishedAt":27},"01M6D8DZ6P79XCXA5B9Z2EYB2W","whereami","Use when editing whereami. GET \u002Fwhereami returns request.cf (country, city, colo, etc.); no bindings.","https:\u002F\u002Fgithub.com\u002Fshrinathsnayak\u002Fcloudflare-experiments\u002Fblob\u002Fmain\u002F.cursor\u002Fskills\u002Fwhereami\u002FSKILL.md",[],[59,23,24,64,26],"returns",{"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":27},"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,26,24,23,64,75,76],"website to llms txt","website","llms","text","format",{"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":27},"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","适用职业",[73,94,95,96,26,97,24,23,64],"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":27},"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,26,24,23],"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":27},"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,23,106,116,117,26,24],"website devtools inspector","devtools","cookies","assets",{"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":27},"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,64,23,24,26],"dns","lookup","url dns lookup"]