@marktoflow/integrations 2.0.0-alpha.12

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 (181) hide show
  1. package/README.md +1341 -0
  2. package/dist/adapters/claude-agent-hooks.d.ts.map +1 -0
  3. package/dist/adapters/claude-agent-hooks.js +339 -0
  4. package/dist/adapters/claude-agent-hooks.js.map +1 -0
  5. package/dist/adapters/claude-agent-types.d.ts +426 -0
  6. package/dist/adapters/claude-agent-types.d.ts.map +1 -0
  7. package/dist/adapters/claude-agent-types.js +62 -0
  8. package/dist/adapters/claude-agent-types.js.map +1 -0
  9. package/dist/adapters/claude-agent-workflow.d.ts +393 -0
  10. package/dist/adapters/claude-agent-workflow.d.ts.map +1 -0
  11. package/dist/adapters/claude-agent-workflow.js +445 -0
  12. package/dist/adapters/claude-agent-workflow.js.map +1 -0
  13. package/dist/adapters/claude-agent.d.ts +189 -0
  14. package/dist/adapters/claude-agent.d.ts.map +1 -0
  15. package/dist/adapters/claude-agent.js +504 -0
  16. package/dist/adapters/claude-agent.js.map +1 -0
  17. package/dist/adapters/claude-code.d.ts +34 -0
  18. package/dist/adapters/claude-code.d.ts.map +1 -0
  19. package/dist/adapters/claude-code.js +89 -0
  20. package/dist/adapters/claude-code.js.map +1 -0
  21. package/dist/adapters/codex-types.d.ts +463 -0
  22. package/dist/adapters/codex-types.d.ts.map +1 -0
  23. package/dist/adapters/codex-types.js +53 -0
  24. package/dist/adapters/codex-types.js.map +1 -0
  25. package/dist/adapters/codex-workflow.d.ts +414 -0
  26. package/dist/adapters/codex-workflow.d.ts.map +1 -0
  27. package/dist/adapters/codex-workflow.js +470 -0
  28. package/dist/adapters/codex-workflow.js.map +1 -0
  29. package/dist/adapters/codex.d.ts +154 -0
  30. package/dist/adapters/codex.d.ts.map +1 -0
  31. package/dist/adapters/codex.js +416 -0
  32. package/dist/adapters/codex.js.map +1 -0
  33. package/dist/adapters/github-copilot-types.d.ts +1012 -0
  34. package/dist/adapters/github-copilot-types.d.ts.map +1 -0
  35. package/dist/adapters/github-copilot-types.js +80 -0
  36. package/dist/adapters/github-copilot-types.js.map +1 -0
  37. package/dist/adapters/github-copilot-workflow.d.ts +462 -0
  38. package/dist/adapters/github-copilot-workflow.d.ts.map +1 -0
  39. package/dist/adapters/github-copilot-workflow.js +473 -0
  40. package/dist/adapters/github-copilot-workflow.js.map +1 -0
  41. package/dist/adapters/github-copilot.d.ts +280 -0
  42. package/dist/adapters/github-copilot.d.ts.map +1 -0
  43. package/dist/adapters/github-copilot.js +468 -0
  44. package/dist/adapters/github-copilot.js.map +1 -0
  45. package/dist/adapters/ollama.d.ts.map +1 -0
  46. package/dist/adapters/ollama.js +9 -0
  47. package/dist/adapters/ollama.js.map +1 -0
  48. package/dist/adapters/opencode.d.ts +41 -0
  49. package/dist/adapters/opencode.d.ts.map +1 -0
  50. package/dist/adapters/opencode.js +148 -0
  51. package/dist/adapters/opencode.js.map +1 -0
  52. package/dist/index.d.ts +52 -0
  53. package/dist/index.d.ts.map +1 -0
  54. package/dist/index.js +161 -0
  55. package/dist/index.js.map +1 -0
  56. package/dist/services/ai-browser.d.ts +112 -0
  57. package/dist/services/ai-browser.d.ts.map +1 -0
  58. package/dist/services/ai-browser.js +363 -0
  59. package/dist/services/ai-browser.js.map +1 -0
  60. package/dist/services/airtable.d.ts.map +1 -0
  61. package/dist/services/airtable.js +295 -0
  62. package/dist/services/airtable.js.map +1 -0
  63. package/dist/services/asana.d.ts +159 -0
  64. package/dist/services/asana.d.ts.map +1 -0
  65. package/dist/services/asana.js +196 -0
  66. package/dist/services/asana.js.map +1 -0
  67. package/dist/services/aws-s3.d.ts +89 -0
  68. package/dist/services/aws-s3.d.ts.map +1 -0
  69. package/dist/services/aws-s3.js +154 -0
  70. package/dist/services/aws-s3.js.map +1 -0
  71. package/dist/services/confluence.d.ts.map +1 -0
  72. package/dist/services/confluence.js +356 -0
  73. package/dist/services/confluence.js.map +1 -0
  74. package/dist/services/discord.d.ts.map +1 -0
  75. package/dist/services/discord.js +279 -0
  76. package/dist/services/discord.js.map +1 -0
  77. package/dist/services/dropbox.d.ts +134 -0
  78. package/dist/services/dropbox.d.ts.map +1 -0
  79. package/dist/services/dropbox.js +190 -0
  80. package/dist/services/dropbox.js.map +1 -0
  81. package/dist/services/github.d.ts.map +1 -0
  82. package/dist/services/github.js +13 -0
  83. package/dist/services/github.js.map +1 -0
  84. package/dist/services/gmail-trigger.d.ts.map +1 -0
  85. package/dist/services/gmail-trigger.js +172 -0
  86. package/dist/services/gmail-trigger.js.map +1 -0
  87. package/dist/services/gmail.d.ts.map +1 -0
  88. package/dist/services/gmail.js +372 -0
  89. package/dist/services/gmail.js.map +1 -0
  90. package/dist/services/google-calendar.d.ts.map +1 -0
  91. package/dist/services/google-calendar.js +357 -0
  92. package/dist/services/google-calendar.js.map +1 -0
  93. package/dist/services/google-docs.d.ts.map +1 -0
  94. package/dist/services/google-docs.js +332 -0
  95. package/dist/services/google-docs.js.map +1 -0
  96. package/dist/services/google-drive.d.ts.map +1 -0
  97. package/dist/services/google-drive.js +327 -0
  98. package/dist/services/google-drive.js.map +1 -0
  99. package/dist/services/google-sheets.d.ts.map +1 -0
  100. package/dist/services/google-sheets.js +391 -0
  101. package/dist/services/google-sheets.js.map +1 -0
  102. package/dist/services/http.d.ts.map +1 -0
  103. package/dist/services/http.js +284 -0
  104. package/dist/services/http.js.map +1 -0
  105. package/dist/services/jira.d.ts.map +1 -0
  106. package/dist/services/jira.js +35 -0
  107. package/dist/services/jira.js.map +1 -0
  108. package/dist/services/linear.d.ts.map +1 -0
  109. package/dist/services/linear.js +326 -0
  110. package/dist/services/linear.js.map +1 -0
  111. package/dist/services/mailchimp.d.ts +169 -0
  112. package/dist/services/mailchimp.d.ts.map +1 -0
  113. package/dist/services/mailchimp.js +180 -0
  114. package/dist/services/mailchimp.js.map +1 -0
  115. package/dist/services/mysql.d.ts.map +1 -0
  116. package/dist/services/mysql.js +250 -0
  117. package/dist/services/mysql.js.map +1 -0
  118. package/dist/services/notion.d.ts.map +1 -0
  119. package/dist/services/notion.js +358 -0
  120. package/dist/services/notion.js.map +1 -0
  121. package/dist/services/outlook-trigger.d.ts.map +1 -0
  122. package/dist/services/outlook-trigger.js +204 -0
  123. package/dist/services/outlook-trigger.js.map +1 -0
  124. package/dist/services/outlook.d.ts.map +1 -0
  125. package/dist/services/outlook.js +486 -0
  126. package/dist/services/outlook.js.map +1 -0
  127. package/dist/services/playwright.d.ts +678 -0
  128. package/dist/services/playwright.d.ts.map +1 -0
  129. package/dist/services/playwright.js +1141 -0
  130. package/dist/services/playwright.js.map +1 -0
  131. package/dist/services/postgres.d.ts.map +1 -0
  132. package/dist/services/postgres.js +230 -0
  133. package/dist/services/postgres.js.map +1 -0
  134. package/dist/services/sendgrid.d.ts +43 -0
  135. package/dist/services/sendgrid.d.ts.map +1 -0
  136. package/dist/services/sendgrid.js +87 -0
  137. package/dist/services/sendgrid.js.map +1 -0
  138. package/dist/services/shopify.d.ts +160 -0
  139. package/dist/services/shopify.d.ts.map +1 -0
  140. package/dist/services/shopify.js +166 -0
  141. package/dist/services/shopify.js.map +1 -0
  142. package/dist/services/slack-socket.d.ts.map +1 -0
  143. package/dist/services/slack-socket.js +48 -0
  144. package/dist/services/slack-socket.js.map +1 -0
  145. package/dist/services/slack.d.ts.map +1 -0
  146. package/dist/services/slack.js +11 -0
  147. package/dist/services/slack.js.map +1 -0
  148. package/dist/services/stripe.d.ts +275 -0
  149. package/dist/services/stripe.d.ts.map +1 -0
  150. package/dist/services/stripe.js +229 -0
  151. package/dist/services/stripe.js.map +1 -0
  152. package/dist/services/supabase.d.ts.map +1 -0
  153. package/dist/services/supabase.js +328 -0
  154. package/dist/services/supabase.js.map +1 -0
  155. package/dist/services/teams.d.ts +224 -0
  156. package/dist/services/teams.d.ts.map +1 -0
  157. package/dist/services/teams.js +229 -0
  158. package/dist/services/teams.js.map +1 -0
  159. package/dist/services/telegram.d.ts.map +1 -0
  160. package/dist/services/telegram.js +247 -0
  161. package/dist/services/telegram.js.map +1 -0
  162. package/dist/services/trello.d.ts +160 -0
  163. package/dist/services/trello.d.ts.map +1 -0
  164. package/dist/services/trello.js +194 -0
  165. package/dist/services/trello.js.map +1 -0
  166. package/dist/services/twilio.d.ts +126 -0
  167. package/dist/services/twilio.d.ts.map +1 -0
  168. package/dist/services/twilio.js +153 -0
  169. package/dist/services/twilio.js.map +1 -0
  170. package/dist/services/whatsapp.d.ts.map +1 -0
  171. package/dist/services/whatsapp.js +253 -0
  172. package/dist/services/whatsapp.js.map +1 -0
  173. package/dist/services/zendesk.d.ts +134 -0
  174. package/dist/services/zendesk.d.ts.map +1 -0
  175. package/dist/services/zendesk.js +148 -0
  176. package/dist/services/zendesk.js.map +1 -0
  177. package/dist/tools/script.d.ts +21 -0
  178. package/dist/tools/script.d.ts.map +1 -0
  179. package/dist/tools/script.js +136 -0
  180. package/dist/tools/script.js.map +1 -0
  181. package/package.json +98 -0
@@ -0,0 +1,445 @@
1
+ /**
2
+ * Claude Agent Workflow Actions for marktoflow
3
+ *
4
+ * Provides workflow action handlers that expose the full Claude Agent SDK
5
+ * capabilities to markdown workflows, including:
6
+ * - Agentic task execution with built-in tools
7
+ * - Subagent delegation
8
+ * - Custom MCP tool integration
9
+ * - Session management
10
+ * - Streaming with callbacks
11
+ */
12
+ import { z } from 'zod';
13
+ import { ClaudeAgentClient, createCustomTool, createMcpServer, } from './claude-agent.js';
14
+ // ============================================================================
15
+ // Workflow Action Schemas
16
+ // ============================================================================
17
+ /**
18
+ * Schema for agent.run action
19
+ */
20
+ export const AgentRunSchema = z.object({
21
+ prompt: z.string().describe('The task for the agent to perform'),
22
+ tools: z
23
+ .array(z.enum([
24
+ 'Read',
25
+ 'Write',
26
+ 'Edit',
27
+ 'Bash',
28
+ 'Glob',
29
+ 'Grep',
30
+ 'WebSearch',
31
+ 'WebFetch',
32
+ 'Task',
33
+ 'TodoWrite',
34
+ ]))
35
+ .optional()
36
+ .describe('Built-in tools to enable'),
37
+ model: z.string().optional().describe('Model to use'),
38
+ cwd: z.string().optional().describe('Working directory'),
39
+ permissionMode: z
40
+ .enum(['default', 'acceptEdits', 'bypassPermissions', 'plan'])
41
+ .optional()
42
+ .describe('Permission mode for tool execution'),
43
+ maxTurns: z.number().optional().describe('Maximum conversation turns'),
44
+ maxBudgetUsd: z.number().optional().describe('Maximum spending in USD'),
45
+ systemPrompt: z.string().optional().describe('Custom system prompt'),
46
+ resume: z.string().optional().describe('Session ID to resume'),
47
+ });
48
+ /**
49
+ * Schema for agent.codeReview action
50
+ */
51
+ export const AgentCodeReviewSchema = z.object({
52
+ prompt: z.string().describe('What code to review'),
53
+ focusAreas: z
54
+ .array(z.string())
55
+ .optional()
56
+ .describe('Areas to focus on (security, performance, quality)'),
57
+ severity: z
58
+ .enum(['all', 'critical', 'high', 'medium'])
59
+ .optional()
60
+ .describe('Minimum severity to report'),
61
+ outputFormat: z.enum(['markdown', 'json', 'sarif']).optional().describe('Output format'),
62
+ });
63
+ /**
64
+ * Schema for agent.codeModify action
65
+ */
66
+ export const AgentCodeModifySchema = z.object({
67
+ prompt: z.string().describe('What modifications to make'),
68
+ files: z.array(z.string()).optional().describe('Specific files to modify'),
69
+ dryRun: z.boolean().optional().describe('Preview changes without applying'),
70
+ createBackup: z.boolean().optional().describe('Create backup before modifying'),
71
+ });
72
+ /**
73
+ * Schema for agent.research action
74
+ */
75
+ export const AgentResearchSchema = z.object({
76
+ prompt: z.string().describe('Research topic or question'),
77
+ sources: z
78
+ .array(z.enum(['web', 'codebase', 'docs']))
79
+ .optional()
80
+ .describe('Sources to search'),
81
+ depth: z.enum(['quick', 'thorough', 'comprehensive']).optional().describe('Research depth'),
82
+ });
83
+ /**
84
+ * Schema for agent.withSubagents action
85
+ */
86
+ export const AgentWithSubagentsSchema = z.object({
87
+ prompt: z.string().describe('Main task for orchestration'),
88
+ agents: z
89
+ .record(z.object({
90
+ description: z.string(),
91
+ tools: z.array(z.string()).optional(),
92
+ prompt: z.string().optional(),
93
+ model: z.enum(['sonnet', 'opus', 'haiku']).optional(),
94
+ }))
95
+ .describe('Subagent definitions'),
96
+ });
97
+ /**
98
+ * Schema for agent.withMcp action
99
+ */
100
+ export const AgentWithMcpSchema = z.object({
101
+ prompt: z.string().describe('Task to perform'),
102
+ mcpServers: z
103
+ .record(z.object({
104
+ type: z.enum(['stdio', 'http', 'sse']),
105
+ command: z.string().optional(),
106
+ args: z.array(z.string()).optional(),
107
+ url: z.string().optional(),
108
+ env: z.record(z.string()).optional(),
109
+ }))
110
+ .describe('MCP server configurations'),
111
+ });
112
+ // ============================================================================
113
+ // Workflow Action Handlers
114
+ // ============================================================================
115
+ /**
116
+ * Create a workflow-compatible Claude Agent client with action handlers
117
+ *
118
+ * Returns an object with methods that can be called from workflow actions:
119
+ * - agent.run
120
+ * - agent.codeReview
121
+ * - agent.codeModify
122
+ * - agent.research
123
+ * - agent.withSubagents
124
+ * - agent.withMcp
125
+ */
126
+ export function createAgentActions(baseOptions) {
127
+ const client = new ClaudeAgentClient(baseOptions);
128
+ return {
129
+ /**
130
+ * Run an agentic task with full capabilities
131
+ *
132
+ * Usage in workflow:
133
+ * ```yaml
134
+ * action: agent.run
135
+ * inputs:
136
+ * prompt: "Find and fix all TypeScript errors"
137
+ * tools: [Read, Edit, Bash, Glob]
138
+ * permissionMode: acceptEdits
139
+ * ```
140
+ */
141
+ async run(inputs) {
142
+ const parsed = AgentRunSchema.parse(inputs);
143
+ return client.run(parsed.prompt, {
144
+ allowedTools: parsed.tools,
145
+ model: parsed.model,
146
+ cwd: parsed.cwd,
147
+ permissionMode: parsed.permissionMode,
148
+ maxTurns: parsed.maxTurns,
149
+ maxBudgetUsd: parsed.maxBudgetUsd,
150
+ systemPrompt: parsed.systemPrompt,
151
+ resume: parsed.resume,
152
+ });
153
+ },
154
+ /**
155
+ * Perform a comprehensive code review
156
+ *
157
+ * Usage in workflow:
158
+ * ```yaml
159
+ * action: agent.codeReview
160
+ * inputs:
161
+ * prompt: "Review the authentication module for security issues"
162
+ * focusAreas: [security, performance]
163
+ * outputFormat: json
164
+ * ```
165
+ */
166
+ async codeReview(inputs) {
167
+ const parsed = AgentCodeReviewSchema.parse(inputs);
168
+ const focusAreas = parsed.focusAreas || ['security', 'performance', 'quality', 'maintainability'];
169
+ const severity = parsed.severity || 'all';
170
+ const outputFormat = parsed.outputFormat || 'markdown';
171
+ const systemPrompt = `You are an expert code reviewer. Focus on these areas: ${focusAreas.join(', ')}.
172
+ Report issues with severity ${severity === 'all' ? 'all levels' : `${severity} and above`}.
173
+ Format your response as ${outputFormat}.`;
174
+ return client.codeReview(parsed.prompt, {
175
+ systemPrompt,
176
+ outputFormat: outputFormat === 'json'
177
+ ? {
178
+ type: 'json_schema',
179
+ schema: {
180
+ type: 'object',
181
+ properties: {
182
+ issues: {
183
+ type: 'array',
184
+ items: {
185
+ type: 'object',
186
+ properties: {
187
+ file: { type: 'string' },
188
+ line: { type: 'number' },
189
+ severity: { type: 'string' },
190
+ category: { type: 'string' },
191
+ description: { type: 'string' },
192
+ suggestion: { type: 'string' },
193
+ },
194
+ },
195
+ },
196
+ summary: { type: 'string' },
197
+ recommendation: { type: 'string' },
198
+ },
199
+ },
200
+ }
201
+ : undefined,
202
+ });
203
+ },
204
+ /**
205
+ * Modify code with agent assistance
206
+ *
207
+ * Usage in workflow:
208
+ * ```yaml
209
+ * action: agent.codeModify
210
+ * inputs:
211
+ * prompt: "Add TypeScript types to all function parameters"
212
+ * files: [src/utils.ts, src/helpers.ts]
213
+ * dryRun: false
214
+ * ```
215
+ */
216
+ async codeModify(inputs) {
217
+ const parsed = AgentCodeModifySchema.parse(inputs);
218
+ let prompt = parsed.prompt;
219
+ if (parsed.files && parsed.files.length > 0) {
220
+ prompt += `\n\nFocus on these files: ${parsed.files.join(', ')}`;
221
+ }
222
+ if (parsed.dryRun) {
223
+ prompt += '\n\nThis is a dry run - describe the changes but do not apply them.';
224
+ return client.analyzeCode(prompt);
225
+ }
226
+ return client.modifyCode(prompt, {
227
+ enableFileCheckpointing: parsed.createBackup,
228
+ });
229
+ },
230
+ /**
231
+ * Research a topic using web and codebase
232
+ *
233
+ * Usage in workflow:
234
+ * ```yaml
235
+ * action: agent.research
236
+ * inputs:
237
+ * prompt: "What are the best practices for error handling in TypeScript?"
238
+ * sources: [web, codebase]
239
+ * depth: thorough
240
+ * ```
241
+ */
242
+ async research(inputs) {
243
+ const parsed = AgentResearchSchema.parse(inputs);
244
+ const sources = parsed.sources || ['web', 'codebase'];
245
+ const depth = parsed.depth || 'thorough';
246
+ // Determine tools based on sources
247
+ const tools = [];
248
+ if (sources.includes('web')) {
249
+ tools.push('WebSearch', 'WebFetch');
250
+ }
251
+ if (sources.includes('codebase') || sources.includes('docs')) {
252
+ tools.push('Read', 'Glob', 'Grep');
253
+ }
254
+ // Adjust max turns based on depth
255
+ const maxTurns = depth === 'quick' ? 10 : depth === 'thorough' ? 25 : 50;
256
+ return client.runWithTools(parsed.prompt, tools, { maxTurns });
257
+ },
258
+ /**
259
+ * Orchestrate multiple specialized subagents
260
+ *
261
+ * Usage in workflow:
262
+ * ```yaml
263
+ * action: agent.withSubagents
264
+ * inputs:
265
+ * prompt: "Analyze and improve the API module"
266
+ * agents:
267
+ * analyzer:
268
+ * description: "Analyze code structure"
269
+ * tools: [Read, Glob, Grep]
270
+ * improver:
271
+ * description: "Suggest and implement improvements"
272
+ * tools: [Read, Edit, Write]
273
+ * ```
274
+ */
275
+ async withSubagents(inputs) {
276
+ const parsed = AgentWithSubagentsSchema.parse(inputs);
277
+ return client.runWithSubagents(parsed.prompt, parsed.agents);
278
+ },
279
+ /**
280
+ * Run with external MCP servers
281
+ *
282
+ * Usage in workflow:
283
+ * ```yaml
284
+ * action: agent.withMcp
285
+ * inputs:
286
+ * prompt: "Open the browser and navigate to example.com"
287
+ * mcpServers:
288
+ * playwright:
289
+ * type: stdio
290
+ * command: npx
291
+ * args: ["@playwright/mcp@latest"]
292
+ * ```
293
+ */
294
+ async withMcp(inputs) {
295
+ const parsed = AgentWithMcpSchema.parse(inputs);
296
+ return client.run(parsed.prompt, {
297
+ mcpServers: parsed.mcpServers,
298
+ });
299
+ },
300
+ /**
301
+ * Generate a simple response (backwards compatible)
302
+ */
303
+ async generate(inputs) {
304
+ return client.generate(inputs);
305
+ },
306
+ /**
307
+ * Resume a previous session
308
+ */
309
+ async resume(inputs) {
310
+ return client.resumeSession(inputs.sessionId, inputs.prompt);
311
+ },
312
+ /**
313
+ * Get the underlying client for advanced use
314
+ */
315
+ getClient() {
316
+ return client;
317
+ },
318
+ };
319
+ }
320
+ // ============================================================================
321
+ // Preset Subagent Configurations
322
+ // ============================================================================
323
+ /**
324
+ * Preset subagent configurations for common tasks
325
+ */
326
+ export const PresetSubagents = {
327
+ /**
328
+ * Code review team
329
+ */
330
+ codeReviewTeam: {
331
+ 'code-reviewer': {
332
+ description: 'Review code for quality, correctness, and best practices',
333
+ tools: ['Read', 'Glob', 'Grep'],
334
+ prompt: `You are a senior code reviewer. Focus on:
335
+ - Code quality and readability
336
+ - Potential bugs and edge cases
337
+ - Design patterns and architecture
338
+ - Performance considerations`,
339
+ },
340
+ 'security-auditor': {
341
+ description: 'Audit code for security vulnerabilities',
342
+ tools: ['Read', 'Glob', 'Grep'],
343
+ prompt: `You are a security expert. Look for:
344
+ - OWASP Top 10 vulnerabilities
345
+ - Injection attacks (SQL, XSS, command)
346
+ - Authentication and authorization issues
347
+ - Data exposure and privacy concerns
348
+ - Cryptographic weaknesses`,
349
+ },
350
+ 'test-analyzer': {
351
+ description: 'Analyze test coverage and quality',
352
+ tools: ['Read', 'Glob', 'Grep', 'Bash'],
353
+ prompt: `You are a testing expert. Analyze:
354
+ - Test coverage gaps
355
+ - Missing edge case tests
356
+ - Test quality and maintainability
357
+ - Suggest improvements`,
358
+ },
359
+ },
360
+ /**
361
+ * Documentation team
362
+ */
363
+ documentationTeam: {
364
+ 'doc-writer': {
365
+ description: 'Write clear documentation',
366
+ tools: ['Read', 'Write', 'Glob'],
367
+ prompt: `You are a technical writer. Create:
368
+ - Clear, concise documentation
369
+ - Code examples and usage guides
370
+ - API documentation
371
+ - README files`,
372
+ },
373
+ 'example-creator': {
374
+ description: 'Create code examples',
375
+ tools: ['Read', 'Write', 'Glob'],
376
+ prompt: `You are an example creator. Write:
377
+ - Working code examples
378
+ - Step-by-step tutorials
379
+ - Best practice demonstrations`,
380
+ },
381
+ },
382
+ /**
383
+ * Refactoring team
384
+ */
385
+ refactoringTeam: {
386
+ analyzer: {
387
+ description: 'Analyze code for refactoring opportunities',
388
+ tools: ['Read', 'Glob', 'Grep'],
389
+ prompt: `You analyze code for:
390
+ - Code smells and anti-patterns
391
+ - Duplication
392
+ - Complex functions
393
+ - Tight coupling`,
394
+ },
395
+ refactorer: {
396
+ description: 'Implement refactoring changes',
397
+ tools: ['Read', 'Edit', 'Write', 'Glob'],
398
+ prompt: `You implement refactoring:
399
+ - Extract methods and classes
400
+ - Simplify complex logic
401
+ - Apply design patterns
402
+ - Maintain functionality`,
403
+ },
404
+ verifier: {
405
+ description: 'Verify refactoring correctness',
406
+ tools: ['Read', 'Bash', 'Glob'],
407
+ prompt: `You verify changes:
408
+ - Run tests
409
+ - Check type safety
410
+ - Verify behavior preservation`,
411
+ },
412
+ },
413
+ };
414
+ // ============================================================================
415
+ // MCP Tool Helpers
416
+ // ============================================================================
417
+ /**
418
+ * Helper to create workflow-integrated MCP tools
419
+ *
420
+ * Example usage:
421
+ * ```typescript
422
+ * const dbTool = await createWorkflowTool(
423
+ * 'query_database',
424
+ * 'Query the application database',
425
+ * z.object({ query: z.string() }),
426
+ * async (args) => {
427
+ * const result = await db.query(args.query);
428
+ * return JSON.stringify(result);
429
+ * }
430
+ * );
431
+ * ```
432
+ */
433
+ export async function createWorkflowTool(name, description, schema, handler) {
434
+ return createCustomTool(name, description, schema, async (args) => ({
435
+ content: [{ type: 'text', text: await handler(args) }],
436
+ }));
437
+ }
438
+ /**
439
+ * Create an MCP server from workflow tool definitions
440
+ */
441
+ export async function createWorkflowMcpServer(name, tools) {
442
+ const mcpTools = await Promise.all(tools.map((t) => createWorkflowTool(t.name, t.description, t.schema, t.handler)));
443
+ return createMcpServer(name, mcpTools);
444
+ }
445
+ //# sourceMappingURL=claude-agent-workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-agent-workflow.js","sourceRoot":"","sources":["../../src/adapters/claude-agent-workflow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,189 @@
1
+ /**
2
+ * Claude Agent SDK Adapter for marktoflow
3
+ *
4
+ * This adapter provides deep integration with the Claude Agent SDK,
5
+ * enabling agentic workflows with built-in tools, MCP support,
6
+ * session management, and streaming capabilities.
7
+ *
8
+ * Unlike the CLI-based claude-code adapter, this uses the SDK directly
9
+ * for lower latency and richer functionality.
10
+ */
11
+ import { SDKInitializer } from '@marktoflow/core';
12
+ import { ClaudeAgentOptions, SDKMessage, SDKResultMessage, AgentResult, StreamCallback, BuiltInTool, SubagentDefinition, McpServerConfig, HookCallback, HookEvent, ToolPermissionHandler, ToolPermissionResult, PermissionMode } from './claude-agent-types.js';
13
+ /**
14
+ * Client for interacting with Claude via the Agent SDK
15
+ *
16
+ * Provides multiple interfaces for different use cases:
17
+ * - generate(): Simple prompt-response (compatible with old interface)
18
+ * - query(): Full agentic capabilities with streaming
19
+ * - runWithTools(): Execute with specific built-in tools
20
+ * - runWithSubagents(): Delegate to specialized subagents
21
+ */
22
+ export declare class ClaudeAgentClient {
23
+ private sdk;
24
+ private options;
25
+ private currentQuery;
26
+ private sessionId;
27
+ constructor(options?: ClaudeAgentOptions);
28
+ /**
29
+ * Initialize the Agent SDK (lazy loading)
30
+ */
31
+ private getSDK;
32
+ /**
33
+ * Generate a response from Claude (simple interface)
34
+ *
35
+ * This method is compatible with the old CLI-based interface,
36
+ * but uses the Agent SDK under the hood for better performance.
37
+ *
38
+ * @param inputs - Prompt string or object with prompt and options
39
+ * @returns The generated response text
40
+ */
41
+ generate(inputs: {
42
+ prompt: string;
43
+ model?: string;
44
+ } | string): Promise<string>;
45
+ /**
46
+ * Run an agentic query with full capabilities
47
+ *
48
+ * @param prompt - The task for the agent to perform
49
+ * @param options - Override options for this query
50
+ * @returns Complete result with all messages and metadata
51
+ */
52
+ run(prompt: string, options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
53
+ /**
54
+ * Stream messages from an agentic query
55
+ *
56
+ * @param prompt - The task for the agent to perform
57
+ * @param callback - Called for each message received
58
+ * @param options - Override options for this query
59
+ * @returns Complete result after streaming finishes
60
+ */
61
+ stream(prompt: string, callback: StreamCallback, options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
62
+ /**
63
+ * Get the async generator for a query
64
+ *
65
+ * Use this for fine-grained control over message processing.
66
+ *
67
+ * @param prompt - The task for the agent to perform
68
+ * @param options - Override options for this query
69
+ * @returns Async generator yielding SDK messages
70
+ */
71
+ query(prompt: string, options?: Partial<ClaudeAgentOptions>): AsyncGenerator<SDKMessage, void, unknown>;
72
+ /**
73
+ * Run with specific built-in tools enabled
74
+ *
75
+ * @param prompt - The task for the agent to perform
76
+ * @param tools - List of tools to enable
77
+ * @param options - Additional options
78
+ */
79
+ runWithTools(prompt: string, tools: BuiltInTool[], options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
80
+ /**
81
+ * Run a code analysis task
82
+ *
83
+ * @param prompt - What to analyze
84
+ * @param options - Additional options
85
+ */
86
+ analyzeCode(prompt: string, options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
87
+ /**
88
+ * Run a code modification task
89
+ *
90
+ * @param prompt - What to modify
91
+ * @param options - Additional options
92
+ */
93
+ modifyCode(prompt: string, options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
94
+ /**
95
+ * Run a bash command task
96
+ *
97
+ * @param prompt - What commands to run
98
+ * @param options - Additional options
99
+ */
100
+ runCommands(prompt: string, options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
101
+ /**
102
+ * Run a web research task
103
+ *
104
+ * @param prompt - What to research
105
+ * @param options - Additional options
106
+ */
107
+ webResearch(prompt: string, options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
108
+ /**
109
+ * Run with subagents for specialized tasks
110
+ *
111
+ * @param prompt - The main task
112
+ * @param agents - Subagent definitions
113
+ * @param options - Additional options
114
+ */
115
+ runWithSubagents(prompt: string, agents: Record<string, SubagentDefinition>, options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
116
+ /**
117
+ * Run a code review with specialized subagents
118
+ *
119
+ * @param prompt - What to review
120
+ * @param options - Additional options
121
+ */
122
+ codeReview(prompt: string, options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
123
+ /**
124
+ * Resume a previous session
125
+ *
126
+ * @param sessionId - The session ID to resume
127
+ * @param prompt - New prompt to continue with
128
+ * @param options - Additional options
129
+ */
130
+ resumeSession(sessionId: string, prompt: string, options?: Partial<ClaudeAgentOptions>): Promise<AgentResult>;
131
+ /**
132
+ * Get the last session ID
133
+ */
134
+ getSessionId(): string | null;
135
+ /**
136
+ * Interrupt the current query
137
+ */
138
+ interrupt(): Promise<void>;
139
+ /**
140
+ * Convert marktoflow options to Agent SDK options
141
+ */
142
+ private convertToSDKOptions;
143
+ /**
144
+ * OpenAI-compatible chat interface for workflow compatibility
145
+ */
146
+ chat: {
147
+ completions: (inputs: {
148
+ model?: string;
149
+ messages: Array<{
150
+ role: string;
151
+ content: string;
152
+ }>;
153
+ }) => Promise<{
154
+ choices: Array<{
155
+ message: {
156
+ content: string;
157
+ };
158
+ }>;
159
+ }>;
160
+ };
161
+ }
162
+ /**
163
+ * Create a custom MCP tool for use with the Agent SDK
164
+ *
165
+ * @param name - Tool name
166
+ * @param description - Tool description
167
+ * @param schema - Zod schema for input validation
168
+ * @param handler - Function to execute when tool is called
169
+ */
170
+ export declare function createCustomTool<T>(name: string, description: string, schema: T, handler: (args: unknown) => Promise<{
171
+ content: Array<{
172
+ type: string;
173
+ text: string;
174
+ }>;
175
+ }>): Promise<unknown>;
176
+ /**
177
+ * Create an in-process MCP server
178
+ *
179
+ * @param name - Server name
180
+ * @param tools - Array of tools created with createCustomTool
181
+ * @param version - Server version
182
+ */
183
+ export declare function createMcpServer(name: string, tools: unknown[], version?: string): Promise<unknown>;
184
+ /**
185
+ * Initializer for the SDK Registry
186
+ */
187
+ export declare const ClaudeAgentInitializer: SDKInitializer;
188
+ export type { ClaudeAgentOptions, SDKMessage, SDKResultMessage, AgentResult, StreamCallback, BuiltInTool, SubagentDefinition, McpServerConfig, HookCallback, HookEvent, ToolPermissionHandler, ToolPermissionResult, PermissionMode, };
189
+ //# sourceMappingURL=claude-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-agent.d.ts","sourceRoot":"","sources":["../../src/adapters/claude-agent.ts"],"names":[],"mappings":"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"}