@whispering233/ai-editor-tools 0.0.30 → 0.0.32
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/analysis/conflict.d.ts +1 -1
- package/dist/analysis/conflict.d.ts.map +1 -1
- package/dist/analysis/consistency.d.ts +1 -1
- package/dist/analysis/consistency.d.ts.map +1 -1
- package/dist/analysis/hook.d.ts +1 -1
- package/dist/analysis/hook.d.ts.map +1 -1
- package/dist/analysis/orphan.d.ts +1 -1
- package/dist/analysis/orphan.d.ts.map +1 -1
- package/dist/analysis/path.d.ts +1 -1
- package/dist/analysis/path.d.ts.map +1 -1
- package/dist/analysis/suggest.d.ts +1 -1
- package/dist/analysis/suggest.d.ts.map +1 -1
- package/dist/executor/index.d.ts +0 -2
- package/dist/executor/index.d.ts.map +1 -1
- package/dist/executor/index.js.map +1 -1
- package/dist/executor/types.d.ts +0 -2
- package/dist/executor/types.d.ts.map +1 -1
- package/dist/executor/types.js +0 -7
- package/dist/executor/types.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +44 -43
- package/dist/index.js.map +1 -1
- package/dist/proposal/delta.d.ts +1 -1
- package/dist/proposal/delta.d.ts.map +1 -1
- package/dist/proposal/entity.d.ts +1 -1
- package/dist/proposal/entity.d.ts.map +1 -1
- package/dist/proposal/hook.d.ts +1 -1
- package/dist/proposal/hook.d.ts.map +1 -1
- package/dist/proposal/outline.d.ts +1 -1
- package/dist/proposal/outline.d.ts.map +1 -1
- package/dist/proposal/reference.d.ts +1 -1
- package/dist/proposal/reference.d.ts.map +1 -1
- package/dist/proposal/relation.d.ts +1 -1
- package/dist/proposal/relation.d.ts.map +1 -1
- package/dist/proposal/reorder-timepoints.d.ts +1 -1
- package/dist/proposal/reorder-timepoints.d.ts.map +1 -1
- package/dist/proposal/reorder-timepoints.js +1 -1
- package/dist/proposal/reorder-timepoints.js.map +1 -1
- package/dist/proposal/types.d.ts +1 -1
- package/dist/proposal/types.js +2 -2
- package/dist/proposal/types.js.map +1 -1
- package/dist/query/delta.d.ts +1 -1
- package/dist/query/delta.d.ts.map +1 -1
- package/dist/query/entity.d.ts +1 -1
- package/dist/query/entity.d.ts.map +1 -1
- package/dist/query/outline.d.ts +1 -1
- package/dist/query/outline.d.ts.map +1 -1
- package/dist/query/reference.d.ts +1 -1
- package/dist/query/reference.d.ts.map +1 -1
- package/dist/query/relation.d.ts +1 -1
- package/dist/query/relation.d.ts.map +1 -1
- package/dist/registry.d.ts +20 -13
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +23 -9
- package/dist/registry.js.map +1 -1
- package/dist/schemas/analysis.d.ts +51 -0
- package/dist/schemas/analysis.d.ts.map +1 -0
- package/dist/schemas/analysis.js +46 -0
- package/dist/schemas/analysis.js.map +1 -0
- package/dist/schemas/delta.d.ts +31 -0
- package/dist/schemas/delta.d.ts.map +1 -0
- package/dist/schemas/delta.js +35 -0
- package/dist/schemas/delta.js.map +1 -0
- package/dist/schemas/entity.d.ts +28 -0
- package/dist/schemas/entity.d.ts.map +1 -0
- package/dist/schemas/entity.js +31 -0
- package/dist/schemas/entity.js.map +1 -0
- package/dist/schemas/helpers.d.ts +8 -0
- package/dist/schemas/helpers.d.ts.map +1 -0
- package/dist/schemas/helpers.js +27 -0
- package/dist/schemas/helpers.js.map +1 -0
- package/dist/schemas/index.d.ts +8 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +12 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/outline.d.ts +11 -0
- package/dist/schemas/outline.d.ts.map +1 -0
- package/dist/schemas/outline.js +12 -0
- package/dist/schemas/outline.js.map +1 -0
- package/dist/schemas/proposal.d.ts +125 -0
- package/dist/schemas/proposal.d.ts.map +1 -0
- package/dist/schemas/proposal.js +123 -0
- package/dist/schemas/proposal.js.map +1 -0
- package/dist/schemas/reference.d.ts +13 -0
- package/dist/schemas/reference.d.ts.map +1 -0
- package/dist/schemas/reference.js +13 -0
- package/dist/schemas/reference.js.map +1 -0
- package/dist/schemas/relation.d.ts +17 -0
- package/dist/schemas/relation.d.ts.map +1 -0
- package/dist/schemas/relation.js +19 -0
- package/dist/schemas/relation.js.map +1 -0
- package/package.json +5 -5
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ToolContext } from "../context.js";
|
|
2
|
-
import type { DetectConflictsArgs } from "
|
|
2
|
+
import type { DetectConflictsArgs } from "../schemas/index.js";
|
|
3
3
|
/** 单条跨实体矛盾(detect_conflicts 返回项;entity_a/entity_b 为实体 id) */
|
|
4
4
|
export interface ConflictIssue {
|
|
5
5
|
entity_a: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conflict.d.ts","sourceRoot":"","sources":["../../src/analysis/conflict.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"conflict.d.ts","sourceRoot":"","sources":["../../src/analysis/conflict.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,6DAA6D;AAC7D,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAwBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG;IAAE,SAAS,EAAE,aAAa,EAAE,CAAA;CAAE,CA0FpI"}
|
|
@@ -2,7 +2,7 @@ import type { EntityRow } from "@whispering233/ai-editor-shared";
|
|
|
2
2
|
import type { Db } from "@whispering233/ai-editor-db";
|
|
3
3
|
import type { OutlineFileTree } from "@whispering233/ai-editor-shared";
|
|
4
4
|
import type { ToolContext } from "../context.js";
|
|
5
|
-
import type { AnalyzeConsistencyArgs } from "
|
|
5
|
+
import type { AnalyzeConsistencyArgs } from "../schemas/index.js";
|
|
6
6
|
/** 一致性问题的严重级别(error = 确定矛盾;warning = 可疑/待确认) */
|
|
7
7
|
export type IssueSeverity = "error" | "warning";
|
|
8
8
|
/** 单条一致性问题(analyze_consistency 返回项) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consistency.d.ts","sourceRoot":"","sources":["../../src/analysis/consistency.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"consistency.d.ts","sourceRoot":"","sources":["../../src/analysis/consistency.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,gDAAgD;AAChD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,CAAC;AAEhD,uCAAuC;AACvC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,aAAa,CAAC;IACzB,iEAAiE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AA+ED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,GAAG,gBAAgB,EAAE,CAuB1G;AAED,iDAAiD;AACjD,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,sBAAsB,EAC5B,MAAM,CAAC,EAAE,WAAW,GACnB;IAAE,MAAM,EAAE,gBAAgB,EAAE,CAAA;CAAE,GAAG,IAAI,CAMvC"}
|
package/dist/analysis/hook.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { EntityRow, RelationRecord } from "@whispering233/ai-editor-shared";
|
|
2
2
|
import type { ToolContext } from "../context.js";
|
|
3
3
|
import { type ChapterIndex } from "./utils.js";
|
|
4
|
-
import type { AnalyzeHookHealthArgs, DetectHookConflictsArgs, FindHookOpportunitiesArgs, SuggestHookPayoffArgs, TraceHookLifecycleArgs } from "
|
|
4
|
+
import type { AnalyzeHookHealthArgs, DetectHookConflictsArgs, FindHookOpportunitiesArgs, SuggestHookPayoffArgs, TraceHookLifecycleArgs } from "../schemas/index.js";
|
|
5
5
|
/** 单个伏笔的完整上下文(实体 + 生命周期关系分组,源数据均来自 db 查询层) */
|
|
6
6
|
export interface HookRecord {
|
|
7
7
|
entity: EntityRow;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../src/analysis/hook.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,SAAS,EAAmB,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAClG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EACV,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,
|
|
1
|
+
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../src/analysis/hook.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orphan.d.ts","sourceRoot":"","sources":["../../src/analysis/orphan.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"orphan.d.ts","sourceRoot":"","sources":["../../src/analysis/orphan.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,aAAa;AACb,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACd,0BAA0B;IACzB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,+BAA+B;AAC/B,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC7C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,sBAAsB;AACtB,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,mCAAmC;AACnC,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACrC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,wCAAwC;IACvC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,0CAA0C;AAC1C,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,EAAE,eAAe,EAAE,CAAC;IACrC,iBAAiB,EAAE,eAAe,EAAE,CAAC;IACrC,kBAAkB,EAAE,gBAAgB,EAAE,CAAC;IACvC,yBAAyB,EAAE,sBAAsB,EAAE,CAAC;CACrD;AAsED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,sBAAsB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,oBAAoB,CA8DjI"}
|
package/dist/analysis/path.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ToolContext } from "../context.js";
|
|
2
|
-
import type { TracePlotPathsArgs } from "
|
|
2
|
+
import type { TracePlotPathsArgs } from "../schemas/index.js";
|
|
3
3
|
/** 路径节点(trace_plot_paths paths[].nodes 项;type/id/name 与 relation 路径同构) */
|
|
4
4
|
export interface PlotPathNode {
|
|
5
5
|
type: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/analysis/path.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/analysis/path.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,yCAAyC;AACzC,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAsED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG;IAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;CAAE,GAAG,IAAI,CAwChI"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ToolContext } from "../context.js";
|
|
2
|
-
import type { SuggestConnectionsArgs } from "
|
|
2
|
+
import type { SuggestConnectionsArgs } from "../schemas/index.js";
|
|
3
3
|
/** 潜在关联建议(suggest_connections 返回项) */
|
|
4
4
|
export interface ConnectionSuggestion {
|
|
5
5
|
target_id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suggest.d.ts","sourceRoot":"","sources":["../../src/analysis/suggest.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"suggest.d.ts","sourceRoot":"","sources":["../../src/analysis/suggest.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,sCAAsC;AACtC,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAUD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG;IAAE,WAAW,EAAE,oBAAoB,EAAE,CAAA;CAAE,GAAG,IAAI,CAyE1J"}
|
package/dist/executor/index.d.ts
CHANGED
|
@@ -4,8 +4,6 @@ import type { Proposal } from "../proposal/types.js";
|
|
|
4
4
|
import { type ExecutorResult } from "./types.js";
|
|
5
5
|
/** 提案类型字面量联合(15 个,PROPOSAL_TOOLS 常量派生——注册表/门面共用) */
|
|
6
6
|
export type ProposalType = (typeof PROPOSAL_TOOLS)[number];
|
|
7
|
-
/** 执行工具名字面量联合(13 个,EXECUTOR_TOOLS 常量派生) */
|
|
8
|
-
export type ExecutorToolName = (typeof EXECUTOR_TOOLS)[number];
|
|
9
7
|
/**
|
|
10
8
|
* 执行提案(S7.5 确认后调用):按 proposal.type 映射执行函数,args 透传(S6.6 已规范化
|
|
11
9
|
* 为执行形态),返回执行结果(如新 id)。未知/缺失映射抛错(防静默——不该出现的
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/executor/index.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQrD,OAAO,EAAkD,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjG,oDAAoD;AACpD,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/executor/index.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQrD,OAAO,EAAkD,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjG,oDAAoD;AACpD,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAwD3D;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,cAAc,CAMpF;AAGD,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/executor/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,EAAE;AACF,+DAA+D;AAC/D,6EAA6E;AAC7E,wDAAwD;AACxD,wEAAwE;AACxE,4EAA4E;AAC5E,kDAAkD;AAClD,+EAA+E;AAC/E,uGAAuG;AACvG,iEAAiE;AACjE,EAAE;AACF,sDAAsD;AACtD,6BAA6B;AAC7B,+CAA+C;AAC/C,kDAAkD;AAClD,uCAAuC;AACvC,uBAAuB;AAEvB,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC5F,OAAO,EAAE,cAAc,EAAkB,MAAM,iCAAiC,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAEvE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAwC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/executor/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,EAAE;AACF,+DAA+D;AAC/D,6EAA6E;AAC7E,wDAAwD;AACxD,wEAAwE;AACxE,4EAA4E;AAC5E,kDAAkD;AAClD,+EAA+E;AAC/E,uGAAuG;AACvG,iEAAiE;AACjE,EAAE;AACF,sDAAsD;AACtD,6BAA6B;AAC7B,+CAA+C;AAC/C,kDAAkD;AAClD,uCAAuC;AACvC,uBAAuB;AAEvB,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC5F,OAAO,EAAE,cAAc,EAAkB,MAAM,iCAAiC,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAEvE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAwC,MAAM,YAAY,CAAC;AAKjG,iFAAiF;AACjF,MAAM,iBAAiB,GAAe,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;IACtD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IAChH,OAAO,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE;QAClC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/D,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,kBAAkB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,iCAAiC;YACzE,cAAc,CACZ,GAAG,CAAC,EAAE,EACN,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,EACrH,GAAG,CAAC,UAAU,CACf,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,8EAA8E;AAC9E,MAAM,iBAAiB,GAAe,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;IACtD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3B,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/C,4DAA4D;IAC5D,oDAAoD;IACnD,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACzB,OAAO,mBAAmB,CAAC,GAAG,EAAE,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACvG,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,wBAAwB,GAAqC;IACjE,qBAAqB,EAAE,mBAAmB;IAC1C,qBAAqB,EAAE,mBAAmB;IAC1C,qBAAqB,EAAE,mBAAmB;IAC1C,oBAAoB,EAAE,kBAAkB;IACxC,uBAAuB,EAAE,qBAAqB;IAC9C,iBAAiB,EAAE,eAAe;IAClC,oBAAoB,EAAE,wBAAwB;IAC9C,iBAAiB,EAAE,eAAe;IAClC,mBAAmB,EAAE,iBAAiB;IACtC,mBAAmB,EAAE,iBAAiB;IACtC,mBAAmB,EAAE,iBAAiB;IACtC,oBAAoB,EAAE,kBAAkB;IACxC,oBAAoB,EAAE,kBAAkB;IACxC,oBAAoB,EAAE,kBAAkB;IACxC,0BAA0B,EAAE,wBAAwB,EAAE,qDAAqD;IAC3G,wBAAwB,EAAE,sBAAsB,EAAE,gCAAgC;CACnF,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,GAAgB,EAAE,QAAkB;IAClE,MAAM,EAAE,GAAG,wBAAwB,CAAC,QAAQ,CAAC,IAAoB,CAAC,CAAC;IACnE,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AAC3B,CAAC;AAID,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,CAAC"}
|
package/dist/executor/types.d.ts
CHANGED
|
@@ -14,8 +14,6 @@ export type ExecutorResult = {
|
|
|
14
14
|
export type ExecutorFn = (ctx: ToolContext, proposal: Proposal) => ExecutorResult;
|
|
15
15
|
/** 必填字符串参数(缺失/空串/非字符串 → 抛错,防脏调用写脏数据) */
|
|
16
16
|
export declare function requireString(args: Record<string, unknown>, key: string): string;
|
|
17
|
-
/** 可选字符串参数(缺失返回 undefined;存在但非字符串 → 抛错) */
|
|
18
|
-
export declare function optionalString(args: Record<string, unknown>, key: string): string | undefined;
|
|
19
17
|
/** 必填对象参数(patches/metadata 等) */
|
|
20
18
|
export declare function requireRecord(args: Record<string, unknown>, key: string): Record<string, unknown>;
|
|
21
19
|
/** 可选对象参数(缺失返回 undefined) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/executor/types.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE7F,+DAA+D;AAC/D,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,KAAK,cAAc,CAAC;AAElF,wCAAwC;AACxC,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAMhF;AAED,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/executor/types.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE7F,+DAA+D;AAC/D,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,KAAK,cAAc,CAAC;AAElF,wCAAwC;AACxC,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAMhF;AAED,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMjG;AAED,6BAA6B;AAC7B,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAI9G;AAED,wBAAwB;AACxB,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,EAAE,CAMlF;AAED,6BAA6B;AAC7B,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAMhF"}
|
package/dist/executor/types.js
CHANGED
|
@@ -13,13 +13,6 @@ export function requireString(args, key) {
|
|
|
13
13
|
}
|
|
14
14
|
return v;
|
|
15
15
|
}
|
|
16
|
-
/** 可选字符串参数(缺失返回 undefined;存在但非字符串 → 抛错) */
|
|
17
|
-
export function optionalString(args, key) {
|
|
18
|
-
const v = args[key];
|
|
19
|
-
if (v === undefined)
|
|
20
|
-
return undefined;
|
|
21
|
-
return requireString(args, key);
|
|
22
|
-
}
|
|
23
16
|
/** 必填对象参数(patches/metadata 等) */
|
|
24
17
|
export function requireRecord(args, key) {
|
|
25
18
|
const v = args[key];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/executor/types.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,EAAE;AACF,uEAAuE;AACvE,oEAAoE;AACpE,0EAA0E;AAC1E,mDAAmD;AACnD,kEAAkE;AAgBlE,wCAAwC;AACxC,MAAM,UAAU,aAAa,CAAC,IAA6B,EAAE,GAAW;IACtE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/executor/types.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,EAAE;AACF,uEAAuE;AACvE,oEAAoE;AACpE,0EAA0E;AAC1E,mDAAmD;AACnD,kEAAkE;AAgBlE,wCAAwC;AACxC,MAAM,UAAU,aAAa,CAAC,IAA6B,EAAE,GAAW;IACtE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,iCAAiC;AACjC,MAAM,UAAU,aAAa,CAAC,IAA6B,EAAE,GAAW;IACtE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,CAA4B,CAAC;AACtC,CAAC;AAED,6BAA6B;AAC7B,MAAM,UAAU,cAAc,CAAC,IAA6B,EAAE,GAAW;IACvE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACtC,OAAO,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC;AAED,wBAAwB;AACxB,MAAM,UAAU,YAAY,CAAC,IAA6B,EAAE,GAAW;IACrE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,6BAA6B;AAC7B,MAAM,UAAU,aAAa,CAAC,IAA6B,EAAE,GAAW;IACtE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ export declare const TOOLS_PKG_NAME = "@whispering233/ai-editor-tools";
|
|
|
2
2
|
export declare const TOOLS_PKG_VERSION = "0.1.0";
|
|
3
3
|
export * from "./context.js";
|
|
4
4
|
export * from "./registry.js";
|
|
5
|
+
export * from "./schemas/index.js";
|
|
5
6
|
export * from "./query/entity.js";
|
|
6
7
|
export * from "./query/relation.js";
|
|
7
8
|
export * from "./query/outline.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,cAAc,mCAAmC,CAAC;AAC/D,eAAO,MAAM,iBAAiB,UAAU,CAAC;AAEzC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AAExC,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,cAAc,mCAAmC,CAAC;AAC/D,eAAO,MAAM,iBAAiB,UAAU,CAAC;AAEzC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AAExC,cAAc,qBAAqB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -4,14 +4,15 @@
|
|
|
4
4
|
// S6.7 执行类 13 个**不注册 registry**(LLM 不可见,「核心设计原则」)——
|
|
5
5
|
// 仅经 executor 门面(executeProposal)导出,S7.5 提案确认后调用。
|
|
6
6
|
//
|
|
7
|
-
// 注册语义:模块副作用注册(import 即挂载)——
|
|
8
|
-
//
|
|
9
|
-
//
|
|
7
|
+
// 注册语义:模块副作用注册(import 即挂载)——executor 直接 getTool(name) 调度;
|
|
8
|
+
// 工具定义集中在本入口(name/description/parameters/permission/run),
|
|
9
|
+
// 参数 TypeBox schema 统一从 ./schemas 出口取(见 docs/api/tool-calling.md)。
|
|
10
10
|
// 包标识常量(与 shared/llm 包风格一致:SHARED_PKG_NAME/LLM_PKG_NAME;agent 冒烟依赖)
|
|
11
11
|
export const TOOLS_PKG_NAME = "@whispering233/ai-editor-tools";
|
|
12
12
|
export const TOOLS_PKG_VERSION = "0.1.0";
|
|
13
13
|
export * from "./context.js";
|
|
14
14
|
export * from "./registry.js";
|
|
15
|
+
export * from "./schemas/index.js";
|
|
15
16
|
export * from "./query/entity.js";
|
|
16
17
|
export * from "./query/relation.js";
|
|
17
18
|
export * from "./query/outline.js";
|
|
@@ -35,7 +36,7 @@ export * from "./proposal/reference.js";
|
|
|
35
36
|
// S6.7 执行层:导出 executor 门面与 13 个执行函数(不注册工具——见文件头注释)
|
|
36
37
|
export * from "./executor/index.js";
|
|
37
38
|
import { TOOL_PERMISSION } from "@whispering233/ai-editor-shared";
|
|
38
|
-
import { computeStateArgsSchema, getDeltaHistoryArgsSchema, getEntityArgsSchema, getEntitySummaryArgsSchema, getOutlineArgsSchema, getOutlinePathArgsSchema, queryRelationshipsArgsSchema, searchEntitiesArgsSchema, searchReferencesArgsSchema, } from "
|
|
39
|
+
import { computeStateArgsSchema, getDeltaHistoryArgsSchema, getEntityArgsSchema, getEntitySummaryArgsSchema, getOutlineArgsSchema, getOutlinePathArgsSchema, queryRelationshipsArgsSchema, searchEntitiesArgsSchema, searchReferencesArgsSchema, } from "./schemas/index.js";
|
|
39
40
|
import { registerTools } from "./registry.js";
|
|
40
41
|
import { runGetEntity, runGetEntitySummary, runSearchEntities } from "./query/entity.js";
|
|
41
42
|
import { runSearchReferences } from "./query/reference.js";
|
|
@@ -49,7 +50,7 @@ const queryToolDefs = [
|
|
|
49
50
|
description: "实体详情查询:按类型与 id 获取单个实体(含 data 字段完整内容)。" +
|
|
50
51
|
"type 取值 character|setting|location|hook|event|timepoint;id 为实体 id(char-/set-/loc-/hook-/ev-/tp- 前缀)。" +
|
|
51
52
|
"不存在或已软删返回 null。",
|
|
52
|
-
|
|
53
|
+
parameters: getEntityArgsSchema,
|
|
53
54
|
permission: TOOL_PERMISSION.AUTO,
|
|
54
55
|
run: runGetEntity,
|
|
55
56
|
},
|
|
@@ -57,7 +58,7 @@ const queryToolDefs = [
|
|
|
57
58
|
name: "search_entities",
|
|
58
59
|
description: "实体搜索:按类型 + 名称关键词模糊匹配(可附 filters:status 精确匹配 data.status、" +
|
|
59
60
|
"tags 要求 data.tags 数组包含全部指定标签)。返回匹配实体列表(名称 + 类型 + 关键字段摘要)。",
|
|
60
|
-
|
|
61
|
+
parameters: searchEntitiesArgsSchema,
|
|
61
62
|
permission: TOOL_PERMISSION.AUTO,
|
|
62
63
|
run: runSearchEntities,
|
|
63
64
|
},
|
|
@@ -67,7 +68,7 @@ const queryToolDefs = [
|
|
|
67
68
|
"端点可为实体或大纲节点(outline_node);relation_type 取值限定预定义 16 种:" +
|
|
68
69
|
"belongs_to/owns/masters/ally/rival/mentor/family/kills/appears_in/occurs_at/" +
|
|
69
70
|
"plot_edge/plants/advances/resolves/depends_on/involves;端点软删的关系不可见。",
|
|
70
|
-
|
|
71
|
+
parameters: queryRelationshipsArgsSchema,
|
|
71
72
|
permission: TOOL_PERMISSION.AUTO,
|
|
72
73
|
run: runQueryRelationships,
|
|
73
74
|
},
|
|
@@ -75,7 +76,7 @@ const queryToolDefs = [
|
|
|
75
76
|
name: "get_outline",
|
|
76
77
|
description: "完整大纲树查询(严格三层:卷→章→场景)。默认不含 metadata 统计(省 token);" +
|
|
77
78
|
"软删节点不返回。用于了解作品整体结构。",
|
|
78
|
-
|
|
79
|
+
parameters: getOutlineArgsSchema,
|
|
79
80
|
permission: TOOL_PERMISSION.AUTO,
|
|
80
81
|
run: runGetOutline,
|
|
81
82
|
},
|
|
@@ -83,7 +84,7 @@ const queryToolDefs = [
|
|
|
83
84
|
name: "get_outline_path",
|
|
84
85
|
description: "大纲节点路径查询:返回从根到指定节点的路径 ID 列表(含 root,如 [root, vol-1, ch-3, sc-15])。" +
|
|
85
86
|
"节点不存在或已软删返回 null。",
|
|
86
|
-
|
|
87
|
+
parameters: getOutlinePathArgsSchema,
|
|
87
88
|
permission: TOOL_PERMISSION.AUTO,
|
|
88
89
|
run: runGetOutlinePath,
|
|
89
90
|
},
|
|
@@ -92,7 +93,7 @@ const queryToolDefs = [
|
|
|
92
93
|
description: "状态计算:实体(target_id)到达指定大纲节点(at_node_id)时的累积状态——" +
|
|
93
94
|
"只沿大纲树父链累积已确认 Delta。若存在 update 冲突(from 不匹配)该 change 被跳过," +
|
|
94
95
|
"结果在 conflicts 字段标注 { field, expected, actual },请据此向用户提示修复。",
|
|
95
|
-
|
|
96
|
+
parameters: computeStateArgsSchema,
|
|
96
97
|
permission: TOOL_PERMISSION.AUTO,
|
|
97
98
|
run: runComputeState,
|
|
98
99
|
},
|
|
@@ -100,7 +101,7 @@ const queryToolDefs = [
|
|
|
100
101
|
name: "get_delta_history",
|
|
101
102
|
description: "Delta 历史查询:目标实体的全部属性变更记录(按时间/节点排序)。" +
|
|
102
103
|
"target_type 为实体类型或 outline_node;软删相关记录自动过滤。",
|
|
103
|
-
|
|
104
|
+
parameters: getDeltaHistoryArgsSchema,
|
|
104
105
|
permission: TOOL_PERMISSION.AUTO,
|
|
105
106
|
run: runGetDeltaHistory,
|
|
106
107
|
},
|
|
@@ -108,7 +109,7 @@ const queryToolDefs = [
|
|
|
108
109
|
name: "get_entity_summary",
|
|
109
110
|
description: "实体聚合统计:指定类型实体的总数与分布(character→角色/状态/能力分布、hook→状态/兑现时机分布、" +
|
|
110
111
|
"setting→分类分布、location→类型分布)。用于全局概览。",
|
|
111
|
-
|
|
112
|
+
parameters: getEntitySummaryArgsSchema,
|
|
112
113
|
permission: TOOL_PERMISSION.AUTO,
|
|
113
114
|
run: runGetEntitySummary,
|
|
114
115
|
},
|
|
@@ -117,13 +118,13 @@ const queryToolDefs = [
|
|
|
117
118
|
description: "参考资料搜索:按关键词搜索标题+标签命中的参考资料摘要列表(type 分类可选过滤:自由文本分类," +
|
|
118
119
|
"建议沿用项目内已有分类;tags 标签 AND 过滤)。" +
|
|
119
120
|
"返回摘要(content 截断 120 字)——取全文请用 get_entity 的 reference 类型。用于 AI 不知道书里有哪些参考资料时先检索。",
|
|
120
|
-
|
|
121
|
+
parameters: searchReferencesArgsSchema,
|
|
121
122
|
permission: TOOL_PERMISSION.AUTO,
|
|
122
123
|
run: runSearchReferences,
|
|
123
124
|
},
|
|
124
125
|
];
|
|
125
126
|
registerTools(queryToolDefs);
|
|
126
|
-
import { analyzeConsistencyArgsSchema, detectConflictsArgsSchema, findOrphanElementsArgsSchema, suggestConnectionsArgsSchema, tracePlotPathsArgsSchema, } from "
|
|
127
|
+
import { analyzeConsistencyArgsSchema, detectConflictsArgsSchema, findOrphanElementsArgsSchema, suggestConnectionsArgsSchema, tracePlotPathsArgsSchema, } from "./schemas/index.js";
|
|
127
128
|
import { runAnalyzeConsistency } from "./analysis/consistency.js";
|
|
128
129
|
import { runDetectConflicts } from "./analysis/conflict.js";
|
|
129
130
|
import { runTracePlotPaths } from "./analysis/path.js";
|
|
@@ -136,7 +137,7 @@ const analysisToolDefs = [
|
|
|
136
137
|
description: "实体档案一致性检查:检查单个实体 data 内部的矛盾(如性格反义词对并存、负年龄、" +
|
|
137
138
|
"伏笔已兑现但未标注兑现节点、expected_resolve_node_id 悬空引用、location 的 parent_id 悬空引用)。" +
|
|
138
139
|
"返回 issues: [{ severity: error|warning, field, description }];实体不存在或已软删返回 null。",
|
|
139
|
-
|
|
140
|
+
parameters: analyzeConsistencyArgsSchema,
|
|
140
141
|
permission: TOOL_PERMISSION.AUTO,
|
|
141
142
|
run: runAnalyzeConsistency,
|
|
142
143
|
},
|
|
@@ -146,7 +147,7 @@ const analysisToolDefs = [
|
|
|
146
147
|
"同一对实体互斥关系并存(ally+rival)、互相击杀(双向 kills)。" +
|
|
147
148
|
"types 限定实体类型、relation_filter 限定参与检测的关系类型(缺省全量)。" +
|
|
148
149
|
"返回 conflicts: [{ entity_a, entity_b, field, description }]。",
|
|
149
|
-
|
|
150
|
+
parameters: detectConflictsArgsSchema,
|
|
150
151
|
permission: TOOL_PERMISSION.AUTO,
|
|
151
152
|
run: runDetectConflicts,
|
|
152
153
|
},
|
|
@@ -155,7 +156,7 @@ const analysisToolDefs = [
|
|
|
155
156
|
description: "剧情路径推演:从 from_node_id 到 to_node_id 推演可能的推进路径——沿大纲树的直接链" +
|
|
156
157
|
"(祖先后裔)与沿 plot_edge 剧情连线的 k 跳路径。每条路径含 nodes/description/risk_factors" +
|
|
157
158
|
"(过长路径、场景缺目标、章节缺反转等风险)。节点不存在或已软删返回 null。",
|
|
158
|
-
|
|
159
|
+
parameters: tracePlotPathsArgsSchema,
|
|
159
160
|
permission: TOOL_PERMISSION.AUTO,
|
|
160
161
|
run: runTracePlotPaths,
|
|
161
162
|
},
|
|
@@ -165,7 +166,7 @@ const analysisToolDefs = [
|
|
|
165
166
|
"unresolved_deltas(触发节点缺失/目标端点软删或缺失的永不生效变更)、" +
|
|
166
167
|
"dangling_relations(端点已物理删除的悬空关系)、" +
|
|
167
168
|
"inconsistent_soft_deletes(大纲节点已软删但关联 relation/delta 未级联软删的跨存储不一致,诊断用途)。",
|
|
168
|
-
|
|
169
|
+
parameters: findOrphanElementsArgsSchema,
|
|
169
170
|
permission: TOOL_PERMISSION.AUTO,
|
|
170
171
|
run: runFindOrphanElements,
|
|
171
172
|
},
|
|
@@ -174,13 +175,13 @@ const analysisToolDefs = [
|
|
|
174
175
|
description: "潜在关系发现:为指定实体建议同类型实体的潜在关联——共同出现于同一场景(同场戏)、" +
|
|
175
176
|
"共享关联实体(朋友的朋友)。返回 suggestions: [{ target_id, relation_type: ally, reason }]" +
|
|
176
177
|
"(已有直接关系的候选跳过)。实体不存在或已软删返回 null。",
|
|
177
|
-
|
|
178
|
+
parameters: suggestConnectionsArgsSchema,
|
|
178
179
|
permission: TOOL_PERMISSION.AUTO,
|
|
179
180
|
run: runSuggestConnections,
|
|
180
181
|
},
|
|
181
182
|
];
|
|
182
183
|
registerTools(analysisToolDefs);
|
|
183
|
-
import { analyzeHookHealthArgsSchema, detectHookConflictsArgsSchema, findHookOpportunitiesArgsSchema, suggestHookPayoffArgsSchema, traceHookLifecycleArgsSchema, } from "
|
|
184
|
+
import { analyzeHookHealthArgsSchema, detectHookConflictsArgsSchema, findHookOpportunitiesArgsSchema, suggestHookPayoffArgsSchema, traceHookLifecycleArgsSchema, } from "./schemas/index.js";
|
|
184
185
|
import { runAnalyzeHookHealth, runDetectHookConflicts, runFindHookOpportunities, runSuggestHookPayoff, runTraceHookLifecycle } from "./analysis/hook.js";
|
|
185
186
|
/** 伏笔分析工具定义(S6.5,「工具扩展」+;权限全为 AUTO) */
|
|
186
187
|
const hookToolDefs = [
|
|
@@ -190,7 +191,7 @@ const hookToolDefs = [
|
|
|
190
191
|
"overdue(埋设超过两倍半衰期)、blocked(依赖尚未回收)及人类可读 warnings。" +
|
|
191
192
|
"返回 { current_chapter, active_count, stale, overdue, blocked_chains, warnings };" +
|
|
192
193
|
"半衰期显式 half_life 优先、缺省按 payoff_timing 映射(immediate=3/near_term=8/mid_arc=15/slow_burn=25/endgame=40)。",
|
|
193
|
-
|
|
194
|
+
parameters: analyzeHookHealthArgsSchema,
|
|
194
195
|
permission: TOOL_PERMISSION.AUTO,
|
|
195
196
|
run: runAnalyzeHookHealth,
|
|
196
197
|
},
|
|
@@ -199,7 +200,7 @@ const hookToolDefs = [
|
|
|
199
200
|
description: "伏笔生命周期追踪:返回 hook 详情 + 埋设节点(plant,最早埋设)+ 全部推进节点(advances,按章节序)+ " +
|
|
200
201
|
"回收节点(resolve,最新)+ 当前休眠章数(dormancy)+ 时间线图(timeline_graph.events 按章节序合并)。" +
|
|
201
202
|
"hook 不存在或已软删返回 null。",
|
|
202
|
-
|
|
203
|
+
parameters: traceHookLifecycleArgsSchema,
|
|
203
204
|
permission: TOOL_PERMISSION.AUTO,
|
|
204
205
|
run: runTraceHookLifecycle,
|
|
205
206
|
},
|
|
@@ -208,7 +209,7 @@ const hookToolDefs = [
|
|
|
208
209
|
description: "伏笔回收建议:基于埋设章节与半衰期(显式优先、缺省按 payoff_timing 映射)推荐理想回收场景" +
|
|
209
210
|
"(节奏匹配 top 3,候选为当前章节之后的未回收场景)。返回 { suggestions: [{ at_node, reason }] };" +
|
|
210
211
|
"hook 不存在/已软删返回 null,无埋设记录或大纲无候选场景返回空建议。",
|
|
211
|
-
|
|
212
|
+
parameters: suggestHookPayoffArgsSchema,
|
|
212
213
|
permission: TOOL_PERMISSION.AUTO,
|
|
213
214
|
run: runSuggestHookPayoff,
|
|
214
215
|
},
|
|
@@ -217,7 +218,7 @@ const hookToolDefs = [
|
|
|
217
218
|
description: "伏笔埋设机会发现:分析指定大纲节点的叙事特征(尚无伏笔埋设、角色在场数、场景冲突层次、价值转向)" +
|
|
218
219
|
"建议适合的伏笔类别(mystery/relationship/world_building/character_growth)。" +
|
|
219
220
|
"返回 { opportunities: [{ category, reason }] };节点不存在或已软删返回 null。",
|
|
220
|
-
|
|
221
|
+
parameters: findHookOpportunitiesArgsSchema,
|
|
221
222
|
permission: TOOL_PERMISSION.AUTO,
|
|
222
223
|
run: runFindHookOpportunities,
|
|
223
224
|
},
|
|
@@ -225,13 +226,13 @@ const hookToolDefs = [
|
|
|
225
226
|
name: "detect_hook_conflicts",
|
|
226
227
|
description: "伏笔矛盾检测(无参):依赖循环(A↔B 互相 depends_on)、依赖已废弃(depends_on 指向 abandoned 伏笔)、" +
|
|
227
228
|
"时间悖论(推进/回收节点章节早于埋设节点章节)。返回 { conflicts: [{ hook_a, hook_b, field, description }] }。",
|
|
228
|
-
|
|
229
|
+
parameters: detectHookConflictsArgsSchema,
|
|
229
230
|
permission: TOOL_PERMISSION.AUTO,
|
|
230
231
|
run: runDetectHookConflicts,
|
|
231
232
|
},
|
|
232
233
|
];
|
|
233
234
|
registerTools(hookToolDefs);
|
|
234
|
-
import { proposeAbandonHookArgsSchema, proposeAddDeltaArgsSchema, proposeAddRelationArgsSchema, proposeAdvanceHookArgsSchema, proposeCreateEntityArgsSchema, proposeCreateHookArgsSchema, proposeDeleteEntityArgsSchema, proposeDeleteNodeArgsSchema, proposeMoveNodeArgsSchema, proposeOutlineNodeArgsSchema, proposeCreateReferenceArgsSchema, proposeReorderTimepointsArgsSchema, proposeRemoveRelationArgsSchema, proposeResolveHookArgsSchema, proposeUpdateEntityArgsSchema, proposeUpdateHookArgsSchema, } from "
|
|
235
|
+
import { proposeAbandonHookArgsSchema, proposeAddDeltaArgsSchema, proposeAddRelationArgsSchema, proposeAdvanceHookArgsSchema, proposeCreateEntityArgsSchema, proposeCreateHookArgsSchema, proposeDeleteEntityArgsSchema, proposeDeleteNodeArgsSchema, proposeMoveNodeArgsSchema, proposeOutlineNodeArgsSchema, proposeCreateReferenceArgsSchema, proposeReorderTimepointsArgsSchema, proposeRemoveRelationArgsSchema, proposeResolveHookArgsSchema, proposeUpdateEntityArgsSchema, proposeUpdateHookArgsSchema, } from "./schemas/index.js";
|
|
235
236
|
import { runProposeAbandonHook, runProposeAdvanceHook, runProposeCreateHook, runProposeResolveHook, runProposeUpdateHook, } from "./proposal/hook.js";
|
|
236
237
|
import { runProposeCreateEntity, runProposeDeleteEntity, runProposeUpdateEntity, } from "./proposal/entity.js";
|
|
237
238
|
import { runProposeAddRelation, runProposeRemoveRelation, } from "./proposal/relation.js";
|
|
@@ -241,7 +242,7 @@ import { runProposeReorderTimepoints } from "./proposal/reorder-timepoints.js";
|
|
|
241
242
|
import { runProposeCreateReference } from "./proposal/reference.js";
|
|
242
243
|
/** 提案类工具定义(S6.6 + F9 重排 + G2 时间点重排,「提案类」+ 「工具扩展」提案类,共 15 个;权限全为 PROPOSAL)
|
|
243
244
|
* 语义:AI 不能直接修改数据——propose_* 仅产出提案(tool_result 只有 proposal_id + 一句话摘要,
|
|
244
|
-
* 不含预览细节,2026-08
|
|
245
|
+
* 不含预览细节,2026-08 修订;完整预览随 tool_execution_end 帧的 result.details 推送 GUI);用户确认后由 S7.5 路由
|
|
245
246
|
* 快照重校验并调用 S6.7 执行工具落库。*/
|
|
246
247
|
const proposalToolDefs = [
|
|
247
248
|
{
|
|
@@ -249,7 +250,7 @@ const proposalToolDefs = [
|
|
|
249
250
|
description: "创建实体提案:向用户提议新建实体。type 取值 character|setting|location|hook,name 必填," +
|
|
250
251
|
"data 可选(自定义字段,如角色 role/status、伏笔 payoff_timing)。" +
|
|
251
252
|
"仅生成提案(返回 proposal_id + 一句话摘要),需用户在界面确认后才生效——请勿重复提案或视为已创建。",
|
|
252
|
-
|
|
253
|
+
parameters: proposeCreateEntityArgsSchema,
|
|
253
254
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
254
255
|
run: runProposeCreateEntity,
|
|
255
256
|
},
|
|
@@ -258,7 +259,7 @@ const proposalToolDefs = [
|
|
|
258
259
|
description: "更新实体提案:entity_id 指定实体,patches 为要修改的 data 字段(至少一项,浅合并——未传字段保留)。" +
|
|
259
260
|
"仅生成提案,需用户确认后生效;确认时服务端校验实体未被他人改动(updated_at 快照比对)," +
|
|
260
261
|
"实体不存在或已软删返回错误。",
|
|
261
|
-
|
|
262
|
+
parameters: proposeUpdateEntityArgsSchema,
|
|
262
263
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
263
264
|
run: runProposeUpdateEntity,
|
|
264
265
|
},
|
|
@@ -266,7 +267,7 @@ const proposalToolDefs = [
|
|
|
266
267
|
name: "propose_delete_entity",
|
|
267
268
|
description: "删除实体提案:软删指定实体及其关联关系与 Delta(可回收站还原,非物理清除)。" +
|
|
268
269
|
"仅生成提案,需用户确认后生效;实体不存在或已软删返回错误。",
|
|
269
|
-
|
|
270
|
+
parameters: proposeDeleteEntityArgsSchema,
|
|
270
271
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
271
272
|
run: runProposeDeleteEntity,
|
|
272
273
|
},
|
|
@@ -276,7 +277,7 @@ const proposalToolDefs = [
|
|
|
276
277
|
"类型自动识别),type 为预定义关系类型(belongs_to/owns/masters/ally/rival/mentor/family/" +
|
|
277
278
|
"kills/appears_in/occurs_at/plot_edge/plants/advances/resolves/depends_on/involves)," +
|
|
278
279
|
"metadata 可选。仅生成提案,需用户确认后生效;端点不存在或已软删返回错误。",
|
|
279
|
-
|
|
280
|
+
parameters: proposeAddRelationArgsSchema,
|
|
280
281
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
281
282
|
run: runProposeAddRelation,
|
|
282
283
|
},
|
|
@@ -284,7 +285,7 @@ const proposalToolDefs = [
|
|
|
284
285
|
name: "propose_remove_relation",
|
|
285
286
|
description: "移除关系提案:relation_id 指定要移除的关系(确认后物理删除,不进回收站)。" +
|
|
286
287
|
"仅生成提案,需用户确认后生效;关系不存在或端点已软删返回错误。",
|
|
287
|
-
|
|
288
|
+
parameters: proposeRemoveRelationArgsSchema,
|
|
288
289
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
289
290
|
run: runProposeRemoveRelation,
|
|
290
291
|
},
|
|
@@ -294,7 +295,7 @@ const proposalToolDefs = [
|
|
|
294
295
|
"类型自动识别),changes 为变更列表(op 取值 set/update/add/remove,至少一项;" +
|
|
295
296
|
"update 需 from 旧值,add/remove 用 value)。仅生成提案,需用户确认后生效;" +
|
|
296
297
|
"触发节点或目标不存在/已软删返回错误。",
|
|
297
|
-
|
|
298
|
+
parameters: proposeAddDeltaArgsSchema,
|
|
298
299
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
299
300
|
run: runProposeAddDelta,
|
|
300
301
|
},
|
|
@@ -303,7 +304,7 @@ const proposalToolDefs = [
|
|
|
303
304
|
description: "新增大纲节点提案:type 取值 volume|chapter|scene(严格三层:卷挂根、章挂卷或根、" +
|
|
304
305
|
"场景必须挂章),title 必填,parent_id 指定父节点(缺省挂根)。" +
|
|
305
306
|
"仅生成提案,需用户确认后生效;父节点不存在/已软删或层级非法返回错误。",
|
|
306
|
-
|
|
307
|
+
parameters: proposeOutlineNodeArgsSchema,
|
|
307
308
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
308
309
|
run: runProposeOutlineNode,
|
|
309
310
|
},
|
|
@@ -312,7 +313,7 @@ const proposalToolDefs = [
|
|
|
312
313
|
description: "移动大纲节点提案:node_id 移到 parent_id 下的 order 位置(0 起计数)。" +
|
|
313
314
|
"仅生成提案,需用户确认后生效;目标父层级非法(严格三层)、" +
|
|
314
315
|
"节点或父不存在/已软删返回错误。",
|
|
315
|
-
|
|
316
|
+
parameters: proposeMoveNodeArgsSchema,
|
|
316
317
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
317
318
|
run: runProposeMoveNode,
|
|
318
319
|
},
|
|
@@ -320,7 +321,7 @@ const proposalToolDefs = [
|
|
|
320
321
|
name: "propose_delete_node",
|
|
321
322
|
description: "删除大纲节点提案:软删指定节点及其整棵子树(可回收站还原,非物理清除)。" +
|
|
322
323
|
"仅生成提案,需用户确认后生效;节点不存在或已软删返回错误。",
|
|
323
|
-
|
|
324
|
+
parameters: proposeDeleteNodeArgsSchema,
|
|
324
325
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
325
326
|
run: runProposeDeleteNode,
|
|
326
327
|
},
|
|
@@ -329,7 +330,7 @@ const proposalToolDefs = [
|
|
|
329
330
|
description: "创建伏笔提案:name 必填,data 可选(伏笔字段:payoff_timing、half_life、expected_resolve_node_id、category 等)," +
|
|
330
331
|
"plant_at_node_id 可选指定埋设节点(确认后建立 plants 关系)。" +
|
|
331
332
|
"仅生成提案,需用户确认后生效;埋设节点不存在/已软删返回错误。",
|
|
332
|
-
|
|
333
|
+
parameters: proposeCreateHookArgsSchema,
|
|
333
334
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
334
335
|
run: runProposeCreateHook,
|
|
335
336
|
},
|
|
@@ -338,7 +339,7 @@ const proposalToolDefs = [
|
|
|
338
339
|
description: "更新伏笔提案:hook_id 指定伏笔,patches 为要修改的 data 字段(至少一项,浅合并——未传字段保留)。" +
|
|
339
340
|
"仅生成提案,需用户确认后生效;确认时服务端校验伏笔未被改动(updated_at 快照比对)," +
|
|
340
341
|
"伏笔不存在或已软删返回错误。",
|
|
341
|
-
|
|
342
|
+
parameters: proposeUpdateHookArgsSchema,
|
|
342
343
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
343
344
|
run: runProposeUpdateHook,
|
|
344
345
|
},
|
|
@@ -347,7 +348,7 @@ const proposalToolDefs = [
|
|
|
347
348
|
description: "推进伏笔提案:hook_id 指定伏笔,node_id 为推进发生的节点,description 描述推进内容。" +
|
|
348
349
|
"确认后复合写一次提交(Delta 记 status=progressing + advances 关系,幂等)。" +
|
|
349
350
|
"仅生成提案,需用户确认后生效;伏笔或节点不存在/已软删返回错误。",
|
|
350
|
-
|
|
351
|
+
parameters: proposeAdvanceHookArgsSchema,
|
|
351
352
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
352
353
|
run: runProposeAdvanceHook,
|
|
353
354
|
},
|
|
@@ -356,7 +357,7 @@ const proposalToolDefs = [
|
|
|
356
357
|
description: "回收伏笔提案:hook_id 指定伏笔,node_id 为回收节点,description 描述回收内容。" +
|
|
357
358
|
"确认后复合写一次提交(Delta 记 status=resolved + resolves 关系,幂等)。" +
|
|
358
359
|
"仅生成提案,需用户确认后生效;伏笔或节点不存在/已软删返回错误。",
|
|
359
|
-
|
|
360
|
+
parameters: proposeResolveHookArgsSchema,
|
|
360
361
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
361
362
|
run: runProposeResolveHook,
|
|
362
363
|
},
|
|
@@ -365,7 +366,7 @@ const proposalToolDefs = [
|
|
|
365
366
|
description: "废弃伏笔提案:hook_id 指定伏笔,description 说明废弃原因。" +
|
|
366
367
|
"确认后复合写一次提交(Delta 记 status=abandoned)。" +
|
|
367
368
|
"仅生成提案,需用户确认后生效;伏笔不存在或已软删返回错误。",
|
|
368
|
-
|
|
369
|
+
parameters: proposeAbandonHookArgsSchema,
|
|
369
370
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
370
371
|
run: runProposeAbandonHook,
|
|
371
372
|
},
|
|
@@ -376,7 +377,7 @@ const proposalToolDefs = [
|
|
|
376
377
|
"缺/多/重复将被拒绝)。请先查询时间点列表(search_entities type=timepoint)获取 id 与名称," +
|
|
377
378
|
"确认全部时间点后再排序;确认后服务端校验时间点快照(updated_at 比对)并按新序重排时间轴。" +
|
|
378
379
|
"仅生成提案(返回 proposal_id + 一句话摘要),需用户在界面确认后才生效——请勿重复提案或视为已重排。",
|
|
379
|
-
|
|
380
|
+
parameters: proposeReorderTimepointsArgsSchema,
|
|
380
381
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
381
382
|
run: runProposeReorderTimepoints,
|
|
382
383
|
},
|
|
@@ -385,7 +386,7 @@ const proposalToolDefs = [
|
|
|
385
386
|
description: "创建参考资料提案:向用户提议把读到/总结的素材、灵感或写作要点保存为参考资料(外部素材/灵感笔记," +
|
|
386
387
|
"非本书正文)。name 标题必填,type 分类可选(自由文本,建议沿用项目内已有分类,缺省 material),content 全文长文本,source 来源(URL/书名/作者)可选,tags 标签数组可选。" +
|
|
387
388
|
"仅生成提案(返回 proposal_id + 一句话摘要),需用户在界面确认后才写入——请勿重复提案或视为已保存。",
|
|
388
|
-
|
|
389
|
+
parameters: proposeCreateReferenceArgsSchema,
|
|
389
390
|
permission: TOOL_PERMISSION.PROPOSAL,
|
|
390
391
|
run: runProposeCreateReference,
|
|
391
392
|
},
|