@burdenoff/mcp-libs 2026.1009.1 → 2026.1009.2

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 (45) hide show
  1. package/dist/modules/files/index.cjs +101 -432
  2. package/dist/modules/files/index.cjs.map +1 -1
  3. package/dist/modules/files/index.js +102 -428
  4. package/dist/modules/files/index.js.map +1 -1
  5. package/dist/modules/groups/index.cjs +89 -360
  6. package/dist/modules/groups/index.cjs.map +1 -1
  7. package/dist/modules/groups/index.js +90 -356
  8. package/dist/modules/groups/index.js.map +1 -1
  9. package/dist/modules/rbac/index.cjs +85 -409
  10. package/dist/modules/rbac/index.cjs.map +1 -1
  11. package/dist/modules/rbac/index.js +86 -405
  12. package/dist/modules/rbac/index.js.map +1 -1
  13. package/dist/modules/sandbox/index.cjs +80 -1136
  14. package/dist/modules/sandbox/index.cjs.map +1 -1
  15. package/dist/modules/sandbox/index.js +80 -916
  16. package/dist/modules/sandbox/index.js.map +1 -1
  17. package/dist/modules/scheduler/index.cjs +70 -1044
  18. package/dist/modules/scheduler/index.cjs.map +1 -1
  19. package/dist/modules/scheduler/index.js +69 -1038
  20. package/dist/modules/scheduler/index.js.map +1 -1
  21. package/dist/modules/security/index.cjs +42 -507
  22. package/dist/modules/security/index.cjs.map +1 -1
  23. package/dist/modules/security/index.js +41 -501
  24. package/dist/modules/security/index.js.map +1 -1
  25. package/dist/modules/store/index.cjs +49 -479
  26. package/dist/modules/store/index.cjs.map +1 -1
  27. package/dist/modules/store/index.js +48 -473
  28. package/dist/modules/store/index.js.map +1 -1
  29. package/dist/modules/support/index.cjs +18 -19
  30. package/dist/modules/support/index.cjs.map +1 -1
  31. package/dist/modules/support/index.js +18 -19
  32. package/dist/modules/support/index.js.map +1 -1
  33. package/dist/modules/tags/index.cjs +43 -348
  34. package/dist/modules/tags/index.cjs.map +1 -1
  35. package/dist/modules/tags/index.js +42 -342
  36. package/dist/modules/tags/index.js.map +1 -1
  37. package/dist/modules/vibecontrols/index.js +1774 -1
  38. package/dist/modules/vibecontrols/index.js.map +1 -1
  39. package/dist/modules/workspaces/index.cjs +5 -12
  40. package/dist/modules/workspaces/index.cjs.map +1 -1
  41. package/dist/modules/workspaces/index.js +5 -12
  42. package/dist/modules/workspaces/index.js.map +1 -1
  43. package/package.json +1 -1
  44. package/dist/chunk-XITZQYB2.js +0 -1776
  45. package/dist/chunk-XITZQYB2.js.map +0 -1
@@ -1,8 +1,1781 @@
1
- import { LIST_AGENTS, GET_AGENT, CREATE_AGENT, UPDATE_AGENT, DELETE_AGENT, PROBE_AGENT_CONNECTION, AGENT_HEALTH_PROBES, AGENT_PLUGINS, INSTALL_AGENT_PLUGIN, REMOVE_AGENT_PLUGIN, LIST_VIBES, GET_VIBE, CREATE_VIBE, UPDATE_VIBE, DELETE_VIBE, UPDATE_VIBE_STATUS, ARCHIVE_VIBE, RESTORE_VIBE, VIBE_HIERARCHY, SEARCH_VIBES, MOVE_VIBE, UPDATE_VIBE_GIT, LIST_SESSIONS, GET_SESSION, CREATE_SESSION, START_SESSION, STOP_SESSION, RESTART_SESSION, TERMINATE_SESSION, SEND_SESSION_INPUT, START_SESSION_TERMINAL, SESSION_OUTPUT, ACTIVE_SESSIONS, CHECK_SESSION_HEALTH, BULK_RESTART_SESSIONS, BULK_STOP_SESSIONS, BULK_TERMINATE_SESSIONS, UPDATE_SESSION, UPDATE_SESSION_STATUS, DELETE_SESSION, KILL_SESSION, STOP_SESSION_TERMINAL, RESTART_SESSION_TERMINAL, START_TARGET_TERMINAL, STOP_TARGET_TERMINAL, EXPORT_SESSIONS, LIST_NOTES, GET_NOTE, CREATE_NOTE, UPDATE_NOTE, DELETE_NOTE, SEARCH_NOTES, PIN_NOTE, UNPIN_NOTE, LIST_CONFIGURATIONS, GET_CONFIGURATION, SET_CONFIGURATION, DELETE_CONFIGURATION, CONFIGURATIONS_BY_SCOPE, SECURITY_PROVIDERS_Q, SET_SECURITY_PROVIDER_M, MY_SECURITY_SCANS_Q, ALL_SECURITY_SCANS_Q, SECURITY_SCAN_Q, RUN_SECURITY_SCAN_M, CANCEL_SECURITY_SCAN_M, SECURITY_FINDINGS_Q, UPDATE_SECURITY_FINDING_STATUS_M, SECURITY_POLICY_DECISION_Q, SECURITY_STATUS_Q, REPOSITORY_SECURITY_CONFIG_Q, UPDATE_REPOSITORY_SECURITY_CONFIG_M, CREATE_SECURITY_EXCEPTION_M, REVOKE_SECURITY_EXCEPTION_M, PRESIGN_SECURITY_EVIDENCE_M, PUSH_SECURITY_SCAN_RUN_M, GET_CI_STATUS_Q, REFRESH_CI_STATUS_M, GET_CI_PIPELINE_RUNS_Q, GET_CI_PIPELINE_DETAILS_Q, GET_REPO_STATS_Q, REFRESH_REPO_STATS_M, LIST_GITOPS_PROVIDERS_Q, GET_GITOPS_PROVIDER_Q, CREATE_GITOPS_PROVIDER_M, UPDATE_GITOPS_PROVIDER_M, DELETE_GITOPS_PROVIDER_M, MY_SETTINGS_Q, MY_SETTINGS_BY_CATEGORY_Q, RESET_SETTINGS_M, UPDATE_PREFERENCES_M, UPDATE_NOTIFICATION_PREFERENCES_M, UPDATE_WORKSPACE_DEFAULTS_M, LIST_SETTINGS_SECRETS_Q, SET_SETTINGS_SECRET_M, DELETE_SETTINGS_SECRET_M, RESOLVE_INTEGRATION_TOKEN_M, LIST_WEBHOOKS, GET_WEBHOOK, CREATE_WEBHOOK, UPDATE_WEBHOOK, DELETE_WEBHOOK, TEST_WEBHOOK, TRIGGER_WEBHOOK, GET_UI_SESSION, SAVE_UI_SESSION, CLEAR_UI_SESSION, LIST_AI_TOOL_EVENTS, CREATE_AI_TOOL_EVENT, RECENT_AI_TOOL_EVENTS, LIST_TARGETS, GET_TARGET, CREATE_TARGET, UPDATE_TARGET, DELETE_TARGET, TEST_TARGET, IMPORT_TARGETS_FROM_CONFIG, SCAN_SSH_CONFIG, INSTALL_AGENT_ON_TARGET, LIST_VIBEDECKS, GET_VIBEDECK, CREATE_VIBEDECK, UPDATE_VIBEDECK, DELETE_VIBEDECK, DUPLICATE_VIBEDECK, SET_DEFAULT_VIBEDECK, LIST_VIBEDECK_BUTTONS, CREATE_VIBEDECK_BUTTON, UPDATE_VIBEDECK_BUTTON, DELETE_VIBEDECK_BUTTON, EXECUTE_VIBEDECK_BUTTON, LIST_DOCS_SITES, GET_DOCS_SITE, CREATE_DOCS_SITE, UPDATE_DOCS_SITE, DELETE_DOCS_SITE, LIST_DOCS_PAGES, GET_DOCS_PAGE, CREATE_DOCS_PAGE, UPDATE_DOCS_PAGE, DELETE_DOCS_PAGE, COMPILE_DOCS_SITE, PUBLISH_DOCS_REVISION, ROLLBACK_DOCS_REVISION, SHARE_SESSION, CREATE_SESSION_SHARE_LINK, REVOKE_SESSION_SHARE, REVOKE_SESSION_SHARE_LINK, SESSION_SHARES, SESSION_SHARE_LINKS, SESSION_COLLABORATORS, SESSIONS_SHARED_WITH_ME, UPDATE_SESSION_SHARE, JOIN_SHARED_SESSION, LEAVE_SHARED_SESSION, REQUEST_SESSION_CONTROL, RELEASE_SESSION_CONTROL, TRANSFER_SESSION_CONTROL, LIST_AUDIT_LOGS, GET_AUDIT_LOG, AUDIT_LOG_STATS, EXPORT_AUDIT_LOGS, DELETE_AUDIT_LOG, LIST_ACTIONS, GET_ACTION, CREATE_ACTION, UPDATE_ACTION, DELETE_ACTION, EXECUTE_ACTION, LIST_ACTION_EXECUTIONS, DUPLICATE_ACTION, INSTALL_ACTION_FROM_STORE, CANCEL_ACTION_EXECUTION, CREATE_SCHEDULED_JOB, DELETE_SCHEDULED_JOB, LIST_SCHEDULED_JOBS, LIST_AI_PROMPTS, GET_AI_PROMPT, CREATE_AI_PROMPT, UPDATE_AI_PROMPT, DELETE_AI_PROMPT, DUPLICATE_AI_PROMPT, RENDER_AI_PROMPT, RECORD_AI_PROMPT_USAGE, LIST_VIBE_DECK_SHARE_LINKS, CREATE_VIBE_DECK_SHARE_LINK, UPDATE_VIBE_DECK_SHARE_LINK, REVOKE_VIBE_DECK_SHARE_LINK, VALIDATE_VIBE_DECK_SHARE_LINK, SHARED_VIBE_DECK, EXECUTE_SHARED_VIBE_DECK_BUTTON, VIBECONTROLS_ANALYTICS, LIST_CATALOGS, GET_CATALOG, GET_CATALOG_DEPENDENCY_GRAPH, GET_CATALOG_SBOM, CREATE_CATALOG, UPDATE_CATALOG, DELETE_CATALOG, ADD_COMPONENT_TO_CATALOG, REMOVE_COMPONENT_FROM_CATALOG, ADD_VIBE_TO_CATALOG, REMOVE_VIBE_FROM_CATALOG, LIST_COMPONENTS, GET_COMPONENT, CREATE_COMPONENT, UPDATE_COMPONENT, DELETE_COMPONENT, FORK_GITHUB_REPO, PUBLISH_COMPONENT_AS_TEMPLATE, LIST_TEMPLATES, GET_TEMPLATE, UPDATE_TEMPLATE, DELETE_TEMPLATE, INSTANTIATE_TEMPLATE, GET_SCORECARD, UPSERT_SCORECARD, ADD_SCORECARD_METRIC, UPDATE_SCORECARD_METRIC, REMOVE_SCORECARD_METRIC, LIST_TUNNELS, PINNED_NOTES, GET_TUNNEL, GET_TUNNEL_BY_SLUG, CREATE_TUNNEL, UPDATE_TUNNEL, DELETE_TUNNEL, START_TUNNEL, STOP_TUNNEL, ROTATE_TUNNEL_CREDENTIALS, ISSUE_TUNNEL_SESSION, REVOKE_TUNNEL_SESSION, LIST_TUNNEL_SESSIONS, LIST_TUNNEL_PROVIDERS, GET_TUNNEL_PROVIDER, LIST_TUNNEL_SHARDS, TUNNEL_USAGE, TUNNEL_AUDIT, LIST_TUNNEL_DOMAINS, GET_TUNNEL_DOMAIN, RESERVE_TUNNEL_SUBDOMAIN, REGISTER_CUSTOM_TUNNEL_DOMAIN, VERIFY_TUNNEL_DOMAIN, ATTACH_TUNNEL_DOMAIN, DETACH_TUNNEL_DOMAIN, DELETE_TUNNEL_DOMAIN, PROBE_AGENT_TUNNEL, ADD_AGENT_FROM_TUNNEL, LIST_SANDBOXES, GET_SANDBOX, CREATE_SANDBOX, DELETE_SANDBOX, START_SANDBOX, STOP_SANDBOX, EXTEND_SANDBOX_TTL, GET_SANDBOX_CONFIG, UPDATE_SANDBOX_CONFIG, GET_SANDBOX_STATS, GET_SANDBOX_LOGS, TAG_SANDBOX, UNTAG_SANDBOX, GET_SANDBOX_TAGS, REPLACE_SANDBOX_TAGS, CREATE_SANDBOX_TAG, AVAILABLE_SANDBOX_TAGS, LIST_SANDBOX_TEMPLATES, GET_SANDBOX_TEMPLATE, CREATE_SANDBOX_TEMPLATE, UPDATE_SANDBOX_TEMPLATE, DELETE_SANDBOX_TEMPLATE, EXPORT_SANDBOXES, GET_SANDBOX_EXPORT_JOB, LIST_SANDBOX_EXPORT_JOBS, GET_SANDBOX_ARTIFACT_BYTES, GET_ACTIVE_SANDBOXES, GET_RECENT_SANDBOX_ACTIVITY, LIST_ALL_SANDBOXES, LIST_SANDBOX_NODES, PROXY_SANDBOX_REQUEST } from '../../chunk-XITZQYB2.js';
2
1
  import { getAuth } from '../../chunk-SX6IGKZH.js';
3
2
  import { mcpToolName, jsonResult, errorResult } from '../../chunk-G76DKEPI.js';
4
3
  import { z } from 'zod';
5
4
 
5
+ // src/modules/vibecontrols/operations.ts
6
+ var AGENT_FIELDS = `
7
+ id name hostname platform architecture version
8
+ tunnelUrl tunnelStatus apiUrl agentApiKey appId appClientId
9
+ capabilities configuration isActive lastHeartbeat metadata
10
+ workspaceId createdAt updatedAt deletedAt
11
+ `;
12
+ var VIBE_FIELDS = `
13
+ id name description path type status agentId parentId
14
+ gitBranch gitRemote gitStatus environmentVariables tags metadata
15
+ workspaceId archivedAt createdAt updatedAt deletedAt
16
+ `;
17
+ var SESSION_FIELDS = `
18
+ id name command workingDirectory type status agentId vibeId
19
+ providerSessionName providerWindowId providerPaneId pid exitCode ttydUrl lastOutput
20
+ autoStart environmentVariables metadata startedAt stoppedAt
21
+ workspaceId createdAt updatedAt deletedAt
22
+ `;
23
+ var NOTE_FIELDS = `
24
+ id title content tags isPinned vibeId createdBy metadata
25
+ workspaceId createdAt updatedAt deletedAt
26
+ `;
27
+ var CONFIG_FIELDS = `
28
+ id key value scope scopeId isSecret
29
+ workspaceId createdAt updatedAt
30
+ `;
31
+ var WEBHOOK_FIELDS = `
32
+ id name url events agentIds isActive signingKey retryPolicy
33
+ deliveryCount failureCount lastDelivery lastError
34
+ workspaceId createdAt updatedAt deletedAt
35
+ `;
36
+ var UI_SESSION_FIELDS = `
37
+ id userId state activeVibeId activeSessionId
38
+ recentVibes recentSessions workspaceId createdAt updatedAt
39
+ `;
40
+ var TUNNEL_FIELDS = `
41
+ id workspaceId agentId slug name description
42
+ providerKey protocol localHost localPort tlsMode
43
+ status lastError hasBasicAuth basicAuthUser
44
+ primaryDomain { id hostname type verificationStatus isPrimary }
45
+ startedAt stoppedAt createdAt updatedAt
46
+ `;
47
+ var TUNNEL_DOMAIN_FIELDS_MCP = `
48
+ id workspaceId tunnelId type hostname environment
49
+ verificationStatus challengeRecordName challengeToken
50
+ verifiedAt lastCheckedAt lastCheckError isPrimary
51
+ dnsTargetHint createdAt updatedAt
52
+ `;
53
+ var TUNNEL_PROVIDER_FIELDS_MCP = `
54
+ id key displayName description isEnabled pluginPackage minAgentVersion
55
+ capabilities {
56
+ platforms supportedVisibilities
57
+ supportsCustomDomains supportsHttp supportsHttps supportsLiveLogs
58
+ supportsManagedSubdomains supportsReservedSubdomain supportsRotateCredentials
59
+ supportsSessionTokens supportsTcp supportsUdp supportsUsageMetrics
60
+ }
61
+ createdAt updatedAt
62
+ `;
63
+ var TUNNEL_SESSION_FIELDS_MCP = `
64
+ id workspaceId tunnelId shardId agentId status
65
+ tokenFingerprint issuedAt expiresAt connectedAt disconnectedAt
66
+ revokedAt revokedReason clientIp bytesIn bytesOut
67
+ `;
68
+ var TUNNEL_SHARD_FIELDS_MCP = `
69
+ id name providerId environment publicHost controlPort proxyPortRange
70
+ region status capacity currentLoad metadata createdAt updatedAt
71
+ `;
72
+ var TARGET_FIELDS = `
73
+ id name type host port username status
74
+ workspaceId createdAt updatedAt
75
+ `;
76
+ var VIBEDECK_FIELDS = `
77
+ id name description isDefault
78
+ workspaceId createdAt updatedAt
79
+ `;
80
+ var VIBEDECK_BUTTON_FIELDS = `
81
+ id vibeDeckId label icon actionType actionId
82
+ action { id name actionType }
83
+ command script webhookUrl
84
+ row column color category tags
85
+ confirmationRequired keyboardShortcut style sortOrder
86
+ createdAt updatedAt
87
+ `;
88
+ var AI_TOOL_EVENT_FIELDS = `
89
+ id source eventType payload agentId
90
+ workspaceId createdAt
91
+ `;
92
+ var DOCS_SITE_FIELDS = `
93
+ id vibeId name visibility runtime
94
+ workspaceId createdAt updatedAt
95
+ `;
96
+ var DOCS_PAGE_FIELDS = `
97
+ id siteId title slug content parentId sidebarPosition status
98
+ createdAt updatedAt
99
+ `;
100
+ var DOCS_REVISION_FIELDS = `
101
+ id siteId revisionNumber status buildDurationMs artifactSizeBytes
102
+ errorMessage publishedAt
103
+ createdAt updatedAt
104
+ `;
105
+ var AUDIT_LOG_FIELDS = `
106
+ id action resourceType resourceId actorId actorType
107
+ status description ipAddress userAgent requestId
108
+ workspaceId createdAt
109
+ `;
110
+ var SESSION_SHARE_FIELDS = `
111
+ id sessionId sharedWithId permission status message
112
+ createdBy createdAt expiresAt lastAccessAt accessCount revokedAt revokedBy
113
+ `;
114
+ var SESSION_SHARE_LINK_FIELDS = `
115
+ id sessionId token permission expiresAt
116
+ createdAt
117
+ `;
118
+ var LIST_AGENTS = `
119
+ query VibecontrolsAgents($filter: VibecontrolsAgentFilterInput) {
120
+ vibecontrolsAgents(filter: $filter) { ${AGENT_FIELDS} }
121
+ }
122
+ `;
123
+ var GET_AGENT = `
124
+ query VibecontrolsAgent($id: ID!) {
125
+ vibecontrolsAgent(id: $id) { ${AGENT_FIELDS} }
126
+ }
127
+ `;
128
+ var CREATE_AGENT = `
129
+ mutation CreateVibecontrolsAgent($input: CreateVibecontrolsAgentInput!) {
130
+ createVibecontrolsAgent(input: $input) { ${AGENT_FIELDS} }
131
+ }
132
+ `;
133
+ var UPDATE_AGENT = `
134
+ mutation UpdateVibecontrolsAgent($id: ID!, $input: UpdateVibecontrolsAgentInput!) {
135
+ updateVibecontrolsAgent(id: $id, input: $input) { ${AGENT_FIELDS} }
136
+ }
137
+ `;
138
+ var DELETE_AGENT = `
139
+ mutation DeleteVibecontrolsAgent($id: ID!) {
140
+ deleteVibecontrolsAgent(id: $id)
141
+ }
142
+ `;
143
+ var PROBE_AGENT_CONNECTION = `
144
+ query ProbeAgentConnection($id: ID!) {
145
+ probeAgentConnection(id: $id) {
146
+ agentId reachable latencyMs error version tunnelUrl
147
+ }
148
+ }
149
+ `;
150
+ var AGENT_HEALTH_PROBES = `
151
+ query VibecontrolsAgentHealthProbes {
152
+ vibecontrolsAgentHealthProbes {
153
+ agentId agentName healthy agentVersion errorMessage tunnelUrl uptime
154
+ }
155
+ }
156
+ `;
157
+ var AGENT_PLUGINS = `
158
+ query AgentPlugins($agentId: ID!) {
159
+ agentPlugins(agentId: $agentId) {
160
+ agentId
161
+ plugins {
162
+ name packageName version description isActive tags metadata
163
+ }
164
+ total
165
+ }
166
+ }
167
+ `;
168
+ var INSTALL_AGENT_PLUGIN = `
169
+ mutation InstallAgentPlugin($agentId: ID!, $packageName: String!) {
170
+ installAgentPlugin(agentId: $agentId, packageName: $packageName) {
171
+ success message
172
+ plugin { name packageName version description isActive tags metadata }
173
+ }
174
+ }
175
+ `;
176
+ var REMOVE_AGENT_PLUGIN = `
177
+ mutation RemoveAgentPlugin($agentId: ID!, $packageName: String!) {
178
+ removeAgentPlugin(agentId: $agentId, packageName: $packageName) {
179
+ success message
180
+ plugin { name packageName version description isActive tags metadata }
181
+ }
182
+ }
183
+ `;
184
+ var LIST_VIBES = `
185
+ query Vibes($filter: VibeFilterInput, $pagination: PaginationInput) {
186
+ vibes(filter: $filter, pagination: $pagination) {
187
+ items { ${VIBE_FIELDS} }
188
+ total hasMore
189
+ }
190
+ }
191
+ `;
192
+ var GET_VIBE = `
193
+ query Vibe($id: ID!) {
194
+ vibe(id: $id) { ${VIBE_FIELDS} }
195
+ }
196
+ `;
197
+ var CREATE_VIBE = `
198
+ mutation CreateVibe($input: CreateVibeInput!) {
199
+ createVibe(input: $input) { ${VIBE_FIELDS} }
200
+ }
201
+ `;
202
+ var UPDATE_VIBE = `
203
+ mutation UpdateVibe($id: ID!, $input: UpdateVibeInput!) {
204
+ updateVibe(id: $id, input: $input) { ${VIBE_FIELDS} }
205
+ }
206
+ `;
207
+ var DELETE_VIBE = `
208
+ mutation DeleteVibe($id: ID!) { deleteVibe(id: $id) }
209
+ `;
210
+ var ARCHIVE_VIBE = `
211
+ mutation ArchiveVibe($id: ID!) {
212
+ archiveVibe(id: $id) { ${VIBE_FIELDS} }
213
+ }
214
+ `;
215
+ var RESTORE_VIBE = `
216
+ mutation RestoreVibe($id: ID!) {
217
+ restoreVibe(id: $id) { ${VIBE_FIELDS} }
218
+ }
219
+ `;
220
+ var MOVE_VIBE = `
221
+ mutation MoveVibe($id: ID!, $newParentId: ID) {
222
+ moveVibe(id: $id, newParentId: $newParentId) { ${VIBE_FIELDS} }
223
+ }
224
+ `;
225
+ var UPDATE_VIBE_STATUS = `
226
+ mutation UpdateVibeStatus($id: ID!, $status: VibeStatus!) {
227
+ updateVibeStatus(id: $id, status: $status) { ${VIBE_FIELDS} }
228
+ }
229
+ `;
230
+ var VIBE_HIERARCHY = `
231
+ query VibeHierarchy($rootId: ID) {
232
+ vibeHierarchy(rootId: $rootId) { ${VIBE_FIELDS} }
233
+ }
234
+ `;
235
+ var SEARCH_VIBES = `
236
+ query SearchVibes($query: String!, $limit: Int) {
237
+ searchVibes(query: $query, limit: $limit) { ${VIBE_FIELDS} }
238
+ }
239
+ `;
240
+ var UPDATE_VIBE_GIT = `
241
+ mutation UpdateVibeGit($id: ID!, $gitBranch: String, $gitRemote: String, $gitStatus: JSON) {
242
+ updateVibeGit(id: $id, gitBranch: $gitBranch, gitRemote: $gitRemote, gitStatus: $gitStatus) {
243
+ ${VIBE_FIELDS}
244
+ }
245
+ }
246
+ `;
247
+ var LIST_SESSIONS = `
248
+ query Sessions($filter: SessionFilterInput, $pagination: PaginationInput) {
249
+ sessions(filter: $filter, pagination: $pagination) {
250
+ items { ${SESSION_FIELDS} }
251
+ total hasMore
252
+ }
253
+ }
254
+ `;
255
+ var GET_SESSION = `
256
+ query Session($id: ID!) {
257
+ session(id: $id) { ${SESSION_FIELDS} }
258
+ }
259
+ `;
260
+ var CREATE_SESSION = `
261
+ mutation CreateSession($input: CreateSessionInput!) {
262
+ createSession(input: $input) { ${SESSION_FIELDS} }
263
+ }
264
+ `;
265
+ var START_SESSION = `
266
+ mutation StartSession($id: ID!) {
267
+ startSession(id: $id) { ${SESSION_FIELDS} }
268
+ }
269
+ `;
270
+ var STOP_SESSION = `
271
+ mutation StopSession($id: ID!) {
272
+ stopSession(id: $id) { ${SESSION_FIELDS} }
273
+ }
274
+ `;
275
+ var RESTART_SESSION = `
276
+ mutation RestartSession($id: ID!) {
277
+ restartSession(id: $id) { ${SESSION_FIELDS} }
278
+ }
279
+ `;
280
+ var TERMINATE_SESSION = `
281
+ mutation TerminateSession($id: ID!) {
282
+ terminateSession(id: $id)
283
+ }
284
+ `;
285
+ var SEND_SESSION_INPUT = `
286
+ mutation SendSessionInput($id: ID!, $input: String!) {
287
+ sendSessionInput(id: $id, input: $input)
288
+ }
289
+ `;
290
+ var START_SESSION_TERMINAL = `
291
+ mutation StartSessionTerminal($id: ID!) {
292
+ startSessionTerminal(id: $id) { ${SESSION_FIELDS} }
293
+ }
294
+ `;
295
+ var SESSION_OUTPUT = `
296
+ query SessionOutput($id: ID!, $lines: Int) {
297
+ sessionOutput(id: $id, lines: $lines)
298
+ }
299
+ `;
300
+ var ACTIVE_SESSIONS = `
301
+ query ActiveSessions($vibeId: ID) {
302
+ activeSessions(vibeId: $vibeId) { ${SESSION_FIELDS} }
303
+ }
304
+ `;
305
+ var CHECK_SESSION_HEALTH = `
306
+ mutation CheckSessionHealth {
307
+ checkSessionHealth { checked updated errors }
308
+ }
309
+ `;
310
+ var BULK_RESTART_SESSIONS = `
311
+ mutation BulkRestartSessions($ids: [ID!]!) {
312
+ bulkRestartSessions(ids: $ids) { succeeded failed }
313
+ }
314
+ `;
315
+ var BULK_STOP_SESSIONS = `
316
+ mutation BulkStopSessions($ids: [ID!]!) {
317
+ bulkStopSessions(ids: $ids) { succeeded failed }
318
+ }
319
+ `;
320
+ var BULK_TERMINATE_SESSIONS = `
321
+ mutation BulkTerminateSessions($ids: [ID!]!) {
322
+ bulkTerminateSessions(ids: $ids) { succeeded failed }
323
+ }
324
+ `;
325
+ var UPDATE_SESSION = `
326
+ mutation UpdateSession($id: ID!, $input: UpdateSessionInput!) {
327
+ updateSession(id: $id, input: $input) { ${SESSION_FIELDS} }
328
+ }
329
+ `;
330
+ var UPDATE_SESSION_STATUS = `
331
+ mutation UpdateSessionStatus($id: ID!, $status: VibecontrolsSessionStatus!) {
332
+ updateSessionStatus(id: $id, status: $status) { ${SESSION_FIELDS} }
333
+ }
334
+ `;
335
+ var DELETE_SESSION = `
336
+ mutation DeleteSession($id: ID!) { deleteSession(id: $id) }
337
+ `;
338
+ var KILL_SESSION = `
339
+ mutation KillSession($id: ID!) { killSession(id: $id) }
340
+ `;
341
+ var SHARE_SESSION = `
342
+ mutation ShareSession($input: ShareSessionInput!) {
343
+ shareSession(input: $input) { ${SESSION_SHARE_FIELDS} }
344
+ }
345
+ `;
346
+ var CREATE_SESSION_SHARE_LINK = `
347
+ mutation CreateSessionShareLink($input: CreateSessionShareLinkInput!) {
348
+ createSessionShareLink(input: $input) { ${SESSION_SHARE_LINK_FIELDS} }
349
+ }
350
+ `;
351
+ var REVOKE_SESSION_SHARE = `
352
+ mutation RevokeSessionShare($id: ID!) {
353
+ revokeSessionShare(id: $id) { ${SESSION_SHARE_FIELDS} }
354
+ }
355
+ `;
356
+ var REVOKE_SESSION_SHARE_LINK = `
357
+ mutation RevokeSessionShareLink($id: ID!) {
358
+ revokeSessionShareLink(id: $id) { ${SESSION_SHARE_LINK_FIELDS} }
359
+ }
360
+ `;
361
+ var SESSION_SHARES = `
362
+ query SessionShares($sessionId: ID!) {
363
+ sessionShares(sessionId: $sessionId) { ${SESSION_SHARE_FIELDS} }
364
+ }
365
+ `;
366
+ var SESSION_SHARE_LINKS = `
367
+ query SessionShareLinks($sessionId: ID!) {
368
+ sessionShareLinks(sessionId: $sessionId) { ${SESSION_SHARE_LINK_FIELDS} }
369
+ }
370
+ `;
371
+ var SESSION_COLLABORATORS = `
372
+ query SessionCollaborators($sessionId: ID!) {
373
+ sessionCollaborators(sessionId: $sessionId) { userId hasControl joinedAt }
374
+ }
375
+ `;
376
+ var SESSIONS_SHARED_WITH_ME = `
377
+ query SessionsSharedWithMe($filter: SharedWithMeFilterInput, $pagination: PaginationInput) {
378
+ sessionsSharedWithMe(filter: $filter, pagination: $pagination) {
379
+ totalCount
380
+ edges {
381
+ cursor
382
+ node { ${SESSION_SHARE_FIELDS} }
383
+ }
384
+ }
385
+ }
386
+ `;
387
+ var UPDATE_SESSION_SHARE = `
388
+ mutation UpdateSessionShare($id: ID!, $input: UpdateSessionShareInput!) {
389
+ updateSessionShare(id: $id, input: $input) { ${SESSION_SHARE_FIELDS} }
390
+ }
391
+ `;
392
+ var JOIN_SHARED_SESSION = `
393
+ mutation JoinSharedSession($input: JoinSessionInput!) {
394
+ joinSharedSession(input: $input) { id userId hasControl joinedAt role }
395
+ }
396
+ `;
397
+ var LEAVE_SHARED_SESSION = `
398
+ mutation LeaveSharedSession($sessionId: ID!) { leaveSharedSession(sessionId: $sessionId) }
399
+ `;
400
+ var REQUEST_SESSION_CONTROL = `
401
+ mutation RequestSessionControl($sessionId: ID!) { requestSessionControl(sessionId: $sessionId) }
402
+ `;
403
+ var RELEASE_SESSION_CONTROL = `
404
+ mutation ReleaseSessionControl($sessionId: ID!) { releaseSessionControl(sessionId: $sessionId) }
405
+ `;
406
+ var TRANSFER_SESSION_CONTROL = `
407
+ mutation TransferSessionControl($sessionId: ID!, $toUserId: ID!) {
408
+ transferSessionControl(sessionId: $sessionId, toUserId: $toUserId)
409
+ }
410
+ `;
411
+ var STOP_SESSION_TERMINAL = `
412
+ mutation StopSessionTerminal($id: ID!) {
413
+ stopSessionTerminal(id: $id) { ${SESSION_FIELDS} }
414
+ }
415
+ `;
416
+ var RESTART_SESSION_TERMINAL = `
417
+ mutation RestartSessionTerminal($id: ID!) {
418
+ restartSessionTerminal(id: $id) { ${SESSION_FIELDS} }
419
+ }
420
+ `;
421
+ var START_TARGET_TERMINAL = `
422
+ mutation StartTerminal($targetId: ID!, $shell: String) {
423
+ startTerminal(targetId: $targetId, shell: $shell) {
424
+ connectionId sessionId status host localPort remotePort ttydUrl
425
+ }
426
+ }
427
+ `;
428
+ var STOP_TARGET_TERMINAL = `
429
+ mutation StopTerminal($sessionId: ID!) { stopTerminal(sessionId: $sessionId) }
430
+ `;
431
+ var EXPORT_SESSIONS = `
432
+ mutation ExportSessions($input: SessionExportInput!) {
433
+ exportSessions(input: $input) { count data format generatedAt }
434
+ }
435
+ `;
436
+ var AI_PROMPT_FIELDS = `
437
+ id name description content category status isShared
438
+ tags variables metadata createdBy onBehalfOf updatedBy
439
+ workspaceId usageCount lastUsedAt
440
+ createdAt updatedAt deletedAt
441
+ `;
442
+ var LIST_AI_PROMPTS = `
443
+ query AiPrompts($filter: AIPromptFilterInput, $pagination: PaginationInput) {
444
+ aiPrompts(filter: $filter, pagination: $pagination) {
445
+ items { ${AI_PROMPT_FIELDS} }
446
+ total hasMore
447
+ }
448
+ }
449
+ `;
450
+ var GET_AI_PROMPT = `
451
+ query AiPrompt($id: ID!) { aiPrompt(id: $id) { ${AI_PROMPT_FIELDS} } }
452
+ `;
453
+ var CREATE_AI_PROMPT = `
454
+ mutation CreateAIPrompt($input: CreateAIPromptInput!) {
455
+ createAIPrompt(input: $input) { ${AI_PROMPT_FIELDS} }
456
+ }
457
+ `;
458
+ var UPDATE_AI_PROMPT = `
459
+ mutation UpdateAIPrompt($id: ID!, $input: UpdateAIPromptInput!) {
460
+ updateAIPrompt(id: $id, input: $input) { ${AI_PROMPT_FIELDS} }
461
+ }
462
+ `;
463
+ var DELETE_AI_PROMPT = `
464
+ mutation DeleteAIPrompt($id: ID!) { deleteAIPrompt(id: $id) }
465
+ `;
466
+ var DUPLICATE_AI_PROMPT = `
467
+ mutation DuplicateAIPrompt($id: ID!, $name: String!) {
468
+ duplicateAIPrompt(id: $id, name: $name) { ${AI_PROMPT_FIELDS} }
469
+ }
470
+ `;
471
+ var RENDER_AI_PROMPT = `
472
+ mutation RenderAIPrompt($id: ID!, $variables: JSON) {
473
+ renderAIPrompt(id: $id, variables: $variables) { promptId rendered }
474
+ }
475
+ `;
476
+ var RECORD_AI_PROMPT_USAGE = `
477
+ mutation RecordAIPromptUsage($id: ID!) {
478
+ recordAIPromptUsage(id: $id) { ${AI_PROMPT_FIELDS} }
479
+ }
480
+ `;
481
+ var VIBE_DECK_SHARE_LINK_FIELDS = `
482
+ id vibeDeckId token shareUrl name permission status visibility
483
+ hasPassword allowIframe maxUses useCount expiresAt lastUsedAt
484
+ createdBy createdAt
485
+ `;
486
+ var LIST_VIBE_DECK_SHARE_LINKS = `
487
+ query VibeDeckShareLinks($vibeDeckId: ID!) {
488
+ vibeDeckShareLinks(vibeDeckId: $vibeDeckId) { ${VIBE_DECK_SHARE_LINK_FIELDS} }
489
+ }
490
+ `;
491
+ var CREATE_VIBE_DECK_SHARE_LINK = `
492
+ mutation CreateVibeDeckShareLink($input: CreateVibeDeckShareLinkInput!) {
493
+ createVibeDeckShareLink(input: $input) { ${VIBE_DECK_SHARE_LINK_FIELDS} }
494
+ }
495
+ `;
496
+ var UPDATE_VIBE_DECK_SHARE_LINK = `
497
+ mutation UpdateVibeDeckShareLink($id: ID!, $input: UpdateVibeDeckShareLinkInput!) {
498
+ updateVibeDeckShareLink(id: $id, input: $input) { ${VIBE_DECK_SHARE_LINK_FIELDS} }
499
+ }
500
+ `;
501
+ var REVOKE_VIBE_DECK_SHARE_LINK = `
502
+ mutation RevokeVibeDeckShareLink($id: ID!) {
503
+ revokeVibeDeckShareLink(id: $id) { ${VIBE_DECK_SHARE_LINK_FIELDS} }
504
+ }
505
+ `;
506
+ var VALIDATE_VIBE_DECK_SHARE_LINK = `
507
+ query ValidateVibeDeckShareLink($token: String!) {
508
+ validateVibeDeckShareLink(token: $token) {
509
+ isValid error requiresPassword permission allowIframe
510
+ expiresAt vibeDeckId vibeDeckName ownerName
511
+ }
512
+ }
513
+ `;
514
+ var SHARED_VIBE_DECK = `
515
+ query SharedVibeDeck($token: String!, $password: String) {
516
+ sharedVibeDeck(token: $token, password: $password) {
517
+ id name description icon buttonSize colorTheme gridColumns gridRows
518
+ permission
519
+ buttons { id label actionType row column rowSpan colSpan icon color category confirmationRequired }
520
+ }
521
+ }
522
+ `;
523
+ var EXECUTE_SHARED_VIBE_DECK_BUTTON = `
524
+ mutation ExecuteSharedVibeDeckButton($token: String!, $buttonId: ID!, $password: String) {
525
+ executeSharedVibeDeckButton(token: $token, buttonId: $buttonId, password: $password) {
526
+ success output error
527
+ }
528
+ }
529
+ `;
530
+ var LIST_NOTES = `
531
+ query Notes($filter: VibecontrolsNoteFilterInput, $pagination: PaginationInput) {
532
+ notes(filter: $filter, pagination: $pagination) {
533
+ items { ${NOTE_FIELDS} }
534
+ total hasMore
535
+ }
536
+ }
537
+ `;
538
+ var GET_NOTE = `
539
+ query Note($id: ID!) {
540
+ note(id: $id) { ${NOTE_FIELDS} }
541
+ }
542
+ `;
543
+ var CREATE_NOTE = `
544
+ mutation CreateNote($input: CreateVibecontrolsNoteInput!) {
545
+ createNote(input: $input) { ${NOTE_FIELDS} }
546
+ }
547
+ `;
548
+ var UPDATE_NOTE = `
549
+ mutation UpdateNote($id: ID!, $input: UpdateVibecontrolsNoteInput!) {
550
+ updateNote(id: $id, input: $input) { ${NOTE_FIELDS} }
551
+ }
552
+ `;
553
+ var DELETE_NOTE = `
554
+ mutation DeleteNote($id: ID!) { deleteNote(id: $id) }
555
+ `;
556
+ var SEARCH_NOTES = `
557
+ query SearchNotes($query: String!, $vibeId: ID, $limit: Int) {
558
+ searchNotes(query: $query, vibeId: $vibeId, limit: $limit) { ${NOTE_FIELDS} }
559
+ }
560
+ `;
561
+ var PIN_NOTE = `
562
+ mutation PinNote($id: ID!) {
563
+ pinNote(id: $id) { ${NOTE_FIELDS} }
564
+ }
565
+ `;
566
+ var UNPIN_NOTE = `
567
+ mutation UnpinNote($id: ID!) {
568
+ unpinNote(id: $id) { ${NOTE_FIELDS} }
569
+ }
570
+ `;
571
+ var PINNED_NOTES = `
572
+ query PinnedNotes($vibeId: ID) {
573
+ pinnedNotes(vibeId: $vibeId) { ${NOTE_FIELDS} }
574
+ }
575
+ `;
576
+ var LIST_CONFIGURATIONS = `
577
+ query Configurations($filter: ConfigurationFilterInput!, $pagination: PaginationInput) {
578
+ configurations(filter: $filter, pagination: $pagination) {
579
+ items { ${CONFIG_FIELDS} }
580
+ total hasMore
581
+ }
582
+ }
583
+ `;
584
+ var GET_CONFIGURATION = `
585
+ query Configuration($key: String!, $scope: ConfigScope!, $scopeId: String) {
586
+ configuration(key: $key, scope: $scope, scopeId: $scopeId) { ${CONFIG_FIELDS} }
587
+ }
588
+ `;
589
+ var CONFIGURATIONS_BY_SCOPE = `
590
+ query ConfigurationsByScope($scope: ConfigScope!, $scopeId: String) {
591
+ configurationsByScope(scope: $scope, scopeId: $scopeId) { ${CONFIG_FIELDS} }
592
+ }
593
+ `;
594
+ var SET_CONFIGURATION = `
595
+ mutation SetConfiguration($key: String!, $scope: ConfigScope!, $scopeId: ID, $value: JSON!, $isSecret: Boolean) {
596
+ setConfiguration(key: $key, scope: $scope, scopeId: $scopeId, value: $value, isSecret: $isSecret) { ${CONFIG_FIELDS} }
597
+ }
598
+ `;
599
+ var DELETE_CONFIGURATION = `
600
+ mutation DeleteConfiguration($key: String!, $scope: ConfigScope!, $scopeId: String) {
601
+ deleteConfiguration(key: $key, scope: $scope, scopeId: $scopeId)
602
+ }
603
+ `;
604
+ var LIST_WEBHOOKS = `
605
+ query Webhooks($filter: WebhookFilterInput, $pagination: PaginationInput) {
606
+ webhooks(filter: $filter, pagination: $pagination) {
607
+ items { ${WEBHOOK_FIELDS} }
608
+ total hasMore
609
+ }
610
+ }
611
+ `;
612
+ var GET_WEBHOOK = `
613
+ query Webhook($id: ID!) {
614
+ webhook(id: $id) { ${WEBHOOK_FIELDS} }
615
+ }
616
+ `;
617
+ var CREATE_WEBHOOK = `
618
+ mutation CreateWebhook($input: CreateWebhookInput!) {
619
+ createWebhook(input: $input) { ${WEBHOOK_FIELDS} }
620
+ }
621
+ `;
622
+ var UPDATE_WEBHOOK = `
623
+ mutation UpdateWebhook($id: ID!, $input: UpdateWebhookInput!) {
624
+ updateWebhook(id: $id, input: $input) { ${WEBHOOK_FIELDS} }
625
+ }
626
+ `;
627
+ var DELETE_WEBHOOK = `
628
+ mutation DeleteWebhook($id: ID!) { deleteWebhook(id: $id) }
629
+ `;
630
+ var TEST_WEBHOOK = `
631
+ mutation TestWebhook($id: ID!) { testWebhook(id: $id) }
632
+ `;
633
+ var TRIGGER_WEBHOOK = `
634
+ mutation TriggerWebhook($id: ID!, $payload: JSON) {
635
+ triggerWebhook(id: $id, payload: $payload)
636
+ }
637
+ `;
638
+ var LIST_TUNNELS = `
639
+ query Tunnels($filter: TunnelFilterInput, $pagination: PaginationInput) {
640
+ tunnels(filter: $filter, pagination: $pagination) {
641
+ items { ${TUNNEL_FIELDS} }
642
+ total
643
+ hasMore
644
+ }
645
+ }
646
+ `;
647
+ var GET_TUNNEL = `
648
+ query Tunnel($id: ID!) { tunnel(id: $id) { ${TUNNEL_FIELDS} } }
649
+ `;
650
+ var GET_TUNNEL_BY_SLUG = `
651
+ query TunnelBySlug($slug: String!) {
652
+ tunnelBySlug(slug: $slug) { ${TUNNEL_FIELDS} }
653
+ }
654
+ `;
655
+ var CREATE_TUNNEL = `
656
+ mutation CreateTunnel($input: CreateTunnelInput!) {
657
+ createTunnel(input: $input) { ${TUNNEL_FIELDS} }
658
+ }
659
+ `;
660
+ var UPDATE_TUNNEL = `
661
+ mutation UpdateTunnel($id: ID!, $input: UpdateTunnelInput!) {
662
+ updateTunnel(id: $id, input: $input) { ${TUNNEL_FIELDS} }
663
+ }
664
+ `;
665
+ var START_TUNNEL = `
666
+ mutation StartTunnel($id: ID!) { startTunnel(id: $id) { ${TUNNEL_FIELDS} } }
667
+ `;
668
+ var STOP_TUNNEL = `
669
+ mutation StopTunnel($id: ID!) { stopTunnel(id: $id) { ${TUNNEL_FIELDS} } }
670
+ `;
671
+ var DELETE_TUNNEL = `
672
+ mutation DeleteTunnel($id: ID!) { deleteTunnel(id: $id) }
673
+ `;
674
+ var ROTATE_TUNNEL_CREDENTIALS = `
675
+ mutation RotateTunnelCredentials($id: ID!) {
676
+ rotateTunnelCredentials(id: $id) { ${TUNNEL_FIELDS} }
677
+ }
678
+ `;
679
+ var ISSUE_TUNNEL_SESSION = `
680
+ mutation IssueTunnelSession($tunnelId: ID!, $ttlSeconds: Int) {
681
+ issueTunnelSession(tunnelId: $tunnelId, ttlSeconds: $ttlSeconds) {
682
+ session { ${TUNNEL_SESSION_FIELDS_MCP} }
683
+ token
684
+ agentConfigHint
685
+ }
686
+ }
687
+ `;
688
+ var REVOKE_TUNNEL_SESSION = `
689
+ mutation RevokeTunnelSession($sessionId: ID!, $reason: String) {
690
+ revokeTunnelSession(sessionId: $sessionId, reason: $reason)
691
+ }
692
+ `;
693
+ var LIST_TUNNEL_SESSIONS = `
694
+ query TunnelSessions($tunnelId: ID!, $pagination: PaginationInput) {
695
+ tunnelSessions(tunnelId: $tunnelId, pagination: $pagination) {
696
+ items { ${TUNNEL_SESSION_FIELDS_MCP} }
697
+ total
698
+ hasMore
699
+ }
700
+ }
701
+ `;
702
+ var LIST_TUNNEL_PROVIDERS = `
703
+ query TunnelProviders { tunnelProviders { ${TUNNEL_PROVIDER_FIELDS_MCP} } }
704
+ `;
705
+ var GET_TUNNEL_PROVIDER = `
706
+ query TunnelProvider($key: TunnelProviderKey!) {
707
+ tunnelProvider(key: $key) { ${TUNNEL_PROVIDER_FIELDS_MCP} }
708
+ }
709
+ `;
710
+ var LIST_TUNNEL_SHARDS = `
711
+ query TunnelShards($environment: TunnelEnvironment) {
712
+ tunnelShards(environment: $environment) { ${TUNNEL_SHARD_FIELDS_MCP} }
713
+ }
714
+ `;
715
+ var TUNNEL_USAGE = `
716
+ query TunnelUsage($tunnelId: ID!, $from: DateTime!, $to: DateTime!) {
717
+ tunnelUsage(tunnelId: $tunnelId, from: $from, to: $to) {
718
+ tunnelId hourBucket bytesIn bytesOut connections requests
719
+ }
720
+ }
721
+ `;
722
+ var TUNNEL_AUDIT = `
723
+ query TunnelAudit($tunnelId: ID!, $pagination: PaginationInput) {
724
+ tunnelAudit(tunnelId: $tunnelId, pagination: $pagination) {
725
+ items {
726
+ id action resourceType resourceId actorId actorType
727
+ status description ipAddress userAgent requestId
728
+ workspaceId createdAt
729
+ }
730
+ total
731
+ hasMore
732
+ }
733
+ }
734
+ `;
735
+ var LIST_TUNNEL_DOMAINS = `
736
+ query TunnelDomains($tunnelId: ID, $filter: TunnelDomainFilterInput, $pagination: PaginationInput) {
737
+ tunnelDomains(tunnelId: $tunnelId, filter: $filter, pagination: $pagination) {
738
+ items { ${TUNNEL_DOMAIN_FIELDS_MCP} }
739
+ total
740
+ hasMore
741
+ }
742
+ }
743
+ `;
744
+ var GET_TUNNEL_DOMAIN = `
745
+ query TunnelDomain($id: ID!) {
746
+ tunnelDomain(id: $id) { ${TUNNEL_DOMAIN_FIELDS_MCP} }
747
+ }
748
+ `;
749
+ var RESERVE_TUNNEL_SUBDOMAIN = `
750
+ mutation ReserveTunnelSubdomain($input: ReserveTunnelSubdomainInput!) {
751
+ reserveTunnelSubdomain(input: $input) { ${TUNNEL_DOMAIN_FIELDS_MCP} }
752
+ }
753
+ `;
754
+ var REGISTER_CUSTOM_TUNNEL_DOMAIN = `
755
+ mutation RegisterCustomTunnelDomain($input: RegisterCustomDomainInput!) {
756
+ registerCustomTunnelDomain(input: $input) { ${TUNNEL_DOMAIN_FIELDS_MCP} }
757
+ }
758
+ `;
759
+ var VERIFY_TUNNEL_DOMAIN = `
760
+ mutation VerifyTunnelDomain($domainId: ID!) {
761
+ verifyTunnelDomain(domainId: $domainId) { ${TUNNEL_DOMAIN_FIELDS_MCP} }
762
+ }
763
+ `;
764
+ var ATTACH_TUNNEL_DOMAIN = `
765
+ mutation AttachTunnelDomain($tunnelId: ID!, $domainId: ID!, $makePrimary: Boolean) {
766
+ attachTunnelDomain(tunnelId: $tunnelId, domainId: $domainId, makePrimary: $makePrimary) {
767
+ ${TUNNEL_FIELDS}
768
+ }
769
+ }
770
+ `;
771
+ var DETACH_TUNNEL_DOMAIN = `
772
+ mutation DetachTunnelDomain($tunnelId: ID!, $domainId: ID!) {
773
+ detachTunnelDomain(tunnelId: $tunnelId, domainId: $domainId) { ${TUNNEL_FIELDS} }
774
+ }
775
+ `;
776
+ var DELETE_TUNNEL_DOMAIN = `
777
+ mutation DeleteTunnelDomain($domainId: ID!) {
778
+ deleteTunnelDomain(domainId: $domainId)
779
+ }
780
+ `;
781
+ var PROBE_AGENT_TUNNEL = `
782
+ query ProbeAgentTunnel($url: String!, $agentApiKey: String) {
783
+ probeAgentTunnel(url: $url, agentApiKey: $agentApiKey) {
784
+ agentId reachable latencyMs error version tunnelUrl
785
+ }
786
+ }
787
+ `;
788
+ var ADD_AGENT_FROM_TUNNEL = `
789
+ mutation AddVibecontrolsAgentFromTunnel($input: AddAgentFromTunnelInput!) {
790
+ addVibecontrolsAgentFromTunnel(input: $input) {
791
+ success clientId clientSecret devportalApplicationId error
792
+ agent { id name workspaceId isActive }
793
+ }
794
+ }
795
+ `;
796
+ var GET_UI_SESSION = `
797
+ query { uiSession { ${UI_SESSION_FIELDS} } }
798
+ `;
799
+ var SAVE_UI_SESSION = `
800
+ mutation SaveUISession($input: SaveUISessionInput!) {
801
+ saveUISession(input: $input) { ${UI_SESSION_FIELDS} }
802
+ }
803
+ `;
804
+ var CLEAR_UI_SESSION = `
805
+ mutation { clearUISession }
806
+ `;
807
+ var LIST_AI_TOOL_EVENTS = `
808
+ query AiToolEvents($filter: AiToolEventFilterInput, $pagination: PaginationInput) {
809
+ aiToolEvents(filter: $filter, pagination: $pagination) {
810
+ items { ${AI_TOOL_EVENT_FIELDS} }
811
+ total hasMore
812
+ }
813
+ }
814
+ `;
815
+ var RECENT_AI_TOOL_EVENTS = `
816
+ query RecentAiToolEvents($agentId: ID!, $limit: Int) {
817
+ recentAiToolEvents(agentId: $agentId, limit: $limit) { ${AI_TOOL_EVENT_FIELDS} }
818
+ }
819
+ `;
820
+ var CREATE_AI_TOOL_EVENT = `
821
+ mutation CreateAiToolEvent($input: CreateAiToolEventInput!) {
822
+ createAiToolEvent(input: $input) { ${AI_TOOL_EVENT_FIELDS} }
823
+ }
824
+ `;
825
+ var LIST_TARGETS = `
826
+ query Targets($workspaceId: ID!, $filter: TargetFilterInput, $limit: Int, $offset: Int) {
827
+ targets(workspaceId: $workspaceId, filter: $filter, limit: $limit, offset: $offset) {
828
+ items { ${TARGET_FIELDS} }
829
+ total hasMore
830
+ }
831
+ }
832
+ `;
833
+ var GET_TARGET = `
834
+ query Target($id: ID!) {
835
+ target(id: $id) { ${TARGET_FIELDS} }
836
+ }
837
+ `;
838
+ var CREATE_TARGET = `
839
+ mutation CreateTarget($workspaceId: ID!, $input: CreateTargetInput!) {
840
+ createTarget(workspaceId: $workspaceId, input: $input) { ${TARGET_FIELDS} }
841
+ }
842
+ `;
843
+ var UPDATE_TARGET = `
844
+ mutation UpdateTarget($id: ID!, $input: UpdateTargetInput!) {
845
+ updateTarget(id: $id, input: $input) { ${TARGET_FIELDS} }
846
+ }
847
+ `;
848
+ var DELETE_TARGET = `
849
+ mutation DeleteTarget($id: ID!) { deleteTarget(id: $id) }
850
+ `;
851
+ var TEST_TARGET = `
852
+ query TestTarget($id: ID!) {
853
+ testTarget(id: $id) { success error latencyMs }
854
+ }
855
+ `;
856
+ var IMPORT_TARGETS_FROM_CONFIG = `
857
+ mutation ImportTargetsFromConfig($agentId: ID!, $hosts: [ConfigHostInput!]!, $workspaceId: ID!) {
858
+ importTargetsFromConfig(agentId: $agentId, hosts: $hosts, workspaceId: $workspaceId) { ${TARGET_FIELDS} }
859
+ }
860
+ `;
861
+ var SCAN_SSH_CONFIG = `
862
+ mutation ScanSSHConfig($agentId: ID!, $configPath: String) {
863
+ scanSSHConfig(agentId: $agentId, configPath: $configPath) { ${TARGET_FIELDS} }
864
+ }
865
+ `;
866
+ var INSTALL_AGENT_ON_TARGET = `
867
+ mutation InstallAgentOnTarget($sourceAgentId: ID!, $targetId: ID!, $agentPort: Int) {
868
+ installAgentOnTarget(sourceAgentId: $sourceAgentId, targetId: $targetId, agentPort: $agentPort) { success error }
869
+ }
870
+ `;
871
+ var LIST_VIBEDECKS = `
872
+ query VibeDecks($filter: VibeDeckFilterInput, $pagination: PaginationInput) {
873
+ vibeDecks(filter: $filter, pagination: $pagination) {
874
+ items { ${VIBEDECK_FIELDS} }
875
+ total hasMore
876
+ }
877
+ }
878
+ `;
879
+ var GET_VIBEDECK = `
880
+ query VibeDeck($id: ID!) {
881
+ vibeDeck(id: $id) { ${VIBEDECK_FIELDS} }
882
+ }
883
+ `;
884
+ var CREATE_VIBEDECK = `
885
+ mutation CreateVibeDeck($input: CreateVibeDeckInput!) {
886
+ createVibeDeck(input: $input) { ${VIBEDECK_FIELDS} }
887
+ }
888
+ `;
889
+ var UPDATE_VIBEDECK = `
890
+ mutation UpdateVibeDeck($id: ID!, $input: UpdateVibeDeckInput!) {
891
+ updateVibeDeck(id: $id, input: $input) { ${VIBEDECK_FIELDS} }
892
+ }
893
+ `;
894
+ var DELETE_VIBEDECK = `
895
+ mutation DeleteVibeDeck($id: ID!) { deleteVibeDeck(id: $id) }
896
+ `;
897
+ var DUPLICATE_VIBEDECK = `
898
+ mutation DuplicateVibeDeck($id: ID!, $name: String) {
899
+ duplicateVibeDeck(id: $id, name: $name) { ${VIBEDECK_FIELDS} }
900
+ }
901
+ `;
902
+ var SET_DEFAULT_VIBEDECK = `
903
+ mutation SetDefaultVibeDeck($id: ID!) {
904
+ setDefaultVibeDeck(id: $id) { ${VIBEDECK_FIELDS} }
905
+ }
906
+ `;
907
+ var LIST_VIBEDECK_BUTTONS = `
908
+ query VibeDeckButtons($filter: VibeDeckButtonFilterInput, $pagination: PaginationInput) {
909
+ vibeDeckButtons(filter: $filter, pagination: $pagination) {
910
+ items { ${VIBEDECK_BUTTON_FIELDS} }
911
+ total hasMore
912
+ }
913
+ }
914
+ `;
915
+ var CREATE_VIBEDECK_BUTTON = `
916
+ mutation CreateVibeDeckButton($input: CreateVibeDeckButtonInput!) {
917
+ createVibeDeckButton(input: $input) { ${VIBEDECK_BUTTON_FIELDS} }
918
+ }
919
+ `;
920
+ var UPDATE_VIBEDECK_BUTTON = `
921
+ mutation UpdateVibeDeckButton($id: ID!, $input: UpdateVibeDeckButtonInput!) {
922
+ updateVibeDeckButton(id: $id, input: $input) { ${VIBEDECK_BUTTON_FIELDS} }
923
+ }
924
+ `;
925
+ var DELETE_VIBEDECK_BUTTON = `
926
+ mutation DeleteVibeDeckButton($id: ID!) { deleteVibeDeckButton(id: $id) }
927
+ `;
928
+ var EXECUTE_VIBEDECK_BUTTON = `
929
+ mutation ExecuteVibeDeckButton($id: ID!, $agentId: ID!) {
930
+ executeVibeDeckButton(id: $id, agentId: $agentId) { success output error }
931
+ }
932
+ `;
933
+ var ACTION_FIELDS = `
934
+ id name description actionType sourceType triggerType
935
+ command script webhookUrl workflowDefinition
936
+ tags storeItemId storeVersion metadata
937
+ workspaceId createdAt updatedAt deletedAt
938
+ `;
939
+ var ACTION_EXECUTION_FIELDS = `
940
+ id actionId status input output error
941
+ startedAt completedAt durationMs triggeredBy metadata
942
+ workspaceId createdAt updatedAt
943
+ `;
944
+ var LIST_ACTIONS = `
945
+ query Actions($filter: ActionFilterInput, $pagination: PaginationInput) {
946
+ actions(filter: $filter, pagination: $pagination) {
947
+ items { ${ACTION_FIELDS} }
948
+ total hasMore
949
+ }
950
+ }
951
+ `;
952
+ var GET_ACTION = `
953
+ query Action($id: ID!) {
954
+ action(id: $id) { ${ACTION_FIELDS} }
955
+ }
956
+ `;
957
+ var CREATE_ACTION = `
958
+ mutation CreateAction($input: CreateActionInput!) {
959
+ createAction(input: $input) { ${ACTION_FIELDS} }
960
+ }
961
+ `;
962
+ var UPDATE_ACTION = `
963
+ mutation UpdateAction($id: ID!, $input: UpdateActionInput!) {
964
+ updateAction(id: $id, input: $input) { ${ACTION_FIELDS} }
965
+ }
966
+ `;
967
+ var DELETE_ACTION = `
968
+ mutation DeleteAction($id: ID!) { deleteAction(id: $id) }
969
+ `;
970
+ var DUPLICATE_ACTION = `
971
+ mutation DuplicateAction($id: ID!, $name: String) {
972
+ duplicateAction(id: $id, name: $name) { ${ACTION_FIELDS} }
973
+ }
974
+ `;
975
+ var EXECUTE_ACTION = `
976
+ mutation ExecuteAction($id: ID!, $input: ExecuteActionInput) {
977
+ executeAction(id: $id, input: $input) { ${ACTION_EXECUTION_FIELDS} }
978
+ }
979
+ `;
980
+ var INSTALL_ACTION_FROM_STORE = `
981
+ mutation InstallActionFromStore($storeItemId: String!, $version: String, $name: String) {
982
+ installActionFromStore(storeItemId: $storeItemId, version: $version, name: $name) { ${ACTION_FIELDS} }
983
+ }
984
+ `;
985
+ var CANCEL_ACTION_EXECUTION = `
986
+ mutation CancelActionExecution($id: ID!) {
987
+ cancelActionExecution(id: $id) { ${ACTION_EXECUTION_FIELDS} }
988
+ }
989
+ `;
990
+ var LIST_ACTION_EXECUTIONS = `
991
+ query ActionExecutions($filter: ActionExecutionFilterInput, $pagination: PaginationInput) {
992
+ actionExecutions(filter: $filter, pagination: $pagination) {
993
+ items { ${ACTION_EXECUTION_FIELDS} }
994
+ total hasMore
995
+ }
996
+ }
997
+ `;
998
+ var SCHEDULED_JOB_FIELDS = `
999
+ id name scheduleType status actionId
1000
+ cronExpression timezone scheduledAt
1001
+ interval intervalUnit startDate endDate
1002
+ nextExecutionAt lastExecutionAt
1003
+ priority tags
1004
+ `;
1005
+ var CREATE_SCHEDULED_JOB = `
1006
+ mutation CreateScheduledJob($workspaceId: ID!, $input: CreateScheduledJobInput!) {
1007
+ createScheduledJob(workspaceId: $workspaceId, input: $input) { ${SCHEDULED_JOB_FIELDS} }
1008
+ }
1009
+ `;
1010
+ var DELETE_SCHEDULED_JOB = `
1011
+ mutation DeleteScheduledJob($id: ID!) { deleteScheduledJob(id: $id) }
1012
+ `;
1013
+ var LIST_SCHEDULED_JOBS = `
1014
+ query ScheduledJobs($workspaceId: ID!, $filter: JobFilterInput, $pagination: SchedulerPaginationInput) {
1015
+ scheduledJobs(workspaceId: $workspaceId, filter: $filter, pagination: $pagination) {
1016
+ jobs { ${SCHEDULED_JOB_FIELDS} }
1017
+ total hasMore
1018
+ }
1019
+ }
1020
+ `;
1021
+ var LIST_DOCS_SITES = `
1022
+ query DocsSites($filter: VibecontrolsDocsSiteFilterInput, $pagination: PaginationInput) {
1023
+ docsSites(filter: $filter, pagination: $pagination) {
1024
+ items { ${DOCS_SITE_FIELDS} }
1025
+ total hasMore
1026
+ }
1027
+ }
1028
+ `;
1029
+ var GET_DOCS_SITE = `
1030
+ query DocsSite($vibeId: ID!) {
1031
+ docsSite(vibeId: $vibeId) { ${DOCS_SITE_FIELDS} }
1032
+ }
1033
+ `;
1034
+ var CREATE_DOCS_SITE = `
1035
+ mutation CreateDocsSite($input: CreateVibecontrolsDocsSiteInput!) {
1036
+ createDocsSite(input: $input) { ${DOCS_SITE_FIELDS} }
1037
+ }
1038
+ `;
1039
+ var UPDATE_DOCS_SITE = `
1040
+ mutation UpdateDocsSite($id: ID!, $input: UpdateVibecontrolsDocsSiteInput!) {
1041
+ updateDocsSite(id: $id, input: $input) { ${DOCS_SITE_FIELDS} }
1042
+ }
1043
+ `;
1044
+ var DELETE_DOCS_SITE = `
1045
+ mutation DeleteDocsSite($id: ID!) { deleteDocsSite(id: $id) }
1046
+ `;
1047
+ var LIST_DOCS_PAGES = `
1048
+ query DocsPages($siteId: ID!, $filter: VibecontrolsDocsPageFilterInput) {
1049
+ docsPages(siteId: $siteId, filter: $filter) { ${DOCS_PAGE_FIELDS} }
1050
+ }
1051
+ `;
1052
+ var GET_DOCS_PAGE = `
1053
+ query DocsPage($id: ID!) {
1054
+ docsPage(id: $id) { ${DOCS_PAGE_FIELDS} }
1055
+ }
1056
+ `;
1057
+ var CREATE_DOCS_PAGE = `
1058
+ mutation CreateDocsPage($input: CreateVibecontrolsDocsPageInput!) {
1059
+ createDocsPage(input: $input) { ${DOCS_PAGE_FIELDS} }
1060
+ }
1061
+ `;
1062
+ var UPDATE_DOCS_PAGE = `
1063
+ mutation UpdateDocsPage($id: ID!, $input: UpdateVibecontrolsDocsPageInput!) {
1064
+ updateDocsPage(id: $id, input: $input) { ${DOCS_PAGE_FIELDS} }
1065
+ }
1066
+ `;
1067
+ var DELETE_DOCS_PAGE = `
1068
+ mutation DeleteDocsPage($id: ID!) { deleteDocsPage(id: $id) }
1069
+ `;
1070
+ var COMPILE_DOCS_SITE = `
1071
+ mutation CompileDocsSite($siteId: ID!, $publish: Boolean) {
1072
+ compileDocsSite(siteId: $siteId, publish: $publish) { ${DOCS_REVISION_FIELDS} }
1073
+ }
1074
+ `;
1075
+ var PUBLISH_DOCS_REVISION = `
1076
+ mutation PublishDocsRevision($revisionId: ID!) {
1077
+ publishDocsRevision(revisionId: $revisionId) { ${DOCS_REVISION_FIELDS} }
1078
+ }
1079
+ `;
1080
+ var ROLLBACK_DOCS_REVISION = `
1081
+ mutation RollbackDocsRevision($siteId: ID!, $revisionId: ID!) {
1082
+ rollbackDocsRevision(siteId: $siteId, revisionId: $revisionId) { ${DOCS_REVISION_FIELDS} }
1083
+ }
1084
+ `;
1085
+ var LIST_AUDIT_LOGS = `
1086
+ query VibeAuditLogs($filter: VibeAuditLogFilterInput, $pagination: PaginationInput) {
1087
+ vibeAuditLogs(filter: $filter, pagination: $pagination) {
1088
+ items { ${AUDIT_LOG_FIELDS} }
1089
+ total hasMore
1090
+ }
1091
+ }
1092
+ `;
1093
+ var GET_AUDIT_LOG = `
1094
+ query VibeAuditLog($id: ID!) {
1095
+ vibeAuditLog(id: $id) { ${AUDIT_LOG_FIELDS} }
1096
+ }
1097
+ `;
1098
+ var AUDIT_LOG_STATS = `
1099
+ query VibeAuditLogStats($filter: VibeAuditLogFilterInput) {
1100
+ vibeAuditLogStats(filter: $filter) {
1101
+ totalLogs
1102
+ logsByAction { action count }
1103
+ logsByResourceType { resourceType count }
1104
+ logsByStatus { status count }
1105
+ }
1106
+ }
1107
+ `;
1108
+ var EXPORT_AUDIT_LOGS = `
1109
+ mutation ExportVibeAuditLogs($filter: VibeAuditLogFilterInput, $format: String) {
1110
+ exportVibeAuditLogs(filter: $filter, format: $format)
1111
+ }
1112
+ `;
1113
+ var DELETE_AUDIT_LOG = `
1114
+ mutation DeleteVibeAuditLog($id: ID!, $reason: String) {
1115
+ deleteVibeAuditLog(id: $id, reason: $reason)
1116
+ }
1117
+ `;
1118
+ var SANDBOX_FIELDS = `
1119
+ id name description template mode status
1120
+ crdName podName namespace runtimeClass
1121
+ containers { name image ports { containerPort name protocol } env { name value } command args resources { requestsCpu requestsMemory limitsCpu limitsMemory } }
1122
+ containerStatuses { name ready port restartCount }
1123
+ resources { cpuRequest cpuLimit memoryRequest memoryLimit }
1124
+ storage { mode sizeGi mountPath retainOnDelete }
1125
+ network { exposeService internalUrl containerUrls serviceName }
1126
+ ttlSeconds expiresAt metadata errorMessage
1127
+ workspaceId createdBy createdAt updatedAt stoppedAt
1128
+ `;
1129
+ var LIST_SANDBOXES = `
1130
+ query ListSandboxes($filter: SandboxFilterInput, $pagination: SandboxPaginationInput, $context: ContextInput!) {
1131
+ listSandboxes(filter: $filter, pagination: $pagination, context: $context) {
1132
+ items { ${SANDBOX_FIELDS} }
1133
+ total hasMore
1134
+ }
1135
+ }
1136
+ `;
1137
+ var GET_SANDBOX = `
1138
+ query GetSandbox($id: ID!, $context: ContextInput!) {
1139
+ getSandbox(id: $id, context: $context) { ${SANDBOX_FIELDS} }
1140
+ }
1141
+ `;
1142
+ var CREATE_SANDBOX = `
1143
+ mutation CreateSandbox($input: CreateSandboxInput!) {
1144
+ createSandbox(input: $input) { ${SANDBOX_FIELDS} }
1145
+ }
1146
+ `;
1147
+ var DELETE_SANDBOX = `
1148
+ mutation DeleteSandbox($id: ID!, $context: ContextInput!) {
1149
+ deleteSandbox(id: $id, context: $context)
1150
+ }
1151
+ `;
1152
+ var STOP_SANDBOX = `
1153
+ mutation StopSandbox($id: ID!, $context: ContextInput!) {
1154
+ stopSandbox(id: $id, context: $context) { ${SANDBOX_FIELDS} }
1155
+ }
1156
+ `;
1157
+ var START_SANDBOX = `
1158
+ mutation StartSandbox($id: ID!, $context: ContextInput!) {
1159
+ startSandbox(id: $id, context: $context) { ${SANDBOX_FIELDS} }
1160
+ }
1161
+ `;
1162
+ var EXTEND_SANDBOX_TTL = `
1163
+ mutation ExtendSandboxTTL($id: ID!, $additionalSeconds: Int!, $context: ContextInput!) {
1164
+ extendSandboxTTL(id: $id, additionalSeconds: $additionalSeconds, context: $context) { ${SANDBOX_FIELDS} }
1165
+ }
1166
+ `;
1167
+ var SANDBOX_TEMPLATE_FIELDS = `
1168
+ id name description template isDefault ttlSeconds
1169
+ containers { name image }
1170
+ resources { cpuRequest cpuLimit memoryRequest memoryLimit }
1171
+ storage { mode sizeGi mountPath retainOnDelete }
1172
+ config metadata allowedImages
1173
+ workspaceId createdBy createdAt updatedAt
1174
+ `;
1175
+ var LIST_SANDBOX_TEMPLATES = `
1176
+ query ListSandboxTemplates($context: ContextInput!, $template: SandboxTemplate, $pagination: SandboxPaginationInput) {
1177
+ listSandboxTemplates(context: $context, template: $template, pagination: $pagination) {
1178
+ items { ${SANDBOX_TEMPLATE_FIELDS} } total hasMore
1179
+ }
1180
+ }
1181
+ `;
1182
+ var GET_SANDBOX_TEMPLATE = `
1183
+ query GetSandboxTemplate($context: ContextInput!, $id: ID!) {
1184
+ getSandboxTemplate(context: $context, id: $id) { ${SANDBOX_TEMPLATE_FIELDS} }
1185
+ }
1186
+ `;
1187
+ var CREATE_SANDBOX_TEMPLATE = `
1188
+ mutation CreateSandboxTemplate($input: CreateSandboxTemplateInput!) {
1189
+ createSandboxTemplate(input: $input) { ${SANDBOX_TEMPLATE_FIELDS} }
1190
+ }
1191
+ `;
1192
+ var UPDATE_SANDBOX_TEMPLATE = `
1193
+ mutation UpdateSandboxTemplate($input: UpdateSandboxTemplateInput!) {
1194
+ updateSandboxTemplate(input: $input) { ${SANDBOX_TEMPLATE_FIELDS} }
1195
+ }
1196
+ `;
1197
+ var DELETE_SANDBOX_TEMPLATE = `
1198
+ mutation DeleteSandboxTemplate($context: ContextInput!, $id: ID!) {
1199
+ deleteSandboxTemplate(context: $context, id: $id)
1200
+ }
1201
+ `;
1202
+ var AVAILABLE_SANDBOX_TAGS = `
1203
+ query AvailableSandboxTags($query: String, $limit: Int) {
1204
+ availableSandboxTags(query: $query, limit: $limit) { id key label color }
1205
+ }
1206
+ `;
1207
+ var GET_SANDBOX_TAGS = `
1208
+ query GetSandboxTags($input: GetSandboxTagsInput!) {
1209
+ getSandboxTags(input: $input) {
1210
+ id entityId entityType tagId source assignedAt assignedBy
1211
+ }
1212
+ }
1213
+ `;
1214
+ var CREATE_SANDBOX_TAG = `
1215
+ mutation CreateSandboxTag($input: CreateSandboxTagInput!) {
1216
+ createSandboxTag(input: $input) { id key label color }
1217
+ }
1218
+ `;
1219
+ var TAG_SANDBOX = `
1220
+ mutation TagSandbox($input: TagSandboxInput!) {
1221
+ tagSandbox(input: $input) {
1222
+ id entityId tagId source assignedAt
1223
+ }
1224
+ }
1225
+ `;
1226
+ var UNTAG_SANDBOX = `
1227
+ mutation UntagSandbox($input: UntagSandboxInput!) {
1228
+ untagSandbox(input: $input)
1229
+ }
1230
+ `;
1231
+ var REPLACE_SANDBOX_TAGS = `
1232
+ mutation ReplaceSandboxTags($input: ReplaceSandboxTagsInput!) {
1233
+ replaceSandboxTags(input: $input) {
1234
+ id entityId tagId source assignedAt
1235
+ }
1236
+ }
1237
+ `;
1238
+ var LIST_ALL_SANDBOXES = `
1239
+ query ListAllSandboxes($context: ContextInput!, $filter: SandboxFilterInput, $pagination: SandboxPaginationInput) {
1240
+ listAllSandboxes(context: $context, filter: $filter, pagination: $pagination) {
1241
+ items { ${SANDBOX_FIELDS} } total hasMore
1242
+ }
1243
+ }
1244
+ `;
1245
+ var LIST_SANDBOX_NODES = `
1246
+ query ListSandboxNodes($context: ContextInput!) {
1247
+ listSandboxNodes(context: $context) {
1248
+ name status allocatableCpu allocatableMemory sandboxPodCount labels
1249
+ }
1250
+ }
1251
+ `;
1252
+ var GET_ACTIVE_SANDBOXES = `
1253
+ query GetActiveSandboxes($context: ContextInput!) {
1254
+ getActiveSandboxes(context: $context) { ${SANDBOX_FIELDS} }
1255
+ }
1256
+ `;
1257
+ var GET_RECENT_SANDBOX_ACTIVITY = `
1258
+ query GetRecentSandboxActivity($context: ContextInput!, $limit: Int) {
1259
+ getRecentSandboxActivity(context: $context, limit: $limit) {
1260
+ items { id action actorId status sandboxName sandboxId createdAt }
1261
+ total
1262
+ }
1263
+ }
1264
+ `;
1265
+ var GET_SANDBOX_STATS = `
1266
+ query GetSandboxStats($context: ContextInput!) {
1267
+ getSandboxStats(context: $context) {
1268
+ activeSandboxes activeUserSandboxes activeInternalSandboxes
1269
+ totalCreated totalDeleted totalUserCreated totalInternalCreated
1270
+ runningNow provisioningNow stoppedNow expiredCount failedCount
1271
+ totalCpuUsed totalMemoryUsed
1272
+ }
1273
+ }
1274
+ `;
1275
+ var GET_SANDBOX_LOGS = `
1276
+ query GetSandboxLogs($context: ContextInput!, $id: ID!, $containerName: String!, $tailLines: Int) {
1277
+ getSandboxLogs(context: $context, id: $id, containerName: $containerName, tailLines: $tailLines)
1278
+ }
1279
+ `;
1280
+ var GET_SANDBOX_CONFIG = `
1281
+ query GetSandboxConfig($context: ContextInput!) {
1282
+ getSandboxConfig(context: $context) {
1283
+ id defaultTtlSeconds maxTtlSeconds allowedTemplates
1284
+ maxConcurrentPerUser maxConcurrentPerWorkspace
1285
+ defaultCpuRequest defaultCpuLimit defaultMemoryRequest defaultMemoryLimit
1286
+ workspaceId updatedAt
1287
+ }
1288
+ }
1289
+ `;
1290
+ var UPDATE_SANDBOX_CONFIG = `
1291
+ mutation UpdateSandboxConfig($input: UpdateSandboxConfigInput!) {
1292
+ updateSandboxConfig(input: $input) {
1293
+ id defaultTtlSeconds maxTtlSeconds allowedTemplates
1294
+ maxConcurrentPerUser maxConcurrentPerWorkspace
1295
+ defaultCpuRequest defaultCpuLimit defaultMemoryRequest defaultMemoryLimit
1296
+ workspaceId updatedAt
1297
+ }
1298
+ }
1299
+ `;
1300
+ var SANDBOX_EXPORT_JOB_FIELDS = `
1301
+ id workspaceId format status requestedBy rowCount
1302
+ downloadUrl errorMessage expiresAt createdAt updatedAt
1303
+ `;
1304
+ var EXPORT_SANDBOXES = `
1305
+ mutation ExportSandboxes($input: ExportSandboxesInput!) {
1306
+ exportSandboxes(input: $input) { ${SANDBOX_EXPORT_JOB_FIELDS} }
1307
+ }
1308
+ `;
1309
+ var GET_SANDBOX_EXPORT_JOB = `
1310
+ query GetSandboxExportJob($workspaceId: ID!, $jobId: ID!, $context: ContextInput!) {
1311
+ getSandboxExportJob(workspaceId: $workspaceId, jobId: $jobId, context: $context) {
1312
+ ${SANDBOX_EXPORT_JOB_FIELDS}
1313
+ }
1314
+ }
1315
+ `;
1316
+ var LIST_SANDBOX_EXPORT_JOBS = `
1317
+ query ListSandboxExportJobs($workspaceId: ID!, $context: ContextInput!, $pagination: SandboxPaginationInput) {
1318
+ listSandboxExportJobs(workspaceId: $workspaceId, context: $context, pagination: $pagination) {
1319
+ ${SANDBOX_EXPORT_JOB_FIELDS}
1320
+ }
1321
+ }
1322
+ `;
1323
+ var GET_SANDBOX_ARTIFACT_BYTES = `
1324
+ query GetSandboxArtifactBytes($input: SandboxArtifactBytesInput!) {
1325
+ getSandboxArtifactBytes(input: $input) { filename mimeType size contentBase64 }
1326
+ }
1327
+ `;
1328
+ var PROXY_SANDBOX_REQUEST = `
1329
+ mutation ProxySandboxRequest($input: ProxySandboxRequestInput!) {
1330
+ proxySandboxRequest(input: $input) { status body }
1331
+ }
1332
+ `;
1333
+ var VIBECONTROLS_ANALYTICS = `
1334
+ query VibecontrolsAnalytics($input: VibecontrolsAnalyticsInput!) {
1335
+ vibecontrolsAnalytics(input: $input) {
1336
+ agents { total active inactive staleHeartbeatCount byPlatform { key count } byArchitecture { key count } createdOverTime { timestamp value } }
1337
+ targets { total connectionCount byType { key count } byStatus { key count } }
1338
+ sessions { total active avgDurationMs totalCollaborators totalShares totalShareLinks byType { key count } byStatus { key count } createdOverTime { timestamp value } }
1339
+ vibes { total withAgent withoutAgent byType { key count } byStatus { key count } createdOverTime { timestamp value } }
1340
+ actions { total totalExecutions successRate avgDurationMs byActionType { key count } byTriggerType { key count } bySourceType { key count } executionsByStatus { key count } executionsOverTime { timestamp value } }
1341
+ webhooks { total active inactive totalDeliveries totalFailures deliverySuccessRate }
1342
+ aiEvents { total bySource { key count } byEventType { key count } eventsOverTime { timestamp value } }
1343
+ vibeDecks { totalDecks totalButtons buttonsByActionType { key count } }
1344
+ audit { total byAction { key count } byResourceType { key count } byStatus { key count } eventsOverTime { timestamp value } }
1345
+ docs { totalSites totalPages totalRevisions buildSuccessRate totalBuildImages pagesByStatus { key count } revisionsByStatus { key count } }
1346
+ notes { total pinned unpinned createdOverTime { timestamp value } }
1347
+ configurations { total secretCount byScope { key count } }
1348
+ executionTimeMs
1349
+ cached
1350
+ }
1351
+ }
1352
+ `;
1353
+ var CATALOG_FIELDS = `
1354
+ id name description visibility
1355
+ ownerId ownerName componentCount vibeCount
1356
+ tags metadata workspaceId
1357
+ createdAt updatedAt deletedAt
1358
+ createdBy updatedBy onBehalfOf
1359
+ `;
1360
+ var COMPONENT_FIELDS = `
1361
+ id name description type lifecycle version
1362
+ language framework repositoryUrl documentationUrl
1363
+ dependencies sbomData tags metadata
1364
+ ownerId ownerName teamId teamName catalogCount
1365
+ workspaceId createdAt updatedAt deletedAt
1366
+ `;
1367
+ var TEMPLATE_FIELDS = `
1368
+ id name description category status version
1369
+ setupInstructions sourceRepositoryUrl
1370
+ fileTree variables componentSnapshot
1371
+ cloneCount tags metadata
1372
+ createdAt updatedAt
1373
+ `;
1374
+ var SCORECARD_METRIC_FIELDS = `
1375
+ id name description type status value threshold unit
1376
+ iframeUrl iframeHeight lastUpdatedAt createdAt updatedAt
1377
+ `;
1378
+ var SCORECARD_FIELDS = `
1379
+ id ownerId ownerType overallScore lastEvaluatedAt
1380
+ metrics { ${SCORECARD_METRIC_FIELDS} }
1381
+ metadata workspaceId createdAt updatedAt
1382
+ `;
1383
+ var LIST_CATALOGS = `
1384
+ query VibecontrolsCatalogs($filter: CatalogFilterInput, $pagination: PaginationInput) {
1385
+ vibecontrolsCatalogs(filter: $filter, pagination: $pagination) {
1386
+ items { ${CATALOG_FIELDS} }
1387
+ total hasMore
1388
+ }
1389
+ }
1390
+ `;
1391
+ var GET_CATALOG = `query VibecontrolsCatalog($id: ID!) { vibecontrolsCatalog(id: $id) { ${CATALOG_FIELDS} } }`;
1392
+ var GET_CATALOG_DEPENDENCY_GRAPH = `
1393
+ query VibecontrolsCatalogDependencyGraph($catalogId: ID!) {
1394
+ vibecontrolsCatalogDependencyGraph(catalogId: $catalogId) {
1395
+ nodes { id name type version }
1396
+ edges { source target version dependencyType }
1397
+ }
1398
+ }
1399
+ `;
1400
+ var GET_CATALOG_SBOM = `
1401
+ query VibecontrolsCatalogSBOM($catalogId: ID!) {
1402
+ vibecontrolsCatalogSBOM(catalogId: $catalogId) {
1403
+ format generatedAt totalCount
1404
+ components { name version type license }
1405
+ }
1406
+ }
1407
+ `;
1408
+ var CREATE_CATALOG = `mutation CreateVibecontrolsCatalog($input: CreateCatalogInput!) { createVibecontrolsCatalog(input: $input) { ${CATALOG_FIELDS} } }`;
1409
+ var UPDATE_CATALOG = `mutation UpdateVibecontrolsCatalog($id: ID!, $input: UpdateCatalogInput!) { updateVibecontrolsCatalog(id: $id, input: $input) { ${CATALOG_FIELDS} } }`;
1410
+ var DELETE_CATALOG = `mutation DeleteVibecontrolsCatalog($id: ID!) { deleteVibecontrolsCatalog(id: $id) }`;
1411
+ var ADD_COMPONENT_TO_CATALOG = `
1412
+ mutation AddComponentToVibecontrolsCatalog($catalogId: ID!, $componentId: ID!) {
1413
+ addComponentToVibecontrolsCatalog(catalogId: $catalogId, componentId: $componentId) {
1414
+ id catalogId componentId addedAt addedBy metadata workspaceId
1415
+ }
1416
+ }
1417
+ `;
1418
+ var REMOVE_COMPONENT_FROM_CATALOG = `
1419
+ mutation RemoveComponentFromVibecontrolsCatalog($catalogId: ID!, $componentId: ID!) {
1420
+ removeComponentFromVibecontrolsCatalog(catalogId: $catalogId, componentId: $componentId)
1421
+ }
1422
+ `;
1423
+ var ADD_VIBE_TO_CATALOG = `
1424
+ mutation AddVibeToVibecontrolsCatalog($catalogId: ID!, $vibeId: ID!) {
1425
+ addVibeToVibecontrolsCatalog(catalogId: $catalogId, vibeId: $vibeId) {
1426
+ id catalogId vibeId addedAt addedBy metadata workspaceId
1427
+ }
1428
+ }
1429
+ `;
1430
+ var REMOVE_VIBE_FROM_CATALOG = `
1431
+ mutation RemoveVibeFromVibecontrolsCatalog($catalogId: ID!, $vibeId: ID!) {
1432
+ removeVibeFromVibecontrolsCatalog(catalogId: $catalogId, vibeId: $vibeId)
1433
+ }
1434
+ `;
1435
+ var LIST_COMPONENTS = `
1436
+ query VibecontrolsComponents($filter: ComponentFilterInput, $pagination: PaginationInput) {
1437
+ vibecontrolsComponents(filter: $filter, pagination: $pagination) {
1438
+ items { ${COMPONENT_FIELDS} }
1439
+ total hasMore
1440
+ }
1441
+ }
1442
+ `;
1443
+ var GET_COMPONENT = `query VibecontrolsComponent($id: ID!) { vibecontrolsComponent(id: $id) { ${COMPONENT_FIELDS} } }`;
1444
+ var CREATE_COMPONENT = `mutation CreateVibecontrolsComponent($input: CreateComponentInput!) { createVibecontrolsComponent(input: $input) { ${COMPONENT_FIELDS} } }`;
1445
+ var UPDATE_COMPONENT = `mutation UpdateVibecontrolsComponent($id: ID!, $input: UpdateComponentInput!) { updateVibecontrolsComponent(id: $id, input: $input) { ${COMPONENT_FIELDS} } }`;
1446
+ var DELETE_COMPONENT = `mutation DeleteVibecontrolsComponent($id: ID!) { deleteVibecontrolsComponent(id: $id) }`;
1447
+ var FORK_GITHUB_REPO = `
1448
+ mutation ForkVibecontrolsGitHubRepo($input: VibecontrolsForkGitHubRepoInput!) {
1449
+ forkVibecontrolsGitHubRepo(input: $input) { isForked repoFullName repoUrl }
1450
+ }
1451
+ `;
1452
+ var PUBLISH_COMPONENT_AS_TEMPLATE = `
1453
+ mutation PublishVibecontrolsComponentAsTemplate(
1454
+ $componentId: ID!
1455
+ $input: VibecontrolsPublishTemplateInput!
1456
+ ) {
1457
+ publishVibecontrolsComponentAsTemplate(componentId: $componentId, input: $input) {
1458
+ ${TEMPLATE_FIELDS}
1459
+ }
1460
+ }
1461
+ `;
1462
+ var LIST_TEMPLATES = `
1463
+ query VibecontrolsTemplates($filter: VibecontrolsTemplateFilterInput, $pagination: PaginationInput) {
1464
+ vibecontrolsTemplates(filter: $filter, pagination: $pagination) {
1465
+ items { ${TEMPLATE_FIELDS} }
1466
+ total hasMore
1467
+ }
1468
+ }
1469
+ `;
1470
+ var GET_TEMPLATE = `query VibecontrolsTemplate($id: ID!) { vibecontrolsTemplate(id: $id) { ${TEMPLATE_FIELDS} } }`;
1471
+ var UPDATE_TEMPLATE = `mutation UpdateVibecontrolsTemplate($id: ID!, $input: VibecontrolsUpdateTemplateInput!) { updateVibecontrolsTemplate(id: $id, input: $input) { ${TEMPLATE_FIELDS} } }`;
1472
+ var DELETE_TEMPLATE = `mutation DeleteVibecontrolsTemplate($id: ID!) { deleteVibecontrolsTemplate(id: $id) }`;
1473
+ var INSTANTIATE_TEMPLATE = `
1474
+ mutation InstantiateVibecontrolsTemplate($templateId: ID!, $input: VibecontrolsCloneTemplateInput!) {
1475
+ instantiateVibecontrolsTemplate(templateId: $templateId, input: $input) { ${COMPONENT_FIELDS} }
1476
+ }
1477
+ `;
1478
+ var GET_SCORECARD = `
1479
+ query VibecontrolsScorecard($ownerId: ID!, $ownerType: ScorecardOwnerType!) {
1480
+ vibecontrolsScorecard(ownerId: $ownerId, ownerType: $ownerType) { ${SCORECARD_FIELDS} }
1481
+ }
1482
+ `;
1483
+ var UPSERT_SCORECARD = `mutation UpsertVibecontrolsScorecard($input: UpsertScorecardInput!) { upsertVibecontrolsScorecard(input: $input) { ${SCORECARD_FIELDS} } }`;
1484
+ var ADD_SCORECARD_METRIC = `
1485
+ mutation AddVibecontrolsScorecardMetric($scorecardId: ID!, $input: AddScorecardMetricInput!) {
1486
+ addVibecontrolsScorecardMetric(scorecardId: $scorecardId, input: $input) { ${SCORECARD_METRIC_FIELDS} }
1487
+ }
1488
+ `;
1489
+ var UPDATE_SCORECARD_METRIC = `
1490
+ mutation UpdateVibecontrolsScorecardMetric($id: ID!, $input: UpdateScorecardMetricInput!) {
1491
+ updateVibecontrolsScorecardMetric(id: $id, input: $input) { ${SCORECARD_METRIC_FIELDS} }
1492
+ }
1493
+ `;
1494
+ var REMOVE_SCORECARD_METRIC = `mutation RemoveVibecontrolsScorecardMetric($id: ID!) { removeVibecontrolsScorecardMetric(id: $id) }`;
1495
+ var SECURITY_SUMMARY = `summary { critical high medium low info }`;
1496
+ var SECURITY_FINDING_FIELDS = `
1497
+ id workspaceId vibeId scanRunId fingerprint
1498
+ category severity status ruleId title description
1499
+ file line col cve cwe packageName packageVersion fixedVersion
1500
+ remediation redactedSample ownerTeam firstSeenAt lastSeenAt dueAt
1501
+ `;
1502
+ var SECURITY_EVIDENCE_FIELDS = `
1503
+ id workspaceId scanRunId type sha256 sizeBytes
1504
+ s3Bucket s3Key retentionDays uploadedAt downloadUrl
1505
+ `;
1506
+ var SECURITY_SCAN_RUN_FIELDS = `
1507
+ id workspaceId vibeId agentId createdBy providerName
1508
+ stage status conclusion policyLevel repoUrl commit
1509
+ durationMs errorReason startedAt finishedAt createdAt
1510
+ ${SECURITY_SUMMARY}
1511
+ findings { ${SECURITY_FINDING_FIELDS} }
1512
+ evidence { ${SECURITY_EVIDENCE_FIELDS} }
1513
+ `;
1514
+ var SECURITY_PROVIDER_FIELDS = `
1515
+ id workspaceId providerName pluginName stage toolVersion
1516
+ enabled isDefault config createdAt updatedAt
1517
+ `;
1518
+ var REPO_SECURITY_CONFIG_FIELDS = `
1519
+ id workspaceId vibeId policyLevel enabledStages
1520
+ pluginAssignments profile configYamlEquivalent createdAt updatedAt
1521
+ `;
1522
+ var SECURITY_PROVIDERS_Q = `
1523
+ query SecurityProviders { securityProviders { ${SECURITY_PROVIDER_FIELDS} } }
1524
+ `;
1525
+ var SECURITY_SCAN_Q = `
1526
+ query SecurityScan($id: ID!) { securityScan(id: $id) { ${SECURITY_SCAN_RUN_FIELDS} } }
1527
+ `;
1528
+ var MY_SECURITY_SCANS_Q = `
1529
+ query MySecurityScans($filter: SecurityScanFilterInput, $pagination: SecurityPaginationInput) {
1530
+ mySecurityScans(filter: $filter, pagination: $pagination) {
1531
+ items { ${SECURITY_SCAN_RUN_FIELDS} } total hasMore
1532
+ }
1533
+ }
1534
+ `;
1535
+ var ALL_SECURITY_SCANS_Q = `
1536
+ query AllSecurityScans($filter: SecurityScanFilterInput, $pagination: SecurityPaginationInput) {
1537
+ allSecurityScans(filter: $filter, pagination: $pagination) {
1538
+ items { ${SECURITY_SCAN_RUN_FIELDS} } total hasMore
1539
+ }
1540
+ }
1541
+ `;
1542
+ var SECURITY_FINDINGS_Q = `
1543
+ query SecurityFindings($filter: SecurityFindingFilterInput, $pagination: SecurityPaginationInput) {
1544
+ securityFindings(filter: $filter, pagination: $pagination) {
1545
+ items { ${SECURITY_FINDING_FIELDS} } total hasMore
1546
+ }
1547
+ }
1548
+ `;
1549
+ var SECURITY_POLICY_DECISION_Q = `
1550
+ query SecurityPolicyDecision($scanRunId: ID!) {
1551
+ securityPolicyDecision(scanRunId: $scanRunId) {
1552
+ scanRunId allow denyReasons policyVersion evaluatedAt
1553
+ }
1554
+ }
1555
+ `;
1556
+ var SECURITY_STATUS_Q = `
1557
+ query SecurityStatus($vibeId: ID!) {
1558
+ securityStatus(vibeId: $vibeId) {
1559
+ vibeId policyLevel perStage lastScanAt
1560
+ totals { critical high medium low info }
1561
+ }
1562
+ }
1563
+ `;
1564
+ var REPOSITORY_SECURITY_CONFIG_Q = `
1565
+ query RepositorySecurityConfig($vibeId: ID!) {
1566
+ repositorySecurityConfig(vibeId: $vibeId) { ${REPO_SECURITY_CONFIG_FIELDS} }
1567
+ }
1568
+ `;
1569
+ var RUN_SECURITY_SCAN_M = `
1570
+ mutation RunSecurityScan($vibeId: ID!, $stage: SecurityStage!) {
1571
+ runSecurityScan(vibeId: $vibeId, stage: $stage) { ${SECURITY_SCAN_RUN_FIELDS} }
1572
+ }
1573
+ `;
1574
+ var CANCEL_SECURITY_SCAN_M = `
1575
+ mutation CancelSecurityScan($id: ID!) {
1576
+ cancelSecurityScan(id: $id) { ${SECURITY_SCAN_RUN_FIELDS} }
1577
+ }
1578
+ `;
1579
+ var CREATE_SECURITY_EXCEPTION_M = `
1580
+ mutation CreateSecurityException($input: CreateSecurityExceptionInput!) {
1581
+ createSecurityException(input: $input) {
1582
+ id workspaceId vibeId findingId reason compensatingControls
1583
+ approvedBy expiresAt status createdAt
1584
+ }
1585
+ }
1586
+ `;
1587
+ var REVOKE_SECURITY_EXCEPTION_M = `
1588
+ mutation RevokeSecurityException($id: ID!) { revokeSecurityException(id: $id) }
1589
+ `;
1590
+ var SET_SECURITY_PROVIDER_M = `
1591
+ mutation SetSecurityProvider($input: SetSecurityProviderInput!) {
1592
+ setSecurityProvider(input: $input) { ${SECURITY_PROVIDER_FIELDS} }
1593
+ }
1594
+ `;
1595
+ var UPDATE_SECURITY_FINDING_STATUS_M = `
1596
+ mutation UpdateSecurityFindingStatus($id: ID!, $status: SecurityFindingStatus!) {
1597
+ updateSecurityFindingStatus(id: $id, status: $status) { ${SECURITY_FINDING_FIELDS} }
1598
+ }
1599
+ `;
1600
+ var UPDATE_REPOSITORY_SECURITY_CONFIG_M = `
1601
+ mutation UpdateRepositorySecurityConfig(
1602
+ $vibeId: ID!, $input: UpdateRepositorySecurityConfigInput!
1603
+ ) {
1604
+ updateRepositorySecurityConfig(vibeId: $vibeId, input: $input) { ${REPO_SECURITY_CONFIG_FIELDS} }
1605
+ }
1606
+ `;
1607
+ var PRESIGN_SECURITY_EVIDENCE_M = `
1608
+ mutation PresignSecurityEvidence(
1609
+ $scanRunId: ID!, $sha256: String!, $sizeBytes: Int!, $type: SecurityEvidenceType!
1610
+ ) {
1611
+ presignSecurityEvidence(
1612
+ scanRunId: $scanRunId, sha256: $sha256, sizeBytes: $sizeBytes, type: $type
1613
+ ) {
1614
+ evidenceId uploadUrl method requiredHeaders s3Bucket s3Key expiresAt
1615
+ }
1616
+ }
1617
+ `;
1618
+ var PUSH_SECURITY_SCAN_RUN_M = `
1619
+ mutation PushSecurityScanRun($input: PushSecurityScanRunInput!) {
1620
+ pushSecurityScanRun(input: $input) { ${SECURITY_SCAN_RUN_FIELDS} }
1621
+ }
1622
+ `;
1623
+ var CI_RUN_FIELDS = `
1624
+ id status conclusion workflowName branch event actor url
1625
+ startedAt completedAt durationSeconds
1626
+ `;
1627
+ var CI_STATUS_FIELDS = `
1628
+ recentRuns { ${CI_RUN_FIELDS} }
1629
+ workflows { id name path state }
1630
+ averageDurationSeconds successRate totalRunsLast30Days
1631
+ `;
1632
+ var CI_DETAILS_FIELDS = `
1633
+ ${CI_RUN_FIELDS}
1634
+ commitSha commitMessage
1635
+ jobs { id name status conclusion startedAt completedAt durationSeconds }
1636
+ `;
1637
+ var REPO_STATS_FIELDS = `
1638
+ name fullName owner description defaultBranch visibility
1639
+ isArchived isFork diskUsageKb stargazerCount watcherCount forkCount
1640
+ openIssues openPullRequests dependabotAlerts languages license
1641
+ createdAt updatedAt pushedAt
1642
+ contributors { login contributions avatarUrl }
1643
+ commitActivity { week total additions deletions }
1644
+ pullRequests {
1645
+ number title state author url createdAt updatedAt
1646
+ isDraft labels reviewers
1647
+ }
1648
+ `;
1649
+ var GET_CI_STATUS_Q = `
1650
+ query GetCIStatus($providerId: ID!, $agentId: ID!, $limit: Int) {
1651
+ getCIStatus(providerId: $providerId, agentId: $agentId, limit: $limit) { ${CI_STATUS_FIELDS} }
1652
+ }
1653
+ `;
1654
+ var GET_CI_PIPELINE_RUNS_Q = `
1655
+ query GetCIPipelineRuns($providerId: ID!, $agentId: ID!, $branch: String, $limit: Int) {
1656
+ getCIPipelineRuns(providerId: $providerId, agentId: $agentId, branch: $branch, limit: $limit) {
1657
+ ${CI_RUN_FIELDS}
1658
+ }
1659
+ }
1660
+ `;
1661
+ var GET_CI_PIPELINE_DETAILS_Q = `
1662
+ query GetCIPipelineDetails($providerId: ID!, $agentId: ID!, $runId: ID!) {
1663
+ getCIPipelineDetails(providerId: $providerId, agentId: $agentId, runId: $runId) {
1664
+ ${CI_DETAILS_FIELDS}
1665
+ }
1666
+ }
1667
+ `;
1668
+ var GET_REPO_STATS_Q = `
1669
+ query GetRepoStats($providerId: ID!, $agentId: ID!) {
1670
+ getRepoStats(providerId: $providerId, agentId: $agentId) { ${REPO_STATS_FIELDS} }
1671
+ }
1672
+ `;
1673
+ var REFRESH_CI_STATUS_M = `
1674
+ mutation RefreshCIStatus($providerId: ID!, $agentId: ID!) {
1675
+ refreshCIStatus(providerId: $providerId, agentId: $agentId) { ${CI_STATUS_FIELDS} }
1676
+ }
1677
+ `;
1678
+ var REFRESH_REPO_STATS_M = `
1679
+ mutation RefreshRepoStats($providerId: ID!, $agentId: ID!) {
1680
+ refreshRepoStats(providerId: $providerId, agentId: $agentId) { ${REPO_STATS_FIELDS} }
1681
+ }
1682
+ `;
1683
+ var GITOPS_FIELDS = `
1684
+ id workspaceId createdBy name providerType repoUrl
1685
+ isActive vibeId metadata
1686
+ context { workspaceId userId appId custom }
1687
+ createdAt updatedAt deletedAt
1688
+ `;
1689
+ var LIST_GITOPS_PROVIDERS_Q = `
1690
+ query ListGitopsProviders($filter: GitopsProviderFilterInput, $pagination: PaginationInput) {
1691
+ listGitopsProviders(filter: $filter, pagination: $pagination) {
1692
+ items { ${GITOPS_FIELDS} } total hasMore
1693
+ }
1694
+ }
1695
+ `;
1696
+ var GET_GITOPS_PROVIDER_Q = `
1697
+ query GetGitopsProvider($id: ID!) { getGitopsProvider(id: $id) { ${GITOPS_FIELDS} } }
1698
+ `;
1699
+ var CREATE_GITOPS_PROVIDER_M = `
1700
+ mutation CreateGitopsProvider($input: CreateGitopsProviderInput!) {
1701
+ createGitopsProvider(input: $input) { ${GITOPS_FIELDS} }
1702
+ }
1703
+ `;
1704
+ var UPDATE_GITOPS_PROVIDER_M = `
1705
+ mutation UpdateGitopsProvider($id: ID!, $input: UpdateGitopsProviderInput!) {
1706
+ updateGitopsProvider(id: $id, input: $input) { ${GITOPS_FIELDS} }
1707
+ }
1708
+ `;
1709
+ var DELETE_GITOPS_PROVIDER_M = `
1710
+ mutation DeleteGitopsProvider($id: ID!) { deleteGitopsProvider(id: $id) }
1711
+ `;
1712
+ var PREFS_FIELDS = `
1713
+ theme uiDensity sidebarCollapsed codeFont codeFontSize
1714
+ preferredIdeCommand defaultAgentForVibe vibeIdeOverrides vibeDetailTabOrder
1715
+ `;
1716
+ var NOTIF_FIELDS = `
1717
+ emailDigest digestFrequency agentOffline sessionError vibeStatusChange
1718
+ `;
1719
+ var DEFAULTS_FIELDS = `
1720
+ defaultAgent defaultSessionType defaultVibeType defaultEnvironmentVariables
1721
+ autoStartSessions autoGitSync agentHeartbeatInterval agentMaxSessions
1722
+ agentAutoReconnect autoUpdate telemetryEnabled logLevel
1723
+ `;
1724
+ var BUNDLE_FIELDS = `
1725
+ preferences { ${PREFS_FIELDS} }
1726
+ notifications { ${NOTIF_FIELDS} }
1727
+ workspaceDefaults { ${DEFAULTS_FIELDS} }
1728
+ profile { displayName avatar bio language timezone }
1729
+ security { mfaEnabled sessionTimeout activeSessions }
1730
+ `;
1731
+ var SECRET_FIELDS = `id key value isSecret createdAt updatedAt`;
1732
+ var MY_SETTINGS_Q = `query MySettings { mySettings { ${BUNDLE_FIELDS} } }`;
1733
+ var MY_SETTINGS_BY_CATEGORY_Q = `
1734
+ query MySettingsByCategory($category: SettingsCategory!) {
1735
+ mySettingsByCategory(category: $category)
1736
+ }
1737
+ `;
1738
+ var LIST_SETTINGS_SECRETS_Q = `
1739
+ query ListSettingsSecrets { listSettingsSecrets { ${SECRET_FIELDS} } }
1740
+ `;
1741
+ var SET_SETTINGS_SECRET_M = `
1742
+ mutation SetSettingsSecret($input: SetSettingsSecretInput!) {
1743
+ setSettingsSecret(input: $input) { ${SECRET_FIELDS} }
1744
+ }
1745
+ `;
1746
+ var DELETE_SETTINGS_SECRET_M = `
1747
+ mutation DeleteSettingsSecret($key: String!) { deleteSettingsSecret(key: $key) }
1748
+ `;
1749
+ var RESET_SETTINGS_M = `
1750
+ mutation ResetSettings($category: SettingsCategory!) { resetSettings(category: $category) }
1751
+ `;
1752
+ var UPDATE_PREFERENCES_M = `
1753
+ mutation UpdatePreferences($input: UpdatePreferencesInput!) {
1754
+ updatePreferences(input: $input) { ${PREFS_FIELDS} }
1755
+ }
1756
+ `;
1757
+ var UPDATE_NOTIFICATION_PREFERENCES_M = `
1758
+ mutation UpdateNotificationPreferences($input: UpdateNotificationPreferencesInput!) {
1759
+ updateNotificationPreferences(input: $input) { ${NOTIF_FIELDS} }
1760
+ }
1761
+ `;
1762
+ var UPDATE_WORKSPACE_DEFAULTS_M = `
1763
+ mutation UpdateWorkspaceDefaults($input: UpdateWorkspaceDefaultsInput!) {
1764
+ updateWorkspaceDefaults(input: $input) { ${DEFAULTS_FIELDS} }
1765
+ }
1766
+ `;
1767
+ var RESOLVE_INTEGRATION_TOKEN_M = `
1768
+ mutation VibecontrolsResolveIntegrationToken($connectionId: ID!) {
1769
+ vibecontrolsResolveIntegrationToken(connectionId: $connectionId) {
1770
+ success connectionStatus wasRefreshed error
1771
+ token {
1772
+ accessToken refreshToken tokenType providerKey scopes expiresAt metadata
1773
+ }
1774
+ }
1775
+ }
1776
+ `;
1777
+
1778
+ // src/modules/vibecontrols/tools/actions.ts
6
1779
  function registerActionTools(server, ctx, track) {
7
1780
  server.registerTool(
8
1781
  track(mcpToolName(ctx.productName, "actions_list")),