@marktoflow/integrations 2.0.0-alpha.4 → 2.0.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -22,11 +22,13 @@ Standard integrations for marktoflow - connect to Slack, GitHub, Jira, Gmail, an
22
22
  - **Confluence** - Wiki page management
23
23
  - **HTTP** - Generic HTTP requests with auth
24
24
 
25
- ### AI Agent Adapters (3)
25
+ ### AI Agent Adapters (4)
26
26
 
27
27
  - **Ollama** - Local LLM integration
28
28
  - **Claude Code** - Anthropic Claude integration
29
29
  - **OpenCode** - OpenCode AI integration
30
+ - **GitHub Copilot** - GitHub Copilot CLI integration
31
+ - **GitHub Copilot** - GitHub Copilot CLI integration
30
32
 
31
33
  ## Installation
32
34
 
@@ -391,6 +393,156 @@ OpenCode AI integration.
391
393
  export OPENCODE_API_KEY=your-key
392
394
  ```
393
395
 
396
+ ### GitHub Copilot
397
+
398
+ GitHub Copilot CLI integration with advanced agentic capabilities.
399
+
400
+ **Requirements**:
401
+
402
+ - GitHub Copilot subscription (Individual, Business, or Enterprise)
403
+ - Copilot CLI installed: [Installation Guide](https://docs.github.com/en/copilot/how-tos/set-up/install-copilot-cli)
404
+
405
+ **Installation**:
406
+
407
+ ```bash
408
+ # Install Copilot CLI
409
+ npm install -g @githubnext/github-copilot-cli
410
+
411
+ # Verify installation
412
+ copilot --version
413
+ ```
414
+
415
+ **Authentication**:
416
+
417
+ The GitHub Copilot adapter uses **OAuth authentication** managed by the Copilot CLI, not API keys. Authentication is a one-time setup:
418
+
419
+ ```bash
420
+ # Authenticate with GitHub via OAuth
421
+ copilot auth login
422
+ ```
423
+
424
+ This command will:
425
+
426
+ 1. Open your browser to GitHub's OAuth consent page
427
+ 2. Prompt you to authorize GitHub Copilot CLI
428
+ 3. Save the OAuth token locally in `~/.copilot/`
429
+
430
+ **No API keys are required** - the adapter automatically uses the CLI's stored OAuth token. Your GitHub Copilot subscription determines your access level.
431
+
432
+ **Verify Authentication**:
433
+
434
+ ```bash
435
+ # Test CLI connectivity
436
+ copilot --version
437
+ copilot ping
438
+ ```
439
+
440
+ **Basic Usage**:
441
+
442
+ ```yaml
443
+ tools:
444
+ copilot:
445
+ adapter: github-copilot
446
+ config:
447
+ model: gpt-4.1 # Optional, defaults to gpt-4.1
448
+
449
+ steps:
450
+ - action: copilot.send
451
+ inputs:
452
+ prompt: 'Explain TypeScript generics'
453
+ output_variable: explanation
454
+ ```
455
+
456
+ **Streaming Responses**:
457
+
458
+ ```yaml
459
+ steps:
460
+ - action: copilot.stream
461
+ inputs:
462
+ prompt: 'Write a function to calculate fibonacci'
463
+ onChunk: '${print_chunk}' # Callback for each chunk
464
+ output_variable: code
465
+ ```
466
+
467
+ **With File Attachments**:
468
+
469
+ ```yaml
470
+ steps:
471
+ - action: copilot.send
472
+ inputs:
473
+ prompt: 'Review this code for security issues'
474
+ attachments:
475
+ - type: file
476
+ path: ./src/app.ts
477
+ displayName: app.ts
478
+ output_variable: review
479
+ ```
480
+
481
+ **System Message Customization**:
482
+
483
+ ```yaml
484
+ steps:
485
+ - action: copilot.send
486
+ inputs:
487
+ prompt: 'Help me optimize this function'
488
+ systemMessage: |
489
+ You are a performance optimization expert.
490
+ Focus on time and space complexity.
491
+ output_variable: suggestions
492
+ ```
493
+
494
+ **External CLI Server**:
495
+
496
+ For development or shared CLI instances:
497
+
498
+ ```bash
499
+ # Terminal 1: Start CLI in server mode
500
+ copilot --server --port 4321
501
+
502
+ # Terminal 2: Use in workflow
503
+ ```
504
+
505
+ ```yaml
506
+ tools:
507
+ copilot:
508
+ adapter: github-copilot
509
+ auth:
510
+ cli_url: localhost:4321 # Connect to external server
511
+ ```
512
+
513
+ **Configuration Options**:
514
+
515
+ - `model`: Model to use (gpt-4.1, gpt-5, claude-sonnet-4.5, etc.)
516
+ - `cli_path`: Custom path to CLI binary (default: 'copilot')
517
+ - `cli_url`: External CLI server URL (mutually exclusive with cli_path)
518
+ - `autoStart`: Auto-start CLI (default: true)
519
+ - `logLevel`: Log verbosity (info, debug, error, warning, none, all)
520
+
521
+ **Troubleshooting Authentication**:
522
+
523
+ If you encounter authentication issues:
524
+
525
+ ```bash
526
+ # Check if authenticated
527
+ copilot ping
528
+
529
+ # Re-authenticate if needed
530
+ copilot auth logout
531
+ copilot auth login
532
+
533
+ # Verify subscription status at https://github.com/settings/copilot
534
+ ```
535
+
536
+ **Note**: The adapter does **not** require or use API keys. All authentication is handled through the CLI's OAuth flow.
537
+
538
+ **Advanced Features** (See [COPILOT_SDK_ANALYSIS.md](../../docs/COPILOT_SDK_ANALYSIS.md)):
539
+
540
+ - Custom tool definitions
541
+ - MCP server integration
542
+ - Session persistence
543
+ - Infinite sessions (automatic context compaction)
544
+ - Multi-turn conversations
545
+
394
546
  ## Advanced Usage
395
547
 
396
548
  ### Custom Integration
@@ -0,0 +1,78 @@
1
+ import { SDKInitializer } from '@marktoflow/core';
2
+ type LogLevel = 'info' | 'none' | 'error' | 'warning' | 'debug' | 'all';
3
+ /**
4
+ * GitHub Copilot adapter client that wraps CopilotClient
5
+ * and provides a simplified interface for marktoflow workflows.
6
+ */
7
+ export declare class GitHubCopilotClient {
8
+ private client;
9
+ private defaultModel;
10
+ constructor(options?: {
11
+ cliPath?: string;
12
+ model?: string;
13
+ cliUrl?: string;
14
+ autoStart?: boolean;
15
+ logLevel?: LogLevel;
16
+ });
17
+ /**
18
+ * Send a message to Copilot and wait for the complete response.
19
+ */
20
+ send(inputs: {
21
+ prompt: string;
22
+ model?: string;
23
+ attachments?: Array<{
24
+ type: 'file' | 'directory';
25
+ path: string;
26
+ displayName?: string;
27
+ }>;
28
+ systemMessage?: string;
29
+ }): Promise<string>;
30
+ /**
31
+ * Send a message to Copilot and stream the response.
32
+ * Returns the full response after streaming completes.
33
+ */
34
+ stream(inputs: {
35
+ prompt: string;
36
+ model?: string;
37
+ attachments?: Array<{
38
+ type: 'file' | 'directory';
39
+ path: string;
40
+ displayName?: string;
41
+ }>;
42
+ systemMessage?: string;
43
+ onChunk?: (chunk: string) => void;
44
+ onComplete?: (fullResponse: string) => void;
45
+ }): Promise<string>;
46
+ /**
47
+ * Create a persistent session for multi-turn conversations.
48
+ * Caller is responsible for managing session lifecycle.
49
+ */
50
+ createSession(options?: {
51
+ model?: string;
52
+ sessionId?: string;
53
+ systemMessage?: string;
54
+ }): Promise<import("@github/copilot-sdk").CopilotSession>;
55
+ /**
56
+ * Stop the Copilot CLI client.
57
+ */
58
+ stop(): Promise<void>;
59
+ /**
60
+ * Ping the Copilot CLI to check connectivity.
61
+ */
62
+ ping(): Promise<{
63
+ message: string;
64
+ timestamp: number;
65
+ }>;
66
+ /**
67
+ * Check if the Copilot CLI is authenticated and ready.
68
+ * Returns true if ping succeeds, false otherwise.
69
+ */
70
+ checkAuth(): Promise<boolean>;
71
+ }
72
+ /**
73
+ * SDK Initializer for GitHub Copilot.
74
+ * Supports both authentication via CLI path and external CLI server URL.
75
+ */
76
+ export declare const GitHubCopilotInitializer: SDKInitializer;
77
+ export {};
78
+ //# sourceMappingURL=github-copilot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-copilot.d.ts","sourceRoot":"","sources":["../../src/adapters/github-copilot.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE9D,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,KAAK,CAAC;AAExE;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,YAAY,CAAS;gBAG3B,OAAO,GAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;KAChB;IAyBR;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,KAAK,CAAC;YAClB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;YAC3B,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,CAAC,EAAE,MAAM,CAAC;SACtB,CAAC,CAAC;QACH,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBnB;;;OAGG;IACG,MAAM,CAAC,MAAM,EAAE;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,KAAK,CAAC;YAClB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;YAC3B,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,CAAC,EAAE,MAAM,CAAC;SACtB,CAAC,CAAC;QACH,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;QAClC,UAAU,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;KAC7C,GAAG,OAAO,CAAC,MAAM,CAAC;IAgDnB;;;OAGG;IACG,aAAa,CACjB,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;KACnB;IAaR;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAI7D;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;CAQpC;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,cAatC,CAAC"}
@@ -0,0 +1,161 @@
1
+ import { CopilotClient } from '@github/copilot-sdk';
2
+ /**
3
+ * GitHub Copilot adapter client that wraps CopilotClient
4
+ * and provides a simplified interface for marktoflow workflows.
5
+ */
6
+ export class GitHubCopilotClient {
7
+ client;
8
+ defaultModel;
9
+ constructor(options = {}) {
10
+ // cliUrl and cliPath are mutually exclusive
11
+ const clientConfig = {
12
+ autoStart: options.autoStart ?? true,
13
+ logLevel: options.logLevel || 'info',
14
+ };
15
+ if (options.cliUrl) {
16
+ // When connecting to external server, don't set cliPath
17
+ clientConfig.cliUrl = options.cliUrl;
18
+ }
19
+ else {
20
+ // When spawning CLI, set cliPath
21
+ clientConfig.cliPath = options.cliPath || 'copilot';
22
+ }
23
+ this.client = new CopilotClient(clientConfig);
24
+ this.defaultModel = options.model || 'gpt-4.1';
25
+ }
26
+ /**
27
+ * Send a message to Copilot and wait for the complete response.
28
+ */
29
+ async send(inputs) {
30
+ const session = await this.client.createSession({
31
+ model: inputs.model || this.defaultModel,
32
+ systemMessage: inputs.systemMessage
33
+ ? {
34
+ content: inputs.systemMessage,
35
+ }
36
+ : undefined,
37
+ });
38
+ try {
39
+ const response = await session.sendAndWait({
40
+ prompt: inputs.prompt,
41
+ attachments: inputs.attachments,
42
+ });
43
+ return response?.data.content || '';
44
+ }
45
+ finally {
46
+ await session.destroy();
47
+ }
48
+ }
49
+ /**
50
+ * Send a message to Copilot and stream the response.
51
+ * Returns the full response after streaming completes.
52
+ */
53
+ async stream(inputs) {
54
+ const session = await this.client.createSession({
55
+ model: inputs.model || this.defaultModel,
56
+ streaming: true,
57
+ systemMessage: inputs.systemMessage
58
+ ? {
59
+ content: inputs.systemMessage,
60
+ }
61
+ : undefined,
62
+ });
63
+ let fullResponse = '';
64
+ return new Promise((resolve, reject) => {
65
+ session.on((event) => {
66
+ if (event.type === 'assistant.message_delta') {
67
+ const chunk = event.data.deltaContent;
68
+ fullResponse += chunk;
69
+ if (inputs.onChunk) {
70
+ inputs.onChunk(chunk);
71
+ }
72
+ }
73
+ else if (event.type === 'assistant.message') {
74
+ // Final message received
75
+ fullResponse = event.data.content || fullResponse;
76
+ }
77
+ else if (event.type === 'session.idle') {
78
+ // Session finished processing
79
+ if (inputs.onComplete) {
80
+ inputs.onComplete(fullResponse);
81
+ }
82
+ session
83
+ .destroy()
84
+ .then(() => resolve(fullResponse))
85
+ .catch(reject);
86
+ }
87
+ else if (event.type === 'session.error') {
88
+ reject(new Error(event.data.message || 'Session error occurred'));
89
+ }
90
+ });
91
+ // Send the message
92
+ session
93
+ .send({
94
+ prompt: inputs.prompt,
95
+ attachments: inputs.attachments,
96
+ })
97
+ .catch(reject);
98
+ });
99
+ }
100
+ /**
101
+ * Create a persistent session for multi-turn conversations.
102
+ * Caller is responsible for managing session lifecycle.
103
+ */
104
+ async createSession(options = {}) {
105
+ return this.client.createSession({
106
+ model: options.model || this.defaultModel,
107
+ sessionId: options.sessionId,
108
+ systemMessage: options.systemMessage
109
+ ? {
110
+ content: options.systemMessage,
111
+ }
112
+ : undefined,
113
+ });
114
+ }
115
+ /**
116
+ * Stop the Copilot CLI client.
117
+ */
118
+ async stop() {
119
+ const errors = await this.client.stop();
120
+ if (errors.length > 0) {
121
+ throw new Error(`Errors during stop: ${errors.map((e) => e.message).join(', ')}`);
122
+ }
123
+ }
124
+ /**
125
+ * Ping the Copilot CLI to check connectivity.
126
+ */
127
+ async ping() {
128
+ return this.client.ping();
129
+ }
130
+ /**
131
+ * Check if the Copilot CLI is authenticated and ready.
132
+ * Returns true if ping succeeds, false otherwise.
133
+ */
134
+ async checkAuth() {
135
+ try {
136
+ await this.ping();
137
+ return true;
138
+ }
139
+ catch (error) {
140
+ return false;
141
+ }
142
+ }
143
+ }
144
+ /**
145
+ * SDK Initializer for GitHub Copilot.
146
+ * Supports both authentication via CLI path and external CLI server URL.
147
+ */
148
+ export const GitHubCopilotInitializer = {
149
+ async initialize(_module, config) {
150
+ const options = config.options || {};
151
+ const auth = config.auth || {};
152
+ return new GitHubCopilotClient({
153
+ cliPath: auth['cli_path'] || options['cliPath'],
154
+ cliUrl: auth['cli_url'] || options['cliUrl'],
155
+ model: options['model'] || 'gpt-4.1',
156
+ autoStart: options['autoStart'] ?? true,
157
+ logLevel: options['logLevel'] || 'info',
158
+ });
159
+ },
160
+ };
161
+ //# sourceMappingURL=github-copilot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-copilot.js","sourceRoot":"","sources":["../../src/adapters/github-copilot.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -17,5 +17,6 @@ export { SlackSocketTrigger } from './services/slack-socket.js';
17
17
  export * from './adapters/ollama.js';
18
18
  export * from './adapters/claude-code.js';
19
19
  export * from './adapters/opencode.js';
20
+ export * from './adapters/github-copilot.js';
20
21
  export * from './tools/script.js';
21
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAuB/C,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,QAiCzD;AAGD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,KAAK,gBAAgB,IAAI,qBAAqB,EAC9C,KAAK,eAAe,IAAI,oBAAoB,EAC5C,KAAK,gBAAgB,IAAI,qBAAqB,EAC9C,KAAK,kBAAkB,IAAI,uBAAuB,GACnD,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,YAAY,EACZ,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,yBAAyB,GAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,KAAK,gBAAgB,IAAI,uBAAuB,EAChD,KAAK,eAAe,IAAI,sBAAsB,EAC9C,KAAK,gBAAgB,IAAI,uBAAuB,EAChD,KAAK,kBAAkB,IAAI,yBAAyB,GACrD,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,cAAc,EACd,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,2BAA2B,GAC5B,MAAM,+BAA+B,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,WAAW,EACX,KAAK,iBAAiB,IAAI,uBAAuB,EACjD,KAAK,oBAAoB,EACzB,KAAK,aAAa,IAAI,mBAAmB,GAC1C,MAAM,sBAAsB,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AAGnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGhE,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AAGvC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAwB/C,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,QAkCzD;AAGD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,KAAK,gBAAgB,IAAI,qBAAqB,EAC9C,KAAK,eAAe,IAAI,oBAAoB,EAC5C,KAAK,gBAAgB,IAAI,qBAAqB,EAC9C,KAAK,kBAAkB,IAAI,uBAAuB,GACnD,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,YAAY,EACZ,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,yBAAyB,GAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,KAAK,gBAAgB,IAAI,uBAAuB,EAChD,KAAK,eAAe,IAAI,sBAAsB,EAC9C,KAAK,gBAAgB,IAAI,uBAAuB,EAChD,KAAK,kBAAkB,IAAI,yBAAyB,GACrD,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,cAAc,EACd,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,2BAA2B,GAC5B,MAAM,+BAA+B,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,WAAW,EACX,KAAK,iBAAiB,IAAI,uBAAuB,EACjD,KAAK,oBAAoB,EACzB,KAAK,aAAa,IAAI,mBAAmB,GAC1C,MAAM,sBAAsB,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AAGnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGhE,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -14,6 +14,7 @@ import { HttpInitializer } from './services/http.js';
14
14
  import { OllamaInitializer } from './adapters/ollama.js';
15
15
  import { ClaudeCodeInitializer } from './adapters/claude-code.js';
16
16
  import { OpenCodeInitializer } from './adapters/opencode.js';
17
+ import { GitHubCopilotInitializer } from './adapters/github-copilot.js';
17
18
  // Tools
18
19
  import { ScriptInitializer } from './tools/script.js';
19
20
  export function registerIntegrations(registry) {
@@ -39,6 +40,7 @@ export function registerIntegrations(registry) {
39
40
  registry.registerInitializer('ollama', OllamaInitializer);
40
41
  registry.registerInitializer('claude-code', ClaudeCodeInitializer);
41
42
  registry.registerInitializer('opencode', OpenCodeInitializer);
43
+ registry.registerInitializer('github-copilot', GitHubCopilotInitializer);
42
44
  // Tools
43
45
  registry.registerInitializer('script', ScriptInitializer);
44
46
  }
@@ -62,6 +64,7 @@ export { SlackSocketTrigger } from './services/slack-socket.js';
62
64
  export * from './adapters/ollama.js';
63
65
  export * from './adapters/claude-code.js';
64
66
  export * from './adapters/opencode.js';
67
+ export * from './adapters/github-copilot.js';
65
68
  // Export tools
66
69
  export * from './tools/script.js';
67
70
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@marktoflow/integrations",
3
- "version": "2.0.0-alpha.4",
3
+ "version": "2.0.0-alpha.6",
4
4
  "description": "Standard integrations for marktoflow",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
8
8
  "repository": {
9
9
  "type": "git",
10
- "url": "https://github.com/scottgl9/marktoflow.git",
10
+ "url": "git+https://github.com/scottgl9/marktoflow.git",
11
11
  "directory": "packages/integrations"
12
12
  },
13
13
  "homepage": "https://github.com/scottgl9/marktoflow#readme",
@@ -27,7 +27,8 @@
27
27
  "clean": "rm -rf dist"
28
28
  },
29
29
  "dependencies": {
30
- "@marktoflow/core": "workspace:*",
30
+ "@github/copilot-sdk": "^0.1.18",
31
+ "@marktoflow/core": "2.0.0-alpha.6",
31
32
  "@microsoft/microsoft-graph-client": "^3.0.7",
32
33
  "@octokit/rest": "^22.0.1",
33
34
  "@opencode-ai/sdk": "^1.1.34",