@mastra/dane 0.0.2-alpha.98 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/package.json +12 -10
  2. package/dist/commands/changelog.d.ts +0 -2
  3. package/dist/commands/changelog.d.ts.map +0 -1
  4. package/dist/commands/changelog.js +0 -15
  5. package/dist/commands/commit-message.d.ts +0 -2
  6. package/dist/commands/commit-message.d.ts.map +0 -1
  7. package/dist/commands/commit-message.js +0 -32
  8. package/dist/commands/config.d.ts +0 -3
  9. package/dist/commands/config.d.ts.map +0 -1
  10. package/dist/commands/config.js +0 -40
  11. package/dist/commands/issue-labeler.d.ts +0 -2
  12. package/dist/commands/issue-labeler.d.ts.map +0 -1
  13. package/dist/commands/issue-labeler.js +0 -35
  14. package/dist/commands/link-checker.d.ts +0 -4
  15. package/dist/commands/link-checker.d.ts.map +0 -1
  16. package/dist/commands/link-checker.js +0 -16
  17. package/dist/commands/message.d.ts +0 -2
  18. package/dist/commands/message.d.ts.map +0 -1
  19. package/dist/commands/message.js +0 -14
  20. package/dist/commands/new-contributor-message.d.ts +0 -2
  21. package/dist/commands/new-contributor-message.d.ts.map +0 -1
  22. package/dist/commands/new-contributor-message.js +0 -43
  23. package/dist/commands/publish-packages.d.ts +0 -2
  24. package/dist/commands/publish-packages.d.ts.map +0 -1
  25. package/dist/commands/publish-packages.js +0 -11
  26. package/dist/commands/telephone-game.d.ts +0 -2
  27. package/dist/commands/telephone-game.d.ts.map +0 -1
  28. package/dist/commands/telephone-game.js +0 -32
  29. package/dist/config/index.d.ts +0 -12
  30. package/dist/config/index.d.ts.map +0 -1
  31. package/dist/config/index.js +0 -75
  32. package/dist/index.d.ts +0 -3
  33. package/dist/index.d.ts.map +0 -1
  34. package/dist/index.js +0 -37
  35. package/dist/mastra/agents/index.d.ts +0 -199
  36. package/dist/mastra/agents/index.d.ts.map +0 -1
  37. package/dist/mastra/agents/index.js +0 -113
  38. package/dist/mastra/agents/model.d.ts +0 -7
  39. package/dist/mastra/agents/model.d.ts.map +0 -1
  40. package/dist/mastra/agents/model.js +0 -7
  41. package/dist/mastra/agents/new-contributor.d.ts +0 -3
  42. package/dist/mastra/agents/new-contributor.d.ts.map +0 -1
  43. package/dist/mastra/agents/new-contributor.js +0 -12
  44. package/dist/mastra/agents/package-publisher.d.ts +0 -65
  45. package/dist/mastra/agents/package-publisher.d.ts.map +0 -1
  46. package/dist/mastra/agents/package-publisher.js +0 -168
  47. package/dist/mastra/index.d.ts +0 -325
  48. package/dist/mastra/index.d.ts.map +0 -1
  49. package/dist/mastra/index.js +0 -42
  50. package/dist/mastra/integrations/index.d.ts +0 -7
  51. package/dist/mastra/integrations/index.d.ts.map +0 -1
  52. package/dist/mastra/integrations/index.js +0 -29
  53. package/dist/mastra/tools/browser.d.ts +0 -40
  54. package/dist/mastra/tools/browser.d.ts.map +0 -1
  55. package/dist/mastra/tools/browser.js +0 -116
  56. package/dist/mastra/tools/calendar.d.ts +0 -21
  57. package/dist/mastra/tools/calendar.d.ts.map +0 -1
  58. package/dist/mastra/tools/calendar.js +0 -134
  59. package/dist/mastra/tools/crawl.d.ts +0 -36
  60. package/dist/mastra/tools/crawl.d.ts.map +0 -1
  61. package/dist/mastra/tools/crawl.js +0 -27
  62. package/dist/mastra/tools/execa.d.ts +0 -27
  63. package/dist/mastra/tools/execa.d.ts.map +0 -1
  64. package/dist/mastra/tools/execa.js +0 -43
  65. package/dist/mastra/tools/fs.d.ts +0 -33
  66. package/dist/mastra/tools/fs.d.ts.map +0 -1
  67. package/dist/mastra/tools/fs.js +0 -36
  68. package/dist/mastra/tools/image.d.ts +0 -27
  69. package/dist/mastra/tools/image.d.ts.map +0 -1
  70. package/dist/mastra/tools/image.js +0 -37
  71. package/dist/mastra/tools/mcp.d.ts +0 -3
  72. package/dist/mastra/tools/mcp.d.ts.map +0 -1
  73. package/dist/mastra/tools/mcp.js +0 -12
  74. package/dist/mastra/tools/pdf.d.ts +0 -21
  75. package/dist/mastra/tools/pdf.d.ts.map +0 -1
  76. package/dist/mastra/tools/pdf.js +0 -42
  77. package/dist/mastra/tools/pnpm.d.ts +0 -60
  78. package/dist/mastra/tools/pnpm.d.ts.map +0 -1
  79. package/dist/mastra/tools/pnpm.js +0 -127
  80. package/dist/mastra/workflows/changelog.d.ts +0 -10
  81. package/dist/mastra/workflows/changelog.d.ts.map +0 -1
  82. package/dist/mastra/workflows/changelog.js +0 -149
  83. package/dist/mastra/workflows/chat.d.ts +0 -13
  84. package/dist/mastra/workflows/chat.d.ts.map +0 -1
  85. package/dist/mastra/workflows/chat.js +0 -88
  86. package/dist/mastra/workflows/commit-message.d.ts +0 -10
  87. package/dist/mastra/workflows/commit-message.d.ts.map +0 -1
  88. package/dist/mastra/workflows/commit-message.js +0 -138
  89. package/dist/mastra/workflows/first-contributor.d.ts +0 -16
  90. package/dist/mastra/workflows/first-contributor.d.ts.map +0 -1
  91. package/dist/mastra/workflows/first-contributor.js +0 -122
  92. package/dist/mastra/workflows/index.d.ts +0 -4
  93. package/dist/mastra/workflows/index.d.ts.map +0 -1
  94. package/dist/mastra/workflows/index.js +0 -3
  95. package/dist/mastra/workflows/issue-labeler.d.ts +0 -16
  96. package/dist/mastra/workflows/issue-labeler.d.ts.map +0 -1
  97. package/dist/mastra/workflows/issue-labeler.js +0 -85
  98. package/dist/mastra/workflows/link-checker.d.ts +0 -13
  99. package/dist/mastra/workflows/link-checker.d.ts.map +0 -1
  100. package/dist/mastra/workflows/link-checker.js +0 -102
  101. package/dist/mastra/workflows/publish-packages.d.ts +0 -3
  102. package/dist/mastra/workflows/publish-packages.d.ts.map +0 -1
  103. package/dist/mastra/workflows/publish-packages.js +0 -257
  104. package/dist/mastra/workflows/telephone-game.d.ts +0 -3
  105. package/dist/mastra/workflows/telephone-game.d.ts.map +0 -1
  106. package/dist/mastra/workflows/telephone-game.js +0 -95
@@ -1,127 +0,0 @@
1
- import { createTool } from '@mastra/core';
2
- import chalk from 'chalk';
3
- import { execa, ExecaError } from 'execa';
4
- import { readFileSync } from 'fs';
5
- import path from 'path';
6
- import { z } from 'zod';
7
- export const pnpmBuild = createTool({
8
- id: 'pnpmBuild',
9
- name: 'PNPM Build Tool',
10
- description: 'Used to build the pnpm module',
11
- inputSchema: z.object({
12
- name: z.string(),
13
- packagePath: z.string(),
14
- }),
15
- outputSchema: z.object({
16
- message: z.string(),
17
- }),
18
- execute: async ({ context: { name, packagePath } }) => {
19
- try {
20
- console.log(chalk.green(`\n Building: ${name} at ${packagePath}`));
21
- const p = execa(`pnpm`, ['build'], {
22
- stdio: 'inherit',
23
- cwd: packagePath,
24
- reject: false,
25
- });
26
- console.log(`\n`);
27
- await p;
28
- return { message: 'Done' };
29
- }
30
- catch (e) {
31
- console.error(e);
32
- if (e instanceof ExecaError) {
33
- return { message: e.message };
34
- }
35
- return { message: 'Error' };
36
- }
37
- },
38
- });
39
- export const pnpmChangesetStatus = createTool({
40
- id: 'pnpmChangesetStatus',
41
- name: 'PNPM Changeset Status Tool',
42
- description: 'Used to check which pnpm modules need to be published',
43
- inputSchema: z.object({}),
44
- outputSchema: z.object({
45
- message: z.array(z.string()),
46
- }),
47
- execute: async () => {
48
- try {
49
- console.log(chalk.green(`\nRunning command: pnpm publish -r --dry-run --no-git-checks`));
50
- const { stdout } = await execa('pnpm', ['publish', '-r', '--dry-run', '--no-git-checks'], {
51
- all: true,
52
- // We want to see stderr too since pnpm sometimes puts important info there
53
- });
54
- const lines = stdout.split('\n');
55
- const filteredLines = lines.filter(line => line.startsWith('+'));
56
- const packages = filteredLines.map(line => line.trim().substring(2).split('@').slice(0, -1).join('@'));
57
- return { message: packages };
58
- }
59
- catch (e) {
60
- console.error(e);
61
- if (e instanceof ExecaError) {
62
- return { message: [e.message] };
63
- }
64
- return { message: ['Error'] };
65
- }
66
- },
67
- });
68
- export const pnpmChangesetPublish = createTool({
69
- id: 'pnpmChangesetPublish',
70
- name: 'PNPM Changeset Publish Tool',
71
- description: 'Used to publish the pnpm module',
72
- inputSchema: z.object({}),
73
- outputSchema: z.object({
74
- message: z.string(),
75
- }),
76
- execute: async () => {
77
- try {
78
- console.log(chalk.green(`Publishing...`));
79
- const p = execa(`pnpm`, ['changeset', 'publish'], {
80
- stdio: 'inherit',
81
- reject: false,
82
- });
83
- console.log(`\n`);
84
- await p;
85
- return { message: 'Done' };
86
- }
87
- catch (e) {
88
- console.error(e);
89
- if (e instanceof ExecaError) {
90
- return { message: e.message };
91
- }
92
- return { message: 'Error' };
93
- }
94
- },
95
- });
96
- export const activeDistTag = createTool({
97
- id: 'activeDistTag',
98
- name: 'PNPM Active Dist Tag Tool',
99
- description: 'Set active dist tag on pnpm module',
100
- inputSchema: z.object({
101
- packagePath: z.string(),
102
- }),
103
- outputSchema: z.object({
104
- message: z.string(),
105
- }),
106
- execute: async ({ context }) => {
107
- try {
108
- const pkgJson = JSON.parse(readFileSync(path.join(context.packagePath, 'package.json'), 'utf-8'));
109
- const version = pkgJson.version;
110
- console.log(chalk.green(`Setting active tag to latest for ${pkgJson.name}@${version}`));
111
- const p = execa(`npm`, ['dist-tag', `add`, `${pkgJson.name}@${version}`, `latest`], {
112
- stdio: 'inherit',
113
- reject: false,
114
- });
115
- console.log(`\n`);
116
- await p;
117
- return { message: 'Done' };
118
- }
119
- catch (e) {
120
- console.error(e);
121
- if (e instanceof ExecaError) {
122
- return { message: e.message };
123
- }
124
- return { message: 'Error' };
125
- }
126
- },
127
- });
@@ -1,10 +0,0 @@
1
- import { Workflow } from '@mastra/core';
2
- import { z } from 'zod';
3
- export declare const changelogWorkflow: Workflow<any, z.ZodObject<{
4
- channelId: z.ZodString;
5
- }, "strip", z.ZodTypeAny, {
6
- channelId: string;
7
- }, {
8
- channelId: string;
9
- }>>;
10
- //# sourceMappingURL=changelog.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"changelog.d.ts","sourceRoot":"","sources":["../../../src/mastra/workflows/changelog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,QAAQ,EAAE,MAAM,cAAc,CAAC;AAI9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB;;;;;;GAK5B,CAAC"}
@@ -1,149 +0,0 @@
1
- import { Step, Workflow } from '@mastra/core';
2
- import chalk from 'chalk';
3
- import { execa } from 'execa';
4
- import { existsSync, readFileSync, writeFileSync } from 'fs';
5
- import { z } from 'zod';
6
- import { slack } from '../tools/mcp.js';
7
- export const changelogWorkflow = new Workflow({
8
- name: 'changelog',
9
- triggerSchema: z.object({
10
- channelId: z.string(),
11
- }),
12
- });
13
- const stepA1 = new Step({
14
- id: 'stepA1',
15
- description: 'Get a git diff',
16
- outputSchema: z.object({
17
- message: z.string(),
18
- }),
19
- execute: async () => {
20
- console.log('SUH');
21
- // For today
22
- try {
23
- await slack.connect();
24
- }
25
- catch (e) {
26
- console.error(e);
27
- }
28
- const today = new Date().toISOString().split('T')[0];
29
- console.log(today);
30
- // For 7 days ago
31
- const weekAgo = new Date(Date.now() - 7 * 24 * 60 * 60 * 1000).toISOString().split('T')[0];
32
- console.log(weekAgo);
33
- const cwd = process.cwd();
34
- console.log(cwd);
35
- const args = [
36
- '--no-pager',
37
- 'diff',
38
- '--unified=1', // Reduced context to 1 line
39
- '--no-prefix',
40
- '--color=never',
41
- '--shortstat', // Get size first to check
42
- `main@{${weekAgo}}`,
43
- `main@{${today}}`,
44
- '--',
45
- 'packages/**',
46
- // 'docs/**'
47
- ];
48
- console.log(args);
49
- const p = execa('git', args, {
50
- cwd,
51
- });
52
- try {
53
- const diff = await p;
54
- return {
55
- message: diff.stdout,
56
- };
57
- }
58
- catch (e) {
59
- console.error(e);
60
- return {
61
- message: 'Error, do not compute',
62
- };
63
- }
64
- },
65
- });
66
- const stepA2 = new Step({
67
- id: 'stepA2',
68
- description: 'Make changelog',
69
- outputSchema: z.object({
70
- message: z.string(),
71
- }),
72
- execute: async ({ context, mastra }) => {
73
- if (context.machineContext?.stepResults.stepA1?.status !== 'success') {
74
- throw new Error('Message not found');
75
- }
76
- const agent = mastra?.agents?.daneChangeLog;
77
- if (!agent) {
78
- throw new Error('LLM not found');
79
- }
80
- const today = new Date().toISOString().split('T')[0];
81
- const weekAgo = new Date(Date.now() - 7 * 24 * 60 * 60 * 1000).toISOString().split('T')[0];
82
- const tools = await slack.tools();
83
- if (existsSync(`changelog-${today}`)) {
84
- const existing = readFileSync(`changelog-${today}`, 'utf-8');
85
- await agent.generate(`
86
- Send this ${existing} to this slack channel: "${context.machineContext.triggerData.channelId}" with the tool slack_post_message.
87
- Format it in markdown so it displays nicely in slack.
88
- `, {
89
- toolsets: {
90
- slack: tools,
91
- },
92
- });
93
- return {
94
- message: existing,
95
- };
96
- }
97
- const channelId = context.machineContext.triggerData.channelId;
98
- const prompt = `
99
- Time: ${weekAgo} - ${today}
100
-
101
- Git diff to generate from: ${context.machineContext.stepResults.stepA1.payload.message}
102
- # Task
103
- 1. create a structured narrative changelog that highlights key updates and improvements.
104
- 2. Include what packages were changed
105
-
106
- ## Structure
107
-
108
- 1. Opening
109
- - Brief welcome/context (1-2 sentences)
110
- - Time period covered
111
-
112
- 2. Major Updates (3-4 key highlights)
113
- - Lead with the most impactful changes
114
- - Include brief technical context where needed
115
- - Reference relevant PR numbers
116
- - Link to examples/docs where applicable
117
-
118
- 3. Technical Improvements
119
- - Group related changes
120
- - Focus on developer impact
121
- - Include code snippets if helpful
122
-
123
- 4. Documentation & Examples
124
- - New guides/tutorials
125
- - Updated examples
126
- - API documentation changes
127
-
128
- 5. Bug Fixes & Infrastructure
129
- - Notable bug fixes
130
- - Build/deployment improvements
131
- - Performance optimizations
132
-
133
-
134
- Finally send this to this slack channel: "${channelId}" with the tool slack_post_message
135
- `;
136
- console.log(chalk.green(`Generating...`));
137
- const result = await agent.generate(prompt, {
138
- toolsets: {
139
- slack: tools,
140
- },
141
- });
142
- console.log(chalk.green(result.text));
143
- writeFileSync(`changelog-${today}`, result.text);
144
- return {
145
- message: result.text,
146
- };
147
- },
148
- });
149
- changelogWorkflow.step(stepA1).then(stepA2).commit();
@@ -1,13 +0,0 @@
1
- import { Workflow } from '@mastra/core';
2
- import { z } from 'zod';
3
- export declare const messageWorkflow: Workflow<any, z.ZodObject<{
4
- resourceid: z.ZodString;
5
- threadId: z.ZodString;
6
- }, "strip", z.ZodTypeAny, {
7
- resourceid: string;
8
- threadId: string;
9
- }, {
10
- resourceid: string;
11
- threadId: string;
12
- }>>;
13
- //# sourceMappingURL=chat.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/mastra/workflows/chat.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,eAAe;;;;;;;;;GAM1B,CAAC"}
@@ -1,88 +0,0 @@
1
- import { input } from '@inquirer/prompts';
2
- import { Step, Workflow } from '@mastra/core';
3
- import chalk from 'chalk';
4
- import { z } from 'zod';
5
- import { dane } from '../agents/index.js';
6
- export const messageWorkflow = new Workflow({
7
- name: 'entry',
8
- triggerSchema: z.object({
9
- resourceid: z.string(),
10
- threadId: z.string(),
11
- }),
12
- });
13
- const messageStep = new Step({
14
- id: 'message-input',
15
- outputSchema: z.object({
16
- message: z.string(),
17
- }),
18
- execute: async () => {
19
- const content = await input({
20
- message: '\n You:',
21
- validate: input => input.trim().length > 0 || 'Message cannot be empty',
22
- });
23
- return { message: content };
24
- },
25
- });
26
- const messageOutputStep = new Step({
27
- id: 'message-output',
28
- outputSchema: z.object({
29
- message: z.string(),
30
- }),
31
- // SHOULD BE ABLE TO ACCESS ALL MASTRA PRIMS FROM EXECTUE
32
- execute: async ({ context, mastra }) => {
33
- // WISH THIS WAS TYPED
34
- const threadId = context?.machineContext?.triggerData?.threadId;
35
- const resourceid = context?.machineContext?.triggerData?.resourceid;
36
- const messageInputStatus = context?.machineContext?.stepResults?.['message-input']?.status;
37
- if (messageInputStatus !== 'success') {
38
- return { message: 'Failure in workflow' };
39
- }
40
- // is there someway to know what steps are flowing into this one and type their props
41
- const message = context?.machineContext?.stepResults?.['message-input']?.payload?.message;
42
- try {
43
- let messages = await mastra?.memory?.getContextWindow({
44
- threadId,
45
- format: 'core_message',
46
- });
47
- if (!messages || messages.length === 0) {
48
- messages = [];
49
- }
50
- const res = await mastra?.agents?.['dane']?.stream(message, {
51
- maxSteps: 5,
52
- resourceid,
53
- threadId,
54
- context: [],
55
- });
56
- if (res) {
57
- console.log(chalk.green(`\nDane: \n`));
58
- for await (const chunk of res.textStream) {
59
- process.stdout.write(chalk.green(chunk));
60
- }
61
- console.log(chalk.green(`\n`));
62
- return { message: 'success' };
63
- }
64
- }
65
- catch (e) {
66
- console.log(chalk.red(`\n`));
67
- console.log(chalk.red(`\n`));
68
- console.log(chalk.red(`Error streaming results. Let's try again.`));
69
- if (e instanceof Error) {
70
- console.log(chalk.red(e.message));
71
- }
72
- }
73
- const res = await dane.generate(message, {
74
- maxSteps: 5,
75
- threadId,
76
- resourceid,
77
- });
78
- console.log(chalk.green(res?.text));
79
- return { message: res?.text };
80
- },
81
- });
82
- messageWorkflow
83
- .step(messageStep)
84
- .after(messageStep)
85
- .step(messageOutputStep)
86
- .after(messageOutputStep)
87
- .step(messageStep)
88
- .commit();
@@ -1,10 +0,0 @@
1
- import { Workflow } from '@mastra/core';
2
- import { z } from 'zod';
3
- export declare const commitMessageGenerator: Workflow<any, z.ZodObject<{
4
- repoPath: z.ZodString;
5
- }, "strip", z.ZodTypeAny, {
6
- repoPath: string;
7
- }, {
8
- repoPath: string;
9
- }>>;
10
- //# sourceMappingURL=commit-message.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commit-message.d.ts","sourceRoot":"","sources":["../../../src/mastra/workflows/commit-message.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,QAAQ,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,sBAAsB;;;;;;GAKjC,CAAC"}
@@ -1,138 +0,0 @@
1
- import { confirm } from '@inquirer/prompts';
2
- import { Step, Workflow } from '@mastra/core';
3
- import chalk from 'chalk';
4
- import { execSync } from 'child_process';
5
- import { z } from 'zod';
6
- import { fsTool } from '../tools/fs.js';
7
- export const commitMessageGenerator = new Workflow({
8
- name: 'commit-message',
9
- triggerSchema: z.object({
10
- repoPath: z.string(),
11
- }),
12
- });
13
- const getDiff = new Step({
14
- id: 'getDiff',
15
- outputSchema: z.object({
16
- diff: z.string(),
17
- }),
18
- execute: async ({ context }) => {
19
- const repoPath = context?.machineContext?.getStepPayload('trigger')?.repoPath;
20
- // Get the git diff of staged changes
21
- const diff = execSync('git diff --staged', {
22
- cwd: repoPath,
23
- encoding: 'utf-8',
24
- });
25
- return { diff };
26
- },
27
- });
28
- const readConventionalCommitSpec = new Step({
29
- id: 'readConventionalCommitSpec',
30
- outputSchema: z.object({
31
- fileData: z.any(),
32
- }),
33
- execute: async ({ suspend }) => {
34
- const fileData = await fsTool.execute({
35
- context: { action: 'read', file: 'data/crawl/conventional-commit.json', data: '' },
36
- suspend,
37
- });
38
- return { fileData };
39
- },
40
- });
41
- const generateMessage = new Step({
42
- id: 'generateMessage',
43
- outputSchema: z.object({
44
- commitMessage: z.string(),
45
- generated: z.boolean(),
46
- guidelines: z.array(z.string()),
47
- }),
48
- execute: async ({ context, mastra }) => {
49
- const diffData = context?.machineContext?.getStepPayload('getDiff');
50
- const fileData = context?.machineContext?.getStepPayload('readConventionalCommitSpec');
51
- if (!diffData) {
52
- return { commitMessage: '', generated: false, guidelines: [] };
53
- }
54
- const daneCommitGenerator = mastra?.agents?.daneCommitMessage;
55
- const res = await daneCommitGenerator?.generate(`
56
- Given this git diff:
57
- ${diffData.diff}
58
-
59
- IF THE DIFF IS EMPTY, RETURN "No staged changes found", AND SET GENERATED TO FALSE,
60
- OTHERWISE, SET GENERATED TO TRUE
61
-
62
- ${fileData && fileData.fileData?.message
63
- ? `USE THE FOLLOWING GUIDELINES: ${fileData.fileData?.message}`
64
- : `USE THE FOLLOWING GUIDELINES:
65
- - Start with a verb in the present tense
66
- - Be specific but concise
67
- - Focus on the "what" and "why" of the changes
68
- IF THERE ARE MULTIPLE LOGICAL CHANGES, USE THE DESCRIPTION TO EXPLAIN THE CHANGES IN BULLET POINTS.
69
-
70
- - Keep the first line under 50 characters
71
- - If needed, add more detailed description after a blank line`}
72
-
73
- RETURN THE GUIDELINES YOU ARE USING AS AN ARRAY OF STRINGS ON THE GUIDELINES KEY, AND THE COMMIT MESSAGE ON THE COMMIT MESSAGE KEY
74
- `, {
75
- output: z.object({
76
- commitMessage: z.string(),
77
- generated: z.boolean(),
78
- guidelines: z.array(z.string()),
79
- }),
80
- });
81
- if (!res?.object?.generated) {
82
- throw new Error(res?.object?.commitMessage);
83
- }
84
- return {
85
- commitMessage: res?.object?.commitMessage,
86
- generated: res?.object?.generated,
87
- guidelines: res?.object?.guidelines,
88
- };
89
- },
90
- });
91
- const confirmationStep = new Step({
92
- id: 'confirmation',
93
- outputSchema: z.object({
94
- confirm: z.boolean(),
95
- }),
96
- execute: async ({ context }) => {
97
- const parentStep = context?.machineContext?.stepResults?.generateMessage;
98
- if (!parentStep || parentStep.status !== 'success') {
99
- return { confirm: false };
100
- }
101
- if (!parentStep.payload.generated) {
102
- return { confirm: false };
103
- }
104
- const commitMessage = parentStep.payload.commitMessage;
105
- const confirmationMessage = await confirm({
106
- message: `\n Would you like to use this commit message? \n\n ${chalk.yellow(commitMessage)}\n\n`,
107
- });
108
- return { confirm: confirmationMessage };
109
- },
110
- });
111
- const commitStep = new Step({
112
- id: 'commit',
113
- outputSchema: z.object({
114
- commit: z.boolean(),
115
- }),
116
- execute: async ({ context }) => {
117
- const parentStep = context?.machineContext?.stepResults?.confirmation;
118
- if (!parentStep || parentStep.status !== 'success' || !parentStep.payload.confirm) {
119
- throw new Error('Commit message generation cancelled');
120
- }
121
- if (context?.machineContext?.stepResults?.generateMessage?.status !== 'success') {
122
- throw new Error('Failed to generate commit message');
123
- }
124
- const commitMessage = context?.machineContext?.stepResults?.generateMessage?.payload?.commitMessage;
125
- execSync(`git commit -m "${commitMessage}"`, {
126
- cwd: context?.machineContext?.triggerData?.repoPath,
127
- encoding: 'utf-8',
128
- });
129
- return { commit: true };
130
- },
131
- });
132
- commitMessageGenerator
133
- .step(getDiff)
134
- .then(readConventionalCommitSpec)
135
- .then(generateMessage)
136
- .then(confirmationStep)
137
- .then(commitStep)
138
- .commit();
@@ -1,16 +0,0 @@
1
- import { Workflow } from '@mastra/core';
2
- import { z } from 'zod';
3
- export declare const githubFirstContributorMessage: Workflow<any, z.ZodObject<{
4
- repo: z.ZodString;
5
- owner: z.ZodString;
6
- pr_number: z.ZodNumber;
7
- }, "strip", z.ZodTypeAny, {
8
- repo: string;
9
- owner: string;
10
- pr_number: number;
11
- }, {
12
- repo: string;
13
- owner: string;
14
- pr_number: number;
15
- }>>;
16
- //# sourceMappingURL=first-contributor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"first-contributor.d.ts","sourceRoot":"","sources":["../../../src/mastra/workflows/first-contributor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,6BAA6B;;;;;;;;;;;;GAOxC,CAAC"}