opencode-skills-collection 3.1.12 → 3.1.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (770) hide show
  1. package/README.md +4 -6
  2. package/bundled-skills/.antigravity-install-manifest.json +195 -1
  3. package/bundled-skills/ab-testing/SKILL.md +368 -0
  4. package/bundled-skills/ab-testing/evals/evals.json +105 -0
  5. package/bundled-skills/ab-testing/references/sample-size-guide.md +263 -0
  6. package/bundled-skills/ab-testing/references/test-templates.md +277 -0
  7. package/bundled-skills/accint-commitments/SKILL.md +32 -0
  8. package/bundled-skills/accint-frames/SKILL.md +35 -0
  9. package/bundled-skills/accint-solve/SKILL.md +22 -192
  10. package/bundled-skills/add-app-clip/SKILL.md +297 -0
  11. package/bundled-skills/add-app-clip/agents/openai.yaml +4 -0
  12. package/bundled-skills/add-app-clip/references/native-module.md +96 -0
  13. package/bundled-skills/agent-memory/SKILL.md +84 -0
  14. package/bundled-skills/alternatives-pages/README.md +46 -0
  15. package/bundled-skills/alternatives-pages/SKILL.md +376 -0
  16. package/bundled-skills/analytics/SKILL.md +324 -0
  17. package/bundled-skills/analytics/evals/evals.json +90 -0
  18. package/bundled-skills/analytics/references/event-library.md +260 -0
  19. package/bundled-skills/analytics/references/ga4-implementation.md +300 -0
  20. package/bundled-skills/analytics/references/gtm-implementation.md +390 -0
  21. package/bundled-skills/anti-deception/SKILL.md +50 -0
  22. package/bundled-skills/api-analyzer/SKILL.md +101 -0
  23. package/bundled-skills/api-and-interface-design/SKILL.md +307 -0
  24. package/bundled-skills/api-designer/SKILL.md +167 -0
  25. package/bundled-skills/api-integration/SKILL.md +175 -0
  26. package/bundled-skills/api-onboarding/README.md +47 -0
  27. package/bundled-skills/api-onboarding/SKILL.md +473 -0
  28. package/bundled-skills/api-sdk-generator/SKILL.md +223 -0
  29. package/bundled-skills/appium-skill/SKILL.md +317 -0
  30. package/bundled-skills/applicationinsights-web-ts/SKILL.md +477 -0
  31. package/bundled-skills/automated-triage/SKILL.md +189 -0
  32. package/bundled-skills/aws-agentic-ai/SKILL.md +141 -0
  33. package/bundled-skills/aws-cdk-development/SKILL.md +275 -0
  34. package/bundled-skills/aws-cost-operations/SKILL.md +273 -0
  35. package/bundled-skills/aws-mcp-setup/SKILL.md +192 -0
  36. package/bundled-skills/aws-serverless-eda/SKILL.md +394 -0
  37. package/bundled-skills/aws-sst-development/SKILL.md +175 -0
  38. package/bundled-skills/azure-ai-language-conversations-py/SKILL.md +112 -0
  39. package/bundled-skills/azure-servicebus-rust/SKILL.md +182 -0
  40. package/bundled-skills/azure-storage-queue-rust/SKILL.md +178 -0
  41. package/bundled-skills/baseline-ui/SKILL.md +15 -10
  42. package/bundled-skills/before-you-build/SKILL.md +111 -0
  43. package/bundled-skills/brooks-audit/SKILL.md +49 -0
  44. package/bundled-skills/brooks-audit/architecture-guide.md +195 -0
  45. package/bundled-skills/brooks-audit/onboarding-guide.md +89 -0
  46. package/bundled-skills/brooks-debt/SKILL.md +42 -0
  47. package/bundled-skills/brooks-debt/debt-guide.md +125 -0
  48. package/bundled-skills/brooks-harness/SKILL.md +139 -0
  49. package/bundled-skills/brooks-review/SKILL.md +42 -0
  50. package/bundled-skills/brooks-review/pr-review-guide.md +163 -0
  51. package/bundled-skills/brooks-sweep/SKILL.md +44 -0
  52. package/bundled-skills/brooks-sweep/sweep-guide.md +264 -0
  53. package/bundled-skills/brooks-test/SKILL.md +41 -0
  54. package/bundled-skills/brooks-test/test-guide.md +147 -0
  55. package/bundled-skills/bug-hunt-swarm/SKILL.md +189 -0
  56. package/bundled-skills/bug-hunt-swarm/agents/openai.yaml +4 -0
  57. package/bundled-skills/building-native-ui/SKILL.md +77 -18
  58. package/bundled-skills/building-native-ui/agents/openai.yaml +4 -0
  59. package/bundled-skills/building-native-ui/references/animations.md +220 -0
  60. package/bundled-skills/building-native-ui/references/controls.md +270 -0
  61. package/bundled-skills/building-native-ui/references/form-sheet.md +253 -0
  62. package/bundled-skills/building-native-ui/references/gradients.md +106 -0
  63. package/bundled-skills/building-native-ui/references/icons.md +213 -0
  64. package/bundled-skills/building-native-ui/references/media.md +198 -0
  65. package/bundled-skills/building-native-ui/references/route-structure.md +229 -0
  66. package/bundled-skills/building-native-ui/references/search.md +248 -0
  67. package/bundled-skills/building-native-ui/references/storage.md +121 -0
  68. package/bundled-skills/building-native-ui/references/tabs.md +433 -0
  69. package/bundled-skills/building-native-ui/references/toolbar-and-headers.md +284 -0
  70. package/bundled-skills/building-native-ui/references/visual-effects.md +197 -0
  71. package/bundled-skills/building-native-ui/references/webgpu-three.md +605 -0
  72. package/bundled-skills/building-native-ui/references/zoom-transitions.md +158 -0
  73. package/bundled-skills/changelog-updates/README.md +53 -0
  74. package/bundled-skills/changelog-updates/SKILL.md +552 -0
  75. package/bundled-skills/ci-cd-and-automation/SKILL.md +403 -0
  76. package/bundled-skills/claimable-postgres/SKILL.md +91 -59
  77. package/bundled-skills/co-marketing/SKILL.md +301 -0
  78. package/bundled-skills/co-marketing/evals/evals.json +84 -0
  79. package/bundled-skills/code-review-and-quality/SKILL.md +394 -0
  80. package/bundled-skills/code-showcase-core-components/SKILL.md +281 -0
  81. package/bundled-skills/code-showcase-react-ui-patterns/SKILL.md +306 -0
  82. package/bundled-skills/code-showcase-systematic-debugging/SKILL.md +167 -0
  83. package/bundled-skills/code-showcase-testing-patterns/SKILL.md +276 -0
  84. package/bundled-skills/code-simplification/SKILL.md +344 -0
  85. package/bundled-skills/community-building/README.md +102 -0
  86. package/bundled-skills/community-building/SKILL.md +415 -0
  87. package/bundled-skills/competitor-profiling/SKILL.md +427 -0
  88. package/bundled-skills/competitor-profiling/evals/evals.json +85 -0
  89. package/bundled-skills/competitor-profiling/references/templates.md +167 -0
  90. package/bundled-skills/competitor-profiling/references/tool-reference.md +179 -0
  91. package/bundled-skills/competitor-tracking/README.md +40 -0
  92. package/bundled-skills/competitor-tracking/SKILL.md +322 -0
  93. package/bundled-skills/context-engineering/SKILL.md +302 -0
  94. package/bundled-skills/cro/SKILL.md +202 -0
  95. package/bundled-skills/cro/evals/evals.json +111 -0
  96. package/bundled-skills/cro/references/experiments.md +248 -0
  97. package/bundled-skills/cro/references/form.md +422 -0
  98. package/bundled-skills/cron-doctor/scripts/cron-engine.js +10 -7
  99. package/bundled-skills/cucumber-skill/SKILL.md +235 -0
  100. package/bundled-skills/customer-research/SKILL.md +287 -0
  101. package/bundled-skills/customer-research/evals/evals.json +162 -0
  102. package/bundled-skills/customer-research/references/source-guides.md +401 -0
  103. package/bundled-skills/cypress-skill/SKILL.md +235 -0
  104. package/bundled-skills/debugging-and-error-recovery/SKILL.md +313 -0
  105. package/bundled-skills/debugging-code/SKILL.md +284 -0
  106. package/bundled-skills/debugging-code/references/advanced-techniques.md +50 -0
  107. package/bundled-skills/debugging-code/references/installing-debuggers.md +67 -0
  108. package/bundled-skills/debugging-code/scripts/install-dap.sh +87 -0
  109. package/bundled-skills/deprecation-and-migration/SKILL.md +219 -0
  110. package/bundled-skills/design-philosophy/SKILL.md +40 -0
  111. package/bundled-skills/design-philosophy/reference.md +19 -0
  112. package/bundled-skills/design-spatial/SKILL.md +271 -0
  113. package/bundled-skills/design-spatial/scripts/layout-audit.js +138 -0
  114. package/bundled-skills/design-system/SKILL.md +140 -0
  115. package/bundled-skills/design-system/references/motion-choreography.md +111 -0
  116. package/bundled-skills/design-thinking/SKILL.md +109 -0
  117. package/bundled-skills/design-ux/SKILL.md +75 -0
  118. package/bundled-skills/dev-to-hashnode/README.md +62 -0
  119. package/bundled-skills/dev-to-hashnode/SKILL.md +399 -0
  120. package/bundled-skills/developer-advocacy/README.md +102 -0
  121. package/bundled-skills/developer-advocacy/SKILL.md +423 -0
  122. package/bundled-skills/developer-audience-context/README.md +61 -0
  123. package/bundled-skills/developer-audience-context/SKILL.md +271 -0
  124. package/bundled-skills/developer-audience-context/references/example-apitest.md +175 -0
  125. package/bundled-skills/developer-audience-context/references/template.md +152 -0
  126. package/bundled-skills/developer-churn/README.md +80 -0
  127. package/bundled-skills/developer-churn/SKILL.md +652 -0
  128. package/bundled-skills/developer-listening/README.md +30 -0
  129. package/bundled-skills/developer-listening/SKILL.md +232 -0
  130. package/bundled-skills/developer-newsletter/README.md +84 -0
  131. package/bundled-skills/developer-newsletter/SKILL.md +376 -0
  132. package/bundled-skills/developer-onboarding/README.md +35 -0
  133. package/bundled-skills/developer-onboarding/SKILL.md +530 -0
  134. package/bundled-skills/developer-sandbox/README.md +47 -0
  135. package/bundled-skills/developer-sandbox/SKILL.md +504 -0
  136. package/bundled-skills/developer-seo/README.md +36 -0
  137. package/bundled-skills/developer-seo/SKILL.md +296 -0
  138. package/bundled-skills/developer-signup-flow/README.md +36 -0
  139. package/bundled-skills/developer-signup-flow/SKILL.md +397 -0
  140. package/bundled-skills/devrel-content/README.md +81 -0
  141. package/bundled-skills/devrel-content/SKILL.md +428 -0
  142. package/bundled-skills/dispatch/SKILL.md +130 -0
  143. package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
  144. package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
  145. package/bundled-skills/docs/maintainers/repo-growth-seo.md +3 -3
  146. package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
  147. package/bundled-skills/docs/users/bundles.md +1 -1
  148. package/bundled-skills/docs/users/claude-code-skills.md +1 -1
  149. package/bundled-skills/docs/users/faq.md +1 -1
  150. package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
  151. package/bundled-skills/docs/users/getting-started.md +1 -1
  152. package/bundled-skills/docs/users/kiro-integration.md +1 -1
  153. package/bundled-skills/docs/users/usage.md +8 -8
  154. package/bundled-skills/docs/users/visual-guide.md +8 -8
  155. package/bundled-skills/docs-as-marketing/README.md +37 -0
  156. package/bundled-skills/docs-as-marketing/SKILL.md +398 -0
  157. package/bundled-skills/documentation-and-adrs/SKILL.md +291 -0
  158. package/bundled-skills/doubt-driven-development/SKILL.md +256 -0
  159. package/bundled-skills/eas-update-insights/SKILL.md +232 -0
  160. package/bundled-skills/eas-update-insights/agents/openai.yaml +4 -0
  161. package/bundled-skills/eas-update-insights/references/channel-insights-schema.md +47 -0
  162. package/bundled-skills/eas-update-insights/references/update-insights-schema.md +69 -0
  163. package/bundled-skills/expo-api-routes/SKILL.md +9 -5
  164. package/bundled-skills/expo-api-routes/agents/openai.yaml +4 -0
  165. package/bundled-skills/expo-brownfield/SKILL.md +71 -0
  166. package/bundled-skills/expo-brownfield/agents/openai.yaml +4 -0
  167. package/bundled-skills/expo-brownfield/references/brownfield-integrated.md +526 -0
  168. package/bundled-skills/expo-brownfield/references/brownfield-isolated.md +402 -0
  169. package/bundled-skills/expo-brownfield/references/comparison.md +63 -0
  170. package/bundled-skills/expo-brownfield/references/troubleshooting.md +88 -0
  171. package/bundled-skills/expo-cicd-workflows/SKILL.md +18 -16
  172. package/bundled-skills/expo-cicd-workflows/agents/openai.yaml +4 -0
  173. package/bundled-skills/expo-cicd-workflows/scripts/fetch.js +109 -0
  174. package/bundled-skills/expo-cicd-workflows/scripts/package.json +11 -0
  175. package/bundled-skills/expo-cicd-workflows/scripts/validate.js +84 -0
  176. package/bundled-skills/expo-deployment/SKILL.md +157 -53
  177. package/bundled-skills/expo-deployment/agents/openai.yaml +4 -0
  178. package/bundled-skills/expo-deployment/references/app-store-metadata.md +497 -0
  179. package/bundled-skills/expo-deployment/references/ios-app-store.md +371 -0
  180. package/bundled-skills/expo-deployment/references/play-store.md +246 -0
  181. package/bundled-skills/expo-deployment/references/testflight.md +58 -0
  182. package/bundled-skills/expo-deployment/references/workflows.md +160 -0
  183. package/bundled-skills/expo-dev-client/SKILL.md +25 -14
  184. package/bundled-skills/expo-dev-client/agents/openai.yaml +4 -0
  185. package/bundled-skills/expo-examples/SKILL.md +111 -0
  186. package/bundled-skills/expo-examples/references/catalog.md +105 -0
  187. package/bundled-skills/expo-module/SKILL.md +152 -0
  188. package/bundled-skills/expo-module/agents/openai.yaml +4 -0
  189. package/bundled-skills/expo-module/references/config-plugin.md +90 -0
  190. package/bundled-skills/expo-module/references/create-expo-module.md +206 -0
  191. package/bundled-skills/expo-module/references/lifecycle.md +127 -0
  192. package/bundled-skills/expo-module/references/module-config.md +48 -0
  193. package/bundled-skills/expo-module/references/native-module.md +286 -0
  194. package/bundled-skills/expo-module/references/native-view.md +171 -0
  195. package/bundled-skills/expo-observe/SKILL.md +44 -0
  196. package/bundled-skills/expo-observe/references/metrics.md +47 -0
  197. package/bundled-skills/expo-observe/references/queries.md +342 -0
  198. package/bundled-skills/expo-observe/references/setup.md +255 -0
  199. package/bundled-skills/expo-tailwind-setup/SKILL.md +13 -10
  200. package/bundled-skills/expo-tailwind-setup/agents/openai.yaml +4 -0
  201. package/bundled-skills/expo-ui/SKILL.md +61 -0
  202. package/bundled-skills/expo-ui/agents/openai.yaml +4 -0
  203. package/bundled-skills/expo-ui/references/drop-in-replacements.md +27 -0
  204. package/bundled-skills/expo-ui/references/jetpack-compose.md +73 -0
  205. package/bundled-skills/expo-ui/references/swift-ui.md +73 -0
  206. package/bundled-skills/expo-ui/references/universal.md +73 -0
  207. package/bundled-skills/expo-ui/scripts/list-components.js +193 -0
  208. package/bundled-skills/faf-context/SKILL.md +106 -0
  209. package/bundled-skills/faf-go/SKILL.md +336 -0
  210. package/bundled-skills/fixing-accessibility/SKILL.md +16 -5
  211. package/bundled-skills/fixing-metadata/SKILL.md +18 -8
  212. package/bundled-skills/fixing-motion-performance/SKILL.md +17 -6
  213. package/bundled-skills/formik-patterns/SKILL.md +379 -0
  214. package/bundled-skills/free-tier-strategy/README.md +39 -0
  215. package/bundled-skills/free-tier-strategy/SKILL.md +462 -0
  216. package/bundled-skills/frontend-architecture/SKILL.md +419 -0
  217. package/bundled-skills/frontend-data-contracts/SKILL.md +331 -0
  218. package/bundled-skills/frontend-observability/SKILL.md +434 -0
  219. package/bundled-skills/frontend-optimistic-mutations/SKILL.md +278 -0
  220. package/bundled-skills/frontend-seo/SKILL.md +710 -0
  221. package/bundled-skills/frontend-slides-frontend-slides/SKILL.md +397 -0
  222. package/bundled-skills/frontend-ui-engineering/SKILL.md +341 -0
  223. package/bundled-skills/gemini-api-dev/SKILL.md +96 -53
  224. package/bundled-skills/gemini-live-api-dev/SKILL.md +339 -0
  225. package/bundled-skills/gemini-omni-flash-api/SKILL.md +335 -0
  226. package/bundled-skills/gemini-omni-flash-api/scripts/upload_file.py +218 -0
  227. package/bundled-skills/gemini-omni-flash-api/scripts/video/generate_video.py +439 -0
  228. package/bundled-skills/gemini-omni-flash-api/scripts/video/inspect_video.py +197 -0
  229. package/bundled-skills/gemini-omni-flash-api/scripts/video/prep_video.py +255 -0
  230. package/bundled-skills/gh-image/SKILL.md +10 -2
  231. package/bundled-skills/git-workflow-and-versioning/SKILL.md +313 -0
  232. package/bundled-skills/github-presence/README.md +67 -0
  233. package/bundled-skills/github-presence/SKILL.md +484 -0
  234. package/bundled-skills/graphql-schema/SKILL.md +309 -0
  235. package/bundled-skills/hf-mcp/SKILL.md +195 -0
  236. package/bundled-skills/hf-mem/SKILL.md +92 -0
  237. package/bundled-skills/hugging-face-cli/SKILL.md +155 -115
  238. package/bundled-skills/hugging-face-community-evals/SKILL.md +14 -7
  239. package/bundled-skills/hugging-face-dataset-viewer/SKILL.md +30 -37
  240. package/bundled-skills/hugging-face-gradio/SKILL.md +14 -7
  241. package/bundled-skills/hugging-face-model-trainer/SKILL.md +42 -11
  242. package/bundled-skills/hugging-face-model-trainer/references/gguf_conversion.md +5 -0
  243. package/bundled-skills/hugging-face-model-trainer/scripts/convert_to_gguf.py +57 -51
  244. package/bundled-skills/hugging-face-model-trainer/scripts/hf_benchmarks.py +659 -0
  245. package/bundled-skills/hugging-face-paper-publisher/SKILL.md +13 -6
  246. package/bundled-skills/hugging-face-papers/SKILL.md +12 -5
  247. package/bundled-skills/hugging-face-trackio/SKILL.md +11 -5
  248. package/bundled-skills/hugging-face-vision-trainer/SKILL.md +11 -5
  249. package/bundled-skills/huggingface-best/SKILL.md +143 -0
  250. package/bundled-skills/huggingface-local-models/SKILL.md +130 -0
  251. package/bundled-skills/huggingface-local-models/references/hardware.md +38 -0
  252. package/bundled-skills/huggingface-local-models/references/hub-discovery.md +178 -0
  253. package/bundled-skills/huggingface-local-models/references/quantization.md +256 -0
  254. package/bundled-skills/huggingface-lora-space-builder/SKILL.md +409 -0
  255. package/bundled-skills/huggingface-lora-space-builder/references/adapting-to-the-lora.md +113 -0
  256. package/bundled-skills/huggingface-lora-space-builder/references/base-models/krea-2.md +63 -0
  257. package/bundled-skills/huggingface-lora-space-builder/references/base-models/ltx.md +205 -0
  258. package/bundled-skills/huggingface-lora-space-builder/references/base-models/qwen-image.md +144 -0
  259. package/bundled-skills/huggingface-lora-space-builder/references/creative-mode.md +262 -0
  260. package/bundled-skills/huggingface-lora-space-builder/references/tasks.md +124 -0
  261. package/bundled-skills/huggingface-lora-space-builder/references/zerogpu-and-publishing.md +194 -0
  262. package/bundled-skills/huggingface-spaces/SKILL.md +247 -0
  263. package/bundled-skills/huggingface-spaces/references/buckets.md +89 -0
  264. package/bundled-skills/huggingface-spaces/references/debugging.md +234 -0
  265. package/bundled-skills/huggingface-spaces/references/gradio.md +171 -0
  266. package/bundled-skills/huggingface-spaces/references/grants.md +56 -0
  267. package/bundled-skills/huggingface-spaces/references/inference-providers.md +85 -0
  268. package/bundled-skills/huggingface-spaces/references/known-errors.md +232 -0
  269. package/bundled-skills/huggingface-spaces/references/requirements.md +153 -0
  270. package/bundled-skills/huggingface-spaces/references/zerogpu.md +276 -0
  271. package/bundled-skills/huggingface-tool-builder/SKILL.md +137 -0
  272. package/bundled-skills/huggingface-tool-builder/references/baseline_hf_api.py +57 -0
  273. package/bundled-skills/huggingface-tool-builder/references/baseline_hf_api.sh +40 -0
  274. package/bundled-skills/huggingface-tool-builder/references/baseline_hf_api.tsx +57 -0
  275. package/bundled-skills/huggingface-tool-builder/references/find_models_by_paper.sh +230 -0
  276. package/bundled-skills/huggingface-tool-builder/references/hf_enrich_models.sh +96 -0
  277. package/bundled-skills/huggingface-tool-builder/references/hf_model_card_frontmatter.sh +188 -0
  278. package/bundled-skills/huggingface-tool-builder/references/hf_model_papers_auth.sh +171 -0
  279. package/bundled-skills/huggingface-zerogpu/SKILL.md +306 -0
  280. package/bundled-skills/huggingface-zerogpu/references/concurrency.md +79 -0
  281. package/bundled-skills/huggingface-zerogpu/references/cuda-and-deps.md +66 -0
  282. package/bundled-skills/huggingface-zerogpu/references/how-quota-works.md +74 -0
  283. package/bundled-skills/huggingface-zerogpu/references/how-zerogpu-works.md +50 -0
  284. package/bundled-skills/hugo-to-markdown/SKILL.md +201 -0
  285. package/bundled-skills/hugo-to-markdown/agents/openai.yaml +4 -0
  286. package/bundled-skills/hugo-to-markdown/references/conversion-workflow.md +143 -0
  287. package/bundled-skills/hugo-to-markdown/references/front-matter-and-content.md +145 -0
  288. package/bundled-skills/hugo-to-markdown/references/links-assets-and-validation.md +106 -0
  289. package/bundled-skills/hugo-to-markdown/references/shortcodes-and-render-hooks.md +281 -0
  290. package/bundled-skills/hugo-to-markdown/scripts/check_standard_markdown.py +70 -0
  291. package/bundled-skills/hugo-to-markdown/scripts/inventory_hugo_rules.py +188 -0
  292. package/bundled-skills/hyperexecute-skill/SKILL.md +65 -0
  293. package/bundled-skills/idea-refine/SKILL.md +195 -0
  294. package/bundled-skills/idea-refine/examples.md +238 -0
  295. package/bundled-skills/idea-refine/frameworks.md +99 -0
  296. package/bundled-skills/idea-refine/refinement-criteria.md +113 -0
  297. package/bundled-skills/idea-refine/scripts/idea-refine.sh +15 -0
  298. package/bundled-skills/implement/SKILL.md +32 -0
  299. package/bundled-skills/incremental-implementation/SKILL.md +262 -0
  300. package/bundled-skills/jest-skill/SKILL.md +182 -0
  301. package/bundled-skills/junit-5-skill/SKILL.md +236 -0
  302. package/bundled-skills/logic-diff/SKILL.md +50 -0
  303. package/bundled-skills/logic-diff/logic-diff-guide.md +75 -0
  304. package/bundled-skills/logic-explain/SKILL.md +50 -0
  305. package/bundled-skills/logic-explain/logic-explain-guide.md +74 -0
  306. package/bundled-skills/logic-fix-all/SKILL.md +87 -0
  307. package/bundled-skills/logic-fix-all/guide-phases-0-2-consent-scope-health.md +113 -0
  308. package/bundled-skills/logic-fix-all/guide-phases-3-5-review-locate-clarify.md +47 -0
  309. package/bundled-skills/logic-fix-all/guide-phases-6-9-fix-iterate-report.md +143 -0
  310. package/bundled-skills/logic-fix-all/logic-fix-all-guide.md +60 -0
  311. package/bundled-skills/logic-locate/SKILL.md +52 -0
  312. package/bundled-skills/logic-locate/logic-locate-guide.md +85 -0
  313. package/bundled-skills/logic-review/SKILL.md +100 -0
  314. package/bundled-skills/logic-review/logic-review-guide.md +296 -0
  315. package/bundled-skills/longbridge-content/SKILL.md +87 -0
  316. package/bundled-skills/longbridge-fundamentals/SKILL.md +134 -0
  317. package/bundled-skills/longbridge-market-data/SKILL.md +129 -0
  318. package/bundled-skills/loopy/SKILL.md +289 -0
  319. package/bundled-skills/loopy/agents/openai.yaml +4 -0
  320. package/bundled-skills/loopy/references/audit.md +61 -0
  321. package/bundled-skills/loopy/references/debrief.md +43 -0
  322. package/bundled-skills/loopy/references/discover.md +72 -0
  323. package/bundled-skills/loopy/references/publish.md +65 -0
  324. package/bundled-skills/loopy/references/run.md +73 -0
  325. package/bundled-skills/marketing-plan/SKILL.md +283 -0
  326. package/bundled-skills/marketing-plan/evals/evals.json +96 -0
  327. package/bundled-skills/marketing-plan/references/aarrr-framework.md +180 -0
  328. package/bundled-skills/marketing-plan/references/budget-planning.md +168 -0
  329. package/bundled-skills/marketing-plan/references/client-types.md +373 -0
  330. package/bundled-skills/marketing-plan/references/current-state-rubric.md +255 -0
  331. package/bundled-skills/marketing-plan/references/example-quietude.md +972 -0
  332. package/bundled-skills/marketing-plan/references/funding-stage-unlocks.md +230 -0
  333. package/bundled-skills/marketing-plan/references/growth-patterns.md +148 -0
  334. package/bundled-skills/marketing-plan/references/idea-cross-reference.md +265 -0
  335. package/bundled-skills/marketing-plan/references/measurement-framework.md +213 -0
  336. package/bundled-skills/marketing-plan/references/methodology.md +363 -0
  337. package/bundled-skills/marketing-plan/references/ops-stack-mapping.md +197 -0
  338. package/bundled-skills/marketing-plan/references/plan-template.md +494 -0
  339. package/bundled-skills/marketing-plan/references/team-and-agency-model.md +278 -0
  340. package/bundled-skills/mdpr-skill/SKILL.md +233 -0
  341. package/bundled-skills/monte-carlo-analyze-root-cause/SKILL.md +229 -0
  342. package/bundled-skills/monte-carlo-asset-health/SKILL.md +200 -0
  343. package/bundled-skills/monte-carlo-monitoring-advisor/SKILL.md +317 -0
  344. package/bundled-skills/monte-carlo-performance-diagnosis/SKILL.md +153 -0
  345. package/bundled-skills/monte-carlo-remediation/SKILL.md +359 -0
  346. package/bundled-skills/monte-carlo-storage-cost-analysis/SKILL.md +162 -0
  347. package/bundled-skills/native-data-fetching/SKILL.md +11 -8
  348. package/bundled-skills/native-data-fetching/agents/openai.yaml +4 -0
  349. package/bundled-skills/native-data-fetching/references/expo-router-loaders.md +341 -0
  350. package/bundled-skills/neon-ai-gateway/SKILL.md +237 -0
  351. package/bundled-skills/neon-functions/SKILL.md +465 -0
  352. package/bundled-skills/neon-functions/references/ai-sdk.md +139 -0
  353. package/bundled-skills/neon-functions/references/hono-websockets.md +145 -0
  354. package/bundled-skills/neon-functions/references/mastra-studio.md +132 -0
  355. package/bundled-skills/neon-functions/references/mcp.md +137 -0
  356. package/bundled-skills/neon-functions/references/sentry.md +131 -0
  357. package/bundled-skills/neon-functions/references/sse.md +143 -0
  358. package/bundled-skills/neon-object-storage/SKILL.md +200 -0
  359. package/bundled-skills/neon-postgres/SKILL.md +234 -469
  360. package/bundled-skills/neon-postgres-branches/SKILL.md +292 -0
  361. package/bundled-skills/neon-postgres-egress-optimizer/SKILL.md +256 -0
  362. package/bundled-skills/newman-cicd-integration/SKILL.md +330 -0
  363. package/bundled-skills/observability-and-instrumentation/SKILL.md +216 -0
  364. package/bundled-skills/odw/SKILL.md +57 -0
  365. package/bundled-skills/offers/SKILL.md +168 -0
  366. package/bundled-skills/offers/references/bonus-stacking.md +150 -0
  367. package/bundled-skills/offers/references/examples.md +215 -0
  368. package/bundled-skills/offers/references/guarantee-design.md +172 -0
  369. package/bundled-skills/offers/references/offer-anatomy.md +203 -0
  370. package/bundled-skills/offers/references/offer-formats.md +240 -0
  371. package/bundled-skills/offers/references/scarcity-urgency.md +175 -0
  372. package/bundled-skills/offers/references/value-equation.md +134 -0
  373. package/bundled-skills/onboarding/SKILL.md +235 -0
  374. package/bundled-skills/onboarding/evals/evals.json +92 -0
  375. package/bundled-skills/onboarding/references/experiments.md +258 -0
  376. package/bundled-skills/open-source-marketing/README.md +100 -0
  377. package/bundled-skills/open-source-marketing/SKILL.md +466 -0
  378. package/bundled-skills/openapi-spec-generator/SKILL.md +335 -0
  379. package/bundled-skills/performance-optimization/SKILL.md +363 -0
  380. package/bundled-skills/planning-and-task-breakdown/SKILL.md +240 -0
  381. package/bundled-skills/polis-protocol-a-self-optimizing-city-of-agents/SKILL.md +170 -0
  382. package/bundled-skills/postgresql-cli/SKILL.md +498 -0
  383. package/bundled-skills/postgresql-cli/references/cli-options-and-variables.md +444 -0
  384. package/bundled-skills/postgresql-cli/references/meta-commands-core.md +466 -0
  385. package/bundled-skills/postgresql-cli/references/meta-commands-formatting.md +154 -0
  386. package/bundled-skills/postgresql-cli/references/meta-commands-inspection.md +134 -0
  387. package/bundled-skills/postgresql-cli/references/tips-advanced.md +289 -0
  388. package/bundled-skills/postgresql-cli/references/tips-workflows.md +407 -0
  389. package/bundled-skills/postman-collection-generator/SKILL.md +184 -0
  390. package/bundled-skills/postman-newman-automation/SKILL.md +311 -0
  391. package/bundled-skills/postman-openapi-converter/SKILL.md +174 -0
  392. package/bundled-skills/power-user-cultivation/README.md +78 -0
  393. package/bundled-skills/power-user-cultivation/SKILL.md +598 -0
  394. package/bundled-skills/pricing/SKILL.md +246 -0
  395. package/bundled-skills/pricing/evals/evals.json +90 -0
  396. package/bundled-skills/pricing/references/research-methods.md +152 -0
  397. package/bundled-skills/pricing/references/tier-structure.md +232 -0
  398. package/bundled-skills/privacy-mask/SKILL.md +96 -0
  399. package/bundled-skills/product-marketing/SKILL.md +256 -0
  400. package/bundled-skills/product-marketing/evals/evals.json +85 -0
  401. package/bundled-skills/public-relations/SKILL.md +146 -0
  402. package/bundled-skills/public-relations/references/journalist-pitching.md +368 -0
  403. package/bundled-skills/public-relations/references/media-outlets.md +207 -0
  404. package/bundled-skills/public-relations/references/newsjacking.md +218 -0
  405. package/bundled-skills/public-relations/references/press-platforms.md +188 -0
  406. package/bundled-skills/puppeteer-skill/SKILL.md +143 -0
  407. package/bundled-skills/pytest-skill/SKILL.md +201 -0
  408. package/bundled-skills/rclone-cli/SKILL.md +351 -0
  409. package/bundled-skills/rclone-cli/references/bisync.md +2003 -0
  410. package/bundled-skills/rclone-cli/references/cache.md +726 -0
  411. package/bundled-skills/rclone-cli/references/chunker.md +484 -0
  412. package/bundled-skills/rclone-cli/references/combine.md +187 -0
  413. package/bundled-skills/rclone-cli/references/commands/rclone.md +1169 -0
  414. package/bundled-skills/rclone-cli/references/commands/rclone_about.md +89 -0
  415. package/bundled-skills/rclone-cli/references/commands/rclone_archive.md +49 -0
  416. package/bundled-skills/rclone-cli/references/commands/rclone_archive_create.md +97 -0
  417. package/bundled-skills/rclone-cli/references/commands/rclone_archive_extract.md +83 -0
  418. package/bundled-skills/rclone-cli/references/commands/rclone_archive_list.md +98 -0
  419. package/bundled-skills/rclone-cli/references/commands/rclone_authorize.md +53 -0
  420. package/bundled-skills/rclone-cli/references/commands/rclone_backend.md +82 -0
  421. package/bundled-skills/rclone-cli/references/commands/rclone_bisync.md +160 -0
  422. package/bundled-skills/rclone-cli/references/commands/rclone_cat.md +122 -0
  423. package/bundled-skills/rclone-cli/references/commands/rclone_check.md +134 -0
  424. package/bundled-skills/rclone-cli/references/commands/rclone_checksum.md +120 -0
  425. package/bundled-skills/rclone-cli/references/commands/rclone_cleanup.md +49 -0
  426. package/bundled-skills/rclone-cli/references/commands/rclone_completion.md +40 -0
  427. package/bundled-skills/rclone-cli/references/commands/rclone_completion_bash.md +70 -0
  428. package/bundled-skills/rclone-cli/references/commands/rclone_completion_fish.md +57 -0
  429. package/bundled-skills/rclone-cli/references/commands/rclone_completion_powershell.md +49 -0
  430. package/bundled-skills/rclone-cli/references/commands/rclone_completion_zsh.md +57 -0
  431. package/bundled-skills/rclone-cli/references/commands/rclone_config.md +56 -0
  432. package/bundled-skills/rclone-cli/references/commands/rclone_config_create.md +150 -0
  433. package/bundled-skills/rclone-cli/references/commands/rclone_config_delete.md +33 -0
  434. package/bundled-skills/rclone-cli/references/commands/rclone_config_disconnect.md +40 -0
  435. package/bundled-skills/rclone-cli/references/commands/rclone_config_dump.md +33 -0
  436. package/bundled-skills/rclone-cli/references/commands/rclone_config_edit.md +39 -0
  437. package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption.md +36 -0
  438. package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption_check.md +43 -0
  439. package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption_remove.md +44 -0
  440. package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption_set.md +54 -0
  441. package/bundled-skills/rclone-cli/references/commands/rclone_config_file.md +33 -0
  442. package/bundled-skills/rclone-cli/references/commands/rclone_config_password.md +49 -0
  443. package/bundled-skills/rclone-cli/references/commands/rclone_config_paths.md +33 -0
  444. package/bundled-skills/rclone-cli/references/commands/rclone_config_providers.md +33 -0
  445. package/bundled-skills/rclone-cli/references/commands/rclone_config_reconnect.md +40 -0
  446. package/bundled-skills/rclone-cli/references/commands/rclone_config_redacted.md +45 -0
  447. package/bundled-skills/rclone-cli/references/commands/rclone_config_show.md +33 -0
  448. package/bundled-skills/rclone-cli/references/commands/rclone_config_string.md +57 -0
  449. package/bundled-skills/rclone-cli/references/commands/rclone_config_touch.md +33 -0
  450. package/bundled-skills/rclone-cli/references/commands/rclone_config_update.md +150 -0
  451. package/bundled-skills/rclone-cli/references/commands/rclone_config_userinfo.md +38 -0
  452. package/bundled-skills/rclone-cli/references/commands/rclone_convmv.md +440 -0
  453. package/bundled-skills/rclone-cli/references/commands/rclone_copy.md +258 -0
  454. package/bundled-skills/rclone-cli/references/commands/rclone_copyto.md +219 -0
  455. package/bundled-skills/rclone-cli/references/commands/rclone_copyurl.md +91 -0
  456. package/bundled-skills/rclone-cli/references/commands/rclone_cryptcheck.md +141 -0
  457. package/bundled-skills/rclone-cli/references/commands/rclone_cryptdecode.md +51 -0
  458. package/bundled-skills/rclone-cli/references/commands/rclone_dedupe.md +166 -0
  459. package/bundled-skills/rclone-cli/references/commands/rclone_delete.md +117 -0
  460. package/bundled-skills/rclone-cli/references/commands/rclone_deletefile.md +50 -0
  461. package/bundled-skills/rclone-cli/references/commands/rclone_gendocs.md +39 -0
  462. package/bundled-skills/rclone-cli/references/commands/rclone_gitannex.md +113 -0
  463. package/bundled-skills/rclone-cli/references/commands/rclone_hashsum.md +120 -0
  464. package/bundled-skills/rclone-cli/references/commands/rclone_link.md +60 -0
  465. package/bundled-skills/rclone-cli/references/commands/rclone_listremotes.md +55 -0
  466. package/bundled-skills/rclone-cli/references/commands/rclone_ls.md +114 -0
  467. package/bundled-skills/rclone-cli/references/commands/rclone_lsd.md +127 -0
  468. package/bundled-skills/rclone-cli/references/commands/rclone_lsf.md +241 -0
  469. package/bundled-skills/rclone-cli/references/commands/rclone_lsjson.md +195 -0
  470. package/bundled-skills/rclone-cli/references/commands/rclone_lsl.md +115 -0
  471. package/bundled-skills/rclone-cli/references/commands/rclone_md5sum.md +96 -0
  472. package/bundled-skills/rclone-cli/references/commands/rclone_mkdir.md +43 -0
  473. package/bundled-skills/rclone-cli/references/commands/rclone_mount.md +1105 -0
  474. package/bundled-skills/rclone-cli/references/commands/rclone_move.md +223 -0
  475. package/bundled-skills/rclone-cli/references/commands/rclone_moveto.md +218 -0
  476. package/bundled-skills/rclone-cli/references/commands/rclone_ncdu.md +140 -0
  477. package/bundled-skills/rclone-cli/references/commands/rclone_nfsmount.md +1111 -0
  478. package/bundled-skills/rclone-cli/references/commands/rclone_obscure.md +60 -0
  479. package/bundled-skills/rclone-cli/references/commands/rclone_purge.md +58 -0
  480. package/bundled-skills/rclone-cli/references/commands/rclone_rc.md +111 -0
  481. package/bundled-skills/rclone-cli/references/commands/rclone_rcat.md +79 -0
  482. package/bundled-skills/rclone-cli/references/commands/rclone_rcd.md +219 -0
  483. package/bundled-skills/rclone-cli/references/commands/rclone_rmdir.md +52 -0
  484. package/bundled-skills/rclone-cli/references/commands/rclone_rmdirs.md +66 -0
  485. package/bundled-skills/rclone-cli/references/commands/rclone_selfupdate.md +91 -0
  486. package/bundled-skills/rclone-cli/references/commands/rclone_serve.md +61 -0
  487. package/bundled-skills/rclone-cli/references/commands/rclone_serve_dlna.md +619 -0
  488. package/bundled-skills/rclone-cli/references/commands/rclone_serve_docker.md +653 -0
  489. package/bundled-skills/rclone-cli/references/commands/rclone_serve_ftp.md +698 -0
  490. package/bundled-skills/rclone-cli/references/commands/rclone_serve_http.md +837 -0
  491. package/bundled-skills/rclone-cli/references/commands/rclone_serve_nfs.md +670 -0
  492. package/bundled-skills/rclone-cli/references/commands/rclone_serve_restic.md +246 -0
  493. package/bundled-skills/rclone-cli/references/commands/rclone_serve_s3.md +867 -0
  494. package/bundled-skills/rclone-cli/references/commands/rclone_serve_sftp.md +745 -0
  495. package/bundled-skills/rclone-cli/references/commands/rclone_serve_webdav.md +896 -0
  496. package/bundled-skills/rclone-cli/references/commands/rclone_settier.md +63 -0
  497. package/bundled-skills/rclone-cli/references/commands/rclone_sha1sum.md +99 -0
  498. package/bundled-skills/rclone-cli/references/commands/rclone_size.md +94 -0
  499. package/bundled-skills/rclone-cli/references/commands/rclone_sync.md +252 -0
  500. package/bundled-skills/rclone-cli/references/commands/rclone_test.md +51 -0
  501. package/bundled-skills/rclone-cli/references/commands/rclone_test_changenotify.md +34 -0
  502. package/bundled-skills/rclone-cli/references/commands/rclone_test_histogram.md +41 -0
  503. package/bundled-skills/rclone-cli/references/commands/rclone_test_info.md +51 -0
  504. package/bundled-skills/rclone-cli/references/commands/rclone_test_makefile.md +39 -0
  505. package/bundled-skills/rclone-cli/references/commands/rclone_test_makefiles.md +47 -0
  506. package/bundled-skills/rclone-cli/references/commands/rclone_test_memory.md +33 -0
  507. package/bundled-skills/rclone-cli/references/commands/rclone_test_speed.md +66 -0
  508. package/bundled-skills/rclone-cli/references/commands/rclone_touch.md +110 -0
  509. package/bundled-skills/rclone-cli/references/commands/rclone_tree.md +121 -0
  510. package/bundled-skills/rclone-cli/references/commands/rclone_version.md +83 -0
  511. package/bundled-skills/rclone-cli/references/crypt.md +844 -0
  512. package/bundled-skills/rclone-cli/references/docker.md +615 -0
  513. package/bundled-skills/rclone-cli/references/faq.md +364 -0
  514. package/bundled-skills/rclone-cli/references/filtering.md +991 -0
  515. package/bundled-skills/rclone-cli/references/flags.md +1221 -0
  516. package/bundled-skills/rclone-cli/references/hasher.md +383 -0
  517. package/bundled-skills/rclone-cli/references/install.md +686 -0
  518. package/bundled-skills/rclone-cli/references/overview.md +620 -0
  519. package/bundled-skills/rclone-cli/references/providers/alias.md +141 -0
  520. package/bundled-skills/rclone-cli/references/providers/archive.md +287 -0
  521. package/bundled-skills/rclone-cli/references/providers/azureblob.md +1140 -0
  522. package/bundled-skills/rclone-cli/references/providers/azurefiles.md +834 -0
  523. package/bundled-skills/rclone-cli/references/providers/b2.md +879 -0
  524. package/bundled-skills/rclone-cli/references/providers/box.md +573 -0
  525. package/bundled-skills/rclone-cli/references/providers/cloudinary.md +259 -0
  526. package/bundled-skills/rclone-cli/references/providers/compress.md +222 -0
  527. package/bundled-skills/rclone-cli/references/providers/drime.md +319 -0
  528. package/bundled-skills/rclone-cli/references/providers/drive.md +2032 -0
  529. package/bundled-skills/rclone-cli/references/providers/dropbox.md +661 -0
  530. package/bundled-skills/rclone-cli/references/providers/fichier.md +230 -0
  531. package/bundled-skills/rclone-cli/references/providers/filefabric.md +298 -0
  532. package/bundled-skills/rclone-cli/references/providers/filelu.md +256 -0
  533. package/bundled-skills/rclone-cli/references/providers/filen.md +243 -0
  534. package/bundled-skills/rclone-cli/references/providers/filescom.md +209 -0
  535. package/bundled-skills/rclone-cli/references/providers/ftp.md +621 -0
  536. package/bundled-skills/rclone-cli/references/providers/gofile.md +274 -0
  537. package/bundled-skills/rclone-cli/references/providers/googlecloudstorage.md +846 -0
  538. package/bundled-skills/rclone-cli/references/providers/googlephotos.md +676 -0
  539. package/bundled-skills/rclone-cli/references/providers/hdfs.md +263 -0
  540. package/bundled-skills/rclone-cli/references/providers/hidrive.md +487 -0
  541. package/bundled-skills/rclone-cli/references/providers/http.md +323 -0
  542. package/bundled-skills/rclone-cli/references/providers/iclouddrive.md +212 -0
  543. package/bundled-skills/rclone-cli/references/providers/internetarchive.md +355 -0
  544. package/bundled-skills/rclone-cli/references/providers/internxt.md +189 -0
  545. package/bundled-skills/rclone-cli/references/providers/jottacloud.md +604 -0
  546. package/bundled-skills/rclone-cli/references/providers/koofr.md +395 -0
  547. package/bundled-skills/rclone-cli/references/providers/linkbox.md +117 -0
  548. package/bundled-skills/rclone-cli/references/providers/local.md +749 -0
  549. package/bundled-skills/rclone-cli/references/providers/mailru.md +470 -0
  550. package/bundled-skills/rclone-cli/references/providers/mega.md +361 -0
  551. package/bundled-skills/rclone-cli/references/providers/memory.md +109 -0
  552. package/bundled-skills/rclone-cli/references/providers/netstorage.md +371 -0
  553. package/bundled-skills/rclone-cli/references/providers/onedrive.md +1322 -0
  554. package/bundled-skills/rclone-cli/references/providers/opendrive.md +222 -0
  555. package/bundled-skills/rclone-cli/references/providers/oracleobjectstorage/_index.md +932 -0
  556. package/bundled-skills/rclone-cli/references/providers/oracleobjectstorage/tutorial_mount.md +503 -0
  557. package/bundled-skills/rclone-cli/references/providers/pcloud.md +373 -0
  558. package/bundled-skills/rclone-cli/references/providers/pikpak.md +373 -0
  559. package/bundled-skills/rclone-cli/references/providers/pixeldrain.md +182 -0
  560. package/bundled-skills/rclone-cli/references/providers/premiumizeme.md +253 -0
  561. package/bundled-skills/rclone-cli/references/providers/protondrive.md +397 -0
  562. package/bundled-skills/rclone-cli/references/providers/putio.md +246 -0
  563. package/bundled-skills/rclone-cli/references/providers/qingstor.md +346 -0
  564. package/bundled-skills/rclone-cli/references/providers/quatrix.md +295 -0
  565. package/bundled-skills/rclone-cli/references/providers/s3.md +9687 -0
  566. package/bundled-skills/rclone-cli/references/providers/seafile.md +432 -0
  567. package/bundled-skills/rclone-cli/references/providers/sftp.md +1277 -0
  568. package/bundled-skills/rclone-cli/references/providers/shade.md +267 -0
  569. package/bundled-skills/rclone-cli/references/providers/sharefile.md +357 -0
  570. package/bundled-skills/rclone-cli/references/providers/sia.md +223 -0
  571. package/bundled-skills/rclone-cli/references/providers/smb.md +309 -0
  572. package/bundled-skills/rclone-cli/references/providers/storj.md +503 -0
  573. package/bundled-skills/rclone-cli/references/providers/sugarsync.md +305 -0
  574. package/bundled-skills/rclone-cli/references/providers/swift.md +744 -0
  575. package/bundled-skills/rclone-cli/references/providers/ulozto.md +283 -0
  576. package/bundled-skills/rclone-cli/references/providers/webdav.md +565 -0
  577. package/bundled-skills/rclone-cli/references/providers/yandex.md +283 -0
  578. package/bundled-skills/rclone-cli/references/providers/zoho.md +305 -0
  579. package/bundled-skills/rclone-cli/references/rc.md +2725 -0
  580. package/bundled-skills/rclone-cli/references/union.md +336 -0
  581. package/bundled-skills/rclone-cli/references/usage.md +3555 -0
  582. package/bundled-skills/rclone-cli/scripts/install.sh +204 -0
  583. package/bundled-skills/redis-cli/SKILL.md +392 -0
  584. package/bundled-skills/redis-cli/references/advanced-features.md +338 -0
  585. package/bundled-skills/redis-cli/references/connection-and-options.md +258 -0
  586. package/bundled-skills/redis-cli/references/data-query-commands.md +417 -0
  587. package/bundled-skills/redis-cli/references/inspection-and-monitoring.md +309 -0
  588. package/bundled-skills/redis-cli/references/key-management.md +252 -0
  589. package/bundled-skills/redis-cli/references/module-data-types.md +429 -0
  590. package/bundled-skills/redis-cli/references/server-administration.md +366 -0
  591. package/bundled-skills/repo-maintainer/SKILL.md +480 -0
  592. package/bundled-skills/resolving-merge-conflicts/SKILL.md +32 -0
  593. package/bundled-skills/review-and-simplify-changes/SKILL.md +202 -0
  594. package/bundled-skills/review-swarm/SKILL.md +185 -0
  595. package/bundled-skills/review-swarm/agents/openai.yaml +4 -0
  596. package/bundled-skills/riffkit/SKILL.md +122 -0
  597. package/bundled-skills/robot-framework-skill/SKILL.md +153 -0
  598. package/bundled-skills/sdk-dx/README.md +39 -0
  599. package/bundled-skills/sdk-dx/SKILL.md +541 -0
  600. package/bundled-skills/security-and-hardening/SKILL.md +474 -0
  601. package/bundled-skills/selenium-skill/SKILL.md +258 -0
  602. package/bundled-skills/shipping-and-launch/SKILL.md +323 -0
  603. package/bundled-skills/smartui-skill/SKILL.md +149 -0
  604. package/bundled-skills/source-driven-development/SKILL.md +207 -0
  605. package/bundled-skills/spec-driven-development/SKILL.md +217 -0
  606. package/bundled-skills/sql-sentinel/SKILL.md +12 -3
  607. package/bundled-skills/styleseed-design-review/SKILL.md +126 -0
  608. package/bundled-skills/supabase/CHANGELOG.md +35 -0
  609. package/bundled-skills/supabase/SKILL.md +149 -0
  610. package/bundled-skills/supabase/assets/feedback-issue-template.md +17 -0
  611. package/bundled-skills/supabase/references/skill-feedback.md +17 -0
  612. package/bundled-skills/supabase-postgres-best-practices/CHANGELOG.md +29 -0
  613. package/bundled-skills/supabase-postgres-best-practices/SKILL.md +74 -0
  614. package/bundled-skills/supabase-postgres-best-practices/references/_contributing.md +170 -0
  615. package/bundled-skills/supabase-postgres-best-practices/references/_sections.md +39 -0
  616. package/bundled-skills/supabase-postgres-best-practices/references/_template.md +34 -0
  617. package/bundled-skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
  618. package/bundled-skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
  619. package/bundled-skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
  620. package/bundled-skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
  621. package/bundled-skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
  622. package/bundled-skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
  623. package/bundled-skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
  624. package/bundled-skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
  625. package/bundled-skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
  626. package/bundled-skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
  627. package/bundled-skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
  628. package/bundled-skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
  629. package/bundled-skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
  630. package/bundled-skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
  631. package/bundled-skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
  632. package/bundled-skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
  633. package/bundled-skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
  634. package/bundled-skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
  635. package/bundled-skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
  636. package/bundled-skills/supabase-postgres-best-practices/references/query-index-types.md +48 -0
  637. package/bundled-skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
  638. package/bundled-skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
  639. package/bundled-skills/supabase-postgres-best-practices/references/schema-constraints.md +80 -0
  640. package/bundled-skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
  641. package/bundled-skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
  642. package/bundled-skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
  643. package/bundled-skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
  644. package/bundled-skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
  645. package/bundled-skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
  646. package/bundled-skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
  647. package/bundled-skills/supabase-postgres-best-practices/references/security-rls-performance.md +63 -0
  648. package/bundled-skills/swiftui-expert-skill/SKILL.md +175 -242
  649. package/bundled-skills/swiftui-expert-skill/references/accessibility-patterns.md +215 -0
  650. package/bundled-skills/swiftui-expert-skill/references/animation-advanced.md +428 -0
  651. package/bundled-skills/swiftui-expert-skill/references/animation-basics.md +284 -0
  652. package/bundled-skills/swiftui-expert-skill/references/animation-transitions.md +326 -0
  653. package/bundled-skills/swiftui-expert-skill/references/charts-accessibility.md +135 -0
  654. package/bundled-skills/swiftui-expert-skill/references/charts.md +602 -0
  655. package/bundled-skills/swiftui-expert-skill/references/focus-patterns.md +299 -0
  656. package/bundled-skills/swiftui-expert-skill/references/image-optimization.md +203 -0
  657. package/bundled-skills/swiftui-expert-skill/references/latest-apis.md +528 -0
  658. package/bundled-skills/swiftui-expert-skill/references/layout-best-practices.md +266 -0
  659. package/bundled-skills/swiftui-expert-skill/references/liquid-glass.md +423 -0
  660. package/bundled-skills/swiftui-expert-skill/references/list-patterns.md +467 -0
  661. package/bundled-skills/swiftui-expert-skill/references/localization.md +194 -0
  662. package/bundled-skills/swiftui-expert-skill/references/macos-scenes.md +318 -0
  663. package/bundled-skills/swiftui-expert-skill/references/macos-views.md +357 -0
  664. package/bundled-skills/swiftui-expert-skill/references/macos-window-styling.md +303 -0
  665. package/bundled-skills/swiftui-expert-skill/references/performance-patterns.md +417 -0
  666. package/bundled-skills/swiftui-expert-skill/references/previews.md +313 -0
  667. package/bundled-skills/swiftui-expert-skill/references/scroll-patterns.md +293 -0
  668. package/bundled-skills/swiftui-expert-skill/references/sheet-navigation-patterns.md +363 -0
  669. package/bundled-skills/swiftui-expert-skill/references/soft-deprecation.md +39 -0
  670. package/bundled-skills/swiftui-expert-skill/references/state-management.md +492 -0
  671. package/bundled-skills/swiftui-expert-skill/references/text-patterns.md +34 -0
  672. package/bundled-skills/swiftui-expert-skill/references/trace-analysis.md +295 -0
  673. package/bundled-skills/swiftui-expert-skill/references/trace-recording.md +134 -0
  674. package/bundled-skills/swiftui-expert-skill/references/view-structure.md +854 -0
  675. package/bundled-skills/swiftui-expert-skill/scripts/analyze_trace.py +301 -0
  676. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/__init__.py +1 -0
  677. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/causes.py +187 -0
  678. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/correlate.py +179 -0
  679. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/events.py +291 -0
  680. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/hangs.py +108 -0
  681. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/hitches.py +145 -0
  682. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/summary.py +243 -0
  683. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/swiftui.py +195 -0
  684. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/time_profiler.py +135 -0
  685. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/xctrace.py +117 -0
  686. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/xml_utils.py +224 -0
  687. package/bundled-skills/swiftui-expert-skill/scripts/record_trace.py +252 -0
  688. package/bundled-skills/technical-tutorials/README.md +90 -0
  689. package/bundled-skills/technical-tutorials/SKILL.md +581 -0
  690. package/bundled-skills/test-framework-migration-skill/SKILL.md +122 -0
  691. package/bundled-skills/testng-skill/SKILL.md +163 -0
  692. package/bundled-skills/train-sentence-transformers/SKILL.md +118 -0
  693. package/bundled-skills/train-sentence-transformers/references/base_model_selection.md +79 -0
  694. package/bundled-skills/train-sentence-transformers/references/dataset_formats.md +128 -0
  695. package/bundled-skills/train-sentence-transformers/references/evaluators_cross_encoder.md +116 -0
  696. package/bundled-skills/train-sentence-transformers/references/evaluators_sentence_transformer.md +151 -0
  697. package/bundled-skills/train-sentence-transformers/references/evaluators_sparse_encoder.md +121 -0
  698. package/bundled-skills/train-sentence-transformers/references/hardware_guide.md +105 -0
  699. package/bundled-skills/train-sentence-transformers/references/hf_jobs_execution.md +173 -0
  700. package/bundled-skills/train-sentence-transformers/references/losses_cross_encoder.md +137 -0
  701. package/bundled-skills/train-sentence-transformers/references/losses_sentence_transformer.md +246 -0
  702. package/bundled-skills/train-sentence-transformers/references/losses_sparse_encoder.md +106 -0
  703. package/bundled-skills/train-sentence-transformers/references/model_architectures.md +178 -0
  704. package/bundled-skills/train-sentence-transformers/references/prompts_and_instructions.md +160 -0
  705. package/bundled-skills/train-sentence-transformers/references/training_args.md +269 -0
  706. package/bundled-skills/train-sentence-transformers/references/troubleshooting.md +225 -0
  707. package/bundled-skills/train-sentence-transformers/scripts/mine_hard_negatives.py +199 -0
  708. package/bundled-skills/train-sentence-transformers/scripts/train_cross_encoder_distillation_example.py +254 -0
  709. package/bundled-skills/train-sentence-transformers/scripts/train_cross_encoder_example.py +253 -0
  710. package/bundled-skills/train-sentence-transformers/scripts/train_cross_encoder_listwise_example.py +282 -0
  711. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_distillation_example.py +303 -0
  712. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_example.py +227 -0
  713. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_make_multilingual_example.py +308 -0
  714. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_matryoshka_example.py +212 -0
  715. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_multi_dataset_example.py +258 -0
  716. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_static_embedding_example.py +273 -0
  717. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_with_lora_example.py +275 -0
  718. package/bundled-skills/train-sentence-transformers/scripts/train_sparse_encoder_distillation_example.py +262 -0
  719. package/bundled-skills/train-sentence-transformers/scripts/train_sparse_encoder_example.py +237 -0
  720. package/bundled-skills/transformers-js/SKILL.md +83 -29
  721. package/bundled-skills/transformers-js/references/CONFIGURATION.md +55 -7
  722. package/bundled-skills/transformers-js/references/EXAMPLES.md +98 -83
  723. package/bundled-skills/transformers-js/references/MODEL_REGISTRY.md +197 -0
  724. package/bundled-skills/transformers-js/references/PIPELINE_OPTIONS.md +31 -19
  725. package/bundled-skills/transformers-js/references/TEXT_GENERATION.md +18 -18
  726. package/bundled-skills/trl-training/SKILL.md +327 -0
  727. package/bundled-skills/tune-monitor/SKILL.md +268 -0
  728. package/bundled-skills/ui-a11y/SKILL.md +76 -68
  729. package/bundled-skills/ui-component/SKILL.md +54 -82
  730. package/bundled-skills/ui-lint/SKILL.md +111 -0
  731. package/bundled-skills/ui-motion/SKILL.md +181 -0
  732. package/bundled-skills/ui-page/SKILL.md +80 -90
  733. package/bundled-skills/ui-pattern/SKILL.md +50 -68
  734. package/bundled-skills/ui-review/SKILL.md +95 -77
  735. package/bundled-skills/ui-score/SKILL.md +145 -0
  736. package/bundled-skills/ui-setup/SKILL.md +196 -88
  737. package/bundled-skills/ui-skills-root/SKILL.md +72 -0
  738. package/bundled-skills/ui-tokens/SKILL.md +44 -52
  739. package/bundled-skills/ui-update/SKILL.md +167 -0
  740. package/bundled-skills/unslop-commit/SKILL.md +113 -0
  741. package/bundled-skills/unslop-file/SKILL.md +157 -0
  742. package/bundled-skills/unslop-review/SKILL.md +102 -0
  743. package/bundled-skills/update-swiftui-apis/SKILL.md +120 -0
  744. package/bundled-skills/update-swiftui-apis/references/scan-manifest.md +230 -0
  745. package/bundled-skills/upgrading-expo/SKILL.md +107 -82
  746. package/bundled-skills/upgrading-expo/agents/openai.yaml +4 -0
  747. package/bundled-skills/upgrading-expo/references/expo-av-to-audio.md +132 -0
  748. package/bundled-skills/upgrading-expo/references/expo-av-to-video.md +160 -0
  749. package/bundled-skills/upgrading-expo/references/native-tabs.md +124 -0
  750. package/bundled-skills/upgrading-expo/references/new-architecture.md +79 -0
  751. package/bundled-skills/upgrading-expo/references/react-19.md +79 -0
  752. package/bundled-skills/upgrading-expo/references/react-compiler.md +59 -0
  753. package/bundled-skills/upgrading-expo/references/react-navigation-to-expo-router.md +61 -0
  754. package/bundled-skills/usage-based-pricing/README.md +40 -0
  755. package/bundled-skills/usage-based-pricing/SKILL.md +547 -0
  756. package/bundled-skills/use-dom/SKILL.md +428 -0
  757. package/bundled-skills/use-dom/agents/openai.yaml +4 -0
  758. package/bundled-skills/ux-audit/SKILL.md +112 -44
  759. package/bundled-skills/ux-copy/SKILL.md +105 -73
  760. package/bundled-skills/ux-feedback/SKILL.md +106 -58
  761. package/bundled-skills/ux-flow/SKILL.md +51 -50
  762. package/bundled-skills/vitest-skill/SKILL.md +165 -0
  763. package/bundled-skills/weaviate/references/environment_requirements.md +4 -1
  764. package/bundled-skills/weaviate/scripts/weaviate_conn.py +51 -17
  765. package/bundled-skills/webdriverio-skill/SKILL.md +157 -0
  766. package/bundled-skills/wjttc-builder/SKILL.md +355 -0
  767. package/bundled-skills/wjttc-tester/SKILL.md +190 -0
  768. package/bundled-skills/youtube-notetaker/scripts/serve.py +20 -11
  769. package/package.json +1 -1
  770. package/skills_index.json +4404 -146
@@ -0,0 +1,2032 @@
1
+ ---
2
+ title: "Google drive"
3
+ description: "Rclone docs for Google drive"
4
+ versionIntroduced: "v0.91"
5
+ ---
6
+
7
+ > **Official documentation:** [https://rclone.org/drive/](https://rclone.org/drive/)
8
+ # Google Drive
9
+
10
+ Paths are specified as `drive:path`
11
+
12
+ Drive paths may be as deep as required, e.g. `drive:directory/subdirectory`.
13
+
14
+ ## Configuration
15
+
16
+ The initial setup for drive involves getting a token from Google drive
17
+ which you need to do in your browser. `rclone config` walks you
18
+ through it.
19
+
20
+ Here is an example of how to make a remote called `remote`. First run:
21
+
22
+ ```console
23
+ rclone config
24
+ ```
25
+
26
+ This will guide you through an interactive setup process:
27
+
28
+ ```text
29
+ No remotes found, make a new one?
30
+ n) New remote
31
+ r) Rename remote
32
+ c) Copy remote
33
+ s) Set configuration password
34
+ q) Quit config
35
+ n/r/c/s/q> n
36
+ name> remote
37
+ Type of storage to configure.
38
+ Choose a number from below, or type in your own value
39
+ [snip]
40
+ XX / Google Drive
41
+ \ "drive"
42
+ [snip]
43
+ Storage> drive
44
+ Google Application Client Id - leave blank normally.
45
+ client_id>
46
+ Google Application Client Secret - leave blank normally.
47
+ client_secret>
48
+ Scope that rclone should use when requesting access from drive.
49
+ Choose a number from below, or type in your own value
50
+ 1 / Full access all files, excluding Application Data Folder.
51
+ \ "drive"
52
+ 2 / Read-only access to file metadata and file contents.
53
+ \ "drive.readonly"
54
+ / Access to files created by rclone only.
55
+ 3 | These are visible in the drive website.
56
+ | File authorization is revoked when the user deauthorizes the app.
57
+ \ "drive.file"
58
+ / Allows read and write access to the Application Data folder.
59
+ 4 | This is not visible in the drive website.
60
+ \ "drive.appfolder"
61
+ / Allows read-only access to file metadata but
62
+ 5 | does not allow any access to read or download file content.
63
+ \ "drive.metadata.readonly"
64
+ scope> 1
65
+ Service Account Credentials JSON file path - needed only if you want use SA instead of interactive login.
66
+ service_account_file>
67
+ Remote config
68
+ Use web browser to automatically authenticate rclone with remote?
69
+ * Say Y if the machine running rclone has a web browser you can use
70
+ * Say N if running rclone on a (remote) machine without web browser access
71
+ If not sure try Y. If Y failed, try N.
72
+ y) Yes
73
+ n) No
74
+ y/n> y
75
+ If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth
76
+ Log in and authorize rclone for access
77
+ Waiting for code...
78
+ Got code
79
+ Configure this as a Shared Drive (Team Drive)?
80
+ y) Yes
81
+ n) No
82
+ y/n> n
83
+ Configuration complete.
84
+ Options:
85
+ type: drive
86
+ - client_id:
87
+ - client_secret:
88
+ - scope: drive
89
+ - root_folder_id:
90
+ - service_account_file:
91
+ - token: {"access_token":"XXX","token_type":"Bearer","refresh_token":"XXX","expiry":"2014-03-16T13:57:58.955387075Z"}
92
+ Keep this "remote" remote?
93
+ y) Yes this is OK
94
+ e) Edit this remote
95
+ d) Delete this remote
96
+ y/e/d> y
97
+ ```
98
+
99
+ See the [remote setup docs](/remote_setup/) for how to set it up on a
100
+ machine without an internet-connected web browser available.
101
+
102
+ Note that rclone runs a webserver on your local machine to collect the
103
+ token as returned from Google if using web browser to automatically
104
+ authenticate. This only
105
+ runs from the moment it opens your browser to the moment you get back
106
+ the verification code. This is on `http://127.0.0.1:53682/` and it
107
+ may require you to unblock it temporarily if you are running a host
108
+ firewall, or use manual mode.
109
+
110
+ You can then use it like this,
111
+
112
+ List directories in top level of your drive
113
+
114
+ ```console
115
+ rclone lsd remote:
116
+ ```
117
+
118
+ List all the files in your drive
119
+
120
+ ```console
121
+ rclone ls remote:
122
+ ```
123
+
124
+ To copy a local directory to a drive directory called backup
125
+
126
+ ```console
127
+ rclone copy /home/source remote:backup
128
+ ```
129
+
130
+ ### Scopes
131
+
132
+ Rclone allows you to select which scope you would like for rclone to
133
+ use. This changes what type of token is granted to rclone. [The
134
+ scopes are defined
135
+ here](https://developers.google.com/drive/v3/web/about-auth).
136
+
137
+ A comma-separated list is allowed e.g. `drive.readonly,drive.file`.
138
+
139
+ The scope are
140
+
141
+ #### drive
142
+
143
+ This is the default scope and allows full access to all files, except
144
+ for the Application Data Folder (see below).
145
+
146
+ Choose this one if you aren't sure.
147
+
148
+ #### drive.readonly
149
+
150
+ This allows read only access to all files. Files may be listed and
151
+ downloaded but not uploaded, renamed or deleted.
152
+
153
+ #### drive.file
154
+
155
+ With this scope rclone can read/view/modify only those files and
156
+ folders it creates.
157
+
158
+ So if you uploaded files to drive via the web interface (or any other
159
+ means) they will not be visible to rclone.
160
+
161
+ This can be useful if you are using rclone to backup data and you want
162
+ to be sure confidential data on your drive is not visible to rclone.
163
+
164
+ Files created with this scope are visible in the web interface.
165
+
166
+ #### drive.appfolder
167
+
168
+ This gives rclone its own private area to store files. Rclone will
169
+ not be able to see any other files on your drive and you won't be able
170
+ to see rclone's files from the web interface either.
171
+
172
+ #### drive.metadata.readonly
173
+
174
+ This allows read only access to file names only. It does not allow
175
+ rclone to download or upload data, or rename or delete files or
176
+ directories.
177
+
178
+ ### Root folder ID
179
+
180
+ This option has been moved to the advanced section. You can set the
181
+ `root_folder_id` for rclone. This is the directory (identified by its
182
+ `Folder ID`) that rclone considers to be the root of your drive.
183
+
184
+ Normally you will leave this blank and rclone will determine the
185
+ correct root to use itself.
186
+
187
+ However you can set this to restrict rclone to a specific folder
188
+ hierarchy or to access data within the "Computers" tab on the drive
189
+ web interface (where files from Google's Backup and Sync desktop
190
+ program go).
191
+
192
+ In order to do this you will have to find the `Folder ID` of the
193
+ directory you wish rclone to display. This will be the last segment
194
+ of the URL when you open the relevant folder in the drive web
195
+ interface.
196
+
197
+ So if the folder you want rclone to use has a URL which looks like
198
+ `https://drive.google.com/drive/folders/1XyfxxxxxxxxxxxxxxxxxxxxxxxxxKHCh`
199
+ in the browser, then you use `1XyfxxxxxxxxxxxxxxxxxxxxxxxxxKHCh` as
200
+ the `root_folder_id` in the config.
201
+
202
+ **NB** folders under the "Computers" tab seem to be read only (drive
203
+ gives a 500 error) when using rclone.
204
+
205
+ There doesn't appear to be an API to discover the folder IDs of the
206
+ "Computers" tab - please contact us if you know otherwise!
207
+
208
+ Note also that rclone can't access any data under the "Backups" tab on
209
+ the google drive web interface yet.
210
+
211
+ ### Service Account support
212
+
213
+ You can set up rclone with Google Drive in an unattended mode,
214
+ i.e. not tied to a specific end-user Google account. This is useful
215
+ when you want to synchronise files onto machines that don't have
216
+ actively logged-in users, for example build machines.
217
+
218
+ To use a Service Account instead of OAuth2 token flow, enter the path
219
+ to your Service Account credentials at the `service_account_file`
220
+ prompt during `rclone config` and rclone won't use the browser based
221
+ authentication flow. If you'd rather stuff the contents of the
222
+ credentials file into the rclone config file, you can set
223
+ `service_account_credentials` with the actual contents of the file
224
+ instead, or set the equivalent environment variable.
225
+
226
+ #### Use case - Google Workspace account and individual Drive
227
+
228
+ Let's say that you are the administrator of a Google Workspace. The
229
+ goal is to read or write data on an individual's Drive account, who IS
230
+ a member of the domain. We'll call the domain <example.com>, and the
231
+ user <foo@example.com>.
232
+
233
+ There's a few steps we need to go through to accomplish this:
234
+
235
+ ##### 1. Create a service account for example.com
236
+
237
+ - To create a service account and obtain its credentials, go to the
238
+ [Google Developer Console](https://console.developers.google.com).
239
+ - You must have a project - create one if you don't and make sure you are
240
+ on the selected project.
241
+ - Then go to "IAM & admin" -> "Service Accounts".
242
+ - Use the "Create Service Account" button. Fill in "Service account name"
243
+ and "Service account ID" with something that identifies your client.
244
+ - Select "Create And Continue". Step 2 and 3 are optional.
245
+ - Click on the newly created service account
246
+ - Click "Keys" and then "Add Key" and then "Create new key"
247
+ - Choose type "JSON" and click create
248
+ - This will download a small JSON file that rclone will use for authentication.
249
+
250
+ If you ever need to remove access, press the "Delete service
251
+ account key" button.
252
+
253
+ ##### 2. Allowing API access to example.com Google Drive
254
+
255
+ - Go to example.com's [Workspace Admin Console](https://admin.google.com)
256
+ - Go into "Security" (or use the search bar)
257
+ - Select "Access and data control" and then "API controls"
258
+ - Click "Manage domain-wide delegation"
259
+ - Click "Add new"
260
+ - In the "Client ID" field enter the service account's
261
+ "Client ID" - this can be found in the Developer Console under
262
+ "IAM & Admin" -> "Service Accounts", then "View Client ID" for
263
+ the newly created service account.
264
+ It is a ~21 character numerical string.
265
+ - In the next field, "OAuth Scopes", enter
266
+ `https://www.googleapis.com/auth/drive`
267
+ to grant read/write access to Google Drive specifically.
268
+ You can also use `https://www.googleapis.com/auth/drive.readonly` for read
269
+ only access with `--drive-scope=drive.readonly`.
270
+ - Click "Authorise"
271
+
272
+ ##### 3. Configure rclone, assuming a new install
273
+
274
+ ```text
275
+ rclone config
276
+
277
+ n/s/q> n # New
278
+ name>gdrive # Gdrive is an example name
279
+ Storage> # Type drive
280
+ client_id> # Can be left blank
281
+ client_secret> # Can be left blank
282
+ scope> # Select the scope use used in step 2
283
+ root_folder_id> # Can be left blank
284
+ service_account_file> /home/foo/myJSONfile.json # Path to the JSON file you downloaded in step 1.
285
+ y/n> # Auto config, n
286
+
287
+ ```
288
+
289
+ ##### 4. Verify that it's working
290
+
291
+ - `rclone -v --drive-impersonate foo@example.com lsf gdrive:backup`
292
+ - The arguments do:
293
+ - `-v` - verbose logging
294
+ - `--drive-impersonate foo@example.com` - this is what does
295
+ the magic, pretending to be user foo.
296
+ - `lsf` - list files in a parsing friendly way
297
+ - `gdrive:backup` - use the remote called gdrive, work in
298
+ the folder named backup.
299
+
300
+ Note: in case you configured a specific root folder on gdrive and rclone is
301
+ unable to access the contents of that folder when using `--drive-impersonate`,
302
+ do this instead:
303
+
304
+ - in the gdrive web interface, share your root folder with the user/email of the
305
+ new Service Account you created/selected at step 1
306
+ - use rclone without specifying the `--drive-impersonate` option, like this:
307
+ `rclone -v lsf gdrive:backup`
308
+
309
+ ### Shared drives (team drives)
310
+
311
+ If you want to configure the remote to point to a Google Shared Drive
312
+ (previously known as Team Drives) then answer `y` to the question
313
+ `Configure this as a Shared Drive (Team Drive)?`.
314
+
315
+ This will fetch the list of Shared Drives from google and allow you to
316
+ configure which one you want to use. You can also type in a Shared
317
+ Drive ID if you prefer.
318
+
319
+ For example:
320
+
321
+ ```text
322
+ Configure this as a Shared Drive (Team Drive)?
323
+ y) Yes
324
+ n) No
325
+ y/n> y
326
+ Fetching Shared Drive list...
327
+ Choose a number from below, or type in your own value
328
+ 1 / Rclone Test
329
+ \ "xxxxxxxxxxxxxxxxxxxx"
330
+ 2 / Rclone Test 2
331
+ \ "yyyyyyyyyyyyyyyyyyyy"
332
+ 3 / Rclone Test 3
333
+ \ "zzzzzzzzzzzzzzzzzzzz"
334
+ Enter a Shared Drive ID> 1
335
+ Configuration complete.
336
+ Options:
337
+ - type: drive
338
+ - client_id:
339
+ - client_secret:
340
+ - token: {"AccessToken":"xxxx.x.xxxxx_xxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","RefreshToken":"1/xxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxx","Expiry":"2014-03-16T13:57:58.955387075Z","Extra":null}
341
+ - team_drive: xxxxxxxxxxxxxxxxxxxx
342
+ Keep this "remote" remote?
343
+ y) Yes this is OK
344
+ e) Edit this remote
345
+ d) Delete this remote
346
+ y/e/d> y
347
+ ```
348
+
349
+ ### --fast-list
350
+
351
+ This remote supports `--fast-list` which allows you to use fewer
352
+ transactions in exchange for more memory. See the [rclone
353
+ docs](/docs/#fast-list) for more details.
354
+
355
+ It does this by combining multiple `list` calls into a single API request.
356
+
357
+ This works by combining many `'%s' in parents` filters into one expression.
358
+ To list the contents of directories a, b and c, the following requests will be
359
+ send by the regular `List` function:
360
+
361
+ ```text
362
+ trashed=false and 'a' in parents
363
+ trashed=false and 'b' in parents
364
+ trashed=false and 'c' in parents
365
+ ```
366
+
367
+ These can now be combined into a single request:
368
+
369
+ ```text
370
+ trashed=false and ('a' in parents or 'b' in parents or 'c' in parents)
371
+ ```
372
+
373
+ The implementation of `ListR` will put up to 50 `parents` filters into one request.
374
+ It will use the `--checkers` value to specify the number of requests to run in parallel.
375
+
376
+ In tests, these batch requests were up to 20x faster than the regular method.
377
+ Running the following command against different sized folders gives:
378
+
379
+ ```console
380
+ rclone lsjson -vv -R --checkers=6 gdrive:folder
381
+ ```
382
+
383
+ small folder (220 directories, 700 files):
384
+
385
+ - without `--fast-list`: 38s
386
+ - with `--fast-list`: 10s
387
+
388
+ large folder (10600 directories, 39000 files):
389
+
390
+ - without `--fast-list`: 22:05 min
391
+ - with `--fast-list`: 58s
392
+
393
+ ### Modification times and hashes
394
+
395
+ Google drive stores modification times accurate to 1 ms.
396
+
397
+ Hash algorithms MD5, SHA1 and SHA256 are supported. Note, however,
398
+ that a small fraction of files uploaded may not have SHA1 or SHA256
399
+ hashes especially if they were uploaded before 2018.
400
+
401
+ ### Restricted filename characters
402
+
403
+ Only Invalid UTF-8 bytes will be [replaced](/overview/#invalid-utf8),
404
+ as they can't be used in JSON strings.
405
+
406
+ In contrast to other backends, `/` can also be used in names and `.`
407
+ or `..` are valid names.
408
+
409
+ ### Revisions
410
+
411
+ Google drive stores revisions of files. When you upload a change to
412
+ an existing file to google drive using rclone it will create a new
413
+ revision of that file.
414
+
415
+ Revisions follow the standard google policy which at time of writing
416
+ was
417
+
418
+ - They are deleted after 30 days or 100 revisions (whatever comes first).
419
+ - They do not count towards a user storage quota.
420
+
421
+ ### Deleting files
422
+
423
+ By default rclone will send all files to the trash when deleting
424
+ files. If deleting them permanently is required then use the
425
+ `--drive-use-trash=false` flag, or set the equivalent environment
426
+ variable.
427
+
428
+ ### Shortcuts
429
+
430
+ In March 2020 Google introduced a new feature in Google Drive called
431
+ [drive shortcuts](https://support.google.com/drive/answer/9700156)
432
+ ([API](https://developers.google.com/drive/api/v3/shortcuts)). These
433
+ will (by September 2020) [replace the ability for files or folders to
434
+ be in multiple folders at once](https://cloud.google.com/blog/products/g-suite/simplifying-google-drives-folder-structure-and-sharing-models).
435
+
436
+ Shortcuts are files that link to other files on Google Drive somewhat
437
+ like a symlink in unix, except they point to the underlying file data
438
+ (e.g. the inode in unix terms) so they don't break if the source is
439
+ renamed or moved about.
440
+
441
+ By default rclone treats these as follows.
442
+
443
+ For shortcuts pointing to files:
444
+
445
+ - When listing a file shortcut appears as the destination file.
446
+ - When downloading the contents of the destination file is downloaded.
447
+ - When updating shortcut file with a non shortcut file, the shortcut is removed
448
+ then a new file is uploaded in place of the shortcut.
449
+ - When server-side moving (renaming) the shortcut is renamed, not the destination
450
+ file.
451
+ - When server-side copying the shortcut is copied, not the contents of the shortcut.
452
+ (unless `--drive-copy-shortcut-content` is in use in which case the contents of
453
+ the shortcut gets copied).
454
+ - When deleting the shortcut is deleted not the linked file.
455
+ - When setting the modification time, the modification time of the linked file
456
+ will be set.
457
+
458
+ For shortcuts pointing to folders:
459
+
460
+ - When listing the shortcut appears as a folder and that folder will contain the
461
+ contents of the linked folder appear (including any sub folders)
462
+ - When downloading the contents of the linked folder and sub contents are downloaded
463
+ - When uploading to a shortcut folder the file will be placed in the linked folder
464
+ - When server-side moving (renaming) the shortcut is renamed, not the destination
465
+ folder
466
+ - When server-side copying the contents of the linked folder is copied, not the shortcut.
467
+ - When deleting with `rclone rmdir` or `rclone purge` the shortcut is deleted not
468
+ the linked folder.
469
+ - **NB** When deleting with `rclone remove` or `rclone mount` the contents of the
470
+ linked folder will be deleted.
471
+
472
+ The [rclone backend](https://rclone.org/commands/rclone_backend/) command can be
473
+ used to create shortcuts.
474
+
475
+ Shortcuts can be completely ignored with the `--drive-skip-shortcuts` flag
476
+ or the corresponding `skip_shortcuts` configuration setting.
477
+
478
+ If you have shortcuts that lead to an infinite recursion in your drive (e.g. a
479
+ shortcut pointing to a parent folder), `skip_shortcuts` might be mandatory to
480
+ be able to copy the drive.
481
+
482
+ ### Emptying trash
483
+
484
+ If you wish to empty your trash you can use the `rclone cleanup remote:`
485
+ command which will permanently delete all your trashed files. This command
486
+ does not take any path arguments.
487
+
488
+ Note that Google Drive takes some time (minutes to days) to empty the
489
+ trash even though the command returns within a few seconds. No output
490
+ is echoed, so there will be no confirmation even using -v or -vv.
491
+
492
+ ### Quota information
493
+
494
+ To view your current quota you can use the `rclone about remote:`
495
+ command which will display your usage limit (quota), the usage in Google
496
+ Drive, the size of all files in the Trash and the space used by other
497
+ Google services such as Gmail. This command does not take any path
498
+ arguments.
499
+
500
+ #### Import/Export of google documents
501
+
502
+ Google documents can be exported from and uploaded to Google Drive.
503
+
504
+ When rclone downloads a Google doc it chooses a format to download
505
+ depending upon the `--drive-export-formats` setting.
506
+ By default the export formats are `docx,xlsx,pptx,svg` which are a
507
+ sensible default for an editable document.
508
+
509
+ When choosing a format, rclone runs down the list provided in order
510
+ and chooses the first file format the doc can be exported as from the
511
+ list. If the file can't be exported to a format on the formats list,
512
+ then rclone will choose a format from the default list.
513
+
514
+ If you prefer an archive copy then you might use `--drive-export-formats
515
+ pdf`, or if you prefer openoffice/libreoffice formats you might use
516
+ `--drive-export-formats ods,odt,odp`.
517
+
518
+ Note that rclone adds the extension to the google doc, so if it is
519
+ called `My Spreadsheet` on google docs, it will be exported as `My
520
+ Spreadsheet.xlsx` or `My Spreadsheet.pdf` etc.
521
+
522
+ When importing files into Google Drive, rclone will convert all
523
+ files with an extension in `--drive-import-formats` to their
524
+ associated document type.
525
+ rclone will not convert any files by default, since the conversion
526
+ is lossy process.
527
+
528
+ The conversion must result in a file with the same extension when
529
+ the `--drive-export-formats` rules are applied to the uploaded document.
530
+
531
+ Here are some examples for allowed and prohibited conversions.
532
+
533
+ | export-formats | import-formats | Upload Ext | Document Ext | Allowed |
534
+ | -------------- | -------------- | ---------- | ------------ | ------- |
535
+ | odt | odt | odt | odt | Yes |
536
+ | odt | docx,odt | odt | odt | Yes |
537
+ | | docx | docx | docx | Yes |
538
+ | | odt | odt | docx | No |
539
+ | odt,docx | docx,odt | docx | odt | No |
540
+ | docx,odt | docx,odt | docx | docx | Yes |
541
+ | docx,odt | docx,odt | odt | docx | No |
542
+
543
+ This limitation can be disabled by specifying `--drive-allow-import-name-change`.
544
+ When using this flag, rclone can convert multiple files types resulting
545
+ in the same document type at once, e.g. with `--drive-import-formats docx,odt,txt`,
546
+ all files having these extension would result in a document represented as a
547
+ docx file.
548
+ This brings the additional risk of overwriting a document, if multiple files
549
+ have the same stem. Many rclone operations will not handle this name change
550
+ in any way. They assume an equal name when copying files and might copy the
551
+ file again or delete them when the name changes.
552
+
553
+ Here are the possible export extensions with their corresponding mime types.
554
+ Most of these can also be used for importing, but there more that are not
555
+ listed here. Some of these additional ones might only be available when
556
+ the operating system provides the correct MIME type entries.
557
+
558
+ This list can be changed by Google Drive at any time and might not
559
+ represent the currently available conversions.
560
+
561
+ | Extension | Mime Type | Description |
562
+ | --------- |-----------| ------------|
563
+ | bmp | image/bmp | Windows Bitmap format |
564
+ | csv | text/csv | Standard CSV format for Spreadsheets |
565
+ | doc | application/msword | Classic Word file |
566
+ | docx | application/vnd.openxmlformats-officedocument.wordprocessingml.document | Microsoft Office Document |
567
+ | epub | application/epub+zip | E-book format |
568
+ | html | text/html | An HTML Document |
569
+ | jpg | image/jpeg | A JPEG Image File |
570
+ | json | application/vnd.google-apps.script+json | JSON Text Format for Google Apps scripts |
571
+ | md | text/markdown | Markdown Text Format |
572
+ | odp | application/vnd.oasis.opendocument.presentation | Openoffice Presentation |
573
+ | ods | application/vnd.oasis.opendocument.spreadsheet | Openoffice Spreadsheet |
574
+ | ods | application/x-vnd.oasis.opendocument.spreadsheet | Openoffice Spreadsheet |
575
+ | odt | application/vnd.oasis.opendocument.text | Openoffice Document |
576
+ | pdf | application/pdf | Adobe PDF Format |
577
+ | pjpeg | image/pjpeg | Progressive JPEG Image |
578
+ | png | image/png | PNG Image Format|
579
+ | pptx | application/vnd.openxmlformats-officedocument.presentationml.presentation | Microsoft Office Powerpoint |
580
+ | rtf | application/rtf | Rich Text Format |
581
+ | svg | image/svg+xml | Scalable Vector Graphics Format |
582
+ | tsv | text/tab-separated-values | Standard TSV format for spreadsheets |
583
+ | txt | text/plain | Plain Text |
584
+ | wmf | application/x-msmetafile | Windows Meta File |
585
+ | xls | application/vnd.ms-excel | Classic Excel file |
586
+ | xlsx | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | Microsoft Office Spreadsheet |
587
+ | zip | application/zip | A ZIP file of HTML, Images CSS |
588
+
589
+ Google documents can also be exported as link files. These files will
590
+ open a browser window for the Google Docs website of that document
591
+ when opened. The link file extension has to be specified as a
592
+ `--drive-export-formats` parameter. They will match all available
593
+ Google Documents.
594
+
595
+ | Extension | Description | OS Support |
596
+ | --------- | ----------- | ---------- |
597
+ | desktop | freedesktop.org specified desktop entry | Linux |
598
+ | link.html | An HTML Document with a redirect | All |
599
+ | url | INI style link file | macOS, Windows |
600
+ | webloc | macOS specific XML format | macOS |
601
+
602
+ <!-- autogenerated options start - DO NOT EDIT - instead edit fs.RegInfo in backend/drive/drive.go and run make backenddocs to verify --> <!-- markdownlint-disable-line line-length -->
603
+ ### Standard options
604
+
605
+ Here are the Standard options specific to drive (Google Drive).
606
+
607
+ #### --drive-client-id
608
+
609
+ Google Application Client Id
610
+ Setting your own is recommended.
611
+ See https://rclone.org/drive/#making-your-own-client-id for how to create your own.
612
+ If you leave this blank, it will use an internal key which is low performance.
613
+
614
+ Properties:
615
+
616
+ - Config: client_id
617
+ - Env Var: RCLONE_DRIVE_CLIENT_ID
618
+ - Type: string
619
+ - Required: false
620
+
621
+ #### --drive-client-secret
622
+
623
+ OAuth Client Secret.
624
+
625
+ Leave blank normally.
626
+
627
+ Properties:
628
+
629
+ - Config: client_secret
630
+ - Env Var: RCLONE_DRIVE_CLIENT_SECRET
631
+ - Type: string
632
+ - Required: false
633
+
634
+ #### --drive-scope
635
+
636
+ Comma separated list of scopes that rclone should use when requesting access from drive.
637
+
638
+ Properties:
639
+
640
+ - Config: scope
641
+ - Env Var: RCLONE_DRIVE_SCOPE
642
+ - Type: string
643
+ - Required: false
644
+ - Examples:
645
+ - "drive"
646
+ - Full access all files, excluding Application Data Folder.
647
+ - "drive.readonly"
648
+ - Read-only access to file metadata and file contents.
649
+ - "drive.file"
650
+ - Access to files created by rclone only.
651
+ - These are visible in the drive website.
652
+ - File authorization is revoked when the user deauthorizes the app.
653
+ - "drive.appfolder"
654
+ - Allows read and write access to the Application Data folder.
655
+ - This is not visible in the drive website.
656
+ - "drive.metadata.readonly"
657
+ - Allows read-only access to file metadata but
658
+ - does not allow any access to read or download file content.
659
+
660
+ #### --drive-service-account-file
661
+
662
+ Service Account Credentials JSON file path.
663
+
664
+ Leave blank normally.
665
+ Needed only if you want use SA instead of interactive login.
666
+
667
+ Leading `~` will be expanded in the file name as will environment variables such as `${RCLONE_CONFIG_DIR}`.
668
+
669
+ Properties:
670
+
671
+ - Config: service_account_file
672
+ - Env Var: RCLONE_DRIVE_SERVICE_ACCOUNT_FILE
673
+ - Type: string
674
+ - Required: false
675
+
676
+ #### --drive-alternate-export
677
+
678
+ Deprecated: No longer needed.
679
+
680
+ Properties:
681
+
682
+ - Config: alternate_export
683
+ - Env Var: RCLONE_DRIVE_ALTERNATE_EXPORT
684
+ - Type: bool
685
+ - Default: false
686
+
687
+ ### Advanced options
688
+
689
+ Here are the Advanced options specific to drive (Google Drive).
690
+
691
+ #### --drive-token
692
+
693
+ OAuth Access Token as a JSON blob.
694
+
695
+ Properties:
696
+
697
+ - Config: token
698
+ - Env Var: RCLONE_DRIVE_TOKEN
699
+ - Type: string
700
+ - Required: false
701
+
702
+ #### --drive-auth-url
703
+
704
+ Auth server URL.
705
+
706
+ Leave blank to use the provider defaults.
707
+
708
+ Properties:
709
+
710
+ - Config: auth_url
711
+ - Env Var: RCLONE_DRIVE_AUTH_URL
712
+ - Type: string
713
+ - Required: false
714
+
715
+ #### --drive-token-url
716
+
717
+ Token server url.
718
+
719
+ Leave blank to use the provider defaults.
720
+
721
+ Properties:
722
+
723
+ - Config: token_url
724
+ - Env Var: RCLONE_DRIVE_TOKEN_URL
725
+ - Type: string
726
+ - Required: false
727
+
728
+ #### --drive-client-credentials
729
+
730
+ Use client credentials OAuth flow.
731
+
732
+ This will use the OAUTH2 client Credentials Flow as described in RFC 6749.
733
+
734
+ Note that this option is NOT supported by all backends.
735
+
736
+ Properties:
737
+
738
+ - Config: client_credentials
739
+ - Env Var: RCLONE_DRIVE_CLIENT_CREDENTIALS
740
+ - Type: bool
741
+ - Default: false
742
+
743
+ #### --drive-root-folder-id
744
+
745
+ ID of the root folder.
746
+ Leave blank normally.
747
+
748
+ Fill in to access "Computers" folders (see docs), or for rclone to use
749
+ a non root folder as its starting point.
750
+
751
+
752
+ Properties:
753
+
754
+ - Config: root_folder_id
755
+ - Env Var: RCLONE_DRIVE_ROOT_FOLDER_ID
756
+ - Type: string
757
+ - Required: false
758
+
759
+ #### --drive-service-account-credentials
760
+
761
+ Service Account Credentials JSON blob.
762
+
763
+ Leave blank normally.
764
+ Needed only if you want use SA instead of interactive login.
765
+
766
+ Properties:
767
+
768
+ - Config: service_account_credentials
769
+ - Env Var: RCLONE_DRIVE_SERVICE_ACCOUNT_CREDENTIALS
770
+ - Type: string
771
+ - Required: false
772
+
773
+ #### --drive-team-drive
774
+
775
+ ID of the Shared Drive (Team Drive).
776
+
777
+ Properties:
778
+
779
+ - Config: team_drive
780
+ - Env Var: RCLONE_DRIVE_TEAM_DRIVE
781
+ - Type: string
782
+ - Required: false
783
+
784
+ #### --drive-auth-owner-only
785
+
786
+ Only consider files owned by the authenticated user.
787
+
788
+ Properties:
789
+
790
+ - Config: auth_owner_only
791
+ - Env Var: RCLONE_DRIVE_AUTH_OWNER_ONLY
792
+ - Type: bool
793
+ - Default: false
794
+
795
+ #### --drive-use-trash
796
+
797
+ Send files to the trash instead of deleting permanently.
798
+
799
+ Defaults to true, namely sending files to the trash.
800
+ Use `--drive-use-trash=false` to delete files permanently instead.
801
+
802
+ Properties:
803
+
804
+ - Config: use_trash
805
+ - Env Var: RCLONE_DRIVE_USE_TRASH
806
+ - Type: bool
807
+ - Default: true
808
+
809
+ #### --drive-copy-shortcut-content
810
+
811
+ Server side copy contents of shortcuts instead of the shortcut.
812
+
813
+ When doing server side copies, normally rclone will copy shortcuts as
814
+ shortcuts.
815
+
816
+ If this flag is used then rclone will copy the contents of shortcuts
817
+ rather than shortcuts themselves when doing server side copies.
818
+
819
+ Properties:
820
+
821
+ - Config: copy_shortcut_content
822
+ - Env Var: RCLONE_DRIVE_COPY_SHORTCUT_CONTENT
823
+ - Type: bool
824
+ - Default: false
825
+
826
+ #### --drive-skip-gdocs
827
+
828
+ Skip google documents in all listings.
829
+
830
+ If given, gdocs practically become invisible to rclone.
831
+
832
+ Properties:
833
+
834
+ - Config: skip_gdocs
835
+ - Env Var: RCLONE_DRIVE_SKIP_GDOCS
836
+ - Type: bool
837
+ - Default: false
838
+
839
+ #### --drive-show-all-gdocs
840
+
841
+ Show all Google Docs including non-exportable ones in listings.
842
+
843
+ If you try a server side copy on a Google Form without this flag, you
844
+ will get this error:
845
+
846
+ No export formats found for "application/vnd.google-apps.form"
847
+
848
+ However adding this flag will allow the form to be server side copied.
849
+
850
+ Note that rclone doesn't add extensions to the Google Docs file names
851
+ in this mode.
852
+
853
+ Do **not** use this flag when trying to download Google Docs - rclone
854
+ will fail to download them.
855
+
856
+
857
+ Properties:
858
+
859
+ - Config: show_all_gdocs
860
+ - Env Var: RCLONE_DRIVE_SHOW_ALL_GDOCS
861
+ - Type: bool
862
+ - Default: false
863
+
864
+ #### --drive-skip-checksum-gphotos
865
+
866
+ Skip checksums on Google photos and videos only.
867
+
868
+ Use this if you get checksum errors when transferring Google photos or
869
+ videos.
870
+
871
+ Setting this flag will cause Google photos and videos to return a
872
+ blank checksums.
873
+
874
+ Google photos are identified by being in the "photos" space.
875
+
876
+ Corrupted checksums are caused by Google modifying the image/video but
877
+ not updating the checksum.
878
+
879
+ Properties:
880
+
881
+ - Config: skip_checksum_gphotos
882
+ - Env Var: RCLONE_DRIVE_SKIP_CHECKSUM_GPHOTOS
883
+ - Type: bool
884
+ - Default: false
885
+
886
+ #### --drive-shared-with-me
887
+
888
+ Only show files that are shared with me.
889
+
890
+ Instructs rclone to operate on your "Shared with me" folder (where
891
+ Google Drive lets you access the files and folders others have shared
892
+ with you).
893
+
894
+ This works both with the "list" (lsd, lsl, etc.) and the "copy"
895
+ commands (copy, sync, etc.), and with all other commands too.
896
+
897
+ Properties:
898
+
899
+ - Config: shared_with_me
900
+ - Env Var: RCLONE_DRIVE_SHARED_WITH_ME
901
+ - Type: bool
902
+ - Default: false
903
+
904
+ #### --drive-trashed-only
905
+
906
+ Only show files that are in the trash.
907
+
908
+ This will show trashed files in their original directory structure.
909
+
910
+ Properties:
911
+
912
+ - Config: trashed_only
913
+ - Env Var: RCLONE_DRIVE_TRASHED_ONLY
914
+ - Type: bool
915
+ - Default: false
916
+
917
+ #### --drive-starred-only
918
+
919
+ Only show files that are starred.
920
+
921
+ Properties:
922
+
923
+ - Config: starred_only
924
+ - Env Var: RCLONE_DRIVE_STARRED_ONLY
925
+ - Type: bool
926
+ - Default: false
927
+
928
+ #### --drive-formats
929
+
930
+ Deprecated: See export_formats.
931
+
932
+ Properties:
933
+
934
+ - Config: formats
935
+ - Env Var: RCLONE_DRIVE_FORMATS
936
+ - Type: string
937
+ - Required: false
938
+
939
+ #### --drive-export-formats
940
+
941
+ Comma separated list of preferred formats for downloading Google docs.
942
+
943
+ Properties:
944
+
945
+ - Config: export_formats
946
+ - Env Var: RCLONE_DRIVE_EXPORT_FORMATS
947
+ - Type: string
948
+ - Default: "docx,xlsx,pptx,svg"
949
+
950
+ #### --drive-import-formats
951
+
952
+ Comma separated list of preferred formats for uploading Google docs.
953
+
954
+ Properties:
955
+
956
+ - Config: import_formats
957
+ - Env Var: RCLONE_DRIVE_IMPORT_FORMATS
958
+ - Type: string
959
+ - Required: false
960
+
961
+ #### --drive-allow-import-name-change
962
+
963
+ Allow the filetype to change when uploading Google docs.
964
+
965
+ E.g. file.doc to file.docx. This will confuse sync and reupload every time.
966
+
967
+ Properties:
968
+
969
+ - Config: allow_import_name_change
970
+ - Env Var: RCLONE_DRIVE_ALLOW_IMPORT_NAME_CHANGE
971
+ - Type: bool
972
+ - Default: false
973
+
974
+ #### --drive-use-created-date
975
+
976
+ Use file created date instead of modified date.
977
+
978
+ Useful when downloading data and you want the creation date used in
979
+ place of the last modified date.
980
+
981
+ **WARNING**: This flag may have some unexpected consequences.
982
+
983
+ When uploading to your drive all files will be overwritten unless they
984
+ haven't been modified since their creation. And the inverse will occur
985
+ while downloading. This side effect can be avoided by using the
986
+ "--checksum" flag.
987
+
988
+ This feature was implemented to retain photos capture date as recorded
989
+ by google photos. You will first need to check the "Create a Google
990
+ Photos folder" option in your google drive settings. You can then copy
991
+ or move the photos locally and use the date the image was taken
992
+ (created) set as the modification date.
993
+
994
+ Properties:
995
+
996
+ - Config: use_created_date
997
+ - Env Var: RCLONE_DRIVE_USE_CREATED_DATE
998
+ - Type: bool
999
+ - Default: false
1000
+
1001
+ #### --drive-use-shared-date
1002
+
1003
+ Use date file was shared instead of modified date.
1004
+
1005
+ Note that, as with "--drive-use-created-date", this flag may have
1006
+ unexpected consequences when uploading/downloading files.
1007
+
1008
+ If both this flag and "--drive-use-created-date" are set, the created
1009
+ date is used.
1010
+
1011
+ Properties:
1012
+
1013
+ - Config: use_shared_date
1014
+ - Env Var: RCLONE_DRIVE_USE_SHARED_DATE
1015
+ - Type: bool
1016
+ - Default: false
1017
+
1018
+ #### --drive-list-chunk
1019
+
1020
+ Size of listing chunk 100-1000, 0 to disable.
1021
+
1022
+ Properties:
1023
+
1024
+ - Config: list_chunk
1025
+ - Env Var: RCLONE_DRIVE_LIST_CHUNK
1026
+ - Type: int
1027
+ - Default: 1000
1028
+
1029
+ #### --drive-impersonate
1030
+
1031
+ Impersonate this user when using a service account.
1032
+
1033
+ Properties:
1034
+
1035
+ - Config: impersonate
1036
+ - Env Var: RCLONE_DRIVE_IMPERSONATE
1037
+ - Type: string
1038
+ - Required: false
1039
+
1040
+ #### --drive-upload-cutoff
1041
+
1042
+ Cutoff for switching to chunked upload.
1043
+
1044
+ Properties:
1045
+
1046
+ - Config: upload_cutoff
1047
+ - Env Var: RCLONE_DRIVE_UPLOAD_CUTOFF
1048
+ - Type: SizeSuffix
1049
+ - Default: 8Mi
1050
+
1051
+ #### --drive-chunk-size
1052
+
1053
+ Upload chunk size.
1054
+
1055
+ Must a power of 2 >= 256k.
1056
+
1057
+ Making this larger will improve performance, but note that each chunk
1058
+ is buffered in memory one per transfer.
1059
+
1060
+ Reducing this will reduce memory usage but decrease performance.
1061
+
1062
+ Properties:
1063
+
1064
+ - Config: chunk_size
1065
+ - Env Var: RCLONE_DRIVE_CHUNK_SIZE
1066
+ - Type: SizeSuffix
1067
+ - Default: 8Mi
1068
+
1069
+ #### --drive-acknowledge-abuse
1070
+
1071
+ Set to allow files which return cannotDownloadAbusiveFile to be downloaded.
1072
+
1073
+ If downloading a file returns the error "This file has been identified
1074
+ as malware or spam and cannot be downloaded" with the error code
1075
+ "cannotDownloadAbusiveFile" then supply this flag to rclone to
1076
+ indicate you acknowledge the risks of downloading the file and rclone
1077
+ will download it anyway.
1078
+
1079
+ Note that if you are using service account it will need Manager
1080
+ permission (not Content Manager) to for this flag to work. If the SA
1081
+ does not have the right permission, Google will just ignore the flag.
1082
+
1083
+ Properties:
1084
+
1085
+ - Config: acknowledge_abuse
1086
+ - Env Var: RCLONE_DRIVE_ACKNOWLEDGE_ABUSE
1087
+ - Type: bool
1088
+ - Default: false
1089
+
1090
+ #### --drive-keep-revision-forever
1091
+
1092
+ Keep new head revision of each file forever.
1093
+
1094
+ Properties:
1095
+
1096
+ - Config: keep_revision_forever
1097
+ - Env Var: RCLONE_DRIVE_KEEP_REVISION_FOREVER
1098
+ - Type: bool
1099
+ - Default: false
1100
+
1101
+ #### --drive-size-as-quota
1102
+
1103
+ Show sizes as storage quota usage, not actual size.
1104
+
1105
+ Show the size of a file as the storage quota used. This is the
1106
+ current version plus any older versions that have been set to keep
1107
+ forever.
1108
+
1109
+ **WARNING**: This flag may have some unexpected consequences.
1110
+
1111
+ It is not recommended to set this flag in your config - the
1112
+ recommended usage is using the flag form --drive-size-as-quota when
1113
+ doing rclone ls/lsl/lsf/lsjson/etc only.
1114
+
1115
+ If you do use this flag for syncing (not recommended) then you will
1116
+ need to use --ignore size also.
1117
+
1118
+ Properties:
1119
+
1120
+ - Config: size_as_quota
1121
+ - Env Var: RCLONE_DRIVE_SIZE_AS_QUOTA
1122
+ - Type: bool
1123
+ - Default: false
1124
+
1125
+ #### --drive-v2-download-min-size
1126
+
1127
+ If Object's are greater, use drive v2 API to download.
1128
+
1129
+ Properties:
1130
+
1131
+ - Config: v2_download_min_size
1132
+ - Env Var: RCLONE_DRIVE_V2_DOWNLOAD_MIN_SIZE
1133
+ - Type: SizeSuffix
1134
+ - Default: off
1135
+
1136
+ #### --drive-pacer-min-sleep
1137
+
1138
+ Minimum time to sleep between API calls.
1139
+
1140
+ Properties:
1141
+
1142
+ - Config: pacer_min_sleep
1143
+ - Env Var: RCLONE_DRIVE_PACER_MIN_SLEEP
1144
+ - Type: Duration
1145
+ - Default: 100ms
1146
+
1147
+ #### --drive-pacer-burst
1148
+
1149
+ Number of API calls to allow without sleeping.
1150
+
1151
+ Properties:
1152
+
1153
+ - Config: pacer_burst
1154
+ - Env Var: RCLONE_DRIVE_PACER_BURST
1155
+ - Type: int
1156
+ - Default: 100
1157
+
1158
+ #### --drive-server-side-across-configs
1159
+
1160
+ Deprecated: use --server-side-across-configs instead.
1161
+
1162
+ Allow server-side operations (e.g. copy) to work across different drive configs.
1163
+
1164
+ This can be useful if you wish to do a server-side copy between two
1165
+ different Google drives. Note that this isn't enabled by default
1166
+ because it isn't easy to tell if it will work between any two
1167
+ configurations.
1168
+
1169
+ Properties:
1170
+
1171
+ - Config: server_side_across_configs
1172
+ - Env Var: RCLONE_DRIVE_SERVER_SIDE_ACROSS_CONFIGS
1173
+ - Type: bool
1174
+ - Default: false
1175
+
1176
+ #### --drive-disable-http2
1177
+
1178
+ Disable drive using http2.
1179
+
1180
+ There is currently an unsolved issue with the google drive backend and
1181
+ HTTP/2. HTTP/2 is therefore disabled by default for the drive backend
1182
+ but can be re-enabled here. When the issue is solved this flag will
1183
+ be removed.
1184
+
1185
+ See: https://github.com/rclone/rclone/issues/3631
1186
+
1187
+
1188
+
1189
+ Properties:
1190
+
1191
+ - Config: disable_http2
1192
+ - Env Var: RCLONE_DRIVE_DISABLE_HTTP2
1193
+ - Type: bool
1194
+ - Default: true
1195
+
1196
+ #### --drive-stop-on-upload-limit
1197
+
1198
+ Make upload limit errors be fatal.
1199
+
1200
+ At the time of writing it is only possible to upload 750 GiB of data to
1201
+ Google Drive a day (this is an undocumented limit). When this limit is
1202
+ reached Google Drive produces a slightly different error message. When
1203
+ this flag is set it causes these errors to be fatal. These will stop
1204
+ the in-progress sync.
1205
+
1206
+ Note that this detection is relying on error message strings which
1207
+ Google don't document so it may break in the future.
1208
+
1209
+ See: https://github.com/rclone/rclone/issues/3857
1210
+
1211
+
1212
+ Properties:
1213
+
1214
+ - Config: stop_on_upload_limit
1215
+ - Env Var: RCLONE_DRIVE_STOP_ON_UPLOAD_LIMIT
1216
+ - Type: bool
1217
+ - Default: false
1218
+
1219
+ #### --drive-stop-on-download-limit
1220
+
1221
+ Make download limit errors be fatal.
1222
+
1223
+ At the time of writing it is only possible to download 10 TiB of data from
1224
+ Google Drive a day (this is an undocumented limit). When this limit is
1225
+ reached Google Drive produces a slightly different error message. When
1226
+ this flag is set it causes these errors to be fatal. These will stop
1227
+ the in-progress sync.
1228
+
1229
+ Note that this detection is relying on error message strings which
1230
+ Google don't document so it may break in the future.
1231
+
1232
+
1233
+ Properties:
1234
+
1235
+ - Config: stop_on_download_limit
1236
+ - Env Var: RCLONE_DRIVE_STOP_ON_DOWNLOAD_LIMIT
1237
+ - Type: bool
1238
+ - Default: false
1239
+
1240
+ #### --drive-skip-shortcuts
1241
+
1242
+ If set skip shortcut files.
1243
+
1244
+ Normally rclone dereferences shortcut files making them appear as if
1245
+ they are the original file (see [the shortcuts section](#shortcuts)).
1246
+ If this flag is set then rclone will ignore shortcut files completely.
1247
+
1248
+
1249
+ Properties:
1250
+
1251
+ - Config: skip_shortcuts
1252
+ - Env Var: RCLONE_DRIVE_SKIP_SHORTCUTS
1253
+ - Type: bool
1254
+ - Default: false
1255
+
1256
+ #### --drive-skip-dangling-shortcuts
1257
+
1258
+ If set skip dangling shortcut files.
1259
+
1260
+ If this is set then rclone will not show any dangling shortcuts in listings.
1261
+
1262
+
1263
+ Properties:
1264
+
1265
+ - Config: skip_dangling_shortcuts
1266
+ - Env Var: RCLONE_DRIVE_SKIP_DANGLING_SHORTCUTS
1267
+ - Type: bool
1268
+ - Default: false
1269
+
1270
+ #### --drive-resource-key
1271
+
1272
+ Resource key for accessing a link-shared file.
1273
+
1274
+ If you need to access files shared with a link like this
1275
+
1276
+ https://drive.google.com/drive/folders/XXX?resourcekey=YYY&usp=sharing
1277
+
1278
+ Then you will need to use the first part "XXX" as the "root_folder_id"
1279
+ and the second part "YYY" as the "resource_key" otherwise you will get
1280
+ 404 not found errors when trying to access the directory.
1281
+
1282
+ See: https://developers.google.com/drive/api/guides/resource-keys
1283
+
1284
+ This resource key requirement only applies to a subset of old files.
1285
+
1286
+ Note also that opening the folder once in the web interface (with the
1287
+ user you've authenticated rclone with) seems to be enough so that the
1288
+ resource key is not needed.
1289
+
1290
+
1291
+ Properties:
1292
+
1293
+ - Config: resource_key
1294
+ - Env Var: RCLONE_DRIVE_RESOURCE_KEY
1295
+ - Type: string
1296
+ - Required: false
1297
+
1298
+ #### --drive-fast-list-bug-fix
1299
+
1300
+ Work around a bug in Google Drive listing.
1301
+
1302
+ Normally rclone will work around a bug in Google Drive when using
1303
+ --fast-list (ListR) where the search "(A in parents) or (B in
1304
+ parents)" returns nothing sometimes. See #3114, #4289 and
1305
+ https://issuetracker.google.com/issues/149522397
1306
+
1307
+ Rclone detects this by finding no items in more than one directory
1308
+ when listing and retries them as lists of individual directories.
1309
+
1310
+ This means that if you have a lot of empty directories rclone will end
1311
+ up listing them all individually and this can take many more API
1312
+ calls.
1313
+
1314
+ This flag allows the work-around to be disabled. This is **not**
1315
+ recommended in normal use - only if you have a particular case you are
1316
+ having trouble with like many empty directories.
1317
+
1318
+
1319
+ Properties:
1320
+
1321
+ - Config: fast_list_bug_fix
1322
+ - Env Var: RCLONE_DRIVE_FAST_LIST_BUG_FIX
1323
+ - Type: bool
1324
+ - Default: true
1325
+
1326
+ #### --drive-metadata-owner
1327
+
1328
+ Control whether owner should be read or written in metadata.
1329
+
1330
+ Owner is a standard part of the file metadata so is easy to read. But it
1331
+ isn't always desirable to set the owner from the metadata.
1332
+
1333
+ Note that you can't set the owner on Shared Drives, and that setting
1334
+ ownership will generate an email to the new owner (this can't be
1335
+ disabled), and you can't transfer ownership to someone outside your
1336
+ organization.
1337
+
1338
+
1339
+ Properties:
1340
+
1341
+ - Config: metadata_owner
1342
+ - Env Var: RCLONE_DRIVE_METADATA_OWNER
1343
+ - Type: Bits
1344
+ - Default: read
1345
+ - Examples:
1346
+ - "off"
1347
+ - Do not read or write the value
1348
+ - "read"
1349
+ - Read the value only
1350
+ - "write"
1351
+ - Write the value only
1352
+ - "failok"
1353
+ - If writing fails log errors only, don't fail the transfer
1354
+ - "read,write"
1355
+ - Read and Write the value.
1356
+
1357
+ #### --drive-metadata-permissions
1358
+
1359
+ Control whether permissions should be read or written in metadata.
1360
+
1361
+ Reading permissions metadata from files can be done quickly, but it
1362
+ isn't always desirable to set the permissions from the metadata.
1363
+
1364
+ Note that rclone drops any inherited permissions on Shared Drives and
1365
+ any owner permission on My Drives as these are duplicated in the owner
1366
+ metadata.
1367
+
1368
+
1369
+ Properties:
1370
+
1371
+ - Config: metadata_permissions
1372
+ - Env Var: RCLONE_DRIVE_METADATA_PERMISSIONS
1373
+ - Type: Bits
1374
+ - Default: off
1375
+ - Examples:
1376
+ - "off"
1377
+ - Do not read or write the value
1378
+ - "read"
1379
+ - Read the value only
1380
+ - "write"
1381
+ - Write the value only
1382
+ - "failok"
1383
+ - If writing fails log errors only, don't fail the transfer
1384
+ - "read,write"
1385
+ - Read and Write the value.
1386
+
1387
+ #### --drive-metadata-labels
1388
+
1389
+ Control whether labels should be read or written in metadata.
1390
+
1391
+ Reading labels metadata from files takes an extra API transaction and
1392
+ will slow down listings. It isn't always desirable to set the labels
1393
+ from the metadata.
1394
+
1395
+ The format of labels is documented in the drive API documentation at
1396
+ https://developers.google.com/drive/api/reference/rest/v3/Label -
1397
+ rclone just provides a JSON dump of this format.
1398
+
1399
+ When setting labels, the label and fields must already exist - rclone
1400
+ will not create them. This means that if you are transferring labels
1401
+ from two different accounts you will have to create the labels in
1402
+ advance and use the metadata mapper to translate the IDs between the
1403
+ two accounts.
1404
+
1405
+
1406
+ Properties:
1407
+
1408
+ - Config: metadata_labels
1409
+ - Env Var: RCLONE_DRIVE_METADATA_LABELS
1410
+ - Type: Bits
1411
+ - Default: off
1412
+ - Examples:
1413
+ - "off"
1414
+ - Do not read or write the value
1415
+ - "read"
1416
+ - Read the value only
1417
+ - "write"
1418
+ - Write the value only
1419
+ - "failok"
1420
+ - If writing fails log errors only, don't fail the transfer
1421
+ - "read,write"
1422
+ - Read and Write the value.
1423
+
1424
+ #### --drive-metadata-enforce-expansive-access
1425
+
1426
+ Whether the request should enforce expansive access rules.
1427
+
1428
+ From Feb 2026 this flag will be set by default so this flag can be used for
1429
+ testing before then.
1430
+
1431
+ See: https://developers.google.com/workspace/drive/api/guides/limited-expansive-access
1432
+
1433
+
1434
+ Properties:
1435
+
1436
+ - Config: metadata_enforce_expansive_access
1437
+ - Env Var: RCLONE_DRIVE_METADATA_ENFORCE_EXPANSIVE_ACCESS
1438
+ - Type: bool
1439
+ - Default: false
1440
+
1441
+ #### --drive-encoding
1442
+
1443
+ The encoding for the backend.
1444
+
1445
+ See the [encoding section in the overview](/overview/#encoding) for more info.
1446
+
1447
+ Properties:
1448
+
1449
+ - Config: encoding
1450
+ - Env Var: RCLONE_DRIVE_ENCODING
1451
+ - Type: Encoding
1452
+ - Default: InvalidUtf8
1453
+
1454
+ #### --drive-env-auth
1455
+
1456
+ Get IAM credentials from runtime (environment variables or instance meta data if no env vars).
1457
+
1458
+ Only applies if service_account_file and service_account_credentials is blank.
1459
+
1460
+ Properties:
1461
+
1462
+ - Config: env_auth
1463
+ - Env Var: RCLONE_DRIVE_ENV_AUTH
1464
+ - Type: bool
1465
+ - Default: false
1466
+ - Examples:
1467
+ - "false"
1468
+ - Enter credentials in the next step.
1469
+ - "true"
1470
+ - Get GCP IAM credentials from the environment (env vars or IAM).
1471
+
1472
+ #### --drive-description
1473
+
1474
+ Description of the remote.
1475
+
1476
+ Properties:
1477
+
1478
+ - Config: description
1479
+ - Env Var: RCLONE_DRIVE_DESCRIPTION
1480
+ - Type: string
1481
+ - Required: false
1482
+
1483
+ ### Metadata
1484
+
1485
+ User metadata is stored in the properties field of the drive object.
1486
+
1487
+ Metadata is supported on files and directories.
1488
+
1489
+ Here are the possible system metadata items for the drive backend.
1490
+
1491
+ | Name | Help | Type | Example | Read Only |
1492
+ |------|------|------|---------|-----------|
1493
+ | btime | Time of file birth (creation) with mS accuracy. Note that this is only writable on fresh uploads - it can't be written for updates. | RFC 3339 | 2006-01-02T15:04:05.999Z07:00 | N |
1494
+ | content-type | The MIME type of the file. | string | text/plain | N |
1495
+ | copy-requires-writer-permission | Whether the options to copy, print, or download this file, should be disabled for readers and commenters. | boolean | true | N |
1496
+ | description | A short description of the file. | string | Contract for signing | N |
1497
+ | folder-color-rgb | The color for a folder or a shortcut to a folder as an RGB hex string. | string | 881133 | N |
1498
+ | labels | Labels attached to this file in a JSON dump of Googled drive format. Enable with --drive-metadata-labels. | JSON | [] | N |
1499
+ | mtime | Time of last modification with mS accuracy. | RFC 3339 | 2006-01-02T15:04:05.999Z07:00 | N |
1500
+ | owner | The owner of the file. Usually an email address. Enable with --drive-metadata-owner. | string | user@example.com | N |
1501
+ | permissions | Permissions in a JSON dump of Google drive format. On shared drives these will only be present if they aren't inherited. Enable with --drive-metadata-permissions. | JSON | {} | N |
1502
+ | starred | Whether the user has starred the file. | boolean | false | N |
1503
+ | viewed-by-me | Whether the file has been viewed by this user. | boolean | true | **Y** |
1504
+ | writers-can-share | Whether users with only writer permission can modify the file's permissions. Not populated and ignored when setting for items in shared drives. | boolean | false | N |
1505
+
1506
+ See the [metadata](/docs/#metadata) docs for more info.
1507
+
1508
+ ## Backend commands
1509
+
1510
+ Here are the commands specific to the drive backend.
1511
+
1512
+ Run them with:
1513
+
1514
+ ```console
1515
+ rclone backend COMMAND remote:
1516
+ ```
1517
+
1518
+ The help below will explain what arguments each command takes.
1519
+
1520
+ See the [backend](/commands/rclone_backend/) command for more
1521
+ info on how to pass options and arguments.
1522
+
1523
+ These can be run on a running backend using the rc command
1524
+ [backend/command](/rc/#backend-command).
1525
+
1526
+ ### get
1527
+
1528
+ Get command for fetching the drive config parameters.
1529
+
1530
+ ```console
1531
+ rclone backend get remote: [options] [<arguments>+]
1532
+ ```
1533
+
1534
+ This is a get command which will be used to fetch the various drive config
1535
+ parameters.
1536
+
1537
+ Usage examples:
1538
+
1539
+ ```console
1540
+ rclone backend get drive: [-o service_account_file] [-o chunk_size]
1541
+ rclone rc backend/command command=get fs=drive: [-o service_account_file] [-o chunk_size]
1542
+ ```
1543
+
1544
+ Options:
1545
+
1546
+ - "chunk_size": Show the current upload chunk size.
1547
+ - "service_account_file": Show the current service account file.
1548
+
1549
+ ### set
1550
+
1551
+ Set command for updating the drive config parameters.
1552
+
1553
+ ```console
1554
+ rclone backend set remote: [options] [<arguments>+]
1555
+ ```
1556
+
1557
+ This is a set command which will be used to update the various drive config
1558
+ parameters.
1559
+
1560
+ Usage examples:
1561
+
1562
+ ```console
1563
+ rclone backend set drive: [-o service_account_file=sa.json] [-o chunk_size=67108864]
1564
+ rclone rc backend/command command=set fs=drive: [-o service_account_file=sa.json] [-o chunk_size=67108864]
1565
+ ```
1566
+
1567
+ Options:
1568
+
1569
+ - "chunk_size": Update the current upload chunk size.
1570
+ - "service_account_file": Update the current service account file.
1571
+
1572
+ ### shortcut
1573
+
1574
+ Create shortcuts from files or directories.
1575
+
1576
+ ```console
1577
+ rclone backend shortcut remote: [options] [<arguments>+]
1578
+ ```
1579
+
1580
+ This command creates shortcuts from files or directories.
1581
+
1582
+ Usage examples:
1583
+
1584
+ ```console
1585
+ rclone backend shortcut drive: source_item destination_shortcut
1586
+ rclone backend shortcut drive: source_item -o target=drive2: destination_shortcut
1587
+ ```
1588
+
1589
+ In the first example this creates a shortcut from the "source_item"
1590
+ which can be a file or a directory to the "destination_shortcut". The
1591
+ "source_item" and the "destination_shortcut" should be relative paths
1592
+ from "drive:"
1593
+
1594
+ In the second example this creates a shortcut from the "source_item"
1595
+ relative to "drive:" to the "destination_shortcut" relative to
1596
+ "drive2:". This may fail with a permission error if the user
1597
+ authenticated with "drive2:" can't read files from "drive:".
1598
+
1599
+ Options:
1600
+
1601
+ - "target": Optional target remote for the shortcut destination.
1602
+
1603
+ ### drives
1604
+
1605
+ List the Shared Drives available to this account.
1606
+
1607
+ ```console
1608
+ rclone backend drives remote: [options] [<arguments>+]
1609
+ ```
1610
+
1611
+ This command lists the Shared Drives (Team Drives) available to this
1612
+ account.
1613
+
1614
+ Usage example:
1615
+
1616
+ ```console
1617
+ rclone backend [-o config] drives drive:
1618
+ ```
1619
+
1620
+ This will return a JSON list of objects like this:
1621
+
1622
+ ```json
1623
+ [
1624
+ {
1625
+ "id": "0ABCDEF-01234567890",
1626
+ "kind": "drive#teamDrive",
1627
+ "name": "My Drive"
1628
+ },
1629
+ {
1630
+ "id": "0ABCDEFabcdefghijkl",
1631
+ "kind": "drive#teamDrive",
1632
+ "name": "Test Drive"
1633
+ }
1634
+ ]
1635
+ ```
1636
+
1637
+ With the -o config parameter it will output the list in a format
1638
+ suitable for adding to a config file to make aliases for all the
1639
+ drives found and a combined drive.
1640
+
1641
+ ```ini
1642
+ [My Drive]
1643
+ type = alias
1644
+ remote = drive,team_drive=0ABCDEF-01234567890,root_folder_id=:
1645
+
1646
+ [Test Drive]
1647
+ type = alias
1648
+ remote = drive,team_drive=0ABCDEFabcdefghijkl,root_folder_id=:
1649
+
1650
+ [AllDrives]
1651
+ type = combine
1652
+ upstreams = "My Drive=My Drive:" "Test Drive=Test Drive:"
1653
+ ```
1654
+
1655
+ Adding this to the rclone config file will cause those team drives to
1656
+ be accessible with the aliases shown. Any illegal characters will be
1657
+ substituted with "_" and duplicate names will have numbers suffixed.
1658
+ It will also add a remote called AllDrives which shows all the shared
1659
+ drives combined into one directory tree.
1660
+
1661
+ ### untrash
1662
+
1663
+ Untrash files and directories.
1664
+
1665
+ ```console
1666
+ rclone backend untrash remote: [options] [<arguments>+]
1667
+ ```
1668
+
1669
+ This command untrashes all the files and directories in the directory
1670
+ passed in recursively.
1671
+
1672
+ Usage example:
1673
+
1674
+ ```console
1675
+ rclone backend untrash drive:directory
1676
+ rclone backend --interactive untrash drive:directory subdir
1677
+ ```
1678
+
1679
+ This takes an optional directory to trash which make this easier to
1680
+ use via the API.
1681
+
1682
+ Use the --interactive/-i or --dry-run flag to see what would be restored before
1683
+ restoring it.
1684
+
1685
+ Result:
1686
+
1687
+ ```json
1688
+ {
1689
+ "Untrashed": 17,
1690
+ "Errors": 0
1691
+ }
1692
+ ```
1693
+
1694
+ ### copyid
1695
+
1696
+ Copy files by ID.
1697
+
1698
+ ```console
1699
+ rclone backend copyid remote: [options] [<arguments>+]
1700
+ ```
1701
+
1702
+ This command copies files by ID.
1703
+
1704
+ Usage examples:
1705
+
1706
+ ```console
1707
+ rclone backend copyid drive: ID path
1708
+ rclone backend copyid drive: ID1 path1 ID2 path2
1709
+ ```
1710
+
1711
+ It copies the drive file with ID given to the path (an rclone path which
1712
+ will be passed internally to rclone copyto). The ID and path pairs can be
1713
+ repeated.
1714
+
1715
+ The path should end with a / to indicate copy the file as named to
1716
+ this directory. If it doesn't end with a / then the last path
1717
+ component will be used as the file name.
1718
+
1719
+ If the destination is a drive backend then server-side copying will be
1720
+ attempted if possible.
1721
+
1722
+ Use the --interactive/-i or --dry-run flag to see what would be copied before
1723
+ copying.
1724
+
1725
+ ### moveid
1726
+
1727
+ Move files by ID.
1728
+
1729
+ ```console
1730
+ rclone backend moveid remote: [options] [<arguments>+]
1731
+ ```
1732
+
1733
+ This command moves files by ID.
1734
+
1735
+ Usage examples:
1736
+
1737
+ ```console
1738
+ rclone backend moveid drive: ID path
1739
+ rclone backend moveid drive: ID1 path1 ID2 path2
1740
+ ```
1741
+
1742
+ It moves the drive file with ID given to the path (an rclone path which
1743
+ will be passed internally to rclone moveto).
1744
+
1745
+ The path should end with a / to indicate move the file as named to
1746
+ this directory. If it doesn't end with a / then the last path
1747
+ component will be used as the file name.
1748
+
1749
+ If the destination is a drive backend then server-side moving will be
1750
+ attempted if possible.
1751
+
1752
+ Use the --interactive/-i or --dry-run flag to see what would be moved beforehand.
1753
+
1754
+ ### exportformats
1755
+
1756
+ Dump the export formats for debug purposes.
1757
+
1758
+ ```console
1759
+ rclone backend exportformats remote: [options] [<arguments>+]
1760
+ ```
1761
+
1762
+ ### importformats
1763
+
1764
+ Dump the import formats for debug purposes.
1765
+
1766
+ ```console
1767
+ rclone backend importformats remote: [options] [<arguments>+]
1768
+ ```
1769
+
1770
+ ### query
1771
+
1772
+ List files using Google Drive query language.
1773
+
1774
+ ```console
1775
+ rclone backend query remote: [options] [<arguments>+]
1776
+ ```
1777
+
1778
+ This command lists files based on a query.
1779
+
1780
+ Usage example:
1781
+
1782
+ ```console
1783
+ rclone backend query drive: query
1784
+ ```
1785
+
1786
+ The query syntax is documented at [Google Drive Search query terms and
1787
+ operators](https://developers.google.com/drive/api/guides/ref-search-terms).
1788
+
1789
+ For example:
1790
+
1791
+ ```console
1792
+ rclone backend query drive: "'0ABc9DEFGHIJKLMNop0QRatUVW3X' in parents and name contains 'foo'"
1793
+ ```
1794
+
1795
+ If the query contains literal ' or \ characters, these need to be escaped with
1796
+ \ characters. "'" becomes "\'" and "\" becomes "\\\", for example to match a
1797
+ file named "foo ' \.txt":
1798
+
1799
+ ```console
1800
+ rclone backend query drive: "name = 'foo \' \\\.txt'"
1801
+ ```
1802
+
1803
+ The result is a JSON array of matches, for example:
1804
+
1805
+ ```json
1806
+ [
1807
+ {
1808
+ "createdTime": "2017-06-29T19:58:28.537Z",
1809
+ "id": "0AxBe_CDEF4zkGHI4d0FjYko2QkD",
1810
+ "md5Checksum": "68518d16be0c6fbfab918be61d658032",
1811
+ "mimeType": "text/plain",
1812
+ "modifiedTime": "2024-02-02T10:40:02.874Z",
1813
+ "name": "foo ' \\.txt",
1814
+ "parents": [
1815
+ "0BxAe_BCDE4zkFGZpcWJGek0xbzC"
1816
+ ],
1817
+ "resourceKey": "0-ABCDEFGHIXJQpIGqBJq3MC",
1818
+ "sha1Checksum": "8f284fa768bfb4e45d076a579ab3905ab6bfa893",
1819
+ "size": "311",
1820
+ "webViewLink": "https://drive.google.com/file/d/0AxBe_CDEF4zkGHI4d0FjYko2QkD/view?usp=drivesdk\u0026resourcekey=0-ABCDEFGHIXJQpIGqBJq3MC"
1821
+ }
1822
+ ]
1823
+ ```console
1824
+
1825
+ ### rescue
1826
+
1827
+ Rescue or delete any orphaned files.
1828
+
1829
+ ```console
1830
+ rclone backend rescue remote: [options] [<arguments>+]
1831
+ ```
1832
+
1833
+ This command rescues or deletes any orphaned files or directories.
1834
+
1835
+ Sometimes files can get orphaned in Google Drive. This means that they
1836
+ are no longer in any folder in Google Drive.
1837
+
1838
+ This command finds those files and either rescues them to a directory
1839
+ you specify or deletes them.
1840
+
1841
+ This can be used in 3 ways.
1842
+
1843
+ First, list all orphaned files:
1844
+
1845
+ ```console
1846
+ rclone backend rescue drive:
1847
+ ```
1848
+
1849
+ Second rescue all orphaned files to the directory indicated:
1850
+
1851
+ ```console
1852
+ rclone backend rescue drive: "relative/path/to/rescue/directory"
1853
+ ```
1854
+
1855
+ E.g. to rescue all orphans to a directory called "Orphans" in the top level:
1856
+
1857
+ ```console
1858
+ rclone backend rescue drive: Orphans
1859
+ ```
1860
+
1861
+ Third delete all orphaned files to the trash:
1862
+
1863
+ ```console
1864
+ rclone backend rescue drive: -o delete
1865
+ ```
1866
+
1867
+ <!-- autogenerated options stop -->
1868
+
1869
+ ## Limitations
1870
+
1871
+ Drive has quite a lot of rate limiting. This causes rclone to be
1872
+ limited to transferring about 2 files per second only. Individual
1873
+ files may be transferred much faster at 100s of MiB/s but lots of
1874
+ small files can take a long time.
1875
+
1876
+ Server side copies are also subject to a separate rate limit. If you
1877
+ see User rate limit exceeded errors, wait at least 24 hours and retry.
1878
+ You can disable server-side copies with `--disable copy` to download
1879
+ and upload the files if you prefer.
1880
+
1881
+ ### Limitations of Google Docs
1882
+
1883
+ Google docs will appear as size -1 in `rclone ls`, `rclone ncdu` etc,
1884
+ and as size 0 in anything which uses the VFS layer, e.g. `rclone mount`
1885
+ and `rclone serve`. When calculating directory totals, e.g. in
1886
+ `rclone size` and `rclone ncdu`, they will be counted in as empty
1887
+ files.
1888
+
1889
+ This is because rclone can't find out the size of the Google docs
1890
+ without downloading them.
1891
+
1892
+ Google docs will transfer correctly with `rclone sync`, `rclone copy`
1893
+ etc as rclone knows to ignore the size when doing the transfer.
1894
+
1895
+ However an unfortunate consequence of this is that you may not be able
1896
+ to download Google docs using `rclone mount`. If it doesn't work you
1897
+ will get a 0 sized file. If you try again the doc may gain its
1898
+ correct size and be downloadable. Whether it will work on not depends
1899
+ on the application accessing the mount and the OS you are running -
1900
+ experiment to find out if it does work for you!
1901
+
1902
+ ### Duplicated files
1903
+
1904
+ Sometimes, for no reason I've been able to track down, drive will
1905
+ duplicate a file that rclone uploads. Drive unlike all the other
1906
+ remotes can have duplicated files.
1907
+
1908
+ Duplicated files cause problems with the syncing and you will see
1909
+ messages in the log about duplicates.
1910
+
1911
+ Use `rclone dedupe` to fix duplicated files.
1912
+
1913
+ Note that this isn't just a problem with rclone, even Google Photos on
1914
+ Android duplicates files on drive sometimes.
1915
+
1916
+ ### Rclone appears to be re-copying files it shouldn't
1917
+
1918
+ The most likely cause of this is the duplicated file issue above - run
1919
+ `rclone dedupe` and check your logs for duplicate object or directory
1920
+ messages.
1921
+
1922
+ This can also be caused by a delay/caching on google drive's end when
1923
+ comparing directory listings. Specifically with team drives used in
1924
+ combination with --fast-list. Files that were uploaded recently may
1925
+ not appear on the directory list sent to rclone when using --fast-list.
1926
+
1927
+ Waiting a moderate period of time between attempts (estimated to be
1928
+ approximately 1 hour) and/or not using --fast-list both seem to be
1929
+ effective in preventing the problem.
1930
+
1931
+ ### SHA1 or SHA256 hashes may be missing
1932
+
1933
+ All files have MD5 hashes, but a small fraction of files uploaded may
1934
+ not have SHA1 or SHA256 hashes especially if they were uploaded before 2018.
1935
+
1936
+ ## Making your own client_id
1937
+
1938
+ When you use rclone with Google drive in its default configuration you
1939
+ are using rclone's client_id. This is shared between all the rclone
1940
+ users. There is a global rate limit on the number of queries per
1941
+ second that each client_id can do set by Google. rclone already has a
1942
+ high quota and I will continue to make sure it is high enough by
1943
+ contacting Google.
1944
+
1945
+ It is strongly recommended to use your own client ID as the default
1946
+ rclone ID is heavily used. If you have multiple services running, it
1947
+ is recommended to use an API key for each service. The default Google
1948
+ quota is 10 transactions per second so it is recommended to stay under
1949
+ that number as if you use more than that, it will cause rclone to rate
1950
+ limit and make things slower.
1951
+
1952
+ Here is how to create your own Google Drive client ID for rclone:
1953
+
1954
+ 1. Log into the [Google API
1955
+ Console](https://console.developers.google.com/) with your Google
1956
+ account. It doesn't matter what Google account you use. (It need not
1957
+ be the same account as the Google Drive you want to access)
1958
+
1959
+ 2. Select a project or create a new project.
1960
+
1961
+ 3. Under "ENABLE APIS AND SERVICES" search for "Drive", and enable the
1962
+ "Google Drive API".
1963
+
1964
+ 4. Click "Credentials" in the left-side panel (not "Create
1965
+ credentials", which opens the wizard).
1966
+
1967
+ 5. If you already configured an "Oauth Consent Screen", then skip
1968
+ to the next step; if not, click on "CONFIGURE CONSENT SCREEN" button
1969
+ (near the top right corner of the right panel), then click "Get started".
1970
+ On the next screen, enter an "Application name"
1971
+ ("rclone" is OK); enter "User Support Email" (your own email is OK);
1972
+ Next, under Audience select "External". Next enter your own contact information,
1973
+ agree to terms and click "Create". You should now see rclone (or your project name)
1974
+ in a box in the top left of the screen.
1975
+
1976
+ (PS: if you are a GSuite user, you could also select "Internal" instead
1977
+ of "External" above, but this will restrict API use to Google Workspace
1978
+ users in your organisation).
1979
+
1980
+ You will also have to add [some scopes](https://developers.google.com/drive/api/guides/api-specific-auth),
1981
+ including
1982
+ - `https://www.googleapis.com/auth/docs`
1983
+ - `https://www.googleapis.com/auth/drive` in order to be able to edit,
1984
+ create and delete files with RClone.
1985
+ - `https://www.googleapis.com/auth/drive.metadata.readonly` which you may
1986
+ also want to add.
1987
+
1988
+ To do this, click Data Access on the left side panel, click "add or
1989
+ remove scopes" and select the three above and press update or go to the
1990
+ "Manually add scopes" text box (scroll down) and enter
1991
+ "https://www.googleapis.com/auth/docs,https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/drive.metadata.readonly", press add to table then update.
1992
+
1993
+ You should now see the three scopes on your Data access page. Now press save
1994
+ at the bottom!
1995
+
1996
+ 6. After adding scopes, click Audience
1997
+ Scroll down and click "+ Add users". Add yourself as a test user and press save.
1998
+
1999
+ 7. Go to Overview on the left panel, click "Create OAuth client". Choose
2000
+ an application type of "Desktop app" and click "Create". (the default name is fine)
2001
+
2002
+ 8. It will show you a client ID and client secret. Make a note of these.
2003
+ (If you selected "External" at Step 5 continue to Step 9.
2004
+ If you chose "Internal" you don't need to publish and can skip straight to
2005
+ Step 10 but your destination drive must be part of the same Google Workspace.)
2006
+
2007
+ 9. Go to "Audience" and then click "PUBLISH APP" button and confirm.
2008
+ Add yourself as a test user if you haven't already.
2009
+
2010
+ 10. Provide the noted client ID and client secret to rclone.
2011
+
2012
+ Be aware that, due to the "enhanced security" recently introduced by
2013
+ Google, you are theoretically expected to "submit your app for verification"
2014
+ and then wait a few weeks(!) for their response; in practice, you can go right
2015
+ ahead and use the client ID and client secret with rclone, the only issue will
2016
+ be a very scary confirmation screen shown when you connect via your browser
2017
+ for rclone to be able to get its token-id (but as this only happens during
2018
+ the remote configuration, it's not such a big deal). Keeping the application in
2019
+ "Testing" will work as well, but the limitation is that any grants will expire
2020
+ after a week, which can be annoying to refresh constantly. If, for whatever
2021
+ reason, a short grant time is not a problem, then keeping the application in
2022
+ testing mode would also be sufficient.
2023
+
2024
+ (Thanks to @balazer on github for these instructions.)
2025
+
2026
+ Sometimes, creation of an OAuth consent in Google API Console fails due to an
2027
+ error message "The request failed because changes to one of the field of the
2028
+ resource is not supported". As a convenient workaround, the necessary Google
2029
+ Drive API key can be created on the
2030
+ [Python Quickstart](https://developers.google.com/drive/api/v3/quickstart/python)
2031
+ page. Just push the Enable the Drive API button to receive the Client ID and Secret.
2032
+ Note that it will automatically create a new project in the API Console.