ship 1.4.59:Arcrun@f87260b1234f

This commit is contained in:
ship
2026-08-27 19:50:15 +08:00
parent 472407621d
commit f54c9d8df2
9 changed files with 304 additions and 116 deletions
+24 -3
View File
@@ -32025,7 +32025,7 @@ function registerAllKbdbGraphTools(server, env, orgNamespace, identity) {
function registerGraphNeighbors(server, env, orgNamespace, identity) {
server.tool(
"kbdb_graph_neighbors",
"knowledge graph \u9130\u5C45\u67E5\u8A62\uFF081-hop/N-hop \u95DC\u4FC2\u904D\u6B77\uFF09\uFF1A\u7D66\u4E00\u500B\u7BC0\u9EDE\u540D\uFF0C\u6CBF KBDB triplet\uFF08subject-predicate-object\uFF09\u8A18\u9304\u505A BFS\uFF0C\u56DE\u50B3 depth \u8DF3\u5167\u7684\u9130\u5C45\u6E05\u55AE\uFF08[{node, predicate, from, depth}]\uFF09\u3002\u8207 kbdb_search\uFF08\u95DC\u9375\u5B57/\u8A9E\u7FA9\uFF09\u4E92\u88DC\uFF1A\u627E\u300C\u8DDF X \u6709\u95DC\u4FC2\u7684\u6771\u897F\u300D\u7528\u672C\u5DE5\u5177\uFF0C\u627E\u300C\u5167\u5BB9\u542B\u95DC\u9375\u5B57\u7684\u6771\u897F\u300D\u7528 kbdb_search\u3002\u9700\u8981 namespace \u88E1\u5DF2\u90E8\u7F72 graph_neighbors workflow\uFF08\u6C92\u88DD\u6703\u56DE\u5B89\u88DD\u6307\u5F15\uFF0C\u4E0D\u6703 crash\uFF09\u3002",
"knowledge graph \u9130\u5C45\u67E5\u8A62\uFF081-hop/N-hop \u95DC\u4FC2\u904D\u6B77\uFF09\uFF1A\u7D66\u4E00\u500B\u7BC0\u9EDE\u540D\uFF0C\u6CBF KBDB triplet\uFF08subject-predicate-object\uFF09\u8A18\u9304\u505A BFS\uFF0C\u56DE\u50B3 depth \u8DF3\u5167\u7684\u9130\u5C45\u6E05\u55AE\uFF08[{node, predicate, from, depth}]\uFF09\u3002\u8207 kbdb_search\uFF08\u95DC\u9375\u5B57/\u8A9E\u7FA9\uFF09\u4E92\u88DC\uFF1A\u627E\u300C\u8DDF X \u6709\u95DC\u4FC2\u7684\u6771\u897F\u300D\u7528\u672C\u5DE5\u5177\uFF0C\u627E\u300C\u5167\u5BB9\u542B\u95DC\u9375\u5B57\u7684\u6771\u897F\u300D\u7528 kbdb_search\u3002\u767B\u5165\u8EAB\u5206\uFF08\u5E33\u5BC6\uFF0FOAuth\uFF09\u76F4\u63A5\u8D70 KBDB \u7684\u5716 API\uFF0C\u4E0D\u9700\u8981\u88DD\u4EFB\u4F55 workflow\uFF1B\u670D\u52D9\u7D1A token \u9023\u7DDA\u624D\u9700\u8981 namespace \u88E1\u5DF2\u90E8\u7F72 graph_neighbors workflow\uFF08\u6C92\u88DD\u6703\u56DE\u5B89\u88DD\u6307\u5F15\uFF0C\u4E0D\u6703 crash\uFF09\u3002",
{
subject: external_exports.string().min(1).describe(
"\u8D77\u9EDE\u7BC0\u9EDE\u540D\uFF08graph triplet \u7684 subject/object \u503C\uFF09\uFF0C\u5982 'Arcrun'"
@@ -32331,6 +32331,20 @@ function registerGetMap(server, env, identity) {
// mcp/src/tools/kbdb_index.ts
var INDEX_CARD_NAME = "00-INDEX";
function locationHints(location, hint) {
if (location) {
const where = [
location.machine ? `\u8A2D\u5099\u300C${location.machine}\u300D` : null,
`\u5EAB\u300C${location.library}\u300D`,
location.full_path ? `\u8DEF\u5F91 ${location.full_path}` : location.source_path ? `\u5EAB\u5167\u8DEF\u5F91 ${location.source_path}\uFF08\u9019\u500B\u5EAB\u9084\u6C92\u767B\u8A18\u5BE6\u9AD4\u8CC7\u6599\u593E\uFF0C\u7B54\u4E0D\u51FA\u5B8C\u6574\u8DEF\u5F91\uFF09` : null
].filter(Boolean);
return [
`\u539F\u6587\u5728\u54EA\uFF1A${where.join("\u3001")}\u3002`,
"\u{1F534} \u56DE\u7B54\u300C\u539F\u6587\u5728\u54EA\u300D\u6642\u7528\u9019\u500B location \u6B04\u4F4D\uFF0C\u4E0D\u8981\u5F15\u7528\u5361\u7247\u5167\u6587\u88E1\u300C### \u51FA\u8655\u300D\u90A3\u4E00\u6BB5\u2014\u2014\u90A3\u5BEB\u7684\u662F\u5167\u90E8\u76F8\u5C0D\u8DEF\u5F91\uFF08`../\u6A94\u540D`\uFF09\uFF0C\u4F7F\u7528\u8005\u62FF\u8457\u5B83\u8D70\u4E0D\u5230\u4EFB\u4F55\u5730\u65B9\u3002"
];
}
return [hint ?? "\u9019\u5F35\u5361\u6C92\u6709 machine/source_path \u4E2D\u7E7C\u8CC7\u6599\uFF0C\u7B54\u4E0D\u51FA\u539F\u6587\u7684\u5BE6\u9AD4\u4F4D\u7F6E\u2014\u2014\u4E0D\u8981\u7528\u5167\u6587\u300C### \u51FA\u8655\u300D\u90A3\u6BB5\u4EE3\u7B54\u3002"];
}
function anchorOf(block) {
try {
const meta = typeof block.metadata_json === "string" ? JSON.parse(block.metadata_json) : block.metadata_json ?? {};
@@ -32464,11 +32478,13 @@ function registerGetCard(server, env, identity) {
);
}
const content = assembleCard(blocks);
const location = isPortal ? body.location ?? null : null;
return successResponse(
{ library, page_name, content, block_count: blocks.length },
{ library, page_name, content, block_count: blocks.length, location },
[
`\u9019\u662F\u300C${page_name}\u300D\u7684\u5B8C\u6574\u5167\u5BB9\uFF08${blocks.length} \u6BB5\uFF0C\u5DF2\u7167\u539F\u7A3F\u9806\u5E8F\u7D44\u597D\uFF09`,
"\u8981\u770B\u5B83\u9023\u5230\u54EA\u4E9B\u5361\uFF1Akbdb_graph_neighbors(name)"
"\u8981\u770B\u5B83\u9023\u5230\u54EA\u4E9B\u5361\uFF1Akbdb_graph_neighbors(name)",
...locationHints(location, isPortal ? body.location_hint : void 0)
]
);
} catch (e) {
@@ -32567,6 +32583,11 @@ var KNOWLEDGE_FIRST = [
"3. **\u628A\u90A3\u5F35\u5361\u6574\u5F35\u8B80\u5B8C** \u2192 `kbdb_get_card({ library, page_name })`",
" \u6458\u8981\uFF0B\u91CD\u9EDE\uFF0B\u5BE6\u9AD4\uFF0B\u95DC\u806F\u4E00\u6B21\u5230\u624B\uFF0C\u7167\u539F\u7A3F\u9806\u5E8F\u7D44\u597D\u3002**\u5F15\u7528\u5167\u5BB9\u6642\u4E00\u5F8B\u7528\u9019\u4E00\u652F\u3002**",
"",
"\u{1F534} **\u6709\u4EBA\u554F\u300C\u539F\u6587\u5728\u54EA\uFF0F\u9019\u4EFD\u8CC7\u6599\u54EA\u4F86\u7684\u300D\u2014\u2014\u7B54\u6848\u8981\u8B80 `kbdb_get_card` \u56DE\u61C9\u7684 `location` \u6B04\u4F4D",
"\uFF08\u8A2D\u5099\uFF0F\u5EAB\uFF0F\u5EAB\u5167\u8DEF\u5F91\uFF09\uFF0C\u4E0D\u8981\u5F15\u7528\u5361\u7247\u5167\u6587\u88E1\u300C### \u51FA\u8655\u300D\u90A3\u4E00\u6BB5\u3002** \u90A3\u6BB5\u5BEB\u7684\u662F\u8403\u5361\u7576\u4E0B\u7684",
"\u5167\u90E8\u76F8\u5C0D\u8DEF\u5F91\uFF08\u5F62\u5982 `../\u6A94\u540D`\uFF09\uFF0C\u4F7F\u7528\u8005\u62FF\u8457\u5B83\u8D70\u4E0D\u5230\u4EFB\u4F55\u5730\u65B9\uFF08inkstone/Arcrun#167\uFF09\u3002",
"`location` \u662F null \u6642\uFF0C`kbdb_get_card` \u7684 hints \u6703\u8AA0\u5BE6\u8B1B\u7F3A\u4EC0\u9EBC\u2014\u2014\u7167\u8457\u8AAA\uFF0C\u4E0D\u8981\u7528\u5167\u6587\u90A3\u6BB5\u4EE3\u7B54\u3002",
"",
"\u70BA\u4EC0\u9EBC\u662F\u9019\u4E09\u6B65\u3001\u800C\u4E0D\u662F\u76F4\u63A5\u5168\u6587\u641C\uFF1A\u4E00\u500B\u554F\u984C\u7684\u7B54\u6848\u901A\u5E38**\u6574\u5F35\u5361**\u624D\u8AAA\u5F97\u5B8C\u6574\uFF0C",
"\u800C\u641C\u5C0B\u53EA\u6703\u56DE**\u547D\u4E2D\u95DC\u9375\u5B57\u7684\u90A3\u5E7E\u6BB5**\u2014\u2014\u4F60\u53EF\u80FD\u62FF\u5230\u6458\u8981\u537B\u6C92\u62FF\u5230\u6578\u5B57\u3001\u62FF\u5230\u95DC\u806F\u537B\u6C92\u62FF\u5230\u5BE6\u9AD4\uFF0C",
"\u800C\u4E14**\u4F60\u4E0D\u6703\u77E5\u9053\u81EA\u5DF1\u6F0F\u4E86\u54EA\u5E7E\u6BB5**\u3002\u76EE\u9304\u7684\u5B58\u5728\u5C31\u662F\u70BA\u4E86\u8B93\u4F60\u5148\u770B\u5230\u300C\u6709\u4EC0\u9EBC\u300D\u518D\u6C7A\u5B9A\u8B80\u4EC0\u9EBC\u3002",