@zhin.js/plugin-reminder 1.0.0 → 1.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.
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhin.js/plugin-reminder",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Persistent personal reminders for Zhin Plugin Runtime",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
"exports": {
|
|
9
9
|
".": {
|
|
10
10
|
"types": "./lib/index.d.ts",
|
|
11
|
-
"development": "./src/index.ts",
|
|
12
11
|
"import": "./lib/index.js"
|
|
13
12
|
}
|
|
14
13
|
},
|
|
@@ -22,15 +21,15 @@
|
|
|
22
21
|
"src"
|
|
23
22
|
],
|
|
24
23
|
"dependencies": {
|
|
25
|
-
"@zhin.js/im-contract": "1.1.
|
|
24
|
+
"@zhin.js/im-contract": "1.1.4",
|
|
25
|
+
"@zhin.js/skill": "1.1.6",
|
|
26
|
+
"@zhin.js/tool": "1.1.6"
|
|
26
27
|
},
|
|
27
28
|
"peerDependencies": {
|
|
28
29
|
"zod": "^4.0.0",
|
|
29
|
-
"zhin.js": "^1.1.
|
|
30
|
-
"@zhin.js/command": "^1.1.
|
|
31
|
-
"@zhin.js/schedule-feature": "^1.1.
|
|
32
|
-
"@zhin.js/tool": "^1.1.4",
|
|
33
|
-
"@zhin.js/skill": "^1.1.4"
|
|
30
|
+
"zhin.js": "^1.1.9",
|
|
31
|
+
"@zhin.js/command": "^1.1.7",
|
|
32
|
+
"@zhin.js/schedule-feature": "^1.1.5"
|
|
34
33
|
},
|
|
35
34
|
"peerDependenciesMeta": {
|
|
36
35
|
"@zhin.js/command": {
|
|
@@ -39,12 +38,6 @@
|
|
|
39
38
|
"@zhin.js/schedule-feature": {
|
|
40
39
|
"optional": true
|
|
41
40
|
},
|
|
42
|
-
"@zhin.js/tool": {
|
|
43
|
-
"optional": true
|
|
44
|
-
},
|
|
45
|
-
"@zhin.js/skill": {
|
|
46
|
-
"optional": true
|
|
47
|
-
},
|
|
48
41
|
"zod": {
|
|
49
42
|
"optional": true
|
|
50
43
|
}
|
|
@@ -53,13 +46,11 @@
|
|
|
53
46
|
"typescript": "^6.0.3",
|
|
54
47
|
"vitest": "^4.1.10",
|
|
55
48
|
"zod": "^4.4.3",
|
|
56
|
-
"zhin.js": "1.1.
|
|
57
|
-
"@zhin.js/
|
|
58
|
-
"@zhin.js/schedule-feature": "1.1.3",
|
|
59
|
-
"@zhin.js/skill": "1.1.4"
|
|
49
|
+
"zhin.js": "1.1.9",
|
|
50
|
+
"@zhin.js/schedule-feature": "1.1.5"
|
|
60
51
|
},
|
|
61
52
|
"engines": {
|
|
62
|
-
"node": "
|
|
53
|
+
"node": ">=22.19.0"
|
|
63
54
|
},
|
|
64
55
|
"license": "MIT",
|
|
65
56
|
"repository": {
|
|
@@ -28,29 +28,29 @@ export default defineAgentTool({
|
|
|
28
28
|
.optional()
|
|
29
29
|
.describe("Repeat interval in seconds (min 60). First fire is now+interval."),
|
|
30
30
|
}),
|
|
31
|
-
async execute(
|
|
31
|
+
async execute({ text, after, at, every_seconds }, context) {
|
|
32
32
|
return replyReminder(async () => {
|
|
33
33
|
const modes = [
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
after,
|
|
35
|
+
at,
|
|
36
|
+
every_seconds !== undefined ? "every" : undefined,
|
|
37
37
|
].filter(Boolean);
|
|
38
38
|
if (modes.length !== 1) {
|
|
39
39
|
throw new ReminderInputError("请在 after / at / every_seconds 中只选一种时间表达");
|
|
40
40
|
}
|
|
41
41
|
const service = context.use(reminderServiceToken);
|
|
42
42
|
const actor = reminderActorFromTool(context);
|
|
43
|
-
if (
|
|
44
|
-
const intervalMs =
|
|
45
|
-
const task = await service.add(actor,
|
|
43
|
+
if (every_seconds !== undefined) {
|
|
44
|
+
const intervalMs = every_seconds * 1000;
|
|
45
|
+
const task = await service.add(actor, text, Date.now() + intervalMs, intervalMs);
|
|
46
46
|
return `已创建周期提醒\n${service.describe(task)}`;
|
|
47
47
|
}
|
|
48
|
-
if (
|
|
49
|
-
const delayMs = parseRelativeDelayMs(
|
|
50
|
-
const task = await service.add(actor,
|
|
48
|
+
if (after) {
|
|
49
|
+
const delayMs = parseRelativeDelayMs(after);
|
|
50
|
+
const task = await service.add(actor, text, Date.now() + delayMs, null);
|
|
51
51
|
return `已创建提醒\n${service.describe(task)}`;
|
|
52
52
|
}
|
|
53
|
-
const task = await service.add(actor,
|
|
53
|
+
const task = await service.add(actor, text, parseReminderInstant(at), null);
|
|
54
54
|
return `已创建提醒\n${service.describe(task)}`;
|
|
55
55
|
});
|
|
56
56
|
},
|
|
@@ -36,12 +36,12 @@ export default defineAgentTool({
|
|
|
36
36
|
"Repeat interval in seconds (min 60). First fire is now+interval."
|
|
37
37
|
),
|
|
38
38
|
}),
|
|
39
|
-
async execute(
|
|
39
|
+
async execute({ text, after, at, every_seconds }, context) {
|
|
40
40
|
return replyReminder(async () => {
|
|
41
41
|
const modes = [
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
after,
|
|
43
|
+
at,
|
|
44
|
+
every_seconds !== undefined ? "every" : undefined,
|
|
45
45
|
].filter(Boolean);
|
|
46
46
|
if (modes.length !== 1) {
|
|
47
47
|
throw new ReminderInputError(
|
|
@@ -50,30 +50,25 @@ export default defineAgentTool({
|
|
|
50
50
|
}
|
|
51
51
|
const service = context.use(reminderServiceToken);
|
|
52
52
|
const actor = reminderActorFromTool(context);
|
|
53
|
-
if (
|
|
54
|
-
const intervalMs =
|
|
53
|
+
if (every_seconds !== undefined) {
|
|
54
|
+
const intervalMs = every_seconds * 1000;
|
|
55
55
|
const task = await service.add(
|
|
56
56
|
actor,
|
|
57
|
-
|
|
57
|
+
text,
|
|
58
58
|
Date.now() + intervalMs,
|
|
59
59
|
intervalMs
|
|
60
60
|
);
|
|
61
61
|
return `已创建周期提醒\n${service.describe(task)}`;
|
|
62
62
|
}
|
|
63
|
-
if (
|
|
64
|
-
const delayMs = parseRelativeDelayMs(
|
|
65
|
-
const task = await service.add(
|
|
66
|
-
actor,
|
|
67
|
-
input.text,
|
|
68
|
-
Date.now() + delayMs,
|
|
69
|
-
null
|
|
70
|
-
);
|
|
63
|
+
if (after) {
|
|
64
|
+
const delayMs = parseRelativeDelayMs(after);
|
|
65
|
+
const task = await service.add(actor, text, Date.now() + delayMs, null);
|
|
71
66
|
return `已创建提醒\n${service.describe(task)}`;
|
|
72
67
|
}
|
|
73
68
|
const task = await service.add(
|
|
74
69
|
actor,
|
|
75
|
-
|
|
76
|
-
parseReminderInstant(
|
|
70
|
+
text,
|
|
71
|
+
parseReminderInstant(at!),
|
|
77
72
|
null
|
|
78
73
|
);
|
|
79
74
|
return `已创建提醒\n${service.describe(task)}`;
|