loopctl-mcp-server 2.27.0 → 2.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +14 -4
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -2467,7 +2467,9 @@ const TOOLS = [
|
|
|
2467
2467
|
"a keyword and a semantic sub-search, each capped at 100, so up to ~200), or filtered_set " +
|
|
2468
2468
|
"(list mode: the full set). Do NOT use a relevance-mode total_count to size the wiki — use " +
|
|
2469
2469
|
"list mode or knowledge_stats. " +
|
|
2470
|
-
"Pass story_id when working on a loopctl story so reads attribute correctly."
|
|
2470
|
+
"Pass story_id when working on a loopctl story so reads attribute correctly. " +
|
|
2471
|
+
"When you knowledge_get a result and it carries `potential_conflicts`, resolve it if it's " +
|
|
2472
|
+
"material to your task (see knowledge_get / the conflict-resolution wiki playbook).",
|
|
2471
2473
|
inputSchema: {
|
|
2472
2474
|
type: "object",
|
|
2473
2475
|
properties: {
|
|
@@ -2520,7 +2522,12 @@ const TOOLS = [
|
|
|
2520
2522
|
name: "knowledge_get",
|
|
2521
2523
|
description:
|
|
2522
2524
|
"Get full article content by ID. Use after search to read an article in detail. " +
|
|
2523
|
-
"Pass story_id when working on a loopctl story so reads attribute correctly."
|
|
2525
|
+
"Pass story_id when working on a loopctl story so reads attribute correctly. " +
|
|
2526
|
+
"If the response carries a non-empty `potential_conflicts` array AND the conflict is " +
|
|
2527
|
+
"material to your current task, act on it: read the peer, judge redundant/complementary/" +
|
|
2528
|
+
"contradictory against the live system, and knowledge_resolve_conflict (dismiss a false " +
|
|
2529
|
+
"positive, supersede when one clearly wins, merge when both should combine). If you can't " +
|
|
2530
|
+
"tell which is right, leave it. See the 'Resolving knowledge conflicts' wiki playbook.",
|
|
2524
2531
|
inputSchema: {
|
|
2525
2532
|
type: "object",
|
|
2526
2533
|
properties: {
|
|
@@ -2957,7 +2964,9 @@ const TOOLS = [
|
|
|
2957
2964
|
"the two don't actually conflict; drops out of the queue immediately); 'supersede' " +
|
|
2958
2965
|
"(one article wins — pass authoritative_article_id, the winner; the nightly executor " +
|
|
2959
2966
|
"creates a supersedes link and retires the loser, but ONLY at confidence:\"high\" — " +
|
|
2960
|
-
"reversible and audited); 'merge' (
|
|
2967
|
+
"reversible and audited); 'merge' (at confidence:\"high\" the nightly executor has an LLM " +
|
|
2968
|
+
"synthesize the two into ONE new DRAFT — both sources preserved, never auto-published, " +
|
|
2969
|
+
"for you/a human to review and publish). Non-destructive " +
|
|
2961
2970
|
"at agent role — you record intent; the privileged nightly job executes it. " +
|
|
2962
2971
|
"Last-write-wins per pair, so re-recording with fresher ground truth overrides. " +
|
|
2963
2972
|
"Resolve only conflicts material to your current task; adjudicate against the actual " +
|
|
@@ -2979,7 +2988,8 @@ const TOOLS = [
|
|
|
2979
2988
|
enum: ["dismiss", "supersede", "merge"],
|
|
2980
2989
|
description:
|
|
2981
2990
|
"dismiss = false positive; supersede = one wins (set authoritative_article_id); " +
|
|
2982
|
-
"merge = combine (
|
|
2991
|
+
"merge = combine both into one new DRAFT (LLM-synthesized by the nightly executor " +
|
|
2992
|
+
"at high confidence; sources preserved, never auto-published).",
|
|
2983
2993
|
},
|
|
2984
2994
|
authoritative_article_id: {
|
|
2985
2995
|
type: "string",
|