@oh-my-pi/pi-agent-core 17.2.15 → 17.3.1
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
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [17.3.0] - 2026-08-13
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- Improved the manual `/shake` command to retain a small history of recent tool results, preventing the agent from losing its active working context.
|
|
10
|
+
|
|
5
11
|
## [17.2.13] - 2026-08-11
|
|
6
12
|
|
|
7
13
|
### Fixed
|
|
@@ -32,8 +32,10 @@ export interface ShakeConfig {
|
|
|
32
32
|
/** Auto-shake config: protects the live tail, conservative thresholds. */
|
|
33
33
|
export declare const DEFAULT_SHAKE_CONFIG: ShakeConfig;
|
|
34
34
|
/**
|
|
35
|
-
* Manual `/shake`: aggressive —
|
|
36
|
-
* artifact recovery reads included (the user's full
|
|
35
|
+
* Manual `/shake`: aggressive — no savings threshold and drops eligible
|
|
36
|
+
* regions across history, artifact recovery reads included (the user's full
|
|
37
|
+
* escape hatch). Still keeps a small recent tail so it cannot strip the tool
|
|
38
|
+
* results the agent is currently working from (#7776).
|
|
37
39
|
*/
|
|
38
40
|
export declare const AGGRESSIVE_SHAKE_CONFIG: ShakeConfig;
|
|
39
41
|
/** Compaction dead-end rescue: aggressive reach, but artifact recovery reads stay protected. */
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
3
|
"name": "@oh-my-pi/pi-agent-core",
|
|
4
|
-
"version": "17.
|
|
4
|
+
"version": "17.3.1",
|
|
5
5
|
"description": "General-purpose agent with transport abstraction, state management, and attachment support",
|
|
6
6
|
"homepage": "https://omp.sh",
|
|
7
7
|
"author": "Can Boluk",
|
|
@@ -35,16 +35,16 @@
|
|
|
35
35
|
"fmt": "biome format --write ."
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@oh-my-pi/pi-ai": "17.
|
|
39
|
-
"@oh-my-pi/pi-catalog": "17.
|
|
40
|
-
"@oh-my-pi/pi-natives": "17.
|
|
41
|
-
"@oh-my-pi/pi-utils": "17.
|
|
42
|
-
"@oh-my-pi/pi-wire": "17.
|
|
43
|
-
"@oh-my-pi/snapcompact": "17.
|
|
38
|
+
"@oh-my-pi/pi-ai": "17.3.1",
|
|
39
|
+
"@oh-my-pi/pi-catalog": "17.3.1",
|
|
40
|
+
"@oh-my-pi/pi-natives": "17.3.1",
|
|
41
|
+
"@oh-my-pi/pi-utils": "17.3.1",
|
|
42
|
+
"@oh-my-pi/pi-wire": "17.3.1",
|
|
43
|
+
"@oh-my-pi/snapcompact": "17.3.1",
|
|
44
44
|
"@opentelemetry/api": "^1.9.1"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@oh-my-pi/omptype": "17.
|
|
47
|
+
"@oh-my-pi/omptype": "17.3.1",
|
|
48
48
|
"@opentelemetry/context-async-hooks": "^2.9.0",
|
|
49
49
|
"@opentelemetry/sdk-trace-base": "^2.9.0",
|
|
50
50
|
"@types/bun": "^1.3.14"
|
package/src/compaction/shake.ts
CHANGED
|
@@ -52,11 +52,13 @@ export const DEFAULT_SHAKE_CONFIG: ShakeConfig = {
|
|
|
52
52
|
};
|
|
53
53
|
|
|
54
54
|
/**
|
|
55
|
-
* Manual `/shake`: aggressive —
|
|
56
|
-
* artifact recovery reads included (the user's full
|
|
55
|
+
* Manual `/shake`: aggressive — no savings threshold and drops eligible
|
|
56
|
+
* regions across history, artifact recovery reads included (the user's full
|
|
57
|
+
* escape hatch). Still keeps a small recent tail so it cannot strip the tool
|
|
58
|
+
* results the agent is currently working from (#7776).
|
|
57
59
|
*/
|
|
58
60
|
export const AGGRESSIVE_SHAKE_CONFIG: ShakeConfig = {
|
|
59
|
-
protectTokens:
|
|
61
|
+
protectTokens: 4_000,
|
|
60
62
|
minSavings: 0,
|
|
61
63
|
protectedTools: ["skill", isSkillReadToolResult],
|
|
62
64
|
fenceMinTokens: 400,
|
|
@@ -65,6 +67,10 @@ export const AGGRESSIVE_SHAKE_CONFIG: ShakeConfig = {
|
|
|
65
67
|
/** Compaction dead-end rescue: aggressive reach, but artifact recovery reads stay protected. */
|
|
66
68
|
export const RESCUE_SHAKE_CONFIG: ShakeConfig = {
|
|
67
69
|
...AGGRESSIVE_SHAKE_CONFIG,
|
|
70
|
+
// Rescue must be able to elide the newest oversized result even inside the
|
|
71
|
+
// manual preset's recent-tail window (#7776) — a dead-end recovery that
|
|
72
|
+
// cannot drop its blocker is not a recovery.
|
|
73
|
+
protectTokens: 0,
|
|
68
74
|
protectedTools: [...AGGRESSIVE_SHAKE_CONFIG.protectedTools, isArtifactRecoveryToolResult],
|
|
69
75
|
};
|
|
70
76
|
|