接通主角绑定、开场封印与游玩辅助,让世界模拟器从创作连续落到本局。

直聘插入按模块回馈,并记录请求骨架便于排查。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-22 07:40:08 +08:00
co-authored by Cursor
parent 9306c8e659
commit dd0a9e87d8
88 changed files with 6869 additions and 786 deletions
+7 -1
View File
@@ -872,6 +872,7 @@ export async function runWorkerSkill(params: WorkerRunParams): Promise<WorkerRun
messages: rest,
stream: params.stream,
caller: `worker:${worker.id}`,
label: worker.name?.trim() || worker.id,
});
// 主世界 harness 终稿是 Markdown;勿强行抽 JSON
return parseWorkerResponse(harness.content, worker.outputTags, {
@@ -888,7 +889,11 @@ export async function runWorkerSkill(params: WorkerRunParams): Promise<WorkerRun
: undefined;
if (playGmBody) {
const completeOpts = { caller: `worker:${worker.id}`, responseFormat: "text" as const };
const completeOpts = {
caller: `worker:${worker.id}`,
label: worker.name?.trim() || worker.id,
responseFormat: "text" as const,
};
const result =
streamCallbacks && params.llm.completeStream
? await params.llm.completeStream(messages, completeOpts, streamCallbacks)
@@ -908,6 +913,7 @@ export async function runWorkerSkill(params: WorkerRunParams): Promise<WorkerRun
schemaIsLoose: !playPresent,
capabilities: resolveActiveProfile()?.capabilities,
caller: `worker:${worker.id}`,
label: worker.name?.trim() || worker.id,
stream: streamCallbacks,
});
+5 -1
View File
@@ -27,6 +27,8 @@ export type GmHarnessParams = {
stream?: GmHarnessStreamCallbacks;
maxIterations?: number;
caller?: string;
/** 日志短名;缺则「主世界层 harness」 */
label?: string;
};
export type GmHarnessResult = {
@@ -38,7 +40,9 @@ export async function runGmHarness(
params: GmHarnessParams,
): Promise<GmHarnessResult> {
const driver = createLocalLlmDriver(params.llm);
const label = "主世界层 harness";
const label = params.label?.trim()
? `${params.label.trim()} · 主世界层`
: "主世界层 harness";
const result = await driver.run({
system: params.system,