vybekiit 0.7.16 → 0.7.18

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 (72) hide show
  1. package/dist/bin.js +46 -11
  2. package/dist/global-skills/expo-native-ui/SKILL.md +3 -0
  3. package/dist/global-skills/expo-native-ui/references/controls.md +2 -0
  4. package/dist/global-skills/expo-overview/SKILL.md +110 -0
  5. package/dist/global-skills/expo-overview/agents/openai.yaml +4 -0
  6. package/dist/global-skills/expo-skill-feedback/scripts/telemetry_common.cjs +6 -6
  7. package/dist/global-skills/expo-ui/SKILL.md +52 -6
  8. package/dist/global-skills/expo-ui/references/universal.md +31 -0
  9. package/dist/global-skills/instrument-feature-flags/references/adding-feature-flag-code.md +4 -0
  10. package/dist/global-skills/instrument-feature-flags/references/android.md +4 -0
  11. package/dist/global-skills/instrument-feature-flags/references/api.md +4 -0
  12. package/dist/global-skills/instrument-feature-flags/references/best-practices.md +4 -0
  13. package/dist/global-skills/instrument-feature-flags/references/django.md +4 -0
  14. package/dist/global-skills/instrument-feature-flags/references/dotnet.md +4 -0
  15. package/dist/global-skills/instrument-feature-flags/references/elixir.md +4 -0
  16. package/dist/global-skills/instrument-feature-flags/references/flask.md +4 -0
  17. package/dist/global-skills/instrument-feature-flags/references/flutter.md +4 -0
  18. package/dist/global-skills/instrument-feature-flags/references/go.md +4 -0
  19. package/dist/global-skills/instrument-feature-flags/references/ios.md +4 -0
  20. package/dist/global-skills/instrument-feature-flags/references/java.md +4 -0
  21. package/dist/global-skills/instrument-feature-flags/references/laravel.md +4 -0
  22. package/dist/global-skills/instrument-feature-flags/references/next-js.md +4 -0
  23. package/dist/global-skills/instrument-feature-flags/references/nodejs.md +4 -0
  24. package/dist/global-skills/instrument-feature-flags/references/php.md +4 -0
  25. package/dist/global-skills/instrument-feature-flags/references/python.md +4 -0
  26. package/dist/global-skills/instrument-feature-flags/references/react-native.md +4 -0
  27. package/dist/global-skills/instrument-feature-flags/references/react.md +4 -0
  28. package/dist/global-skills/instrument-feature-flags/references/ruby-on-rails.md +4 -0
  29. package/dist/global-skills/instrument-feature-flags/references/ruby.md +4 -0
  30. package/dist/global-skills/instrument-feature-flags/references/rust.md +4 -0
  31. package/dist/global-skills/instrument-feature-flags/references/usage.md +4 -0
  32. package/dist/global-skills/instrument-feature-flags/references/web.md +4 -0
  33. package/dist/global-skills/instrument-product-analytics/references/EXAMPLE-swift.md +0 -1
  34. package/dist/global-skills/instrument-product-analytics/references/android.md +4 -0
  35. package/dist/global-skills/instrument-product-analytics/references/angular.md +4 -0
  36. package/dist/global-skills/instrument-product-analytics/references/astro.md +4 -0
  37. package/dist/global-skills/instrument-product-analytics/references/configuration.md +4 -0
  38. package/dist/global-skills/instrument-product-analytics/references/django.md +4 -0
  39. package/dist/global-skills/instrument-product-analytics/references/dotnet.md +4 -0
  40. package/dist/global-skills/instrument-product-analytics/references/elixir.md +4 -0
  41. package/dist/global-skills/instrument-product-analytics/references/flask.md +4 -0
  42. package/dist/global-skills/instrument-product-analytics/references/flutter.md +4 -0
  43. package/dist/global-skills/instrument-product-analytics/references/go.md +4 -0
  44. package/dist/global-skills/instrument-product-analytics/references/identify-users.md +4 -0
  45. package/dist/global-skills/instrument-product-analytics/references/ios.md +4 -0
  46. package/dist/global-skills/instrument-product-analytics/references/laravel.md +4 -0
  47. package/dist/global-skills/instrument-product-analytics/references/next-js.md +4 -0
  48. package/dist/global-skills/instrument-product-analytics/references/nuxt-js-3-6.md +4 -0
  49. package/dist/global-skills/instrument-product-analytics/references/nuxt-js.md +4 -0
  50. package/dist/global-skills/instrument-product-analytics/references/php.md +4 -0
  51. package/dist/global-skills/instrument-product-analytics/references/posthog-python.md +52 -5
  52. package/dist/global-skills/instrument-product-analytics/references/python.md +4 -0
  53. package/dist/global-skills/instrument-product-analytics/references/react-native.md +4 -0
  54. package/dist/global-skills/instrument-product-analytics/references/react-router-v6.md +4 -0
  55. package/dist/global-skills/instrument-product-analytics/references/react-router-v7-data-mode.md +4 -0
  56. package/dist/global-skills/instrument-product-analytics/references/react-router-v7-declarative-mode.md +4 -0
  57. package/dist/global-skills/instrument-product-analytics/references/react-router-v7-framework-mode.md +4 -0
  58. package/dist/global-skills/instrument-product-analytics/references/ruby-on-rails.md +4 -0
  59. package/dist/global-skills/instrument-product-analytics/references/ruby.md +4 -0
  60. package/dist/global-skills/instrument-product-analytics/references/svelte.md +4 -0
  61. package/dist/global-skills/instrument-product-analytics/references/tanstack-start.md +4 -0
  62. package/dist/global-skills/instrument-product-analytics/references/usage.md +4 -0
  63. package/dist/global-skills/instrument-product-analytics/references/vue-js.md +4 -0
  64. package/dist/global-skills/manifest.json +2 -1
  65. package/dist/global-skills/neon/SKILL.md +2 -2
  66. package/dist/global-skills/neon-ai-gateway/SKILL.md +13 -13
  67. package/dist/global-skills/neon-functions/SKILL.md +3 -3
  68. package/dist/global-skills/neon-functions/references/ai-sdk.md +1 -1
  69. package/dist/global-skills/neon-object-storage/SKILL.md +1 -1
  70. package/dist/global-skills/resend/SKILL.md +1 -1
  71. package/dist/global-skills/resend/references/automations.md +10 -1
  72. package/package.json +8 -8
@@ -188,6 +188,10 @@ Copy page
188
188
  | [How to do a phased rollout](/tutorials/phased-rollout.md) | Gradually roll out features to minimize risk |
189
189
  | [More tutorials](/docs/feature-flags/tutorials.md) | Other real-world examples and use cases |
190
190
 
191
+ ### Still have questions?
192
+
193
+ Ask PostHog AI
194
+
191
195
  ### Was this page useful?
192
196
 
193
197
  HelpfulCould be better
@@ -163,6 +163,10 @@ Copy page
163
163
  | [How to do a phased rollout](/tutorials/phased-rollout.md) | Gradually roll out features to minimize risk |
164
164
  | [More tutorials](/docs/feature-flags/tutorials.md) | Other real-world examples and use cases |
165
165
 
166
+ ### Still have questions?
167
+
168
+ Ask PostHog AI
169
+
166
170
  ### Was this page useful?
167
171
 
168
172
  HelpfulCould be better
@@ -299,6 +299,10 @@ Copy page
299
299
  | [How to do a phased rollout](/tutorials/phased-rollout.md) | Gradually roll out features to minimize risk |
300
300
  | [More tutorials](/docs/feature-flags/tutorials.md) | Other real-world examples and use cases |
301
301
 
302
+ ### Still have questions?
303
+
304
+ Ask PostHog AI
305
+
302
306
  ### Was this page useful?
303
307
 
304
308
  HelpfulCould be better
@@ -601,6 +601,10 @@ Ensure you've set `personal_api_key` in your configuration.
601
601
 
602
602
  For any technical questions for how to integrate specific PostHog features into Rails (such as analytics, feature flags, A/B testing, etc.), have a look at our [Ruby SDK docs](/docs/libraries/ruby.md).
603
603
 
604
+ ### Still have questions?
605
+
606
+ Ask PostHog AI
607
+
604
608
  ### Was this page useful?
605
609
 
606
610
  HelpfulCould be better
@@ -197,6 +197,10 @@ Copy page
197
197
  | [How to do a phased rollout](/tutorials/phased-rollout.md) | Gradually roll out features to minimize risk |
198
198
  | [More tutorials](/docs/feature-flags/tutorials.md) | Other real-world examples and use cases |
199
199
 
200
+ ### Still have questions?
201
+
202
+ Ask PostHog AI
203
+
200
204
  ### Was this page useful?
201
205
 
202
206
  HelpfulCould be better
@@ -219,6 +219,10 @@ Now that you're evaluating flags, continue with the resources below to learn wha
219
219
  | [How to do a phased rollout](/tutorials/phased-rollout.md) | Gradually roll out features to minimize risk |
220
220
  | [More tutorials](/docs/feature-flags/tutorials.md) | Other real-world examples and use cases |
221
221
 
222
+ ### Still have questions?
223
+
224
+ Ask PostHog AI
225
+
222
226
  ### Was this page useful?
223
227
 
224
228
  HelpfulCould be better
@@ -632,6 +632,10 @@ PostHogSDK.shared.debug(true)
632
632
  PostHogSDK.shared.debug(false)
633
633
  ```
634
634
 
635
+ ### Still have questions?
636
+
637
+ Ask PostHog AI
638
+
635
639
  ### Was this page useful?
636
640
 
637
641
  HelpfulCould be better
@@ -190,6 +190,10 @@ Copy page
190
190
  | [How to do a phased rollout](/tutorials/phased-rollout.md) | Gradually roll out features to minimize risk |
191
191
  | [More tutorials](/docs/feature-flags/tutorials.md) | Other real-world examples and use cases |
192
192
 
193
+ ### Still have questions?
194
+
195
+ Ask PostHog AI
196
+
193
197
  ### Was this page useful?
194
198
 
195
199
  HelpfulCould be better
@@ -848,6 +848,10 @@ The Android SDK supports Android API 23 and newer.
848
848
 
849
849
  Usually, no. The SDK declares `android.permission.INTERNET` and `android.permission.ACCESS_NETWORK_STATE`, and Android's manifest merger adds them to your app. The SDK does not declare or require an Android `Service`.
850
850
 
851
+ ### Still have questions?
852
+
853
+ Ask PostHog AI
854
+
851
855
  ### Was this page useful?
852
856
 
853
857
  HelpfulCould be better
@@ -407,6 +407,10 @@ Alternatively, the following tutorials can help you get started:
407
407
  - [How to set up A/B tests in Angular](/tutorials/angular-ab-tests.md)
408
408
  - [How to set up surveys in Angular](/tutorials/angular-surveys.md)
409
409
 
410
+ ### Still have questions?
411
+
412
+ Ask PostHog AI
413
+
410
414
  ### Was this page useful?
411
415
 
412
416
  HelpfulCould be better
@@ -196,6 +196,10 @@ Alternatively, the following tutorials can help you get started:
196
196
  - [How to set up A/B tests in Astro](/tutorials/astro-ab-tests.md)
197
197
  - [How to set up surveys in Astro](/tutorials/astro-surveys.md)
198
198
 
199
+ ### Still have questions?
200
+
201
+ Ask PostHog AI
202
+
199
203
  ### Was this page useful?
200
204
 
201
205
  HelpfulCould be better
@@ -297,6 +297,10 @@ The [`PostHogConfig` object](https://github.com/PostHog/posthog-ios/blob/main/Po
297
297
  | setBeforeSendType: FunctionDefault: undefined | Hook that allows for amending, sampling, or dropping events before they are sent to PostHog. |
298
298
  | bootstrapType: PostHogBootstrapConfigDefault: nil | Seeds identity (distinctId, isIdentifiedId) and feature-flag state (featureFlags, featureFlagPayloads) before the first /flags response. Bootstrapped identity applies to the first session; only enabled flags are served, until the first /flags response replaces them. See [SDK bootstrapping](/docs/libraries/bootstrapping.md#behavior-on-mobile-sdks). |
299
299
 
300
+ ### Still have questions?
301
+
302
+ Ask PostHog AI
303
+
300
304
  ### Was this page useful?
301
305
 
302
306
  HelpfulCould be better
@@ -291,6 +291,10 @@ Everything on this page works the same way on `6.9.3`. Event capture, the contex
291
291
 
292
292
  Later `7.x` releases add what the 6.x line does not receive, such as the Celery integration, tracing header sanitization, and `set_context_device_id`. They also changed the middleware's own captured properties: `7.x` sends the request IP as `$ip`, where `6.9.3` sends it as `$ip_address`, and `7.x` additionally captures `$request_path`, `$raw_user_agent`, and the authenticated user's `email`.
293
293
 
294
+ ### Still have questions?
295
+
296
+ Ask PostHog AI
297
+
294
298
  ### Was this page useful?
295
299
 
296
300
  HelpfulCould be better
@@ -764,6 +764,10 @@ By default, the library buffers events before sending them to the `/batch` endpo
764
764
 
765
765
  To avoid this, call `await posthog.FlushAsync()` after processing every request by adding it as a middleware to your server. This allows `posthog.Capture()` to remain asynchronous for better performance.
766
766
 
767
+ ### Still have questions?
768
+
769
+ Ask PostHog AI
770
+
767
771
  ### Was this page useful?
768
772
 
769
773
  HelpfulCould be better
@@ -411,6 +411,10 @@ PostHog.capture(AnotherPostHog, "user_signed_up", %{distinct_id: "user123"})
411
411
 
412
412
  The library is maintained by the PostHog team since February 2025. Thanks to [nkezhaya](https://github.com/nkezhaya) for contributing v0.1.0. Thanks to [martosaur](https://github.com/martosaur) for contributing v2.0.0.
413
413
 
414
+ ### Still have questions?
415
+
416
+ Ask PostHog AI
417
+
414
418
  ### Was this page useful?
415
419
 
416
420
  HelpfulCould be better
@@ -138,6 +138,10 @@ Everything on this page works the same way on `6.9.3`. Event capture, the contex
138
138
 
139
139
  Later `7.x` releases add what the 6.x line does not receive, such as the Celery integration, tracing header sanitization, and `set_context_device_id`. They also changed the middleware's own captured properties: `7.x` sends the request IP as `$ip`, where `6.9.3` sends it as `$ip_address`, and `7.x` additionally captures `$request_path`, `$raw_user_agent`, and the authenticated user's `email`.
140
140
 
141
+ ### Still have questions?
142
+
143
+ Ask PostHog AI
144
+
141
145
  ### Was this page useful?
142
146
 
143
147
  HelpfulCould be better
@@ -885,6 +885,10 @@ await Posthog().debug(true);
885
885
  await Posthog().debug(false);
886
886
  ```
887
887
 
888
+ ### Still have questions?
889
+
890
+ Ask PostHog AI
891
+
888
892
  ### Was this page useful?
889
893
 
890
894
  HelpfulCould be better
@@ -564,6 +564,10 @@ The `name` is a special property which is used in the PostHog UI for the name of
564
564
 
565
565
  This library is largely based on the `analytics-go` package.
566
566
 
567
+ ### Still have questions?
568
+
569
+ Ask PostHog AI
570
+
567
571
  ### Was this page useful?
568
572
 
569
573
  HelpfulCould be better
@@ -298,6 +298,10 @@ object DeepLinkIdentityManager {
298
298
  - [How person processing works](/docs/how-posthog-works/ingestion-pipeline.md#2-person-processing)
299
299
  - [An introductory guide to identifying users in PostHog](/tutorials/identifying-users-guide.md)
300
300
 
301
+ ### Still have questions?
302
+
303
+ Ask PostHog AI
304
+
301
305
  ### Was this page useful?
302
306
 
303
307
  HelpfulCould be better
@@ -159,6 +159,10 @@ Now that you've installed the SDK, explore the configuration and usage options:
159
159
  - [Learn about using all of the features of PostHog with iOS SDK](/docs/libraries/ios/usage.md)
160
160
  - [Learn about configuration options for the iOS SDK](/docs/libraries/ios/configuration.md)
161
161
 
162
+ ### Still have questions?
163
+
164
+ Ask PostHog AI
165
+
162
166
  ### Was this page useful?
163
167
 
164
168
  HelpfulCould be better
@@ -167,6 +167,10 @@ PostHog::init(
167
167
 
168
168
  See the [PHP SDK docs](/docs/libraries/php.md) for usage examples and the full API reference.
169
169
 
170
+ ### Still have questions?
171
+
172
+ Ask PostHog AI
173
+
170
174
  ### Was this page useful?
171
175
 
172
176
  HelpfulCould be better
@@ -444,6 +444,10 @@ To improve the reliability of client-side tracking and make requests less likely
444
444
  - [How to set up Next.js pages router analytics, feature flags, and more](/tutorials/nextjs-pages-analytics.md)
445
445
  - [How to set up Next.js A/B tests](/tutorials/nextjs-ab-tests.md)
446
446
 
447
+ ### Still have questions?
448
+
449
+ Ask PostHog AI
450
+
447
451
  ### Was this page useful?
448
452
 
449
453
  HelpfulCould be better
@@ -271,6 +271,10 @@ Alternatively, the following tutorials can help you get started:
271
271
  - [How to set up A/B tests in Nuxt](/tutorials/nuxtjs-ab-tests.md)
272
272
  - [How to set up surveys in Nuxt](/tutorials/nuxt-surveys.md)
273
273
 
274
+ ### Still have questions?
275
+
276
+ Ask PostHog AI
277
+
274
278
  ### Was this page useful?
275
279
 
276
280
  HelpfulCould be better
@@ -284,6 +284,10 @@ Alternatively, the following tutorials can help you get started:
284
284
  - [How to set up A/B tests in Nuxt](/tutorials/nuxtjs-ab-tests.md)
285
285
  - [How to set up surveys in Nuxt](/tutorials/nuxt-surveys.md)
286
286
 
287
+ ### Still have questions?
288
+
289
+ Ask PostHog AI
290
+
287
291
  ### Was this page useful?
288
292
 
289
293
  HelpfulCould be better
@@ -643,6 +643,10 @@ PostHog::init(
643
643
 
644
644
  This library is largely based on the `analytics-php` package.
645
645
 
646
+ ### Still have questions?
647
+
648
+ Ask PostHog AI
649
+
646
650
  ### Was this page useful?
647
651
 
648
652
  HelpfulCould be better
@@ -2,7 +2,7 @@
2
2
 
3
3
  # PostHog Python SDK
4
4
 
5
- **SDK Version:** 7.38.4
5
+ **SDK Version:** 7.39.2
6
6
 
7
7
  Integrate PostHog into any python application.
8
8
 
@@ -75,6 +75,7 @@ Initialize a new PostHog client instance.
75
75
  - **`capture_compression`** (`CaptureCompression`) - Request-body compression for capture-v1 uploads (ignored in V0, which uses ``gzip``). ``CaptureCompression.GZIP`` or ``DEFLATE`` (or the strings ``"gzip"``/``"deflate"``). When omitted, the ``POSTHOG_CAPTURE_COMPRESSION`` env var is consulted, then the legacy ``gzip`` flag, then no compression.
76
76
  - **`secret_key`** (`any`) - A Personal API Key or Project Secret API Key, used to authenticate local feature flag evaluation, remote config payloads, and decrypted flag payloads. Example:: posthog.Client(project_api_key, secret_key="phx_...")
77
77
  - **`metrics?`** (`dict`)
78
+ - **`enable_full_ai_capture`** (`bool`) - Route PostHog AI wrapper events through the dedicated AI capture endpoint and capture full AI content: skips string truncation and passes media (base64/data URIs) through unredacted. ``privacy_mode`` always wins. Defaults to False.
78
79
  - **`_use_ai_lane`** (`bool`)
79
80
  - **`_enable_multimodal_capture`** (`bool`)
80
81
 
@@ -104,7 +105,7 @@ Create an alias between two distinct IDs.
104
105
 
105
106
  - **`previous_id?`** (`Number`) - The previous distinct ID. Required - the call is dropped with a warning if it is missing or empty.
106
107
  - **`distinct_id?`** (`str`) - The new distinct ID to alias to. Falls back to the context distinct ID; the call is dropped with a warning if neither is available.
107
- - **`timestamp`** (`datetime`) - The timestamp of the event.
108
+ - **`timestamp`** (`datetime`) - The timestamp of the event. UTC is preferred; non-UTC datetimes and parseable ISO timestamp strings are converted to UTC.
108
109
  - **`uuid?`** (`str`) - A unique identifier for the event. If provided, it must be a valid UUID string or uuid.UUID instance; invalid values are ignored and replaced with a newly generated UUID.
109
110
  - **`disable_geoip?`** (`bool`) - Whether to disable GeoIP for this event.
110
111
 
@@ -131,7 +132,7 @@ Identify a group and set its properties.
131
132
  - **`group_type?`** (`str`) - The type of group (e.g., 'company', 'team'). Required - the call is dropped with a warning if it is missing or empty.
132
133
  - **`group_key?`** (`str`) - The unique identifier for the group. Required - the call is dropped with a warning if it is missing or empty.
133
134
  - **`properties?`** (`dict[str, Any]`) - A dictionary of properties to set on the group.
134
- - **`timestamp`** (`datetime`) - The timestamp of the event.
135
+ - **`timestamp`** (`datetime`) - The timestamp of the event. UTC is preferred; non-UTC datetimes and parseable ISO timestamp strings are converted to UTC.
135
136
  - **`uuid`** (`str`) - A unique identifier for the event. If provided, it must be a valid UUID string or uuid.UUID instance; invalid values are ignored and replaced with a newly generated UUID.
136
137
  - **`disable_geoip?`** (`bool`) - Whether to disable GeoIP for this event.
137
138
  - **`distinct_id`** (`Number`) - The distinct ID of the user performing the action.
@@ -257,6 +258,23 @@ posthog.capture('$pageview', distinct_id="distinct_id_of_the_user", properties={
257
258
 
258
259
  ---
259
260
 
261
+ #### capture_ai()
262
+
263
+ **Release Tag:** public
264
+
265
+ Capture an AI event on the dedicated AI capture endpoint. Beta: the signature is stable; operational limits (per-event size cap, batching, endpoint) may change without notice. Takes the same arguments and returns the same value as `capture()`: the event UUID, or None when the event was not admitted (disabled client, or dropped by `before_send`). The event is queued on an isolated AI lane with its own consumer pool and a higher per-event size cap, posting to the dedicated AI ingestion endpoint. The payload is sent as given — no redaction or truncation is applied here.
266
+
267
+ ### Parameters
268
+
269
+ - **`event?`** (`str`)
270
+ - **`kwargs?`** (`Unpack[OptionalCaptureArgs]`)
271
+
272
+ ### Returns
273
+
274
+ - `Optional[str]`
275
+
276
+ ---
277
+
260
278
  ### Error Tracking methods
261
279
 
262
280
  #### capture_exception()
@@ -873,7 +891,7 @@ To marry up whatever a user does before they sign up or log in with what they do
873
891
 
874
892
  - **`previous_id?`** (`Number`) - The unique ID of the user before
875
893
  - **`distinct_id?`** (`str`) - The current unique id
876
- - **`timestamp?`** (`datetime`) - Optional timestamp for the event
894
+ - **`timestamp`** (`datetime`) - Optional timestamp for the event. UTC is preferred; non-UTC datetimes and parseable ISO timestamp strings are converted to UTC.
877
895
  - **`uuid?`** (`str`) - Optional UUID for the event
878
896
  - **`disable_geoip?`** (`bool`) - Whether to disable GeoIP lookup
879
897
 
@@ -902,7 +920,7 @@ Set properties on a group.
902
920
  - **`group_type?`** (`str`) - Type of your group. Required - the call is dropped with a warning if it is missing or empty.
903
921
  - **`group_key?`** (`str`) - Unique identifier of the group. Required - the call is dropped with a warning if it is missing or empty.
904
922
  - **`properties?`** (`dict[str, Any]`) - Properties to set on the group
905
- - **`timestamp?`** (`datetime`) - Optional timestamp for the event
923
+ - **`timestamp`** (`datetime`) - Optional timestamp for the event. UTC is preferred; non-UTC datetimes and parseable ISO timestamp strings are converted to UTC.
906
924
  - **`uuid?`** (`str`) - Optional UUID for the event
907
925
  - **`disable_geoip?`** (`bool`) - Whether to disable GeoIP lookup
908
926
  - **`distinct_id`** (`Number`) - Optional distinct ID of the user performing the action
@@ -1073,6 +1091,35 @@ capture(
1073
1091
 
1074
1092
  ---
1075
1093
 
1094
+ #### capture_ai()
1095
+
1096
+ **Release Tag:** public
1097
+
1098
+ Capture an AI event on the dedicated AI capture endpoint. Beta: the signature is stable; operational limits (per-event size cap, batching, endpoint) may change without notice. Takes the same arguments and returns the same value as `capture()`: the event UUID, or None when the event was not admitted (disabled client, or dropped by `before_send`). The event is delivered on an isolated queue with its own consumer pool and a higher per-event size cap, posting to the dedicated AI ingestion endpoint. The payload is sent as given — no redaction or truncation is applied here.
1099
+
1100
+ ### Parameters
1101
+
1102
+ - **`event?`** (`str`) - The event name, normally one of the `$ai_*` event names. **kwargs: Same optional arguments as `capture()`.
1103
+ - **`kwargs?`** (`Unpack[OptionalCaptureArgs]`)
1104
+
1105
+ ### Returns
1106
+
1107
+ - `Optional[str]`
1108
+
1109
+ ### Examples
1110
+
1111
+ ```python
1112
+ from posthog import capture_ai
1113
+
1114
+ uuid = capture_ai(
1115
+ "$ai_generation",
1116
+ distinct_id="user_123",
1117
+ properties={"$ai_model": "gpt-5"},
1118
+ )
1119
+ ```
1120
+
1121
+ ---
1122
+
1076
1123
  #### capture_exception()
1077
1124
 
1078
1125
  **Release Tag:** public
@@ -903,6 +903,10 @@ Everything on this page works the same way on `6.9.3`. Event capture, the contex
903
903
 
904
904
  Later `7.x` releases add what the 6.x line does not receive, such as the Celery integration, tracing header sanitization, and `set_context_device_id`. They also changed the middleware's own captured properties: `7.x` sends the request IP as `$ip`, where `6.9.3` sends it as `$ip_address`, and `7.x` additionally captures `$request_path`, `$raw_user_agent`, and the authenticated user's `email`.
905
905
 
906
+ ### Still have questions?
907
+
908
+ Ask PostHog AI
909
+
906
910
  ### Was this page useful?
907
911
 
908
912
  HelpfulCould be better
@@ -1367,6 +1367,10 @@ posthog.setPersonPropertiesForFlags(...) // instead of `personProperties`
1367
1367
  posthog.setGroupPropertiesForFlags(...) // instead of `groupProperties`
1368
1368
  ```
1369
1369
 
1370
+ ### Still have questions?
1371
+
1372
+ Ask PostHog AI
1373
+
1370
1374
  ### Was this page useful?
1371
1375
 
1372
1376
  HelpfulCould be better
@@ -385,6 +385,10 @@ This guide walks you through setting up PostHog for React Router V6. If you're u
385
385
  - [PostHog AI](/docs/posthog-ai.md): After capturing events, use PostHog AI to help you understand your data and build insights.
386
386
  - [Feature flags and experiments](/docs/libraries/react.md#feature-flags): Feature flag and experiment setup is the same as React. You can find more details in the React integration guide.
387
387
 
388
+ ### Still have questions?
389
+
390
+ Ask PostHog AI
391
+
388
392
  ### Was this page useful?
389
393
 
390
394
  HelpfulCould be better
@@ -373,6 +373,10 @@ This guide walks you through setting up PostHog for React Router V7 in data mode
373
373
  - [PostHog AI](/docs/posthog-ai.md): After capturing events, use PostHog AI to help you understand your data and build insights.
374
374
  - [Feature flags and experiments](/docs/libraries/react.md#feature-flags): Feature flag and experiment setup is the same as React. You can find more details in the React integration guide.
375
375
 
376
+ ### Still have questions?
377
+
378
+ Ask PostHog AI
379
+
376
380
  ### Was this page useful?
377
381
 
378
382
  HelpfulCould be better
@@ -385,6 +385,10 @@ This guide walks you through setting up PostHog for React Router V7 in declarati
385
385
  - [PostHog AI](/docs/posthog-ai.md): After capturing events, use PostHog AI to help you understand your data and build insights.
386
386
  - [Feature flags and experiments](/docs/libraries/react.md#feature-flags): Feature flag and experiment setup is the same as React. You can find more details in the React integration guide.
387
387
 
388
+ ### Still have questions?
389
+
390
+ Ask PostHog AI
391
+
388
392
  ### Was this page useful?
389
393
 
390
394
  HelpfulCould be better
@@ -488,6 +488,10 @@ This guide walks you through setting up PostHog for React Router V7 in framework
488
488
  - [PostHog AI](/docs/posthog-ai.md): After capturing events, use PostHog AI to help you understand your data and build insights.
489
489
  - [Feature flags and experiments](/docs/libraries/react.md#feature-flags): Feature flag and experiment setup is the same as React. You can find more details in the React integration guide.
490
490
 
491
+ ### Still have questions?
492
+
493
+ Ask PostHog AI
494
+
491
495
  ### Was this page useful?
492
496
 
493
497
  HelpfulCould be better
@@ -601,6 +601,10 @@ Ensure you've set `personal_api_key` in your configuration.
601
601
 
602
602
  For any technical questions for how to integrate specific PostHog features into Rails (such as analytics, feature flags, A/B testing, etc.), have a look at our [Ruby SDK docs](/docs/libraries/ruby.md).
603
603
 
604
+ ### Still have questions?
605
+
606
+ Ask PostHog AI
607
+
604
608
  ### Was this page useful?
605
609
 
606
610
  HelpfulCould be better
@@ -756,6 +756,10 @@ posthog.clear
756
756
 
757
757
  This library is largely based on the `analytics-ruby` package.
758
758
 
759
+ ### Still have questions?
760
+
761
+ Ask PostHog AI
762
+
759
763
  ### Was this page useful?
760
764
 
761
765
  HelpfulCould be better
@@ -265,6 +265,10 @@ Alternatively, the following tutorials can help you get started:
265
265
  - [How to set up A/B tests in Svelte](/tutorials/svelte-ab-tests.md)
266
266
  - [How to set up surveys in Svelte](/tutorials/svelte-surveys.md)
267
267
 
268
+ ### Still have questions?
269
+
270
+ Ask PostHog AI
271
+
268
272
  ### Was this page useful?
269
273
 
270
274
  HelpfulCould be better
@@ -212,6 +212,10 @@ The server-side `capture` call requires a `distinctId` (the user identifier), an
212
212
 
213
213
  Installing the JS Web SDK and Node SDK means all of their functionality is available in your TanStack Start project. To learn more about this, have a look at our [JS Web SDK docs](/docs/libraries/js/usage.md) and [Node SDK docs](/docs/libraries/node.md).
214
214
 
215
+ ### Still have questions?
216
+
217
+ Ask PostHog AI
218
+
215
219
  ### Was this page useful?
216
220
 
217
221
  HelpfulCould be better
@@ -632,6 +632,10 @@ PostHogSDK.shared.debug(true)
632
632
  PostHogSDK.shared.debug(false)
633
633
  ```
634
634
 
635
+ ### Still have questions?
636
+
637
+ Ask PostHog AI
638
+
635
639
  ### Was this page useful?
636
640
 
637
641
  HelpfulCould be better
@@ -337,6 +337,10 @@ Alternatively, the following tutorials can help you get started:
337
337
  - [How to set up A/B tests in Vue](/tutorials/vue-ab-tests.md)
338
338
  - [How to set up surveys in Vue](/tutorials/vue-surveys.md)
339
339
 
340
+ ### Still have questions?
341
+
342
+ Ask PostHog AI
343
+
340
344
  ### Was this page useful?
341
345
 
342
346
  HelpfulCould be better
@@ -53,6 +53,7 @@
53
53
  "expo-module",
54
54
  "expo-native-ui",
55
55
  "expo-observe",
56
+ "expo-overview",
56
57
  "expo-project-structure",
57
58
  "expo-router",
58
59
  "expo-skill-eval",
@@ -127,5 +128,5 @@
127
128
  "wrangler",
128
129
  "xcode-project-setup"
129
130
  ],
130
- "count": 126
131
+ "count": 127
131
132
  }
@@ -362,7 +362,7 @@ For reading env you _already_ have on disk (typed and validated against your `ne
362
362
 
363
363
  ## Observability
364
364
 
365
- Neon exposes branch-scoped logs. **Today they cover Neon Functions and Object Storage only.** Postgres computes and the AI Gateway are coming; until then, neither emits records. Logs are region-gated like the other beta services above only `us-east-2` is enabled today, and a branch in any other region answers `404` with reason `telemetry_not_enabled` rather than an empty result.
365
+ Neon exposes branch-scoped logs. **Today they cover Neon Functions and Object Storage only.** Postgres computes and the AI Gateway are coming; until then, neither emits records. Logs are region-gated like the other beta services above. Only `us-east-2` is enabled today. A branch that can't serve logs at all answers `404` with `reason: telemetry_not_enabled` (the message says whether it's the wrong region or a branch not collecting telemetry yet), versus a `200` empty result when the branch is enabled but has no records in the window; an unknown branch answers `reason: branch_not_found`.
366
366
 
367
367
  Use Neon CLI 3.1 or newer first. **Decide which branch you are querying.** Without `--branch`, the CLI uses the branch pinned in `.neon`, or the project's default branch when the workspace isn't linked. A deployed function or bucket usually lives on a different branch than the one checked out for development, so an empty result is more often the wrong branch than a missing log.
368
368
 
@@ -374,7 +374,7 @@ neon logs fields
374
374
  neon logs field-values service_name --since 1h
375
375
  ```
376
376
 
377
- `--source` accepts `function`, `storage`, and `pg_endpoint`, but only `function` and `storage` return records today — `pg_endpoint` is accepted and comes back empty until Postgres logs ship. The window defaults to 1h on `query` and 6h on `field-values`, and cannot exceed 7d on either. If Neon reports `--minimum-severity` as unsupported on a branch, use `--severity-text` instead. Run `neon logs --help` for the full filter and pagination interface.
377
+ `--source` accepts `function`, `storage`, and `pg_endpoint`, but only `function` and `storage` return records today — `pg_endpoint` is accepted and comes back empty until Postgres logs ship. The window defaults to 1h on `query` and 6h on `field-values`, and cannot exceed 7d on either. If Neon reports `--minimum-severity` as unsupported on a branch, use `--severity-text` instead (an exact, case-sensitive match, e.g. `ERROR`); severities vary by source, so confirm what a branch carries with `neon logs field-values severity_text`. Run `neon logs --help` for the full filter and pagination interface.
378
378
 
379
379
  `--logql` replaces the structured filters with a raw stream selector or line filter. Its stream label is `entity_type`, not `source`:
380
380