zames_pro 2.82.47 → 2.82.49
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 +12 -0
- package/dist/commands.js +5 -0
- package/dist/sessions.js +8 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [2.82.49] - 2026-10-22
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- **goal:** /goal on no longer overwrites the goal text
|
|
15
|
+
|
|
16
|
+
## [2.82.48] - 2026-10-22
|
|
17
|
+
|
|
18
|
+
### Fixed
|
|
19
|
+
|
|
20
|
+
- **sessions:** cap the stored todo checklist
|
|
21
|
+
|
|
10
22
|
## [2.82.47] - 2026-10-22
|
|
11
23
|
|
|
12
24
|
### Fixed
|
package/dist/commands.js
CHANGED
|
@@ -708,6 +708,11 @@ export function parseGoalCommand(text) {
|
|
|
708
708
|
return { sub: 'show' };
|
|
709
709
|
if (rest.toLowerCase() === 'clear' || rest.toLowerCase() === 'off')
|
|
710
710
|
return { sub: 'clear' };
|
|
711
|
+
// `/goal on` is the natural way to RE-ENABLE a goal after `/goal clear`;
|
|
712
|
+
// treating it as new goal text replaced the goal with the literal word
|
|
713
|
+
// `on`, which no work can satisfy. With no goal set it is a no-op.
|
|
714
|
+
if (rest.toLowerCase() === 'on')
|
|
715
|
+
return { sub: 'show' };
|
|
711
716
|
return { sub: 'set', goal: rest };
|
|
712
717
|
}
|
|
713
718
|
// Replace [image#N] / [file#N] markers in a task with the REAL file path, so
|
package/dist/sessions.js
CHANGED
|
@@ -67,6 +67,8 @@ function safeName(id) {
|
|
|
67
67
|
}
|
|
68
68
|
// Save/update a session. workdir is needed so that when launched from the same
|
|
69
69
|
// project we restore exactly its last chat.
|
|
70
|
+
/** Hard cap on the todo checklist stored with a session. */
|
|
71
|
+
export const SESSION_TODOS_CAP = 1000;
|
|
70
72
|
export function saveSession({ id, title = '', workdir = '', todos, provider, }) {
|
|
71
73
|
if (!id)
|
|
72
74
|
return null;
|
|
@@ -91,8 +93,12 @@ export function saveSession({ id, title = '', workdir = '', todos, provider, })
|
|
|
91
93
|
// Keep the previous checklist unless a new one is explicitly passed —
|
|
92
94
|
// saveLastChat() calls this for title/workdir only and must not wipe it.
|
|
93
95
|
const nextTodos = todos !== undefined ? todos : prev.todos;
|
|
94
|
-
if (nextTodos !== undefined)
|
|
95
|
-
|
|
96
|
+
if (nextTodos !== undefined) {
|
|
97
|
+
// A checklist is a UI indicator, not a database: a model that keeps
|
|
98
|
+
// appending items would grow the session file (read on every
|
|
99
|
+
// startup/restore) without bound. Keep the NEWEST entries.
|
|
100
|
+
data.todos = nextTodos.slice(-SESSION_TODOS_CAP);
|
|
101
|
+
}
|
|
96
102
|
writeJsonAtomic(file, data);
|
|
97
103
|
writeIndex({ id, workdir: data.workdir });
|
|
98
104
|
return data;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zames_pro",
|
|
3
|
-
"version": "2.82.
|
|
3
|
+
"version": "2.82.49",
|
|
4
4
|
"description": "Terminal coding agent that drives a real browser to chat with DeepSeek, Qwen and other web LLMs — no API key required. Reads and edits files, runs commands, commits to git, like Claude Code / Codex CLI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|