@opentabs-dev/opentabs-plugin-meticulous 0.0.76
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.
- package/README.md +159 -0
- package/dist/adapter.iife.js +15945 -0
- package/dist/adapter.iife.js.map +7 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +80 -0
- package/dist/index.js.map +1 -0
- package/dist/meticulous-api.d.ts +34 -0
- package/dist/meticulous-api.d.ts.map +1 -0
- package/dist/meticulous-api.js +477 -0
- package/dist/meticulous-api.js.map +1 -0
- package/dist/tools/accept-all-diffs.d.ts +8 -0
- package/dist/tools/accept-all-diffs.d.ts.map +1 -0
- package/dist/tools/accept-all-diffs.js +23 -0
- package/dist/tools/accept-all-diffs.js.map +1 -0
- package/dist/tools/check-for-flakes.d.ts +8 -0
- package/dist/tools/check-for-flakes.d.ts.map +1 -0
- package/dist/tools/check-for-flakes.js +26 -0
- package/dist/tools/check-for-flakes.js.map +1 -0
- package/dist/tools/compare-replays.d.ts +68 -0
- package/dist/tools/compare-replays.d.ts.map +1 -0
- package/dist/tools/compare-replays.js +53 -0
- package/dist/tools/compare-replays.js.map +1 -0
- package/dist/tools/create-label-action.d.ts +16 -0
- package/dist/tools/create-label-action.d.ts.map +1 -0
- package/dist/tools/create-label-action.js +29 -0
- package/dist/tools/create-label-action.js.map +1 -0
- package/dist/tools/get-current-user.d.ts +12 -0
- package/dist/tools/get-current-user.d.ts.map +1 -0
- package/dist/tools/get-current-user.js +22 -0
- package/dist/tools/get-current-user.js.map +1 -0
- package/dist/tools/get-project-pull-request.d.ts +14 -0
- package/dist/tools/get-project-pull-request.d.ts.map +1 -0
- package/dist/tools/get-project-pull-request.js +23 -0
- package/dist/tools/get-project-pull-request.js.map +1 -0
- package/dist/tools/get-project.d.ts +20 -0
- package/dist/tools/get-project.d.ts.map +1 -0
- package/dist/tools/get-project.js +25 -0
- package/dist/tools/get-project.js.map +1 -0
- package/dist/tools/get-replay-screenshots.d.ts +16 -0
- package/dist/tools/get-replay-screenshots.d.ts.map +1 -0
- package/dist/tools/get-replay-screenshots.js +27 -0
- package/dist/tools/get-replay-screenshots.js.map +1 -0
- package/dist/tools/get-replay.d.ts +17 -0
- package/dist/tools/get-replay.d.ts.map +1 -0
- package/dist/tools/get-replay.js +21 -0
- package/dist/tools/get-replay.js.map +1 -0
- package/dist/tools/get-session-events.d.ts +14 -0
- package/dist/tools/get-session-events.d.ts.map +1 -0
- package/dist/tools/get-session-events.js +27 -0
- package/dist/tools/get-session-events.js.map +1 -0
- package/dist/tools/get-session.d.ts +19 -0
- package/dist/tools/get-session.d.ts.map +1 -0
- package/dist/tools/get-session.js +21 -0
- package/dist/tools/get-session.js.map +1 -0
- package/dist/tools/get-test-run-coverage.d.ts +83 -0
- package/dist/tools/get-test-run-coverage.d.ts.map +1 -0
- package/dist/tools/get-test-run-coverage.js +64 -0
- package/dist/tools/get-test-run-coverage.js.map +1 -0
- package/dist/tools/get-test-run-diffs.d.ts +56 -0
- package/dist/tools/get-test-run-diffs.d.ts.map +1 -0
- package/dist/tools/get-test-run-diffs.js +53 -0
- package/dist/tools/get-test-run-diffs.js.map +1 -0
- package/dist/tools/get-test-run-pr-description.d.ts +8 -0
- package/dist/tools/get-test-run-pr-description.d.ts.map +1 -0
- package/dist/tools/get-test-run-pr-description.js +26 -0
- package/dist/tools/get-test-run-pr-description.js.map +1 -0
- package/dist/tools/get-test-run-screenshots.d.ts +70 -0
- package/dist/tools/get-test-run-screenshots.d.ts.map +1 -0
- package/dist/tools/get-test-run-screenshots.js +61 -0
- package/dist/tools/get-test-run-screenshots.js.map +1 -0
- package/dist/tools/get-test-run-source-code.d.ts +9 -0
- package/dist/tools/get-test-run-source-code.d.ts.map +1 -0
- package/dist/tools/get-test-run-source-code.js +24 -0
- package/dist/tools/get-test-run-source-code.js.map +1 -0
- package/dist/tools/get-test-run-test-cases.d.ts +25 -0
- package/dist/tools/get-test-run-test-cases.d.ts.map +1 -0
- package/dist/tools/get-test-run-test-cases.js +60 -0
- package/dist/tools/get-test-run-test-cases.js.map +1 -0
- package/dist/tools/get-test-run.d.ts +29 -0
- package/dist/tools/get-test-run.d.ts.map +1 -0
- package/dist/tools/get-test-run.js +30 -0
- package/dist/tools/get-test-run.js.map +1 -0
- package/dist/tools/list-github-repositories.d.ts +11 -0
- package/dist/tools/list-github-repositories.d.ts.map +1 -0
- package/dist/tools/list-github-repositories.js +19 -0
- package/dist/tools/list-github-repositories.js.map +1 -0
- package/dist/tools/list-organization-members.d.ts +18 -0
- package/dist/tools/list-organization-members.d.ts.map +1 -0
- package/dist/tools/list-organization-members.js +21 -0
- package/dist/tools/list-organization-members.js.map +1 -0
- package/dist/tools/list-organizations.d.ts +9 -0
- package/dist/tools/list-organizations.d.ts.map +1 -0
- package/dist/tools/list-organizations.js +19 -0
- package/dist/tools/list-organizations.js.map +1 -0
- package/dist/tools/list-projects.d.ts +14 -0
- package/dist/tools/list-projects.d.ts.map +1 -0
- package/dist/tools/list-projects.js +19 -0
- package/dist/tools/list-projects.js.map +1 -0
- package/dist/tools/list-replays.d.ts +18 -0
- package/dist/tools/list-replays.d.ts.map +1 -0
- package/dist/tools/list-replays.js +25 -0
- package/dist/tools/list-replays.js.map +1 -0
- package/dist/tools/list-sessions.d.ts +20 -0
- package/dist/tools/list-sessions.d.ts.map +1 -0
- package/dist/tools/list-sessions.js +22 -0
- package/dist/tools/list-sessions.js.map +1 -0
- package/dist/tools/schemas.d.ts +560 -0
- package/dist/tools/schemas.d.ts.map +1 -0
- package/dist/tools/schemas.js +303 -0
- package/dist/tools/schemas.js.map +1 -0
- package/dist/tools/search-sessions.d.ts +24 -0
- package/dist/tools/search-sessions.d.ts.map +1 -0
- package/dist/tools/search-sessions.js +33 -0
- package/dist/tools/search-sessions.js.map +1 -0
- package/dist/tools/upsert-diff-approval.d.ts +12 -0
- package/dist/tools/upsert-diff-approval.d.ts.map +1 -0
- package/dist/tools/upsert-diff-approval.js +36 -0
- package/dist/tools/upsert-diff-approval.js.map +1 -0
- package/dist/tools.json +4020 -0
- package/package.json +58 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const getTestRun: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
|
|
3
|
+
test_run_id: z.ZodString;
|
|
4
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
5
|
+
test_run: z.ZodObject<{
|
|
6
|
+
id: z.ZodString;
|
|
7
|
+
status: z.ZodString;
|
|
8
|
+
commit_sha: z.ZodNullable<z.ZodString>;
|
|
9
|
+
created_at: z.ZodString;
|
|
10
|
+
updated_at: z.ZodString;
|
|
11
|
+
project_name: z.ZodString;
|
|
12
|
+
organization_name: z.ZodString;
|
|
13
|
+
stats: z.ZodNullable<z.ZodObject<{
|
|
14
|
+
total_screenshots: z.ZodNumber;
|
|
15
|
+
total_sessions: z.ZodNumber;
|
|
16
|
+
total_sessions_replayed: z.ZodNullable<z.ZodNumber>;
|
|
17
|
+
sessions_skipped: z.ZodNullable<z.ZodNumber>;
|
|
18
|
+
screenshots_skipped: z.ZodNullable<z.ZodNumber>;
|
|
19
|
+
}, z.core.$strip>>;
|
|
20
|
+
ci_provider: z.ZodNullable<z.ZodString>;
|
|
21
|
+
pr_title: z.ZodNullable<z.ZodString>;
|
|
22
|
+
pr_number: z.ZodNullable<z.ZodNumber>;
|
|
23
|
+
pr_url: z.ZodNullable<z.ZodString>;
|
|
24
|
+
approval_state: z.ZodNullable<z.ZodString>;
|
|
25
|
+
describe_tested: z.ZodNullable<z.ZodString>;
|
|
26
|
+
}, z.core.$strip>;
|
|
27
|
+
web_url: z.ZodString;
|
|
28
|
+
}, z.core.$strip>>;
|
|
29
|
+
//# sourceMappingURL=get-test-run.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-test-run.d.ts","sourceRoot":"","sources":["../../src/tools/get-test-run.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;kBA+BrB,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { defineTool } from '@opentabs-dev/plugin-sdk';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { graphql, queries } from '../meticulous-api.js';
|
|
4
|
+
import { testRunSchema, mapTestRun } from './schemas.js';
|
|
5
|
+
export const getTestRun = defineTool({
|
|
6
|
+
name: 'get_test_run',
|
|
7
|
+
displayName: 'Get Test Run',
|
|
8
|
+
description: 'Get detailed information about a test run including status, statistics, CI context, PR details, and a link to the Meticulous web UI for visual debugging. The test run ID can be found in the Meticulous URL or from project details.',
|
|
9
|
+
summary: 'Get test run details',
|
|
10
|
+
icon: 'play-circle',
|
|
11
|
+
group: 'Test Runs',
|
|
12
|
+
input: z.object({
|
|
13
|
+
test_run_id: z.string().describe('Test run ID'),
|
|
14
|
+
}),
|
|
15
|
+
output: z.object({
|
|
16
|
+
test_run: testRunSchema,
|
|
17
|
+
web_url: z.string().describe('URL to view the test run in the Meticulous web UI'),
|
|
18
|
+
}),
|
|
19
|
+
handle: async ({ test_run_id }) => {
|
|
20
|
+
const data = await graphql(queries.GET_TEST_RUN, { testRunId: test_run_id });
|
|
21
|
+
const orgName = data.testRun.project?.organization?.name ?? '';
|
|
22
|
+
const projName = data.testRun.project?.name ?? '';
|
|
23
|
+
const webUrl = `https://app.meticulous.ai/projects/${orgName}/${projName}/test-runs/${test_run_id}`;
|
|
24
|
+
return {
|
|
25
|
+
test_run: mapTestRun(data.testRun),
|
|
26
|
+
web_url: webUrl,
|
|
27
|
+
};
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=get-test-run.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-test-run.js","sourceRoot":"","sources":["../../src/tools/get-test-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzD,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,cAAc;IAC3B,WAAW,EACT,uOAAuO;IACzO,OAAO,EAAE,sBAAsB;IAC/B,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;KAChD,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,QAAQ,EAAE,aAAa;QACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;KAClF,CAAC;IACF,MAAM,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;QAChC,MAAM,IAAI,GAAG,MAAM,OAAO,CAIvB,OAAO,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;QAErD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC;QAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,sCAAsC,OAAO,IAAI,QAAQ,cAAc,WAAW,EAAE,CAAC;QAEpG,OAAO;YACL,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YAClC,OAAO,EAAE,MAAM;SAChB,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const listGithubRepositories: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{}, z.core.$strip>, z.ZodObject<{
|
|
3
|
+
repositories: z.ZodArray<z.ZodObject<{
|
|
4
|
+
id: z.ZodString;
|
|
5
|
+
name: z.ZodString;
|
|
6
|
+
owner: z.ZodString;
|
|
7
|
+
url: z.ZodString;
|
|
8
|
+
full_name: z.ZodString;
|
|
9
|
+
}, z.core.$strip>>;
|
|
10
|
+
}, z.core.$strip>>;
|
|
11
|
+
//# sourceMappingURL=list-github-repositories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-github-repositories.d.ts","sourceRoot":"","sources":["../../src/tools/list-github-repositories.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,sBAAsB;;;;;;;;kBAajC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { defineTool } from '@opentabs-dev/plugin-sdk';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { graphql, queries } from '../meticulous-api.js';
|
|
4
|
+
import { githubRepoSchema, mapGithubRepo } from './schemas.js';
|
|
5
|
+
export const listGithubRepositories = defineTool({
|
|
6
|
+
name: 'list_github_repositories',
|
|
7
|
+
displayName: 'List GitHub Repositories',
|
|
8
|
+
description: 'List GitHub repositories connected to the Meticulous organization via the GitHub App.',
|
|
9
|
+
summary: 'List connected GitHub repos',
|
|
10
|
+
icon: 'github',
|
|
11
|
+
group: 'Integrations',
|
|
12
|
+
input: z.object({}),
|
|
13
|
+
output: z.object({ repositories: z.array(githubRepoSchema) }),
|
|
14
|
+
handle: async () => {
|
|
15
|
+
const data = await graphql(queries.GET_GITHUB_REPOSITORIES);
|
|
16
|
+
return { repositories: data.gitHubRepositories.map(mapGithubRepo) };
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=list-github-repositories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-github-repositories.js","sourceRoot":"","sources":["../../src/tools/list-github-repositories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAC;IAC/C,IAAI,EAAE,0BAA0B;IAChC,WAAW,EAAE,0BAA0B;IACvC,WAAW,EAAE,uFAAuF;IACpG,OAAO,EAAE,6BAA6B;IACtC,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IACnB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;IAC7D,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAyD,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACpH,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;IACtE,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const listOrganizationMembers: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
|
|
3
|
+
organization_name: z.ZodString;
|
|
4
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
5
|
+
members: z.ZodArray<z.ZodObject<{
|
|
6
|
+
id: z.ZodString;
|
|
7
|
+
role: z.ZodString;
|
|
8
|
+
created_at: z.ZodString;
|
|
9
|
+
user: z.ZodObject<{
|
|
10
|
+
id: z.ZodString;
|
|
11
|
+
email: z.ZodString;
|
|
12
|
+
first_name: z.ZodString;
|
|
13
|
+
last_name: z.ZodString;
|
|
14
|
+
is_admin: z.ZodBoolean;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
}, z.core.$strip>>;
|
|
17
|
+
}, z.core.$strip>>;
|
|
18
|
+
//# sourceMappingURL=list-organization-members.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-organization-members.d.ts","sourceRoot":"","sources":["../../src/tools/list-organization-members.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;kBAkBlC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { defineTool } from '@opentabs-dev/plugin-sdk';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { graphql, queries } from '../meticulous-api.js';
|
|
4
|
+
import { membershipSchema, mapMembership } from './schemas.js';
|
|
5
|
+
export const listOrganizationMembers = defineTool({
|
|
6
|
+
name: 'list_organization_members',
|
|
7
|
+
displayName: 'List Organization Members',
|
|
8
|
+
description: 'List all members of an organization with their roles.',
|
|
9
|
+
summary: 'List org members',
|
|
10
|
+
icon: 'users',
|
|
11
|
+
group: 'Organizations',
|
|
12
|
+
input: z.object({
|
|
13
|
+
organization_name: z.string().describe('Organization name'),
|
|
14
|
+
}),
|
|
15
|
+
output: z.object({ members: z.array(membershipSchema) }),
|
|
16
|
+
handle: async ({ organization_name }) => {
|
|
17
|
+
const data = await graphql(queries.GET_ORGANIZATION_MEMBERSHIPS, { organizationName: organization_name });
|
|
18
|
+
return { members: data.organizationMemberships.map(mapMembership) };
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
//# sourceMappingURL=list-organization-members.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-organization-members.js","sourceRoot":"","sources":["../../src/tools/list-organization-members.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,uBAAuB,GAAG,UAAU,CAAC;IAChD,IAAI,EAAE,2BAA2B;IACjC,WAAW,EAAE,2BAA2B;IACxC,WAAW,EAAE,uDAAuD;IACpE,OAAO,EAAE,kBAAkB;IAC3B,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,eAAe;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;KAC5D,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;IACxD,MAAM,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,MAAM,OAAO,CACxB,OAAO,CAAC,4BAA4B,EACpC,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CACxC,CAAC;QACF,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;IACtE,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const listOrganizations: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{}, z.core.$strip>, z.ZodObject<{
|
|
3
|
+
organizations: z.ZodArray<z.ZodObject<{
|
|
4
|
+
id: z.ZodString;
|
|
5
|
+
name: z.ZodString;
|
|
6
|
+
created_at: z.ZodString;
|
|
7
|
+
}, z.core.$strip>>;
|
|
8
|
+
}, z.core.$strip>>;
|
|
9
|
+
//# sourceMappingURL=list-organizations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-organizations.d.ts","sourceRoot":"","sources":["../../src/tools/list-organizations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB;;;;;;kBAa5B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { defineTool } from '@opentabs-dev/plugin-sdk';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { graphql, queries } from '../meticulous-api.js';
|
|
4
|
+
import { organizationSchema, mapOrg } from './schemas.js';
|
|
5
|
+
export const listOrganizations = defineTool({
|
|
6
|
+
name: 'list_organizations',
|
|
7
|
+
displayName: 'List Organizations',
|
|
8
|
+
description: 'List all organizations the current user belongs to.',
|
|
9
|
+
summary: 'List organizations',
|
|
10
|
+
icon: 'building',
|
|
11
|
+
group: 'Organizations',
|
|
12
|
+
input: z.object({}),
|
|
13
|
+
output: z.object({ organizations: z.array(organizationSchema) }),
|
|
14
|
+
handle: async () => {
|
|
15
|
+
const data = await graphql(queries.GET_ORGANIZATIONS);
|
|
16
|
+
return { organizations: data.organizations.map(mapOrg) };
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=list-organizations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-organizations.js","sourceRoot":"","sources":["../../src/tools/list-organizations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE1D,MAAM,CAAC,MAAM,iBAAiB,GAAG,UAAU,CAAC;IAC1C,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE,oBAAoB;IACjC,WAAW,EAAE,qDAAqD;IAClE,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,eAAe;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IACnB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;IAChE,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAoD,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACzG,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;IAC3D,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const listProjects: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{}, z.core.$strip>, z.ZodObject<{
|
|
3
|
+
projects: z.ZodArray<z.ZodObject<{
|
|
4
|
+
id: z.ZodString;
|
|
5
|
+
name: z.ZodString;
|
|
6
|
+
organization_name: z.ZodString;
|
|
7
|
+
host_kind: z.ZodNullable<z.ZodString>;
|
|
8
|
+
status: z.ZodString;
|
|
9
|
+
latest_test_run_at: z.ZodNullable<z.ZodString>;
|
|
10
|
+
total_sessions: z.ZodNullable<z.ZodNumber>;
|
|
11
|
+
total_screenshots: z.ZodNullable<z.ZodNumber>;
|
|
12
|
+
}, z.core.$strip>>;
|
|
13
|
+
}, z.core.$strip>>;
|
|
14
|
+
//# sourceMappingURL=list-projects.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-projects.d.ts","sourceRoot":"","sources":["../../src/tools/list-projects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,YAAY;;;;;;;;;;;kBAavB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { defineTool } from '@opentabs-dev/plugin-sdk';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { graphql, queries } from '../meticulous-api.js';
|
|
4
|
+
import { projectListItemSchema, mapProjectListItem } from './schemas.js';
|
|
5
|
+
export const listProjects = defineTool({
|
|
6
|
+
name: 'list_projects',
|
|
7
|
+
displayName: 'List Projects',
|
|
8
|
+
description: 'List all projects accessible to the current user, including latest test run info.',
|
|
9
|
+
summary: 'List projects',
|
|
10
|
+
icon: 'folder',
|
|
11
|
+
group: 'Projects',
|
|
12
|
+
input: z.object({}),
|
|
13
|
+
output: z.object({ projects: z.array(projectListItemSchema) }),
|
|
14
|
+
handle: async () => {
|
|
15
|
+
const data = await graphql(queries.GET_PROJECTS);
|
|
16
|
+
return { projects: data.projects.map(mapProjectListItem) };
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=list-projects.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-projects.js","sourceRoot":"","sources":["../../src/tools/list-projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;IACrC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,mFAAmF;IAChG,OAAO,EAAE,eAAe;IACxB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IACnB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,CAAC;IAC9D,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,IAAI,GAAG,MAAM,OAAO,CAA+C,OAAO,CAAC,YAAY,CAAC,CAAC;QAC/F,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC;IAC7D,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const listReplays: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
|
|
3
|
+
project_id: z.ZodString;
|
|
4
|
+
count: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
5
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
6
|
+
replays: z.ZodArray<z.ZodObject<{
|
|
7
|
+
id: z.ZodString;
|
|
8
|
+
status: z.ZodString;
|
|
9
|
+
commit_sha: z.ZodNullable<z.ZodString>;
|
|
10
|
+
is_accurate: z.ZodNullable<z.ZodBoolean>;
|
|
11
|
+
app_url: z.ZodNullable<z.ZodString>;
|
|
12
|
+
session_id: z.ZodNullable<z.ZodString>;
|
|
13
|
+
created_at: z.ZodString;
|
|
14
|
+
project_name: z.ZodNullable<z.ZodString>;
|
|
15
|
+
organization_name: z.ZodNullable<z.ZodString>;
|
|
16
|
+
}, z.core.$strip>>;
|
|
17
|
+
}, z.core.$strip>>;
|
|
18
|
+
//# sourceMappingURL=list-replays.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-replays.d.ts","sourceRoot":"","sources":["../../src/tools/list-replays.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;kBAmBtB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { defineTool } from '@opentabs-dev/plugin-sdk';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { graphql, queries } from '../meticulous-api.js';
|
|
4
|
+
import { replaySchema, mapReplay } from './schemas.js';
|
|
5
|
+
export const listReplays = defineTool({
|
|
6
|
+
name: 'list_replays',
|
|
7
|
+
displayName: 'List Replays',
|
|
8
|
+
description: 'List replays for a specific project.',
|
|
9
|
+
summary: 'List replays for a project',
|
|
10
|
+
icon: 'list',
|
|
11
|
+
group: 'Replays',
|
|
12
|
+
input: z.object({
|
|
13
|
+
project_id: z.string().describe('Project ID'),
|
|
14
|
+
count: z.number().optional().default(50).describe('Number of replays to return'),
|
|
15
|
+
}),
|
|
16
|
+
output: z.object({ replays: z.array(replaySchema) }),
|
|
17
|
+
handle: async ({ project_id, count }) => {
|
|
18
|
+
const data = await graphql(queries.GET_REPLAYS_FOR_PROJECT, {
|
|
19
|
+
projectId: project_id,
|
|
20
|
+
n: count,
|
|
21
|
+
});
|
|
22
|
+
return { replays: (data.replaysForProject ?? []).map(mapReplay) };
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=list-replays.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-replays.js","sourceRoot":"","sources":["../../src/tools/list-replays.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;IACpC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,sCAAsC;IACnD,OAAO,EAAE,4BAA4B;IACrC,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;KACjF,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;IACpD,MAAM,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAwD,OAAO,CAAC,uBAAuB,EAAE;YACjH,SAAS,EAAE,UAAU;YACrB,CAAC,EAAE,KAAK;SACT,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;IACpE,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const listSessions: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
|
|
3
|
+
project_id: z.ZodString;
|
|
4
|
+
count: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
5
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
6
|
+
sessions: z.ZodArray<z.ZodObject<{
|
|
7
|
+
id: z.ZodString;
|
|
8
|
+
project_id: z.ZodString;
|
|
9
|
+
project_name: z.ZodString;
|
|
10
|
+
hostname: z.ZodNullable<z.ZodString>;
|
|
11
|
+
datetime: z.ZodNullable<z.ZodString>;
|
|
12
|
+
num_user_events: z.ZodNullable<z.ZodNumber>;
|
|
13
|
+
num_bytes: z.ZodNullable<z.ZodNumber>;
|
|
14
|
+
source: z.ZodNullable<z.ZodString>;
|
|
15
|
+
start_url: z.ZodNullable<z.ZodString>;
|
|
16
|
+
abandoned: z.ZodNullable<z.ZodBoolean>;
|
|
17
|
+
description: z.ZodNullable<z.ZodString>;
|
|
18
|
+
}, z.core.$strip>>;
|
|
19
|
+
}, z.core.$strip>>;
|
|
20
|
+
//# sourceMappingURL=list-sessions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-sessions.d.ts","sourceRoot":"","sources":["../../src/tools/list-sessions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;kBAmBvB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { defineTool } from '@opentabs-dev/plugin-sdk';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { graphql, queries } from '../meticulous-api.js';
|
|
4
|
+
import { sessionSchema, mapSession } from './schemas.js';
|
|
5
|
+
export const listSessions = defineTool({
|
|
6
|
+
name: 'list_sessions',
|
|
7
|
+
displayName: 'List Sessions',
|
|
8
|
+
description: 'List recorded user sessions for a project.',
|
|
9
|
+
summary: 'List sessions for a project',
|
|
10
|
+
icon: 'monitor',
|
|
11
|
+
group: 'Sessions',
|
|
12
|
+
input: z.object({
|
|
13
|
+
project_id: z.string().describe('Project ID'),
|
|
14
|
+
count: z.number().optional().default(50).describe('Number of sessions to return'),
|
|
15
|
+
}),
|
|
16
|
+
output: z.object({ sessions: z.array(sessionSchema) }),
|
|
17
|
+
handle: async ({ project_id, count }) => {
|
|
18
|
+
const data = await graphql(queries.GET_SESSIONS_FOR_PROJECT, { projectId: project_id, n: count });
|
|
19
|
+
return { sessions: (data.sessionsForProject ?? []).map(mapSession) };
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=list-sessions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-sessions.js","sourceRoot":"","sources":["../../src/tools/list-sessions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzD,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;IACrC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,4CAA4C;IACzD,OAAO,EAAE,6BAA6B;IACtC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;KAClF,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;IACtD,MAAM,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,MAAM,OAAO,CACxB,OAAO,CAAC,wBAAwB,EAChC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,CACpC,CAAC;QACF,OAAO,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;IACvE,CAAC;CACF,CAAC,CAAC"}
|