@geminilight/mindos 1.1.59 → 1.1.60

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.
Files changed (106) hide show
  1. package/README.md +62 -64
  2. package/README_zh.md +60 -62
  3. package/dist/agent/ledger/run-timeline-events.d.ts.map +1 -1
  4. package/dist/agent/ledger/run-timeline-events.js +16 -8
  5. package/dist/agent/ledger/run-timeline-events.js.map +1 -1
  6. package/dist/agent/runtime/adapters/index.d.ts +1 -0
  7. package/dist/agent/runtime/adapters/index.d.ts.map +1 -1
  8. package/dist/agent/runtime/adapters/index.js +1 -0
  9. package/dist/agent/runtime/adapters/index.js.map +1 -1
  10. package/dist/agent/runtime/adapters/session-transcripts/adapters/claude.d.ts +4 -0
  11. package/dist/agent/runtime/adapters/session-transcripts/adapters/claude.d.ts.map +1 -0
  12. package/dist/agent/runtime/adapters/session-transcripts/adapters/claude.js +83 -0
  13. package/dist/agent/runtime/adapters/session-transcripts/adapters/claude.js.map +1 -0
  14. package/dist/agent/runtime/adapters/session-transcripts/adapters/codebuddy-code.d.ts +4 -0
  15. package/dist/agent/runtime/adapters/session-transcripts/adapters/codebuddy-code.d.ts.map +1 -0
  16. package/dist/agent/runtime/adapters/session-transcripts/adapters/codebuddy-code.js +74 -0
  17. package/dist/agent/runtime/adapters/session-transcripts/adapters/codebuddy-code.js.map +1 -0
  18. package/dist/agent/runtime/adapters/session-transcripts/adapters/gemini.d.ts +4 -0
  19. package/dist/agent/runtime/adapters/session-transcripts/adapters/gemini.d.ts.map +1 -0
  20. package/dist/agent/runtime/adapters/session-transcripts/adapters/gemini.js +73 -0
  21. package/dist/agent/runtime/adapters/session-transcripts/adapters/gemini.js.map +1 -0
  22. package/dist/agent/runtime/adapters/session-transcripts/adapters/kimi.d.ts +4 -0
  23. package/dist/agent/runtime/adapters/session-transcripts/adapters/kimi.d.ts.map +1 -0
  24. package/dist/agent/runtime/adapters/session-transcripts/adapters/kimi.js +61 -0
  25. package/dist/agent/runtime/adapters/session-transcripts/adapters/kimi.js.map +1 -0
  26. package/dist/agent/runtime/adapters/session-transcripts/adapters/openclaw.d.ts +4 -0
  27. package/dist/agent/runtime/adapters/session-transcripts/adapters/openclaw.d.ts.map +1 -0
  28. package/dist/agent/runtime/adapters/session-transcripts/adapters/openclaw.js +156 -0
  29. package/dist/agent/runtime/adapters/session-transcripts/adapters/openclaw.js.map +1 -0
  30. package/dist/agent/runtime/adapters/session-transcripts/adapters/opencode.d.ts +4 -0
  31. package/dist/agent/runtime/adapters/session-transcripts/adapters/opencode.d.ts.map +1 -0
  32. package/dist/agent/runtime/adapters/session-transcripts/adapters/opencode.js +79 -0
  33. package/dist/agent/runtime/adapters/session-transcripts/adapters/opencode.js.map +1 -0
  34. package/dist/agent/runtime/adapters/session-transcripts/adapters/qwen-code.d.ts +4 -0
  35. package/dist/agent/runtime/adapters/session-transcripts/adapters/qwen-code.d.ts.map +1 -0
  36. package/dist/agent/runtime/adapters/session-transcripts/adapters/qwen-code.js +86 -0
  37. package/dist/agent/runtime/adapters/session-transcripts/adapters/qwen-code.js.map +1 -0
  38. package/dist/agent/runtime/adapters/session-transcripts/adapters/unverified.d.ts +4 -0
  39. package/dist/agent/runtime/adapters/session-transcripts/adapters/unverified.d.ts.map +1 -0
  40. package/dist/agent/runtime/adapters/session-transcripts/adapters/unverified.js +22 -0
  41. package/dist/agent/runtime/adapters/session-transcripts/adapters/unverified.js.map +1 -0
  42. package/dist/agent/runtime/adapters/session-transcripts/file-system.d.ts +24 -0
  43. package/dist/agent/runtime/adapters/session-transcripts/file-system.d.ts.map +1 -0
  44. package/dist/agent/runtime/adapters/session-transcripts/file-system.js +127 -0
  45. package/dist/agent/runtime/adapters/session-transcripts/file-system.js.map +1 -0
  46. package/dist/agent/runtime/adapters/session-transcripts/index.d.ts +4 -0
  47. package/dist/agent/runtime/adapters/session-transcripts/index.d.ts.map +1 -0
  48. package/dist/agent/runtime/adapters/session-transcripts/index.js +3 -0
  49. package/dist/agent/runtime/adapters/session-transcripts/index.js.map +1 -0
  50. package/dist/agent/runtime/adapters/session-transcripts/normalizer.d.ts +45 -0
  51. package/dist/agent/runtime/adapters/session-transcripts/normalizer.d.ts.map +1 -0
  52. package/dist/agent/runtime/adapters/session-transcripts/normalizer.js +331 -0
  53. package/dist/agent/runtime/adapters/session-transcripts/normalizer.js.map +1 -0
  54. package/dist/agent/runtime/adapters/session-transcripts/registry.d.ts +8 -0
  55. package/dist/agent/runtime/adapters/session-transcripts/registry.d.ts.map +1 -0
  56. package/dist/agent/runtime/adapters/session-transcripts/registry.js +73 -0
  57. package/dist/agent/runtime/adapters/session-transcripts/registry.js.map +1 -0
  58. package/dist/agent/runtime/adapters/session-transcripts/types.d.ts +51 -0
  59. package/dist/agent/runtime/adapters/session-transcripts/types.d.ts.map +1 -0
  60. package/dist/agent/runtime/adapters/session-transcripts/types.js +2 -0
  61. package/dist/agent/runtime/adapters/session-transcripts/types.js.map +1 -0
  62. package/dist/agent/tool/kb-tools.d.ts.map +1 -1
  63. package/dist/agent/tool/kb-tools.js +66 -2
  64. package/dist/agent/tool/kb-tools.js.map +1 -1
  65. package/dist/capabilities.d.ts +1 -1
  66. package/dist/capabilities.d.ts.map +1 -1
  67. package/dist/capabilities.js +8 -0
  68. package/dist/capabilities.js.map +1 -1
  69. package/dist/intelligence/cognition/human-modeling.d.ts +84 -0
  70. package/dist/intelligence/cognition/human-modeling.d.ts.map +1 -0
  71. package/dist/intelligence/cognition/human-modeling.js +314 -0
  72. package/dist/intelligence/cognition/human-modeling.js.map +1 -0
  73. package/dist/intelligence/cognition/index.d.ts +2 -0
  74. package/dist/intelligence/cognition/index.d.ts.map +1 -0
  75. package/dist/intelligence/cognition/index.js +2 -0
  76. package/dist/intelligence/cognition/index.js.map +1 -0
  77. package/dist/intelligence/index.d.ts +2 -0
  78. package/dist/intelligence/index.d.ts.map +1 -0
  79. package/dist/intelligence/index.js +2 -0
  80. package/dist/intelligence/index.js.map +1 -0
  81. package/dist/intelligence.d.ts +14 -0
  82. package/dist/intelligence.d.ts.map +1 -0
  83. package/dist/intelligence.js +11 -0
  84. package/dist/intelligence.js.map +1 -0
  85. package/dist/knowledge/content-integrity.d.ts +15 -0
  86. package/dist/knowledge/content-integrity.d.ts.map +1 -0
  87. package/dist/knowledge/content-integrity.js +55 -0
  88. package/dist/knowledge/content-integrity.js.map +1 -0
  89. package/dist/protocols/mcp-server/index.cjs +32 -32
  90. package/dist/protocols/mcp-server/index.js +34 -17
  91. package/dist/protocols/mcp-server/index.js.map +1 -1
  92. package/dist/server/handlers/file.d.ts.map +1 -1
  93. package/dist/server/handlers/file.js +70 -17
  94. package/dist/server/handlers/file.js.map +1 -1
  95. package/dist/server/handlers/mcp-install-skill.d.ts +25 -0
  96. package/dist/server/handlers/mcp-install-skill.d.ts.map +1 -1
  97. package/dist/server/handlers/mcp-install-skill.js +231 -9
  98. package/dist/server/handlers/mcp-install-skill.js.map +1 -1
  99. package/dist/server/http.js +4 -0
  100. package/dist/server/http.js.map +1 -1
  101. package/dist/server/provider-settings.js +4 -4
  102. package/dist/server/provider-settings.js.map +1 -1
  103. package/dist/server/route-ownership.d.ts.map +1 -1
  104. package/dist/server/route-ownership.js +2 -0
  105. package/dist/server/route-ownership.js.map +1 -1
  106. package/package.json +17 -9
@@ -182,14 +182,16 @@ function registerTools(server) {
182
182
  // ── mindos_write_file ───────────────────────────────────────────────────────
183
183
  server.registerTool("mindos_write_file", {
184
184
  title: "Write File Content",
185
- description: "Overwrite the entire content of an existing file.",
185
+ description: "Overwrite the entire content of an existing file. Prefer line/section/append tools for partial edits. Large agent shrink writes are refused unless allow_shrink=true after verifying the complete replacement content.",
186
186
  inputSchema: z.object({
187
187
  path: z.string().min(1),
188
188
  content: z.string(),
189
+ allow_shrink: z.boolean().optional().default(false).describe("Set true only after verifying this full replacement intentionally shrinks a large file."),
190
+ allow_truncated_content: z.boolean().optional().default(false).describe("Set true only when MindOS truncation marker text is intentional prose."),
189
191
  }),
190
- }, async ({ path, content }) => {
192
+ }, async ({ path, content, allow_shrink, allow_truncated_content }) => {
191
193
  try {
192
- await _post("/api/file", { op: "save_file", path, content });
194
+ await _post("/api/file", { op: "save_file", path, content, allow_shrink, allow_truncated_content });
193
195
  _logOp("mindos_write_file", { path }, "ok", `Wrote ${content.length} chars`);
194
196
  return ok(`Successfully wrote ${content.length} characters to "${path}"`);
195
197
  }
@@ -201,14 +203,16 @@ function registerTools(server) {
201
203
  // ── mindos_create_file ──────────────────────────────────────────────────────
202
204
  server.registerTool("mindos_create_file", {
203
205
  title: "Create New File",
204
- description: "Create a new file in the knowledge base. Only .md and .csv files allowed. Creates parent directories but does NOT create Space scaffolding. Use mindos_create_space to create a Space.",
206
+ description: "Create a new file in the knowledge base. Only .md and .csv files allowed. Creates parent directories but does NOT create Space scaffolding. Use mindos_create_space to create a Space. Empty agent-created files are refused unless allow_empty=true.",
205
207
  inputSchema: z.object({
206
208
  path: z.string().min(1).regex(/\.(md|csv)$/),
207
209
  content: z.string().default(""),
210
+ allow_empty: z.boolean().optional().default(false).describe("Set true only when intentionally creating an empty file."),
211
+ allow_truncated_content: z.boolean().optional().default(false).describe("Set true only when MindOS truncation marker text is intentional prose."),
208
212
  }),
209
- }, async ({ path, content }) => {
213
+ }, async ({ path, content, allow_empty, allow_truncated_content }) => {
210
214
  try {
211
- await _post("/api/file", { op: "create_file", path, content });
215
+ await _post("/api/file", { op: "create_file", path, content, allow_empty, allow_truncated_content });
212
216
  _logOp("mindos_create_file", { path }, "ok", `Created ${content.length} chars`);
213
217
  return ok(`Created "${path}" (${content.length} characters)`);
214
218
  }
@@ -225,6 +229,8 @@ function registerTools(server) {
225
229
  files: z.array(z.object({
226
230
  path: z.string().min(1).regex(/\.(md|csv)$/).describe("Relative file path (must end in .md or .csv)"),
227
231
  content: z.string().default("").describe("Initial file content"),
232
+ allow_empty: z.boolean().optional().default(false).describe("Set true only when intentionally creating an empty file."),
233
+ allow_truncated_content: z.boolean().optional().default(false).describe("Set true only when MindOS truncation marker text is intentional prose."),
228
234
  })).min(1).max(50).describe("List of files to create (max 50 per call)"),
229
235
  }),
230
236
  }, async ({ files }) => {
@@ -232,7 +238,13 @@ function registerTools(server) {
232
238
  const errors = [];
233
239
  for (const file of files) {
234
240
  try {
235
- await _post("/api/file", { op: "create_file", path: file.path, content: file.content });
241
+ await _post("/api/file", {
242
+ op: "create_file",
243
+ path: file.path,
244
+ content: file.content,
245
+ allow_empty: file.allow_empty,
246
+ allow_truncated_content: file.allow_truncated_content,
247
+ });
236
248
  created.push(file.path);
237
249
  }
238
250
  catch (e) {
@@ -430,10 +442,11 @@ function registerTools(server) {
430
442
  path: z.string().min(1),
431
443
  after_index: z.number().int(),
432
444
  lines: z.array(z.string()).min(1),
445
+ allow_truncated_content: z.boolean().optional().default(false).describe("Set true only when MindOS truncation marker text is intentional prose."),
433
446
  }),
434
- }, async ({ path, after_index, lines }) => {
447
+ }, async ({ path, after_index, lines, allow_truncated_content }) => {
435
448
  try {
436
- await _post("/api/file", { op: "insert_lines", path, after_index, lines });
449
+ await _post("/api/file", { op: "insert_lines", path, after_index, lines, allow_truncated_content });
437
450
  return ok(`Inserted ${lines.length} line(s) after index ${after_index} in "${path}"`);
438
451
  }
439
452
  catch (e) {
@@ -449,10 +462,11 @@ function registerTools(server) {
449
462
  start: z.number().int().min(0),
450
463
  end: z.number().int().min(0),
451
464
  lines: z.array(z.string()).min(1),
465
+ allow_truncated_content: z.boolean().optional().default(false).describe("Set true only when MindOS truncation marker text is intentional prose."),
452
466
  }),
453
- }, async ({ path, start, end, lines }) => {
467
+ }, async ({ path, start, end, lines, allow_truncated_content }) => {
454
468
  try {
455
- await _post("/api/file", { op: "update_lines", path, start, end, lines });
469
+ await _post("/api/file", { op: "update_lines", path, start, end, lines, allow_truncated_content });
456
470
  return ok(`Replaced lines ${start}–${end} in "${path}" with ${lines.length} new line(s)`);
457
471
  }
458
472
  catch (e) {
@@ -466,10 +480,11 @@ function registerTools(server) {
466
480
  inputSchema: z.object({
467
481
  path: z.string().min(1),
468
482
  content: z.string().min(1),
483
+ allow_truncated_content: z.boolean().optional().default(false).describe("Set true only when MindOS truncation marker text is intentional prose."),
469
484
  }),
470
- }, async ({ path, content }) => {
485
+ }, async ({ path, content, allow_truncated_content }) => {
471
486
  try {
472
- await _post("/api/file", { op: "append_to_file", path, content });
487
+ await _post("/api/file", { op: "append_to_file", path, content, allow_truncated_content });
473
488
  _logOp("mindos_append_to_file", { path }, "ok", `Appended ${content.length} chars`);
474
489
  return ok(`Appended ${content.length} character(s) to "${path}"`);
475
490
  }
@@ -486,10 +501,11 @@ function registerTools(server) {
486
501
  path: z.string().min(1),
487
502
  heading: z.string().min(1),
488
503
  content: z.string().min(1),
504
+ allow_truncated_content: z.boolean().optional().default(false).describe("Set true only when MindOS truncation marker text is intentional prose."),
489
505
  }),
490
- }, async ({ path, heading, content }) => {
506
+ }, async ({ path, heading, content, allow_truncated_content }) => {
491
507
  try {
492
- await _post("/api/file", { op: "insert_after_heading", path, heading, content });
508
+ await _post("/api/file", { op: "insert_after_heading", path, heading, content, allow_truncated_content });
493
509
  _logOp("mindos_insert_after_heading", { path, heading }, "ok", `Inserted after "${heading}"`);
494
510
  return ok(`Inserted content after heading "${heading}" in "${path}"`);
495
511
  }
@@ -506,10 +522,11 @@ function registerTools(server) {
506
522
  path: z.string().min(1),
507
523
  heading: z.string().min(1),
508
524
  content: z.string(),
525
+ allow_truncated_content: z.boolean().optional().default(false).describe("Set true only when MindOS truncation marker text is intentional prose."),
509
526
  }),
510
- }, async ({ path, heading, content }) => {
527
+ }, async ({ path, heading, content, allow_truncated_content }) => {
511
528
  try {
512
- await _post("/api/file", { op: "update_section", path, heading, content });
529
+ await _post("/api/file", { op: "update_section", path, heading, content, allow_truncated_content });
513
530
  _logOp("mindos_update_section", { path, heading }, "ok", `Updated section "${heading}"`);
514
531
  return ok(`Updated section "${heading}" in "${path}"`);
515
532
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/protocols/mcp-server/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/protocols/mcp-server/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/file.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAClG,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAE1B,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAc,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAQ,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGjE,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACnC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAClC,UAAU,IAAI,MAAM,EAAE,CAAC;IACvB,eAAe,IAAI,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IACnC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,CACtC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,EAClD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,KACpC,OAAO,CAAC;AAEb,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG;IACvI,WAAW,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,wBAAgB,aAAa,CAC3B,KAAK,EAAE,kBAAkB,GAAG,SAAS,EACrC,QAAQ,EAAE,sBAAsB,GAC/B,oBAAoB,CAAC,OAAO,CAAC,CA4B/B;AAED,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,kBAAkB,GAAG,SAAS,EACrC,QAAQ,EAAE,yBAAyB,GAClC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAoBxC;AAoDD,wBAAsB,cAAc,CAClC,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,uBAAuB,EACjC,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,gBAAgB,CAAC,CAiC3B"}
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/file.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAClG,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAE1B,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EAAc,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAQ,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGjE,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACnC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAClC,UAAU,IAAI,MAAM,EAAE,CAAC;IACvB,eAAe,IAAI,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IACnC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,CACtC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,EAClD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,KACpC,OAAO,CAAC;AAEb,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG;IACvI,WAAW,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,wBAAgB,aAAa,CAC3B,KAAK,EAAE,kBAAkB,GAAG,SAAS,EACrC,QAAQ,EAAE,sBAAsB,GAC/B,oBAAoB,CAAC,OAAO,CAAC,CA4B/B;AAED,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,kBAAkB,GAAG,SAAS,EACrC,QAAQ,EAAE,yBAAyB,GAClC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAoBxC;AAoDD,wBAAsB,cAAc,CAClC,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,uBAAuB,EACjC,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,gBAAgB,CAAC,CAiC3B"}
@@ -5,6 +5,7 @@ import { basename, dirname, extname, join, posix, relative, resolve } from 'node
5
5
  import { resolveExistingSafe, resolveSafe } from '../../foundation/security/index.js';
6
6
  import { parsePermissionRules } from '../../foundation/permissions/index.js';
7
7
  import { createKnowledgeOperationActor, deriveKnowledgeOperationSource, executeKnowledgeOperation, } from '../../knowledge/knowledge-ops/index.js';
8
+ import { assertSafeAgentWriteContent, readBooleanFlag } from '../../knowledge/content-integrity.js';
8
9
  import { queryValue } from '../context.js';
9
10
  import { json } from '../response.js';
10
11
  import { isMindosBuiltinAssistantId } from './assistants.js';
@@ -112,7 +113,7 @@ export async function handleFilePost(body, services, options = {}) {
112
113
  body: payload,
113
114
  source,
114
115
  actor: createKnowledgeOperationActor(source, options.agentHeader),
115
- handlers: createFileOperationHandlers(services.mindRoot),
116
+ handlers: createFileOperationHandlers(services.mindRoot, source),
116
117
  permissionRules: options.permissionRules ?? parsePermissionRules(process.env.MINDOS_PERMISSION_RULES),
117
118
  protectedRootFiles: options.protectedRootFiles,
118
119
  responses: {
@@ -131,15 +132,15 @@ export async function handleFilePost(body, services, options = {}) {
131
132
  return mapFilePostError(error);
132
133
  }
133
134
  }
134
- function createFileOperationHandlers(mindRoot) {
135
+ function createFileOperationHandlers(mindRoot, source) {
135
136
  return {
136
- save_file: (filePath, params) => saveFile(mindRoot, filePath, params),
137
- create_file: (filePath, params) => createFile(mindRoot, filePath, params),
138
- append_to_file: (filePath, params) => appendToFile(mindRoot, filePath, params),
139
- insert_lines: (filePath, params) => insertLinesOperation(mindRoot, filePath, params),
140
- update_lines: (filePath, params) => updateLinesOperation(mindRoot, filePath, params),
141
- insert_after_heading: (filePath, params) => insertAfterHeadingOperation(mindRoot, filePath, params),
142
- update_section: (filePath, params) => updateSectionOperation(mindRoot, filePath, params),
137
+ save_file: (filePath, params) => saveFile(mindRoot, filePath, params, source),
138
+ create_file: (filePath, params) => createFile(mindRoot, filePath, params, source),
139
+ append_to_file: (filePath, params) => appendToFile(mindRoot, filePath, params, source),
140
+ insert_lines: (filePath, params) => insertLinesOperation(mindRoot, filePath, params, source),
141
+ update_lines: (filePath, params) => updateLinesOperation(mindRoot, filePath, params, source),
142
+ insert_after_heading: (filePath, params) => insertAfterHeadingOperation(mindRoot, filePath, params, source),
143
+ update_section: (filePath, params) => updateSectionOperation(mindRoot, filePath, params, source),
143
144
  delete_file: (filePath) => deleteFile(mindRoot, filePath),
144
145
  rename_file: (filePath, params) => renameFile(mindRoot, filePath, params),
145
146
  move_file: (filePath, params) => moveFile(mindRoot, filePath, params),
@@ -280,7 +281,7 @@ function assertNotBuiltinAssistantDestructivePath(filePath, operation) {
280
281
  return;
281
282
  throw new Error(`Access denied: built-in Assistant "${filePath}" cannot be ${operation}`);
282
283
  }
283
- function saveFile(mindRoot, filePath, params) {
284
+ function saveFile(mindRoot, filePath, params, source) {
284
285
  const content = requireString(params.content, 'content');
285
286
  const abs = resolveExistingSafe(mindRoot, filePath);
286
287
  const normalizedPath = relativeKnowledgePath(mindRoot, abs);
@@ -291,16 +292,33 @@ function saveFile(mindRoot, filePath, params) {
291
292
  };
292
293
  }
293
294
  const before = safeRead(mindRoot, filePath);
295
+ assertSafeAgentWriteContent({
296
+ operation: 'save_file',
297
+ path: normalizedPath,
298
+ content,
299
+ beforeContent: before,
300
+ isAgentWrite: source === 'agent',
301
+ allowShrink: readBooleanFlag(params, 'allow_shrink'),
302
+ allowTruncatedContent: readBooleanFlag(params, 'allow_truncated_content'),
303
+ });
294
304
  atomicWriteFile(abs, content);
295
305
  return {
296
306
  response: json({ ok: true, path: normalizedPath, mtime: statSync(abs).mtimeMs }),
297
307
  changeEvent: { op: 'save_file', path: normalizedPath, summary: 'Updated file content', before, after: content },
298
308
  };
299
309
  }
300
- function createFile(mindRoot, filePath, params) {
310
+ function createFile(mindRoot, filePath, params, source) {
301
311
  const content = readString(params.content, '');
302
312
  const abs = resolveExistingSafe(mindRoot, filePath);
303
313
  const normalizedPath = relativeKnowledgePath(mindRoot, abs);
314
+ assertSafeAgentWriteContent({
315
+ operation: 'create_file',
316
+ path: normalizedPath,
317
+ content,
318
+ isAgentWrite: source === 'agent',
319
+ allowEmpty: readBooleanFlag(params, 'allow_empty'),
320
+ allowTruncatedContent: readBooleanFlag(params, 'allow_truncated_content'),
321
+ });
304
322
  mkdirSync(dirname(abs), { recursive: true });
305
323
  writeFileSync(abs, content, { encoding: 'utf-8', flag: 'wx' });
306
324
  return {
@@ -308,11 +326,18 @@ function createFile(mindRoot, filePath, params) {
308
326
  changeEvent: { op: 'create_file', path: normalizedPath, summary: 'Created file', before: '', after: content },
309
327
  };
310
328
  }
311
- function appendToFile(mindRoot, filePath, params) {
329
+ function appendToFile(mindRoot, filePath, params, source) {
312
330
  const content = requireString(params.content, 'content');
313
331
  const before = safeRead(mindRoot, filePath);
314
332
  const abs = resolveExistingSafe(mindRoot, filePath);
315
333
  const normalizedPath = relativeKnowledgePath(mindRoot, abs);
334
+ assertSafeAgentWriteContent({
335
+ operation: 'append_to_file',
336
+ path: normalizedPath,
337
+ content,
338
+ isAgentWrite: source === 'agent',
339
+ allowTruncatedContent: readBooleanFlag(params, 'allow_truncated_content'),
340
+ });
316
341
  mkdirSync(dirname(abs), { recursive: true });
317
342
  appendFileSync(abs, appendSeparator(abs) + content, 'utf-8');
318
343
  return {
@@ -320,7 +345,7 @@ function appendToFile(mindRoot, filePath, params) {
320
345
  changeEvent: { op: 'append_to_file', path: normalizedPath, summary: 'Appended content to file', before, after: safeRead(mindRoot, normalizedPath) },
321
346
  };
322
347
  }
323
- function insertLinesOperation(mindRoot, filePath, params) {
348
+ function insertLinesOperation(mindRoot, filePath, params, source) {
324
349
  const afterIndex = requireNumber(params.after_index, 'after_index');
325
350
  const lines = requireStringArray(params.lines, 'lines');
326
351
  const before = safeRead(mindRoot, filePath);
@@ -328,6 +353,13 @@ function insertLinesOperation(mindRoot, filePath, params) {
328
353
  const normalizedPath = existingKnowledgePath(mindRoot, filePath);
329
354
  if (afterIndex >= existing.length)
330
355
  throw new Error(`Invalid after_index: ${afterIndex} >= total lines (${existing.length})`);
356
+ assertSafeAgentWriteContent({
357
+ operation: 'insert_lines',
358
+ path: normalizedPath,
359
+ content: lines.join('\n'),
360
+ isAgentWrite: source === 'agent',
361
+ allowTruncatedContent: readBooleanFlag(params, 'allow_truncated_content'),
362
+ });
331
363
  existing.splice(afterIndex < 0 ? 0 : afterIndex + 1, 0, ...lines);
332
364
  writeText(mindRoot, normalizedPath, existing.join('\n'));
333
365
  return {
@@ -335,7 +367,7 @@ function insertLinesOperation(mindRoot, filePath, params) {
335
367
  changeEvent: { op: 'insert_lines', path: normalizedPath, summary: `Inserted ${lines.length} line(s)`, before, after: safeRead(mindRoot, normalizedPath) },
336
368
  };
337
369
  }
338
- function updateLinesOperation(mindRoot, filePath, params) {
370
+ function updateLinesOperation(mindRoot, filePath, params, source) {
339
371
  const start = requireNumber(params.start, 'start');
340
372
  const end = requireNumber(params.end, 'end');
341
373
  const lines = requireStringArray(params.lines, 'lines');
@@ -348,6 +380,13 @@ function updateLinesOperation(mindRoot, filePath, params) {
348
380
  const normalizedPath = existingKnowledgePath(mindRoot, filePath);
349
381
  if (start >= existing.length)
350
382
  throw new Error(`Invalid line index: start (${start}) >= total lines (${existing.length})`);
383
+ assertSafeAgentWriteContent({
384
+ operation: 'update_lines',
385
+ path: normalizedPath,
386
+ content: lines.join('\n'),
387
+ isAgentWrite: source === 'agent',
388
+ allowTruncatedContent: readBooleanFlag(params, 'allow_truncated_content'),
389
+ });
351
390
  existing.splice(start, end - start + 1, ...lines);
352
391
  writeText(mindRoot, normalizedPath, existing.join('\n'));
353
392
  return {
@@ -355,7 +394,7 @@ function updateLinesOperation(mindRoot, filePath, params) {
355
394
  changeEvent: { op: 'update_lines', path: normalizedPath, summary: `Updated lines ${start}-${end}`, before, after: safeRead(mindRoot, normalizedPath) },
356
395
  };
357
396
  }
358
- function insertAfterHeadingOperation(mindRoot, filePath, params) {
397
+ function insertAfterHeadingOperation(mindRoot, filePath, params, source) {
359
398
  const heading = requireString(params.heading, 'heading');
360
399
  const content = requireString(params.content, 'content');
361
400
  const before = safeRead(mindRoot, filePath);
@@ -364,6 +403,13 @@ function insertAfterHeadingOperation(mindRoot, filePath, params) {
364
403
  const idx = findHeading(lines, heading);
365
404
  if (idx === -1)
366
405
  throw new Error(`Heading not found: "${heading}"`);
406
+ assertSafeAgentWriteContent({
407
+ operation: 'insert_after_heading',
408
+ path: normalizedPath,
409
+ content,
410
+ isAgentWrite: source === 'agent',
411
+ allowTruncatedContent: readBooleanFlag(params, 'allow_truncated_content'),
412
+ });
367
413
  let insertAt = idx + 1;
368
414
  while (insertAt < lines.length && (lines[insertAt] ?? '').trim() === '')
369
415
  insertAt++;
@@ -374,7 +420,7 @@ function insertAfterHeadingOperation(mindRoot, filePath, params) {
374
420
  changeEvent: { op: 'insert_after_heading', path: normalizedPath, summary: `Inserted content after heading "${heading}"`, before, after: safeRead(mindRoot, normalizedPath) },
375
421
  };
376
422
  }
377
- function updateSectionOperation(mindRoot, filePath, params) {
423
+ function updateSectionOperation(mindRoot, filePath, params, source) {
378
424
  const heading = requireString(params.heading, 'heading');
379
425
  const content = requireString(params.content, 'content');
380
426
  const before = safeRead(mindRoot, filePath);
@@ -383,6 +429,13 @@ function updateSectionOperation(mindRoot, filePath, params) {
383
429
  const idx = findHeading(lines, heading);
384
430
  if (idx === -1)
385
431
  throw new Error(`Heading not found: "${heading}"`);
432
+ assertSafeAgentWriteContent({
433
+ operation: 'update_section',
434
+ path: normalizedPath,
435
+ content,
436
+ isAgentWrite: source === 'agent',
437
+ allowTruncatedContent: readBooleanFlag(params, 'allow_truncated_content'),
438
+ });
386
439
  const headingLine = lines[idx] ?? '';
387
440
  const headingLevel = (headingLine.match(/^#+/) ?? [''])[0].length;
388
441
  let sectionEnd = lines.length - 1;
@@ -645,7 +698,7 @@ function requireStringArray(value, field) {
645
698
  }
646
699
  function mapFilePostError(error) {
647
700
  const message = error instanceof Error ? error.message : String(error);
648
- if (/missing |must be|Invalid |Heading not found|row must|Only \.csv|start|after_index|line index|not a directory/i.test(message))
701
+ if (/missing |must be|Invalid |Heading not found|row must|Only \.csv|start|after_index|line index|not a directory|refusing to/i.test(message))
649
702
  return json({ error: message }, { status: 400 });
650
703
  if (/EEXIST|already exists/i.test(message))
651
704
  return json({ error: 'File already exists' }, { status: 409 });