@sowonai/crewx-cli 0.7.6 โ†’ 0.7.7

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
@@ -319,17 +319,97 @@ crewx execute \
319
319
 
320
320
  ## Environment Variables
321
321
 
322
+ ### Slack Configuration
323
+
324
+ | Variable | Default | Description |
325
+ |----------|---------|-------------|
326
+ | `SLACK_BOT_TOKEN` | - | Slack Bot Token (required for Slack integration) |
327
+ | `SLACK_SIGNING_SECRET` | - | Slack Signing Secret (required for Slack integration) |
328
+ | `SLACK_APP_TOKEN` | - | Slack App Token (required for Socket Mode) |
329
+ | `SLACK_MAX_RESPONSE_LENGTH` | `400000` | Maximum total response length (characters) |
330
+ | `SLACK_MAX_BLOCK_SIZE` | `2900` | Maximum characters per block (max: 3000) |
331
+
332
+ ### CrewX Configuration
333
+
334
+ | Variable | Default | Description |
335
+ |----------|---------|-------------|
336
+ | `CREWX_DEBUG` | - | Enable debug logging |
337
+ | `CREWX_CONFIG` | - | Custom path to crewx.yaml configuration file |
338
+ | `CREWX_PROVIDER` | - | Default AI provider |
339
+ | `CREWX_SLACK_LOG_CONVERSATIONS` | `false` | Enable Slack conversation logging |
340
+ | `CREWX_ENABLE_REMOTE_TEMPLATES` | `false` | Enable remote template repository |
341
+ | `CREWX_TEMPLATE_REPO` | - | Remote template repository URL |
342
+
343
+ ### Provider Timeout Configuration (milliseconds)
344
+
345
+ | Variable | Default | Description |
346
+ |----------|---------|-------------|
347
+ | `CREWCODE_TIMEOUT_CLAUDE_EXECUTE` | - | Claude execute mode timeout |
348
+ | `CREWCODE_TIMEOUT_CLAUDE_QUERY` | - | Claude query mode timeout |
349
+ | `CREWCODE_TIMEOUT_GEMINI_EXECUTE` | - | Gemini execute mode timeout |
350
+ | `CREWCODE_TIMEOUT_GEMINI_QUERY` | - | Gemini query mode timeout |
351
+ | `CREWCODE_TIMEOUT_COPILOT_EXECUTE` | - | Copilot execute mode timeout |
352
+ | `CREWCODE_TIMEOUT_COPILOT_QUERY` | - | Copilot query mode timeout |
353
+
354
+ ### Other Configuration
355
+
356
+ | Variable | Default | Description |
357
+ |----------|---------|-------------|
358
+ | `PORT` | `3000` | MCP server port |
359
+ | `DEBUG` | - | Debug namespace (e.g., `crewx:*`) |
360
+
361
+ ### Usage Examples
362
+
363
+ **Slack Bot with Custom Limits:**
322
364
  ```bash
323
- # Slack configuration
324
- SLACK_BOT_TOKEN=xoxb-...
325
- SLACK_SIGNING_SECRET=...
326
- SLACK_APP_TOKEN=xapp-...
365
+ export SLACK_BOT_TOKEN=xoxb-your-token
366
+ export SLACK_SIGNING_SECRET=your-secret
367
+ export SLACK_APP_TOKEN=xapp-your-app-token
368
+ export SLACK_MAX_RESPONSE_LENGTH=500000
369
+ export SLACK_MAX_BLOCK_SIZE=2800
327
370
 
328
- # MCP server port
329
- PORT=3000
371
+ crewx slack --log
372
+ ```
373
+
374
+ **Custom Configuration Path:**
375
+ ```bash
376
+ export CREWX_CONFIG=/path/to/custom/crewx.yaml
377
+ crewx query "@claude analyze this"
378
+ ```
379
+
380
+ **Provider Timeout Configuration:**
381
+ ```bash
382
+ # Set longer timeout for complex execute tasks
383
+ export CREWCODE_TIMEOUT_CLAUDE_EXECUTE=600000 # 10 minutes
384
+ export CREWCODE_TIMEOUT_CLAUDE_QUERY=180000 # 3 minutes
385
+
386
+ crewx execute "@claude complex task"
387
+ ```
388
+
389
+ **Debug Logging:**
390
+ ```bash
391
+ # Enable all CrewX debug logs
392
+ export DEBUG=crewx:*
393
+ export CREWX_DEBUG=true
394
+
395
+ crewx query "@claude test"
396
+ ```
397
+
398
+ **Using .env File:**
399
+ Create a `.env.slack` file:
400
+ ```env
401
+ SLACK_BOT_TOKEN=xoxb-your-token
402
+ SLACK_SIGNING_SECRET=your-secret
403
+ SLACK_APP_TOKEN=xapp-your-app-token
404
+ SLACK_MAX_RESPONSE_LENGTH=400000
405
+ SLACK_MAX_BLOCK_SIZE=2900
406
+ CREWX_SLACK_LOG_CONVERSATIONS=true
407
+ ```
330
408
 
331
- # Debug logging
332
- DEBUG=crewx:*
409
+ Then load it:
410
+ ```bash
411
+ source .env.slack
412
+ npm run start:slack
333
413
  ```
334
414
 
335
415
  ## Architecture
@@ -15,6 +15,7 @@ export declare class SlackBot {
15
15
  private botId;
16
16
  private readonly mode;
17
17
  private readonly mentionOnly;
18
+ private readonly threadGuards;
18
19
  constructor(crewXTool: CrewXTool, configService: ConfigService, aiProviderService: AIProviderService, defaultAgent?: string, mode?: 'query' | 'execute', mentionOnly?: boolean);
19
20
  private getBotUserId;
20
21
  private shouldRespondToMessage;
@@ -14,6 +14,7 @@ class SlackBot {
14
14
  this.logger = new common_1.Logger(SlackBot.name);
15
15
  this.botUserId = null;
16
16
  this.botId = null;
17
+ this.threadGuards = new Map();
17
18
  if (mode !== 'query' && mode !== 'execute') {
18
19
  throw new Error(`Invalid Slack mode '${mode}'. Supported modes: query, execute.`);
19
20
  }
@@ -96,33 +97,43 @@ class SlackBot {
96
97
  limit: 100,
97
98
  include_all_metadata: true,
98
99
  });
99
- const lastBotMessage = [...threadHistory.messages]
100
- .reverse()
101
- .find((msg) => msg.metadata?.event_type === 'crewx_response');
102
- if (lastBotMessage) {
103
- let lastAgentId = lastBotMessage.metadata?.event_payload?.agent_id;
104
- if (!lastAgentId && lastBotMessage.text) {
105
- const agentMatch = lastBotMessage.text.match(/@([a-zA-Z0-9_]+)\)/);
106
- if (agentMatch) {
107
- lastAgentId = agentMatch[1];
108
- this.logger.log(`๐Ÿ”ง Fallback: Extracted agent ID from message text: ${lastAgentId}`);
109
- }
110
- }
111
- const isLastSpeaker = lastAgentId === this.defaultAgent;
112
- if (isLastSpeaker) {
113
- this.logger.log(`โœ… DECISION: Bot is last speaker โ†’ RESPOND`);
114
- return true;
115
- }
116
- else {
117
- this.logger.log(`โญ๏ธ DECISION: Another bot is last speaker (${lastAgentId}) โ†’ SKIP`);
118
- return false;
100
+ const lastMessage = [...threadHistory.messages]
101
+ .filter((msg) => msg.ts !== message.ts)
102
+ .reverse()[0];
103
+ if (!lastMessage) {
104
+ this.logger.log(`โœ… DECISION: No previous messages in thread โ†’ RESPOND`);
105
+ return true;
106
+ }
107
+ const lastMessageIsBot = !!lastMessage.bot_id || lastMessage.metadata?.event_type === 'crewx_response';
108
+ if (!lastMessageIsBot) {
109
+ this.logger.log(`โœ… DECISION: Last message from user โ†’ RESPOND`);
110
+ return true;
111
+ }
112
+ let lastAgentId = lastMessage.metadata?.event_payload?.agent_id;
113
+ if (!lastAgentId && lastMessage.text) {
114
+ const agentMatch = lastMessage.text.match(/@([a-zA-Z0-9_]+)\)/);
115
+ if (agentMatch) {
116
+ lastAgentId = agentMatch[1];
117
+ this.logger.log(`๐Ÿ”ง Fallback 1: Extracted agent ID from message text: ${lastAgentId}`);
119
118
  }
120
119
  }
121
- const botParticipated = threadHistory.messages.some((msg) => msg.user === botUserId || msg.bot_id === this.botId);
122
- if (botParticipated) {
123
- this.logger.log(`โœ… DECISION: Bot participated (fallback) โ†’ RESPOND`);
120
+ if (!lastAgentId && lastMessage.bot_id === this.botId) {
121
+ lastAgentId = this.defaultAgent;
122
+ this.logger.log(`๐Ÿ”ง Fallback 2: bot_id matches this bot (${this.botId}) โ†’ treating as ${this.defaultAgent}`);
123
+ this.logger.warn(`โš ๏ธ Metadata missing for bot message! bot_id=${lastMessage.bot_id}, assuming agent=${this.defaultAgent}`);
124
+ }
125
+ if (!lastAgentId) {
126
+ this.logger.warn(`โš ๏ธ Could not identify last speaker! No metadata, no text match, bot_id=${lastMessage.bot_id}`);
127
+ }
128
+ const isLastSpeaker = lastAgentId === this.defaultAgent;
129
+ if (isLastSpeaker) {
130
+ this.logger.log(`โœ… DECISION: This bot was last speaker โ†’ RESPOND`);
124
131
  return true;
125
132
  }
133
+ else {
134
+ this.logger.log(`โญ๏ธ DECISION: Another bot was last speaker (${lastAgentId}) โ†’ SKIP`);
135
+ return false;
136
+ }
126
137
  }
127
138
  catch (error) {
128
139
  this.logger.warn(`Failed to check thread participation: ${error.message}`);
@@ -204,6 +215,23 @@ class SlackBot {
204
215
  });
205
216
  return;
206
217
  }
218
+ const threadTs = message.thread_ts || message.ts;
219
+ const threadId = `${message.channel}:${threadTs}`;
220
+ const existingGuard = this.threadGuards.get(threadId);
221
+ if (existingGuard) {
222
+ this.logger.warn(`โš ๏ธ Thread ${threadId} is already being processed, skipping duplicate request`);
223
+ try {
224
+ await client.reactions.add({
225
+ channel: message.channel,
226
+ timestamp: message.ts,
227
+ name: 'hourglass_flowing_sand',
228
+ });
229
+ }
230
+ catch (reactionError) {
231
+ this.logger.warn(`Could not add hourglass reaction: ${reactionError}`);
232
+ }
233
+ return;
234
+ }
207
235
  this.logger.log(`๐Ÿš€ Processing Slack request from user ${message.user}`);
208
236
  try {
209
237
  await client.reactions.add({
@@ -215,178 +243,174 @@ class SlackBot {
215
243
  catch (reactionError) {
216
244
  this.logger.warn(`Could not add reaction: ${reactionError}`);
217
245
  }
218
- const threadTs = message.thread_ts || message.ts;
219
- const threadId = `${message.channel}:${threadTs}`;
220
- try {
221
- this.conversationHistory.initialize(client);
222
- let contextText = '';
246
+ const guardPromise = (async () => {
223
247
  try {
224
- this.conversationHistory.invalidateCache(threadId);
225
- this.logger.debug(`๐Ÿ—‘๏ธ Invalidated cache after user message`);
226
- }
227
- catch (cacheError) {
228
- this.logger.warn(`Failed to invalidate cache: ${cacheError.message}`);
229
- }
230
- let conversationMessages = [];
231
- if (message.thread_ts) {
248
+ this.conversationHistory.initialize(client);
249
+ let contextText = '';
232
250
  try {
233
- const thread = await this.conversationHistory.fetchHistory(threadId, {
234
- limit: 100,
235
- maxContextLength: 4000,
236
- excludeCurrent: true,
237
- });
238
- if (thread.messages.length > 0) {
239
- conversationMessages = thread.messages.map(msg => ({
240
- text: msg.text,
241
- isAssistant: msg.isAssistant,
242
- metadata: msg.metadata,
243
- files: msg.files,
244
- }));
245
- const historyContext = await this.conversationHistory.formatForAI(thread, {
251
+ this.conversationHistory.invalidateCache(threadId);
252
+ this.logger.debug(`๐Ÿ—‘๏ธ Invalidated cache after user message`);
253
+ }
254
+ catch (cacheError) {
255
+ this.logger.warn(`Failed to invalidate cache: ${cacheError.message}`);
256
+ }
257
+ let conversationMessages = [];
258
+ if (message.thread_ts) {
259
+ try {
260
+ const thread = await this.conversationHistory.fetchHistory(threadId, {
261
+ limit: 100,
262
+ maxContextLength: 4000,
246
263
  excludeCurrent: true,
247
264
  });
248
- if (historyContext) {
249
- contextText = historyContext;
250
- this.logger.log(`๐Ÿ“š Including ${thread.messages.length} previous messages in context`);
265
+ if (thread.messages.length > 0) {
266
+ conversationMessages = thread.messages.map(msg => ({
267
+ text: msg.text,
268
+ isAssistant: msg.isAssistant,
269
+ metadata: msg.metadata,
270
+ files: msg.files,
271
+ }));
272
+ const historyContext = await this.conversationHistory.formatForAI(thread, {
273
+ excludeCurrent: true,
274
+ });
275
+ if (historyContext) {
276
+ contextText = historyContext;
277
+ this.logger.log(`๐Ÿ“š Including ${thread.messages.length} previous messages in context`);
278
+ }
279
+ await this.downloadHistoricalFiles(thread.messages, threadTs, message.channel, client);
251
280
  }
252
- await this.downloadHistoricalFiles(thread.messages, threadTs, message.channel, client);
281
+ }
282
+ catch (error) {
283
+ this.logger.warn(`Failed to fetch thread history: ${error.message}`);
253
284
  }
254
285
  }
255
- catch (error) {
256
- this.logger.warn(`Failed to fetch thread history: ${error.message}`);
257
- }
258
- }
259
- const basePayload = {
260
- agentId: this.defaultAgent,
261
- context: contextText || undefined,
262
- messages: conversationMessages.length > 0 ? conversationMessages : undefined,
263
- platform: 'slack',
264
- metadata: {
265
- channel_id: message.channel,
266
- thread_ts: threadTs,
267
- },
268
- };
269
- const result = this.mode === 'execute'
270
- ? await this.crewXTool.executeAgent({
271
- ...basePayload,
272
- task: userRequest,
273
- })
274
- : await this.crewXTool.queryAgent({
275
- ...basePayload,
276
- query: userRequest,
277
- });
278
- this.logger.log(`๐Ÿ“ฆ Received result from CrewX MCP`);
279
- const responseText = result.implementation ||
280
- (result.content && result.content[0] ? result.content[0].text : 'No response');
281
- const blocks = this.formatter.formatExecutionResult({
282
- agent: result.agent || this.defaultAgent,
283
- provider: result.provider || this.defaultAgent,
284
- taskId: result.taskId || 'unknown',
285
- response: responseText,
286
- success: result.success === true,
287
- error: result.error,
288
- });
289
- const isSuccess = result.success === true;
290
- const successLabel = this.mode === 'execute' ? 'Completed!' : 'Responded!';
291
- const messageText = isSuccess
292
- ? `โœ… ${successLabel} (@${result.agent || this.defaultAgent})`
293
- : `โŒ Error (@${result.agent || this.defaultAgent})`;
294
- const agentId = result.agent || this.defaultAgent;
295
- this.logger.log(`๐Ÿ“ Setting metadata - agent_id: ${agentId}, defaultAgent: ${this.defaultAgent}`);
296
- const sentMessage = await say({
297
- text: messageText,
298
- blocks: blocks,
299
- thread_ts: message.thread_ts || message.ts,
300
- metadata: {
301
- event_type: 'crewx_response',
302
- event_payload: {
303
- agent_id: agentId,
304
- provider: result.provider || this.defaultAgent,
305
- task_id: result.taskId || 'unknown',
286
+ const basePayload = {
287
+ agentId: this.defaultAgent,
288
+ context: contextText || undefined,
289
+ messages: conversationMessages.length > 0 ? conversationMessages : undefined,
290
+ platform: 'slack',
291
+ metadata: {
292
+ channel_id: message.channel,
293
+ thread_ts: threadTs,
306
294
  },
307
- },
308
- });
309
- try {
310
- this.conversationHistory.invalidateCache(threadId);
311
- this.logger.debug(`๐Ÿ—‘๏ธ Invalidated cache after assistant response`);
312
- }
313
- catch (cacheError) {
314
- this.logger.warn(`Failed to invalidate cache: ${cacheError.message}`);
315
- }
316
- try {
317
- await client.reactions.remove({
318
- channel: message.channel,
319
- timestamp: message.ts,
320
- name: 'eyes',
295
+ };
296
+ const result = this.mode === 'execute'
297
+ ? await this.crewXTool.executeAgent({
298
+ ...basePayload,
299
+ task: userRequest,
300
+ })
301
+ : await this.crewXTool.queryAgent({
302
+ ...basePayload,
303
+ query: userRequest,
304
+ });
305
+ this.logger.log(`๐Ÿ“ฆ Received result from CrewX MCP`);
306
+ const responseText = result.implementation ||
307
+ (result.content && result.content[0] ? result.content[0].text : 'No response');
308
+ const blocks = this.formatter.formatExecutionResult({
309
+ agent: result.agent || this.defaultAgent,
310
+ provider: result.provider || this.defaultAgent,
311
+ taskId: result.taskId || 'unknown',
312
+ response: responseText,
313
+ success: result.success === true,
314
+ error: result.error,
321
315
  });
322
- await client.reactions.add({
323
- channel: message.channel,
324
- timestamp: message.ts,
325
- name: 'white_check_mark',
316
+ const isSuccess = result.success === true;
317
+ const successLabel = this.mode === 'execute' ? 'Completed!' : 'Responded!';
318
+ const messageText = isSuccess
319
+ ? `โœ… ${successLabel} (@${result.agent || this.defaultAgent})`
320
+ : `โŒ Error (@${result.agent || this.defaultAgent})`;
321
+ const agentId = result.agent || this.defaultAgent;
322
+ this.logger.log(`๐Ÿ“ Setting metadata - agent_id: ${agentId}, defaultAgent: ${this.defaultAgent}`);
323
+ const sentMessage = await say({
324
+ text: messageText,
325
+ blocks: blocks,
326
+ thread_ts: message.thread_ts || message.ts,
327
+ metadata: {
328
+ event_type: 'crewx_response',
329
+ event_payload: {
330
+ agent_id: agentId,
331
+ provider: result.provider || this.defaultAgent,
332
+ task_id: result.taskId || 'unknown',
333
+ },
334
+ },
326
335
  });
336
+ try {
337
+ this.conversationHistory.invalidateCache(threadId);
338
+ this.logger.debug(`๐Ÿ—‘๏ธ Invalidated cache after assistant response`);
339
+ }
340
+ catch (cacheError) {
341
+ this.logger.warn(`Failed to invalidate cache: ${cacheError.message}`);
342
+ }
343
+ try {
344
+ await client.reactions.remove({
345
+ channel: message.channel,
346
+ timestamp: message.ts,
347
+ name: 'eyes',
348
+ });
349
+ await client.reactions.add({
350
+ channel: message.channel,
351
+ timestamp: message.ts,
352
+ name: 'white_check_mark',
353
+ });
354
+ }
355
+ catch (reactionError) {
356
+ this.logger.warn(`Could not update reaction: ${reactionError}`);
357
+ }
327
358
  }
328
- catch (reactionError) {
329
- this.logger.warn(`Could not update reaction: ${reactionError}`);
330
- }
331
- }
332
- catch (error) {
333
- this.logger.error(`Error executing request:`, error);
334
- await say({
335
- text: `โŒ Error: ${error.message}`,
336
- thread_ts: message.thread_ts || message.ts,
337
- metadata: {
338
- event_type: 'crewx_response',
339
- event_payload: {
340
- agent_id: this.defaultAgent,
341
- provider: this.defaultAgent,
342
- task_id: 'execution_error',
359
+ catch (error) {
360
+ this.logger.error(`Error executing request:`, error);
361
+ await say({
362
+ text: `โŒ Error: ${error.message}`,
363
+ thread_ts: message.thread_ts || message.ts,
364
+ metadata: {
365
+ event_type: 'crewx_response',
366
+ event_payload: {
367
+ agent_id: this.defaultAgent,
368
+ provider: this.defaultAgent,
369
+ task_id: 'execution_error',
370
+ },
343
371
  },
344
- },
345
- });
346
- try {
347
- await client.reactions.remove({
348
- channel: message.channel,
349
- timestamp: message.ts,
350
- name: 'eyes',
351
- });
352
- await client.reactions.add({
353
- channel: message.channel,
354
- timestamp: message.ts,
355
- name: 'x',
356
372
  });
357
- }
358
- catch (reactionError) {
359
- this.logger.warn(`Could not update reaction: ${reactionError}`);
360
- }
361
- }
362
- finally {
363
- if (this.conversationHistory.isLocalLoggingEnabled()) {
364
373
  try {
365
- await this.conversationHistory.fetchHistory(threadId, {
366
- limit: 100,
367
- maxContextLength: 4000,
374
+ await client.reactions.remove({
375
+ channel: message.channel,
376
+ timestamp: message.ts,
377
+ name: 'eyes',
378
+ });
379
+ await client.reactions.add({
380
+ channel: message.channel,
381
+ timestamp: message.ts,
382
+ name: 'x',
368
383
  });
369
384
  }
370
- catch (logError) {
371
- this.logger.warn(`Failed to refresh Slack conversation log: ${logError.message}`);
385
+ catch (reactionError) {
386
+ this.logger.warn(`Could not update reaction: ${reactionError}`);
387
+ }
388
+ }
389
+ finally {
390
+ if (this.conversationHistory.isLocalLoggingEnabled()) {
391
+ try {
392
+ await this.conversationHistory.fetchHistory(threadId, {
393
+ limit: 100,
394
+ maxContextLength: 4000,
395
+ });
396
+ }
397
+ catch (logError) {
398
+ this.logger.warn(`Failed to refresh Slack conversation log: ${logError.message}`);
399
+ }
372
400
  }
373
401
  }
402
+ })();
403
+ this.threadGuards.set(threadId, guardPromise);
404
+ try {
405
+ await guardPromise;
406
+ }
407
+ finally {
408
+ this.threadGuards.delete(threadId);
409
+ this.logger.debug(`๐Ÿงน Cleaned up guard for thread ${threadId}`);
374
410
  }
375
411
  }
376
412
  catch (error) {
377
- this.logger.error(`Error handling command:`, error);
378
- await say({
379
- text: `โŒ Internal error: ${error.message}`,
380
- thread_ts: message.thread_ts || message.ts,
381
- metadata: {
382
- event_type: 'crewx_response',
383
- event_payload: {
384
- agent_id: this.defaultAgent,
385
- provider: this.defaultAgent,
386
- task_id: 'internal_error',
387
- },
388
- },
389
- });
413
+ this.logger.error(`Error in handleCommand wrapper:`, error);
390
414
  }
391
415
  }
392
416
  async handleFileShared(event, client) {
@@ -1 +1 @@
1
- {"version":3,"file":"slack-bot.js","sourceRoot":"","sources":["../../src/slack/slack-bot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack-bot.js","sourceRoot":"","sources":["../../src/slack/slack-bot.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sowonai/crewx-cli",
3
- "version": "0.7.6",
3
+ "version": "0.7.7",
4
4
  "license": "MIT",
5
5
  "description": "SowonAI CrewX CLI - Bring Your Own AI(BYOA) team in Slack/IDE(MCP) with your existing subscriptions",
6
6
  "private": false,
@@ -69,7 +69,7 @@
69
69
  "@nestjs/platform-express": "^11.0.0",
70
70
  "@slack/bolt": "^4.4.0",
71
71
  "@slack/web-api": "^7.10.0",
72
- "@sowonai/crewx-sdk": "^0.7.6-rc.1",
72
+ "@sowonai/crewx-sdk": "^0.7.7",
73
73
  "@sowonai/nestjs-mcp-adapter": "^0.1.3",
74
74
  "@types/js-yaml": "^4.0.9",
75
75
  "@types/mdast": "^4.0.4",