@nomad-e/bluma-cli 0.14.0 → 0.15.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/dist/config/native_tools.json +5 -5
- package/dist/main.js +400 -306
- package/package.json +1 -1
|
@@ -40,21 +40,21 @@
|
|
|
40
40
|
"type": "function",
|
|
41
41
|
"function": {
|
|
42
42
|
"name": "edit_tool",
|
|
43
|
-
"description": "Replaces exact text in file(s) or creates files.\n\n MANDATORY: Always call `read_file_lines` on the target file immediately before this tool. Never edit from memory or context — file content may have changed. Copy `old_string` verbatim from the read output.\n\n**
|
|
43
|
+
"description": "Replaces exact text in file(s) or creates files.\n\n MANDATORY: Always call `read_file_lines` on the target file immediately before this tool. Never edit from memory or context — file content may have changed. Copy `old_string` verbatim from the read output.\n\n**Two modes (provide ONE, not both):**\n1. **Single-edit:** `file_path` + `old_string` + `new_string` (omit `edits`).\n2. **Batch:** non-empty `edits[]` with `{file_path, old_string, new_string}` per item (omit single-edit fields).\n\n**Prefer batching:** use `edits` with multiple entries in **one** call when you need several replacements. Order matters on the same path.\n\n**Avoid line-by-line surgery:** batch related changes or use one wide `old_string` block.\n- After `read_file_lines`, copy a **contiguous block** with unique context into `old_string`.\n- Include 2–3 lines of surrounding context to make `old_string` unique in the file.\n- If no match, re-read the file — do not guess or adjust blindly.\n- Match indentation and whitespace **exactly** as it appears in the file.\n\n**Checklist before calling:**\n1. Did I call `read_file_lines` on this file in this turn?\n2. Is `old_string` copied verbatim from that output?\n3. Does the indentation match exactly?\n4. Is `old_string` unique in the file (no accidental double-replace)?\n\nNew file: `old_string` must be empty string.",
|
|
44
44
|
"parameters": {
|
|
45
45
|
"type": "object",
|
|
46
46
|
"properties": {
|
|
47
47
|
"file_path": {
|
|
48
48
|
"type": "string",
|
|
49
|
-
"description": "
|
|
49
|
+
"description": "Single-edit mode: path to the file. Do not set when using `edits[]`."
|
|
50
50
|
},
|
|
51
51
|
"old_string": {
|
|
52
52
|
"type": "string",
|
|
53
|
-
"description": "
|
|
53
|
+
"description": "Single-edit mode: exact text to replace. Empty string only to create a new file."
|
|
54
54
|
},
|
|
55
55
|
"new_string": {
|
|
56
56
|
"type": "string",
|
|
57
|
-
"description": "
|
|
57
|
+
"description": "Single-edit mode: replacement text."
|
|
58
58
|
},
|
|
59
59
|
"expected_replacements": {
|
|
60
60
|
"type": "integer",
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
"edits": {
|
|
65
65
|
"type": "array",
|
|
66
66
|
"maxItems": 64,
|
|
67
|
-
"description": "Batch mode: several edits in one
|
|
67
|
+
"description": "Batch mode: several edits in one call. When set, omit file_path/old_string/new_string at the top level.",
|
|
68
68
|
"items": {
|
|
69
69
|
"type": "object",
|
|
70
70
|
"properties": {
|