zilmate 1.7.8 → 1.8.1

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 (446) hide show
  1. package/.agents/skills/agent-browser/SKILL.md +55 -0
  2. package/.agents/skills/agentmail/SKILL.md +282 -0
  3. package/.agents/skills/agentmail/references/webhooks.md +220 -0
  4. package/.agents/skills/agentmail/references/websockets.md +263 -0
  5. package/.agents/skills/ai-elements/SKILL.md +160 -0
  6. package/.agents/skills/ai-elements/references/agent.md +134 -0
  7. package/.agents/skills/ai-elements/references/artifact.md +84 -0
  8. package/.agents/skills/ai-elements/references/attachments.md +190 -0
  9. package/.agents/skills/ai-elements/references/audio-player.md +134 -0
  10. package/.agents/skills/ai-elements/references/canvas.md +34 -0
  11. package/.agents/skills/ai-elements/references/chain-of-thought.md +81 -0
  12. package/.agents/skills/ai-elements/references/checkpoint.md +183 -0
  13. package/.agents/skills/ai-elements/references/code-block.md +170 -0
  14. package/.agents/skills/ai-elements/references/commit.md +177 -0
  15. package/.agents/skills/ai-elements/references/confirmation.md +262 -0
  16. package/.agents/skills/ai-elements/references/connection.md +34 -0
  17. package/.agents/skills/ai-elements/references/context.md +126 -0
  18. package/.agents/skills/ai-elements/references/controls.md +32 -0
  19. package/.agents/skills/ai-elements/references/conversation.md +224 -0
  20. package/.agents/skills/ai-elements/references/edge.md +52 -0
  21. package/.agents/skills/ai-elements/references/environment-variables.md +102 -0
  22. package/.agents/skills/ai-elements/references/file-tree.md +72 -0
  23. package/.agents/skills/ai-elements/references/image.md +146 -0
  24. package/.agents/skills/ai-elements/references/inline-citation.md +299 -0
  25. package/.agents/skills/ai-elements/references/jsx-preview.md +104 -0
  26. package/.agents/skills/ai-elements/references/message.md +237 -0
  27. package/.agents/skills/ai-elements/references/mic-selector.md +189 -0
  28. package/.agents/skills/ai-elements/references/model-selector.md +112 -0
  29. package/.agents/skills/ai-elements/references/node.md +73 -0
  30. package/.agents/skills/ai-elements/references/open-in-chat.md +67 -0
  31. package/.agents/skills/ai-elements/references/package-info.md +95 -0
  32. package/.agents/skills/ai-elements/references/panel.md +33 -0
  33. package/.agents/skills/ai-elements/references/persona.md +166 -0
  34. package/.agents/skills/ai-elements/references/plan.md +79 -0
  35. package/.agents/skills/ai-elements/references/prompt-input.md +579 -0
  36. package/.agents/skills/ai-elements/references/queue.md +172 -0
  37. package/.agents/skills/ai-elements/references/reasoning.md +238 -0
  38. package/.agents/skills/ai-elements/references/sandbox.md +129 -0
  39. package/.agents/skills/ai-elements/references/schema-display.md +102 -0
  40. package/.agents/skills/ai-elements/references/shimmer.md +48 -0
  41. package/.agents/skills/ai-elements/references/snippet.md +64 -0
  42. package/.agents/skills/ai-elements/references/sources.md +209 -0
  43. package/.agents/skills/ai-elements/references/speech-input.md +163 -0
  44. package/.agents/skills/ai-elements/references/stack-trace.md +224 -0
  45. package/.agents/skills/ai-elements/references/suggestion.md +124 -0
  46. package/.agents/skills/ai-elements/references/task.md +222 -0
  47. package/.agents/skills/ai-elements/references/terminal.md +103 -0
  48. package/.agents/skills/ai-elements/references/test-results.md +157 -0
  49. package/.agents/skills/ai-elements/references/tool.md +285 -0
  50. package/.agents/skills/ai-elements/references/toolbar.md +32 -0
  51. package/.agents/skills/ai-elements/references/transcription.md +120 -0
  52. package/.agents/skills/ai-elements/references/voice-selector.md +241 -0
  53. package/.agents/skills/ai-elements/references/web-preview.md +200 -0
  54. package/.agents/skills/ai-elements/scripts/agent.tsx +61 -0
  55. package/.agents/skills/ai-elements/scripts/artifact.tsx +127 -0
  56. package/.agents/skills/ai-elements/scripts/attachments-inline.tsx +128 -0
  57. package/.agents/skills/ai-elements/scripts/attachments-list.tsx +95 -0
  58. package/.agents/skills/ai-elements/scripts/attachments.tsx +85 -0
  59. package/.agents/skills/ai-elements/scripts/audio-player-remote.tsx +35 -0
  60. package/.agents/skills/ai-elements/scripts/audio-player.tsx +68 -0
  61. package/.agents/skills/ai-elements/scripts/chain-of-thought.tsx +82 -0
  62. package/.agents/skills/ai-elements/scripts/checkpoint.tsx +110 -0
  63. package/.agents/skills/ai-elements/scripts/code-block-dark.tsx +46 -0
  64. package/.agents/skills/ai-elements/scripts/code-block.tsx +120 -0
  65. package/.agents/skills/ai-elements/scripts/commit.tsx +94 -0
  66. package/.agents/skills/ai-elements/scripts/confirmation-accepted.tsx +40 -0
  67. package/.agents/skills/ai-elements/scripts/confirmation-rejected.tsx +40 -0
  68. package/.agents/skills/ai-elements/scripts/confirmation-request.tsx +54 -0
  69. package/.agents/skills/ai-elements/scripts/confirmation.tsx +55 -0
  70. package/.agents/skills/ai-elements/scripts/context.tsx +45 -0
  71. package/.agents/skills/ai-elements/scripts/conversation.tsx +177 -0
  72. package/.agents/skills/ai-elements/scripts/environment-variables.tsx +62 -0
  73. package/.agents/skills/ai-elements/scripts/file-tree-basic.tsx +18 -0
  74. package/.agents/skills/ai-elements/scripts/file-tree-expanded.tsx +21 -0
  75. package/.agents/skills/ai-elements/scripts/file-tree-selection.tsx +24 -0
  76. package/.agents/skills/ai-elements/scripts/file-tree.tsx +42 -0
  77. package/.agents/skills/ai-elements/scripts/image.tsx +20 -0
  78. package/.agents/skills/ai-elements/scripts/inline-citation.tsx +97 -0
  79. package/.agents/skills/ai-elements/scripts/jsx-preview.tsx +104 -0
  80. package/.agents/skills/ai-elements/scripts/message.tsx +365 -0
  81. package/.agents/skills/ai-elements/scripts/mic-selector.tsx +49 -0
  82. package/.agents/skills/ai-elements/scripts/model-selector.tsx +365 -0
  83. package/.agents/skills/ai-elements/scripts/open-in-chat.tsx +33 -0
  84. package/.agents/skills/ai-elements/scripts/package-info.tsx +51 -0
  85. package/.agents/skills/ai-elements/scripts/persona-command.tsx +110 -0
  86. package/.agents/skills/ai-elements/scripts/persona-glint.tsx +110 -0
  87. package/.agents/skills/ai-elements/scripts/persona-halo.tsx +110 -0
  88. package/.agents/skills/ai-elements/scripts/persona-mana.tsx +110 -0
  89. package/.agents/skills/ai-elements/scripts/persona-obsidian.tsx +110 -0
  90. package/.agents/skills/ai-elements/scripts/persona-opal.tsx +110 -0
  91. package/.agents/skills/ai-elements/scripts/plan.tsx +65 -0
  92. package/.agents/skills/ai-elements/scripts/prompt-input-cursor.tsx +502 -0
  93. package/.agents/skills/ai-elements/scripts/prompt-input-tooltip.tsx +44 -0
  94. package/.agents/skills/ai-elements/scripts/prompt-input.tsx +267 -0
  95. package/.agents/skills/ai-elements/scripts/queue-prompt-input.tsx +394 -0
  96. package/.agents/skills/ai-elements/scripts/queue.tsx +295 -0
  97. package/.agents/skills/ai-elements/scripts/reasoning.tsx +71 -0
  98. package/.agents/skills/ai-elements/scripts/sandbox.tsx +178 -0
  99. package/.agents/skills/ai-elements/scripts/schema-display-basic.tsx +9 -0
  100. package/.agents/skills/ai-elements/scripts/schema-display-body.tsx +20 -0
  101. package/.agents/skills/ai-elements/scripts/schema-display-nested.tsx +23 -0
  102. package/.agents/skills/ai-elements/scripts/schema-display-params.tsx +16 -0
  103. package/.agents/skills/ai-elements/scripts/schema-display.tsx +110 -0
  104. package/.agents/skills/ai-elements/scripts/shimmer-duration.tsx +31 -0
  105. package/.agents/skills/ai-elements/scripts/shimmer-elements.tsx +43 -0
  106. package/.agents/skills/ai-elements/scripts/shimmer.tsx +17 -0
  107. package/.agents/skills/ai-elements/scripts/snippet-plain.tsx +19 -0
  108. package/.agents/skills/ai-elements/scripts/snippet.tsx +25 -0
  109. package/.agents/skills/ai-elements/scripts/sources-custom.tsx +39 -0
  110. package/.agents/skills/ai-elements/scripts/sources.tsx +32 -0
  111. package/.agents/skills/ai-elements/scripts/speech-input.tsx +84 -0
  112. package/.agents/skills/ai-elements/scripts/stack-trace-collapsed.tsx +39 -0
  113. package/.agents/skills/ai-elements/scripts/stack-trace-no-internal.tsx +41 -0
  114. package/.agents/skills/ai-elements/scripts/stack-trace.tsx +58 -0
  115. package/.agents/skills/ai-elements/scripts/suggestion-input.tsx +144 -0
  116. package/.agents/skills/ai-elements/scripts/suggestion.tsx +32 -0
  117. package/.agents/skills/ai-elements/scripts/task.tsx +59 -0
  118. package/.agents/skills/ai-elements/scripts/terminal-basic.tsx +7 -0
  119. package/.agents/skills/ai-elements/scripts/terminal-clear.tsx +19 -0
  120. package/.agents/skills/ai-elements/scripts/terminal-streaming.tsx +38 -0
  121. package/.agents/skills/ai-elements/scripts/terminal.tsx +82 -0
  122. package/.agents/skills/ai-elements/scripts/test-results-basic.tsx +27 -0
  123. package/.agents/skills/ai-elements/scripts/test-results-errors.tsx +51 -0
  124. package/.agents/skills/ai-elements/scripts/test-results-suites.tsx +40 -0
  125. package/.agents/skills/ai-elements/scripts/test-results.tsx +102 -0
  126. package/.agents/skills/ai-elements/scripts/tool-input-available.tsx +31 -0
  127. package/.agents/skills/ai-elements/scripts/tool-input-streaming.tsx +30 -0
  128. package/.agents/skills/ai-elements/scripts/tool-output-available.tsx +80 -0
  129. package/.agents/skills/ai-elements/scripts/tool-output-error.tsx +44 -0
  130. package/.agents/skills/ai-elements/scripts/tool.tsx +222 -0
  131. package/.agents/skills/ai-elements/scripts/transcription.tsx +290 -0
  132. package/.agents/skills/ai-elements/scripts/voice-selector.tsx +245 -0
  133. package/.agents/skills/ai-elements/scripts/web-preview.tsx +115 -0
  134. package/.agents/skills/ai-sdk/SKILL.md +78 -0
  135. package/.agents/skills/ai-sdk/references/ai-gateway.md +66 -0
  136. package/.agents/skills/ai-sdk/references/common-errors.md +443 -0
  137. package/.agents/skills/ai-sdk/references/devtools.md +52 -0
  138. package/.agents/skills/ai-sdk/references/type-safe-agents.md +204 -0
  139. package/.agents/skills/chat-sdk/SKILL.md +240 -0
  140. package/.agents/skills/composio/AGENTS.md +404 -0
  141. package/.agents/skills/composio/SKILL.md +55 -0
  142. package/.agents/skills/composio/rules/_template.md +38 -0
  143. package/.agents/skills/composio/rules/app-auth-configs.md +224 -0
  144. package/.agents/skills/composio/rules/app-auth-popup-ui.md +143 -0
  145. package/.agents/skills/composio/rules/app-connected-accounts.md +240 -0
  146. package/.agents/skills/composio/rules/app-custom-tools.md +220 -0
  147. package/.agents/skills/composio/rules/app-execute-tools.md +202 -0
  148. package/.agents/skills/composio/rules/app-fetch-tools.md +292 -0
  149. package/.agents/skills/composio/rules/app-modifiers.md +148 -0
  150. package/.agents/skills/composio/rules/app-tool-versions.md +343 -0
  151. package/.agents/skills/composio/rules/app-toolkits.md +184 -0
  152. package/.agents/skills/composio/rules/app-user-context.md +222 -0
  153. package/.agents/skills/composio/rules/building-with-composio.md +134 -0
  154. package/.agents/skills/composio/rules/composio-cli.md +223 -0
  155. package/.agents/skills/composio/rules/setup-api-keys.md +230 -0
  156. package/.agents/skills/composio/rules/tr-auth-auto.md +110 -0
  157. package/.agents/skills/composio/rules/tr-auth-connections.md +167 -0
  158. package/.agents/skills/composio/rules/tr-auth-manual.md +161 -0
  159. package/.agents/skills/composio/rules/tr-building-chat-ui.md +348 -0
  160. package/.agents/skills/composio/rules/tr-framework-ai-sdk.md +240 -0
  161. package/.agents/skills/composio/rules/tr-framework-integration.md +818 -0
  162. package/.agents/skills/composio/rules/tr-framework-mastra.md +185 -0
  163. package/.agents/skills/composio/rules/tr-mcp-vs-native.md +248 -0
  164. package/.agents/skills/composio/rules/tr-session-basic.md +82 -0
  165. package/.agents/skills/composio/rules/tr-session-config.md +172 -0
  166. package/.agents/skills/composio/rules/tr-session-lifecycle.md +385 -0
  167. package/.agents/skills/composio/rules/tr-toolkit-query.md +135 -0
  168. package/.agents/skills/composio/rules/tr-userid-best-practices.md +476 -0
  169. package/.agents/skills/composio/rules/triggers-create.md +246 -0
  170. package/.agents/skills/composio/rules/triggers-manage.md +275 -0
  171. package/.agents/skills/composio/rules/triggers-subscribe.md +173 -0
  172. package/.agents/skills/composio/rules/triggers-webhook.md +227 -0
  173. package/.agents/skills/create-auth-skill/SKILL.md +321 -0
  174. package/.agents/skills/design-md/README.md +34 -0
  175. package/.agents/skills/design-md/SKILL.md +172 -0
  176. package/.agents/skills/design-md/examples/DESIGN.md +154 -0
  177. package/.agents/skills/expo-tailwind-setup/SKILL.md +480 -0
  178. package/.agents/skills/expo-tailwind-setup/agents/openai.yaml +4 -0
  179. package/.agents/skills/find-skills/SKILL.md +142 -0
  180. package/.agents/skills/firecrawl/SKILL.md +321 -0
  181. package/.agents/skills/firecrawl/rules/install.md +85 -0
  182. package/.agents/skills/firecrawl/rules/security.md +26 -0
  183. package/.agents/skills/frontend-design/LICENSE.txt +177 -0
  184. package/.agents/skills/frontend-design/SKILL.md +55 -0
  185. package/.agents/skills/linkup-search/SKILL.md +298 -0
  186. package/.agents/skills/mcp-builder/LICENSE.txt +202 -0
  187. package/.agents/skills/mcp-builder/SKILL.md +236 -0
  188. package/.agents/skills/mcp-builder/reference/evaluation.md +602 -0
  189. package/.agents/skills/mcp-builder/reference/mcp_best_practices.md +249 -0
  190. package/.agents/skills/mcp-builder/reference/node_mcp_server.md +970 -0
  191. package/.agents/skills/mcp-builder/reference/python_mcp_server.md +719 -0
  192. package/.agents/skills/mcp-builder/scripts/connections.py +151 -0
  193. package/.agents/skills/mcp-builder/scripts/evaluation.py +373 -0
  194. package/.agents/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  195. package/.agents/skills/mcp-builder/scripts/requirements.txt +2 -0
  196. package/.agents/skills/mobile-android-design/SKILL.md +101 -0
  197. package/.agents/skills/mobile-android-design/references/android-navigation.md +698 -0
  198. package/.agents/skills/mobile-android-design/references/compose-components.md +796 -0
  199. package/.agents/skills/mobile-android-design/references/details.md +337 -0
  200. package/.agents/skills/mobile-android-design/references/material3-theming.md +604 -0
  201. package/.agents/skills/mobile-ios-design/SKILL.md +259 -0
  202. package/.agents/skills/mobile-ios-design/references/hig-patterns.md +529 -0
  203. package/.agents/skills/mobile-ios-design/references/ios-navigation.md +556 -0
  204. package/.agents/skills/mobile-ios-design/references/swiftui-components.md +575 -0
  205. package/.agents/skills/neon-drizzle/SKILL.md +81 -0
  206. package/.agents/skills/neon-drizzle/guides/existing-project.md +398 -0
  207. package/.agents/skills/neon-drizzle/guides/new-project.md +312 -0
  208. package/.agents/skills/neon-drizzle/guides/schema-only.md +415 -0
  209. package/.agents/skills/neon-drizzle/guides/troubleshooting.md +539 -0
  210. package/.agents/skills/neon-drizzle/references/adapters.md +478 -0
  211. package/.agents/skills/neon-drizzle/references/migrations.md +652 -0
  212. package/.agents/skills/neon-drizzle/references/query-patterns.md +761 -0
  213. package/.agents/skills/neon-drizzle/scripts/generate-schema.ts +77 -0
  214. package/.agents/skills/neon-drizzle/scripts/run-migration.ts +133 -0
  215. package/.agents/skills/neon-drizzle/templates/db-http.ts +6 -0
  216. package/.agents/skills/neon-drizzle/templates/db-websocket.ts +24 -0
  217. package/.agents/skills/neon-drizzle/templates/drizzle-config.ts +96 -0
  218. package/.agents/skills/neon-drizzle/templates/schema-example.ts +231 -0
  219. package/.agents/skills/neon-postgres/SKILL.md +376 -0
  220. package/.agents/skills/next-best-practices/SKILL.md +152 -0
  221. package/.agents/skills/next-best-practices/async-patterns.md +87 -0
  222. package/.agents/skills/next-best-practices/bundling.md +180 -0
  223. package/.agents/skills/next-best-practices/data-patterns.md +297 -0
  224. package/.agents/skills/next-best-practices/debug-tricks.md +105 -0
  225. package/.agents/skills/next-best-practices/directives.md +73 -0
  226. package/.agents/skills/next-best-practices/error-handling.md +227 -0
  227. package/.agents/skills/next-best-practices/file-conventions.md +140 -0
  228. package/.agents/skills/next-best-practices/font.md +245 -0
  229. package/.agents/skills/next-best-practices/functions.md +108 -0
  230. package/.agents/skills/next-best-practices/hydration-error.md +91 -0
  231. package/.agents/skills/next-best-practices/image.md +173 -0
  232. package/.agents/skills/next-best-practices/metadata.md +301 -0
  233. package/.agents/skills/next-best-practices/parallel-routes.md +287 -0
  234. package/.agents/skills/next-best-practices/route-handlers.md +146 -0
  235. package/.agents/skills/next-best-practices/rsc-boundaries.md +159 -0
  236. package/.agents/skills/next-best-practices/runtime-selection.md +39 -0
  237. package/.agents/skills/next-best-practices/scripts.md +141 -0
  238. package/.agents/skills/next-best-practices/self-hosting.md +371 -0
  239. package/.agents/skills/next-best-practices/suspense-boundaries.md +67 -0
  240. package/.agents/skills/playwright-best-practices/SKILL.md +303 -0
  241. package/.agents/skills/playwright-cli/SKILL.md +404 -0
  242. package/.agents/skills/playwright-cli/references/element-attributes.md +23 -0
  243. package/.agents/skills/playwright-cli/references/playwright-tests.md +39 -0
  244. package/.agents/skills/playwright-cli/references/request-mocking.md +87 -0
  245. package/.agents/skills/playwright-cli/references/running-code.md +241 -0
  246. package/.agents/skills/playwright-cli/references/session-management.md +225 -0
  247. package/.agents/skills/playwright-cli/references/spec-driven-testing.md +305 -0
  248. package/.agents/skills/playwright-cli/references/storage-state.md +275 -0
  249. package/.agents/skills/playwright-cli/references/test-generation.md +134 -0
  250. package/.agents/skills/playwright-cli/references/tracing.md +139 -0
  251. package/.agents/skills/playwright-cli/references/video-recording.md +143 -0
  252. package/.agents/skills/prisma-client-api/SKILL.md +216 -0
  253. package/.agents/skills/prisma-client-api/references/client-methods.md +223 -0
  254. package/.agents/skills/prisma-client-api/references/constructor.md +208 -0
  255. package/.agents/skills/prisma-client-api/references/filters.md +256 -0
  256. package/.agents/skills/prisma-client-api/references/model-queries.md +281 -0
  257. package/.agents/skills/prisma-client-api/references/query-options.md +276 -0
  258. package/.agents/skills/prisma-client-api/references/raw-queries.md +194 -0
  259. package/.agents/skills/prisma-client-api/references/relations.md +308 -0
  260. package/.agents/skills/prisma-client-api/references/transactions.md +184 -0
  261. package/.agents/skills/prisma-database-setup/SKILL.md +192 -0
  262. package/.agents/skills/prisma-database-setup/references/cockroachdb.md +89 -0
  263. package/.agents/skills/prisma-database-setup/references/mongodb.md +90 -0
  264. package/.agents/skills/prisma-database-setup/references/mysql.md +126 -0
  265. package/.agents/skills/prisma-database-setup/references/postgresql.md +92 -0
  266. package/.agents/skills/prisma-database-setup/references/prisma-client-setup.md +47 -0
  267. package/.agents/skills/prisma-database-setup/references/prisma-postgres.md +130 -0
  268. package/.agents/skills/prisma-database-setup/references/sqlite.md +106 -0
  269. package/.agents/skills/prisma-database-setup/references/sqlserver.md +94 -0
  270. package/.agents/skills/prisma-postgres/SKILL.md +127 -0
  271. package/.agents/skills/prisma-postgres/references/console-and-connections.md +67 -0
  272. package/.agents/skills/prisma-postgres/references/create-db-cli.md +136 -0
  273. package/.agents/skills/prisma-postgres/references/management-api-sdk.md +56 -0
  274. package/.agents/skills/prisma-postgres/references/management-api.md +61 -0
  275. package/.agents/skills/remotion-best-practices/SKILL.md +340 -0
  276. package/.agents/skills/remotion-best-practices/rules/3d.md +86 -0
  277. package/.agents/skills/remotion-best-practices/rules/assets/charts-bar-chart.tsx +173 -0
  278. package/.agents/skills/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +100 -0
  279. package/.agents/skills/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +103 -0
  280. package/.agents/skills/remotion-best-practices/rules/audio-visualization.md +198 -0
  281. package/.agents/skills/remotion-best-practices/rules/audio.md +169 -0
  282. package/.agents/skills/remotion-best-practices/rules/calculate-metadata.md +134 -0
  283. package/.agents/skills/remotion-best-practices/rules/compositions.md +133 -0
  284. package/.agents/skills/remotion-best-practices/rules/display-captions.md +184 -0
  285. package/.agents/skills/remotion-best-practices/rules/ffmpeg.md +34 -0
  286. package/.agents/skills/remotion-best-practices/rules/get-audio-duration.md +58 -0
  287. package/.agents/skills/remotion-best-practices/rules/get-video-dimensions.md +68 -0
  288. package/.agents/skills/remotion-best-practices/rules/get-video-duration.md +60 -0
  289. package/.agents/skills/remotion-best-practices/rules/gifs.md +141 -0
  290. package/.agents/skills/remotion-best-practices/rules/google-fonts.md +72 -0
  291. package/.agents/skills/remotion-best-practices/rules/html-in-canvas.md +122 -0
  292. package/.agents/skills/remotion-best-practices/rules/images.md +71 -0
  293. package/.agents/skills/remotion-best-practices/rules/import-srt-captions.md +69 -0
  294. package/.agents/skills/remotion-best-practices/rules/light-leaks.md +73 -0
  295. package/.agents/skills/remotion-best-practices/rules/local-fonts.md +65 -0
  296. package/.agents/skills/remotion-best-practices/rules/lottie.md +70 -0
  297. package/.agents/skills/remotion-best-practices/rules/maplibre.md +458 -0
  298. package/.agents/skills/remotion-best-practices/rules/measuring-dom-nodes.md +34 -0
  299. package/.agents/skills/remotion-best-practices/rules/measuring-text.md +140 -0
  300. package/.agents/skills/remotion-best-practices/rules/parameters.md +109 -0
  301. package/.agents/skills/remotion-best-practices/rules/sequencing.md +144 -0
  302. package/.agents/skills/remotion-best-practices/rules/sfx.md +30 -0
  303. package/.agents/skills/remotion-best-practices/rules/silence-detection.md +71 -0
  304. package/.agents/skills/remotion-best-practices/rules/subtitles.md +36 -0
  305. package/.agents/skills/remotion-best-practices/rules/tailwind.md +11 -0
  306. package/.agents/skills/remotion-best-practices/rules/text-animations.md +20 -0
  307. package/.agents/skills/remotion-best-practices/rules/timing.md +136 -0
  308. package/.agents/skills/remotion-best-practices/rules/transcribe-captions.md +70 -0
  309. package/.agents/skills/remotion-best-practices/rules/transitions.md +197 -0
  310. package/.agents/skills/remotion-best-practices/rules/transparent-videos.md +106 -0
  311. package/.agents/skills/remotion-best-practices/rules/trimming.md +51 -0
  312. package/.agents/skills/remotion-best-practices/rules/videos.md +171 -0
  313. package/.agents/skills/remotion-best-practices/rules/voiceover.md +99 -0
  314. package/.agents/skills/remotion-render/SKILL.md +212 -0
  315. package/.agents/skills/skill-creator/LICENSE.txt +202 -0
  316. package/.agents/skills/skill-creator/SKILL.md +485 -0
  317. package/.agents/skills/skill-creator/agents/analyzer.md +274 -0
  318. package/.agents/skills/skill-creator/agents/comparator.md +202 -0
  319. package/.agents/skills/skill-creator/agents/grader.md +223 -0
  320. package/.agents/skills/skill-creator/assets/eval_review.html +146 -0
  321. package/.agents/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  322. package/.agents/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  323. package/.agents/skills/skill-creator/references/schemas.md +430 -0
  324. package/.agents/skills/skill-creator/scripts/__init__.py +0 -0
  325. package/.agents/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  326. package/.agents/skills/skill-creator/scripts/generate_report.py +326 -0
  327. package/.agents/skills/skill-creator/scripts/improve_description.py +247 -0
  328. package/.agents/skills/skill-creator/scripts/package_skill.py +136 -0
  329. package/.agents/skills/skill-creator/scripts/quick_validate.py +103 -0
  330. package/.agents/skills/skill-creator/scripts/run_eval.py +310 -0
  331. package/.agents/skills/skill-creator/scripts/run_loop.py +328 -0
  332. package/.agents/skills/skill-creator/scripts/utils.py +47 -0
  333. package/.agents/skills/stripe-best-practices/SKILL.md +54 -0
  334. package/.agents/skills/stripe-best-practices/references/billing.md +58 -0
  335. package/.agents/skills/stripe-best-practices/references/connect.md +173 -0
  336. package/.agents/skills/stripe-best-practices/references/payments.md +79 -0
  337. package/.agents/skills/stripe-best-practices/references/security.md +109 -0
  338. package/.agents/skills/stripe-best-practices/references/tax.md +37 -0
  339. package/.agents/skills/stripe-best-practices/references/treasury.md +16 -0
  340. package/.agents/skills/stripe-projects/SKILL.md +132 -0
  341. package/.agents/skills/supabase/CHANGELOG.md +35 -0
  342. package/.agents/skills/supabase/SKILL.md +135 -0
  343. package/.agents/skills/supabase/assets/feedback-issue-template.md +17 -0
  344. package/.agents/skills/supabase/references/skill-feedback.md +17 -0
  345. package/.agents/skills/supabase-postgres-best-practices/CHANGELOG.md +29 -0
  346. package/.agents/skills/supabase-postgres-best-practices/SKILL.md +64 -0
  347. package/.agents/skills/supabase-postgres-best-practices/references/_contributing.md +170 -0
  348. package/.agents/skills/supabase-postgres-best-practices/references/_sections.md +39 -0
  349. package/.agents/skills/supabase-postgres-best-practices/references/_template.md +34 -0
  350. package/.agents/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
  351. package/.agents/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
  352. package/.agents/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
  353. package/.agents/skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
  354. package/.agents/skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
  355. package/.agents/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
  356. package/.agents/skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
  357. package/.agents/skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
  358. package/.agents/skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
  359. package/.agents/skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
  360. package/.agents/skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
  361. package/.agents/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
  362. package/.agents/skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
  363. package/.agents/skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
  364. package/.agents/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
  365. package/.agents/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
  366. package/.agents/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
  367. package/.agents/skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
  368. package/.agents/skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
  369. package/.agents/skills/supabase-postgres-best-practices/references/query-index-types.md +48 -0
  370. package/.agents/skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
  371. package/.agents/skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
  372. package/.agents/skills/supabase-postgres-best-practices/references/schema-constraints.md +80 -0
  373. package/.agents/skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
  374. package/.agents/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
  375. package/.agents/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
  376. package/.agents/skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
  377. package/.agents/skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
  378. package/.agents/skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
  379. package/.agents/skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
  380. package/.agents/skills/supabase-postgres-best-practices/references/security-rls-performance.md +63 -0
  381. package/.agents/skills/supermemory/LICENSE +201 -0
  382. package/.agents/skills/supermemory/README.md +221 -0
  383. package/.agents/skills/supermemory/SKILL.md +172 -0
  384. package/.agents/skills/supermemory/references/api-reference.md +591 -0
  385. package/.agents/skills/supermemory/references/architecture.md +557 -0
  386. package/.agents/skills/supermemory/references/quickstart.md +293 -0
  387. package/.agents/skills/supermemory/references/sdk-guide.md +655 -0
  388. package/.agents/skills/supermemory/references/use-cases.md +1033 -0
  389. package/.agents/skills/supermemory-cli/SKILL.md +490 -0
  390. package/.agents/skills/tdd/SKILL.md +108 -0
  391. package/.agents/skills/tdd/mocking.md +59 -0
  392. package/.agents/skills/tdd/refactoring.md +10 -0
  393. package/.agents/skills/tdd/tests.md +61 -0
  394. package/.agents/skills/ui-ux-pro-max/SKILL.md +661 -0
  395. package/.agents/skills/ui-ux-pro-max/data +1 -0
  396. package/.agents/skills/ui-ux-pro-max/scripts +1 -0
  397. package/.agents/skills/vercel-react-native-skills/AGENTS.md +2897 -0
  398. package/.agents/skills/vercel-react-native-skills/README.md +165 -0
  399. package/.agents/skills/vercel-react-native-skills/SKILL.md +121 -0
  400. package/.agents/skills/vercel-react-native-skills/metadata.json +16 -0
  401. package/.agents/skills/vercel-react-native-skills/rules/_sections.md +86 -0
  402. package/.agents/skills/vercel-react-native-skills/rules/_template.md +28 -0
  403. package/.agents/skills/vercel-react-native-skills/rules/animation-derived-value.md +53 -0
  404. package/.agents/skills/vercel-react-native-skills/rules/animation-gesture-detector-press.md +95 -0
  405. package/.agents/skills/vercel-react-native-skills/rules/animation-gpu-properties.md +65 -0
  406. package/.agents/skills/vercel-react-native-skills/rules/design-system-compound-components.md +66 -0
  407. package/.agents/skills/vercel-react-native-skills/rules/fonts-config-plugin.md +71 -0
  408. package/.agents/skills/vercel-react-native-skills/rules/imports-design-system-folder.md +68 -0
  409. package/.agents/skills/vercel-react-native-skills/rules/js-hoist-intl.md +61 -0
  410. package/.agents/skills/vercel-react-native-skills/rules/list-performance-callbacks.md +44 -0
  411. package/.agents/skills/vercel-react-native-skills/rules/list-performance-function-references.md +132 -0
  412. package/.agents/skills/vercel-react-native-skills/rules/list-performance-images.md +53 -0
  413. package/.agents/skills/vercel-react-native-skills/rules/list-performance-inline-objects.md +97 -0
  414. package/.agents/skills/vercel-react-native-skills/rules/list-performance-item-expensive.md +94 -0
  415. package/.agents/skills/vercel-react-native-skills/rules/list-performance-item-memo.md +82 -0
  416. package/.agents/skills/vercel-react-native-skills/rules/list-performance-item-types.md +104 -0
  417. package/.agents/skills/vercel-react-native-skills/rules/list-performance-virtualize.md +67 -0
  418. package/.agents/skills/vercel-react-native-skills/rules/monorepo-native-deps-in-app.md +46 -0
  419. package/.agents/skills/vercel-react-native-skills/rules/monorepo-single-dependency-versions.md +63 -0
  420. package/.agents/skills/vercel-react-native-skills/rules/navigation-native-navigators.md +188 -0
  421. package/.agents/skills/vercel-react-native-skills/rules/react-compiler-destructure-functions.md +50 -0
  422. package/.agents/skills/vercel-react-native-skills/rules/react-compiler-reanimated-shared-values.md +48 -0
  423. package/.agents/skills/vercel-react-native-skills/rules/react-state-dispatcher.md +91 -0
  424. package/.agents/skills/vercel-react-native-skills/rules/react-state-fallback.md +56 -0
  425. package/.agents/skills/vercel-react-native-skills/rules/react-state-minimize.md +65 -0
  426. package/.agents/skills/vercel-react-native-skills/rules/rendering-no-falsy-and.md +74 -0
  427. package/.agents/skills/vercel-react-native-skills/rules/rendering-text-in-text-component.md +36 -0
  428. package/.agents/skills/vercel-react-native-skills/rules/scroll-position-no-state.md +82 -0
  429. package/.agents/skills/vercel-react-native-skills/rules/state-ground-truth.md +80 -0
  430. package/.agents/skills/vercel-react-native-skills/rules/ui-expo-image.md +66 -0
  431. package/.agents/skills/vercel-react-native-skills/rules/ui-image-gallery.md +104 -0
  432. package/.agents/skills/vercel-react-native-skills/rules/ui-measure-views.md +78 -0
  433. package/.agents/skills/vercel-react-native-skills/rules/ui-menus.md +174 -0
  434. package/.agents/skills/vercel-react-native-skills/rules/ui-native-modals.md +77 -0
  435. package/.agents/skills/vercel-react-native-skills/rules/ui-pressable.md +61 -0
  436. package/.agents/skills/vercel-react-native-skills/rules/ui-safe-area-scroll.md +65 -0
  437. package/.agents/skills/vercel-react-native-skills/rules/ui-scrollview-content-inset.md +45 -0
  438. package/.agents/skills/vercel-react-native-skills/rules/ui-styling.md +87 -0
  439. package/.agents/skills/web-design-guidelines/SKILL.md +39 -0
  440. package/dist/cli/update.d.ts.map +1 -1
  441. package/dist/cli/update.js +19 -4
  442. package/dist/cli/update.js.map +1 -1
  443. package/dist/index.js +1 -1
  444. package/dist/tools/daytona-browser.tool.js +1 -1
  445. package/dist/tools/daytona-browser.tool.js.map +1 -1
  446. package/package.json +3 -2
@@ -0,0 +1,222 @@
1
+ ---
2
+ title: User Context and ID Patterns for Applications
3
+ impact: HIGH
4
+ description: Critical patterns for user identification, multi-tenancy, and data isolation in production applications
5
+ tags: [user-context, security, multi-tenancy, isolation, production]
6
+ ---
7
+
8
+ # User Context and ID Patterns
9
+
10
+ Every Composio operation requires a `userId` parameter for security and data isolation. Users can only access their own connected accounts.
11
+
12
+ ## The 'default' User ID
13
+
14
+ `default` refers to your project's default account.
15
+
16
+ **Only use 'default' for:**
17
+ - Testing and development
18
+ - Single-user applications
19
+ - Internal tools with no external users
20
+
21
+ **Never use in production multi-user apps** - it bypasses user isolation.
22
+
23
+ ## Production User ID Patterns
24
+
25
+ ### Database UUID (Recommended)
26
+
27
+ Use your database's primary key:
28
+
29
+ ```typescript
30
+ const userId = user.id; // "550e8400-e29b-41d4-a716-446655440000"
31
+
32
+ await composio.tools.execute('GITHUB_GET_REPO', {
33
+ userId: userId,
34
+ arguments: { owner: 'example', repo: 'repo' },
35
+ });
36
+ ```
37
+
38
+ **Pros:** Stable, immutable, already exists, no mapping needed
39
+
40
+ ### External Auth ID (Acceptable)
41
+
42
+ Use IDs from Auth0, Firebase, etc:
43
+
44
+ ```typescript
45
+ const userId = user.externalId; // "auth0|507f1f77bcf86cd799439011"
46
+ // Or with prefix
47
+ const userId = `user_${user.id}`; // "user_12345"
48
+ ```
49
+
50
+ **Pros:** Works with external auth, human-readable, allows namespacing
51
+ **Cons:** May require mapping, usernames can change
52
+
53
+ ### Email (Not Recommended)
54
+
55
+ ```typescript
56
+ const userId = user.email; // "user@example.com"
57
+ ```
58
+
59
+ **Only use when:**
60
+ - Email is guaranteed immutable
61
+ - No other unique identifier available
62
+ - SSO requires email-based identification
63
+
64
+ **Cons:** Emails can change, privacy concerns
65
+
66
+ ## Organization-Based Applications
67
+
68
+ For team/org-wide tool access, use organization ID as `userId`:
69
+
70
+ ```typescript
71
+ // All users in org share same connected accounts
72
+ const userId = organization.id; // "org_550e8400..."
73
+
74
+ await composio.tools.execute('SLACK_SEND_MESSAGE', {
75
+ userId: userId, // organization ID, not individual user
76
+ arguments: { channel: '#general', text: 'Team message' },
77
+ });
78
+ ```
79
+
80
+ **Use organization IDs when:**
81
+ - Team/org tools (Slack, MS Teams, Jira)
82
+ - Enterprise apps with IT admin connections
83
+ - Shared resources across users
84
+ - Role-based access at org level
85
+
86
+ **Example:**
87
+
88
+ ```typescript
89
+ // Admin connects Slack for entire org
90
+ async function connectOrgToSlack(orgId: string) {
91
+ const request = await composio.connectedAccounts.link(orgId, 'slack');
92
+ return request.redirectUrl;
93
+ }
94
+
95
+ // Any user in org can use connected tools
96
+ async function sendMessage(orgId: string, message: string) {
97
+ return await composio.tools.execute('SLACK_SEND_MESSAGE', {
98
+ userId: orgId,
99
+ arguments: { channel: '#general', text: message },
100
+ });
101
+ }
102
+
103
+ // Check org connections
104
+ async function listOrgConnections(orgId: string) {
105
+ return await composio.connectedAccounts.list({
106
+ userIds: [orgId],
107
+ });
108
+ }
109
+ ```
110
+
111
+ ## Shared vs. Isolated Connections
112
+
113
+ ### Isolated (User-Level)
114
+
115
+ Each user has their own connections:
116
+
117
+ ```typescript
118
+ await composio.connectedAccounts.link('user_123', 'github_config');
119
+ await composio.connectedAccounts.link('user_456', 'github_config');
120
+
121
+ // Each execution uses that user's account
122
+ await composio.tools.execute('GITHUB_GET_REPO', {
123
+ userId: 'user_123', // Uses user_123's GitHub
124
+ arguments: { ... },
125
+ });
126
+ ```
127
+
128
+ **Use for:** Personal integrations, individual credentials, privacy-critical
129
+
130
+ ### Shared (Organization-Level)
131
+
132
+ All users share organization connections:
133
+
134
+ ```typescript
135
+ await composio.connectedAccounts.link('org_acme', 'github_config');
136
+
137
+ // All org users use same connection
138
+ await composio.tools.execute('GITHUB_GET_REPO', {
139
+ userId: 'org_acme', // All users share
140
+ arguments: { ... },
141
+ });
142
+ ```
143
+
144
+ **Use for:** Org-wide access, centralized credentials, simplified administration
145
+
146
+ ## Security Best Practices
147
+
148
+ ### Never Expose User IDs to Frontend
149
+
150
+ ```typescript
151
+ // ❌ DON'T: Allow frontend to specify userId
152
+ app.post('/execute-tool', async (req, res) => {
153
+ await composio.tools.execute(req.body.tool, {
154
+ userId: req.body.userId, // SECURITY RISK
155
+ arguments: req.body.arguments,
156
+ });
157
+ });
158
+
159
+ // ✅ DO: Derive userId from authenticated session
160
+ app.post('/execute-tool', async (req, res) => {
161
+ const userId = req.user.id; // From auth session
162
+ await composio.tools.execute(req.body.tool, {
163
+ userId: userId,
164
+ arguments: req.body.arguments,
165
+ });
166
+ });
167
+ ```
168
+
169
+ ### Validate User Ownership
170
+
171
+ ```typescript
172
+ async function executeForUser(authenticatedUserId, targetUserId, tool, args) {
173
+ if (authenticatedUserId !== targetUserId) {
174
+ throw new Error('Unauthorized');
175
+ }
176
+ return await composio.tools.execute(tool, {
177
+ userId: targetUserId,
178
+ arguments: args,
179
+ });
180
+ }
181
+ ```
182
+
183
+ ## Common Patterns
184
+
185
+ ### Express Middleware
186
+
187
+ ```typescript
188
+ app.use((req, res, next) => {
189
+ req.userId = req.user.id; // From authenticated session
190
+ next();
191
+ });
192
+
193
+ app.post('/execute-tool', async (req, res) => {
194
+ const result = await composio.tools.execute(req.body.tool, {
195
+ userId: req.userId,
196
+ arguments: req.body.arguments,
197
+ });
198
+ res.json(result);
199
+ });
200
+ ```
201
+
202
+ ### Debug User Context
203
+
204
+ ```typescript
205
+ const accounts = await composio.connectedAccounts.list({
206
+ userIds: [userId],
207
+ });
208
+
209
+ console.log(`User ${userId} has ${accounts.items.length} accounts`);
210
+ accounts.items.forEach(account => {
211
+ console.log(`- ${account.toolkit.slug}: ${account.status}`);
212
+ });
213
+ ```
214
+
215
+ ## Key Points
216
+
217
+ - **Use database UUIDs** - Most stable and reliable
218
+ - **Never expose userId** - Always derive from authenticated session
219
+ - **Validate ownership** - Ensure users only access their data
220
+ - **Use consistent format** - Pick one pattern and stick to it
221
+ - **Organization IDs** - For team-wide tool access
222
+ - **Handle changes gracefully** - Maintain mapping if IDs can change
@@ -0,0 +1,134 @@
1
+ ---
2
+ title: Building Apps and Agents with Composio
3
+ impact: HIGH
4
+ description: SDK-based guide for building AI agents and applications that integrate with external tools via Composio
5
+ tags: [composio, sdk, agents, apps, typescript, python, frameworks]
6
+ ---
7
+
8
+ # Building Apps and Agents with Composio
9
+
10
+ Use the Composio SDK to build AI agents, chat apps, and backend services that integrate with 200+ external tools.
11
+
12
+ ## Project Setup
13
+
14
+ Run inside your project directory to initialize and store the API key:
15
+ ```bash
16
+ composio init
17
+ ```
18
+
19
+ ## Install the SDK
20
+
21
+ **TypeScript**
22
+ ```bash
23
+ pnpm install @composio/core@latest
24
+ ```
25
+
26
+ Provider packages for agentic frameworks:
27
+ - `@composio/vercel` — Vercel AI SDK
28
+ - `@composio/openai-agents` — OpenAI Agents
29
+ - `@composio/langchain` — LangChain
30
+ - `@composio/mastra` — Mastra
31
+ - `@composio/claude-agent-sdk` — Claude Agent SDK
32
+
33
+ **Python**
34
+ ```bash
35
+ pip install composio
36
+ ```
37
+
38
+ Provider packages for agentic frameworks:
39
+ - `composio-openai-agents` — OpenAI Agents
40
+ - `composio-langchain` — LangChain
41
+ - `composio-langgraph` — LangGraph
42
+ - `composio-crewai` — CrewAI
43
+ - `composio-claude-agent-sdk` — Claude Agent SDK
44
+ - `composio-google-adk` — Google ADK
45
+
46
+ Pass the provider into the Composio constructor:
47
+ ```typescript
48
+ import { Composio } from '@composio/core'
49
+ import { VercelProvider } from '@composio/vercel'
50
+
51
+ const composio = new Composio({ provider: new VercelProvider() })
52
+ ```
53
+ ```python
54
+ from composio import Composio
55
+ from composio_langchain import LangchainProvider
56
+
57
+ composio = Composio(provider=LangchainProvider())
58
+ ```
59
+
60
+ ---
61
+
62
+ ## Building Agents
63
+
64
+ Use Tool Router to create isolated MCP sessions per user with scoped tool access and automatic auth management. Compatible with any AI framework.
65
+
66
+ ### Session Management
67
+ - [User ID Best Practices](tr-userid-best-practices.md) — choose user IDs for security and isolation
68
+ - [Creating Basic Sessions](tr-session-basic.md) — initialize Tool Router sessions
69
+ - [Session Lifecycle](tr-session-lifecycle.md) — when to create vs reuse sessions
70
+ - [Session Configuration](tr-session-config.md) — configure toolkits, tools, and filters
71
+ - [Using Native Tools](tr-mcp-vs-native.md) — prefer native tools for performance and control
72
+
73
+ ### Authentication Flows
74
+ - [Auto Authentication in Chat](tr-auth-auto.md) — enable in-chat auth flows
75
+ - [Manual Authorization](tr-auth-manual.md) — use `session.authorize()` for explicit flows
76
+ - [Connection Management](tr-auth-connections.md) — configure `manageConnections`, `waitForConnections`, and callback URLs
77
+
78
+ ### Toolkit Querying & UI Building
79
+ - [Building Chat UIs](tr-building-chat-ui.md) — toolkit selection, connection management, and session handling
80
+ - [Query Toolkit States](tr-toolkit-query.md) — use `session.toolkits()` to check connections and build connection UIs
81
+
82
+ ### Framework Integrations
83
+ - [Framework Integration](tr-framework-integration.md) — LangChain, OpenAI Agents, general patterns
84
+ - [Vercel AI SDK](tr-framework-ai-sdk.md) — native tools, MCP, and React
85
+ - [Mastra](tr-framework-mastra.md) — Mastra agents with native tools and MCP
86
+
87
+ ### Event-Driven Agents (Triggers)
88
+ - [Creating Triggers](triggers-create.md) — set up trigger instances for real-time events
89
+ - [Subscribing to Events](triggers-subscribe.md) — listen to trigger events in real-time
90
+ - [Webhook Verification](triggers-webhook.md) — verify and process incoming webhook payloads
91
+ - [Managing Triggers](triggers-manage.md) — enable, disable, update, and list triggers
92
+
93
+ ---
94
+
95
+ ## Building Apps
96
+
97
+ Direct tool execution without agent frameworks — full control over auth, execution, and resource management. If building apps with agentic abilities, make sure the auth configs match the session's auth configs.
98
+
99
+ ### Core Operations
100
+ - [Fetching Tools](app-fetch-tools.md) — get tools with filters and search
101
+ - [Direct Tool Execution](app-execute-tools.md) — execute tools manually with parameters
102
+ - [Tool Version Management](app-tool-versions.md) — version pinning strategies for stability
103
+
104
+ ### Resource Management
105
+ - [Connected Accounts CRUD](app-connected-accounts.md) — create, read, update, delete connected accounts
106
+ - [Auth Config Management](app-auth-configs.md) — manage authentication configurations
107
+ - [Toolkit Management](app-toolkits.md) — query toolkits, categories, and auth requirements
108
+ - [Auth Popup UI](app-auth-popup-ui.md) — build popup-based OAuth flows
109
+
110
+ ### Extensibility
111
+ - [Tool Modifiers](app-modifiers.md) — schema modification and execution hooks for logging and modifications
112
+
113
+ ### User Context & Multi-Tenancy
114
+ - [User ID Patterns](app-user-context.md) — user vs organization IDs, shared vs isolated connections
115
+
116
+ ### Event-Driven Applications
117
+ - [Creating Triggers](triggers-create.md) — set up trigger instances
118
+ - [Subscribing to Events](triggers-subscribe.md) — listen to events in real-time
119
+ - [Webhook Verification](triggers-webhook.md) — verify incoming webhooks
120
+ - [Managing Triggers](triggers-manage.md) — enable, disable, update triggers
121
+
122
+ ---
123
+
124
+ ## Verify Tool Slugs Before Use
125
+
126
+ Never guess toolkit, tool, or trigger names. Always verify:
127
+
128
+ ```bash
129
+ composio search "send email"
130
+ composio manage tools info "GMAIL_SEND_EMAIL"
131
+ composio manage toolkits info "gmail"
132
+ ```
133
+
134
+ Using incorrect slugs causes runtime errors.
@@ -0,0 +1,223 @@
1
+ ---
2
+ title: Composio CLI Guide
3
+ impact: HIGH
4
+ description: Use the Composio CLI to take actions on external apps directly - no code needed
5
+ tags: [cli, composio, tools, toolkits, auth, connected-accounts, direct-use]
6
+ ---
7
+
8
+ # Composio CLI Guide
9
+
10
+ Use the Composio CLI to search, connect, and execute tools directly — no code writing required. Ideal for agents taking actions on behalf of the user.
11
+
12
+ ## Prerequisites (first-time setup)
13
+
14
+ If the CLI is not installed or the user is not authenticated:
15
+
16
+ ```bash
17
+ # Install
18
+ curl -fsSL https://composio.dev/install | bash
19
+ composio --version # verify
20
+
21
+ # Authenticate
22
+ composio login # OAuth flow; interactive org/project picker after login (use -y to skip)
23
+ composio whoami # verify org_id, project_id, user_id (API keys are never displayed)
24
+ # Run upgrade in case you run into errors or starting with a new project
25
+ composio upgrade
26
+ ```
27
+
28
+ > **Note**: Use `whoami` only to verify login status — do not hardcode these values in code. `whoami` shows hints for `composio manage orgs switch` and `composio init` when relevant.
29
+
30
+ **Login behavior**: By default, `composio login` shows an interactive org/project picker after OAuth. Use `composio login -y` to skip the picker and use session defaults. JSON output is emitted only after the picker finishes (or immediately with `-y`), so piped/scripted usage gets the correct `org_id` and `project_id`.
31
+
32
+ **Agent login (no direct browser access)**: For agents that cannot open a browser for the user, use a two-step flow:
33
+
34
+ 1. **Get login URL and session key** — Print login URL and JSON (jq-parseable) then exit without opening browser or waiting:
35
+ ```bash
36
+ composio login --no-wait | jq
37
+ ```
38
+ Share the login URL with the agent's user to complete login in their browser.
39
+
40
+ 2. **Complete login with session key** — Use the `cli_key` from the previous output to check if the user has logged in:
41
+ ```bash
42
+ composio login --key "<cli_key>"
43
+ ```
44
+ Without `--no-wait`: polls until the session is linked (same as browser flow after printing URL).
45
+ With `--no-wait`: checks once and fails if not linked. For agents, once the user completes login, run with `--no-wait` to avoid blocking.
46
+
47
+ ## Primary Workflow: search → link → execute
48
+
49
+ ### Step 1 — Find the right tool
50
+
51
+ ```bash
52
+ composio search "send an email"
53
+ composio search "create github issue"
54
+ composio search "post slack message"
55
+ ```
56
+
57
+ The search results include connection status, so you can see immediately if the user is already connected to the required app.
58
+
59
+ > **Important**: Do not trim the output of `composio search` (e.g. with `head`). Use the full results to pick the right tool — truncating can hide the best match.
60
+
61
+ ### Step 2 — Connect an account (if needed)
62
+
63
+ If the user is not connected to the app, link their account:
64
+
65
+ ```bash
66
+ composio link gmail
67
+ composio link github
68
+ composio link slack
69
+ ```
70
+
71
+ This opens an OAuth flow or prompts for credentials. Only needed once per app. By default, `composio link` waits until the connected account is ACTIVE (opens browser, polls). Use `--no-wait` for scripted or agent usage: it prints link info and JSON to stdout (JQ-friendly) and exits immediately. Output includes `status`, `connected_account_id`, `redirect_url`, and `toolkit`.
72
+
73
+ ### Step 3 — Execute the tool
74
+
75
+ ```bash
76
+ composio execute GMAIL_SEND_EMAIL --data '{"recipient_email":"you@example.com","subject":"Hello","body":"Test"}'
77
+ composio execute GITHUB_CREATE_AN_ISSUE --data '{"owner":"acme","repo":"my-repo","title":"Bug report"}'
78
+ ```
79
+ To see a tool's input parameters before executing:
80
+ ```bash
81
+ composio execute GMAIL_SEND_EMAIL --help
82
+ ```
83
+
84
+ ### Step 4 — Listen for events (optional)
85
+
86
+ ```bash
87
+ composio listen
88
+ ```
89
+
90
+ Streams real-time trigger events to the terminal.
91
+
92
+ ---
93
+
94
+ ## Tips for Agents
95
+
96
+ - **All commands output JSON** — pipe to `jq` for filtering and extraction
97
+ - **Agent login** — When the agent has no direct browser access, use `composio login --no-wait` to get the URL and key, share the URL with the user, then `composio login --key <key> --no-wait` once they complete login
98
+ - **Parallel execution** — use `&` and `wait` or shell scripts for complex multi-step tasks
99
+ - The default user context is the project's `test_user_id`. Pass `--user-id <id>` to act on behalf of a specific user.
100
+
101
+ ```bash
102
+ composio execute GMAIL_SEND_EMAIL --user-id "user_123" --data '{"recipient_email":"them@example.com","subject":"Hi"}'
103
+ ```
104
+
105
+ ## Best Practices
106
+
107
+ 1. **Use `jq` for JSON** — Pipe CLI output to `jq` for filtering and extraction instead of parsing raw JSON.
108
+ 2. **Control output at source** — When fetching large amounts of data, use the tool's filters (if supported) to limit what is returned.
109
+ 3. **Offload analysis** — After understanding the schema, use inline bash scripts for heavy data analysis instead of manual inspection. Avoid using composio SDK for personal usecases only use the SDKs when building apps.
110
+ 4. **Parallelize independent actions** — For tools/actions that don't depend on each other, run them in parallel with `&` and `wait`. Use `xargs -P` or `parallel` only when the backend can handle the load.
111
+ 5. **Avoid large terminal dumps** — Filter, search, and summarize instead of outputting full datasets:
112
+ - Quick text filtering: `grep -E`, `rg` (ripgrep), `awk`, `sed`
113
+ - Summarize: `sort | uniq -c | sort -nr`, `wc -l`, `head`, `tail`
114
+ - For large output: `less`, `lnav` (logs), `tail -f` for streaming
115
+ 6. **Minimize file creation** — Use ephemeral files only when needed; create files only when the user explicitly asks.
116
+ 7. **Respect rate limits** — Be mindful of pagination and API/CLI rate limits when parallelizing.
117
+ 8. **Never invent tool slugs or app names** — Only use tools returned by `composio search`. For app names, use `composio manage toolkits info <slug>` or `composio manage tools info <tool>` to verify.
118
+ 9. **Do not trim `composio search` output** — Never pipe search results through `head`, `tail`, or similar. Use the full output to find the best tool match.
119
+
120
+ ---
121
+
122
+ ## Advanced Commands
123
+
124
+ ### Discover Tools (when search isn't enough)
125
+
126
+ ```bash
127
+ # List all toolkits
128
+ composio manage toolkits list
129
+
130
+ # Get details about a specific toolkit
131
+ composio manage toolkits info "gmail"
132
+
133
+ # List tools in a toolkit
134
+ composio manage tools list --toolkits "gmail"
135
+
136
+ # Get a tool's full schema
137
+ composio manage tools info "GMAIL_SEND_EMAIL"
138
+ ```
139
+
140
+ ### Connected Accounts
141
+
142
+ ```bash
143
+ # List active connections
144
+ composio manage connected-accounts list --status ACTIVE
145
+
146
+ # Link an account (full form with options)
147
+ composio manage connected-accounts link --auth-config "ac_..." --user-id "user_123"
148
+
149
+ # Delete a connection
150
+ composio manage connected-accounts delete <id>
151
+ ```
152
+
153
+ ### Auth Configs
154
+
155
+ > Only needed when building apps with custom OAuth credentials. For personal use and agents, `composio link` handles this automatically.
156
+
157
+ ```bash
158
+ composio manage auth-configs list --toolkits "gmail"
159
+ composio manage auth-configs create
160
+ composio manage auth-configs info <id>
161
+ composio manage auth-configs delete <id>
162
+ ```
163
+
164
+ ### Triggers
165
+
166
+ ```bash
167
+ # List available trigger types
168
+ composio manage triggers list
169
+ composio manage triggers info "GMAIL_NEW_GMAIL_MESSAGE"
170
+
171
+ # Manage trigger instances
172
+ composio manage triggers create <trigger-name>
173
+ composio manage triggers enable <id>
174
+ composio manage triggers disable <id>
175
+ composio manage triggers status
176
+ ```
177
+
178
+ ### Debugging & Logs
179
+
180
+ ```bash
181
+ # View recent tool executions
182
+ composio manage logs tools
183
+
184
+ # Get detailed logs for a specific execution
185
+ composio manage logs tools "log_abc123"
186
+
187
+ # Monitor trigger events
188
+ composio manage logs triggers
189
+ ```
190
+ ---
191
+
192
+ ## jq Examples
193
+
194
+ ```bash
195
+ # Extract toolkit slugs
196
+ composio manage toolkits list | jq -r '.[].slug'
197
+
198
+ # Get tool names from a toolkit
199
+ composio manage tools list --toolkits "gmail" | jq -r '.[].name'
200
+
201
+ # Filter active connections
202
+ composio manage connected-accounts list --status ACTIVE | jq -r '.[].id'
203
+
204
+ # Extract login URL and key from agent login flow
205
+ composio login --no-wait | jq -r '.login_url'
206
+ composio login --no-wait | jq -r '.key'
207
+ ```
208
+
209
+ ## Command Help
210
+
211
+ Every command supports `--help` for detailed options:
212
+
213
+ ```bash
214
+ composio --help
215
+ composio login --help
216
+ composio search --help
217
+ composio execute --help
218
+ composio link --help
219
+ composio listen --help
220
+ composio manage tools --help
221
+ composio manage toolkits --help
222
+ composio manage triggers --help
223
+ ```