@oh-my-pi/pi-coding-agent 13.3.2 → 13.3.3
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/CHANGELOG.md +9 -0
- package/package.json +7 -7
- package/src/cursor.ts +1 -1
- package/src/modes/components/tool-execution.ts +3 -2
- package/src/patch/diff.ts +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [13.3.3] - 2026-02-26
|
|
6
|
+
### Added
|
|
7
|
+
|
|
8
|
+
- Support for `move` parameter in `computeHashlineDiff` to enable file move operations alongside content edits
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- Modified no-op detection logic to allow move-only operations when file content remains unchanged
|
|
13
|
+
|
|
5
14
|
## [13.3.1] - 2026-02-26
|
|
6
15
|
|
|
7
16
|
### Added
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
3
|
"name": "@oh-my-pi/pi-coding-agent",
|
|
4
|
-
"version": "13.3.
|
|
4
|
+
"version": "13.3.3",
|
|
5
5
|
"description": "Coding agent CLI with read, bash, edit, write tools and session management",
|
|
6
6
|
"homepage": "https://github.com/can1357/oh-my-pi",
|
|
7
7
|
"author": "Can Boluk",
|
|
@@ -41,12 +41,12 @@
|
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@mozilla/readability": "^0.6",
|
|
44
|
-
"@oh-my-pi/omp-stats": "13.3.
|
|
45
|
-
"@oh-my-pi/pi-agent-core": "13.3.
|
|
46
|
-
"@oh-my-pi/pi-ai": "13.3.
|
|
47
|
-
"@oh-my-pi/pi-natives": "13.3.
|
|
48
|
-
"@oh-my-pi/pi-tui": "13.3.
|
|
49
|
-
"@oh-my-pi/pi-utils": "13.3.
|
|
44
|
+
"@oh-my-pi/omp-stats": "13.3.3",
|
|
45
|
+
"@oh-my-pi/pi-agent-core": "13.3.3",
|
|
46
|
+
"@oh-my-pi/pi-ai": "13.3.3",
|
|
47
|
+
"@oh-my-pi/pi-natives": "13.3.3",
|
|
48
|
+
"@oh-my-pi/pi-tui": "13.3.3",
|
|
49
|
+
"@oh-my-pi/pi-utils": "13.3.3",
|
|
50
50
|
"@sinclair/typebox": "^0.34",
|
|
51
51
|
"@xterm/headless": "^6.0",
|
|
52
52
|
"ajv": "^8.18",
|
package/src/cursor.ts
CHANGED
|
@@ -198,7 +198,7 @@ export class CursorExecHandlers implements ICursorExecHandlers {
|
|
|
198
198
|
const timeoutSeconds = args.timeout && args.timeout > 0 ? args.timeout : undefined;
|
|
199
199
|
const toolResultMessage = await executeTool(this.options, "bash", toolCallId, {
|
|
200
200
|
command: args.command,
|
|
201
|
-
|
|
201
|
+
cwd: args.workingDirectory || undefined,
|
|
202
202
|
timeout: timeoutSeconds,
|
|
203
203
|
});
|
|
204
204
|
return toolResultMessage;
|
|
@@ -204,12 +204,13 @@ export class ToolExecutionComponent extends Container {
|
|
|
204
204
|
return;
|
|
205
205
|
}
|
|
206
206
|
const edits = this.#args?.edits;
|
|
207
|
+
const move = this.#args?.move;
|
|
207
208
|
if (path && Array.isArray(edits)) {
|
|
208
|
-
const argsKey = JSON.stringify({ path, edits });
|
|
209
|
+
const argsKey = JSON.stringify({ path, edits, move });
|
|
209
210
|
if (this.#editDiffArgsKey === argsKey) return;
|
|
210
211
|
this.#editDiffArgsKey = argsKey;
|
|
211
212
|
|
|
212
|
-
computeHashlineDiff({ path, edits }, this.#cwd).then(result => {
|
|
213
|
+
computeHashlineDiff({ path, edits, move }, this.#cwd).then(result => {
|
|
213
214
|
if (this.#editDiffArgsKey === argsKey) {
|
|
214
215
|
this.#editDiffPreview = result;
|
|
215
216
|
this.#updateDisplay();
|
package/src/patch/diff.ts
CHANGED
|
@@ -386,10 +386,10 @@ export async function computePatchDiff(
|
|
|
386
386
|
* Used for preview rendering in the TUI before hashline-mode edits execute.
|
|
387
387
|
*/
|
|
388
388
|
export async function computeHashlineDiff(
|
|
389
|
-
input: { path: string; edits: HashlineEdit[] },
|
|
389
|
+
input: { path: string; edits: HashlineEdit[]; move?: string },
|
|
390
390
|
cwd: string,
|
|
391
391
|
): Promise<DiffResult | DiffError> {
|
|
392
|
-
const { path, edits } = input;
|
|
392
|
+
const { path, edits, move } = input;
|
|
393
393
|
const absolutePath = resolveToCwd(path, cwd);
|
|
394
394
|
|
|
395
395
|
try {
|
|
@@ -414,7 +414,7 @@ export async function computeHashlineDiff(
|
|
|
414
414
|
const normalizedContent = normalizeToLF(content);
|
|
415
415
|
|
|
416
416
|
const result = applyHashlineEdits(normalizedContent, edits);
|
|
417
|
-
if (normalizedContent === result.lines) {
|
|
417
|
+
if (normalizedContent === result.lines && !move) {
|
|
418
418
|
return { error: `No changes would be made to ${path}. The edits produce identical content.` };
|
|
419
419
|
}
|
|
420
420
|
|