@mastra/dane 0.0.2-alpha.0 → 0.0.2-alpha.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.
- package/CHANGELOG.md +18 -0
- package/package.json +7 -7
- package/src/index.ts +1 -0
- package/dist/commands/issue-labeler.d.ts +0 -1
- package/dist/commands/issue-labeler.js +0 -18
- package/dist/commands/message.d.ts +0 -1
- package/dist/commands/message.js +0 -12
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -7
- package/dist/mastra/agents/index.d.ts +0 -167
- package/dist/mastra/agents/index.js +0 -76
- package/dist/mastra/index.d.ts +0 -195
- package/dist/mastra/index.js +0 -29
- package/dist/mastra/integrations/index.d.ts +0 -4
- package/dist/mastra/integrations/index.js +0 -12
- package/dist/mastra/tools/browser.d.ts +0 -39
- package/dist/mastra/tools/browser.js +0 -118
- package/dist/mastra/tools/calendar.d.ts +0 -20
- package/dist/mastra/tools/calendar.js +0 -134
- package/dist/mastra/tools/crawl.d.ts +0 -32
- package/dist/mastra/tools/crawl.js +0 -24
- package/dist/mastra/tools/execa.d.ts +0 -26
- package/dist/mastra/tools/execa.js +0 -39
- package/dist/mastra/tools/fs.d.ts +0 -32
- package/dist/mastra/tools/fs.js +0 -36
- package/dist/mastra/tools/pdf.d.ts +0 -20
- package/dist/mastra/tools/pdf.js +0 -41
- package/dist/mastra/workflows/chat.d.ts +0 -12
- package/dist/mastra/workflows/chat.js +0 -93
- package/dist/mastra/workflows/index.d.ts +0 -2
- package/dist/mastra/workflows/index.js +0 -2
- package/dist/mastra/workflows/issue-labeler.d.ts +0 -15
- package/dist/mastra/workflows/issue-labeler.js +0 -85
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { Step, Workflow } from '@mastra/core';
|
|
2
|
-
import { z } from 'zod';
|
|
3
|
-
import { github } from '../integrations/index.js';
|
|
4
|
-
export const githubIssueLabeler = new Workflow({
|
|
5
|
-
name: 'github-issue-labeler',
|
|
6
|
-
triggerSchema: z.object({
|
|
7
|
-
repo: z.string(),
|
|
8
|
-
owner: z.string(),
|
|
9
|
-
issue_number: z.number(),
|
|
10
|
-
}),
|
|
11
|
-
});
|
|
12
|
-
const getIssue = new Step({
|
|
13
|
-
id: 'getIssue',
|
|
14
|
-
outputSchema: z.object({
|
|
15
|
-
title: z.string(),
|
|
16
|
-
body: z.string(),
|
|
17
|
-
labelNames: z.array(z.string()),
|
|
18
|
-
}),
|
|
19
|
-
execute: async ({ context }) => {
|
|
20
|
-
const client = await github.getApiClient();
|
|
21
|
-
const issue = await client.issuesGet({
|
|
22
|
-
path: {
|
|
23
|
-
// TODO: Type triggerData in machineContext to the triggerSchema
|
|
24
|
-
owner: context?.machineContext?.triggerData?.owner,
|
|
25
|
-
repo: context?.machineContext?.triggerData?.repo,
|
|
26
|
-
issue_number: context?.machineContext?.triggerData?.issue_number,
|
|
27
|
-
},
|
|
28
|
-
});
|
|
29
|
-
const labels = await client.issuesListLabelsForRepo({
|
|
30
|
-
path: {
|
|
31
|
-
owner: context?.machineContext?.triggerData?.owner,
|
|
32
|
-
repo: context?.machineContext?.triggerData?.repo,
|
|
33
|
-
},
|
|
34
|
-
});
|
|
35
|
-
const labelNames = labels?.data?.map(label => label.name);
|
|
36
|
-
return { title: issue?.data?.title, body: issue?.data?.body, labelNames: labelNames };
|
|
37
|
-
},
|
|
38
|
-
});
|
|
39
|
-
const labelIssue = new Step({
|
|
40
|
-
id: 'labelIssue',
|
|
41
|
-
outputSchema: z.object({
|
|
42
|
-
labels: z.array(z.string()),
|
|
43
|
-
}),
|
|
44
|
-
execute: async ({ context, mastra }) => {
|
|
45
|
-
const parentStep = context?.machineContext?.stepResults?.getIssue;
|
|
46
|
-
if (!parentStep || parentStep.status !== 'success') {
|
|
47
|
-
return { labels: [] };
|
|
48
|
-
}
|
|
49
|
-
const daneIssueLabeler = mastra?.agents?.daneIssueLabeler;
|
|
50
|
-
const res = await daneIssueLabeler?.generate(`
|
|
51
|
-
Hey Dane, given:
|
|
52
|
-
* this issue title: ${parentStep?.payload?.title}
|
|
53
|
-
* this issue body: ${parentStep?.payload?.body}
|
|
54
|
-
* these labels: ${parentStep?.payload?.labelNames}
|
|
55
|
-
|
|
56
|
-
What label or labels would you assign?
|
|
57
|
-
`, {
|
|
58
|
-
schema: z.object({
|
|
59
|
-
labels: z.array(z.string()),
|
|
60
|
-
}),
|
|
61
|
-
});
|
|
62
|
-
return { labels: res?.object?.labels };
|
|
63
|
-
},
|
|
64
|
-
});
|
|
65
|
-
const applyLabels = new Step({
|
|
66
|
-
id: 'applyLabels',
|
|
67
|
-
execute: async ({ context }) => {
|
|
68
|
-
const parentStep = context?.machineContext?.stepResults?.labelIssue;
|
|
69
|
-
if (!parentStep || parentStep.status !== 'success') {
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
const client = await github.getApiClient();
|
|
73
|
-
await client.issuesAddLabels({
|
|
74
|
-
path: {
|
|
75
|
-
owner: context?.machineContext?.triggerData?.owner,
|
|
76
|
-
repo: context?.machineContext?.triggerData?.repo,
|
|
77
|
-
issue_number: context?.machineContext?.triggerData?.issue_number,
|
|
78
|
-
},
|
|
79
|
-
body: {
|
|
80
|
-
labels: parentStep.payload.labels,
|
|
81
|
-
},
|
|
82
|
-
});
|
|
83
|
-
},
|
|
84
|
-
});
|
|
85
|
-
githubIssueLabeler.step(getIssue).then(labelIssue).then(applyLabels).commit();
|