@opentabs-dev/opentabs-plugin-posthog 0.0.74

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 (145) hide show
  1. package/README.md +159 -0
  2. package/dist/adapter.iife.js +15614 -0
  3. package/dist/adapter.iife.js.map +7 -0
  4. package/dist/index.d.ts +14 -0
  5. package/dist/index.d.ts.map +1 -0
  6. package/dist/index.js +104 -0
  7. package/dist/index.js.map +1 -0
  8. package/dist/posthog-api.d.ts +21 -0
  9. package/dist/posthog-api.d.ts.map +1 -0
  10. package/dist/posthog-api.js +82 -0
  11. package/dist/posthog-api.js.map +1 -0
  12. package/dist/tools/create-annotation.d.ts +20 -0
  13. package/dist/tools/create-annotation.d.ts.map +1 -0
  14. package/dist/tools/create-annotation.js +31 -0
  15. package/dist/tools/create-annotation.js.map +1 -0
  16. package/dist/tools/create-dashboard.d.ts +25 -0
  17. package/dist/tools/create-dashboard.d.ts.map +1 -0
  18. package/dist/tools/create-dashboard.js +29 -0
  19. package/dist/tools/create-dashboard.js.map +1 -0
  20. package/dist/tools/create-experiment.d.ts +23 -0
  21. package/dist/tools/create-experiment.d.ts.map +1 -0
  22. package/dist/tools/create-experiment.js +31 -0
  23. package/dist/tools/create-experiment.js.map +1 -0
  24. package/dist/tools/create-feature-flag.d.ts +26 -0
  25. package/dist/tools/create-feature-flag.d.ts.map +1 -0
  26. package/dist/tools/create-feature-flag.js +45 -0
  27. package/dist/tools/create-feature-flag.js.map +1 -0
  28. package/dist/tools/delete-annotation.d.ts +7 -0
  29. package/dist/tools/delete-annotation.d.ts.map +1 -0
  30. package/dist/tools/delete-annotation.js +22 -0
  31. package/dist/tools/delete-annotation.js.map +1 -0
  32. package/dist/tools/delete-dashboard.d.ts +7 -0
  33. package/dist/tools/delete-dashboard.d.ts.map +1 -0
  34. package/dist/tools/delete-dashboard.js +22 -0
  35. package/dist/tools/delete-dashboard.js.map +1 -0
  36. package/dist/tools/delete-feature-flag.d.ts +7 -0
  37. package/dist/tools/delete-feature-flag.d.ts.map +1 -0
  38. package/dist/tools/delete-feature-flag.js +22 -0
  39. package/dist/tools/delete-feature-flag.js.map +1 -0
  40. package/dist/tools/delete-insight.d.ts +7 -0
  41. package/dist/tools/delete-insight.d.ts.map +1 -0
  42. package/dist/tools/delete-insight.js +23 -0
  43. package/dist/tools/delete-insight.js.map +1 -0
  44. package/dist/tools/get-action.d.ts +19 -0
  45. package/dist/tools/get-action.d.ts.map +1 -0
  46. package/dist/tools/get-action.js +23 -0
  47. package/dist/tools/get-action.js.map +1 -0
  48. package/dist/tools/get-cohort.d.ts +20 -0
  49. package/dist/tools/get-cohort.d.ts.map +1 -0
  50. package/dist/tools/get-cohort.js +23 -0
  51. package/dist/tools/get-cohort.js.map +1 -0
  52. package/dist/tools/get-current-user.d.ts +14 -0
  53. package/dist/tools/get-current-user.d.ts.map +1 -0
  54. package/dist/tools/get-current-user.js +32 -0
  55. package/dist/tools/get-current-user.js.map +1 -0
  56. package/dist/tools/get-dashboard.d.ts +22 -0
  57. package/dist/tools/get-dashboard.d.ts.map +1 -0
  58. package/dist/tools/get-dashboard.js +23 -0
  59. package/dist/tools/get-dashboard.js.map +1 -0
  60. package/dist/tools/get-experiment.d.ts +21 -0
  61. package/dist/tools/get-experiment.d.ts.map +1 -0
  62. package/dist/tools/get-experiment.js +23 -0
  63. package/dist/tools/get-experiment.js.map +1 -0
  64. package/dist/tools/get-feature-flag.d.ts +22 -0
  65. package/dist/tools/get-feature-flag.d.ts.map +1 -0
  66. package/dist/tools/get-feature-flag.js +23 -0
  67. package/dist/tools/get-feature-flag.js.map +1 -0
  68. package/dist/tools/get-insight.d.ts +26 -0
  69. package/dist/tools/get-insight.d.ts.map +1 -0
  70. package/dist/tools/get-insight.js +24 -0
  71. package/dist/tools/get-insight.js.map +1 -0
  72. package/dist/tools/get-organization.d.ts +10 -0
  73. package/dist/tools/get-organization.d.ts.map +1 -0
  74. package/dist/tools/get-organization.js +21 -0
  75. package/dist/tools/get-organization.js.map +1 -0
  76. package/dist/tools/get-person.d.ts +14 -0
  77. package/dist/tools/get-person.d.ts.map +1 -0
  78. package/dist/tools/get-person.js +23 -0
  79. package/dist/tools/get-person.js.map +1 -0
  80. package/dist/tools/get-project.d.ts +15 -0
  81. package/dist/tools/get-project.d.ts.map +1 -0
  82. package/dist/tools/get-project.js +24 -0
  83. package/dist/tools/get-project.js.map +1 -0
  84. package/dist/tools/get-survey.d.ts +16 -0
  85. package/dist/tools/get-survey.d.ts.map +1 -0
  86. package/dist/tools/get-survey.js +23 -0
  87. package/dist/tools/get-survey.js.map +1 -0
  88. package/dist/tools/list-actions.d.ts +22 -0
  89. package/dist/tools/list-actions.d.ts.map +1 -0
  90. package/dist/tools/list-actions.js +30 -0
  91. package/dist/tools/list-actions.js.map +1 -0
  92. package/dist/tools/list-annotations.d.ts +22 -0
  93. package/dist/tools/list-annotations.d.ts.map +1 -0
  94. package/dist/tools/list-annotations.js +29 -0
  95. package/dist/tools/list-annotations.js.map +1 -0
  96. package/dist/tools/list-cohorts.d.ts +23 -0
  97. package/dist/tools/list-cohorts.d.ts.map +1 -0
  98. package/dist/tools/list-cohorts.js +30 -0
  99. package/dist/tools/list-cohorts.js.map +1 -0
  100. package/dist/tools/list-dashboards.d.ts +25 -0
  101. package/dist/tools/list-dashboards.d.ts.map +1 -0
  102. package/dist/tools/list-dashboards.js +30 -0
  103. package/dist/tools/list-dashboards.js.map +1 -0
  104. package/dist/tools/list-experiments.d.ts +24 -0
  105. package/dist/tools/list-experiments.d.ts.map +1 -0
  106. package/dist/tools/list-experiments.js +30 -0
  107. package/dist/tools/list-experiments.js.map +1 -0
  108. package/dist/tools/list-feature-flags.d.ts +27 -0
  109. package/dist/tools/list-feature-flags.d.ts.map +1 -0
  110. package/dist/tools/list-feature-flags.js +35 -0
  111. package/dist/tools/list-feature-flags.js.map +1 -0
  112. package/dist/tools/list-insights.d.ts +31 -0
  113. package/dist/tools/list-insights.d.ts.map +1 -0
  114. package/dist/tools/list-insights.js +38 -0
  115. package/dist/tools/list-insights.js.map +1 -0
  116. package/dist/tools/list-persons.d.ts +19 -0
  117. package/dist/tools/list-persons.d.ts.map +1 -0
  118. package/dist/tools/list-persons.js +35 -0
  119. package/dist/tools/list-persons.js.map +1 -0
  120. package/dist/tools/list-projects.d.ts +18 -0
  121. package/dist/tools/list-projects.d.ts.map +1 -0
  122. package/dist/tools/list-projects.js +31 -0
  123. package/dist/tools/list-projects.js.map +1 -0
  124. package/dist/tools/list-surveys.d.ts +20 -0
  125. package/dist/tools/list-surveys.d.ts.map +1 -0
  126. package/dist/tools/list-surveys.js +29 -0
  127. package/dist/tools/list-surveys.js.map +1 -0
  128. package/dist/tools/schemas.d.ts +452 -0
  129. package/dist/tools/schemas.d.ts.map +1 -0
  130. package/dist/tools/schemas.js +276 -0
  131. package/dist/tools/schemas.js.map +1 -0
  132. package/dist/tools/update-dashboard.d.ts +26 -0
  133. package/dist/tools/update-dashboard.d.ts.map +1 -0
  134. package/dist/tools/update-dashboard.js +31 -0
  135. package/dist/tools/update-dashboard.js.map +1 -0
  136. package/dist/tools/update-feature-flag.d.ts +26 -0
  137. package/dist/tools/update-feature-flag.d.ts.map +1 -0
  138. package/dist/tools/update-feature-flag.js +42 -0
  139. package/dist/tools/update-feature-flag.js.map +1 -0
  140. package/dist/tools/update-insight.d.ts +30 -0
  141. package/dist/tools/update-insight.d.ts.map +1 -0
  142. package/dist/tools/update-insight.js +40 -0
  143. package/dist/tools/update-insight.js.map +1 -0
  144. package/dist/tools.json +3530 -0
  145. package/package.json +55 -0
@@ -0,0 +1,22 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { getTeamId, softDelete } from '../posthog-api.js';
4
+ export const deleteFeatureFlag = defineTool({
5
+ name: 'delete_feature_flag',
6
+ displayName: 'Delete Feature Flag',
7
+ description: 'Delete a feature flag by marking it as deleted (soft delete).',
8
+ summary: 'Delete a feature flag',
9
+ icon: 'trash-2',
10
+ group: 'Feature Flags',
11
+ input: z.object({
12
+ flag_id: z.number().int().describe('Feature flag ID to delete'),
13
+ }),
14
+ output: z.object({
15
+ success: z.boolean().describe('Whether the deletion succeeded'),
16
+ }),
17
+ handle: async (params) => {
18
+ await softDelete(`/api/projects/${getTeamId()}/feature_flags/${params.flag_id}/`);
19
+ return { success: true };
20
+ },
21
+ });
22
+ //# sourceMappingURL=delete-feature-flag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-feature-flag.js","sourceRoot":"","sources":["../../src/tools/delete-feature-flag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,CAAC,MAAM,iBAAiB,GAAG,UAAU,CAAC;IAC1C,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,qBAAqB;IAClC,WAAW,EAAE,+DAA+D;IAC5E,OAAO,EAAE,uBAAuB;IAChC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,eAAe;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;KAChE,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;KAChE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,UAAU,CAAC,iBAAiB,SAAS,EAAE,kBAAkB,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;QAClF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { z } from 'zod';
2
+ export declare const deleteInsight: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ insight_id: z.ZodNumber;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ success: z.ZodBoolean;
6
+ }, z.core.$strip>>;
7
+ //# sourceMappingURL=delete-insight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-insight.d.ts","sourceRoot":"","sources":["../../src/tools/delete-insight.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,aAAa;;;;kBAkBxB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { getTeamId, softDelete } from '../posthog-api.js';
4
+ export const deleteInsight = defineTool({
5
+ name: 'delete_insight',
6
+ displayName: 'Delete Insight',
7
+ description: 'Delete an insight by marking it as deleted (soft delete).',
8
+ summary: 'Delete an insight',
9
+ icon: 'trash-2',
10
+ group: 'Insights',
11
+ input: z.object({
12
+ insight_id: z.number().int().describe('Insight ID to delete'),
13
+ }),
14
+ output: z.object({
15
+ success: z.boolean().describe('Whether the deletion succeeded'),
16
+ }),
17
+ handle: async (params) => {
18
+ const teamId = getTeamId();
19
+ await softDelete(`/api/environments/${teamId}/insights/${params.insight_id}/`);
20
+ return { success: true };
21
+ },
22
+ });
23
+ //# sourceMappingURL=delete-insight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-insight.js","sourceRoot":"","sources":["../../src/tools/delete-insight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC;IACtC,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,gBAAgB;IAC7B,WAAW,EAAE,2DAA2D;IACxE,OAAO,EAAE,mBAAmB;IAC5B,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;KAC9D,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;KAChE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,UAAU,CAAC,qBAAqB,MAAM,aAAa,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;QAC/E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { z } from 'zod';
2
+ export declare const getAction: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ action_id: z.ZodNumber;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ action: z.ZodObject<{
6
+ id: z.ZodNumber;
7
+ name: z.ZodString;
8
+ description: z.ZodString;
9
+ tags: z.ZodArray<z.ZodString>;
10
+ created_at: z.ZodString;
11
+ created_by: z.ZodNullable<z.ZodObject<{
12
+ id: z.ZodNumber;
13
+ first_name: z.ZodString;
14
+ email: z.ZodString;
15
+ }, z.core.$strip>>;
16
+ is_calculating: z.ZodBoolean;
17
+ }, z.core.$strip>;
18
+ }, z.core.$strip>>;
19
+ //# sourceMappingURL=get-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-action.d.ts","sourceRoot":"","sources":["../../src/tools/get-action.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;kBAiBpB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api, getTeamId } from '../posthog-api.js';
4
+ import { actionSchema, mapAction } from './schemas.js';
5
+ export const getAction = defineTool({
6
+ name: 'get_action',
7
+ displayName: 'Get Action',
8
+ description: 'Get detailed information about a specific action including its tags and calculation status.',
9
+ summary: 'Get action details',
10
+ icon: 'zap',
11
+ group: 'Actions',
12
+ input: z.object({
13
+ action_id: z.number().int().describe('Action ID'),
14
+ }),
15
+ output: z.object({
16
+ action: actionSchema.describe('The action details'),
17
+ }),
18
+ handle: async (params) => {
19
+ const data = await api(`/api/projects/${getTeamId()}/actions/${params.action_id}/`);
20
+ return { action: mapAction(data) };
21
+ },
22
+ });
23
+ //# sourceMappingURL=get-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-action.js","sourceRoot":"","sources":["../../src/tools/get-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAkB,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvE,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAC;IAClC,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,6FAA6F;IAC1G,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,KAAK;IACX,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;KAClD,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KACpD,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAY,iBAAiB,SAAS,EAAE,YAAY,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;QAC/F,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IACrC,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { z } from 'zod';
2
+ export declare const getCohort: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ cohort_id: z.ZodNumber;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ cohort: z.ZodObject<{
6
+ id: z.ZodNumber;
7
+ name: z.ZodString;
8
+ description: z.ZodString;
9
+ count: z.ZodNullable<z.ZodNumber>;
10
+ is_static: z.ZodBoolean;
11
+ is_calculating: z.ZodBoolean;
12
+ created_at: z.ZodString;
13
+ created_by: z.ZodNullable<z.ZodObject<{
14
+ id: z.ZodNumber;
15
+ first_name: z.ZodString;
16
+ email: z.ZodString;
17
+ }, z.core.$strip>>;
18
+ }, z.core.$strip>;
19
+ }, z.core.$strip>>;
20
+ //# sourceMappingURL=get-cohort.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-cohort.d.ts","sourceRoot":"","sources":["../../src/tools/get-cohort.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;kBAiBpB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api, getTeamId } from '../posthog-api.js';
4
+ import { cohortSchema, mapCohort } from './schemas.js';
5
+ export const getCohort = defineTool({
6
+ name: 'get_cohort',
7
+ displayName: 'Get Cohort',
8
+ description: 'Get detailed information about a specific cohort including its person count and calculation status.',
9
+ summary: 'Get cohort details',
10
+ icon: 'users-round',
11
+ group: 'Cohorts',
12
+ input: z.object({
13
+ cohort_id: z.number().int().describe('Cohort ID'),
14
+ }),
15
+ output: z.object({
16
+ cohort: cohortSchema.describe('The cohort details'),
17
+ }),
18
+ handle: async (params) => {
19
+ const data = await api(`/api/projects/${getTeamId()}/cohorts/${params.cohort_id}/`);
20
+ return { cohort: mapCohort(data) };
21
+ },
22
+ });
23
+ //# sourceMappingURL=get-cohort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-cohort.js","sourceRoot":"","sources":["../../src/tools/get-cohort.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAkB,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvE,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAC;IAClC,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,qGAAqG;IAClH,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;KAClD,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KACpD,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAY,iBAAiB,SAAS,EAAE,YAAY,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;QAC/F,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IACrC,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ export declare const getCurrentUser: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{}, z.core.$strip>, z.ZodObject<{
3
+ user: z.ZodObject<{
4
+ id: z.ZodNumber;
5
+ uuid: z.ZodString;
6
+ email: z.ZodString;
7
+ first_name: z.ZodString;
8
+ last_name: z.ZodString;
9
+ distinct_id: z.ZodString;
10
+ is_email_verified: z.ZodBoolean;
11
+ is_2fa_enabled: z.ZodBoolean;
12
+ }, z.core.$strip>;
13
+ }, z.core.$strip>>;
14
+ //# sourceMappingURL=get-current-user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-current-user.d.ts","sourceRoot":"","sources":["../../src/tools/get-current-user.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,cAAc;;;;;;;;;;;kBA2BzB,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../posthog-api.js';
4
+ import { mapUser, userSchema } from './schemas.js';
5
+ export const getCurrentUser = defineTool({
6
+ name: 'get_current_user',
7
+ displayName: 'Get Current User',
8
+ description: 'Get the profile of the currently authenticated PostHog user including email, name, and organization details.',
9
+ summary: 'Get your PostHog profile',
10
+ icon: 'user',
11
+ group: 'Users',
12
+ input: z.object({}),
13
+ output: z.object({
14
+ user: userSchema
15
+ .extend({
16
+ is_email_verified: z.boolean().describe('Whether the email address is verified'),
17
+ is_2fa_enabled: z.boolean().describe('Whether two-factor authentication is enabled'),
18
+ })
19
+ .describe('The authenticated user profile'),
20
+ }),
21
+ handle: async () => {
22
+ const data = await api('/api/users/@me/');
23
+ return {
24
+ user: {
25
+ ...mapUser(data),
26
+ is_email_verified: data.is_email_verified ?? false,
27
+ is_2fa_enabled: data.is_2fa_enabled ?? false,
28
+ },
29
+ };
30
+ },
31
+ });
32
+ //# sourceMappingURL=get-current-user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-current-user.js","sourceRoot":"","sources":["../../src/tools/get-current-user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAgB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;IACvC,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EACT,8GAA8G;IAChH,OAAO,EAAE,0BAA0B;IACnC,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IACnB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,IAAI,EAAE,UAAU;aACb,MAAM,CAAC;YACN,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YAChF,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;SACrF,CAAC;aACD,QAAQ,CAAC,gCAAgC,CAAC;KAC9C,CAAC;IACF,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAoC,iBAAiB,CAAC,CAAC;QAC7E,OAAO;YACL,IAAI,EAAE;gBACJ,GAAG,OAAO,CAAC,IAAI,CAAC;gBAChB,iBAAiB,EAAG,IAAI,CAAC,iBAA6B,IAAI,KAAK;gBAC/D,cAAc,EAAG,IAAI,CAAC,cAA0B,IAAI,KAAK;aAC1D;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { z } from 'zod';
2
+ export declare const getDashboard: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ dashboard_id: z.ZodNumber;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ dashboard: z.ZodObject<{
6
+ id: z.ZodNumber;
7
+ name: z.ZodString;
8
+ description: z.ZodString;
9
+ pinned: z.ZodBoolean;
10
+ created_at: z.ZodString;
11
+ created_by: z.ZodNullable<z.ZodObject<{
12
+ id: z.ZodNumber;
13
+ first_name: z.ZodString;
14
+ email: z.ZodString;
15
+ }, z.core.$strip>>;
16
+ is_shared: z.ZodBoolean;
17
+ tags: z.ZodArray<z.ZodString>;
18
+ tiles_count: z.ZodNumber;
19
+ deleted: z.ZodBoolean;
20
+ }, z.core.$strip>;
21
+ }, z.core.$strip>>;
22
+ //# sourceMappingURL=get-dashboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-dashboard.d.ts","sourceRoot":"","sources":["../../src/tools/get-dashboard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;kBAiBvB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api, getTeamId } from '../posthog-api.js';
4
+ import { dashboardSchema, mapDashboard } from './schemas.js';
5
+ export const getDashboard = defineTool({
6
+ name: 'get_dashboard',
7
+ displayName: 'Get Dashboard',
8
+ description: 'Get detailed information about a specific dashboard including its tiles and sharing status.',
9
+ summary: 'Get dashboard details',
10
+ icon: 'layout-dashboard',
11
+ group: 'Dashboards',
12
+ input: z.object({
13
+ dashboard_id: z.number().int().describe('Dashboard ID'),
14
+ }),
15
+ output: z.object({
16
+ dashboard: dashboardSchema.describe('The dashboard details'),
17
+ }),
18
+ handle: async (params) => {
19
+ const data = await api(`/api/environments/${getTeamId()}/dashboards/${params.dashboard_id}/`);
20
+ return { dashboard: mapDashboard(data) };
21
+ },
22
+ });
23
+ //# sourceMappingURL=get-dashboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-dashboard.js","sourceRoot":"","sources":["../../src/tools/get-dashboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAqB,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEhF,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;IACrC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,6FAA6F;IAC1G,OAAO,EAAE,uBAAuB;IAChC,IAAI,EAAE,kBAAkB;IACxB,KAAK,EAAE,YAAY;IACnB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;KACxD,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,SAAS,EAAE,eAAe,CAAC,QAAQ,CAAC,uBAAuB,CAAC;KAC7D,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAe,qBAAqB,SAAS,EAAE,eAAe,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC;QAC5G,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;IAC3C,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { z } from 'zod';
2
+ export declare const getExperiment: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ experiment_id: z.ZodNumber;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ experiment: z.ZodObject<{
6
+ id: z.ZodNumber;
7
+ name: z.ZodString;
8
+ description: z.ZodString;
9
+ start_date: z.ZodNullable<z.ZodString>;
10
+ end_date: z.ZodNullable<z.ZodString>;
11
+ feature_flag_key: z.ZodString;
12
+ created_at: z.ZodString;
13
+ created_by: z.ZodNullable<z.ZodObject<{
14
+ id: z.ZodNumber;
15
+ first_name: z.ZodString;
16
+ email: z.ZodString;
17
+ }, z.core.$strip>>;
18
+ type: z.ZodString;
19
+ }, z.core.$strip>;
20
+ }, z.core.$strip>>;
21
+ //# sourceMappingURL=get-experiment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-experiment.d.ts","sourceRoot":"","sources":["../../src/tools/get-experiment.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;kBAkBxB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api, getTeamId } from '../posthog-api.js';
4
+ import { experimentSchema, mapExperiment } from './schemas.js';
5
+ export const getExperiment = defineTool({
6
+ name: 'get_experiment',
7
+ displayName: 'Get Experiment',
8
+ description: 'Get detailed information about a specific experiment including its dates and feature flag key.',
9
+ summary: 'Get experiment details',
10
+ icon: 'flask-conical',
11
+ group: 'Experiments',
12
+ input: z.object({
13
+ experiment_id: z.number().int().describe('Experiment ID'),
14
+ }),
15
+ output: z.object({
16
+ experiment: experimentSchema.describe('The experiment details'),
17
+ }),
18
+ handle: async (params) => {
19
+ const data = await api(`/api/projects/${getTeamId()}/experiments/${params.experiment_id}/`);
20
+ return { experiment: mapExperiment(data) };
21
+ },
22
+ });
23
+ //# sourceMappingURL=get-experiment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-experiment.js","sourceRoot":"","sources":["../../src/tools/get-experiment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAsB,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAEnF,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC;IACtC,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,gBAAgB;IAC7B,WAAW,EAAE,gGAAgG;IAC7G,OAAO,EAAE,wBAAwB;IACjC,IAAI,EAAE,eAAe;IACrB,KAAK,EAAE,aAAa;IACpB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;KAC1D,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,UAAU,EAAE,gBAAgB,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KAChE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAgB,iBAAiB,SAAS,EAAE,gBAAgB,MAAM,CAAC,aAAa,GAAG,CAAC,CAAC;QAE3G,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;IAC7C,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { z } from 'zod';
2
+ export declare const getFeatureFlag: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ flag_id: z.ZodNumber;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ feature_flag: z.ZodObject<{
6
+ id: z.ZodNumber;
7
+ key: z.ZodString;
8
+ name: z.ZodString;
9
+ active: z.ZodBoolean;
10
+ deleted: z.ZodBoolean;
11
+ ensure_experience_continuity: z.ZodBoolean;
12
+ rollout_percentage: z.ZodNullable<z.ZodNumber>;
13
+ tags: z.ZodArray<z.ZodString>;
14
+ created_at: z.ZodString;
15
+ created_by: z.ZodNullable<z.ZodObject<{
16
+ id: z.ZodNumber;
17
+ first_name: z.ZodString;
18
+ email: z.ZodString;
19
+ }, z.core.$strip>>;
20
+ }, z.core.$strip>;
21
+ }, z.core.$strip>>;
22
+ //# sourceMappingURL=get-feature-flag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-feature-flag.d.ts","sourceRoot":"","sources":["../../src/tools/get-feature-flag.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;kBAmBzB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api, getTeamId } from '../posthog-api.js';
4
+ import { featureFlagSchema, mapFeatureFlag } from './schemas.js';
5
+ export const getFeatureFlag = defineTool({
6
+ name: 'get_feature_flag',
7
+ displayName: 'Get Feature Flag',
8
+ description: 'Get detailed information about a specific feature flag including its key, rollout configuration, and tags.',
9
+ summary: 'Get feature flag details',
10
+ icon: 'flag',
11
+ group: 'Feature Flags',
12
+ input: z.object({
13
+ flag_id: z.number().int().describe('Feature flag ID'),
14
+ }),
15
+ output: z.object({
16
+ feature_flag: featureFlagSchema.describe('The feature flag details'),
17
+ }),
18
+ handle: async (params) => {
19
+ const data = await api(`/api/projects/${getTeamId()}/feature_flags/${params.flag_id}/`);
20
+ return { feature_flag: mapFeatureFlag(data) };
21
+ },
22
+ });
23
+ //# sourceMappingURL=get-feature-flag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-feature-flag.js","sourceRoot":"","sources":["../../src/tools/get-feature-flag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAuB,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEtF,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;IACvC,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EACT,4GAA4G;IAC9G,OAAO,EAAE,0BAA0B;IACnC,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,eAAe;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;KACtD,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,YAAY,EAAE,iBAAiB,CAAC,QAAQ,CAAC,0BAA0B,CAAC;KACrE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAiB,iBAAiB,SAAS,EAAE,kBAAkB,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;QAExG,OAAO,EAAE,YAAY,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;IAChD,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { z } from 'zod';
2
+ export declare const getInsight: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ insight_id: z.ZodNumber;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ insight: z.ZodObject<{
6
+ id: z.ZodNumber;
7
+ short_id: z.ZodString;
8
+ name: z.ZodString;
9
+ derived_name: z.ZodNullable<z.ZodString>;
10
+ description: z.ZodString;
11
+ favorited: z.ZodBoolean;
12
+ tags: z.ZodArray<z.ZodString>;
13
+ dashboards: z.ZodArray<z.ZodNumber>;
14
+ query_kind: z.ZodString;
15
+ source_kind: z.ZodString;
16
+ created_at: z.ZodString;
17
+ created_by: z.ZodNullable<z.ZodObject<{
18
+ id: z.ZodNumber;
19
+ first_name: z.ZodString;
20
+ email: z.ZodString;
21
+ }, z.core.$strip>>;
22
+ last_modified_at: z.ZodString;
23
+ deleted: z.ZodBoolean;
24
+ }, z.core.$strip>;
25
+ }, z.core.$strip>>;
26
+ //# sourceMappingURL=get-insight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-insight.d.ts","sourceRoot":"","sources":["../../src/tools/get-insight.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;kBAmBrB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api, getTeamId } from '../posthog-api.js';
4
+ import { insightSchema, mapInsight } from './schemas.js';
5
+ export const getInsight = defineTool({
6
+ name: 'get_insight',
7
+ displayName: 'Get Insight',
8
+ description: 'Get detailed information about a specific insight including its query configuration and dashboard associations.',
9
+ summary: 'Get insight details',
10
+ icon: 'bar-chart-3',
11
+ group: 'Insights',
12
+ input: z.object({
13
+ insight_id: z.number().int().describe('Insight ID'),
14
+ }),
15
+ output: z.object({
16
+ insight: insightSchema.describe('The insight details'),
17
+ }),
18
+ handle: async (params) => {
19
+ const teamId = getTeamId();
20
+ const data = await api(`/api/environments/${teamId}/insights/${params.insight_id}/`);
21
+ return { insight: mapInsight(data) };
22
+ },
23
+ });
24
+ //# sourceMappingURL=get-insight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-insight.js","sourceRoot":"","sources":["../../src/tools/get-insight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAmB,aAAa,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,aAAa;IAC1B,WAAW,EACT,iHAAiH;IACnH,OAAO,EAAE,qBAAqB;IAC9B,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;KACpD,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,qBAAqB,CAAC;KACvD,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,MAAM,GAAG,CAAa,qBAAqB,MAAM,aAAa,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;QACjG,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;IACvC,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { z } from 'zod';
2
+ export declare const getOrganization: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{}, z.core.$strip>, z.ZodObject<{
3
+ organization: z.ZodObject<{
4
+ id: z.ZodString;
5
+ name: z.ZodString;
6
+ created_at: z.ZodString;
7
+ membership_level: z.ZodNumber;
8
+ }, z.core.$strip>;
9
+ }, z.core.$strip>>;
10
+ //# sourceMappingURL=get-organization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-organization.d.ts","sourceRoot":"","sources":["../../src/tools/get-organization.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,eAAe;;;;;;;kBAe1B,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../posthog-api.js';
4
+ import { mapOrganization, organizationSchema } from './schemas.js';
5
+ export const getOrganization = defineTool({
6
+ name: 'get_organization',
7
+ displayName: 'Get Organization',
8
+ description: 'Get details about the current PostHog organization including name and membership level.',
9
+ summary: 'Get current organization info',
10
+ icon: 'building-2',
11
+ group: 'Organization',
12
+ input: z.object({}),
13
+ output: z.object({
14
+ organization: organizationSchema.describe('The organization details'),
15
+ }),
16
+ handle: async () => {
17
+ const data = await api('/api/organizations/@current/');
18
+ return { organization: mapOrganization(data) };
19
+ },
20
+ });
21
+ //# sourceMappingURL=get-organization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-organization.js","sourceRoot":"","sources":["../../src/tools/get-organization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAwB,eAAe,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEzF,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;IACxC,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EAAE,yFAAyF;IACtG,OAAO,EAAE,+BAA+B;IACxC,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IACnB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,YAAY,EAAE,kBAAkB,CAAC,QAAQ,CAAC,0BAA0B,CAAC;KACtE,CAAC;IACF,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAkB,8BAA8B,CAAC,CAAC;QACxE,OAAO,EAAE,YAAY,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IACjD,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ export declare const getPerson: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ person_id: z.ZodNumber;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ person: z.ZodObject<{
6
+ id: z.ZodNumber;
7
+ uuid: z.ZodString;
8
+ name: z.ZodString;
9
+ distinct_ids: z.ZodArray<z.ZodString>;
10
+ properties: z.ZodRecord<z.ZodString, z.ZodUnknown>;
11
+ created_at: z.ZodString;
12
+ }, z.core.$strip>;
13
+ }, z.core.$strip>>;
14
+ //# sourceMappingURL=get-person.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-person.d.ts","sourceRoot":"","sources":["../../src/tools/get-person.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,SAAS;;;;;;;;;;;kBAiBpB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api, getTeamId } from '../posthog-api.js';
4
+ import { mapPerson, personSchema } from './schemas.js';
5
+ export const getPerson = defineTool({
6
+ name: 'get_person',
7
+ displayName: 'Get Person',
8
+ description: 'Get detailed information about a specific person including their properties and distinct IDs.',
9
+ summary: 'Get person details',
10
+ icon: 'user',
11
+ group: 'Persons',
12
+ input: z.object({
13
+ person_id: z.number().int().describe('Person internal ID'),
14
+ }),
15
+ output: z.object({
16
+ person: personSchema.describe('The person details'),
17
+ }),
18
+ handle: async (params) => {
19
+ const data = await api(`/api/environments/${getTeamId()}/persons/${params.person_id}/`);
20
+ return { person: mapPerson(data) };
21
+ },
22
+ });
23
+ //# sourceMappingURL=get-person.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-person.js","sourceRoot":"","sources":["../../src/tools/get-person.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAkB,SAAS,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEvE,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAC;IAClC,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,+FAA+F;IAC5G,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KAC3D,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KACpD,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAY,qBAAqB,SAAS,EAAE,YAAY,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;QACnG,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IACrC,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { z } from 'zod';
2
+ export declare const getProject: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ project_id: z.ZodNumber;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ project: z.ZodObject<{
6
+ id: z.ZodNumber;
7
+ uuid: z.ZodString;
8
+ name: z.ZodString;
9
+ api_token: z.ZodString;
10
+ timezone: z.ZodString;
11
+ is_demo: z.ZodBoolean;
12
+ created_at: z.ZodString;
13
+ }, z.core.$strip>;
14
+ }, z.core.$strip>>;
15
+ //# sourceMappingURL=get-project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-project.d.ts","sourceRoot":"","sources":["../../src/tools/get-project.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU;;;;;;;;;;;;kBAkBrB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api, getOrgId } from '../posthog-api.js';
4
+ import { mapProject, projectSchema } from './schemas.js';
5
+ export const getProject = defineTool({
6
+ name: 'get_project',
7
+ displayName: 'Get Project',
8
+ description: 'Get detailed information about a specific PostHog project by its ID.',
9
+ summary: 'Get project details',
10
+ icon: 'folder-open',
11
+ group: 'Projects',
12
+ input: z.object({
13
+ project_id: z.number().int().describe('Project ID'),
14
+ }),
15
+ output: z.object({
16
+ project: projectSchema.describe('The project details'),
17
+ }),
18
+ handle: async (params) => {
19
+ const orgId = getOrgId();
20
+ const data = await api(`/api/organizations/${orgId}/projects/${params.project_id}/`);
21
+ return { project: mapProject(data) };
22
+ },
23
+ });
24
+ //# sourceMappingURL=get-project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-project.js","sourceRoot":"","sources":["../../src/tools/get-project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAmB,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,sEAAsE;IACnF,OAAO,EAAE,qBAAqB;IAC9B,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;KACpD,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,qBAAqB,CAAC;KACvD,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAa,sBAAsB,KAAK,aAAa,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;QACjG,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;IACvC,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ export declare const getSurvey: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ survey_id: z.ZodString;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ survey: z.ZodObject<{
6
+ id: z.ZodString;
7
+ name: z.ZodString;
8
+ description: z.ZodString;
9
+ type: z.ZodString;
10
+ start_date: z.ZodNullable<z.ZodString>;
11
+ end_date: z.ZodNullable<z.ZodString>;
12
+ archived: z.ZodBoolean;
13
+ created_at: z.ZodString;
14
+ }, z.core.$strip>;
15
+ }, z.core.$strip>>;
16
+ //# sourceMappingURL=get-survey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-survey.d.ts","sourceRoot":"","sources":["../../src/tools/get-survey.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,SAAS;;;;;;;;;;;;;kBAiBpB,CAAC"}