@danieljvdm/dev-kit 1.0.2 → 2.0.0

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 (329) hide show
  1. package/README.md +6 -6
  2. package/package.json +1 -1
  3. package/skill-sources.jsonc +2 -33
  4. package/skill-sources.lock.json +15 -117
  5. package/skills/animate/LICENSE +21 -0
  6. package/skills/animate/NOTICE +10 -0
  7. package/skills/animate/SKILL.md +34 -0
  8. package/skills/animate/references/gestures.md +27 -0
  9. package/skills/animate/references/glossary.md +136 -0
  10. package/skills/animate/references/implementation.md +22 -0
  11. package/skills/animate/references/opportunities.md +18 -0
  12. package/skills/animate/references/principles.md +48 -0
  13. package/skills/animate/references/review.md +19 -0
  14. package/skills/cloudflare-workers/LICENSE +202 -0
  15. package/skills/cloudflare-workers/NOTICE +9 -0
  16. package/skills/cloudflare-workers/SKILL.md +26 -0
  17. package/skills/cloudflare-workers/references/durable-objects.md +68 -0
  18. package/skills/cloudflare-workers/references/sandbox.md +48 -0
  19. package/skills/cloudflare-workers/references/workers.md +63 -0
  20. package/skills/cloudflare-workers/references/wrangler.md +56 -0
  21. package/skills/design-ui/LICENSE +21 -0
  22. package/skills/design-ui/NOTICE +8 -0
  23. package/skills/design-ui/SKILL.md +29 -0
  24. package/skills/design-ui/references/appearance.md +22 -0
  25. package/skills/design-ui/references/components.md +33 -0
  26. package/skills/design-ui/references/exploration.md +50 -0
  27. package/skills/design-ui/references/libraries.md +39 -0
  28. package/skills/design-ui/references/themes.md +23 -0
  29. package/skills/dev-kit/SKILL.md +19 -38
  30. package/skills/dev-kit/references/cloudflare-worker-api.md +1 -1
  31. package/skills/dev-kit/references/skills.md +2 -2
  32. package/skills/effect-development/SKILL.md +27 -0
  33. package/skills/effect-development/agents/openai.yaml +4 -0
  34. package/skills/effect-development/references/api/index.md +32 -0
  35. package/skills/effect-development/references/api/schema-codecs.md +15 -0
  36. package/skills/{build-effect-apis/references → effect-development/references/api}/verification.md +10 -5
  37. package/skills/{effect-architecture-audit/SKILL.md → effect-development/references/architecture/index.md} +1 -6
  38. package/skills/{effect-atom-state/references → effect-development/references/atom}/effect-atom-client.md +8 -6
  39. package/skills/{effect-atom-state/references → effect-development/references/atom}/effect-atom-testing.md +7 -2
  40. package/skills/effect-development/references/atom/index.md +40 -0
  41. package/skills/{build-effect-clis/references → effect-development/references/cli}/entrypoints-and-testing.md +6 -2
  42. package/skills/effect-development/references/cli/index.md +39 -0
  43. package/skills/effect-development/references/setup.md +15 -0
  44. package/skills/open-pull-request/SKILL.md +10 -70
  45. package/skills/open-pull-request/references/evidence.md +22 -0
  46. package/skills/open-pull-request/references/explanation.md +21 -0
  47. package/skills/open-pull-request/references/publication.md +21 -0
  48. package/skills/sentry/LICENSE +202 -0
  49. package/skills/sentry/LICENSE-UPSTREAM +21 -0
  50. package/skills/sentry/NOTICE +14 -0
  51. package/skills/sentry/SKILL.md +33 -0
  52. package/skills/sentry/references/alert-payloads.md +105 -0
  53. package/skills/sentry/references/alerts.md +17 -0
  54. package/skills/sentry/references/artifacts.md +25 -0
  55. package/skills/sentry/references/auth-token.md +65 -0
  56. package/skills/sentry/references/concepts/ai-monitoring.md +131 -0
  57. package/skills/sentry/references/concepts/choosing-a-signal.md +78 -0
  58. package/skills/sentry/references/concepts/crons.md +50 -0
  59. package/skills/sentry/references/concepts/data-scrubbing.md +43 -0
  60. package/skills/sentry/references/concepts/errors.md +40 -0
  61. package/skills/sentry/references/concepts/logging.md +85 -0
  62. package/skills/sentry/references/concepts/metrics.md +49 -0
  63. package/skills/sentry/references/concepts/monitors.md +78 -0
  64. package/skills/sentry/references/concepts/profiling.md +38 -0
  65. package/skills/sentry/references/concepts/reduce-volume.md +49 -0
  66. package/skills/sentry/references/concepts/releases.md +43 -0
  67. package/skills/sentry/references/concepts/session-replay.md +35 -0
  68. package/skills/sentry/references/concepts/tracing.md +54 -0
  69. package/skills/sentry/references/concepts/user-feedback.md +36 -0
  70. package/skills/sentry/references/debug-artifacts/android.md +68 -0
  71. package/skills/sentry/references/debug-artifacts/apple.md +96 -0
  72. package/skills/sentry/references/debug-artifacts/dotnet.md +70 -0
  73. package/skills/sentry/references/debug-artifacts/flutter.md +65 -0
  74. package/skills/sentry/references/debug-artifacts/index.md +75 -0
  75. package/skills/sentry/references/debug-artifacts/javascript.md +94 -0
  76. package/skills/sentry/references/debug-artifacts/matching.md +73 -0
  77. package/skills/sentry/references/debug-artifacts/react-native.md +75 -0
  78. package/skills/sentry/references/first-error-setup.md +25 -0
  79. package/skills/sentry/references/instrumentation.md +30 -0
  80. package/skills/sentry/references/issues.md +32 -0
  81. package/skills/sentry/references/new-project.md +17 -0
  82. package/skills/sentry/references/otel-exporter.md +30 -0
  83. package/skills/sentry/references/release-workflow.md +31 -0
  84. package/skills/sentry/references/releases/ci-pipeline.md +214 -0
  85. package/skills/sentry/references/releases/index.md +93 -0
  86. package/skills/sentry/references/releases/suspect-commits.md +155 -0
  87. package/skills/sentry/references/releases/tagging.md +131 -0
  88. package/skills/sentry/references/releases/troubleshooting.md +67 -0
  89. package/skills/sentry/references/sdks/android/crons.md +305 -0
  90. package/skills/sentry/references/sdks/android/error-monitoring.md +800 -0
  91. package/skills/sentry/references/sdks/android/index.md +748 -0
  92. package/skills/sentry/references/sdks/android/integrations.md +48 -0
  93. package/skills/sentry/references/sdks/android/logging.md +374 -0
  94. package/skills/sentry/references/sdks/android/metrics.md +288 -0
  95. package/skills/sentry/references/sdks/android/profiling.md +397 -0
  96. package/skills/sentry/references/sdks/android/session-replay.md +406 -0
  97. package/skills/sentry/references/sdks/android/tracing.md +861 -0
  98. package/skills/sentry/references/sdks/browser/error-monitoring.md +861 -0
  99. package/skills/sentry/references/sdks/browser/index.md +714 -0
  100. package/skills/sentry/references/sdks/browser/logging.md +315 -0
  101. package/skills/sentry/references/sdks/browser/profiling.md +236 -0
  102. package/skills/sentry/references/sdks/browser/session-replay.md +586 -0
  103. package/skills/sentry/references/sdks/browser/tracing.md +561 -0
  104. package/skills/sentry/references/sdks/browser/user-feedback.md +354 -0
  105. package/skills/sentry/references/sdks/cloudflare/ai-monitoring.md +661 -0
  106. package/skills/sentry/references/sdks/cloudflare/crons.md +231 -0
  107. package/skills/sentry/references/sdks/cloudflare/durable-objects.md +381 -0
  108. package/skills/sentry/references/sdks/cloudflare/error-monitoring.md +329 -0
  109. package/skills/sentry/references/sdks/cloudflare/index.md +698 -0
  110. package/skills/sentry/references/sdks/cloudflare/logging.md +169 -0
  111. package/skills/sentry/references/sdks/cloudflare/nodejs-compat.md +134 -0
  112. package/skills/sentry/references/sdks/cloudflare/tracing.md +475 -0
  113. package/skills/sentry/references/sdks/cocoa/error-monitoring.md +394 -0
  114. package/skills/sentry/references/sdks/cocoa/index.md +497 -0
  115. package/skills/sentry/references/sdks/cocoa/logging.md +209 -0
  116. package/skills/sentry/references/sdks/cocoa/metrics.md +136 -0
  117. package/skills/sentry/references/sdks/cocoa/profiling.md +223 -0
  118. package/skills/sentry/references/sdks/cocoa/session-replay.md +257 -0
  119. package/skills/sentry/references/sdks/cocoa/tracing.md +524 -0
  120. package/skills/sentry/references/sdks/cocoa/user-feedback.md +310 -0
  121. package/skills/sentry/references/sdks/dotnet/crons.md +465 -0
  122. package/skills/sentry/references/sdks/dotnet/error-monitoring.md +1100 -0
  123. package/skills/sentry/references/sdks/dotnet/index.md +614 -0
  124. package/skills/sentry/references/sdks/dotnet/logging.md +556 -0
  125. package/skills/sentry/references/sdks/dotnet/metrics.md +229 -0
  126. package/skills/sentry/references/sdks/dotnet/profiling.md +296 -0
  127. package/skills/sentry/references/sdks/dotnet/tracing.md +897 -0
  128. package/skills/sentry/references/sdks/elixir/crons.md +371 -0
  129. package/skills/sentry/references/sdks/elixir/error-monitoring.md +335 -0
  130. package/skills/sentry/references/sdks/elixir/index.md +383 -0
  131. package/skills/sentry/references/sdks/elixir/logging.md +239 -0
  132. package/skills/sentry/references/sdks/elixir/tracing.md +233 -0
  133. package/skills/sentry/references/sdks/flutter/ecosystem-integrations.md +70 -0
  134. package/skills/sentry/references/sdks/flutter/error-monitoring.md +312 -0
  135. package/skills/sentry/references/sdks/flutter/index.md +728 -0
  136. package/skills/sentry/references/sdks/flutter/logging.md +387 -0
  137. package/skills/sentry/references/sdks/flutter/metrics.md +310 -0
  138. package/skills/sentry/references/sdks/flutter/profiling.md +214 -0
  139. package/skills/sentry/references/sdks/flutter/session-replay.md +308 -0
  140. package/skills/sentry/references/sdks/flutter/tracing.md +502 -0
  141. package/skills/sentry/references/sdks/go/crons.md +270 -0
  142. package/skills/sentry/references/sdks/go/error-monitoring.md +361 -0
  143. package/skills/sentry/references/sdks/go/index.md +324 -0
  144. package/skills/sentry/references/sdks/go/logging.md +354 -0
  145. package/skills/sentry/references/sdks/go/metrics.md +273 -0
  146. package/skills/sentry/references/sdks/go/profiling.md +46 -0
  147. package/skills/sentry/references/sdks/go/tracing.md +366 -0
  148. package/skills/sentry/references/sdks/index.md +41 -0
  149. package/skills/sentry/references/sdks/nestjs/ai-monitoring.md +410 -0
  150. package/skills/sentry/references/sdks/nestjs/crons.md +268 -0
  151. package/skills/sentry/references/sdks/nestjs/error-monitoring.md +729 -0
  152. package/skills/sentry/references/sdks/nestjs/index.md +699 -0
  153. package/skills/sentry/references/sdks/nestjs/logging.md +174 -0
  154. package/skills/sentry/references/sdks/nestjs/metrics.md +243 -0
  155. package/skills/sentry/references/sdks/nestjs/profiling.md +127 -0
  156. package/skills/sentry/references/sdks/nestjs/tracing.md +762 -0
  157. package/skills/sentry/references/sdks/nextjs/ai-monitoring.md +494 -0
  158. package/skills/sentry/references/sdks/nextjs/crons.md +383 -0
  159. package/skills/sentry/references/sdks/nextjs/error-monitoring.md +974 -0
  160. package/skills/sentry/references/sdks/nextjs/index.md +491 -0
  161. package/skills/sentry/references/sdks/nextjs/logging.md +381 -0
  162. package/skills/sentry/references/sdks/nextjs/metrics.md +411 -0
  163. package/skills/sentry/references/sdks/nextjs/profiling.md +403 -0
  164. package/skills/sentry/references/sdks/nextjs/session-replay.md +462 -0
  165. package/skills/sentry/references/sdks/nextjs/tracing.md +628 -0
  166. package/skills/sentry/references/sdks/node/ai-monitoring.md +303 -0
  167. package/skills/sentry/references/sdks/node/crons.md +432 -0
  168. package/skills/sentry/references/sdks/node/error-monitoring.md +1125 -0
  169. package/skills/sentry/references/sdks/node/index.md +942 -0
  170. package/skills/sentry/references/sdks/node/logging.md +380 -0
  171. package/skills/sentry/references/sdks/node/metrics.md +278 -0
  172. package/skills/sentry/references/sdks/node/profiling.md +373 -0
  173. package/skills/sentry/references/sdks/node/tracing.md +878 -0
  174. package/skills/sentry/references/sdks/php/ai-monitoring.md +310 -0
  175. package/skills/sentry/references/sdks/php/crons.md +265 -0
  176. package/skills/sentry/references/sdks/php/error-monitoring.md +626 -0
  177. package/skills/sentry/references/sdks/php/index.md +362 -0
  178. package/skills/sentry/references/sdks/php/laravel.md +542 -0
  179. package/skills/sentry/references/sdks/php/logging.md +242 -0
  180. package/skills/sentry/references/sdks/php/metrics.md +193 -0
  181. package/skills/sentry/references/sdks/php/profiling.md +115 -0
  182. package/skills/sentry/references/sdks/php/symfony.md +552 -0
  183. package/skills/sentry/references/sdks/php/tracing.md +516 -0
  184. package/skills/sentry/references/sdks/python/ai-monitoring.md +351 -0
  185. package/skills/sentry/references/sdks/python/crons.md +218 -0
  186. package/skills/sentry/references/sdks/python/error-monitoring.md +292 -0
  187. package/skills/sentry/references/sdks/python/index.md +361 -0
  188. package/skills/sentry/references/sdks/python/logging.md +234 -0
  189. package/skills/sentry/references/sdks/python/metrics.md +154 -0
  190. package/skills/sentry/references/sdks/python/profiling.md +120 -0
  191. package/skills/sentry/references/sdks/python/tracing.md +364 -0
  192. package/skills/sentry/references/sdks/react/error-monitoring.md +1607 -0
  193. package/skills/sentry/references/sdks/react/index.md +492 -0
  194. package/skills/sentry/references/sdks/react/logging.md +364 -0
  195. package/skills/sentry/references/sdks/react/profiling.md +322 -0
  196. package/skills/sentry/references/sdks/react/react-features.md +1272 -0
  197. package/skills/sentry/references/sdks/react/session-replay.md +1193 -0
  198. package/skills/sentry/references/sdks/react/tracing.md +1415 -0
  199. package/skills/sentry/references/sdks/react-native/error-monitoring.md +1481 -0
  200. package/skills/sentry/references/sdks/react-native/expo-config-plugin.md +45 -0
  201. package/skills/sentry/references/sdks/react-native/index.md +1030 -0
  202. package/skills/sentry/references/sdks/react-native/logging.md +444 -0
  203. package/skills/sentry/references/sdks/react-native/profiling.md +386 -0
  204. package/skills/sentry/references/sdks/react-native/session-replay.md +704 -0
  205. package/skills/sentry/references/sdks/react-native/tracing.md +1086 -0
  206. package/skills/sentry/references/sdks/react-native/user-feedback.md +815 -0
  207. package/skills/sentry/references/sdks/react-router-framework/error-monitoring.md +127 -0
  208. package/skills/sentry/references/sdks/react-router-framework/index.md +411 -0
  209. package/skills/sentry/references/sdks/react-router-framework/logging.md +66 -0
  210. package/skills/sentry/references/sdks/react-router-framework/profiling.md +57 -0
  211. package/skills/sentry/references/sdks/react-router-framework/react-router-framework-features.md +110 -0
  212. package/skills/sentry/references/sdks/react-router-framework/session-replay.md +67 -0
  213. package/skills/sentry/references/sdks/react-router-framework/tracing.md +96 -0
  214. package/skills/sentry/references/sdks/react-router-framework/user-feedback.md +71 -0
  215. package/skills/sentry/references/sdks/ruby/crons.md +184 -0
  216. package/skills/sentry/references/sdks/ruby/error-monitoring.md +248 -0
  217. package/skills/sentry/references/sdks/ruby/index.md +297 -0
  218. package/skills/sentry/references/sdks/ruby/logging.md +168 -0
  219. package/skills/sentry/references/sdks/ruby/metrics.md +196 -0
  220. package/skills/sentry/references/sdks/ruby/migration.md +321 -0
  221. package/skills/sentry/references/sdks/ruby/profiling.md +107 -0
  222. package/skills/sentry/references/sdks/ruby/tracing.md +388 -0
  223. package/skills/sentry/references/sdks/svelte/error-monitoring.md +456 -0
  224. package/skills/sentry/references/sdks/svelte/index.md +467 -0
  225. package/skills/sentry/references/sdks/svelte/logging.md +344 -0
  226. package/skills/sentry/references/sdks/svelte/session-replay.md +369 -0
  227. package/skills/sentry/references/sdks/svelte/tracing.md +406 -0
  228. package/skills/sentry/references/sdks/tanstack-start/error-monitoring.md +149 -0
  229. package/skills/sentry/references/sdks/tanstack-start/index.md +381 -0
  230. package/skills/sentry/references/sdks/tanstack-start/logging.md +74 -0
  231. package/skills/sentry/references/sdks/tanstack-start/session-replay.md +76 -0
  232. package/skills/sentry/references/sdks/tanstack-start/tanstackstart-features.md +128 -0
  233. package/skills/sentry/references/sdks/tanstack-start/tracing.md +123 -0
  234. package/skills/sentry/references/sdks/tanstack-start/user-feedback.md +81 -0
  235. package/skills/sentry/references/search-query-language.md +226 -0
  236. package/skills/sentry/references/semantics/angular.md +7 -0
  237. package/skills/sentry/references/semantics/app.md +28 -0
  238. package/skills/sentry/references/semantics/art.md +17 -0
  239. package/skills/sentry/references/semantics/aws.md +43 -0
  240. package/skills/sentry/references/semantics/browser.md +34 -0
  241. package/skills/sentry/references/semantics/cache.md +12 -0
  242. package/skills/sentry/references/semantics/client.md +8 -0
  243. package/skills/sentry/references/semantics/cloud.md +12 -0
  244. package/skills/sentry/references/semantics/cloudflare.md +23 -0
  245. package/skills/sentry/references/semantics/code.md +11 -0
  246. package/skills/sentry/references/semantics/culture.md +11 -0
  247. package/skills/sentry/references/semantics/db.md +21 -0
  248. package/skills/sentry/references/semantics/device.md +43 -0
  249. package/skills/sentry/references/semantics/error.md +7 -0
  250. package/skills/sentry/references/semantics/event.md +8 -0
  251. package/skills/sentry/references/semantics/exception.md +10 -0
  252. package/skills/sentry/references/semantics/faas.md +19 -0
  253. package/skills/sentry/references/semantics/file.md +8 -0
  254. package/skills/sentry/references/semantics/flag.md +7 -0
  255. package/skills/sentry/references/semantics/gcp.md +16 -0
  256. package/skills/sentry/references/semantics/gen_ai.md +53 -0
  257. package/skills/sentry/references/semantics/general.md +11 -0
  258. package/skills/sentry/references/semantics/graphql.md +9 -0
  259. package/skills/sentry/references/semantics/grpc.md +19 -0
  260. package/skills/sentry/references/semantics/http.md +34 -0
  261. package/skills/sentry/references/semantics/index.md +63 -0
  262. package/skills/sentry/references/semantics/jsonrpc.md +8 -0
  263. package/skills/sentry/references/semantics/jvm.md +12 -0
  264. package/skills/sentry/references/semantics/koa.md +7 -0
  265. package/skills/sentry/references/semantics/logger.md +7 -0
  266. package/skills/sentry/references/semantics/mcp.md +37 -0
  267. package/skills/sentry/references/semantics/mdc.md +7 -0
  268. package/skills/sentry/references/semantics/messaging.md +23 -0
  269. package/skills/sentry/references/semantics/middleware.md +7 -0
  270. package/skills/sentry/references/semantics/navigation.md +9 -0
  271. package/skills/sentry/references/semantics/nel.md +11 -0
  272. package/skills/sentry/references/semantics/network.md +17 -0
  273. package/skills/sentry/references/semantics/os.md +15 -0
  274. package/skills/sentry/references/semantics/otel.md +10 -0
  275. package/skills/sentry/references/semantics/params.md +7 -0
  276. package/skills/sentry/references/semantics/process.md +14 -0
  277. package/skills/sentry/references/semantics/react.md +7 -0
  278. package/skills/sentry/references/semantics/remix.md +7 -0
  279. package/skills/sentry/references/semantics/resource.md +7 -0
  280. package/skills/sentry/references/semantics/rpc.md +10 -0
  281. package/skills/sentry/references/semantics/score.md +10 -0
  282. package/skills/sentry/references/semantics/sentry.md +69 -0
  283. package/skills/sentry/references/semantics/server.md +8 -0
  284. package/skills/sentry/references/semantics/service.md +8 -0
  285. package/skills/sentry/references/semantics/session.md +7 -0
  286. package/skills/sentry/references/semantics/state.md +7 -0
  287. package/skills/sentry/references/semantics/thread.md +8 -0
  288. package/skills/sentry/references/semantics/timber.md +7 -0
  289. package/skills/sentry/references/semantics/trpc.md +8 -0
  290. package/skills/sentry/references/semantics/ui.md +18 -0
  291. package/skills/sentry/references/semantics/url.md +15 -0
  292. package/skills/sentry/references/semantics/user.md +17 -0
  293. package/skills/sentry/references/semantics/user_agent.md +7 -0
  294. package/skills/sentry/references/semantics/vercel.md +42 -0
  295. package/skills/sentry/references/setup-verification.md +39 -0
  296. package/skills/sentry/references/snapshots/github-actions-fanout.md +206 -0
  297. package/skills/sentry/references/snapshots/github-actions-simple.md +102 -0
  298. package/skills/sentry/references/snapshots/github-actions-swift-snapshot-testing.md +118 -0
  299. package/skills/sentry/references/snapshots/index.md +19 -0
  300. package/skills/sentry/references/snapshots/snapshot-previews.md +100 -0
  301. package/skills/sentry/references/snapshots/snapshots.md +123 -0
  302. package/skills/sentry/references/snapshots/wizard-setup.md +134 -0
  303. package/skills/testing/LICENSE +21 -0
  304. package/skills/testing/NOTICE +7 -0
  305. package/skills/testing/SKILL.md +13 -19
  306. package/skills/testing/agents/openai.yaml +1 -2
  307. package/skills/testing/references/selection.md +23 -0
  308. package/skills/testing/references/tdd.md +19 -0
  309. package/skills/testing/references/test-design.md +17 -0
  310. package/src/catalog.ts +1 -7
  311. package/skills/build-effect-apis/SKILL.md +0 -81
  312. package/skills/build-effect-apis/agents/openai.yaml +0 -4
  313. package/skills/build-effect-clis/SKILL.md +0 -92
  314. package/skills/build-effect-clis/agents/openai.yaml +0 -4
  315. package/skills/effect-architecture-audit/agents/openai.yaml +0 -4
  316. package/skills/effect-atom-state/SKILL.md +0 -97
  317. package/skills/effect-atom-state/agents/openai.yaml +0 -4
  318. package/skills/effect-ts/SKILL.md +0 -35
  319. package/skills/effect-ts/agents/openai.yaml +0 -4
  320. /package/skills/{build-effect-apis/references → effect-development/references/api}/cloudflare-workers.md +0 -0
  321. /package/skills/{build-effect-apis/references → effect-development/references/api}/runtime-assembly.md +0 -0
  322. /package/skills/{build-effect-apis/references → effect-development/references/api}/server-and-middleware.md +0 -0
  323. /package/skills/{build-effect-apis/references → effect-development/references/api}/shared-contracts.md +0 -0
  324. /package/skills/{effect-architecture-audit/references → effect-development/references/architecture}/service-and-boundary-audit.md +0 -0
  325. /package/skills/{effect-atom-state/references → effect-development/references/atom}/effect-atom-lifecycle.md +0 -0
  326. /package/skills/{effect-atom-state/references → effect-development/references/atom}/effect-atom-workflows.md +0 -0
  327. /package/skills/{effect-atom-state/references → effect-development/references/atom}/tanstack-start.md +0 -0
  328. /package/skills/{build-effect-clis/references → effect-development/references/cli}/command-design.md +0 -0
  329. /package/skills/{build-effect-clis/references → effect-development/references/cli}/processes-and-platform.md +0 -0
@@ -0,0 +1,362 @@
1
+ # Sentry PHP SDK
2
+
3
+ Opinionated wizard that scans your PHP project and guides you through complete Sentry
4
+ setup.
5
+
6
+ > **Note:** SDK versions and APIs below reflect Sentry docs at time of writing
7
+ > (sentry/sentry 4.x, sentry/sentry-laravel 4.x, sentry/sentry-symfony 5.x). Always
8
+ > verify against [docs.sentry.io/platforms/php/](https://docs.sentry.io/platforms/php/)
9
+ > before implementing.
10
+
11
+ ---
12
+
13
+ ## Phase 1: Detect
14
+
15
+ Run these commands to understand the project before making recommendations:
16
+
17
+ ```bash
18
+ # Check existing Sentry
19
+ grep -i sentry composer.json composer.lock 2>/dev/null
20
+
21
+ # Detect framework
22
+ cat composer.json | grep -E '"laravel/framework"|"symfony/framework-bundle"|"illuminate/'
23
+
24
+ # Confirm framework via filesystem markers
25
+ ls artisan 2>/dev/null && echo "Laravel detected"
26
+ ls bin/console 2>/dev/null && echo "Symfony detected"
27
+
28
+ # Detect queue systems
29
+ grep -E '"laravel/horizon"|"symfony/messenger"' composer.json 2>/dev/null
30
+
31
+ # Detect AI libraries
32
+ grep -E '"(laravel/ai|openai-php|openai/|anthropic|llm)' composer.json 2>/dev/null
33
+
34
+ # Check for companion frontend
35
+ ls frontend/ resources/js/ assets/ 2>/dev/null
36
+ cat package.json 2>/dev/null | grep -E '"react"|"svelte"|"vue"|"next"'
37
+ ```
38
+
39
+ **What to note:**
40
+
41
+ - Is `sentry/sentry` (or `-laravel` / `-symfony`) already in `composer.json`? If yes,
42
+ check if the init call exists — may just need feature config.
43
+ - Framework detected? **Laravel** (has `artisan` + `laravel/framework` in composer.json),
44
+ **Symfony** (has `bin/console` + `symfony/framework-bundle`), or **plain PHP**.
45
+ - Queue system? (Laravel Queue / Horizon, Symfony Messenger need queue worker
46
+ configuration.)
47
+ - AI libraries? (`laravel/ai` is auto-instrumented by `sentry/sentry-laravel >= 4.27.0`
48
+ when tracing is enabled; other PHP AI libraries need manual spans.)
49
+ - Companion frontend? (Triggers Phase 4 cross-link.)
50
+
51
+ ---
52
+
53
+ ## Phase 2: Recommend
54
+
55
+ Based on what you found, present a concrete proposal.
56
+ Don’t ask open-ended questions — lead with a recommendation:
57
+
58
+ **Always recommended (core coverage):**
59
+
60
+ - ✅ **Error Monitoring** — captures unhandled exceptions and PHP errors
61
+ - ✅ **Logging** — Monolog integration (Laravel/Symfony auto-configure; plain PHP uses
62
+ `MonologHandler`)
63
+
64
+ **Recommend when detected:**
65
+
66
+ - ✅ **Tracing** — web framework detected (Laravel/Symfony auto-instrument HTTP, DB,
67
+ Twig/Blade, cache)
68
+ - ⚡ **Profiling** — production apps where performance matters (requires `excimer` PHP
69
+ extension, Linux/macOS only)
70
+ - ⚡ **Crons** — scheduler patterns detected (Laravel Scheduler, Symfony Scheduler,
71
+ custom cron jobs)
72
+ - ⚡ **Metrics** — business KPIs or SLO tracking (uses `TraceMetrics` API)
73
+ - ✅ **AI Monitoring** — `laravel/ai` detected in a Laravel app (auto-instrumented in
74
+ `sentry/sentry-laravel >= 4.27.0`)
75
+
76
+ **Recommendation matrix:**
77
+
78
+ | Feature | Recommend when … | Reference |
79
+ | ---------------- | --------------------------------------------------------------------- | ----------------------- |
80
+ | Error Monitoring | **Always** — non-negotiable baseline | `./error-monitoring.md` |
81
+ | Tracing | Laravel/Symfony detected, or manual spans needed | `./tracing.md` |
82
+ | Profiling | Production + `excimer` extension available | `./profiling.md` |
83
+ | Logging | **Always**; Monolog for Laravel/Symfony | `./logging.md` |
84
+ | Metrics | Business events or SLO tracking needed | `./metrics.md` |
85
+ | Crons | Scheduler or cron patterns detected | `./crons.md` |
86
+ | AI Monitoring | `laravel/ai` detected in a Laravel app, or manual PHP AI spans needed | `./ai-monitoring.md` |
87
+
88
+ Propose: _“I recommend Error Monitoring + Tracing [+ Logging]. Want Profiling, Crons,
89
+ Metrics, or AI Monitoring too?”_
90
+
91
+ ---
92
+
93
+ ## Phase 3: Guide
94
+
95
+ ### Install
96
+
97
+ ```bash
98
+ # Plain PHP
99
+ composer require sentry/sentry "^4.0"
100
+
101
+ # Laravel
102
+ composer require sentry/sentry-laravel "^4.0"
103
+
104
+ # Laravel with Laravel AI monitoring
105
+ composer require sentry/sentry-laravel "^4.27.0"
106
+
107
+ # Symfony
108
+ composer require sentry/sentry-symfony "^5.0"
109
+ ```
110
+
111
+ **System requirements:**
112
+
113
+ - PHP 7.2 or later
114
+ - Extensions: `ext-json`, `ext-mbstring`, `ext-curl` (all required)
115
+ - `excimer` PECL extension (Linux/macOS only — required for profiling)
116
+
117
+ ### Framework-Specific Initialization
118
+
119
+ #### Plain PHP
120
+
121
+ Place `\Sentry\init()` at the top of your entry point (`index.php`, `bootstrap.php`, or
122
+ equivalent), before any application code:
123
+
124
+ ```php
125
+ <?php
126
+
127
+ require_once 'vendor/autoload.php';
128
+
129
+ \Sentry\init([
130
+ 'dsn' => $_SERVER['SENTRY_DSN'] ?? '',
131
+ 'environment' => $_SERVER['SENTRY_ENVIRONMENT'] ?? 'production',
132
+ 'release' => $_SERVER['SENTRY_RELEASE'] ?? null,
133
+ 'send_default_pii' => true,
134
+ 'traces_sample_rate' => 1.0,
135
+ 'profiles_sample_rate' => 1.0,
136
+ 'enable_logs' => true,
137
+ ]);
138
+
139
+ // rest of application...
140
+ ```
141
+
142
+ #### Laravel
143
+
144
+ **Step 1 — Register exception handler** in `bootstrap/app.php`:
145
+
146
+ ```php
147
+ use Sentry\Laravel\Integration;
148
+
149
+ return Application::configure(basePath: dirname(__DIR__))
150
+ ->withExceptions(function (Exceptions $exceptions) {
151
+ Integration::handles($exceptions);
152
+ })->create();
153
+ ```
154
+
155
+ **Step 2 — Publish config and set DSN:**
156
+
157
+ ```bash
158
+ php artisan sentry:publish --dsn=YOUR_DSN
159
+ ```
160
+
161
+ This creates `config/sentry.php` and adds `SENTRY_LARAVEL_DSN` to `.env`.
162
+
163
+ **Step 3 — Configure `.env`:**
164
+
165
+ ```ini
166
+ SENTRY_LARAVEL_DSN=https://examplePublicKey@o0.ingest.sentry.io/0
167
+ SENTRY_TRACES_SAMPLE_RATE=1.0
168
+ SENTRY_PROFILES_SAMPLE_RATE=1.0
169
+ ```
170
+
171
+ > For full Laravel configuration options, read `./laravel.md`.
172
+
173
+ #### Symfony
174
+
175
+ **Step 1 — Register the bundle** in `config/bundles.php` (auto-done by Symfony Flex):
176
+
177
+ ```php
178
+ Sentry\SentryBundle\SentryBundle::class => ['all' => true],
179
+ ```
180
+
181
+ **Step 2 — Create `config/packages/sentry.yaml`:**
182
+
183
+ ```yaml
184
+ sentry:
185
+ dsn: "%env(SENTRY_DSN)%"
186
+ options:
187
+ environment: "%env(APP_ENV)%"
188
+ release: "%env(SENTRY_RELEASE)%"
189
+ send_default_pii: true
190
+ traces_sample_rate: 1.0
191
+ profiles_sample_rate: 1.0
192
+ enable_logs: true
193
+ ```
194
+
195
+ **Step 3 — Set the DSN in `.env`:**
196
+
197
+ ```ini
198
+ SENTRY_DSN=https://examplePublicKey@o0.ingest.sentry.io/0
199
+ ```
200
+
201
+ > For full Symfony configuration options, read `./symfony.md`.
202
+
203
+ ### Quick Start — Recommended Init (Plain PHP)
204
+
205
+ Full init enabling the most features with sensible defaults:
206
+
207
+ ```php
208
+ \Sentry\init([
209
+ 'dsn' => $_SERVER['SENTRY_DSN'] ?? '',
210
+ 'environment' => $_SERVER['SENTRY_ENVIRONMENT'] ?? 'production',
211
+ 'release' => $_SERVER['SENTRY_RELEASE'] ?? null,
212
+ 'send_default_pii' => true,
213
+
214
+ // Tracing (lower to 0.1–0.2 in high-traffic production)
215
+ 'traces_sample_rate' => 1.0,
216
+
217
+ // Profiling — requires excimer extension (Linux/macOS only)
218
+ 'profiles_sample_rate' => 1.0,
219
+
220
+ // Structured logs (sentry/sentry >=4.12.0)
221
+ 'enable_logs' => true,
222
+ ]);
223
+ ```
224
+
225
+ ### For Each Agreed Feature
226
+
227
+ Walk through features one at a time.
228
+ Load the reference, follow its steps, verify before moving on:
229
+
230
+ | Feature | Reference file | Load when … |
231
+ | ---------------- | ----------------------- | --------------------------------------------------------------- |
232
+ | Error Monitoring | `./error-monitoring.md` | Always (baseline) |
233
+ | Tracing | `./tracing.md` | HTTP handlers / distributed tracing |
234
+ | Profiling | `./profiling.md` | Performance-sensitive production |
235
+ | Logging | `./logging.md` | Always; Monolog for Laravel/Symfony |
236
+ | Metrics | `./metrics.md` | Business KPIs / SLO tracking |
237
+ | Crons | `./crons.md` | Scheduler / cron patterns detected |
238
+ | AI Monitoring | `./ai-monitoring.md` | `laravel/ai` detected in Laravel, or manual PHP AI spans needed |
239
+
240
+ For each feature: `Read ./<feature>.md`, follow steps exactly, verify it works.
241
+
242
+ ---
243
+
244
+ ## Configuration Reference
245
+
246
+ ### Key `\Sentry\init()` Options (Plain PHP)
247
+
248
+ | Option | Type | Default | Purpose |
249
+ | --------------------------- | -------------------- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
250
+ | `dsn` | `string\|bool\|null` | `$_SERVER['SENTRY_DSN']` | SDK disabled if empty or `false` |
251
+ | `environment` | `string\|null` | `$_SERVER['SENTRY_ENVIRONMENT']` | e.g., `"staging"` |
252
+ | `release` | `string\|null` | `$_SERVER['SENTRY_RELEASE']` | e.g., `"myapp@1.0.0"` |
253
+ | `send_default_pii` | `bool` | `false` | Include request headers, cookies, IP |
254
+ | `sample_rate` | `float` | `1.0` | Error event sample rate (0.0–1.0) |
255
+ | `traces_sample_rate` | `float\|null` | `null` | Transaction sample rate; `null` disables tracing |
256
+ | `traces_sampler` | `callable\|null` | `null` | Custom per-transaction sampling (overrides rate) |
257
+ | `profiles_sample_rate` | `float\|null` | `null` | Profiling rate relative to traces; requires `excimer` |
258
+ | `enable_logs` | `bool` | `false` | Send structured logs to Sentry (>=4.12.0) |
259
+ | `max_breadcrumbs` | `int` | `100` | Max breadcrumbs per event |
260
+ | `attach_stacktrace` | `bool` | `false` | Stack traces on `captureMessage()` |
261
+ | `in_app_include` | `string[]` | `[]` | Path prefixes belonging to your app |
262
+ | `in_app_exclude` | `string[]` | `[]` | Path prefixes for third-party code (hidden in traces) |
263
+ | `ignore_exceptions` | `string[]` | `[]` | Exception FQCNs to never report |
264
+ | `ignore_transactions` | `string[]` | `[]` | Transaction names to never report |
265
+ | `error_types` | `int\|null` | `error_reporting()` | PHP error bitmask (e.g., `E_ALL & ~E_NOTICE`) |
266
+ | `capture_silenced_errors` | `bool` | `false` | Capture errors suppressed by `@` operator |
267
+ | `max_request_body_size` | `string` | `"medium"` | `"none"` / `"small"` / `"medium"` / `"always"` |
268
+ | `before_send` | `callable` | identity | `fn(Event $event, ?EventHint $hint): ?Event` — return `null` to drop |
269
+ | `before_breadcrumb` | `callable` | identity | `fn(Breadcrumb $b): ?Breadcrumb` — return `null` to discard |
270
+ | `trace_propagation_targets` | `string[]\|null` | `null` | Downstream hosts to inject `sentry-trace` headers into; `null` = all, `[]` = none |
271
+ | `strict_trace_continuation` | `bool` | `false` | Only continue an incoming distributed trace if the `sentry-org_id` baggage matches the SDK’s org ID; prevents trace contamination from third-party Sentry-instrumented services (>=4.21.0) |
272
+ | `debug` | `bool` | `false` | Verbose SDK output (use a PSR-3 `logger` option instead for structured output) |
273
+
274
+ ### Environment Variables
275
+
276
+ | Variable | Maps to | Notes |
277
+ | -------------------- | ------------- | ---------------------------------------------------- |
278
+ | `SENTRY_DSN` | `dsn` | Also `$_SERVER['SENTRY_DSN']` |
279
+ | `SENTRY_ENVIRONMENT` | `environment` | |
280
+ | `SENTRY_RELEASE` | `release` | Also reads `$_SERVER['AWS_LAMBDA_FUNCTION_VERSION']` |
281
+ | `SENTRY_SPOTLIGHT` | `spotlight` | |
282
+
283
+ > **Laravel note:** Uses `SENTRY_LARAVEL_DSN` (falls back to `SENTRY_DSN`). Other
284
+ > options follow `SENTRY_TRACES_SAMPLE_RATE`, `SENTRY_PROFILES_SAMPLE_RATE`, etc.
285
+
286
+ ---
287
+
288
+ ## Verification
289
+
290
+ Test that Sentry is receiving events:
291
+
292
+ ```php
293
+ // Trigger a real error event — check the Sentry dashboard within seconds
294
+ throw new \Exception('Sentry PHP SDK test');
295
+ ```
296
+
297
+ Or for a non-crashing check:
298
+
299
+ ```php
300
+ \Sentry\captureMessage('Sentry PHP SDK test');
301
+ ```
302
+
303
+ **Laravel:**
304
+
305
+ ```bash
306
+ php artisan sentry:test
307
+ ```
308
+
309
+ If nothing appears:
310
+
311
+ 1. Enable debug output:
312
+ ```php
313
+ \Sentry\init([
314
+ 'dsn' => '...',
315
+ 'logger' => new \Sentry\Logger\DebugStdOutLogger(),
316
+ ]);
317
+ ```
318
+ 2. Verify the DSN is correct (format: `https://<key>@o<org>.ingest.sentry.io/<project>`)
319
+ 3. Check `SENTRY_DSN` (or `SENTRY_LARAVEL_DSN`) env var is set in the running process
320
+ 4. For queue workers: ensure Sentry is initialized **inside the worker process**, not
321
+ just the web process
322
+
323
+ ---
324
+
325
+ ## Phase 4: Cross-Link
326
+
327
+ After completing PHP setup, check for a companion frontend missing Sentry:
328
+
329
+ ```bash
330
+ ls frontend/ resources/js/ assets/ public/ 2>/dev/null
331
+ cat package.json frontend/package.json 2>/dev/null \
332
+ | grep -E '"react"|"svelte"|"vue"|"next"|"nuxt"'
333
+ ```
334
+
335
+ If a frontend exists without Sentry, suggest the matching skill:
336
+
337
+ | Frontend detected | Suggest skill |
338
+ | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------- |
339
+ | React / Next.js | [`react`](../react/index.md) |
340
+ | Svelte / SvelteKit | [`svelte`](../svelte/index.md) |
341
+ | Vue / Nuxt | Use `@sentry/vue` — see [docs.sentry.io/platforms/javascript/guides/vue/](https://docs.sentry.io/platforms/javascript/guides/vue/) |
342
+ | Other JS/TS | [`react`](../react/index.md) (covers generic browser JS patterns) |
343
+
344
+ ---
345
+
346
+ ## Troubleshooting
347
+
348
+ | Issue | Solution |
349
+ | --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
350
+ | Events not appearing | Enable `logger` option (`DebugStdOutLogger`), verify DSN, check env vars in the running process |
351
+ | Malformed DSN error | Format: `https://<key>@o<org>.ingest.sentry.io/<project>` |
352
+ | Laravel exceptions not captured | Ensure `Integration::handles($exceptions)` is in `bootstrap/app.php` |
353
+ | Symfony exceptions not captured | Verify `SentryBundle` is registered in `config/bundles.php` |
354
+ | No traces appearing | Set `traces_sample_rate` (not `null`); confirm auto-instrumentation is enabled |
355
+ | Profiling not working | `excimer` extension required (Linux/macOS only; not available on Windows); requires `traces_sample_rate > 0` |
356
+ | `enable_logs` not working | Requires `sentry/sentry >= 4.12.0`, `sentry/sentry-laravel >= 4.15.0`, or `sentry/sentry-symfony >= 5.4.0` |
357
+ | Queue worker errors missing | Init Sentry in the worker process itself, not just the web process; for Laravel use `SENTRY_LARAVEL_DSN` in worker `.env` |
358
+ | Too many transactions | Lower `traces_sample_rate` or use `traces_sampler` to drop health check routes |
359
+ | PII not captured | Set `send_default_pii: true`; for Laravel set `send_default_pii: true` in `config/sentry.php` |
360
+ | `@`-suppressed errors missing | Set `capture_silenced_errors: true` |
361
+ | Cross-service traces broken | Check `trace_propagation_targets`; ensure downstream services have Sentry installed |
362
+ | Trace contamination from third-party services | Set `strict_trace_continuation: true` to only continue traces where the incoming `sentry-org_id` baggage matches your SDK’s org ID (>=4.21.0) |