@copado/agentia-cli 0.28.0-alpha.0 → 0.31.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/README.md +1000 -87
  2. package/dist/commands/auth/get.d.ts +2 -0
  3. package/dist/commands/auth/get.js +13 -2
  4. package/dist/commands/auth/get.js.map +1 -1
  5. package/dist/commands/auth/set.d.ts +6 -0
  6. package/dist/commands/auth/set.js +43 -4
  7. package/dist/commands/auth/set.js.map +1 -1
  8. package/dist/commands/environment/list.d.ts +5 -1
  9. package/dist/commands/environment/list.js +10 -8
  10. package/dist/commands/environment/list.js.map +1 -1
  11. package/dist/commands/job/list.d.ts +4 -2
  12. package/dist/commands/job/list.js +10 -12
  13. package/dist/commands/job/list.js.map +1 -1
  14. package/dist/commands/pipeline/list.d.ts +6 -1
  15. package/dist/commands/pipeline/list.js +10 -7
  16. package/dist/commands/pipeline/list.js.map +1 -1
  17. package/dist/commands/project/list.d.ts +4 -1
  18. package/dist/commands/project/list.js +7 -5
  19. package/dist/commands/project/list.js.map +1 -1
  20. package/dist/commands/promotion/list.d.ts +4 -2
  21. package/dist/commands/promotion/list.js +8 -6
  22. package/dist/commands/promotion/list.js.map +1 -1
  23. package/dist/commands/setup.d.ts +12 -0
  24. package/dist/commands/setup.js +52 -0
  25. package/dist/commands/setup.js.map +1 -0
  26. package/dist/commands/testing/build/list.d.ts +16 -0
  27. package/dist/commands/testing/build/list.js +47 -0
  28. package/dist/commands/testing/build/list.js.map +1 -0
  29. package/dist/commands/testing/build/logs.d.ts +21 -0
  30. package/dist/commands/testing/build/logs.js +42 -0
  31. package/dist/commands/testing/build/logs.js.map +1 -0
  32. package/dist/commands/testing/build/run.d.ts +19 -0
  33. package/dist/commands/testing/build/run.js +39 -0
  34. package/dist/commands/testing/build/run.js.map +1 -0
  35. package/dist/commands/testing/create.d.ts +18 -0
  36. package/dist/commands/testing/create.js +46 -0
  37. package/dist/commands/testing/create.js.map +1 -0
  38. package/dist/commands/testing/job/create.d.ts +18 -0
  39. package/dist/commands/testing/job/create.js +46 -0
  40. package/dist/commands/testing/job/create.js.map +1 -0
  41. package/dist/commands/testing/job/download.d.ts +22 -0
  42. package/dist/commands/testing/job/download.js +56 -0
  43. package/dist/commands/testing/job/download.js.map +1 -0
  44. package/dist/commands/testing/job/files.d.ts +19 -0
  45. package/dist/commands/testing/job/files.js +35 -0
  46. package/dist/commands/testing/job/files.js.map +1 -0
  47. package/dist/commands/testing/job/list.d.ts +14 -0
  48. package/dist/commands/testing/job/list.js +32 -0
  49. package/dist/commands/testing/job/list.js.map +1 -0
  50. package/dist/commands/testing/job/upload.d.ts +29 -0
  51. package/dist/commands/testing/job/upload.js +57 -0
  52. package/dist/commands/testing/job/upload.js.map +1 -0
  53. package/dist/commands/testing/logs.d.ts +21 -0
  54. package/dist/commands/testing/logs.js +42 -0
  55. package/dist/commands/testing/logs.js.map +1 -0
  56. package/dist/commands/testing/project/create.d.ts +14 -0
  57. package/dist/commands/testing/project/create.js +36 -0
  58. package/dist/commands/testing/project/create.js.map +1 -0
  59. package/dist/commands/testing/project/list.d.ts +13 -0
  60. package/dist/commands/testing/project/list.js +31 -0
  61. package/dist/commands/testing/project/list.js.map +1 -0
  62. package/dist/commands/testing/robot/create.d.ts +19 -0
  63. package/dist/commands/testing/robot/create.js +60 -0
  64. package/dist/commands/testing/robot/create.js.map +1 -0
  65. package/dist/commands/testing/robot/list.d.ts +13 -0
  66. package/dist/commands/testing/robot/list.js +28 -0
  67. package/dist/commands/testing/robot/list.js.map +1 -0
  68. package/dist/commands/testing/run.d.ts +19 -0
  69. package/dist/commands/testing/run.js +32 -0
  70. package/dist/commands/testing/run.js.map +1 -0
  71. package/dist/commands/testing/status.d.ts +16 -0
  72. package/dist/commands/testing/status.js +47 -0
  73. package/dist/commands/testing/status.js.map +1 -0
  74. package/dist/commands/testing/test/create.d.ts +1 -0
  75. package/dist/commands/testing/test/create.js +2 -0
  76. package/dist/commands/testing/test/create.js.map +1 -0
  77. package/dist/commands/testing/test/logs.d.ts +1 -0
  78. package/dist/commands/testing/test/logs.js +2 -0
  79. package/dist/commands/testing/test/logs.js.map +1 -0
  80. package/dist/commands/testing/test/run.d.ts +1 -0
  81. package/dist/commands/testing/test/run.js +2 -0
  82. package/dist/commands/testing/test/run.js.map +1 -0
  83. package/dist/commands/testing/test/status.d.ts +1 -0
  84. package/dist/commands/testing/test/status.js +2 -0
  85. package/dist/commands/testing/test/status.js.map +1 -0
  86. package/dist/commands/testing/test/update.d.ts +1 -0
  87. package/dist/commands/testing/test/update.js +2 -0
  88. package/dist/commands/testing/test/update.js.map +1 -0
  89. package/dist/commands/testing/update.d.ts +29 -0
  90. package/dist/commands/testing/update.js +57 -0
  91. package/dist/commands/testing/update.js.map +1 -0
  92. package/dist/commands/testing/variable/create.d.ts +20 -0
  93. package/dist/commands/testing/variable/create.js +65 -0
  94. package/dist/commands/testing/variable/create.js.map +1 -0
  95. package/dist/commands/testing/variable/delete.d.ts +19 -0
  96. package/dist/commands/testing/variable/delete.js +30 -0
  97. package/dist/commands/testing/variable/delete.js.map +1 -0
  98. package/dist/commands/testing/variable/list.d.ts +15 -0
  99. package/dist/commands/testing/variable/list.js +40 -0
  100. package/dist/commands/testing/variable/list.js.map +1 -0
  101. package/dist/commands/work/list.d.ts +4 -1
  102. package/dist/commands/work/list.js +7 -5
  103. package/dist/commands/work/list.js.map +1 -1
  104. package/dist/commands/work/set.js +8 -1
  105. package/dist/commands/work/set.js.map +1 -1
  106. package/dist/commands/work/submit.d.ts +2 -0
  107. package/dist/commands/work/submit.js +40 -2
  108. package/dist/commands/work/submit.js.map +1 -1
  109. package/dist/lib/credential-store.d.ts +4 -0
  110. package/dist/lib/credential-store.js +14 -0
  111. package/dist/lib/credential-store.js.map +1 -1
  112. package/dist/lib/defaults-store.d.ts +3 -0
  113. package/dist/lib/defaults-store.js +24 -0
  114. package/dist/lib/defaults-store.js.map +1 -1
  115. package/dist/lib/environment-flags.d.ts +3 -1
  116. package/dist/lib/environment-flags.js +3 -1
  117. package/dist/lib/environment-flags.js.map +1 -1
  118. package/dist/lib/environment-types.d.ts +4 -1
  119. package/dist/lib/environment-types.js +2 -0
  120. package/dist/lib/environment-types.js.map +1 -1
  121. package/dist/lib/git-worktree.d.ts +4 -0
  122. package/dist/lib/git-worktree.js +46 -2
  123. package/dist/lib/git-worktree.js.map +1 -1
  124. package/dist/lib/job-types.d.ts +7 -4
  125. package/dist/lib/job-types.js +8 -15
  126. package/dist/lib/job-types.js.map +1 -1
  127. package/dist/lib/list-pagination.d.ts +46 -0
  128. package/dist/lib/list-pagination.js +106 -0
  129. package/dist/lib/list-pagination.js.map +1 -0
  130. package/dist/lib/mcp/testing-tools.d.ts +144 -0
  131. package/dist/lib/mcp/testing-tools.js +366 -0
  132. package/dist/lib/mcp/testing-tools.js.map +1 -0
  133. package/dist/lib/mcp/tools.d.ts +288 -31
  134. package/dist/lib/mcp/tools.js +26 -54
  135. package/dist/lib/mcp/tools.js.map +1 -1
  136. package/dist/lib/mcp/work-tools.d.ts +1 -3
  137. package/dist/lib/mcp/work-tools.js +13 -2
  138. package/dist/lib/mcp/work-tools.js.map +1 -1
  139. package/dist/lib/open-browser.d.ts +3 -0
  140. package/dist/lib/open-browser.js +13 -1
  141. package/dist/lib/open-browser.js.map +1 -1
  142. package/dist/lib/pipeline-types.d.ts +6 -1
  143. package/dist/lib/pipeline-types.js +10 -6
  144. package/dist/lib/pipeline-types.js.map +1 -1
  145. package/dist/lib/project-flags.d.ts +3 -2
  146. package/dist/lib/project-flags.js +3 -1
  147. package/dist/lib/project-flags.js.map +1 -1
  148. package/dist/lib/project-setup.d.ts +80 -0
  149. package/dist/lib/project-setup.js +383 -0
  150. package/dist/lib/project-setup.js.map +1 -0
  151. package/dist/lib/project-types.d.ts +5 -1
  152. package/dist/lib/project-types.js +6 -10
  153. package/dist/lib/project-types.js.map +1 -1
  154. package/dist/lib/promotion-flags.d.ts +4 -3
  155. package/dist/lib/promotion-flags.js +3 -8
  156. package/dist/lib/promotion-flags.js.map +1 -1
  157. package/dist/lib/promotion-types.d.ts +8 -5
  158. package/dist/lib/promotion-types.js +10 -14
  159. package/dist/lib/promotion-types.js.map +1 -1
  160. package/dist/lib/setup-templates.d.ts +11 -0
  161. package/dist/lib/setup-templates.js +181 -0
  162. package/dist/lib/setup-templates.js.map +1 -0
  163. package/dist/lib/testing-config.d.ts +17 -0
  164. package/dist/lib/testing-config.js +68 -0
  165. package/dist/lib/testing-config.js.map +1 -0
  166. package/dist/lib/testing-flags.d.ts +33 -0
  167. package/dist/lib/testing-flags.js +70 -0
  168. package/dist/lib/testing-flags.js.map +1 -0
  169. package/dist/lib/testing-gateway.d.ts +33 -0
  170. package/dist/lib/testing-gateway.js +161 -0
  171. package/dist/lib/testing-gateway.js.map +1 -0
  172. package/dist/lib/testing-operations.d.ts +99 -0
  173. package/dist/lib/testing-operations.js +268 -0
  174. package/dist/lib/testing-operations.js.map +1 -0
  175. package/dist/lib/testing-types.d.ts +138 -0
  176. package/dist/lib/testing-types.js +190 -0
  177. package/dist/lib/testing-types.js.map +1 -0
  178. package/dist/lib/work-flags.d.ts +3 -1
  179. package/dist/lib/work-flags.js +3 -1
  180. package/dist/lib/work-flags.js.map +1 -1
  181. package/dist/lib/work-types.d.ts +8 -1
  182. package/dist/lib/work-types.js +16 -3
  183. package/dist/lib/work-types.js.map +1 -1
  184. package/oclif.manifest.json +3447 -1079
  185. package/package.json +4 -1
@@ -0,0 +1,144 @@
1
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import { type TestingBuildStatus, type TestingVariableType } from '../testing-types.js';
3
+ type ConnectionArgs = {
4
+ domain?: string;
5
+ org?: number;
6
+ pat?: string;
7
+ };
8
+ type ProjectArgs = ConnectionArgs & {
9
+ project: number;
10
+ };
11
+ declare function testingProjectList(args?: ConnectionArgs & {
12
+ name?: string;
13
+ }): Promise<{
14
+ result: import("../testing-types.js").TestingProject[];
15
+ }>;
16
+ declare function testingProjectCreate(args: ConnectionArgs & {
17
+ description?: string;
18
+ name: string;
19
+ }): Promise<{
20
+ result: import("../testing-types.js").TestingProject;
21
+ }>;
22
+ declare function testingRobotList(args: ProjectArgs): Promise<{
23
+ result: import("../testing-types.js").TestingRobot[];
24
+ }>;
25
+ declare function testingRobotCreate(args: ProjectArgs & {
26
+ description?: string;
27
+ fwVersion?: string;
28
+ kind?: 'cloud' | 'QConnect';
29
+ name: string;
30
+ os?: string;
31
+ robotType?: string;
32
+ }): Promise<{
33
+ result: import("../testing-types.js").TestingRobot;
34
+ }>;
35
+ declare function testingJobList(args: ProjectArgs & {
36
+ name?: string;
37
+ }): Promise<{
38
+ result: import("../testing-types.js").TestingJob[];
39
+ }>;
40
+ declare function testingJobCreate(args: ProjectArgs & {
41
+ description?: string;
42
+ dir?: string[];
43
+ file?: string[];
44
+ name: string;
45
+ robot: string;
46
+ }): Promise<{
47
+ result: import("../testing-types.js").TestingJobCreateResult;
48
+ }>;
49
+ declare function testingJobFiles(args: ProjectArgs & {
50
+ job: number;
51
+ }): Promise<{
52
+ result: import("../testing-types.js").TestingFileEntry[];
53
+ }>;
54
+ declare function testingJobUpload(args: ProjectArgs & {
55
+ add?: string[];
56
+ authorEmail?: string;
57
+ authorName?: string;
58
+ branch?: string;
59
+ job: number;
60
+ remove?: string[];
61
+ replace?: string[];
62
+ }): Promise<{
63
+ result: {
64
+ operations: import("../testing-types.js").TestingFileOperation[];
65
+ response: import("../testing-types.js").TestingRecord;
66
+ };
67
+ }>;
68
+ declare function testingJobDownload(args: ProjectArgs & {
69
+ branch?: string;
70
+ file: string[];
71
+ job: number;
72
+ outputDir?: string;
73
+ }): Promise<{
74
+ result: import("../testing-types.js").TestingDownloadResult;
75
+ }>;
76
+ declare function testingBuildRun(args: ProjectArgs & {
77
+ job: number;
78
+ }): Promise<{
79
+ result: import("../testing-types.js").TestingBuildRunResult;
80
+ }>;
81
+ declare function testingBuildList(args: ProjectArgs & {
82
+ job?: number;
83
+ resultSize?: 'compact';
84
+ status?: TestingBuildStatus;
85
+ }): Promise<{
86
+ result: import("../testing-types.js").TestingBuild[];
87
+ }>;
88
+ declare function testingBuildLogs(args: ProjectArgs & {
89
+ build: number;
90
+ job: number;
91
+ output?: string;
92
+ }): Promise<{
93
+ result: import("../testing-types.js").TestingLogResult;
94
+ }>;
95
+ declare function testingVariableList(args: ProjectArgs & {
96
+ job?: number;
97
+ robot?: number;
98
+ }): Promise<{
99
+ result: import("../testing-types.js").TestingVariable[];
100
+ }>;
101
+ declare function testingVariableCreate(args: ProjectArgs & {
102
+ description?: string;
103
+ job?: number;
104
+ key: string;
105
+ robot?: number;
106
+ sensitive?: boolean;
107
+ type?: TestingVariableType;
108
+ userSpecific?: boolean;
109
+ value?: string;
110
+ }): Promise<{
111
+ result: unknown;
112
+ }>;
113
+ declare function testingVariableDelete(args: ProjectArgs & {
114
+ id: string;
115
+ }): Promise<{
116
+ result: {
117
+ projectId: number;
118
+ variableId: string;
119
+ };
120
+ }>;
121
+ export declare const agentiaMcpTestingToolHandlers: {
122
+ testingBuildList: typeof testingBuildList;
123
+ testingBuildLogs: typeof testingBuildLogs;
124
+ testingBuildRun: typeof testingBuildRun;
125
+ testingCreate: typeof testingJobCreate;
126
+ testingJobCreate: typeof testingJobCreate;
127
+ testingJobDownload: typeof testingJobDownload;
128
+ testingJobFiles: typeof testingJobFiles;
129
+ testingJobList: typeof testingJobList;
130
+ testingJobUpload: typeof testingJobUpload;
131
+ testingLogs: typeof testingBuildLogs;
132
+ testingProjectCreate: typeof testingProjectCreate;
133
+ testingProjectList: typeof testingProjectList;
134
+ testingRobotCreate: typeof testingRobotCreate;
135
+ testingRobotList: typeof testingRobotList;
136
+ testingRun: typeof testingBuildRun;
137
+ testingStatus: typeof testingBuildList;
138
+ testingUpdate: typeof testingJobUpload;
139
+ testingVariableCreate: typeof testingVariableCreate;
140
+ testingVariableDelete: typeof testingVariableDelete;
141
+ testingVariableList: typeof testingVariableList;
142
+ };
143
+ export declare function registerAgentiaMcpTestingTools(server: McpServer): void;
144
+ export {};
@@ -0,0 +1,366 @@
1
+ import { z } from 'zod';
2
+ import { buildFileOperationsFromSpecs, createTestingJob, createTestingProject, createTestingRobot, createTestingVariable, deleteTestingVariable, downloadTestingJobFiles, getTestingBuildLogs, listTestingBuilds, listTestingJobFiles, listTestingJobs, listTestingProjects, listTestingRobots, listTestingVariables, runTestingBuild, uploadTestingJobFiles, } from '../testing-operations.js';
3
+ import { TESTING_BUILD_STATUSES, TESTING_VARIABLE_TYPES } from '../testing-types.js';
4
+ import { safelyHandleTool } from './result.js';
5
+ const connectionSchema = {
6
+ domain: z.string().optional().describe('CRT domain hostname override.'),
7
+ org: z.number().int().positive().optional().describe('CRT organization ID override.'),
8
+ pat: z.string().optional().describe('CRT PAT token override. Prefer stored auth or env vars.'),
9
+ };
10
+ const fileInputSchema = {
11
+ dir: z.array(z.string()).optional().describe('Directories containing Robot Framework files to upload.'),
12
+ file: z.array(z.string()).optional().describe('Robot Framework files to upload.'),
13
+ };
14
+ const uploadOperationSchema = {
15
+ add: z.array(z.string()).optional().describe('Add file operations using local[:remote] syntax.'),
16
+ remove: z.array(z.string()).optional().describe('Remote file paths to remove.'),
17
+ replace: z.array(z.string()).optional().describe('Replace file operations using local[:remote] syntax.'),
18
+ };
19
+ function connection(args) {
20
+ return { domain: args.domain, org: args.org, pat: args.pat };
21
+ }
22
+ async function testingProjectList(args = {}) {
23
+ return { result: await listTestingProjects({ ...connection(args), name: args.name }) };
24
+ }
25
+ async function testingProjectCreate(args) {
26
+ return { result: await createTestingProject({ ...connection(args), description: args.description, name: args.name }) };
27
+ }
28
+ async function testingRobotList(args) {
29
+ return { result: await listTestingRobots({ ...connection(args), projectId: args.project }) };
30
+ }
31
+ async function testingRobotCreate(args) {
32
+ return {
33
+ result: await createTestingRobot({
34
+ ...connection(args),
35
+ description: args.description,
36
+ fwVersion: args.fwVersion,
37
+ kind: args.kind,
38
+ name: args.name,
39
+ os: args.os,
40
+ projectId: args.project,
41
+ robotType: args.robotType,
42
+ }),
43
+ };
44
+ }
45
+ async function testingJobList(args) {
46
+ return { result: await listTestingJobs({ ...connection(args), name: args.name, projectId: args.project }) };
47
+ }
48
+ async function testingJobCreate(args) {
49
+ return {
50
+ result: await createTestingJob({
51
+ ...connection(args),
52
+ description: args.description,
53
+ fileInput: { dirs: args.dir, files: args.file },
54
+ name: args.name,
55
+ projectId: args.project,
56
+ robotId: args.robot,
57
+ }),
58
+ };
59
+ }
60
+ async function testingJobFiles(args) {
61
+ return { result: await listTestingJobFiles({ ...connection(args), jobId: args.job, projectId: args.project }) };
62
+ }
63
+ async function testingJobUpload(args) {
64
+ const operations = buildFileOperationsFromSpecs({ add: args.add, remove: args.remove, replace: args.replace });
65
+ return {
66
+ result: await uploadTestingJobFiles({
67
+ ...connection(args),
68
+ author: args.authorName === undefined && args.authorEmail === undefined
69
+ ? undefined
70
+ : { email: args.authorEmail ?? 'agentia@copado.com', name: args.authorName ?? 'Agentia CLI' },
71
+ branch: args.branch,
72
+ jobId: args.job,
73
+ operations,
74
+ projectId: args.project,
75
+ }),
76
+ };
77
+ }
78
+ async function testingJobDownload(args) {
79
+ return {
80
+ result: await downloadTestingJobFiles({
81
+ ...connection(args),
82
+ branch: args.branch,
83
+ files: args.file,
84
+ jobId: args.job,
85
+ outputDir: args.outputDir,
86
+ projectId: args.project,
87
+ }),
88
+ };
89
+ }
90
+ async function testingBuildRun(args) {
91
+ return { result: await runTestingBuild({ ...connection(args), jobId: args.job, projectId: args.project }) };
92
+ }
93
+ async function testingBuildList(args) {
94
+ return {
95
+ result: await listTestingBuilds({
96
+ ...connection(args),
97
+ jobId: args.job,
98
+ projectId: args.project,
99
+ resultSize: args.resultSize ?? 'compact',
100
+ status: args.status,
101
+ }),
102
+ };
103
+ }
104
+ async function testingBuildLogs(args) {
105
+ return {
106
+ result: await getTestingBuildLogs({
107
+ ...connection(args),
108
+ buildId: args.build,
109
+ jobId: args.job,
110
+ output: args.output,
111
+ projectId: args.project,
112
+ }),
113
+ };
114
+ }
115
+ async function testingVariableList(args) {
116
+ return {
117
+ result: await listTestingVariables({
118
+ ...connection(args),
119
+ jobId: args.job,
120
+ projectId: args.project,
121
+ robotId: args.robot,
122
+ }),
123
+ };
124
+ }
125
+ async function testingVariableCreate(args) {
126
+ return {
127
+ result: await createTestingVariable({
128
+ ...connection(args),
129
+ description: args.description,
130
+ jobId: args.job,
131
+ key: args.key,
132
+ projectId: args.project,
133
+ robotId: args.robot,
134
+ sensitive: args.sensitive,
135
+ type: args.type,
136
+ userSpecific: args.userSpecific,
137
+ value: args.value,
138
+ }),
139
+ };
140
+ }
141
+ async function testingVariableDelete(args) {
142
+ return { result: await deleteTestingVariable({ ...connection(args), projectId: args.project, variableId: args.id }) };
143
+ }
144
+ const buildListSchema = {
145
+ job: z.number().int().positive().optional().describe('CRT job/test ID.'),
146
+ project: z.number().int().positive().describe('CRT project ID.'),
147
+ resultSize: z.enum(['compact']).optional().describe('CRT result size.'),
148
+ status: z.enum(TESTING_BUILD_STATUSES).optional().describe('Build status filter.'),
149
+ ...connectionSchema,
150
+ };
151
+ const uploadSchema = {
152
+ authorEmail: z.string().optional().describe('Author email for CRT file history.'),
153
+ authorName: z.string().optional().describe('Author name for CRT file history.'),
154
+ branch: z.string().optional().describe('Optional CRT branch name.'),
155
+ job: z.number().int().positive().describe('CRT job/test ID.'),
156
+ project: z.number().int().positive().describe('CRT project ID.'),
157
+ ...uploadOperationSchema,
158
+ ...connectionSchema,
159
+ };
160
+ export const agentiaMcpTestingToolHandlers = {
161
+ testingBuildList,
162
+ testingBuildLogs,
163
+ testingBuildRun,
164
+ testingCreate: testingJobCreate,
165
+ testingJobCreate,
166
+ testingJobDownload,
167
+ testingJobFiles,
168
+ testingJobList,
169
+ testingJobUpload,
170
+ testingLogs: testingBuildLogs,
171
+ testingProjectCreate,
172
+ testingProjectList,
173
+ testingRobotCreate,
174
+ testingRobotList,
175
+ testingRun: testingBuildRun,
176
+ testingStatus: testingBuildList,
177
+ testingUpdate: testingJobUpload,
178
+ testingVariableCreate,
179
+ testingVariableDelete,
180
+ testingVariableList,
181
+ };
182
+ export function registerAgentiaMcpTestingTools(server) {
183
+ server.registerTool('agentia_testing_project_list', {
184
+ description: 'List Copado Robotic Testing projects.',
185
+ inputSchema: { name: z.string().optional().describe('Exact project name filter.'), ...connectionSchema },
186
+ title: 'Agentia Testing Project List',
187
+ }, (args) => safelyHandleTool(() => testingProjectList(args || {})));
188
+ server.registerTool('agentia_testing_project_create', {
189
+ description: 'Create a Copado Robotic Testing project.',
190
+ inputSchema: {
191
+ description: z.string().optional().describe('Project description.'),
192
+ name: z.string().describe('Project name.'),
193
+ ...connectionSchema,
194
+ },
195
+ title: 'Agentia Testing Project Create',
196
+ }, (args) => safelyHandleTool(() => testingProjectCreate(args)));
197
+ server.registerTool('agentia_testing_robot_list', {
198
+ description: 'List Copado Robotic Testing robots.',
199
+ inputSchema: { project: z.number().int().positive().describe('CRT project ID.'), ...connectionSchema },
200
+ title: 'Agentia Testing Robot List',
201
+ }, (args) => safelyHandleTool(() => testingRobotList(args)));
202
+ server.registerTool('agentia_testing_robot_create', {
203
+ description: 'Create a Copado Robotic Testing robot.',
204
+ inputSchema: {
205
+ description: z.string().optional().describe('Robot description.'),
206
+ fwVersion: z.string().optional().describe('Robot framework version.'),
207
+ kind: z.enum(['cloud', 'QConnect']).optional().describe('Robot run environment.'),
208
+ name: z.string().describe('Robot name.'),
209
+ os: z.string().optional().describe('Robot operating system.'),
210
+ project: z.number().int().positive().describe('CRT project ID.'),
211
+ robotType: z.string().optional().describe('CRT robot type.'),
212
+ ...connectionSchema,
213
+ },
214
+ title: 'Agentia Testing Robot Create',
215
+ }, (args) => safelyHandleTool(() => testingRobotCreate(args)));
216
+ server.registerTool('agentia_testing_job_list', {
217
+ description: 'List Copado Robotic Testing jobs/tests.',
218
+ inputSchema: {
219
+ name: z.string().optional().describe('Case-insensitive exact job/test name filter.'),
220
+ project: z.number().int().positive().describe('CRT project ID.'),
221
+ ...connectionSchema,
222
+ },
223
+ title: 'Agentia Testing Job List',
224
+ }, (args) => safelyHandleTool(() => testingJobList(args)));
225
+ server.registerTool('agentia_testing_job_create', {
226
+ description: 'Create a Copado Robotic Testing job/test and upload files.',
227
+ inputSchema: {
228
+ description: z.string().optional().describe('Job/test description.'),
229
+ name: z.string().describe('Job/test name.'),
230
+ project: z.number().int().positive().describe('CRT project ID.'),
231
+ robot: z.string().describe('CRT robot ID.'),
232
+ ...fileInputSchema,
233
+ ...connectionSchema,
234
+ },
235
+ title: 'Agentia Testing Job Create',
236
+ }, (args) => safelyHandleTool(() => testingJobCreate(args)));
237
+ server.registerTool('agentia_testing_job_files', {
238
+ description: 'List files for a Copado Robotic Testing job/test.',
239
+ inputSchema: {
240
+ job: z.number().int().positive().describe('CRT job/test ID.'),
241
+ project: z.number().int().positive().describe('CRT project ID.'),
242
+ ...connectionSchema,
243
+ },
244
+ title: 'Agentia Testing Job Files',
245
+ }, (args) => safelyHandleTool(() => testingJobFiles(args)));
246
+ server.registerTool('agentia_testing_job_upload', {
247
+ description: 'Upload file operations to a Copado Robotic Testing job/test.',
248
+ inputSchema: uploadSchema,
249
+ title: 'Agentia Testing Job Upload',
250
+ }, (args) => safelyHandleTool(() => testingJobUpload(args)));
251
+ server.registerTool('agentia_testing_job_download', {
252
+ description: 'Download files from a Copado Robotic Testing job/test.',
253
+ inputSchema: {
254
+ branch: z.string().optional().describe('Optional CRT branch name.'),
255
+ file: z.array(z.string()).describe('Remote CRT file paths.'),
256
+ job: z.number().int().positive().describe('CRT job/test ID.'),
257
+ outputDir: z.string().optional().describe('Output directory for downloaded files.'),
258
+ project: z.number().int().positive().describe('CRT project ID.'),
259
+ ...connectionSchema,
260
+ },
261
+ title: 'Agentia Testing Job Download',
262
+ }, (args) => safelyHandleTool(() => testingJobDownload(args)));
263
+ server.registerTool('agentia_testing_build_run', {
264
+ description: 'Run a Copado Robotic Testing job/test.',
265
+ inputSchema: {
266
+ job: z.number().int().positive().describe('CRT job/test ID.'),
267
+ project: z.number().int().positive().describe('CRT project ID.'),
268
+ ...connectionSchema,
269
+ },
270
+ title: 'Agentia Testing Build Run',
271
+ }, (args) => safelyHandleTool(() => testingBuildRun(args)));
272
+ server.registerTool('agentia_testing_build_list', {
273
+ description: 'List Copado Robotic Testing builds/runs.',
274
+ inputSchema: buildListSchema,
275
+ title: 'Agentia Testing Build List',
276
+ }, (args) => safelyHandleTool(() => testingBuildList(args)));
277
+ server.registerTool('agentia_testing_build_logs', {
278
+ description: 'Get logs for a Copado Robotic Testing build/run.',
279
+ inputSchema: {
280
+ build: z.number().int().positive().describe('CRT build/run ID.'),
281
+ job: z.number().int().positive().describe('CRT job/test ID.'),
282
+ output: z.string().optional().describe('Output file for logs.'),
283
+ project: z.number().int().positive().describe('CRT project ID.'),
284
+ ...connectionSchema,
285
+ },
286
+ title: 'Agentia Testing Build Logs',
287
+ }, (args) => safelyHandleTool(() => testingBuildLogs(args)));
288
+ server.registerTool('agentia_testing_variable_list', {
289
+ description: 'List Copado Robotic Testing variables/secrets.',
290
+ inputSchema: {
291
+ job: z.number().int().positive().optional().describe('Client-side job/test ID filter.'),
292
+ project: z.number().int().positive().describe('CRT project ID.'),
293
+ robot: z.number().int().positive().optional().describe('Client-side robot ID filter.'),
294
+ ...connectionSchema,
295
+ },
296
+ title: 'Agentia Testing Variable List',
297
+ }, (args) => safelyHandleTool(() => testingVariableList(args)));
298
+ server.registerTool('agentia_testing_variable_create', {
299
+ description: 'Create a Copado Robotic Testing variable/secret.',
300
+ inputSchema: {
301
+ description: z.string().optional().describe('Variable description.'),
302
+ job: z.number().int().positive().optional().describe('CRT job/test ID scope.'),
303
+ key: z.string().describe('Variable key.'),
304
+ project: z.number().int().positive().describe('CRT project ID.'),
305
+ robot: z.number().int().positive().optional().describe('CRT robot ID scope.'),
306
+ sensitive: z.boolean().optional().describe('Mark variable as sensitive.'),
307
+ type: z.enum(TESTING_VARIABLE_TYPES).optional().describe('Variable type.'),
308
+ userSpecific: z.boolean().optional().describe('Create a user-specific variable.'),
309
+ value: z.string().optional().describe('Variable value.'),
310
+ ...connectionSchema,
311
+ },
312
+ title: 'Agentia Testing Variable Create',
313
+ }, (args) => safelyHandleTool(() => testingVariableCreate(args)));
314
+ server.registerTool('agentia_testing_variable_delete', {
315
+ description: 'Delete a Copado Robotic Testing variable/secret.',
316
+ inputSchema: {
317
+ id: z.string().describe('CRT variable/secret ID.'),
318
+ project: z.number().int().positive().describe('CRT project ID.'),
319
+ ...connectionSchema,
320
+ },
321
+ title: 'Agentia Testing Variable Delete',
322
+ }, (args) => safelyHandleTool(() => testingVariableDelete(args)));
323
+ server.registerTool('agentia_testing_create', {
324
+ description: 'Create a Copado Robotic Testing test and upload Robot Framework files.',
325
+ inputSchema: {
326
+ description: z.string().optional().describe('Test description.'),
327
+ name: z.string().describe('Test name.'),
328
+ project: z.number().int().positive().describe('CRT project ID.'),
329
+ robot: z.string().describe('CRT robot ID.'),
330
+ ...fileInputSchema,
331
+ ...connectionSchema,
332
+ },
333
+ title: 'Agentia Testing Create',
334
+ }, (args) => safelyHandleTool(() => testingJobCreate(args)));
335
+ server.registerTool('agentia_testing_update', {
336
+ description: 'Update a Copado Robotic Testing test by uploading file operations.',
337
+ inputSchema: uploadSchema,
338
+ title: 'Agentia Testing Update',
339
+ }, (args) => safelyHandleTool(() => testingJobUpload(args)));
340
+ server.registerTool('agentia_testing_run', {
341
+ description: 'Run a Copado Robotic Testing test.',
342
+ inputSchema: {
343
+ job: z.number().int().positive().describe('CRT job/test ID.'),
344
+ project: z.number().int().positive().describe('CRT project ID.'),
345
+ ...connectionSchema,
346
+ },
347
+ title: 'Agentia Testing Run',
348
+ }, (args) => safelyHandleTool(() => testingBuildRun(args)));
349
+ server.registerTool('agentia_testing_status', {
350
+ description: 'List Copado Robotic Testing run status.',
351
+ inputSchema: buildListSchema,
352
+ title: 'Agentia Testing Status',
353
+ }, (args) => safelyHandleTool(() => testingBuildList(args)));
354
+ server.registerTool('agentia_testing_logs', {
355
+ description: 'Get logs for a Copado Robotic Testing run.',
356
+ inputSchema: {
357
+ build: z.number().int().positive().describe('CRT build/run ID.'),
358
+ job: z.number().int().positive().describe('CRT job/test ID.'),
359
+ output: z.string().optional().describe('Output file for logs.'),
360
+ project: z.number().int().positive().describe('CRT project ID.'),
361
+ ...connectionSchema,
362
+ },
363
+ title: 'Agentia Testing Logs',
364
+ }, (args) => safelyHandleTool(() => testingBuildLogs(args)));
365
+ }
366
+ //# sourceMappingURL=testing-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testing-tools.js","sourceRoot":"","sources":["../../../src/lib/mcp/testing-tools.ts"],"names":[],"mappings":"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"}