@dobbyai/mcp-external 1.0.4 → 1.1.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 (163) hide show
  1. package/dist/__tests__/agent-mail-tools.test.d.ts +8 -0
  2. package/dist/__tests__/agent-mail-tools.test.d.ts.map +1 -0
  3. package/dist/__tests__/agent-mail-tools.test.js +262 -0
  4. package/dist/__tests__/agent-mail-tools.test.js.map +1 -0
  5. package/dist/__tests__/annotations.test.d.ts +8 -0
  6. package/dist/__tests__/annotations.test.d.ts.map +1 -0
  7. package/dist/__tests__/annotations.test.js +108 -0
  8. package/dist/__tests__/annotations.test.js.map +1 -0
  9. package/dist/__tests__/auth.test.d.ts +7 -0
  10. package/dist/__tests__/auth.test.d.ts.map +1 -0
  11. package/dist/__tests__/auth.test.js +116 -0
  12. package/dist/__tests__/auth.test.js.map +1 -0
  13. package/dist/__tests__/integration/protocol.test.d.ts +8 -0
  14. package/dist/__tests__/integration/protocol.test.d.ts.map +1 -0
  15. package/dist/__tests__/integration/protocol.test.js +104 -0
  16. package/dist/__tests__/integration/protocol.test.js.map +1 -0
  17. package/dist/__tests__/mcp-integrations.test.d.ts +8 -0
  18. package/dist/__tests__/mcp-integrations.test.d.ts.map +1 -0
  19. package/dist/__tests__/mcp-integrations.test.js +375 -0
  20. package/dist/__tests__/mcp-integrations.test.js.map +1 -0
  21. package/dist/__tests__/memory-graph-tools.test.d.ts +8 -0
  22. package/dist/__tests__/memory-graph-tools.test.d.ts.map +1 -0
  23. package/dist/__tests__/memory-graph-tools.test.js +265 -0
  24. package/dist/__tests__/memory-graph-tools.test.js.map +1 -0
  25. package/dist/__tests__/schedule-tools.test.d.ts +8 -0
  26. package/dist/__tests__/schedule-tools.test.d.ts.map +1 -0
  27. package/dist/__tests__/schedule-tools.test.js +290 -0
  28. package/dist/__tests__/schedule-tools.test.js.map +1 -0
  29. package/dist/__tests__/tiers.test.d.ts +7 -0
  30. package/dist/__tests__/tiers.test.d.ts.map +1 -0
  31. package/dist/__tests__/tiers.test.js +103 -0
  32. package/dist/__tests__/tiers.test.js.map +1 -0
  33. package/dist/__tests__/tools.test.d.ts +7 -0
  34. package/dist/__tests__/tools.test.d.ts.map +1 -0
  35. package/dist/__tests__/tools.test.js +143 -0
  36. package/dist/__tests__/tools.test.js.map +1 -0
  37. package/dist/__tests__/transport.test.d.ts +7 -0
  38. package/dist/__tests__/transport.test.d.ts.map +1 -0
  39. package/dist/__tests__/transport.test.js +55 -0
  40. package/dist/__tests__/transport.test.js.map +1 -0
  41. package/dist/__tests__/web-eval-tools.test.d.ts +8 -0
  42. package/dist/__tests__/web-eval-tools.test.d.ts.map +1 -0
  43. package/dist/__tests__/web-eval-tools.test.js +252 -0
  44. package/dist/__tests__/web-eval-tools.test.js.map +1 -0
  45. package/dist/__tests__/workflow-tools.test.d.ts +8 -0
  46. package/dist/__tests__/workflow-tools.test.d.ts.map +1 -0
  47. package/dist/__tests__/workflow-tools.test.js +268 -0
  48. package/dist/__tests__/workflow-tools.test.js.map +1 -0
  49. package/dist/auth/oauth-provider.d.ts +34 -0
  50. package/dist/auth/oauth-provider.d.ts.map +1 -0
  51. package/dist/auth/oauth-provider.js +75 -0
  52. package/dist/auth/oauth-provider.js.map +1 -0
  53. package/dist/auth/token-verifier.d.ts +40 -0
  54. package/dist/auth/token-verifier.d.ts.map +1 -0
  55. package/dist/auth/token-verifier.js +138 -0
  56. package/dist/auth/token-verifier.js.map +1 -0
  57. package/dist/http-server.d.ts +35 -0
  58. package/dist/http-server.d.ts.map +1 -0
  59. package/dist/http-server.js +175 -0
  60. package/dist/http-server.js.map +1 -0
  61. package/dist/index.js +113 -52
  62. package/dist/index.js.map +1 -1
  63. package/dist/lib/dobby-client.d.ts +50 -20
  64. package/dist/lib/dobby-client.d.ts.map +1 -1
  65. package/dist/lib/dobby-client.js +50 -0
  66. package/dist/lib/dobby-client.js.map +1 -1
  67. package/dist/tools/agent-mail.d.ts +153 -0
  68. package/dist/tools/agent-mail.d.ts.map +1 -0
  69. package/dist/tools/agent-mail.js +340 -0
  70. package/dist/tools/agent-mail.js.map +1 -0
  71. package/dist/tools/approvals.d.ts +24 -0
  72. package/dist/tools/approvals.d.ts.map +1 -1
  73. package/dist/tools/approvals.js +24 -0
  74. package/dist/tools/approvals.js.map +1 -1
  75. package/dist/tools/crew-builder.d.ts +24 -0
  76. package/dist/tools/crew-builder.d.ts.map +1 -1
  77. package/dist/tools/crew-builder.js +24 -0
  78. package/dist/tools/crew-builder.js.map +1 -1
  79. package/dist/tools/crewai.d.ts +24 -0
  80. package/dist/tools/crewai.d.ts.map +1 -1
  81. package/dist/tools/crewai.js +24 -0
  82. package/dist/tools/crewai.js.map +1 -1
  83. package/dist/tools/exa.d.ts +161 -0
  84. package/dist/tools/exa.d.ts.map +1 -0
  85. package/dist/tools/exa.js +228 -0
  86. package/dist/tools/exa.js.map +1 -0
  87. package/dist/tools/github-mcp.d.ts +303 -0
  88. package/dist/tools/github-mcp.d.ts.map +1 -0
  89. package/dist/tools/github-mcp.js +397 -0
  90. package/dist/tools/github-mcp.js.map +1 -0
  91. package/dist/tools/governance.d.ts +129 -0
  92. package/dist/tools/governance.d.ts.map +1 -0
  93. package/dist/tools/governance.js +171 -0
  94. package/dist/tools/governance.js.map +1 -0
  95. package/dist/tools/index.d.ts +3589 -159
  96. package/dist/tools/index.d.ts.map +1 -1
  97. package/dist/tools/index.js +250 -0
  98. package/dist/tools/index.js.map +1 -1
  99. package/dist/tools/jira.d.ts +60 -0
  100. package/dist/tools/jira.d.ts.map +1 -1
  101. package/dist/tools/jira.js +60 -0
  102. package/dist/tools/jira.js.map +1 -1
  103. package/dist/tools/knowledge-base.d.ts +144 -0
  104. package/dist/tools/knowledge-base.d.ts.map +1 -0
  105. package/dist/tools/knowledge-base.js +179 -0
  106. package/dist/tools/knowledge-base.js.map +1 -0
  107. package/dist/tools/mcp-metrics.d.ts +62 -0
  108. package/dist/tools/mcp-metrics.d.ts.map +1 -0
  109. package/dist/tools/mcp-metrics.js +270 -0
  110. package/dist/tools/mcp-metrics.js.map +1 -0
  111. package/dist/tools/mcp-tools.d.ts +12 -0
  112. package/dist/tools/mcp-tools.d.ts.map +1 -1
  113. package/dist/tools/mcp-tools.js +12 -0
  114. package/dist/tools/mcp-tools.js.map +1 -1
  115. package/dist/tools/mem0.d.ts +168 -0
  116. package/dist/tools/mem0.d.ts.map +1 -0
  117. package/dist/tools/mem0.js +255 -0
  118. package/dist/tools/mem0.js.map +1 -0
  119. package/dist/tools/memory-graph.d.ts +197 -0
  120. package/dist/tools/memory-graph.d.ts.map +1 -0
  121. package/dist/tools/memory-graph.js +545 -0
  122. package/dist/tools/memory-graph.js.map +1 -0
  123. package/dist/tools/messages.d.ts +12 -0
  124. package/dist/tools/messages.d.ts.map +1 -1
  125. package/dist/tools/messages.js +12 -0
  126. package/dist/tools/messages.js.map +1 -1
  127. package/dist/tools/moltbook.d.ts +564 -0
  128. package/dist/tools/moltbook.d.ts.map +1 -0
  129. package/dist/tools/moltbook.js +792 -0
  130. package/dist/tools/moltbook.js.map +1 -0
  131. package/dist/tools/ops.d.ts +219 -0
  132. package/dist/tools/ops.d.ts.map +1 -0
  133. package/dist/tools/ops.js +360 -0
  134. package/dist/tools/ops.js.map +1 -0
  135. package/dist/tools/schedules.d.ts +196 -0
  136. package/dist/tools/schedules.d.ts.map +1 -0
  137. package/dist/tools/schedules.js +264 -0
  138. package/dist/tools/schedules.js.map +1 -0
  139. package/dist/tools/services.d.ts +6 -0
  140. package/dist/tools/services.d.ts.map +1 -1
  141. package/dist/tools/services.js +6 -0
  142. package/dist/tools/services.js.map +1 -1
  143. package/dist/tools/tasks.d.ts +45 -0
  144. package/dist/tools/tasks.d.ts.map +1 -1
  145. package/dist/tools/tasks.js +49 -4
  146. package/dist/tools/tasks.js.map +1 -1
  147. package/dist/tools/tiers.d.ts +39 -0
  148. package/dist/tools/tiers.d.ts.map +1 -0
  149. package/dist/tools/tiers.js +138 -0
  150. package/dist/tools/tiers.js.map +1 -0
  151. package/dist/tools/unified-agents.d.ts +62 -0
  152. package/dist/tools/unified-agents.d.ts.map +1 -0
  153. package/dist/tools/unified-agents.js +147 -0
  154. package/dist/tools/unified-agents.js.map +1 -0
  155. package/dist/tools/web-eval.d.ts +172 -0
  156. package/dist/tools/web-eval.d.ts.map +1 -0
  157. package/dist/tools/web-eval.js +347 -0
  158. package/dist/tools/web-eval.js.map +1 -0
  159. package/dist/tools/workflow.d.ts +171 -0
  160. package/dist/tools/workflow.d.ts.map +1 -0
  161. package/dist/tools/workflow.js +518 -0
  162. package/dist/tools/workflow.js.map +1 -0
  163. package/package.json +8 -3
@@ -0,0 +1,397 @@
1
+ /**
2
+ * GitHub MCP Integration Tools
3
+ *
4
+ * Phase 1, Task 1.1: Connect GitHub MCP Server to Dobby.
5
+ * Provides tools for code management, PR automation, and CI/CD monitoring
6
+ * through the official GitHub MCP Server (ghcr.io/github/github-mcp-server).
7
+ */
8
+ // ============================================
9
+ // Tool Definitions
10
+ // ============================================
11
+ export const githubMcpTools = {
12
+ github_search_code: {
13
+ name: 'github_search_code',
14
+ annotations: {
15
+ title: 'GitHub Search Code',
16
+ readOnlyHint: true,
17
+ destructiveHint: false,
18
+ openWorldHint: false,
19
+ },
20
+ description: 'Search for code across GitHub repositories using the GitHub MCP Server. Returns matching files and code snippets.',
21
+ inputSchema: {
22
+ type: 'object',
23
+ properties: {
24
+ query: {
25
+ type: 'string',
26
+ description: 'Search query (e.g., "authentication middleware", "BigQuery parameterized query")',
27
+ },
28
+ repo: {
29
+ type: 'string',
30
+ description: 'Optional: Limit search to a specific repo (e.g., "gil-dobby/repo-dobby")',
31
+ },
32
+ language: {
33
+ type: 'string',
34
+ description: 'Optional: Filter by language (e.g., "typescript", "python")',
35
+ },
36
+ },
37
+ required: ['query'],
38
+ },
39
+ },
40
+ github_get_file: {
41
+ name: 'github_get_file',
42
+ annotations: {
43
+ title: 'GitHub Get File',
44
+ readOnlyHint: true,
45
+ destructiveHint: false,
46
+ openWorldHint: false,
47
+ },
48
+ description: 'Read a file from a GitHub repository. Returns file content.',
49
+ inputSchema: {
50
+ type: 'object',
51
+ properties: {
52
+ repo: {
53
+ type: 'string',
54
+ description: 'Repository in format "owner/repo" (e.g., "gil-dobby/repo-dobby")',
55
+ },
56
+ path: {
57
+ type: 'string',
58
+ description: 'File path within the repo (e.g., "web/shared/lib/gateway/auth.ts")',
59
+ },
60
+ branch: {
61
+ type: 'string',
62
+ description: 'Optional: Branch name (default: main)',
63
+ },
64
+ },
65
+ required: ['repo', 'path'],
66
+ },
67
+ },
68
+ github_create_pr: {
69
+ name: 'github_create_pr',
70
+ annotations: {
71
+ title: 'GitHub Create PR',
72
+ readOnlyHint: false,
73
+ destructiveHint: true,
74
+ openWorldHint: false,
75
+ },
76
+ description: 'Create a Pull Request on GitHub. Requires an existing branch with commits.',
77
+ inputSchema: {
78
+ type: 'object',
79
+ properties: {
80
+ repo: {
81
+ type: 'string',
82
+ description: 'Repository in format "owner/repo"',
83
+ },
84
+ title: {
85
+ type: 'string',
86
+ description: 'PR title',
87
+ },
88
+ body: {
89
+ type: 'string',
90
+ description: 'PR description in markdown',
91
+ },
92
+ head: {
93
+ type: 'string',
94
+ description: 'Source branch name',
95
+ },
96
+ base: {
97
+ type: 'string',
98
+ description: 'Target branch (default: main)',
99
+ },
100
+ },
101
+ required: ['repo', 'title', 'head'],
102
+ },
103
+ },
104
+ github_list_prs: {
105
+ name: 'github_list_prs',
106
+ annotations: {
107
+ title: 'GitHub List PRs',
108
+ readOnlyHint: true,
109
+ destructiveHint: false,
110
+ openWorldHint: false,
111
+ },
112
+ description: 'List Pull Requests for a repository with optional filters.',
113
+ inputSchema: {
114
+ type: 'object',
115
+ properties: {
116
+ repo: {
117
+ type: 'string',
118
+ description: 'Repository in format "owner/repo"',
119
+ },
120
+ state: {
121
+ type: 'string',
122
+ enum: ['open', 'closed', 'all'],
123
+ description: 'Filter by PR state (default: open)',
124
+ },
125
+ limit: {
126
+ type: 'number',
127
+ description: 'Maximum number of PRs to return (default: 10)',
128
+ },
129
+ },
130
+ required: ['repo'],
131
+ },
132
+ },
133
+ github_list_issues: {
134
+ name: 'github_list_issues',
135
+ annotations: {
136
+ title: 'GitHub List Issues',
137
+ readOnlyHint: true,
138
+ destructiveHint: false,
139
+ openWorldHint: false,
140
+ },
141
+ description: 'List issues for a repository with optional filters.',
142
+ inputSchema: {
143
+ type: 'object',
144
+ properties: {
145
+ repo: {
146
+ type: 'string',
147
+ description: 'Repository in format "owner/repo"',
148
+ },
149
+ state: {
150
+ type: 'string',
151
+ enum: ['open', 'closed', 'all'],
152
+ description: 'Filter by issue state (default: open)',
153
+ },
154
+ labels: {
155
+ type: 'string',
156
+ description: 'Comma-separated label names to filter by',
157
+ },
158
+ limit: {
159
+ type: 'number',
160
+ description: 'Maximum number of issues to return (default: 10)',
161
+ },
162
+ },
163
+ required: ['repo'],
164
+ },
165
+ },
166
+ github_create_issue: {
167
+ name: 'github_create_issue',
168
+ annotations: {
169
+ title: 'GitHub Create Issue',
170
+ readOnlyHint: false,
171
+ destructiveHint: true,
172
+ openWorldHint: false,
173
+ },
174
+ description: 'Create a new issue on a GitHub repository.',
175
+ inputSchema: {
176
+ type: 'object',
177
+ properties: {
178
+ repo: {
179
+ type: 'string',
180
+ description: 'Repository in format "owner/repo"',
181
+ },
182
+ title: {
183
+ type: 'string',
184
+ description: 'Issue title',
185
+ },
186
+ body: {
187
+ type: 'string',
188
+ description: 'Issue body in markdown',
189
+ },
190
+ labels: {
191
+ type: 'array',
192
+ items: { type: 'string' },
193
+ description: 'Labels to add',
194
+ },
195
+ },
196
+ required: ['repo', 'title'],
197
+ },
198
+ },
199
+ github_get_workflow_runs: {
200
+ name: 'github_get_workflow_runs',
201
+ annotations: {
202
+ title: 'GitHub Workflow Runs',
203
+ readOnlyHint: true,
204
+ destructiveHint: false,
205
+ openWorldHint: false,
206
+ },
207
+ description: 'List recent GitHub Actions workflow runs for CI/CD monitoring.',
208
+ inputSchema: {
209
+ type: 'object',
210
+ properties: {
211
+ repo: {
212
+ type: 'string',
213
+ description: 'Repository in format "owner/repo"',
214
+ },
215
+ status: {
216
+ type: 'string',
217
+ enum: ['completed', 'in_progress', 'queued', 'failure', 'success'],
218
+ description: 'Filter by run status',
219
+ },
220
+ limit: {
221
+ type: 'number',
222
+ description: 'Maximum number of runs to return (default: 5)',
223
+ },
224
+ },
225
+ required: ['repo'],
226
+ },
227
+ },
228
+ };
229
+ // ============================================
230
+ // GitHub API Helper
231
+ // ============================================
232
+ const GITHUB_API = 'https://api.github.com';
233
+ async function githubFetch(endpoint, options = {}) {
234
+ const token = process.env.GITHUB_TOKEN || process.env.GITHUB_PERSONAL_ACCESS_TOKEN;
235
+ if (!token) {
236
+ throw new Error('GITHUB_TOKEN not configured. Set it in .env or environment variables.');
237
+ }
238
+ const response = await fetch(`${GITHUB_API}${endpoint}`, {
239
+ ...options,
240
+ headers: {
241
+ 'Authorization': `Bearer ${token}`,
242
+ 'Accept': 'application/vnd.github+json',
243
+ 'X-GitHub-Api-Version': '2022-11-28',
244
+ ...options.headers,
245
+ },
246
+ });
247
+ if (!response.ok) {
248
+ const body = await response.text();
249
+ throw new Error(`GitHub API error (${response.status}): ${body.slice(0, 200)}`);
250
+ }
251
+ return response.json();
252
+ }
253
+ // ============================================
254
+ // Tool Handlers
255
+ // ============================================
256
+ export async function handleGithubSearchCode(_client, args) {
257
+ let q = args.query;
258
+ if (args.repo)
259
+ q += ` repo:${args.repo}`;
260
+ if (args.language)
261
+ q += ` language:${args.language}`;
262
+ const data = await githubFetch(`/search/code?q=${encodeURIComponent(q)}&per_page=10`);
263
+ const items = (data.items || []).map((item) => ({
264
+ name: item.name,
265
+ path: item.path,
266
+ repo: item.repository?.full_name,
267
+ url: item.html_url,
268
+ }));
269
+ return {
270
+ content: [{
271
+ type: 'text',
272
+ text: JSON.stringify({ total: data.total_count, results: items }, null, 2),
273
+ }],
274
+ };
275
+ }
276
+ export async function handleGithubGetFile(_client, args) {
277
+ const ref = args.branch ? `?ref=${args.branch}` : '';
278
+ const data = await githubFetch(`/repos/${args.repo}/contents/${args.path}${ref}`);
279
+ let content = data.content;
280
+ if (data.encoding === 'base64') {
281
+ content = Buffer.from(data.content, 'base64').toString('utf-8');
282
+ }
283
+ return {
284
+ content: [{
285
+ type: 'text',
286
+ text: content,
287
+ }],
288
+ };
289
+ }
290
+ export async function handleGithubCreatePr(_client, args) {
291
+ const data = await githubFetch(`/repos/${args.repo}/pulls`, {
292
+ method: 'POST',
293
+ body: JSON.stringify({
294
+ title: args.title,
295
+ body: args.body || '',
296
+ head: args.head,
297
+ base: args.base || 'main',
298
+ }),
299
+ });
300
+ return {
301
+ content: [{
302
+ type: 'text',
303
+ text: JSON.stringify({
304
+ pr_number: data.number,
305
+ url: data.html_url,
306
+ state: data.state,
307
+ title: data.title,
308
+ }, null, 2),
309
+ }],
310
+ };
311
+ }
312
+ export async function handleGithubListPrs(_client, args) {
313
+ const state = args.state || 'open';
314
+ const limit = args.limit || 10;
315
+ const data = await githubFetch(`/repos/${args.repo}/pulls?state=${state}&per_page=${limit}`);
316
+ const prs = data.map((pr) => ({
317
+ number: pr.number,
318
+ title: pr.title,
319
+ state: pr.state,
320
+ author: pr.user?.login,
321
+ url: pr.html_url,
322
+ created_at: pr.created_at,
323
+ updated_at: pr.updated_at,
324
+ }));
325
+ return {
326
+ content: [{
327
+ type: 'text',
328
+ text: JSON.stringify(prs, null, 2),
329
+ }],
330
+ };
331
+ }
332
+ export async function handleGithubListIssues(_client, args) {
333
+ const state = args.state || 'open';
334
+ const limit = args.limit || 10;
335
+ let url = `/repos/${args.repo}/issues?state=${state}&per_page=${limit}`;
336
+ if (args.labels)
337
+ url += `&labels=${encodeURIComponent(args.labels)}`;
338
+ const data = await githubFetch(url);
339
+ const issues = data.filter((i) => !i.pull_request).map((i) => ({
340
+ number: i.number,
341
+ title: i.title,
342
+ state: i.state,
343
+ labels: i.labels?.map((l) => l.name),
344
+ assignee: i.assignee?.login,
345
+ url: i.html_url,
346
+ created_at: i.created_at,
347
+ }));
348
+ return {
349
+ content: [{
350
+ type: 'text',
351
+ text: JSON.stringify(issues, null, 2),
352
+ }],
353
+ };
354
+ }
355
+ export async function handleGithubCreateIssue(_client, args) {
356
+ const data = await githubFetch(`/repos/${args.repo}/issues`, {
357
+ method: 'POST',
358
+ body: JSON.stringify({
359
+ title: args.title,
360
+ body: args.body || '',
361
+ labels: args.labels || [],
362
+ }),
363
+ });
364
+ return {
365
+ content: [{
366
+ type: 'text',
367
+ text: JSON.stringify({
368
+ issue_number: data.number,
369
+ url: data.html_url,
370
+ state: data.state,
371
+ }, null, 2),
372
+ }],
373
+ };
374
+ }
375
+ export async function handleGithubGetWorkflowRuns(_client, args) {
376
+ const limit = args.limit || 5;
377
+ let url = `/repos/${args.repo}/actions/runs?per_page=${limit}`;
378
+ if (args.status)
379
+ url += `&status=${args.status}`;
380
+ const data = await githubFetch(url);
381
+ const runs = (data.workflow_runs || []).map((r) => ({
382
+ id: r.id,
383
+ name: r.name,
384
+ status: r.status,
385
+ conclusion: r.conclusion,
386
+ branch: r.head_branch,
387
+ url: r.html_url,
388
+ created_at: r.created_at,
389
+ }));
390
+ return {
391
+ content: [{
392
+ type: 'text',
393
+ text: JSON.stringify(runs, null, 2),
394
+ }],
395
+ };
396
+ }
397
+ //# sourceMappingURL=github-mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-mcp.js","sourceRoot":"","sources":["../../src/tools/github-mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Governance MCP Tools
3
+ *
4
+ * Policy-as-Code operations via MCP for Claude Desktop/Cursor/VS Code users.
5
+ * 4 tools:
6
+ * 1. export_policies — Export org governance policies as YAML/JSON
7
+ * 2. import_policies — Import policies from YAML/JSON
8
+ * 3. validate_policies — Dry-run validate a policy document
9
+ * 4. apply_guardrail — Apply a guardrail template to an org
10
+ */
11
+ import { DobbyClient } from '../lib/dobby-client.js';
12
+ export declare const governanceTools: {
13
+ export_policies: {
14
+ name: string;
15
+ annotations: {
16
+ title: string;
17
+ readOnlyHint: boolean;
18
+ destructiveHint: boolean;
19
+ openWorldHint: boolean;
20
+ };
21
+ description: string;
22
+ inputSchema: {
23
+ type: "object";
24
+ properties: {
25
+ organization_id: {
26
+ type: string;
27
+ description: string;
28
+ };
29
+ format: {
30
+ type: string;
31
+ enum: string[];
32
+ description: string;
33
+ default: string;
34
+ };
35
+ };
36
+ required: string[];
37
+ };
38
+ };
39
+ import_policies: {
40
+ name: string;
41
+ annotations: {
42
+ title: string;
43
+ readOnlyHint: boolean;
44
+ destructiveHint: boolean;
45
+ openWorldHint: boolean;
46
+ };
47
+ description: string;
48
+ inputSchema: {
49
+ type: "object";
50
+ properties: {
51
+ organization_id: {
52
+ type: string;
53
+ description: string;
54
+ };
55
+ content: {
56
+ type: string;
57
+ description: string;
58
+ };
59
+ };
60
+ required: string[];
61
+ };
62
+ };
63
+ validate_policies: {
64
+ name: string;
65
+ annotations: {
66
+ title: string;
67
+ readOnlyHint: boolean;
68
+ destructiveHint: boolean;
69
+ openWorldHint: boolean;
70
+ };
71
+ description: string;
72
+ inputSchema: {
73
+ type: "object";
74
+ properties: {
75
+ organization_id: {
76
+ type: string;
77
+ description: string;
78
+ };
79
+ content: {
80
+ type: string;
81
+ description: string;
82
+ };
83
+ };
84
+ required: string[];
85
+ };
86
+ };
87
+ apply_guardrail: {
88
+ name: string;
89
+ annotations: {
90
+ title: string;
91
+ readOnlyHint: boolean;
92
+ destructiveHint: boolean;
93
+ openWorldHint: boolean;
94
+ };
95
+ description: string;
96
+ inputSchema: {
97
+ type: "object";
98
+ properties: {
99
+ organization_id: {
100
+ type: string;
101
+ description: string;
102
+ };
103
+ template: {
104
+ type: string;
105
+ enum: string[];
106
+ description: string;
107
+ };
108
+ };
109
+ required: string[];
110
+ };
111
+ };
112
+ };
113
+ export declare function handleExportPolicies(args: {
114
+ organization_id: string;
115
+ format?: string;
116
+ }, client: DobbyClient): Promise<string>;
117
+ export declare function handleImportPolicies(args: {
118
+ organization_id: string;
119
+ content: string;
120
+ }, client: DobbyClient): Promise<string>;
121
+ export declare function handleValidatePolicies(args: {
122
+ organization_id: string;
123
+ content: string;
124
+ }, client: DobbyClient): Promise<string>;
125
+ export declare function handleApplyGuardrail(args: {
126
+ organization_id: string;
127
+ template: string;
128
+ }, client: DobbyClient): Promise<string>;
129
+ //# sourceMappingURL=governance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../../src/tools/governance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAMrD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2G3B,CAAC;AAMF,wBAAsB,oBAAoB,CACxC,IAAI,EAAE;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EAClD,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAClD,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,CAajB;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAClD,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,CA6BjB;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EACnD,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,CAYjB"}