@easynet/agent-tool-buildin 0.0.67 → 0.0.69
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/dist/agent-tool-extension-compat.d.ts.map +1 -1
- package/dist/agent-tool-extension-compat.js +14 -4
- package/dist/agent-tool-extension-compat.js.map +1 -1
- package/dist/core-tools-manifest.json +6 -503
- package/dist/src/analyze/analyzeProjectRepo.constants.d.ts +6 -0
- package/dist/src/analyze/analyzeProjectRepo.constants.d.ts.map +1 -0
- package/dist/src/analyze/analyzeProjectRepo.constants.js +53 -0
- package/dist/src/analyze/analyzeProjectRepo.constants.js.map +1 -0
- package/dist/src/analyze/analyzeProjectRepo.d.ts +4 -9
- package/dist/src/analyze/analyzeProjectRepo.d.ts.map +1 -1
- package/dist/src/analyze/analyzeProjectRepo.js +100 -122
- package/dist/src/analyze/analyzeProjectRepo.js.map +1 -1
- package/dist/src/analyze/askProjectRepo.d.ts +0 -2
- package/dist/src/analyze/askProjectRepo.d.ts.map +1 -1
- package/dist/src/analyze/askProjectRepo.helpers.d.ts +57 -0
- package/dist/src/analyze/askProjectRepo.helpers.d.ts.map +1 -0
- package/dist/src/analyze/askProjectRepo.helpers.js +233 -0
- package/dist/src/analyze/askProjectRepo.helpers.js.map +1 -0
- package/dist/src/analyze/askProjectRepo.js +132 -354
- package/dist/src/analyze/askProjectRepo.js.map +1 -1
- package/dist/src/exec/runCommand.d.ts +1 -6
- package/dist/src/exec/runCommand.d.ts.map +1 -1
- package/dist/src/exec/runCommand.js +88 -69
- package/dist/src/exec/runCommand.js.map +1 -1
- package/dist/src/http/downloadFile.d.ts +1 -3
- package/dist/src/http/downloadFile.d.ts.map +1 -1
- package/dist/src/http/downloadFile.js +99 -56
- package/dist/src/http/downloadFile.js.map +1 -1
- package/dist/src/http/duckduckgoSearch.d.ts +0 -9
- package/dist/src/http/duckduckgoSearch.d.ts.map +1 -1
- package/dist/src/http/duckduckgoSearch.js +104 -94
- package/dist/src/http/duckduckgoSearch.js.map +1 -1
- package/dist/src/http/fetchJson.d.ts +1 -2
- package/dist/src/http/fetchJson.d.ts.map +1 -1
- package/dist/src/http/fetchJson.js +91 -53
- package/dist/src/http/fetchJson.js.map +1 -1
- package/dist/src/http/fetchPageMainContent.d.ts +1 -3
- package/dist/src/http/fetchPageMainContent.d.ts.map +1 -1
- package/dist/src/http/fetchPageMainContent.js +80 -66
- package/dist/src/http/fetchPageMainContent.js.map +1 -1
- package/dist/src/http/fetchText.d.ts +1 -2
- package/dist/src/http/fetchText.d.ts.map +1 -1
- package/dist/src/http/fetchText.js +100 -67
- package/dist/src/http/fetchText.js.map +1 -1
- package/dist/src/http/yahooFinance.d.ts +1 -4
- package/dist/src/http/yahooFinance.d.ts.map +1 -1
- package/dist/src/http/yahooFinance.js +122 -93
- package/dist/src/http/yahooFinance.js.map +1 -1
- package/dist/src/iterm/itermRunCommandInSession.d.ts +0 -18
- package/dist/src/iterm/itermRunCommandInSession.d.ts.map +1 -1
- package/dist/src/iterm/itermRunCommandInSession.js +57 -86
- package/dist/src/iterm/itermRunCommandInSession.js.map +1 -1
- package/dist/src/platform/securityCompat.d.ts.map +1 -1
- package/dist/src/platform/securityCompat.js +14 -6
- package/dist/src/platform/securityCompat.js.map +1 -1
- package/dist/src/reminders/remindersSyncFromCalendar.d.ts +0 -6
- package/dist/src/reminders/remindersSyncFromCalendar.d.ts.map +1 -1
- package/dist/src/reminders/remindersSyncFromCalendar.js +62 -57
- package/dist/src/reminders/remindersSyncFromCalendar.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,30 +1,28 @@
|
|
|
1
1
|
import { quoteAppleScriptString, runOsaScript, parseSeparatedRows } from "../osascript/common.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const limit = Math.max(1, Math.min(500, Math.trunc(args.limit ?? 100)));
|
|
15
|
-
const lines = [
|
|
2
|
+
function normalizeParams(args) {
|
|
3
|
+
return {
|
|
4
|
+
calendar: args.calendar?.trim() || "Home",
|
|
5
|
+
remindersList: args.remindersList?.trim() || "Reminders",
|
|
6
|
+
fromDateText: args.fromDateText?.trim() || "1/1/1970 00:00",
|
|
7
|
+
toDateText: args.toDateText?.trim() || "1/1/2100 00:00",
|
|
8
|
+
titlePrefix: args.titlePrefix?.trim() || "[Cal] ",
|
|
9
|
+
limit: Math.max(1, Math.min(500, Math.trunc(args.limit ?? 100))),
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
function buildCalendarReadScript(params) {
|
|
13
|
+
return [
|
|
16
14
|
'tell application "Calendar"',
|
|
17
15
|
"set rs to (ASCII character 30)",
|
|
18
16
|
"set fs to (ASCII character 31)",
|
|
19
|
-
`set calName to ${quoteAppleScriptString(calendar)}`,
|
|
20
|
-
`set fromText to ${quoteAppleScriptString(fromDateText)}`,
|
|
21
|
-
`set toText to ${quoteAppleScriptString(toDateText)}`,
|
|
17
|
+
`set calName to ${quoteAppleScriptString(params.calendar)}`,
|
|
18
|
+
`set fromText to ${quoteAppleScriptString(params.fromDateText)}`,
|
|
19
|
+
`set toText to ${quoteAppleScriptString(params.toDateText)}`,
|
|
22
20
|
"set fromDate to date fromText",
|
|
23
21
|
"set toDate to date toText",
|
|
24
22
|
"set targetCal to calendar calName",
|
|
25
23
|
"set rows to {}",
|
|
26
24
|
"set n to 0",
|
|
27
|
-
`set maxCount to ${limit}`,
|
|
25
|
+
`set maxCount to ${params.limit}`,
|
|
28
26
|
"set matchedEvents to (every event of targetCal whose start date >= fromDate and start date <= toDate)",
|
|
29
27
|
"repeat with ev in matchedEvents",
|
|
30
28
|
"if n is greater than or equal to maxCount then exit repeat",
|
|
@@ -45,16 +43,12 @@ export async function remindersSyncFromCalendar(args) {
|
|
|
45
43
|
"return outText",
|
|
46
44
|
"end tell",
|
|
47
45
|
];
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
title: parts[0] ?? "",
|
|
52
|
-
startDateText: parts[1] ?? "",
|
|
53
|
-
}));
|
|
54
|
-
const existingLines = [
|
|
46
|
+
}
|
|
47
|
+
function buildRemindersReadScript(listName) {
|
|
48
|
+
return [
|
|
55
49
|
'tell application "Reminders"',
|
|
56
50
|
"set rs to (ASCII character 30)",
|
|
57
|
-
`set listNameText to ${quoteAppleScriptString(
|
|
51
|
+
`set listNameText to ${quoteAppleScriptString(listName)}`,
|
|
58
52
|
"set targetList to list listNameText",
|
|
59
53
|
"set names to {}",
|
|
60
54
|
"repeat with r in reminders of targetList",
|
|
@@ -70,56 +64,67 @@ export async function remindersSyncFromCalendar(args) {
|
|
|
70
64
|
"return outText",
|
|
71
65
|
"end tell",
|
|
72
66
|
];
|
|
73
|
-
|
|
74
|
-
|
|
67
|
+
}
|
|
68
|
+
function buildReminderCreateScript(remindersList, title, dueDateText) {
|
|
69
|
+
return [
|
|
70
|
+
'tell application "Reminders"',
|
|
71
|
+
`set listNameText to ${quoteAppleScriptString(remindersList)}`,
|
|
72
|
+
"set targetList to list listNameText",
|
|
73
|
+
`set t to ${quoteAppleScriptString(title)}`,
|
|
74
|
+
`set dueText to ${quoteAppleScriptString(dueDateText)}`,
|
|
75
|
+
"tell targetList",
|
|
76
|
+
"set r to make new reminder with properties {name:t}",
|
|
77
|
+
"try",
|
|
78
|
+
"set due date of r to date dueText",
|
|
79
|
+
"end try",
|
|
80
|
+
"end tell",
|
|
81
|
+
'return "ok"',
|
|
82
|
+
"end tell",
|
|
83
|
+
];
|
|
84
|
+
}
|
|
85
|
+
async function getCalendarCandidates(params) {
|
|
86
|
+
const output = await runOsaScript(buildCalendarReadScript(params), "CALENDAR");
|
|
87
|
+
return parseSeparatedRows(output).map((parts) => ({
|
|
88
|
+
title: parts[0] ?? "",
|
|
89
|
+
startDateText: parts[1] ?? "",
|
|
90
|
+
}));
|
|
91
|
+
}
|
|
92
|
+
async function getExistingReminderTitles(remindersList) {
|
|
93
|
+
const existingOutput = await runOsaScript(buildRemindersReadScript(remindersList), "REMINDERS");
|
|
94
|
+
return new Set(existingOutput
|
|
75
95
|
.split("\x1e")
|
|
76
96
|
.map((s) => s.trim())
|
|
77
97
|
.filter((s) => s.length > 0));
|
|
98
|
+
}
|
|
99
|
+
export async function remindersSyncFromCalendar(args) {
|
|
100
|
+
const params = normalizeParams(args);
|
|
101
|
+
const candidates = await getCalendarCandidates(params);
|
|
102
|
+
const existingTitles = await getExistingReminderTitles(params.remindersList);
|
|
78
103
|
const toCreate = candidates
|
|
79
|
-
.map((ev) => ({
|
|
80
|
-
title: `${titlePrefix}${ev.title}`,
|
|
81
|
-
dueDateText: ev.startDateText,
|
|
82
|
-
}))
|
|
104
|
+
.map((ev) => ({ title: `${params.titlePrefix}${ev.title}`, dueDateText: ev.startDateText }))
|
|
83
105
|
.filter((item) => item.title.trim().length > 0)
|
|
84
106
|
.filter((item) => !existingTitles.has(item.title));
|
|
85
107
|
let createdCount = 0;
|
|
86
108
|
for (const item of toCreate) {
|
|
87
|
-
|
|
88
|
-
'tell application "Reminders"',
|
|
89
|
-
`set listNameText to ${quoteAppleScriptString(remindersList)}`,
|
|
90
|
-
"set targetList to list listNameText",
|
|
91
|
-
`set t to ${quoteAppleScriptString(item.title)}`,
|
|
92
|
-
`set dueText to ${quoteAppleScriptString(item.dueDateText)}`,
|
|
93
|
-
"tell targetList",
|
|
94
|
-
"set r to make new reminder with properties {name:t}",
|
|
95
|
-
"try",
|
|
96
|
-
"set due date of r to date dueText",
|
|
97
|
-
"end try",
|
|
98
|
-
"end tell",
|
|
99
|
-
'return "ok"',
|
|
100
|
-
"end tell",
|
|
101
|
-
];
|
|
102
|
-
await runOsaScript(createLines, "REMINDERS");
|
|
109
|
+
await runOsaScript(buildReminderCreateScript(params.remindersList, item.title, item.dueDateText), "REMINDERS");
|
|
103
110
|
createdCount += 1;
|
|
104
111
|
}
|
|
105
112
|
return {
|
|
106
113
|
result: {
|
|
107
|
-
calendar,
|
|
108
|
-
remindersList,
|
|
109
|
-
fromDateText,
|
|
110
|
-
toDateText,
|
|
114
|
+
calendar: params.calendar,
|
|
115
|
+
remindersList: params.remindersList,
|
|
116
|
+
fromDateText: params.fromDateText,
|
|
117
|
+
toDateText: params.toDateText,
|
|
111
118
|
scannedCount: candidates.length,
|
|
112
119
|
createdCount,
|
|
113
120
|
skippedCount: Math.max(0, candidates.length - createdCount),
|
|
114
121
|
},
|
|
115
|
-
evidence: [
|
|
116
|
-
{
|
|
122
|
+
evidence: [{
|
|
117
123
|
type: "tool",
|
|
118
124
|
ref: "remindersSyncFromCalendar",
|
|
119
|
-
summary: `Synced calendar ${calendar} to reminders ${remindersList}, created ${createdCount}`,
|
|
125
|
+
summary: `Synced calendar ${params.calendar} to reminders ${params.remindersList}, created ${createdCount}`,
|
|
120
126
|
createdAt: new Date().toISOString(),
|
|
121
|
-
},
|
|
122
|
-
],
|
|
127
|
+
}],
|
|
123
128
|
};
|
|
124
129
|
}
|
|
125
130
|
//# sourceMappingURL=remindersSyncFromCalendar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remindersSyncFromCalendar.js","sourceRoot":"","sources":["../../../src/reminders/remindersSyncFromCalendar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"remindersSyncFromCalendar.js","sourceRoot":"","sources":["../../../src/reminders/remindersSyncFromCalendar.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@easynet/agent-tool-buildin",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.69",
|
|
4
4
|
"description": "Tools extension for @easynet/agent-tool: FS, HTTP, util, security (sandbox, SSRF). Same contract as any other extension.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|