downcity 1.0.487 → 1.0.489
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/bin/main/service/ServiceSystemProviders.d.ts.map +1 -1
- package/bin/main/service/ServiceSystemProviders.js +5 -0
- package/bin/main/service/ServiceSystemProviders.js.map +1 -1
- package/bin/services/contact/ContactService.d.ts.map +1 -1
- package/bin/services/contact/ContactService.js +2 -11
- package/bin/services/contact/ContactService.js.map +1 -1
- package/bin/services/contact/PROMPT.txt +16 -7
- package/bin/services/contact/runtime/SystemProvider.d.ts.map +1 -0
- package/bin/services/contact/runtime/SystemProvider.js +21 -0
- package/bin/services/contact/runtime/SystemProvider.js.map +1 -0
- package/bin/services/task/Scheduler.d.ts.map +1 -1
- package/bin/services/task/Scheduler.js +4 -0
- package/bin/services/task/Scheduler.js.map +1 -1
- package/bin/session/composer/system/default/SystemDomain.d.ts.map +1 -1
- package/bin/session/composer/system/default/SystemDomain.js +9 -0
- package/bin/session/composer/system/default/SystemDomain.js.map +1 -1
- package/bin/session/composer/system/default/assets/core.prompt.txt +1 -1
- package/bin/session/composer/system/default/variables/PromptTypes.d.ts.map +1 -1
- package/bin/session/composer/system/default/variables/VariableReplacer.d.ts.map +1 -1
- package/bin/session/composer/system/default/variables/VariableReplacer.js +38 -43
- package/bin/session/composer/system/default/variables/VariableReplacer.js.map +1 -1
- package/bin/shared/utils/Time.d.ts.map +1 -1
- package/bin/shared/utils/Time.js +51 -0
- package/bin/shared/utils/Time.js.map +1 -1
- package/package.json +1 -1
- package/src/services/contact/PROMPT.txt +16 -7
- package/src/session/composer/system/default/assets/core.prompt.txt +1 -1
- package/test/contact/contact-runtime.test.mjs +13 -0
- package/test/core/context-system-prompt.test.mjs +29 -1
- package/test/core/prompt-variable-replacer.test.mjs +55 -1
- package/test/task/schedule-timezone-validation.test.mjs +54 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServiceSystemProviders.d.ts","sourceRoot":"","sources":["../../../src/main/service/ServiceSystemProviders.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ServiceSystemProviders.d.ts","sourceRoot":"","sources":["../../../src/main/service/ServiceSystemProviders.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAMlE;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAC7D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,qBAAqB,EAiB3D,CAAC"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* - 这样也能避开 `task -> runner -> prompt system -> service class registry` 的循环依赖。
|
|
8
8
|
*/
|
|
9
9
|
import { buildChatServiceSystem } from "../../services/chat/runtime/ChatServiceSystem.js";
|
|
10
|
+
import { buildContactServiceSystemText } from "../../services/contact/runtime/SystemProvider.js";
|
|
10
11
|
import { buildMemoryServiceSystemText } from "../../services/memory/runtime/SystemProvider.js";
|
|
11
12
|
import { TASK_SERVICE_PROMPT } from "../../services/task/runtime/TaskServiceSystem.js";
|
|
12
13
|
/**
|
|
@@ -17,6 +18,10 @@ export const SERVICE_SYSTEM_PROVIDERS = [
|
|
|
17
18
|
name: "chat",
|
|
18
19
|
system: buildChatServiceSystem,
|
|
19
20
|
},
|
|
21
|
+
{
|
|
22
|
+
name: "contact",
|
|
23
|
+
system: buildContactServiceSystemText,
|
|
24
|
+
},
|
|
20
25
|
{
|
|
21
26
|
name: "task",
|
|
22
27
|
system: () => TASK_SERVICE_PROMPT,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServiceSystemProviders.js","sourceRoot":"","sources":["../../../src/main/service/ServiceSystemProviders.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAgBlF;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAA4B;IAC/D;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,sBAAsB;KAC/B;IACD;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,GAAG,EAAE,CAAC,mBAAmB;KAClC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,4BAA4B;KACrC;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"ServiceSystemProviders.js","sourceRoot":"","sources":["../../../src/main/service/ServiceSystemProviders.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAgBlF;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAA4B;IAC/D;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,sBAAsB;KAC/B;IACD;QACE,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,6BAA6B;KACtC;IACD;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,GAAG,EAAE,CAAC,mBAAmB;KAClC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,4BAA4B;KACrC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContactService.d.ts","sourceRoot":"","sources":["../../../src/services/contact/ContactService.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"ContactService.d.ts","sourceRoot":"","sources":["../../../src/services/contact/ContactService.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGlE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAwGvD;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC7C;;OAEG;IACH,QAAQ,CAAC,IAAI,aAAa;IAE1B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;gBAErB,KAAK,EAAE,YAAY,GAAG,IAAI;IAoRtC;;OAEG;IACH,MAAM,IAAI,MAAM;YAIF,IAAI;YAoCJ,OAAO;YAgCP,KAAK;YAqCL,IAAI;YAkCJ,KAAK;YA2BL,UAAU;YAqBV,aAAa;YA+Db,WAAW;CA0B1B"}
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
* - 每个 contact 固定一条长期 chat history。
|
|
7
7
|
* - `share` 分享文本、链接、文件和目录,并进入对方 inbox。
|
|
8
8
|
*/
|
|
9
|
-
import { readFileSync } from "node:fs";
|
|
10
9
|
import { BaseService } from "../BaseService.js";
|
|
11
10
|
import { appendContactMessage, createStableContactId, findContact, findContactByInboundToken, listContacts, normalizeContactEndpoint, readContactMessages, saveContact, touchContactSeen, } from "./runtime/ContactStore.js";
|
|
12
11
|
import { createContactLinkCode, isContactLinkExpired, parseContactLinkCode, } from "./runtime/LinkCode.js";
|
|
@@ -16,15 +15,7 @@ import { callContactApprove, callContactChat, callContactPing, callContactShare,
|
|
|
16
15
|
import { listContactInboxShares, saveContactInboxShare, } from "./runtime/InboxStore.js";
|
|
17
16
|
import { createShareInput, receiveShare, } from "./runtime/ShareBundle.js";
|
|
18
17
|
import { receiveContactChatMessage } from "./runtime/ChatRuntime.js";
|
|
19
|
-
|
|
20
|
-
function loadContactPrompt() {
|
|
21
|
-
try {
|
|
22
|
-
return readFileSync(CONTACT_PROMPT_FILE_URL, "utf-8").trim();
|
|
23
|
-
}
|
|
24
|
-
catch {
|
|
25
|
-
return "";
|
|
26
|
-
}
|
|
27
|
-
}
|
|
18
|
+
import { buildContactServiceSystemText } from "./runtime/SystemProvider.js";
|
|
28
19
|
function readObject(value) {
|
|
29
20
|
return value && typeof value === "object" && !Array.isArray(value)
|
|
30
21
|
? value
|
|
@@ -341,7 +332,7 @@ export class ContactService extends BaseService {
|
|
|
341
332
|
* contact system 文本。
|
|
342
333
|
*/
|
|
343
334
|
system() {
|
|
344
|
-
return
|
|
335
|
+
return buildContactServiceSystemText();
|
|
345
336
|
}
|
|
346
337
|
async link(context, payload) {
|
|
347
338
|
const now = Date.now();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContactService.js","sourceRoot":"","sources":["../../../src/services/contact/ContactService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContactService.js","sourceRoot":"","sources":["../../../src/services/contact/ContactService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
Contact service
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
- `contact
|
|
7
|
-
-
|
|
8
|
-
- `contact
|
|
9
|
-
-
|
|
3
|
+
contact service 用来管理和其他 agent 的联系方式。一个 contact 代表一个已建立联系的远端 agent,并固定拥有一条长期对话历史。
|
|
4
|
+
|
|
5
|
+
可用命令:
|
|
6
|
+
- `contact link`:生成一次性联系码,交给另一个 agent。
|
|
7
|
+
- `contact approve <code>`:使用对方给的联系码建立 contact。
|
|
8
|
+
- `contact list`:查看已保存的 agent 联系方式。
|
|
9
|
+
- `contact check <contact>` / `contact check --to <ip:port>`:检查对方是否在线可用。
|
|
10
|
+
- `contact chat --to <contact> "<message>"`:和某个 agent 对话。
|
|
11
|
+
- `contact share --to <contact> --text ... | --link ... | <path...>`:分享文本、链接、文件或目录。
|
|
12
|
+
- `contact inbox`:查看收到的分享。
|
|
13
|
+
- `contact receive <share_id>`:接收某条分享。
|
|
14
|
+
|
|
15
|
+
边界:
|
|
16
|
+
- chat 用于对话,share 用于资料交接。
|
|
17
|
+
- receive 只接收内容,不自动执行、不安装 skill、不修改项目业务文件。
|
|
18
|
+
- 不自动 approve 或 receive,除非用户明确要求。
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SystemProvider.d.ts","sourceRoot":"","sources":["../../../../src/services/contact/runtime/SystemProvider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH;;GAEG;AACH,wBAAgB,6BAA6B,IAAI,MAAM,CAMtD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* contact service system prompt 提供器。
|
|
3
|
+
*
|
|
4
|
+
* 关键点(中文)
|
|
5
|
+
* - session system composer 通过静态 provider 清单读取 service system。
|
|
6
|
+
* - contact prompt 在这里统一读取,避免 service 实例和 system 域产生耦合。
|
|
7
|
+
*/
|
|
8
|
+
import { readFileSync } from "node:fs";
|
|
9
|
+
const CONTACT_PROMPT_FILE_URL = new URL("../PROMPT.txt", import.meta.url);
|
|
10
|
+
/**
|
|
11
|
+
* 构建 contact service system 文本。
|
|
12
|
+
*/
|
|
13
|
+
export function buildContactServiceSystemText() {
|
|
14
|
+
try {
|
|
15
|
+
return readFileSync(CONTACT_PROMPT_FILE_URL, "utf-8").trim();
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
return "";
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=SystemProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SystemProvider.js","sourceRoot":"","sources":["../../../../src/services/contact/runtime/SystemProvider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE1E;;GAEG;AACH,MAAM,UAAU,6BAA6B;IAC3C,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scheduler.d.ts","sourceRoot":"","sources":["../../../src/services/task/Scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAQlE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"Scheduler.d.ts","sourceRoot":"","sources":["../../../src/services/task/Scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAQlE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AASpD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAAC,CAwNzD"}
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
import { isTaskWhenManual, resolveTaskWhenCronExpression, resolveTaskWhenOneShotMs, } from "./runtime/Model.js";
|
|
9
9
|
import { listTasks, readTask, writeTask } from "./runtime/Store.js";
|
|
10
10
|
import { runTaskNow } from "./runtime/Runner.js";
|
|
11
|
+
import { resolveRuntimeTimezone } from "../../shared/utils/Time.js";
|
|
11
12
|
const TASK_LOG_PREFIX = "[TASK]";
|
|
12
13
|
function formatTaskLogMessage(message) {
|
|
13
14
|
return `${TASK_LOG_PREFIX} ${message}`;
|
|
@@ -16,6 +17,7 @@ export async function registerTaskCronJobs(params) {
|
|
|
16
17
|
const context = params.context;
|
|
17
18
|
const logger = context.logger;
|
|
18
19
|
const tasks = await listTasks(context.rootPath);
|
|
20
|
+
const runtimeTimezone = resolveRuntimeTimezone();
|
|
19
21
|
const runningByTaskId = new Set();
|
|
20
22
|
let jobsScheduled = 0;
|
|
21
23
|
for (const item of tasks) {
|
|
@@ -36,6 +38,7 @@ export async function registerTaskCronJobs(params) {
|
|
|
36
38
|
params.engine.register({
|
|
37
39
|
id: `task:${item.taskId}`,
|
|
38
40
|
expression: expr,
|
|
41
|
+
timezone: runtimeTimezone,
|
|
39
42
|
execute: async () => {
|
|
40
43
|
const taskId = String(item.taskId || "").trim();
|
|
41
44
|
if (!taskId)
|
|
@@ -118,6 +121,7 @@ export async function registerTaskCronJobs(params) {
|
|
|
118
121
|
params.engine.register({
|
|
119
122
|
id: `task-time:${item.taskId}`,
|
|
120
123
|
expression: "* * * * *",
|
|
124
|
+
timezone: runtimeTimezone,
|
|
121
125
|
execute: async () => {
|
|
122
126
|
const taskId = String(item.taskId || "").trim();
|
|
123
127
|
if (!taskId)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scheduler.js","sourceRoot":"","sources":["../../../src/services/task/Scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,gBAAgB,EAChB,6BAA6B,EAC7B,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"Scheduler.js","sourceRoot":"","sources":["../../../src/services/task/Scheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemDomain.d.ts","sourceRoot":"","sources":["../../../../../src/session/composer/system/default/SystemDomain.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAK7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"SystemDomain.d.ts","sourceRoot":"","sources":["../../../../../src/session/composer/system/default/SystemDomain.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAK7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAoClE;;GAEG;AACH,eAAO,MAAM,oBAAoB,QAGhC,CAAC;AAWF;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC9C;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B,GAAG,MAAM,CAuBT;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE;IAChD;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC,GAAG,MAAM,EAAE,CAKX;AAED,KAAK,4BAA4B,GAAG;IAClC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,qBAAqB,EAAE,MAAM,EAAE,CAAC;CACjC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC;AAE5C;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,CAAC,EAAE,aAAa,GACtB,4BAA4B,CAY9B;AAED;;;;;;GAMG;AACH,wBAAsB,wBAAwB,CAAC,KAAK,EAAE;IACpD;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC;IAEtB;;OAEG;IACH,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBpB;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC;CACvB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA0BpB;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAAC,KAAK,EAAE;IACtD;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC;;OAEG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAE9B;;OAEG;IACH,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAE/B;;OAEG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAmDhC;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CAAC,KAAK,EAAE;IACxD;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IAExB;;OAEG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAE9B;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC;CAEvB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAgBhC"}
|
|
@@ -10,6 +10,7 @@ import { transformPromptsIntoSystemMessages } from "../../../composer/system/def
|
|
|
10
10
|
import { isPluginEnabled } from "../../../../main/plugin/Activation.js";
|
|
11
11
|
import { PLUGINS } from "../../../../main/plugin/Plugins.js";
|
|
12
12
|
import { SERVICE_SYSTEM_PROVIDERS } from "../../../../main/service/ServiceSystemProviders.js";
|
|
13
|
+
import { buildRuntimeClockSystemPrompt } from "../../../composer/system/default/variables/VariableReplacer.js";
|
|
13
14
|
const CORE_PROMPT_FILE_URL = new URL("./assets/core.prompt.txt", import.meta.url);
|
|
14
15
|
const SERVICE_PROMPT_FILE_URL = new URL("./assets/service.prompt.txt", import.meta.url);
|
|
15
16
|
const TASK_PROMPT_FILE_URL = new URL("./assets/task.prompt.txt", import.meta.url);
|
|
@@ -170,6 +171,13 @@ export async function loadPluginSystemPrompts(input) {
|
|
|
170
171
|
* - context/static/service 的组装逻辑统一收敛在 system 域。
|
|
171
172
|
*/
|
|
172
173
|
export async function buildSessionSystemMessages(input) {
|
|
174
|
+
const runtimeClockText = buildRuntimeClockSystemPrompt({
|
|
175
|
+
projectPath: input.projectRoot,
|
|
176
|
+
sessionId: input.sessionId,
|
|
177
|
+
});
|
|
178
|
+
const runtimeClockMessages = runtimeClockText
|
|
179
|
+
? [{ role: "system", content: runtimeClockText }]
|
|
180
|
+
: [];
|
|
173
181
|
const runtimeSystemText = buildContextSystemPrompt({
|
|
174
182
|
projectRoot: input.projectRoot,
|
|
175
183
|
sessionId: input.sessionId,
|
|
@@ -198,6 +206,7 @@ export async function buildSessionSystemMessages(input) {
|
|
|
198
206
|
...serviceSystemMessages,
|
|
199
207
|
...pluginSystemMessages,
|
|
200
208
|
...runtimeRuleMessages,
|
|
209
|
+
...runtimeClockMessages,
|
|
201
210
|
];
|
|
202
211
|
}
|
|
203
212
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemDomain.js","sourceRoot":"","sources":["../../../../../src/session/composer/system/default/SystemDomain.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,OAAO,EAAE,kCAAkC,EAAE,MAAM,oDAAoD,CAAC;AACxG,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"SystemDomain.js","sourceRoot":"","sources":["../../../../../src/session/composer/system/default/SystemDomain.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
# 默认决策与澄清
|
|
27
27
|
- 默认先执行,再沟通:对低风险、可回滚、用户意图已经足够明显的请求,优先基于当前日期、时区、聊天上下文与常见默认值直接执行,不要在事件标题、默认平台、显然的时间表达上反复追问。
|
|
28
28
|
- 只有当“缺失信息会实质改变结果”时才追问;例如:会影响日期/对象/金额/账户/发送目标,或会触发不可逆、高风险、涉隐私操作。
|
|
29
|
-
- 处理时间表达时,优先使用当前环境提供的 `current_date` 与 `timezone
|
|
29
|
+
- 处理时间表达时,优先使用当前环境提供的 `current_date`、`current_time` 与 `timezone`;如果入站 `<info>` 明确提供了 `user_timezone`,则优先按 `user_timezone` 解析,否则按 runtime clock 的 `timezone` 解析。像“今天/明天/下午两点/提前两小时”这类表达,应先解析为绝对时间,再执行,并在回复里明确写出绝对日期时间。
|
|
30
30
|
- 当任务依赖外部权限、系统能力或第三方连接(如日历、提醒事项、聊天渠道、系统授权)时,先探测可用性,再决定是否承诺“我来创建/发送/写入”。
|
|
31
31
|
- 如果探测结果显示被系统权限、宿主环境或连接状态阻塞,要直接说明真实阻塞点和下一步,而不是先给出“可以,我来做”的承诺后再多轮追问。
|
|
32
32
|
- 若已经有足够信息可以一次完成多个低风险默认动作,应直接完成,并在结果里简短说明采用了哪些默认假设。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptTypes.d.ts","sourceRoot":"","sources":["../../../../../../src/session/composer/system/default/variables/PromptTypes.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;CACvC;AAED,MAAM,WAAW,eAAe;IAC9B,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc;IACd,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
1
|
+
{"version":3,"file":"PromptTypes.d.ts","sourceRoot":"","sources":["../../../../../../src/session/composer/system/default/variables/PromptTypes.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;CACvC;AAED,MAAM,WAAW,eAAe;IAC9B,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc;IACd,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariableReplacer.d.ts","sourceRoot":"","sources":["../../../../../../src/session/composer/system/default/variables/VariableReplacer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"VariableReplacer.d.ts","sourceRoot":"","sources":["../../../../../../src/session/composer/system/default/variables/VariableReplacer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAkDnD;;;;;;;;;;;;GAYG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;IACR;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,IAAI,CAAC,EAAE,kBAAkB,CAAC;CAC3B,GACA,OAAO,CAAC,MAAM,CAAC,CAajB;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,CAAC,EAAE;IACtD;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAcT"}
|
|
@@ -7,53 +7,18 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { resolvePromptGeoContext } from "../../../../composer/system/default/variables/GeoContext.js";
|
|
9
9
|
import { renderTemplateVariables } from "../../../../../shared/utils/Template.js";
|
|
10
|
-
|
|
11
|
-
* 获取当前时间字符串(指定时区)。
|
|
12
|
-
*/
|
|
13
|
-
function getCurrentTimeString(timezone) {
|
|
14
|
-
try {
|
|
15
|
-
// 关键点(中文):使用固定格式,确保模型读取时区信息时稳定。
|
|
16
|
-
const formatted = new Intl.DateTimeFormat("sv-SE", {
|
|
17
|
-
timeZone: timezone,
|
|
18
|
-
year: "numeric",
|
|
19
|
-
month: "2-digit",
|
|
20
|
-
day: "2-digit",
|
|
21
|
-
hour: "2-digit",
|
|
22
|
-
minute: "2-digit",
|
|
23
|
-
second: "2-digit",
|
|
24
|
-
hour12: false,
|
|
25
|
-
})
|
|
26
|
-
.format(new Date())
|
|
27
|
-
.replace(" ", "T");
|
|
28
|
-
return `${formatted} (${timezone})`;
|
|
29
|
-
}
|
|
30
|
-
catch {
|
|
31
|
-
return new Date().toISOString();
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* 获取当前年份字符串(指定时区)。
|
|
36
|
-
*/
|
|
37
|
-
function getCurrentYearString(timezone) {
|
|
38
|
-
try {
|
|
39
|
-
return new Intl.DateTimeFormat("en-US", {
|
|
40
|
-
timeZone: timezone,
|
|
41
|
-
year: "numeric",
|
|
42
|
-
}).format(new Date());
|
|
43
|
-
}
|
|
44
|
-
catch {
|
|
45
|
-
return String(new Date().getUTCFullYear());
|
|
46
|
-
}
|
|
47
|
-
}
|
|
10
|
+
import { formatDateInTimezone, formatDateTimeInTimezone, formatYearInTimezone, resolveRuntimeTimezone, } from "../../../../../shared/utils/Time.js";
|
|
48
11
|
async function buildPromptVariables(options) {
|
|
49
12
|
const mode = options?.mode === "stable" ? "stable" : "full";
|
|
50
13
|
const projectPath = String(options?.projectPath || "").trim() || process.cwd();
|
|
51
|
-
const
|
|
52
|
-
const
|
|
14
|
+
const safeLocalTimezone = resolveRuntimeTimezone();
|
|
15
|
+
const now = new Date();
|
|
53
16
|
if (mode === "stable") {
|
|
54
17
|
return {
|
|
18
|
+
currentDate: "[See runtime clock tail message]",
|
|
55
19
|
currentTime: "[See runtime clock tail message]",
|
|
56
|
-
currentYear:
|
|
20
|
+
currentYear: formatYearInTimezone(now, safeLocalTimezone),
|
|
21
|
+
timezone: safeLocalTimezone,
|
|
57
22
|
location: "[See runtime clock tail message]",
|
|
58
23
|
projectPath,
|
|
59
24
|
projectRoot: projectPath,
|
|
@@ -63,8 +28,11 @@ async function buildPromptVariables(options) {
|
|
|
63
28
|
const geo = await resolvePromptGeoContext();
|
|
64
29
|
const sessionId = String(options?.sessionId || "").trim() || "unknown";
|
|
65
30
|
return {
|
|
66
|
-
|
|
67
|
-
|
|
31
|
+
// 关键点(中文):时间字段只使用本机 runtime 时区,避免代理/IP 地理推断改变 cron 与相对时间口径。
|
|
32
|
+
currentDate: formatDateInTimezone(now, safeLocalTimezone),
|
|
33
|
+
currentTime: formatDateTimeInTimezone(now, safeLocalTimezone),
|
|
34
|
+
currentYear: formatYearInTimezone(now, safeLocalTimezone),
|
|
35
|
+
timezone: safeLocalTimezone,
|
|
68
36
|
location: geo.location,
|
|
69
37
|
projectPath,
|
|
70
38
|
projectRoot: projectPath,
|
|
@@ -76,7 +44,9 @@ async function buildPromptVariables(options) {
|
|
|
76
44
|
*
|
|
77
45
|
* 当前支持(中文)
|
|
78
46
|
* - `{{current_time}}`
|
|
47
|
+
* - `{{current_date}}`
|
|
79
48
|
* - `{{current_year}}`
|
|
49
|
+
* - `{{timezone}}`
|
|
80
50
|
* - `{{location}}`
|
|
81
51
|
* - `{{project_path}}`
|
|
82
52
|
* - `{{project_root}}`
|
|
@@ -87,12 +57,37 @@ export async function replaceVariablesInPrompts(prompt, options) {
|
|
|
87
57
|
return prompt;
|
|
88
58
|
const variables = await buildPromptVariables(options);
|
|
89
59
|
return renderTemplateVariables(prompt, {
|
|
60
|
+
current_date: variables.currentDate,
|
|
90
61
|
current_time: variables.currentTime,
|
|
91
62
|
current_year: variables.currentYear,
|
|
63
|
+
timezone: variables.timezone,
|
|
92
64
|
location: variables.location,
|
|
93
65
|
project_path: variables.projectPath,
|
|
94
66
|
project_root: variables.projectRoot,
|
|
95
67
|
session_id: variables.sessionId,
|
|
96
68
|
});
|
|
97
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* 构建每轮运行末尾的 runtime clock system prompt。
|
|
72
|
+
*
|
|
73
|
+
* 关键点(中文)
|
|
74
|
+
* - system/static prompt 使用 stable 模式,不能直接承载每轮变化的时间。
|
|
75
|
+
* - 这里在 messages 尾部补齐 `current_date/current_time/timezone`,让 chat、task、prompt 的时间语义统一。
|
|
76
|
+
* - 只使用本机 runtime 时区,避免每轮为了地理位置进行网络请求。
|
|
77
|
+
*/
|
|
78
|
+
export function buildRuntimeClockSystemPrompt(options) {
|
|
79
|
+
const timezone = resolveRuntimeTimezone();
|
|
80
|
+
const projectPath = String(options?.projectPath || "").trim() || process.cwd();
|
|
81
|
+
const sessionId = String(options?.sessionId || "").trim() || "unknown";
|
|
82
|
+
const now = new Date();
|
|
83
|
+
return [
|
|
84
|
+
"# Runtime Clock Context",
|
|
85
|
+
"以下字段是本轮运行的权威时间上下文;解析“今天/明天/几点”等相对时间时优先使用它们:",
|
|
86
|
+
`- current_date: ${formatDateInTimezone(now, timezone)}`,
|
|
87
|
+
`- current_time: ${formatDateTimeInTimezone(now, timezone)}`,
|
|
88
|
+
`- timezone: ${timezone}`,
|
|
89
|
+
`- session_id: ${sessionId}`,
|
|
90
|
+
`- project_root: ${projectPath}`,
|
|
91
|
+
].join("\n");
|
|
92
|
+
}
|
|
98
93
|
//# sourceMappingURL=VariableReplacer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariableReplacer.js","sourceRoot":"","sources":["../../../../../../src/session/composer/system/default/variables/VariableReplacer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AAEnG,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"VariableReplacer.js","sourceRoot":"","sources":["../../../../../../src/session/composer/system/default/variables/VariableReplacer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Time.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/Time.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"Time.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/Time.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAIjD;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAG/C;AAED,wBAAgB,oBAAoB,CAClC,IAAI,GAAE,IAAiB,EACvB,QAAQ,GAAE,MAAiC,GAC1C,MAAM,CAYR;AAED,wBAAgB,wBAAwB,CACtC,IAAI,GAAE,IAAiB,EACvB,QAAQ,GAAE,MAAiC,GAC1C,MAAM,CAmBR;AAED,wBAAgB,oBAAoB,CAClC,IAAI,GAAE,IAAiB,EACvB,QAAQ,GAAE,MAAiC,GAC1C,MAAM,CASR"}
|
package/bin/shared/utils/Time.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* 职责说明:
|
|
5
5
|
* 1. 提供统一时间戳格式。
|
|
6
6
|
* 2. 提供耗时格式化,便于日志和 CLI 输出使用一致单位。
|
|
7
|
+
* 3. 提供 runtime 时区格式化,确保 prompt / message / task 共享同一时间口径。
|
|
7
8
|
*/
|
|
8
9
|
export function getTimestamp() {
|
|
9
10
|
return new Date().toISOString();
|
|
@@ -15,4 +16,54 @@ export function formatDuration(ms) {
|
|
|
15
16
|
return `${(ms / 1000).toFixed(1)}s`;
|
|
16
17
|
return `${(ms / 60000).toFixed(1)}m`;
|
|
17
18
|
}
|
|
19
|
+
export function resolveRuntimeTimezone() {
|
|
20
|
+
const timezone = Intl.DateTimeFormat().resolvedOptions().timeZone || "UTC";
|
|
21
|
+
return String(timezone || "").trim() || "UTC";
|
|
22
|
+
}
|
|
23
|
+
export function formatDateInTimezone(date = new Date(), timezone = resolveRuntimeTimezone()) {
|
|
24
|
+
try {
|
|
25
|
+
// 关键点(中文):sv-SE locale 默认输出 ISO 风格日期,便于模型稳定解析。
|
|
26
|
+
return new Intl.DateTimeFormat("sv-SE", {
|
|
27
|
+
timeZone: timezone,
|
|
28
|
+
year: "numeric",
|
|
29
|
+
month: "2-digit",
|
|
30
|
+
day: "2-digit",
|
|
31
|
+
}).format(date);
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return date.toISOString().slice(0, 10);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
export function formatDateTimeInTimezone(date = new Date(), timezone = resolveRuntimeTimezone()) {
|
|
38
|
+
try {
|
|
39
|
+
// 关键点(中文):使用固定格式,确保模型读取时区信息时稳定。
|
|
40
|
+
const formatted = new Intl.DateTimeFormat("sv-SE", {
|
|
41
|
+
timeZone: timezone,
|
|
42
|
+
year: "numeric",
|
|
43
|
+
month: "2-digit",
|
|
44
|
+
day: "2-digit",
|
|
45
|
+
hour: "2-digit",
|
|
46
|
+
minute: "2-digit",
|
|
47
|
+
second: "2-digit",
|
|
48
|
+
hour12: false,
|
|
49
|
+
})
|
|
50
|
+
.format(date)
|
|
51
|
+
.replace(" ", "T");
|
|
52
|
+
return `${formatted} (${timezone})`;
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
return date.toISOString();
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export function formatYearInTimezone(date = new Date(), timezone = resolveRuntimeTimezone()) {
|
|
59
|
+
try {
|
|
60
|
+
return new Intl.DateTimeFormat("en-US", {
|
|
61
|
+
timeZone: timezone,
|
|
62
|
+
year: "numeric",
|
|
63
|
+
}).format(date);
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
return String(date.getUTCFullYear());
|
|
67
|
+
}
|
|
68
|
+
}
|
|
18
69
|
//# sourceMappingURL=Time.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Time.js","sourceRoot":"","sources":["../../../src/shared/utils/Time.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"Time.js","sourceRoot":"","sources":["../../../src/shared/utils/Time.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,EAAE,IAAI,CAAC;IAChC,IAAI,EAAE,GAAG,KAAK;QAAE,OAAO,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACpD,OAAO,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,IAAI,KAAK,CAAC;IAC3E,OAAO,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,OAAa,IAAI,IAAI,EAAE,EACvB,WAAmB,sBAAsB,EAAE;IAE3C,IAAI,CAAC;QACH,+CAA+C;QAC/C,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;YACtC,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,SAAS;SACf,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,OAAa,IAAI,IAAI,EAAE,EACvB,WAAmB,sBAAsB,EAAE;IAE3C,IAAI,CAAC;QACH,gCAAgC;QAChC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;YACjD,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,SAAS;YACd,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,KAAK;SACd,CAAC;aACC,MAAM,CAAC,IAAI,CAAC;aACZ,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrB,OAAO,GAAG,SAAS,KAAK,QAAQ,GAAG,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,OAAa,IAAI,IAAI,EAAE,EACvB,WAAmB,sBAAsB,EAAE;IAE3C,IAAI,CAAC;QACH,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;YACtC,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
Contact service
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
- `contact
|
|
7
|
-
-
|
|
8
|
-
- `contact
|
|
9
|
-
-
|
|
3
|
+
contact service 用来管理和其他 agent 的联系方式。一个 contact 代表一个已建立联系的远端 agent,并固定拥有一条长期对话历史。
|
|
4
|
+
|
|
5
|
+
可用命令:
|
|
6
|
+
- `contact link`:生成一次性联系码,交给另一个 agent。
|
|
7
|
+
- `contact approve <code>`:使用对方给的联系码建立 contact。
|
|
8
|
+
- `contact list`:查看已保存的 agent 联系方式。
|
|
9
|
+
- `contact check <contact>` / `contact check --to <ip:port>`:检查对方是否在线可用。
|
|
10
|
+
- `contact chat --to <contact> "<message>"`:和某个 agent 对话。
|
|
11
|
+
- `contact share --to <contact> --text ... | --link ... | <path...>`:分享文本、链接、文件或目录。
|
|
12
|
+
- `contact inbox`:查看收到的分享。
|
|
13
|
+
- `contact receive <share_id>`:接收某条分享。
|
|
14
|
+
|
|
15
|
+
边界:
|
|
16
|
+
- chat 用于对话,share 用于资料交接。
|
|
17
|
+
- receive 只接收内容,不自动执行、不安装 skill、不修改项目业务文件。
|
|
18
|
+
- 不自动 approve 或 receive,除非用户明确要求。
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
# 默认决策与澄清
|
|
27
27
|
- 默认先执行,再沟通:对低风险、可回滚、用户意图已经足够明显的请求,优先基于当前日期、时区、聊天上下文与常见默认值直接执行,不要在事件标题、默认平台、显然的时间表达上反复追问。
|
|
28
28
|
- 只有当“缺失信息会实质改变结果”时才追问;例如:会影响日期/对象/金额/账户/发送目标,或会触发不可逆、高风险、涉隐私操作。
|
|
29
|
-
- 处理时间表达时,优先使用当前环境提供的 `current_date` 与 `timezone
|
|
29
|
+
- 处理时间表达时,优先使用当前环境提供的 `current_date`、`current_time` 与 `timezone`;如果入站 `<info>` 明确提供了 `user_timezone`,则优先按 `user_timezone` 解析,否则按 runtime clock 的 `timezone` 解析。像“今天/明天/下午两点/提前两小时”这类表达,应先解析为绝对时间,再执行,并在回复里明确写出绝对日期时间。
|
|
30
30
|
- 当任务依赖外部权限、系统能力或第三方连接(如日历、提醒事项、聊天渠道、系统授权)时,先探测可用性,再决定是否承诺“我来创建/发送/写入”。
|
|
31
31
|
- 如果探测结果显示被系统权限、宿主环境或连接状态阻塞,要直接说明真实阻塞点和下一步,而不是先给出“可以,我来做”的承诺后再多轮追问。
|
|
32
32
|
- 若已经有足够信息可以一次完成多个低风险默认动作,应直接完成,并在结果里简短说明采用了哪些默认假设。
|
|
@@ -28,11 +28,24 @@ import {
|
|
|
28
28
|
listContactInboxShares,
|
|
29
29
|
} from "../../bin/services/contact/runtime/InboxStore.js";
|
|
30
30
|
import { listRegisteredServiceNames } from "../../bin/main/service/ServiceClassRegistry.js";
|
|
31
|
+
import { SERVICE_SYSTEM_PROVIDERS } from "../../bin/main/service/ServiceSystemProviders.js";
|
|
31
32
|
|
|
32
33
|
test("contact service is registered as a root service", () => {
|
|
33
34
|
assert.ok(listRegisteredServiceNames().includes("contact"));
|
|
34
35
|
});
|
|
35
36
|
|
|
37
|
+
test("contact service system prompt is injected through service providers", () => {
|
|
38
|
+
const provider = SERVICE_SYSTEM_PROVIDERS.find((item) => item.name === "contact");
|
|
39
|
+
assert.ok(provider);
|
|
40
|
+
const text = provider.system({});
|
|
41
|
+
assert.equal(typeof text, "string");
|
|
42
|
+
assert.match(text, /contact link/);
|
|
43
|
+
assert.match(text, /contact share/);
|
|
44
|
+
assert.match(text, /contact check/);
|
|
45
|
+
assert.match(text, /contact chat/);
|
|
46
|
+
assert.match(text, /不安装 skill/);
|
|
47
|
+
});
|
|
48
|
+
|
|
36
49
|
test("contact runtime paths keep one contact and one chat history per contact", () => {
|
|
37
50
|
const root = "/tmp/downcity-contact-demo";
|
|
38
51
|
|
|
@@ -10,6 +10,7 @@ import assert from "node:assert/strict";
|
|
|
10
10
|
import test from "node:test";
|
|
11
11
|
import {
|
|
12
12
|
DEFAULT_SHIP_PROMPTS,
|
|
13
|
+
buildSessionSystemMessages,
|
|
13
14
|
buildContextSystemPrompt,
|
|
14
15
|
} from "../../bin/session/composer/system/default/SystemDomain.js";
|
|
15
16
|
|
|
@@ -42,7 +43,34 @@ test("default core prompt enforces decisive execution and preflight checks", ()
|
|
|
42
43
|
true,
|
|
43
44
|
);
|
|
44
45
|
assert.equal(
|
|
45
|
-
DEFAULT_SHIP_PROMPTS.includes("
|
|
46
|
+
DEFAULT_SHIP_PROMPTS.includes("如果入站 `<info>` 明确提供了 `user_timezone`"),
|
|
46
47
|
true,
|
|
47
48
|
);
|
|
48
49
|
});
|
|
50
|
+
|
|
51
|
+
test("buildSessionSystemMessages appends runtime clock context for chat and task", async () => {
|
|
52
|
+
const chatMessages = await buildSessionSystemMessages({
|
|
53
|
+
projectRoot: "/tmp/demo",
|
|
54
|
+
sessionId: "session_chat",
|
|
55
|
+
mode: "chat",
|
|
56
|
+
staticSystemPrompts: [DEFAULT_SHIP_PROMPTS],
|
|
57
|
+
serviceSystemPrompts: [],
|
|
58
|
+
pluginSystemPrompts: [],
|
|
59
|
+
});
|
|
60
|
+
const chatTail = chatMessages.at(-1)?.content || "";
|
|
61
|
+
assert.equal(chatTail.includes("# Runtime Clock Context"), true);
|
|
62
|
+
assert.equal(chatTail.includes("current_date:"), true);
|
|
63
|
+
assert.equal(chatTail.includes("timezone:"), true);
|
|
64
|
+
|
|
65
|
+
const taskMessages = await buildSessionSystemMessages({
|
|
66
|
+
projectRoot: "/tmp/demo",
|
|
67
|
+
sessionId: "session_task",
|
|
68
|
+
mode: "task",
|
|
69
|
+
staticSystemPrompts: [DEFAULT_SHIP_PROMPTS],
|
|
70
|
+
serviceSystemPrompts: [],
|
|
71
|
+
pluginSystemPrompts: [],
|
|
72
|
+
});
|
|
73
|
+
const taskTail = taskMessages.at(-1)?.content || "";
|
|
74
|
+
assert.equal(taskTail.includes("# Runtime Clock Context"), true);
|
|
75
|
+
assert.equal(taskTail.includes("session_id: session_task"), true);
|
|
76
|
+
});
|
|
@@ -8,7 +8,10 @@
|
|
|
8
8
|
|
|
9
9
|
import assert from "node:assert/strict";
|
|
10
10
|
import test from "node:test";
|
|
11
|
-
import {
|
|
11
|
+
import {
|
|
12
|
+
buildRuntimeClockSystemPrompt,
|
|
13
|
+
replaceVariablesInPrompts,
|
|
14
|
+
} from "../../bin/session/composer/system/default/variables/VariableReplacer.js";
|
|
12
15
|
|
|
13
16
|
test("replaceVariablesInPrompts injects current_year in stable mode", async () => {
|
|
14
17
|
const rendered = await replaceVariablesInPrompts("year={{current_year}}", {
|
|
@@ -18,3 +21,54 @@ test("replaceVariablesInPrompts injects current_year in stable mode", async () =
|
|
|
18
21
|
});
|
|
19
22
|
assert.match(rendered, /^year=\d{4}$/);
|
|
20
23
|
});
|
|
24
|
+
|
|
25
|
+
test("replaceVariablesInPrompts exposes current_date and timezone variables", async () => {
|
|
26
|
+
const rendered = await replaceVariablesInPrompts("date={{current_date}} tz={{timezone}}", {
|
|
27
|
+
mode: "stable",
|
|
28
|
+
projectPath: "/tmp/demo",
|
|
29
|
+
sessionId: "session_demo",
|
|
30
|
+
});
|
|
31
|
+
assert.match(rendered, /^date=\[See runtime clock tail message\] tz=.+$/);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
test("replaceVariablesInPrompts keeps time timezone local even when geo resolves elsewhere", async () => {
|
|
35
|
+
const originalFetch = globalThis.fetch;
|
|
36
|
+
globalThis.fetch = async () =>
|
|
37
|
+
new Response(
|
|
38
|
+
JSON.stringify({
|
|
39
|
+
ip: "203.0.113.1",
|
|
40
|
+
city: "Proxy",
|
|
41
|
+
region: "Proxy",
|
|
42
|
+
country_name: "Proxy",
|
|
43
|
+
timezone: "Pacific/Honolulu",
|
|
44
|
+
}),
|
|
45
|
+
{
|
|
46
|
+
status: 200,
|
|
47
|
+
headers: { "content-type": "application/json" },
|
|
48
|
+
},
|
|
49
|
+
);
|
|
50
|
+
try {
|
|
51
|
+
const timezone = Intl.DateTimeFormat().resolvedOptions().timeZone || "UTC";
|
|
52
|
+
const rendered = await replaceVariablesInPrompts("tz={{timezone}}", {
|
|
53
|
+
mode: "full",
|
|
54
|
+
projectPath: "/tmp/demo",
|
|
55
|
+
sessionId: "session_demo",
|
|
56
|
+
});
|
|
57
|
+
assert.equal(rendered, `tz=${timezone}`);
|
|
58
|
+
} finally {
|
|
59
|
+
globalThis.fetch = originalFetch;
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
test("buildRuntimeClockSystemPrompt appends authoritative runtime time fields", () => {
|
|
64
|
+
const rendered = buildRuntimeClockSystemPrompt({
|
|
65
|
+
projectPath: "/tmp/demo",
|
|
66
|
+
sessionId: "session_demo",
|
|
67
|
+
});
|
|
68
|
+
assert.equal(rendered.includes("# Runtime Clock Context"), true);
|
|
69
|
+
assert.match(rendered, /current_date: \d{4}-\d{2}-\d{2}/);
|
|
70
|
+
assert.match(rendered, /current_time: \d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2} \(.+\)/);
|
|
71
|
+
assert.match(rendered, /timezone: .+/);
|
|
72
|
+
assert.equal(rendered.includes("session_id: session_demo"), true);
|
|
73
|
+
assert.equal(rendered.includes("project_root: /tmp/demo"), true);
|
|
74
|
+
});
|
|
@@ -8,7 +8,12 @@
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import assert from "node:assert/strict";
|
|
11
|
+
import fs from "node:fs/promises";
|
|
12
|
+
import os from "node:os";
|
|
13
|
+
import path from "node:path";
|
|
11
14
|
import test from "node:test";
|
|
15
|
+
import { createTaskDefinition } from "../../bin/services/task/Action.js";
|
|
16
|
+
import { registerTaskCronJobs } from "../../bin/services/task/Scheduler.js";
|
|
12
17
|
import {
|
|
13
18
|
isTaskWhenManual,
|
|
14
19
|
isTaskWhenOneShot,
|
|
@@ -18,6 +23,22 @@ import {
|
|
|
18
23
|
resolveTaskWhenOneShotMs,
|
|
19
24
|
} from "../../bin/services/task/runtime/Model.js";
|
|
20
25
|
|
|
26
|
+
function createRuntime(projectRoot) {
|
|
27
|
+
const logger = {
|
|
28
|
+
log: async () => {},
|
|
29
|
+
info: () => {},
|
|
30
|
+
warn: () => {},
|
|
31
|
+
error: () => {},
|
|
32
|
+
};
|
|
33
|
+
return {
|
|
34
|
+
rootPath: projectRoot,
|
|
35
|
+
logger,
|
|
36
|
+
config: {},
|
|
37
|
+
systems: [],
|
|
38
|
+
session: {},
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
|
|
21
42
|
test("normalizeTaskWhen rejects ISO datetime without explicit timezone", () => {
|
|
22
43
|
const result = normalizeTaskWhen("2026-03-08T10:30:00");
|
|
23
44
|
assert.equal(result.ok, false);
|
|
@@ -53,3 +74,36 @@ test("cron alias normalizes to expression and rejects invalid expression", () =>
|
|
|
53
74
|
if (invalid.ok) return;
|
|
54
75
|
assert.match(invalid.error, /Invalid when \(cron\)/i);
|
|
55
76
|
});
|
|
77
|
+
|
|
78
|
+
test("registerTaskCronJobs passes runtime timezone to scheduled task definitions", async () => {
|
|
79
|
+
const projectRoot = await fs.mkdtemp(path.join(os.tmpdir(), "downcity-task-cron-tz-"));
|
|
80
|
+
try {
|
|
81
|
+
await createTaskDefinition({
|
|
82
|
+
projectRoot,
|
|
83
|
+
request: {
|
|
84
|
+
title: "cron timezone task",
|
|
85
|
+
description: "verify runtime timezone is propagated",
|
|
86
|
+
sessionId: "ctx_cron_timezone",
|
|
87
|
+
when: "0 9 * * *",
|
|
88
|
+
status: "enabled",
|
|
89
|
+
body: "# 任务目标\n\n- verify timezone\n",
|
|
90
|
+
},
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
const definitions = [];
|
|
94
|
+
await registerTaskCronJobs({
|
|
95
|
+
context: createRuntime(projectRoot),
|
|
96
|
+
engine: {
|
|
97
|
+
register(definition) {
|
|
98
|
+
definitions.push(definition);
|
|
99
|
+
},
|
|
100
|
+
},
|
|
101
|
+
});
|
|
102
|
+
|
|
103
|
+
const timezone = Intl.DateTimeFormat().resolvedOptions().timeZone || "UTC";
|
|
104
|
+
assert.equal(definitions.length, 1);
|
|
105
|
+
assert.equal(definitions[0].timezone, timezone);
|
|
106
|
+
} finally {
|
|
107
|
+
await fs.rm(projectRoot, { recursive: true, force: true });
|
|
108
|
+
}
|
|
109
|
+
});
|