@comchatx/cx-schedule 0.0.0-stage → 0.3.0
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/LICENSE +21 -0
- package/README.md +8 -2
- package/package.json +56 -4
- package/skills/cx-schedule/SKILL.md +18 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 ComChatX
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
Ask cx to do something at set times, such as checking your listings' Buy Box every hour, and cx keeps it as a scheduled job, which stays after cx's computer switches off.
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
## When jobs run
|
|
4
|
+
|
|
5
|
+
Jobs run only while cx's computer is on, that is, while you use cx or after you ask cx to keep it on. If cx's computer is off when a job falls due, the job doesn't run and doesn't switch it on.
|
|
6
|
+
|
|
7
|
+
## What it costs
|
|
8
|
+
|
|
9
|
+
You pay for the time cx's computer is kept on, and a job that runs often keeps it on.
|
package/package.json
CHANGED
|
@@ -1,6 +1,58 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@comchatx/cx-schedule",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "0.3.0",
|
|
4
|
+
"description": "Lets cx do things for you at the times you set.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"author": "ComChatX",
|
|
7
|
+
"comchatx": {
|
|
8
|
+
"about": "让 cx 在你设定的时间替你做事。",
|
|
9
|
+
"description": "让 cx 在设定的时间做某件事,比如每小时检查一次 listing 的 Buy Box,cx 会把它存为定时任务,cx 的电脑关机后任务也不会丢失。\n\n## 什么时候运行\n\n任务只在 cx 的电脑开机时运行,即你正在使用 cx,或已让 cx 保持开机时。到点时如果 cx 的电脑已关机,任务不会运行,也不会让它开机。\n\n## 费用\n\n保持开机的时长需要付费,运行频繁的任务也会让 cx 的电脑保持开机。",
|
|
10
|
+
"mark": {
|
|
11
|
+
"line": "clock"
|
|
12
|
+
},
|
|
13
|
+
"section": "extensions",
|
|
14
|
+
"order": 30,
|
|
15
|
+
"builds": [
|
|
16
|
+
"@amaster.ai/pi-task-scheduler"
|
|
17
|
+
]
|
|
18
|
+
},
|
|
19
|
+
"homepage": "https://github.com/comchatx/cx-schedule#readme",
|
|
20
|
+
"repository": {
|
|
21
|
+
"type": "git",
|
|
22
|
+
"url": "git+https://github.com/comchatx/cx-schedule.git"
|
|
23
|
+
},
|
|
24
|
+
"bugs": "https://github.com/comchatx/cx-schedule/issues",
|
|
25
|
+
"keywords": [
|
|
26
|
+
"pi-package"
|
|
27
|
+
],
|
|
28
|
+
"type": "module",
|
|
29
|
+
"pi": {
|
|
30
|
+
"skills": [
|
|
31
|
+
"./skills"
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
"files": [
|
|
35
|
+
"skills"
|
|
36
|
+
],
|
|
37
|
+
"scripts": {
|
|
38
|
+
"typecheck": "tsc --noEmit",
|
|
39
|
+
"test": "vitest run"
|
|
40
|
+
},
|
|
41
|
+
"peerDependencies": {
|
|
42
|
+
"@earendil-works/pi-coding-agent": "*"
|
|
43
|
+
},
|
|
44
|
+
"devDependencies": {
|
|
45
|
+
"@earendil-works/pi-coding-agent": "1.3.0",
|
|
46
|
+
"@types/node": "26.2.0",
|
|
47
|
+
"typescript": "7.0.2",
|
|
48
|
+
"vitest": "4.1.11"
|
|
49
|
+
},
|
|
50
|
+
"overrides": {
|
|
51
|
+
"@earendil-works/pi-ai": "1.3.0",
|
|
52
|
+
"@earendil-works/pi-mcp": "1.3.0",
|
|
53
|
+
"@earendil-works/pi-tui": "1.3.0",
|
|
54
|
+
"@earendil-works/pi-codemode": "1.3.0",
|
|
55
|
+
"@earendil-works/pi-agent-core": "1.3.0",
|
|
56
|
+
"@earendil-works/pi-telemetry": "1.3.0"
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cx-schedule
|
|
3
|
+
description: "Scheduled tasks in a ComChatX box - a recurring check, a task at a time - run by `@amaster.ai/pi-task-scheduler`, which cx-schedule needs, and its `scheduler_*` tools; what the tools' own words miss here. cx-schedule needs `@amaster.ai/pi-task-scheduler`: where no `scheduler_*` tool is there, the scheduler is not installed, and the seller installs it in Plugins, which installs it with cx-schedule. cx-schedule installs from Plugins, or with `pi install -l npm:@comchatx/cx-schedule` run in /tenant (without -l it is gone at the box's next start)."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## When a task runs
|
|
7
|
+
|
|
8
|
+
- A task runs only while the box is awake: in use, or kept up by `keep_awake` in `/tenant/settings.json`. A sleeping box runs no task, and no task wakes it. Awake time is billed.
|
|
9
|
+
- A task whose time falls while the box sleeps does not run, and does not wake the box: a `cron` task runs at its next time after the box opens, an `interval` task counts its interval again from the open, and a `once` task whose time passed is marked `error` and never runs.
|
|
10
|
+
- A task that runs more often than the box's idle threshold keeps the box awake, and that time is billed.
|
|
11
|
+
- The box's clock is UTC: a `cron` schedule is read in UTC.
|
|
12
|
+
|
|
13
|
+
## Where a task lands
|
|
14
|
+
|
|
15
|
+
- A task belongs to the conversation it was made in. It runs as a follow-up turn there, after any turn under way, and only while that conversation is the open one; in another conversation it neither runs nor shows in `scheduler_list`.
|
|
16
|
+
- A run's `success` means pi took the turn, not that the work in it succeeded.
|
|
17
|
+
- A task runs on the conversation's own model: the `model` a task records is not used.
|
|
18
|
+
- The tasks live in `/tenant/.pi/pi-scheduler/`, where the box points the scheduler, so they outlast the box's stops.
|