From e7955c43d222066868a8c3b837ef6665fbde80e4 Mon Sep 17 00:00:00 2001 From: a Date: Fri, 4 Sep 2026 15:29:20 +0000 Subject: [PATCH] feat(mtmharness): add Cloudflare skills --- packages/mtmharness/README.md | 4 +- .../src/features/coding/config.json | 1888 +++++++++++++++++ .../mtmharness/tests/coding-plugin.test.mjs | 30 +- 3 files changed, 1915 insertions(+), 7 deletions(-) diff --git a/packages/mtmharness/README.md b/packages/mtmharness/README.md index 1ca95dc..ac2e9bd 100644 --- a/packages/mtmharness/README.md +++ b/packages/mtmharness/README.md @@ -2,13 +2,15 @@ `mtmharness` is one public npm package with one unified DSH plugin and two explicit client identities: -- **DSH Web plugin**: the package root and `./client` export use the official `dsh.client` lazy-CJS contract. One installation provides the settings-controlled MTM Connect secondary extension and the Codebase Memory/Modern Go/Ponytail/RTK coding features. +- **DSH Web plugin**: the package root and `./client` export use the official `dsh.client` lazy-CJS contract. One installation provides the settings-controlled MTM Connect secondary extension and the Codebase Memory/Modern Go/Ponytail/RTK/Cloudflare coding features. - **Independent web client**: the package also publishes a BrowserHistory static app and a MemoryHistory script/embed entry. These artifacts own their React root, router, styles, and teardown and never load the local coding runtime. The DSH plugin is assembled from coding and secondary frontend domains under one Host/Client lifecycle. Codebase Memory keeps its `codebase_memory` server namespace and `mcp__codebase_memory__*` tool names; Ponytail exposes six externally installed skills through DSH's native skill surface. The `/ponytail` command controls per-agent automatic prompt intensity; `off` suppresses that section while explicit native skill invocation remains available. The five companion names are not duplicated as host commands. The `mtm-coding` settings namespace contains the runtime extension toggles. Modern Go Guidelines is a configured data-only package that exposes the externally installed `use-modern-go` skill. No manual Go or CLI installation is required; the upstream wrapper installs the pinned CLI on first use with standard `go install` and user cache behavior. Its trusted manifest pins the JetBrains `v0.1.1` source and SHA-256; the first load downloads it into `$DSH_HOME/mtmharness/skills/modern-go`. Existing files are user-owned and are never overwritten automatically. The wrapper does not modify the project or create a project-local `.mtmharness-cache`. If the active DSH file policy denies the standard Go cache write, the command reports that error instead of overriding the sandbox. +Cloudflare is a configured data-only package exposing the 13 upstream Cloudflare Agent Skills. Its manifest pins the source commit and SHA-256 for the full skill resources, including relative references, and installs them into `$DSH_HOME/mtmharness/skills/cloudflare` on first use. The package does not enable the upstream Cloudflare MCP server or client-specific commands; those require separate authentication and host integration. + RTK is an optional coding feature in the same `mtm-coding` settings namespace. `rtkMode` defaults to `auto` and provides guidance for explicitly invoking an RTK command when the executable is available. The current DSH ToolRuntime has no supported pre-dispatch input-rewrite seam, so the plugin does not register a speculative hook; `rewrite` reports `unavailable` and leaves frozen tool arguments unchanged. The pinned RTK `v0.45.0` runtime helpers remain checksum-verified for explicit integrations; there is no separate RTK skill document. RTK telemetry, tracking, and tee output are disabled for plugin-managed runs. ## Coding Skill Files diff --git a/packages/mtmharness/src/features/coding/config.json b/packages/mtmharness/src/features/coding/config.json index 38020e8..472ad2b 100644 --- a/packages/mtmharness/src/features/coding/config.json +++ b/packages/mtmharness/src/features/coding/config.json @@ -44,6 +44,1894 @@ ] } }, + { + "id": "cloudflare", + "label": "Cloudflare", + "description": "Cloudflare platform guidance for Workers, Agents SDK, storage, networking, security, and deployment.", + "icon": "code", + "kind": "data-only", + "skills": { + "repository": "https://github.com/cloudflare/skills", + "revision": "9177f9a0bafc1ab61a0dae8dca57a8eb4d9f636d", + "files": [ + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/browse-the-web.md", + "sha256": "e35b6627eee0bcd0f86e264ad0973aa5c364a5bd3ec14838ad36217faf47c841" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/callable.md", + "sha256": "4c116204cd68ff53908c49100a110d5fb773f9a3bc486a2be57afb09a4ead248" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/client-sdk.md", + "sha256": "cefd3d4947e8c081ac2a66ce6dedf95edb3e30f34bde0c6b8a2eaef182ee7210" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/codemode.md", + "sha256": "35d9639fe1db69400479c34670a71090031608276ebf9bc1c5e7fa32f77d487b" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/configuration.md", + "sha256": "91842e59fb17eff0d40df1cf16905aca8abd3ad9a939f8d15bfd6c5b84175354" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/durable-execution.md", + "sha256": "7cea752aa3423745be812cc97df38b6beeea97900b97b21f171fc3ad1a5e281b" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/email.md", + "sha256": "0a156971806f83f2f93450d731a57d6cb315cab387e3adeb33ad6ff50fe49ecc" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/human-in-the-loop.md", + "sha256": "729bb89c146b1e260e58b751bf47566ac7870afa33fff35d672ad485ed695766" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/mcp.md", + "sha256": "c991cb8ed89ca93f0c34433bceadf54d4ac42bd0c6d439130829d058fb7bccaf" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/observability.md", + "sha256": "4563c0b9856b0f2ce9728470473caab565442cb2eb40044434d771805b9aa7f1" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/queue-retries.md", + "sha256": "989733a31aa7ab7b6e9b778da975a3a5db6e21f200a02af073069150eb700ea3" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/routing.md", + "sha256": "55c9c94b02f827cbd90bc00ca798197b4cdee0e87e0b2fe15b8f77d7725d66a6" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/server-driven-messages.md", + "sha256": "8ac4eac5459693272c6e54fc1a656538f5e4a118029ee76988726ca84d20fd05" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/state-scheduling.md", + "sha256": "f0b0ab893b85135c4001b123a0cbee1cdc3ce85c5d8339acded546e16f582cea" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/streaming-chat.md", + "sha256": "dfc8d08564187ea5920ecc78779973a432c03ca29eea50c258c8984e521e0704" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/think.md", + "sha256": "1c507f9a22414290cf1c45821deb1d83ae3b008098ead751af380559789547e5" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/voice.md", + "sha256": "b6254f2afa76a9530c43741bc9ea4dfcc9bcef2c7819dfba026825811943b06a" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/webhooks-push.md", + "sha256": "1ee166ab7d14d2b26db04ce8c6071e7cf0b348bf5bf704b13f943229e1a52cb5" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/references/workflows.md", + "sha256": "1778b2dee2788d0238c1d4b61e3ee42538a24166770cf33c38d78c22c1ac6dbe" + }, + { + "name": "agents-sdk", + "path": "skills/agents-sdk/SKILL.md", + "sha256": "a05244d3cfb23330daff956ec28a990241f5dbbe489cd7fd6489c8f76bb60877" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/agents-sdk/api.md", + "sha256": "3c5b0816e92ff702a851bf071ddf2f2e814c4f841d5313fc86d3f7bdfa64ab8f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/agents-sdk/configuration.md", + "sha256": "4a24fc6be3cbc5578fa58d6ded8495fed77831909af599000c7f9849e9282afd" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/agents-sdk/gotchas.md", + "sha256": "01e857e317f073cf75909f4054bea3adebecb373799c5630fecd870c410a391b" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/agents-sdk/patterns.md", + "sha256": "7cb1997c0fa2f66b00aa5c2a128d00bf788ec485eb86bff38e83a2ae02762b46" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/agents-sdk/README.md", + "sha256": "b8bbf95920b105cc587b93280209bca95104cd32d944b6e7344cffd0a751e6c2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-gateway/configuration.md", + "sha256": "1135a774a42e059942ccb12d8ba514e6479d7f8f5f47400b4053f6da5984b532" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-gateway/dynamic-routing.md", + "sha256": "56f3539a61bae2fda7d8a98c81ed14e820caf733f27e6cce2fffeeaf7a6c1db5" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-gateway/features.md", + "sha256": "efbc7d2d4464c1aab4881f059589439e2979b9967568878c32f7cb3e72cc6ccf" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-gateway/README.md", + "sha256": "3d1edf888ad79bf599c6b21b66e0ba68c0473c5a2c60be1bf2e5a21b68623089" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-gateway/sdk-integration.md", + "sha256": "3633951a1ea8f419d85059dfb98f23e830805f728b516d7d87d1fa11ef9d9101" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-gateway/troubleshooting.md", + "sha256": "c79d02ce7b9e6cb361f1700eff6e12149fc74547aad3438501863d8cd02b2a79" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-search/api.md", + "sha256": "cff4ce1bee49988265f176fe5a0bdd69714a1b6e215a65662ddbf305f981d05f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-search/configuration.md", + "sha256": "59af92d0c3b196bea13ac72e18b42db528721f8971c7d335b27951b77aa4ddb0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-search/gotchas.md", + "sha256": "e548c0f2cba170e81dd3e9e15b7cf430eabd7e73770ed29589b90dc20c3bf452" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-search/patterns.md", + "sha256": "1215875bf8a9e6317d31019a84a124aa7ba7e85bac10b92bc445d0ef7383d619" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ai-search/README.md", + "sha256": "c8c484ab7723f38b649186e1c70f85a9b492c597cc513fe08876910b5406eff2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/analytics-engine/api.md", + "sha256": "ae82c22e055e2edef7078286b7442763e19f70894b95fe310dd7c1709f9a572c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/analytics-engine/configuration.md", + "sha256": "86112c2385fe4e44b4825f9962cfe3429e6681de9f051a50a1c70514f1b85131" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/analytics-engine/gotchas.md", + "sha256": "08d11a06bc1cc955bdf4ade8d1a523b0e78157434d559169c4bc2d36f886667b" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/analytics-engine/patterns.md", + "sha256": "d294a7ee3ce2d58fbb8413eb6e58faf7af8f699cecc7480b955ceb31e87204b2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/analytics-engine/README.md", + "sha256": "d60bb6b6bb29c836886637ee584485ba9145ca1b326ee8ea55d86a4f62bb2c6f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api/api.md", + "sha256": "847c33ce18c1a4ff210ce5db75db0694113fe5367bdba983b0e6f0d7dd2742b1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api/configuration.md", + "sha256": "6ea23fb895605fd2a2380580f7cd21ab39c51dde470067ed191fd387f6337cb4" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api/gotchas.md", + "sha256": "b721d8e28866f376ca8ac91d8f7f9fa35726f6378f83796baed13687f6eca6e2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api/patterns.md", + "sha256": "7ea6b294371bc04ffbf0a1fdc71a2e138f3303bfcdd85b91b1e29d0d53f80bc2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api/README.md", + "sha256": "f5c1e63c45d540fae02993c8c665d908bb5ae12a2953e3750839a352d2295f84" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api-shield/api.md", + "sha256": "2ac3f5be499c1047575dddae5fe10fd9ab93e153eec3bd3fae3e2add82275aaa" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api-shield/configuration.md", + "sha256": "79acd0a84bdeca4f45ef92d3772e9f403d15266210205700a7fccc313a084418" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api-shield/gotchas.md", + "sha256": "6941ecb164f0cd23432029e319cdfd7c999365eca6aa1a1df76b52bb59d565dd" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api-shield/patterns.md", + "sha256": "66f0e9bc0d7440d76368f3863b8009cfe80de3a61e91c76727a249e2eb192574" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/api-shield/README.md", + "sha256": "a032c7160b70c9a200e982bc457acd746760c2960e25b7554dfb315da98f71dc" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/argo-smart-routing/api.md", + "sha256": "8c3266518ed0f9f98aefd6702eaf7400c40b0de0f49cc4daa7ff6f763f7e7ede" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/argo-smart-routing/configuration.md", + "sha256": "9cc0c9f4ce01828e0153baded0393f0569e9aceff2601c16aad71e12e2fa8a39" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/argo-smart-routing/gotchas.md", + "sha256": "fc890c1e98c117ac8b6eb5ef39a62059732d9df2642700a8ad9fd2c877107fc7" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/argo-smart-routing/patterns.md", + "sha256": "8f0e0d9abdc17971afc802c23a04bf8780365031e5c4241cf084b0ad97c3707e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/argo-smart-routing/README.md", + "sha256": "405ab3a8878c32c95e12fb1c769f6cf79a597def8898b5e291d347a04c3e9052" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/artifacts/api.md", + "sha256": "5a6fd7bcacbbaf2c2ea83a5a899480a667f504a15cb973256260d1b476bef3e9" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/artifacts/configuration.md", + "sha256": "04648f76ad4d32a2265bbc6696c37229db2f67ed1ced99be6783ee61000c2d14" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/artifacts/README.md", + "sha256": "d48c787042e9352dfd459b49f660f979f169990fea899260fad8341efb84e583" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bindings/api.md", + "sha256": "d0567127790ea92ebba3570785363d1752eab1c9570aeda5c7885e8c104677c5" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bindings/configuration.md", + "sha256": "d52fdcaee45d9f7fa7279247e09d382f69b5fab60ba8257fdcf92d8b37e14b34" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bindings/gotchas.md", + "sha256": "f14c1ef1d9104df78642cda287ca6ba21e3ef954a6e71e33c7d4e47f75164c28" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bindings/patterns.md", + "sha256": "189274aa2bdf605781b59b105c347c689d320a09fb62f9ed300d1f64e93281f6" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bindings/README.md", + "sha256": "5ba09af5a3ce0b8ea090f60b87a0660f56d6252e256a36eff86ec1dfcd8c69a0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bot-management/api.md", + "sha256": "a00ceaea1f51f7536829b2f93323d0df5c8f6b7742bfbcf9fcbd489eb910c4e9" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bot-management/configuration.md", + "sha256": "361f709d6561c916b6082afa689ad3e69aa05f2cb4f9ed7bcbdfa62605b95c47" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bot-management/gotchas.md", + "sha256": "d26a1b2dee0b92e6e2f4046067e0ba3f9e14f0b548b1d06537232d265e4cbb56" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bot-management/patterns.md", + "sha256": "daeb6aa87d2c1fe00e7d3ba3ebcb5e782725a6a3e22edde56c03527d1eb1ba63" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/bot-management/README.md", + "sha256": "4d50475aa586fb08cadbc7067d55b7ef1a6e5556bad3587b23e35ae37d541967" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/browser-rendering/api.md", + "sha256": "0f346bfc469d1deb6077523b6ea20f071975c5223267415b2b9398cc6ab566ae" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/browser-rendering/configuration.md", + "sha256": "db9206a7f14bf13d5f8ade9875927662796016c52b0221b54c3e08238890b952" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/browser-rendering/gotchas.md", + "sha256": "31c3e69294545b1f7f9aecc80c3809521efe3b8d4c36bbc47ba8a693a81460ea" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/browser-rendering/patterns.md", + "sha256": "ed518864d14d821619b23d0a6e4fe0b39b64c8da98ad17d3da07b4b42d35c161" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/browser-rendering/README.md", + "sha256": "a0c6e51afc6c19f2a892e3f144b9210f4fe067318ad2550e34ded538a9db9463" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/c3/api.md", + "sha256": "1c5429d72d1f5d5dab6d21914f7eb8aded761a828b4190655a2d4a0be6b12592" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/c3/configuration.md", + "sha256": "01e7f90dfbfce4d20a86a41b3ca882dab74d0b540ea07952da2f4ff1c6b6626c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/c3/gotchas.md", + "sha256": "4acfbc2572326cd0be2bdd76bc7c7fb629a68dabb7c98b3fc6bed234d13e72b0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/c3/patterns.md", + "sha256": "592e533f9658678bfee0f5e7e65d9cfbf4a23ab4e47a3004543980643ce8826a" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/c3/README.md", + "sha256": "a29848e8c74b2a8055330461f2ffec6ccb14d5d61b97b8214195ee7787c70d20" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cache-reserve/api.md", + "sha256": "21b1448498e35b32fea54786ffa8dec6fff4ff597a3acfa10904ff459082207f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cache-reserve/configuration.md", + "sha256": "7a033bcbe69e1617d6df25d202c8ecf58fe40a1a06b91c7b71d9ac1964886869" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cache-reserve/gotchas.md", + "sha256": "3642800cd57f39fa3841021057a0ab6fb8bbcd8270b45b4acf33d6f1345e0f92" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cache-reserve/patterns.md", + "sha256": "94b4739cfaa9aa8d805b5d820c5cfe2259ee9a108a574bf5fff8837655647dcb" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cache-reserve/README.md", + "sha256": "90f848f9b142ddbfd911eea882b46bd45b5062efeda6b22e5be3d526c6155144" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/containers/api.md", + "sha256": "d79640924c80decc91ef17011f021fd21fdb8dc97fb2e8dd81f735a06ecb0a1d" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/containers/configuration.md", + "sha256": "00af782c2e2ab7c95cd4491d0269eddc12efcc541ec67a5692ab0b50bc7c6cdd" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/containers/gotchas.md", + "sha256": "5707e264b73f62b30624e3ae14646d5fb7dd889a463376f3123a5424f2dd66d2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/containers/patterns.md", + "sha256": "129853373101f0a96b3e7ccfe6d840ac93cc089fcfeb8d551fca0af81c74a904" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/containers/README.md", + "sha256": "84ac21e42da260e8a2a5cbf677b455a7a06e0585dcd56be49895c014a26ae998" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cron-triggers/api.md", + "sha256": "2768dedd364f5424f5a5b4e6ab579f5d8b9de8c5d7fb32924cee73404450c64c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cron-triggers/configuration.md", + "sha256": "ef4548a7f8f80b1be2c41391a5aba2ce18ef0e02a96ec3b675bb84971dc383a0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cron-triggers/gotchas.md", + "sha256": "d9204a25d6f22f970eb38dea053d2ba365c6cdb9e6b33591d83a6b62b835b016" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cron-triggers/patterns.md", + "sha256": "99e9e973fee96b3a1c9ff3a896546cc8a498f9831cb168e1cf4e4b4ecff38102" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/cron-triggers/README.md", + "sha256": "e2283e3de4e8c32b9700dfa4c714e4639c3da2ef1fbc5a2703082bf7f5d4b839" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/d1/api.md", + "sha256": "ea957b3260a43c46ab7845303ed34065655b4367683bf502c53b334e5fa4c776" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/d1/configuration.md", + "sha256": "94d31fee923ac3c9859f5741692ec843101463bc72dd8ead1fd3b086bb48a834" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/d1/gotchas.md", + "sha256": "1ffa594d0bdc7e02e64629c999f587119a5453a764bbf6ed69712ffc2c4c1f93" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/d1/patterns.md", + "sha256": "2e548a1267c7efae89fbe77a3627d096b3d77a64af61d8e3f53d36d15d01e48b" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/d1/README.md", + "sha256": "a8374574ff4963e39014ca1228dbf651f36fe8c6355187687c2609ae1f7633d4" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ddos/api.md", + "sha256": "eba158f9cca3ce70a07e5050a5586e3c1acd60f69e22069d9d02c8c91ad60cf5" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ddos/configuration.md", + "sha256": "0d0fae2b22edba2d40fddbbcec3f0c63651a25a0115e708edfc8b4e4c584c925" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ddos/gotchas.md", + "sha256": "320f6d383fe22756ae19e3a79fb1c1a5d147d74a493b73eed6dd6644fb9fd1a0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ddos/patterns.md", + "sha256": "546d722c64d8b1c14bc0a924b38eec24bcd3e639c25bbf424bb8cf73933ac306" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/ddos/README.md", + "sha256": "63018c3c2d25ce26a0f1b80dd60bd2d3c5193a26bf96979ef624030ab766c4a8" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/do-storage/api.md", + "sha256": "d3a0957cca017ae837bcf891d34404a6faca40a9b4d9b4be26a3f6272c223622" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/do-storage/configuration.md", + "sha256": "b2c7ef2f41948280df468b8d1ed618486fb865ec8bd985706721f9debe472945" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/do-storage/gotchas.md", + "sha256": "82c019a3e36341d3d9113b9b30f0d2e6692a59fdd903ed00dce2f7774e6e4f5a" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/do-storage/patterns.md", + "sha256": "dc5118f06ac3fbf05323e17794bffa2e38e105e47d71f483b5545cae5f12a64c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/do-storage/README.md", + "sha256": "2dd7fa0efc7db9a4edb0935b77a48973fe79978b693d29385db0403f1792154a" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/do-storage/testing.md", + "sha256": "035b05fed943b2322941d7bd713d4d0e3025f2e514a3ef00642fc53509133472" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/durable-objects/api.md", + "sha256": "ada50c598680f4d1e50d3e0588a1a6c0f4875346e583e34b87956ededff12e22" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/durable-objects/configuration.md", + "sha256": "30486904f250952df8f11b7899f3ebedc46b7f9bb1c28d4695a3bf8acfb87375" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/durable-objects/gotchas.md", + "sha256": "b7156d2d5415f3670698d2ccae91877852fbebf7868b66412497907901bf1661" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/durable-objects/patterns.md", + "sha256": "e3ad270b7beaad53f700b4b5f49202ec7d9ea5c95bd22f963f2dc7a9272142a9" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/durable-objects/README.md", + "sha256": "eeaafe38e5f85b70d5d548735a62181e055121932f98625f7b12d8f364751f4a" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-routing/api.md", + "sha256": "bb8355f4ef58ab1577982d1f6e399038538ec5f84e93071cd9f928b5a6832d36" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-routing/configuration.md", + "sha256": "a9a45e84286ffce8b67cd6a50e72a3a0f169f4414280fd94e5f33f9e9ac4ecd1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-routing/gotchas.md", + "sha256": "7d16c6d42eef4ca6aa2b6d677d4c87d8f614c85c41e7eac032e2bde5a0e3e77f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-routing/patterns.md", + "sha256": "507bfca00d2b363d6168ec918fc75829bbf0145402aa3239916ba1bf7e92b6a3" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-routing/README.md", + "sha256": "4e28709e319f3912008a2887f9f3d62bdaa98ad9e52cc5ae139b8d220e825479" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-workers/api.md", + "sha256": "5e4b0e68fcf88e3332b15a8f6ef22cf706953d51b38456cd0346348543f06754" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-workers/configuration.md", + "sha256": "984d84d6842f4adda147cb783537ffd51ac887c331a0de3c100374c63c06d33e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-workers/gotchas.md", + "sha256": "d1eccc06d83dce5ac8b0fab47bad9694e5b067752ebad52b51bd8f32fcde45bb" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-workers/patterns.md", + "sha256": "e8704f7beac19235631b246420c5ce730b054ccf899f43548366d70fe430737d" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/email-workers/README.md", + "sha256": "54bce4cafacbb335d111f5a6de5463b6f33f4f8db5bb52d22f85ae0487cd1311" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/flagship/api.md", + "sha256": "c7b8eb86ed852a3f37709f000988aeb89860c24aedee58527379e475f0996894" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/flagship/configuration.md", + "sha256": "a067854b48b4f6cbbb7fac4ca886ef6a14ddd1fc108650ec2f096ca730d55c02" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/flagship/gotchas.md", + "sha256": "5daaa2c1895e625b06f9dd413f7548603aa0159fb4781145b0cdbcb0a6f07c44" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/flagship/patterns.md", + "sha256": "e89e1f39fadfb9aad0c01fd6ac84b8c8f36716e88f26df1fd79c53aaf2eee8e7" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/flagship/README.md", + "sha256": "a4d1719c39d4a93ed884eef6e7cddc81e203d386332ba0d288d34436d3ed2995" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/graphql-api/api.md", + "sha256": "0c0250cdf31adfbf2c7f96bf3ec257c32d14709160a8552b3238a861b3540de5" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/graphql-api/configuration.md", + "sha256": "765e696dfd11bfa87d231c011b10fb2c10a2e33d704d7c6d04f1f125585c5b92" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/graphql-api/gotchas.md", + "sha256": "59dbb9a541db17cdac52665fd6883d2eb660ec6fea4b45cc87c291d2e2b4a50f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/graphql-api/patterns.md", + "sha256": "902d188040a60c5d130790222442158ff12879232357ee34ab410e0d7b9b5e76" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/graphql-api/README.md", + "sha256": "324df669a01caceff7f0dbdb25e3b35dcaa40a5c20700605628c4bcb66b0d093" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/hyperdrive/api.md", + "sha256": "7e7bb032dc6151ca8e3c30b278efa19d617362e9225f7a5f77a176585f10f7e5" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/hyperdrive/configuration.md", + "sha256": "9c66135e7d5ed7a0e4f6b1395b71387b62aa22166d7eb26ab7d918b1fb5b5e57" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/hyperdrive/gotchas.md", + "sha256": "c0001867d043c37581bc1a0d0ea556b649d7522e965ab2eedd431b1f3b0ca56e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/hyperdrive/patterns.md", + "sha256": "e3bcdfb9c42df3ca1a84f175d727e918b638f28759fb5bd38fd3bcfdd21594ff" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/hyperdrive/README.md", + "sha256": "4d0e1a0e8366975d6ac0dcfd183e8b0a925f582c35917897aace568addff09f6" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/images/api.md", + "sha256": "92c62bd77b133bf58287e93f12dced76725c0dc699b28ecad2acdae709ceea3c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/images/configuration.md", + "sha256": "e4c66bfcbf49b9c0cef84d66c7f8b49ce4520c92190661d13c409eaa0825c8f2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/images/gotchas.md", + "sha256": "447ec285923c9ab4b29e56ec7ec0318f30a559c05c257d37b02f60e62971b9d2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/images/patterns.md", + "sha256": "b1cfebd7afdd7024e581e4a1002a304af0c00e630d4cd4623e97caae1c02fcd1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/images/README.md", + "sha256": "2df48cf4d8d5269c55a2c2e94ec331c576200db80cb33bdb3f08f104fee88676" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/kv/api.md", + "sha256": "94a2fc711801bf91b2697d3690ca5b5f6c7732f22ec50965e1eb0eafed204ff4" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/kv/configuration.md", + "sha256": "59138344e7c23b43b360e0df44a23ee56253d013a4a1a9633c5b459b3d4ebac3" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/kv/gotchas.md", + "sha256": "f535fbf107435b03c72967a6505b279a1e3a34c1c0cfb76f6fddc081fd7db3d1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/kv/patterns.md", + "sha256": "4fc5129467ba3e9820609512c3ce9ac0e2db5c125cae6c892c239ad273381754" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/kv/README.md", + "sha256": "c141ec2f48645a0f0884511baceee0265776075f3073aefbd199f3037b420681" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/miniflare/api.md", + "sha256": "468ea31044ec445b89fb54692335f26705ba10ee977f233afb075f340e8a77a2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/miniflare/configuration.md", + "sha256": "54dce11b0189897aae54406b09bfe4f9da89293daafc33898b80ccdc728494f2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/miniflare/gotchas.md", + "sha256": "eb42fd5887eccd3b8100a4be7c1ba4209d8e0f169ea080252c4b46d38c745f63" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/miniflare/patterns.md", + "sha256": "3cde456ae68df13ddc6987df3c45c2440409ab7e2574e5e58b2c1f037f902af0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/miniflare/README.md", + "sha256": "484f0edc585d46559ee0be2bc443da8c7e96d6cde31e2c18ea52a2ae6c73bb95" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/network-interconnect/api.md", + "sha256": "a4785017781a4b469b1c3e5c94f520a50b89412092b65963dee44bcb6e00b868" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/network-interconnect/configuration.md", + "sha256": "3edfa1d1642a0aed71121156acd7e4f76258b027b8f3758cbca68ab0ea5a1956" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/network-interconnect/gotchas.md", + "sha256": "8444d367d9389661e040061c009011263c429b52b72a27f2fb4ff82ad261b7be" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/network-interconnect/patterns.md", + "sha256": "e696a628f29643cb7955ed5d0607875188d462dcdff8a2758d287302d6b0fa1f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/network-interconnect/README.md", + "sha256": "00aa27f34cbe4277a1c79624a06bfe3ab8cf910e2c847eb5ba9c5206f1e12b3e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/observability/api.md", + "sha256": "0dd66198a6832b3de90b32fabfae0e89b9ad98921181bfa5d77cb31da2c309c5" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/observability/configuration.md", + "sha256": "8a1b85928d8f146b57d8ef4c9b60f3ccd052e32a32b58b698da28a2483027960" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/observability/gotchas.md", + "sha256": "569bd59b08317bd6aa85621e7974650e3602a0cc5cbcd0e98dd503d9e879fb9f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/observability/patterns.md", + "sha256": "df66dce8d14a5887e183dbc1831c3914cdfc731a854f1a12f6833da4b6fc05c7" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/observability/README.md", + "sha256": "3c33e551008c5862bb09373b6d2b7fbaec300facf4fa70030f6e16598feb595e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages/api.md", + "sha256": "90989f928df3e394e9bc9587ac4eda172bf3735a338a0b1f6edba4d6af3a2652" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages/configuration.md", + "sha256": "65142ffa10de9517c126311d8d94a0c401447277df034123fca33ef48d03b3dd" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages/gotchas.md", + "sha256": "9a38076368f938dfc34bc1fa797f00a4d1b1bd2d0b0284595f2081cfd05ef182" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages/patterns.md", + "sha256": "5a527102ede2c5b01543f356b0edf2574472251439c08b257ebefa4753eee957" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages/README.md", + "sha256": "0b79f0e3bd7dd929d03de09ac7c35e006547c99763399f01b64436749085afe8" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages-functions/api.md", + "sha256": "edf4ea412a1372e46a704a3c0b7b60d208722b0dbda106d04bab41ab48dda1da" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages-functions/configuration.md", + "sha256": "adaf79d53ca4d46ebc1be695314bb67aa42a11f412d9b61a48a765c828dd0d94" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages-functions/gotchas.md", + "sha256": "407b5630e9489ea6aaf55e93ac03c61068d193bf9b300b7f2eb2b67cc77070b6" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages-functions/patterns.md", + "sha256": "35f462e5f5681bd317d66a62f7e297cd8395c406e9e52cdb05f8c5b17df6877c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pages-functions/README.md", + "sha256": "19474e50d4c3c5fda0184f62df8302aef0ba8a09999fc3111d8cb979aa280fd7" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pipelines/api.md", + "sha256": "6dfced39253c563560c990fe062e3de2de9254cbde159771f488842ca2882597" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pipelines/configuration.md", + "sha256": "c10e1eb1066da113b54c33e4b06034c7e359912a344ede6ed7752ab29768bd52" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pipelines/gotchas.md", + "sha256": "b0d85c6a6519bac88f9d08d5fd9449515c2ca6750cb220ffc1c2e1394e87e2f3" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pipelines/patterns.md", + "sha256": "2790aa7ad664b4ba467d39f8fe8952b663876b56ba4d229bb7d4b15251823f4c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pipelines/README.md", + "sha256": "5ba1ee291109c67acb452f8169a281d69b86ce72867d742d337f34f77fd5ccba" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pulumi/api.md", + "sha256": "5e6459dbe3bcd802965fbc8467c54744671d5a9b3c600fececb2db314295797d" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pulumi/configuration.md", + "sha256": "5c102d4eb4d16a1647b451af42599d6123f6f4f31e4390edd698ba6ad8154eb6" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pulumi/gotchas.md", + "sha256": "f05c3e92c94f3fe24aab6072aa2a10a050a1df9d2ef56059d568150f6e6bb0a4" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pulumi/patterns.md", + "sha256": "975cd37cd6735d790624d042982a683f05f96dd6509f9da8ada7e78f8e645f2e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/pulumi/README.md", + "sha256": "2803dd115110b5f4b8ac414fb78debbe06c3a653d57032aee2374f89eca4d2d5" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/queues/api.md", + "sha256": "ffe55706d2bcbb14f799d3254631c8b5e77a21534ce8831ddba7cbb325061e8c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/queues/configuration.md", + "sha256": "f8730e15875faf99ff444ca6dc198d96a0ebbb2adde14163c1455e754f24197b" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/queues/gotchas.md", + "sha256": "a6adba9ddac675d2c4faa9c42d9aaba06e09a7802184aff22905d3ea135a92b1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/queues/patterns.md", + "sha256": "4ce6cecea3ac1beeae91f5f3dca2fad88b4b65159abee4d56c12be8ec731c541" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/queues/README.md", + "sha256": "faa1106897e0f1b89a0b87040e14955f7594a48ef966d3ee88ece436cbef9359" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2/api.md", + "sha256": "d229e1d53595db452fb893ab5053d37781e782bd46f5ead3193599474abbba88" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2/configuration.md", + "sha256": "c2e3bb6047af5ca71e4e539a3dedaf9c62b7d41d4ef7f41c298495e9e9380fd3" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2/gotchas.md", + "sha256": "c9068fb874e3ce0244e11e04c99383f9ca4e314a176e782e3e2cbc3dcef9a0f8" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2/patterns.md", + "sha256": "fe0e4caa70e1f1a04d8559b56445b9db0cc51019d03a40a0ef996a1b5298698e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2/README.md", + "sha256": "e7d0e772e34c8fd6fb1d2aadb6a2c07a6d30d8e04ea50ce9a2b8c638836a8bf0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-data-catalog/api.md", + "sha256": "10ed527665327f3ef405b8e8b1119c50df7406924d2965854c9ebc75b2dac094" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-data-catalog/configuration.md", + "sha256": "fffc79472ae6ed229cbcfadfd938d1ce0e60e07386ea6a17913cab602e4e1d34" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-data-catalog/gotchas.md", + "sha256": "ddfe37a9189eb4caa0ed54f8b07bb0309598c141b77ba719c53b53c121905775" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-data-catalog/patterns.md", + "sha256": "5d7bf03405cbb311701728508678a47328e2903cc9fd052d81c603618ae14fd3" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-data-catalog/README.md", + "sha256": "480a7c6ba8f9b77a64c4a9fcb0320b3e046c4e25f5baf6841fdb2e8d1ea41a97" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-sql/api.md", + "sha256": "4d5601b6c29df2a54eb68786e69aa2f1bc0d86409515394ea46edb762bb32d66" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-sql/configuration.md", + "sha256": "742a0b853a519bbc02085c4c71b22dc5a82516a0a6fefd2e0696b371e04cb052" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-sql/gotchas.md", + "sha256": "0776a81ba0ffeb1b0fba4067f23efc5cf9d1437f675ce0b113f57c301203b6ed" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-sql/patterns.md", + "sha256": "55141805996052be7b8dbfeaae1472808c1085ca364cf92fcbccfb5015393a35" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/r2-sql/README.md", + "sha256": "8dded8c81c71d90e8167069759b2ff7d9924047bed361907498187be9808af8e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtime-sfu/api.md", + "sha256": "7c6c3d15d77976a87abcba5a8358c29c81e7dbeb15713cf5ccf71374e6017bfb" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtime-sfu/configuration.md", + "sha256": "6cee79842fdf8fc68b75951a8fa015cbd9276c7babe6e8753f654d3b112c3fb1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtime-sfu/gotchas.md", + "sha256": "9717fbbf38ea4a8adc51631fd093eefacd6d6c7c30a961e54a5d404fa206b259" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtime-sfu/patterns.md", + "sha256": "51a2b40afd609346a367dcf8a626e905dfe895b3309fcb53432290c3da93cf0e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtime-sfu/README.md", + "sha256": "2c1a23b8c44198e95eabb9f8db96453db61d935f96292932e9a5d1feea31e98c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtimekit/api.md", + "sha256": "37020e6102c6f4f080f430f3de20c83532930e59cdcaaee52752d1fe62190152" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtimekit/configuration.md", + "sha256": "4d4ccf99fa72d8923df1eb3910eade99021cb77c5d9b4aa95310a01aeade0aaf" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtimekit/gotchas.md", + "sha256": "83cecda63bad4c55c4b375f0b83fd90bcdc9a15a257fc95809ab08fa4c102618" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtimekit/patterns.md", + "sha256": "2e02421351f5a7ad19887c38ccae65f14c8118956c6763c029072847036ebcd8" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/realtimekit/README.md", + "sha256": "190ecae4bb2ed00795cec6b59df4b0b3045cbc07d09b818abe398c239e97d531" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/sandbox/api.md", + "sha256": "252af5ad0f10d80f221a325b8cd12d7a277f9b15edc9ee7642e35663b385672d" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/sandbox/configuration.md", + "sha256": "685b16622abef8faca88401b0cab758f2b1e9498403a84ed3183aac8abe6c314" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/sandbox/gotchas.md", + "sha256": "56b1e74e0ad0ec803bb096dd1a9fcabf043a92078a0aa5b82a4b42d896c84d84" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/sandbox/patterns.md", + "sha256": "f99ef6dbf0a9833235c536b5bc4366930a76e57ecb4d9f90a45fdfe68ef641a7" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/sandbox/README.md", + "sha256": "200282c2cfee1d30145949ce77eeab61c9cd7b0fbc0123cf3d8302e27ad865e6" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/secrets-store/api.md", + "sha256": "d6453c2646c9b2a7fa74b9a63a7a6aa0707ceb499a06705bdda367cfe3e8a1fd" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/secrets-store/configuration.md", + "sha256": "a7cb7ba5afedecbd005217d6155d85e2800b9f5029bc49f16f15498fc99f17ba" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/secrets-store/gotchas.md", + "sha256": "572d2d0464d24d66c4720b52c57f6a3234335cfb2fd18308bba876b72229a296" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/secrets-store/patterns.md", + "sha256": "60f60f7ef93d50208629a2e630d24f4758b1b995eab146395fc639844829058a" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/secrets-store/README.md", + "sha256": "82c078e9d71d9bd28b2f23535f086e74bec7adad08e3cb6c289326a4a6e14550" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/smart-placement/api.md", + "sha256": "d3d8b440a7e362799d7b02dfc3ce348d7bbe51a760f4c6945f2d93bd82785774" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/smart-placement/configuration.md", + "sha256": "7d29937845c26f42ec568f4a98262bdbfe2e983c45e94c7c6376dda0ea67e856" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/smart-placement/gotchas.md", + "sha256": "8e56c052e6b513b9ab565f0eaf0e7f84bca236dfc30bb77ec6715b70821a5b92" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/smart-placement/patterns.md", + "sha256": "693558fe87218c6ee1adca94ca3362eb9cce923e369559f7ff87dca1b9bc5047" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/smart-placement/README.md", + "sha256": "2a41285bae05a8772a6b52b292c28aa87bd4f65c6b984ba85e2733fec104567d" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/snippets/api.md", + "sha256": "e76a59c5005ad537ea4ad83fab71365995717fb51938797a4dc29af324285755" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/snippets/configuration.md", + "sha256": "836c6765b1ca807f46f1a13ca0d8f383fc6f6c4f8fc857a366156cde96ff74ef" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/snippets/gotchas.md", + "sha256": "301c7167f03075505498f1f6b5fe1c72a393065a8228f42c435fde9f1b694150" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/snippets/patterns.md", + "sha256": "2b06454df89a837e16ae554769ad055e8de90d2c6bc19a81b4aeee0fc423029d" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/snippets/README.md", + "sha256": "4f66291949e5fb2a66e49a98b392c2d18057ff36ba74906feae3aeef94f9701f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/spectrum/api.md", + "sha256": "bef098862434f4c8e253d718d3437091813e45c3bfaa5004e8e86d6ceb83beb2" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/spectrum/configuration.md", + "sha256": "2079f33dfe2ef2ed715927c95c2ba5389f5f426745597aef94e5885da5eec403" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/spectrum/gotchas.md", + "sha256": "cb07bb56c6c5e2b2f88380772cbaa25143d7f32cce69c8f5bbbb1e77d4fdd216" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/spectrum/patterns.md", + "sha256": "087e7d9a1a1a308eb13614332df217137296501cf57082077f05bb3a1f2bf7b0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/spectrum/README.md", + "sha256": "6dfd516d6e54696accbe6bb499f4e70686061abd0afa192897b32d7fd0c3f32e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/static-assets/api.md", + "sha256": "619acb0a8d9732395316fc0beeed11e1a10557e08c639338ac92473cea1c5701" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/static-assets/configuration.md", + "sha256": "c35204c02177893d0b8c5b9bf2341d7814ed9d1e8e2ca3fc7c87d05603e9ec50" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/static-assets/gotchas.md", + "sha256": "37b51d4f42e2a685934b7199dc62a0d8fd3d98c9dcf197ca5f5667aee01ea86d" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/static-assets/patterns.md", + "sha256": "a9b508f7936d8edf7c63c65fb217d27f6aa555209a21e0a65eadf7a32d9ec9c4" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/static-assets/README.md", + "sha256": "ef31f6ca300cb5fb1f111a626f6d92ef2b5b48a3ed97c2203874c33a2f38c0e8" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/stream/api-live.md", + "sha256": "7c384bb3ee0575f41bcc57cf1d7c6f37741e21de5d4ebb86ee4d1a05f6d671b0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/stream/api.md", + "sha256": "5440838fb2fb329fe815aecde94709a3d32be08c917491355709314ff7e3d8f1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/stream/configuration.md", + "sha256": "74c156e9c665e9d523bcd7c5d9a763339aba0356b1dc69d723ef6bab41a25328" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/stream/gotchas.md", + "sha256": "65ef0e0f81470833dea11179849d5bf78f695720286db5e5eebe7d8dcf77a1d4" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/stream/patterns.md", + "sha256": "1a18c1989fb525c15167126f98246afa27766e701c86150cb60409759a3e08f4" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/stream/README.md", + "sha256": "ead31da7979689bffda222b1b1c20903fb1aca03301b208eff0b3682a422b6ab" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tail-workers/api.md", + "sha256": "d8349bfabdfac0d2cd8c911f2314c34ff1045b2a85b6d135cf4f4692940a94b3" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tail-workers/configuration.md", + "sha256": "e30b9d4e0846c61563696e2db6d645491dedb2dc07172f98ae3ffe51b2e8d126" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tail-workers/gotchas.md", + "sha256": "4ba9dc553f71ed2422a03c4fe8022aef313761227b88551e07b21496f0c68ac7" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tail-workers/patterns.md", + "sha256": "400bb20063049d802f9b9d97924810817234bba9a12d8fd5ff13e9f0913812e4" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tail-workers/README.md", + "sha256": "22776dd6348b07d2c7132ee4a52715f49bc61c1bb50d0af81e49281e44bb9799" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/terraform/api.md", + "sha256": "5dc812c078d06454d801b0e126d50c48031c1a7b0ffef7ebf77a97cf7b41e768" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/terraform/configuration.md", + "sha256": "4d12cad256eaf2b021c1c19e7be29ef79e2d76183e387eefce2d4eb50b8d483e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/terraform/gotchas.md", + "sha256": "ede039589518cceb96d40c12b7e22aaf0fbb1a5ec4d806af57940dfcaf9da672" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/terraform/patterns.md", + "sha256": "1c5d35e79bdfbb2bfce92b095dbdb4fb08923b651a8f8e40e6e70e2956e6ffef" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/terraform/README.md", + "sha256": "a7070aaa31c8e229b2ebfca6fe66bcf6ead9cdf1ef6d7b494a556080253ec073" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tunnel/api.md", + "sha256": "698055870e668a0827b8bbb83d9016b093e22e4a95f4aabeaca7ef2e0d1e099f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tunnel/configuration.md", + "sha256": "41c67b8a19309f3d626f8ad94bc0d4748be63ad311c220c73f76faaabde461ec" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tunnel/gotchas.md", + "sha256": "267e3fad1f1a328bec1786ce883f7d658ee328ee5e812c2a4ee61739b507c691" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tunnel/networking.md", + "sha256": "99f51bcb065fdd62df94aa116f11effde03d81c4299f369770492346add235ca" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tunnel/patterns.md", + "sha256": "696d5fe99640934a94b6facb6e3198d93dc38bfac3c3324fd817e47f620bc40d" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/tunnel/README.md", + "sha256": "1cbeda06e54ae97dc5db42721579e9b455cc1a2eec61f4756b3d4de29dddf2a0" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turn/api.md", + "sha256": "912ec9aa734843078db5ceb9c6732f3aa62778aa7ffb836b9798b46152f377ff" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turn/configuration.md", + "sha256": "8df0cf402a41dd2a8205b9fc94f868df48273ef9e85cf1ad690732ac1e2469b7" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turn/gotchas.md", + "sha256": "7135e3e6e0351bf85fcfd5a914fd499979e7e15540d155810be5bc710e5841d7" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turn/patterns.md", + "sha256": "de0a2e64a0fe6456028cbd0cd8f29195cc8d4da0e8935746357587d5937aa636" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turn/README.md", + "sha256": "9b1e36931f40b1faf3c8f24f89acb12c4f4223de0afc83e6b8de636f4730d542" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turnstile/api.md", + "sha256": "8d9123ce63066a64d40c7da10ae3251dad64710f8122f3c57f826985d1474d27" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turnstile/configuration.md", + "sha256": "eac60f420fa7122c275c40e6b7a9a55a672c42027d56d5e187432a1653f221b1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turnstile/gotchas.md", + "sha256": "3166f9a79a6512310b84a7958dc911906395fd10e3540af7698083ec8e5d8286" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turnstile/patterns.md", + "sha256": "7d229cb935aaa187796a8667b4d9843c8585a7f90fa30ddc6999240960f12bd8" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/turnstile/README.md", + "sha256": "137caa7c326b4f57fecaa6174179d140aae4e20770301ac9ee207fa0f5a2cffd" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/vectorize/api.md", + "sha256": "1a9eb04dc17cd4c346fdca49f10b8059a8897e3cbc28ea5ec6ca898874b86318" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/vectorize/configuration.md", + "sha256": "057eaef43f53e8bd71699ca17a3d296eb0c165ce1c1a304d71dea53ee9ab0908" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/vectorize/gotchas.md", + "sha256": "ed128e78cb088cd62d3a4a4ada65aa7729e09b0bc9ecde1066fb38d00906fdaf" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/vectorize/patterns.md", + "sha256": "dcc4227997e7a856444a701b9243a9a1c8d1cb38680429ac3047b761f85e71c3" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/vectorize/README.md", + "sha256": "badc6f6e66868e9eaf30e46babf9e5c060fe7e425ed62d29d17161677323b388" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/waf/api.md", + "sha256": "d7f67e1a1ee4096edb8382fa04c610fc933593afb442cec3f2d5e76bf6a604fa" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/waf/configuration.md", + "sha256": "e4fb36ebccdb73eb8be9513d316a7294ab62a6ce355b7e09498a77af91cdb095" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/waf/gotchas.md", + "sha256": "d002f5d683577b734b6a1d787b96d04bff5ac47d454e720219ff58a9d850f4cb" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/waf/patterns.md", + "sha256": "8fc5fab71800154d1128725274bcfe1a59b3e667c2c0f841a96f643e5da89ba1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/waf/README.md", + "sha256": "dfcf0ff026f351637a2c7e9321740a24a87a3a5ee9698712677c2914b5d22163" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/web-analytics/configuration.md", + "sha256": "82a7c2312b3d8d9852d14547ef7771616f0da3cdecaa146afbf6272b77976017" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/web-analytics/gotchas.md", + "sha256": "e81a0ac61dce03a4890b9950ba06662c16e4b9ddb4eecdff204221501cd8d6d5" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/web-analytics/integration.md", + "sha256": "a0dbfd1a658252e25d7ffa86180c691c6976265526b36ab14ce9e4b469d95cba" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/web-analytics/patterns.md", + "sha256": "6ccd1e334d260b968731f5f613ad28882bc199b72883e3254a52ded8d859f5a8" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/web-analytics/README.md", + "sha256": "f284cbfd425e0d2c53f79c79187287d7c0c74e6d84259294f2ca5b996834857c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workerd/api.md", + "sha256": "7a6652e76e27424b0ce0d7393e1a04595460290d44e5ca937e3b0090a3b61166" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workerd/configuration.md", + "sha256": "656371e6aa55e315ea02e4304228f5c1151023f68af8058ad60984b90e00a9ad" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workerd/gotchas.md", + "sha256": "ed3107537e54d440445408131b89db5f81f869902bade11cda7978f31234f74a" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workerd/patterns.md", + "sha256": "dc293c43c732adf6e3edfeaf72510904c7e8d097ca26c8b168748dd3d57e4408" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workerd/README.md", + "sha256": "daed9e582eff91b2c29dc77701c7c18a3d92fde0dc6883b2913df26094c0c597" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers/api.md", + "sha256": "96dafb63543f3a52a791ba56b0c3fb45efd7bef5b31331ce520cb999b8956c8d" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers/configuration.md", + "sha256": "e7c5fb85f60a8e79d1e84225e3282797850ce5edd31c4d09d70969c0c325878e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers/frameworks.md", + "sha256": "520538d460fa6a11360163e3ed0725d840946c776feb9e00bd0bafd9f1cff699" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers/gotchas.md", + "sha256": "5dc63ee4570e2c4ed3817a5f9318454caf3a1602c91cd1ae334e98486fe3b2c1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers/patterns.md", + "sha256": "f408d6db9c13ef192511b506b7f83b15df1a0e736c9d10215fcc1c0c0b3ba439" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers/README.md", + "sha256": "4e00df1c6d64cd393c909430769c183b7027b4fe1db0c2dbb31090987baff14c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-ai/api.md", + "sha256": "2b6093736b90376cf9089726eddc580f77d9f719be5031a1552cd05a4f3e991c" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-ai/configuration.md", + "sha256": "acfe8100a30a006b2b35ba9f81897130402825b062a087984258fa597ea8fa1a" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-ai/gotchas.md", + "sha256": "10fe3b26750c2fc92ff6ccdefc1200352cdae88c573071cd7735d0a84ff925da" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-ai/patterns.md", + "sha256": "1ebfd949690bd1e8150435c1bd1bf7b5cd3e6ab35eec5442f7af8bf39ea80198" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-ai/README.md", + "sha256": "e1f1fae0a795cbf975d4751e36f28a2b9eb48ad9cd10a9edf48cc9211581c241" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-for-platforms/api.md", + "sha256": "6bc581bf87e21dd9764b88e7658b8cce841491943bd67b0ab8c37e1fcb2b9835" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-for-platforms/configuration.md", + "sha256": "21e9034f5b014589e05e98eb5fa368e1c4fe4f287215c4b8f38ce12b95fd588a" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-for-platforms/gotchas.md", + "sha256": "98904178ec81e30e0503ae512cedf76e0d8bdcc517009984b474a6008243e18f" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-for-platforms/patterns.md", + "sha256": "08ea9e56309bf663fca61a9bb6e5115d23758fcde7112d482944ac510ae43643" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-for-platforms/README.md", + "sha256": "8c1b123a124f0da9da6ee5944723f6a1fdf39bf753c8bbf5aae23aeab4de6000" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-playground/api.md", + "sha256": "10ca3f561c09227408451ead3809331429e5deb29d3eb2af48ce984dae8959fd" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-playground/configuration.md", + "sha256": "ce0183c32a0df67ae263f8fbbe459b0dfb6247adff5e869c0b1b4d06ae1f6300" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-playground/gotchas.md", + "sha256": "478b65b6a1827a2c95789dfe6038c16837a7dd463b6b943c630afea63a7454bd" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-playground/patterns.md", + "sha256": "c95d27741ecccbad12386ff4fa9dae6c8ff21438bf83f3edfd177ec156a8da69" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-playground/README.md", + "sha256": "88428c57b687c3c6ca23ce95559d0217dcc218a806172ddd70d0c86db0ed5231" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-vpc/api.md", + "sha256": "60bae66d5674a5e54a0077168adfbc5c44a9c87050149381b119941bb4c45f41" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-vpc/configuration.md", + "sha256": "0a3f90caf7b17158687c6f4ce5a6e2f292c19255eb2bf766d7eec96de926104b" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-vpc/gotchas.md", + "sha256": "70e2d004800e75ccdbbdcc37623b97d9f5b4592183aae1421e21bad19e111d80" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-vpc/patterns.md", + "sha256": "87dc009bc45b057408dfbeaace374ff169295bba7d9d4d40fa973945848c9ecc" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workers-vpc/README.md", + "sha256": "6bfab65387d76709296161a0206a1a943f773374c1fb8fa435853693b16902df" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workflows/api.md", + "sha256": "a91d6cd8713c0a472c560fcfb7c308b2e3883594b1dcb77442769eb06c5716e5" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workflows/configuration.md", + "sha256": "3b6b44ded7b2c065658726f55bea95068aa06184b2cf2c1c1929d80e14b316ad" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workflows/gotchas.md", + "sha256": "2e810201a6f5b4e96451926abb92ecbdfee8c30650745fdc3d7dd0933b4cc4cb" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workflows/patterns.md", + "sha256": "7b39cce4fbe3a7363add0e299276ee9fd68e58855a1c099ad8ae20ffec54ae5b" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/workflows/README.md", + "sha256": "46e74e07cd72d650f100c0360bc060da94c899948e8e89f2d5eac215cc2cc615" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/wrangler/api.md", + "sha256": "0872bc513368c167efbf8bc16024140963f44fd2cdc8777cd615b15831997d53" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/wrangler/configuration.md", + "sha256": "25a61168938f398eac23e686ff0558c3b82fc03e4bda43e9a8b856dd02ca2791" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/wrangler/gotchas.md", + "sha256": "6a77032704538305c87afc98f8e7296b145141c322a1f401b99c5b2024caebaa" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/wrangler/patterns.md", + "sha256": "eef3fa927fea3594313d72c0107b6552e65c0a86ad0324558d73e579bbd74772" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/wrangler/README.md", + "sha256": "67bab7fd889e3296fa48f88398f52b44e0e52f159ab1442ecd594059f3f741f1" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/zaraz/api.md", + "sha256": "6b28a3e1525d46aad707b1bf4edd2739df9f48ae880f71a705448270b42f8b9e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/zaraz/configuration.md", + "sha256": "6f3666ac64d1b36b4a708b3dea9d3b1d9679b34c58a00e3ca8e254edd602418a" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/zaraz/gotchas.md", + "sha256": "30378f48fde6e866780466228a3e698005a9ce23a24188c8ed520195b03eac3e" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/zaraz/IMPLEMENTATION_SUMMARY.md", + "sha256": "eba1671fc4ba17fae19d1ff2d1b312d5042b5821e7a4dbc2f6367a4fa8bd5506" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/zaraz/patterns.md", + "sha256": "2ea1d00fe81b1e881c00090fd18c96d8c78ebb41fcc55f540b68150320d90d17" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/references/zaraz/README.md", + "sha256": "929bee8e3efffad15b1a2ee2e20ff87b5d89cc724b4f450f07f6ef15caf4b2f9" + }, + { + "name": "cloudflare", + "path": "skills/cloudflare/SKILL.md", + "sha256": "183987945e4885006cc8dbdcd923e19d13667618d496b3be666973ded2665f92" + }, + { + "name": "cloudflare-email-service", + "path": "skills/cloudflare-email-service/references/cli-and-mcp.md", + "sha256": "906aa333331e080a275a4ba3d4c342281b655afcef25a2081d197a396a3da913" + }, + { + "name": "cloudflare-email-service", + "path": "skills/cloudflare-email-service/references/deliverability.md", + "sha256": "174ff9cafe8e87c98faf2e25b30acb8889cd108caabe55b71c0db2bcb23077a7" + }, + { + "name": "cloudflare-email-service", + "path": "skills/cloudflare-email-service/references/rest-api.md", + "sha256": "edc9da52397ed70db9a0a520d5d7d075d6acd396fd8637e34c6dc1252a3303e7" + }, + { + "name": "cloudflare-email-service", + "path": "skills/cloudflare-email-service/references/routing.md", + "sha256": "db54ef436d72bfa1454a6da95be6a33b29b94266a1e8d1bffe86ffe0e007565c" + }, + { + "name": "cloudflare-email-service", + "path": "skills/cloudflare-email-service/references/sending.md", + "sha256": "e7164e0a96c11fcccb0c684695e3c475a81e4f210891b83503bdda392232f47f" + }, + { + "name": "cloudflare-email-service", + "path": "skills/cloudflare-email-service/SKILL.md", + "sha256": "8b64201ed35424e9bc793e294e40928ee92db1049fd7dab9c9f97cb76e950ffd" + }, + { + "name": "cloudflare-one", + "path": "skills/cloudflare-one/SKILL.md", + "sha256": "605336f84979367b6235a57da8ea43e4f3b856a97efd2c95d9e7f90e41bf17ec" + }, + { + "name": "cloudflare-one-migrations", + "path": "skills/cloudflare-one-migrations/SKILL.md", + "sha256": "50ed246b92a3f82c7afac864201093269fad8de24e4ce7ea18929103a26adad8" + }, + { + "name": "durable-objects", + "path": "skills/durable-objects/references/rules.md", + "sha256": "92f12b305df75710fed778c22880ca7de73797f8f4fbbc4cffcf3e6c8ac919e5" + }, + { + "name": "durable-objects", + "path": "skills/durable-objects/references/testing.md", + "sha256": "08c4064e090ff1a8692543c38fc694c42622f59a27390af26c5825b3970f7f02" + }, + { + "name": "durable-objects", + "path": "skills/durable-objects/references/workers.md", + "sha256": "3149c3ee371b5dbf3a84dac7d5bb42c4c6553762480741f6d2808e4ca20fd932" + }, + { + "name": "durable-objects", + "path": "skills/durable-objects/SKILL.md", + "sha256": "cd6797cb18f3ae8f721dfd2e5cb27b73a0aa8636683f1a38163dab2fd51a8dfb" + }, + { + "name": "sandbox-migrate-to-next", + "path": "skills/sandbox-migrate-to-next/SKILL.md", + "sha256": "0586f041b140fe8073065138dc5638a0198423e353a0ca8aa0738e6e71683b99" + }, + { + "name": "sandbox-next", + "path": "skills/sandbox-next/references/api-quick-ref.md", + "sha256": "0b29ee510f7a177cb6abf9cf563ccb2140548fca674cf2634b8b80413ff40c91" + }, + { + "name": "sandbox-next", + "path": "skills/sandbox-next/references/examples.md", + "sha256": "08d1e6776e16931dec2bb637b82a425679ff217081ac1d50182ab94de40f4fc6" + }, + { + "name": "sandbox-next", + "path": "skills/sandbox-next/SKILL.md", + "sha256": "fa9b342d9e516bce1a382b7d456d659f2005cfea5ea8848796894cda49675ba2" + }, + { + "name": "sandbox-stable", + "path": "skills/sandbox-stable/SKILL.md", + "sha256": "6ced225f22f6180edd9490a8eae04b3f3819f3ac4a9d47e8f9677ac040790910" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/README.md", + "sha256": "e5c50413b3db0fc2e1bf5ae0147b093f36ed9a66567c5e39f6bd93b2c972f440" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/references/astro.md", + "sha256": "6e2faeba9bf9ad24c062c6a723dc37c74644e5843dd7a06164999240e83d7a96" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/references/hugo.md", + "sha256": "5bc91dca7264de9bcb163d4c8e21a20d64afcad7becdd69926f9c7a09d1bb05c" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/references/nextjs-app.md", + "sha256": "a8e10a569937efd076c3f32f37b48a8083c8c52918c9aa309b770d35d5a03273" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/references/nextjs-pages.md", + "sha256": "f6fa729155fa682f6c77b157cbb75492caf172f7451bcc889bc417441a3f02a5" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/references/sveltekit.md", + "sha256": "da8dbe10014a0a94d25c51e80010ffd4fb5f0719caa7226c42b9dacb3ae8933a" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/references/vanilla-html.md", + "sha256": "bb01ca94b0e942c0e329c2fcaf50d0c5ff846f1ae166aa6d654d4c962d48fa9d" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/scripts/auth-probe.sh", + "sha256": "a54d7ab1f6e6ac98a6aeb45498d7bb3568d173669d2d3a7c6a08b56ed2c20182" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/scripts/persist-skill.sh", + "sha256": "4fea0bcda9fded16dd63f77dad196474d3c15c1fe93ac4718b50517fa834330c" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/scripts/validate.sh", + "sha256": "45af59068104650ac8b247cf2059d985fa17960d9c2f3d867287fc296771de81" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/scripts/widget-create.sh", + "sha256": "ebc3ef13ef99f4f6f93400ce66ffc3848c1913aac0cb0876470c6378cf1d9fed" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/SKILL.md", + "sha256": "0d8df415c594c96ca5a4d393b70681d95d92365465e0eb14af3ab2eaa76d800b" + }, + { + "name": "turnstile-spin", + "path": "skills/turnstile-spin/tests/validation.md", + "sha256": "e92fedb23a709b104877733365162bddb2d2be7c8a25c1dec9483bbedddae46f" + }, + { + "name": "web-perf", + "path": "skills/web-perf/SKILL.md", + "sha256": "94c5cb37766676a8321a82861d2ac1072d3dd0ef612f0c946792014ad48fb0c2" + }, + { + "name": "workers-best-practices", + "path": "skills/workers-best-practices/references/review.md", + "sha256": "3e32da345be0906d020e5235d01f2b6398a41216900b5370a267e3f17757ade0" + }, + { + "name": "workers-best-practices", + "path": "skills/workers-best-practices/references/rules.md", + "sha256": "b0273b18c7fa40fadf33262e7da7c8f2a52f2f1240ce66d590e4c31663261380" + }, + { + "name": "workers-best-practices", + "path": "skills/workers-best-practices/SKILL.md", + "sha256": "099432ff265ff6080327ef0b392c118b835d2a5bda98a7de07e1afd115ed6458" + }, + { + "name": "wrangler", + "path": "skills/wrangler/SKILL.md", + "sha256": "42abe11ba6c0cb0c135deed1d591d844838fe0b61fc8c6d675a832435508a61b" + } + ] + } + }, { "id": "ponytail", "label": "Ponytail", diff --git a/packages/mtmharness/tests/coding-plugin.test.mjs b/packages/mtmharness/tests/coding-plugin.test.mjs index 716b272..e6f16ec 100644 --- a/packages/mtmharness/tests/coding-plugin.test.mjs +++ b/packages/mtmharness/tests/coding-plugin.test.mjs @@ -1,7 +1,7 @@ import assert from "node:assert/strict"; import { mkdirSync, mkdtempSync, rmSync, writeFileSync } from "node:fs"; import { tmpdir } from "node:os"; -import { join } from "node:path"; +import { dirname, join } from "node:path"; import test from "node:test"; import { applyCoding, @@ -57,6 +57,19 @@ for (const name of ["ponytail", "ponytail-review", "ponytail-audit", "ponytail-d writeSkill(join(managedSkillsRoot, "ponytail"), name, "Ponytail test guidance.", "Ponytail skill body."); } +const cloudflarePackage = MTM_CODING_PACKAGES.packages.find((item) => item.id === "cloudflare"); +if (cloudflarePackage?.skills === undefined) throw new Error("Cloudflare test fixture metadata is unavailable"); +for (const file of cloudflarePackage.skills.files) { + const parts = file.path.split("/"); + const target = join(managedSkillsRoot, "cloudflare", ...parts.slice(1)); + mkdirSync(dirname(target), { recursive: true }); + if (parts.at(-1) === "SKILL.md") { + writeFileSync(target, "---\nname: " + file.name + "\ndescription: Cloudflare test guidance.\n---\n\nCloudflare skill fixture.\n"); + } else { + writeFileSync(target, "Cloudflare test resource.\n"); + } +} + test.after(() => { if (previousDshHome === undefined) delete process.env.DSH_HOME; else process.env.DSH_HOME = previousDshHome; @@ -378,9 +391,14 @@ test("unified settings reconcile coding features and unregister the watcher", as await applyCoding(fake.context, {}); assert.equal(name, "mtmharness"); const listedSkills = await fake.context.skills.list({}); - assert.equal(listedSkills.length, 7); - assert.equal(MTM_CODING_PACKAGES.packages.filter((item) => item.kind === "data-only").length, 1); - assert.equal(fake.skillProviders.length, 2); + assert.equal(listedSkills.length, 20); + assert.deepEqual(listedSkills.filter((skill) => skill.provider === "mtm-coding-cloudflare").map((skill) => skill.name).sort(), [ + "agents-sdk", "cloudflare", "cloudflare-email-service", "cloudflare-one", "cloudflare-one-migrations", + "durable-objects", "sandbox-migrate-to-next", "sandbox-next", "sandbox-stable", "turnstile-spin", + "web-perf", "workers-best-practices", "wrangler", + ]); + assert.equal(MTM_CODING_PACKAGES.packages.filter((item) => item.kind === "data-only").length, 2); + assert.equal(fake.skillProviders.length, 3); const modernGo = await fake.context.skills.get("use-modern-go"); assert.ok(modernGo); assert.equal(modernGo.invocation.modelInvocable, true); @@ -402,11 +420,11 @@ test("unified settings reconcile coding features and unregister the watcher", as await fake.trigger({ ...fake.getSettings(), codebaseMemoryEnabled: true }); assert.equal(fake.pluginCalls.filter((call) => call.config?.transport === "stdio").length, 1); await fake.trigger({ ...fake.getSettings(), rtkMode: "off" }); - assert.equal(fake.skillProviders.length, 2); + assert.equal(fake.skillProviders.length, 3); assert.equal(fake.sections.some((section) => section.name === "mtm-coding:rtk:prompt"), false); assert.equal((await fake.context.skills.list({})).some((skill) => skill.name === "rtk"), false); await fake.trigger({ ...fake.getSettings(), rtkMode: "guidance" }); - assert.equal(fake.skillProviders.length, 2); + assert.equal(fake.skillProviders.length, 3); assert.equal(fake.sections.some((section) => section.name === "mtm-coding:rtk:prompt"), true); const callsBeforeDispose = fake.pluginCalls.length; await fake.dispose();