@roackb2/heddle 0.0.28 → 0.0.30
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/README.md +87 -36
- package/dist/examples/programmatic-loop.js +12 -0
- package/dist/examples/programmatic-loop.js.map +1 -1
- package/dist/src/cli/ask.d.ts.map +1 -1
- package/dist/src/cli/ask.js +27 -5
- package/dist/src/cli/ask.js.map +1 -1
- package/dist/src/cli/chat/App.js +5 -3
- package/dist/src/cli/chat/App.js.map +1 -1
- package/dist/src/cli/chat/hooks/useAgentRun.d.ts +1 -0
- package/dist/src/cli/chat/hooks/useAgentRun.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useAgentRun.js +73 -0
- package/dist/src/cli/chat/hooks/useAgentRun.js.map +1 -1
- package/dist/src/cli/chat/hooks/useApprovalFlow.d.ts +1 -0
- package/dist/src/cli/chat/hooks/useApprovalFlow.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useApprovalFlow.js +3 -0
- package/dist/src/cli/chat/hooks/useApprovalFlow.js.map +1 -1
- package/dist/src/cli/chat/utils/format.d.ts.map +1 -1
- package/dist/src/cli/chat/utils/format.js +8 -0
- package/dist/src/cli/chat/utils/format.js.map +1 -1
- package/dist/src/cli/chat/utils/runtime.d.ts.map +1 -1
- package/dist/src/cli/chat/utils/runtime.js +7 -3
- package/dist/src/cli/chat/utils/runtime.js.map +1 -1
- package/dist/src/cli/main.js +235 -2
- package/dist/src/cli/main.js.map +1 -1
- package/dist/src/cli/remote/control-plane-client.d.ts +76 -0
- package/dist/src/cli/remote/control-plane-client.d.ts.map +1 -1
- package/dist/src/core/agent/mutation-tracking.d.ts.map +1 -1
- package/dist/src/core/agent/mutation-tracking.js +3 -0
- package/dist/src/core/agent/mutation-tracking.js.map +1 -1
- package/dist/src/core/agent/post-mutation.js +2 -2
- package/dist/src/core/agent/post-mutation.js.map +1 -1
- package/dist/src/core/agent/run-agent.d.ts +1 -0
- package/dist/src/core/agent/run-agent.d.ts.map +1 -1
- package/dist/src/core/agent/run-agent.js +136 -28
- package/dist/src/core/agent/run-agent.js.map +1 -1
- package/dist/src/core/agent/tool-dispatch.d.ts +2 -0
- package/dist/src/core/agent/tool-dispatch.d.ts.map +1 -1
- package/dist/src/core/agent/tool-dispatch.js +8 -7
- package/dist/src/core/agent/tool-dispatch.js.map +1 -1
- package/dist/src/core/chat/conversation-lines.d.ts.map +1 -1
- package/dist/src/core/chat/conversation-lines.js +1 -26
- package/dist/src/core/chat/conversation-lines.js.map +1 -1
- package/dist/src/core/chat/session-lease.d.ts +4 -0
- package/dist/src/core/chat/session-lease.d.ts.map +1 -1
- package/dist/src/core/chat/session-lease.js +29 -1
- package/dist/src/core/chat/session-lease.js.map +1 -1
- package/dist/src/core/chat/session-submit.d.ts +2 -0
- package/dist/src/core/chat/session-submit.d.ts.map +1 -1
- package/dist/src/core/chat/session-submit.js +120 -15
- package/dist/src/core/chat/session-submit.js.map +1 -1
- package/dist/src/core/chat/trace-summary.d.ts.map +1 -1
- package/dist/src/core/chat/trace-summary.js +10 -0
- package/dist/src/core/chat/trace-summary.js.map +1 -1
- package/dist/src/core/memory/catalog.d.ts +46 -0
- package/dist/src/core/memory/catalog.d.ts.map +1 -0
- package/dist/src/core/memory/catalog.js +230 -0
- package/dist/src/core/memory/catalog.js.map +1 -0
- package/dist/src/core/memory/domain-prompt.d.ts +2 -0
- package/dist/src/core/memory/domain-prompt.d.ts.map +1 -0
- package/dist/src/core/memory/domain-prompt.js +35 -0
- package/dist/src/core/memory/domain-prompt.js.map +1 -0
- package/dist/src/core/memory/maintainer-tools.d.ts +5 -0
- package/dist/src/core/memory/maintainer-tools.d.ts.map +1 -0
- package/dist/src/core/memory/maintainer-tools.js +10 -0
- package/dist/src/core/memory/maintainer-tools.js.map +1 -0
- package/dist/src/core/memory/maintainer.d.ts +45 -0
- package/dist/src/core/memory/maintainer.d.ts.map +1 -0
- package/dist/src/core/memory/maintainer.js +204 -0
- package/dist/src/core/memory/maintainer.js.map +1 -0
- package/dist/src/core/memory/maintenance-integration.d.ts +20 -0
- package/dist/src/core/memory/maintenance-integration.d.ts.map +1 -0
- package/dist/src/core/memory/maintenance-integration.js +189 -0
- package/dist/src/core/memory/maintenance-integration.js.map +1 -0
- package/dist/src/core/memory/templates.d.ts +9 -0
- package/dist/src/core/memory/templates.d.ts.map +1 -0
- package/dist/src/core/memory/templates.js +32 -0
- package/dist/src/core/memory/templates.js.map +1 -0
- package/dist/src/core/memory/validation.d.ts +39 -0
- package/dist/src/core/memory/validation.d.ts.map +1 -0
- package/dist/src/core/memory/validation.js +94 -0
- package/dist/src/core/memory/validation.js.map +1 -0
- package/dist/src/core/memory/visibility.d.ts +42 -0
- package/dist/src/core/memory/visibility.d.ts.map +1 -0
- package/dist/src/core/memory/visibility.js +156 -0
- package/dist/src/core/memory/visibility.js.map +1 -0
- package/dist/src/core/prompts/system-prompt.d.ts.map +1 -1
- package/dist/src/core/prompts/system-prompt.js +0 -10
- package/dist/src/core/prompts/system-prompt.js.map +1 -1
- package/dist/src/core/review/diff-domain.d.ts +24 -0
- package/dist/src/core/review/diff-domain.d.ts.map +1 -0
- package/dist/src/core/review/diff-domain.js +134 -0
- package/dist/src/core/review/diff-domain.js.map +1 -0
- package/dist/src/core/runtime/agent-loop.d.ts.map +1 -1
- package/dist/src/core/runtime/agent-loop.js +1 -0
- package/dist/src/core/runtime/agent-loop.js.map +1 -1
- package/dist/src/core/runtime/daemon-registry.d.ts +6 -1
- package/dist/src/core/runtime/daemon-registry.d.ts.map +1 -1
- package/dist/src/core/runtime/daemon-registry.js +32 -5
- package/dist/src/core/runtime/daemon-registry.js.map +1 -1
- package/dist/src/core/runtime/default-tools.d.ts +1 -0
- package/dist/src/core/runtime/default-tools.d.ts.map +1 -1
- package/dist/src/core/runtime/default-tools.js +33 -13
- package/dist/src/core/runtime/default-tools.js.map +1 -1
- package/dist/src/core/runtime/heartbeat.d.ts.map +1 -1
- package/dist/src/core/runtime/heartbeat.js +9 -2
- package/dist/src/core/runtime/heartbeat.js.map +1 -1
- package/dist/src/core/runtime/runtime-hosts.js +1 -1
- package/dist/src/core/runtime/runtime-hosts.js.map +1 -1
- package/dist/src/core/runtime/workspaces.d.ts +7 -0
- package/dist/src/core/runtime/workspaces.d.ts.map +1 -1
- package/dist/src/core/runtime/workspaces.js +31 -2
- package/dist/src/core/runtime/workspaces.js.map +1 -1
- package/dist/src/core/tools/edit-file.d.ts +4 -0
- package/dist/src/core/tools/edit-file.d.ts.map +1 -1
- package/dist/src/core/tools/edit-file.js +48 -43
- package/dist/src/core/tools/edit-file.js.map +1 -1
- package/dist/src/core/tools/file-edit-core.d.ts +1 -0
- package/dist/src/core/tools/file-edit-core.d.ts.map +1 -1
- package/dist/src/core/tools/file-edit-core.js +10 -0
- package/dist/src/core/tools/file-edit-core.js.map +1 -1
- package/dist/src/core/tools/list-files.d.ts +4 -0
- package/dist/src/core/tools/list-files.d.ts.map +1 -1
- package/dist/src/core/tools/list-files.js +34 -29
- package/dist/src/core/tools/list-files.js.map +1 -1
- package/dist/src/core/tools/memory-checkpoint.d.ts +8 -0
- package/dist/src/core/tools/memory-checkpoint.d.ts.map +1 -0
- package/dist/src/core/tools/memory-checkpoint.js +131 -0
- package/dist/src/core/tools/memory-checkpoint.js.map +1 -0
- package/dist/src/core/tools/memory-notes.d.ts.map +1 -1
- package/dist/src/core/tools/memory-notes.js +4 -3
- package/dist/src/core/tools/memory-notes.js.map +1 -1
- package/dist/src/core/tools/read-file.d.ts +4 -0
- package/dist/src/core/tools/read-file.d.ts.map +1 -1
- package/dist/src/core/tools/read-file.js +50 -45
- package/dist/src/core/tools/read-file.js.map +1 -1
- package/dist/src/core/tools/record-knowledge.d.ts +9 -0
- package/dist/src/core/tools/record-knowledge.d.ts.map +1 -0
- package/dist/src/core/tools/record-knowledge.js +177 -0
- package/dist/src/core/tools/record-knowledge.js.map +1 -0
- package/dist/src/core/tools/run-shell.d.ts +2 -0
- package/dist/src/core/tools/run-shell.d.ts.map +1 -1
- package/dist/src/core/tools/run-shell.js +3 -0
- package/dist/src/core/tools/run-shell.js.map +1 -1
- package/dist/src/core/tools/search-files.d.ts +1 -0
- package/dist/src/core/tools/search-files.d.ts.map +1 -1
- package/dist/src/core/tools/search-files.js +4 -2
- package/dist/src/core/tools/search-files.js.map +1 -1
- package/dist/src/core/tools/view-image.d.ts +1 -0
- package/dist/src/core/tools/view-image.d.ts.map +1 -1
- package/dist/src/core/tools/view-image.js +2 -1
- package/dist/src/core/tools/view-image.js.map +1 -1
- package/dist/src/core/types.d.ts +33 -0
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/index.d.ts +13 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +8 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/server/app.d.ts.map +1 -1
- package/dist/src/server/app.js +1 -1
- package/dist/src/server/app.js.map +1 -1
- package/dist/src/server/features/control-plane/router.d.ts +78 -1
- package/dist/src/server/features/control-plane/router.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/router.js +87 -2
- package/dist/src/server/features/control-plane/router.js.map +1 -1
- package/dist/src/server/features/control-plane/services/ask.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/services/ask.js +23 -5
- package/dist/src/server/features/control-plane/services/ask.js.map +1 -1
- package/dist/src/server/features/control-plane/services/chat-sessions.d.ts +2 -0
- package/dist/src/server/features/control-plane/services/chat-sessions.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/services/chat-sessions.js +69 -0
- package/dist/src/server/features/control-plane/services/chat-sessions.js.map +1 -1
- package/dist/src/server/features/control-plane/services/control-plane-state.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/services/control-plane-state.js +26 -1
- package/dist/src/server/features/control-plane/services/control-plane-state.js.map +1 -1
- package/dist/src/server/features/control-plane/services/memory.d.ts +22 -0
- package/dist/src/server/features/control-plane/services/memory.d.ts.map +1 -0
- package/dist/src/server/features/control-plane/services/memory.js +36 -0
- package/dist/src/server/features/control-plane/services/memory.js.map +1 -0
- package/dist/src/server/features/control-plane/services/workspace-diff.d.ts +4 -0
- package/dist/src/server/features/control-plane/services/workspace-diff.d.ts.map +1 -0
- package/dist/src/server/features/control-plane/services/workspace-diff.js +258 -0
- package/dist/src/server/features/control-plane/services/workspace-diff.js.map +1 -0
- package/dist/src/server/features/control-plane/services/workspace-files.d.ts +18 -0
- package/dist/src/server/features/control-plane/services/workspace-files.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/services/workspace-files.js +68 -2
- package/dist/src/server/features/control-plane/services/workspace-files.js.map +1 -1
- package/dist/src/server/features/control-plane/types.d.ts +38 -0
- package/dist/src/server/features/control-plane/types.d.ts.map +1 -1
- package/dist/src/server/index.d.ts.map +1 -1
- package/dist/src/server/index.js +1 -0
- package/dist/src/server/index.js.map +1 -1
- package/dist/src/server/router.d.ts +76 -0
- package/dist/src/server/router.d.ts.map +1 -1
- package/dist/src/web/assets/index-BKSxomk7.js +55 -0
- package/dist/src/web/assets/index-Bl3oDytR.css +2 -0
- package/dist/src/web/index.html +2 -2
- package/package.json +18 -2
- package/dist/src/web/assets/index-COAJyPuH.css +0 -2
- package/dist/src/web/assets/index-DxGlp0Wk.js +0 -52
package/README.md
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
# Heddle
|
|
2
2
|
|
|
3
|
-
Heddle is an open-source
|
|
3
|
+
Heddle is an open-source AI coding agent runtime and terminal-first workspace for real project work.
|
|
4
4
|
|
|
5
|
-
It is designed for workflows where an agent needs to inspect a live repository, make bounded changes, verify results, keep continuity across sessions, and stay observable to the operator. Heddle supports OpenAI and Anthropic models, stores local workspace state under `.heddle/`,
|
|
5
|
+
It is designed for workflows where an agent needs to inspect a live repository, make bounded changes, verify results, keep continuity across sessions, and stay observable to the operator. Heddle supports OpenAI and Anthropic models, stores local workspace state under `.heddle/`, includes both a terminal chat experience and a browser control plane, learns durable workspace knowledge while it works, and gives users a review path for file diffs, commands, approvals, and traces.
|
|
6
6
|
|
|
7
|
-
In plain terms: Heddle is for people who want an
|
|
7
|
+
In plain terms: Heddle is for people who want an AI coding assistant that can work inside actual projects, learn each project's operating knowledge over time, switch between local workspaces, and remain inspectable instead of acting like a black box.
|
|
8
8
|
|
|
9
9
|
## Why Try Heddle
|
|
10
10
|
|
|
11
|
-
Heddle is aimed at people who want more than a one-shot coding chat wrapper.
|
|
11
|
+
Heddle is aimed at people who want more than a one-shot coding chat wrapper or stateless AI code assistant.
|
|
12
12
|
|
|
13
13
|
It is a good fit if you want:
|
|
14
14
|
|
|
15
15
|
- a terminal-first coding agent that works in a real repository
|
|
16
|
-
-
|
|
16
|
+
- an agent that learns durable project knowledge while working with you, using inspectable local memory
|
|
17
17
|
- explicit traces, approvals, and reviewable workflow artifacts
|
|
18
|
-
- a browser control plane for local oversight
|
|
18
|
+
- a browser control plane for local oversight, workspace switching, and session review
|
|
19
19
|
- a path from interactive use to programmatic and scheduled agent workflows
|
|
20
20
|
|
|
21
21
|
Heddle is probably not the right fit if you only want a very simple one-shot prompt runner and do not care about sessions, persistence, observability, or operator control.
|
|
@@ -28,9 +28,11 @@ At a high level, Heddle helps with:
|
|
|
28
28
|
- making code or doc changes inside a real workspace
|
|
29
29
|
- running bounded verification like builds, tests, and repo review
|
|
30
30
|
- keeping multi-step work going across sessions instead of starting from scratch each time
|
|
31
|
+
- switching between local workspaces from the browser control plane
|
|
32
|
+
- learning durable facts, preferences, and workflows from real usage
|
|
31
33
|
- exposing more operator visibility than a black-box chat tool
|
|
32
34
|
|
|
33
|
-
If you want a terminal-first coding agent with local state, review traces, and a path toward longer-running workflows, that is the problem Heddle is trying to solve.
|
|
35
|
+
If you want a terminal-first coding agent with local state, review traces, workspace memory, and a path toward longer-running workflows, that is the problem Heddle is trying to solve.
|
|
34
36
|
|
|
35
37
|
## See Heddle
|
|
36
38
|
|
|
@@ -50,25 +52,35 @@ Terminal chat/dev workflow showing file edits, inline diff output, and verificat
|
|
|
50
52
|
|
|
51
53
|
### Browser control plane overview
|
|
52
54
|
|
|
53
|
-
The local control plane gives you a browser-based view of the current workspace, saved sessions, heartbeat tasks, and recent activity:
|
|
55
|
+
The local control plane gives you a browser-based view of the current workspace, saved sessions, heartbeat tasks, workspace memory, and recent activity. It also shows which workspace is active, so browser sessions follow the selected project instead of the daemon launch directory:
|
|
54
56
|
|
|
55
|
-

|
|
57
|
+

|
|
56
58
|
|
|
57
59
|
### Browser session review
|
|
58
60
|
|
|
59
|
-
Saved session review in the control plane, with conversation history in the center and review evidence on the
|
|
61
|
+
Saved session review in the control plane, with conversation history in the center and current change review on the right. Review starts from the current Git working tree, then separates historical turn diffs and command/approval evidence so you can focus on the change you need to inspect now:
|
|
60
62
|
|
|
61
|
-

|
|
64
|
+
|
|
65
|
+
### Workspace and task management
|
|
66
|
+
|
|
67
|
+
The Workspaces view lets you switch between local projects, register additional workspace roots, rename attached workspaces, and keep sessions tied to the workspace state under `.heddle/`:
|
|
68
|
+
|
|
69
|
+

|
|
70
|
+
|
|
71
|
+
Heartbeat tasks expose scheduled/background maintenance runs with durable run history and operator escalation state:
|
|
72
|
+
|
|
73
|
+

|
|
62
74
|
|
|
63
75
|
### Mobile control plane
|
|
64
76
|
|
|
65
|
-
The control plane also has a phone-oriented layout for checking sessions, reading the latest conversation,
|
|
77
|
+
The control plane also has a phone-oriented layout for checking sessions, reading the latest conversation, switching between workspace sections, and reviewing current diffs from another device:
|
|
66
78
|
|
|
67
79
|
<p>
|
|
68
|
-
<img src="docs/images/mobile-control-plane-
|
|
69
|
-
<img src="docs/images/mobile-control-plane-chat.png" alt="Heddle mobile chat view" width="240">
|
|
70
|
-
<img src="docs/images/mobile-control-plane-review-
|
|
71
|
-
<img src="docs/images/mobile-control-plane-
|
|
80
|
+
<img src="docs/images/mobile-control-plane-overview-current.png" alt="Heddle mobile overview" width="240">
|
|
81
|
+
<img src="docs/images/mobile-control-plane-session-chat.png" alt="Heddle mobile chat view" width="240">
|
|
82
|
+
<img src="docs/images/mobile-control-plane-session-review-current-diff.png" alt="Heddle mobile current diff review" width="240">
|
|
83
|
+
<img src="docs/images/mobile-control-plane-workspaces-current.png" alt="Heddle mobile workspace management" width="240">
|
|
72
84
|
</p>
|
|
73
85
|
|
|
74
86
|
## 2-Minute Try-It Path
|
|
@@ -111,6 +123,30 @@ Summarize this repository, show me the main build/test commands, and point out t
|
|
|
111
123
|
heddle daemon
|
|
112
124
|
```
|
|
113
125
|
|
|
126
|
+
Open the browser control plane from the daemon output. From there you can use `Overview`, `Sessions`, `Tasks`, and `Workspaces` to inspect the active workspace, continue saved sessions, review changes, and switch to another local project.
|
|
127
|
+
|
|
128
|
+
### Try The Learning Loop
|
|
129
|
+
|
|
130
|
+
Heddle gets more useful when it learns a reusable preference and applies it later. In chat, teach it a ticket format:
|
|
131
|
+
|
|
132
|
+
```text
|
|
133
|
+
Whenever I ask you to create a ticket, use these sections: problem statement, proposed approach, considered alternatives, conclusion.
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
Then start a fresh session and ask:
|
|
137
|
+
|
|
138
|
+
```text
|
|
139
|
+
Create a ticket for maintaining doc consistency after feature updates.
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Heddle should recover the preference from its local memory catalog and produce the ticket in that structure. You can inspect what it learned with:
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
heddle memory status
|
|
146
|
+
heddle memory list
|
|
147
|
+
heddle memory search ticket
|
|
148
|
+
```
|
|
149
|
+
|
|
114
150
|
## Major Features
|
|
115
151
|
|
|
116
152
|
### Terminal chat for real coding work
|
|
@@ -142,7 +178,29 @@ Typical session commands include:
|
|
|
142
178
|
|
|
143
179
|
More: [Chat and sessions guide](docs/guides/chat-and-sessions.md)
|
|
144
180
|
|
|
145
|
-
###
|
|
181
|
+
### Knowledge Persistence: Heddle Learns While It Works
|
|
182
|
+
|
|
183
|
+
Heddle can learn durable project knowledge while it works with you.
|
|
184
|
+
|
|
185
|
+
When the agent notices reusable information — a preferred ticket format, a canonical verification command, an operational convention, a recurring repo quirk, or a stable workflow pattern — it can record a memory candidate and let a dedicated maintainer path fold that knowledge into cataloged markdown notes under `.heddle/memory/`.
|
|
186
|
+
|
|
187
|
+
The goal is practical recall: future sessions should know where to look instead of rediscovering the same context from scratch. Heddle does this through explicit catalogs, readable local notes, maintenance logs, and memory visibility commands rather than opaque retrieval.
|
|
188
|
+
|
|
189
|
+
The learning loop is intentionally concrete:
|
|
190
|
+
|
|
191
|
+
- notices durable facts and preferences during normal work
|
|
192
|
+
- records memory candidates without interrupting the user
|
|
193
|
+
- folds candidates into cataloged markdown through a maintainer path
|
|
194
|
+
- lets future sessions recover context through explicit discovery paths
|
|
195
|
+
- lets users audit memory with `heddle memory status/list/read/search/validate`
|
|
196
|
+
|
|
197
|
+
Try it on a real project: tell Heddle a durable preference or let it discover a stable workflow detail, then start a fresh session and watch it recover that context through the memory catalog.
|
|
198
|
+
|
|
199
|
+
For example, tell Heddle your preferred ticket template once, then ask for a ticket in a new session. The point is not just storing a note; it is making future work start from the operating knowledge you already taught the agent.
|
|
200
|
+
|
|
201
|
+
More: [Knowledge persistence](docs/guides/knowledge-persistence.md)
|
|
202
|
+
|
|
203
|
+
### Control plane and workspaces
|
|
146
204
|
|
|
147
205
|
The control plane is Heddle's local browser UI:
|
|
148
206
|
|
|
@@ -150,11 +208,15 @@ The control plane is Heddle's local browser UI:
|
|
|
150
208
|
heddle daemon
|
|
151
209
|
```
|
|
152
210
|
|
|
153
|
-
It gives you a browser-based view into sessions, run state, heartbeat tasks, and review-oriented details. The purpose is operator oversight: seeing what the agent is doing, reviewing history more comfortably, and managing local runs from a UI instead of only from the terminal.
|
|
211
|
+
It gives you a browser-based view into workspaces, sessions, run state, heartbeat tasks, memory health, and review-oriented details. The purpose is operator oversight: seeing what the agent is doing, reviewing history more comfortably, and managing local runs from a UI instead of only from the terminal.
|
|
154
212
|
|
|
155
213
|
If terminal chat is the execution surface, the control plane is the oversight surface.
|
|
156
214
|
|
|
157
|
-
|
|
215
|
+
The `Workspaces` section lets you register local projects, switch the control plane between them, rename workspace entries, and pick a project folder from the browser UI. Heddle also keeps a user-level workspace registry so projects you have opened from the CLI or daemon can be rediscovered later.
|
|
216
|
+
|
|
217
|
+
The `Sessions` section supports a coding-review flow built around current work first. Review starts from the live Git working tree for the active workspace, with changed files, structured read-only diffs, and a larger full-diff viewer when the side panel is too tight. Historical turn diffs, review commands, verification commands, approvals, and trace events are still available, but they are separated from current review so old evidence does not distract from the task at hand.
|
|
218
|
+
|
|
219
|
+
This is useful if you want a more inspectable and operator-friendly workflow than a plain CLI transcript. The layout adapts for phone use as well, with mobile-native navigation for Overview, Sessions, Tasks, and Workspaces, plus a focused Chat/Review session workflow.
|
|
158
220
|
|
|
159
221
|
More: [Control plane guide](docs/guides/control-plane.md)
|
|
160
222
|
|
|
@@ -164,30 +226,18 @@ Heddle is local-first, but it still has a runtime ownership model.
|
|
|
164
226
|
|
|
165
227
|
The short version is:
|
|
166
228
|
|
|
167
|
-
- the workspace is the ownership unit
|
|
229
|
+
- the workspace is the project-level state and ownership unit
|
|
168
230
|
- one workspace should have one live runtime owner at a time
|
|
169
231
|
- that owner is either:
|
|
170
232
|
- the embedded CLI command you started
|
|
171
233
|
- or a background `heddle daemon`
|
|
172
234
|
|
|
173
|
-
This is why Heddle stores state under the workspace’s `.heddle/`, why the browser control plane acts as a client of the daemon rather than a separate runtime, and why
|
|
235
|
+
This is why Heddle stores state under the workspace’s `.heddle/`, why the browser control plane acts as a client of the daemon rather than a separate runtime, and why the UI treats workspace switching as choosing which local `.heddle/` state to inspect and operate.
|
|
174
236
|
|
|
175
237
|
If you want to understand how `chat`, `ask`, the daemon, the control plane, and workspace-local state fit together, read:
|
|
176
238
|
|
|
177
239
|
- [Runtime host model](docs/guides/runtime-host-model.md)
|
|
178
240
|
|
|
179
|
-
### Knowledge persistence
|
|
180
|
-
|
|
181
|
-
Heddle can keep durable project knowledge in markdown notes under `.heddle/memory/`.
|
|
182
|
-
|
|
183
|
-
The idea is simple: if the agent learns a stable fact about your repo — architecture notes, command quirks, recurring build issues, conventions — it can save that knowledge so future sessions do not have to rediscover it.
|
|
184
|
-
|
|
185
|
-
This is not meant to be a hidden vector database or magical long-term memory. It is readable, local, workspace-scoped memory that both the agent and the human can inspect.
|
|
186
|
-
|
|
187
|
-
This matters if you want the agent to become more useful over time in a specific project.
|
|
188
|
-
|
|
189
|
-
More: [Knowledge persistence](docs/guides/knowledge-persistence.md)
|
|
190
|
-
|
|
191
241
|
### Heartbeat
|
|
192
242
|
|
|
193
243
|
Heartbeat is Heddle's model for bounded autonomous wake cycles.
|
|
@@ -304,14 +354,15 @@ Heddle is already useful for real coding-agent workflows, but it is still evolvi
|
|
|
304
354
|
Current strengths include:
|
|
305
355
|
|
|
306
356
|
- terminal-first coding and repository workflows
|
|
307
|
-
-
|
|
308
|
-
-
|
|
357
|
+
- autonomous, catalog-backed workspace memory that helps the agent learn from normal usage
|
|
358
|
+
- explicit traces, approvals, diff review, and local workspace state
|
|
359
|
+
- browser-based oversight and workspace switching through the control plane
|
|
309
360
|
- local-first heartbeat primitives for scheduled agent work
|
|
310
361
|
- practical programmatic hooks for custom hosts
|
|
311
362
|
|
|
312
363
|
Current limitations include:
|
|
313
364
|
|
|
314
|
-
- the browser control plane is
|
|
365
|
+
- the browser control plane is read-only for file review; it is not yet an editable IDE-like diff environment
|
|
315
366
|
- some advanced workflows remain better documented in source and examples than in polished product UX
|
|
316
367
|
- the project surface is still changing as the runtime matures
|
|
317
368
|
|
|
@@ -84,6 +84,8 @@ function formatExampleEvent(event) {
|
|
|
84
84
|
return `[event] loop.finished outcome=${event.outcome} transcript=${event.state.transcript.length} trace=${event.state.trace.length} input=${event.usage?.inputTokens ?? 0} output=${event.usage?.outputTokens ?? 0} total=${event.usage?.totalTokens ?? 0}`;
|
|
85
85
|
case 'trace':
|
|
86
86
|
return formatTraceEvent(event.event);
|
|
87
|
+
default:
|
|
88
|
+
return undefined;
|
|
87
89
|
}
|
|
88
90
|
}
|
|
89
91
|
function formatTraceEvent(event) {
|
|
@@ -102,6 +104,16 @@ function formatTraceEvent(event) {
|
|
|
102
104
|
return `[trace] tool.call step=${event.step} tool=${event.call.tool} input=${JSON.stringify(event.call.input)}`;
|
|
103
105
|
case 'tool.result':
|
|
104
106
|
return `[trace] tool.result step=${event.step} tool=${event.tool} ok=${event.result.ok} output=${JSON.stringify(formatUnknown(event.result.output ?? event.result.error ?? ''))}`;
|
|
107
|
+
case 'memory.candidate_recorded':
|
|
108
|
+
return `[trace] memory.candidate_recorded step=${event.step} candidate=${event.candidateId}`;
|
|
109
|
+
case 'memory.checkpoint_skipped':
|
|
110
|
+
return `[trace] memory.checkpoint_skipped step=${event.step} rationale=${JSON.stringify(shorten(event.rationale))}`;
|
|
111
|
+
case 'memory.maintenance_started':
|
|
112
|
+
return `[trace] memory.maintenance_started step=${event.step} run=${event.runId} candidates=${event.candidateIds.join(',')}`;
|
|
113
|
+
case 'memory.maintenance_finished':
|
|
114
|
+
return `[trace] memory.maintenance_finished step=${event.step} run=${event.runId} outcome=${event.outcome}`;
|
|
115
|
+
case 'memory.maintenance_failed':
|
|
116
|
+
return `[trace] memory.maintenance_failed step=${event.step} run=${event.runId} error=${JSON.stringify(shorten(event.error))}`;
|
|
105
117
|
case 'cyberloop.annotation':
|
|
106
118
|
return `[trace] cyberloop.annotation step=${event.step} frame=${event.frameKind} drift=${event.driftLevel}`;
|
|
107
119
|
case 'run.finished':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"programmatic-loop.js","sourceRoot":"","sources":["../../examples/programmatic-loop.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"programmatic-loop.js","sourceRoot":"","sources":["../../examples/programmatic-loop.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,6BAA6B;AAC7B,EAAE;AACF,SAAS;AACT,oDAAoD;AACpD,EAAE;AACF,YAAY;AACZ,wGAAwG;AACxG,EAAE;AACF,8EAA8E;AAC9E,0EAA0E;AAC1E,gCAAgC;AAChC,EAAE;AACF,uEAAuE;AACvE,8EAA8E;AAE9E,OAAO,EAAE,YAAY,EAAuB,MAAM,mCAAmC,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAG1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAEnD,MAAM,QAAQ,GAAmB;IAC/B,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,gDAAgD;IAC7D,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC1B;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;QACnB,oBAAoB,EAAE,KAAK;KAC5B;IACD,KAAK,CAAC,OAAO,CAAC,KAAK;QACjB,OAAO;YACL,EAAE,EAAE,IAAI;YACR,MAAM,EAAE;gBACN,KAAK;gBACL,IAAI,EAAE,2CAA2C;aAClD;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,KAAK,UAAU,IAAI;IACjB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,qBAAqB,CAAC;IACpG,MAAM,QAAQ,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,IAAI;YACnC,0GAA0G,CAC3G,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;QAChC,IAAI,EACF,oIAAoI;QACtI,KAAK;QACL,MAAM;QACN,KAAK,EAAE,CAAC,QAAQ,CAAC;QACjB,mBAAmB,EAAE,KAAK;QAC1B,QAAQ,EAAE,CAAC;QACX,OAAO,CAAC,KAAK;YACX,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACvC,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE5B,MAAM,UAAU,GAAG,yBAAyB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACzB,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK;QAC7B,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;QACjC,kBAAkB,EAAE,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM;QACtD,WAAW,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;KAC3C,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACb,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAqB;IAC/C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,cAAc;YACjB,OAAO,8BAA8B,KAAK,CAAC,KAAK,aAAa,KAAK,CAAC,QAAQ,cAAc,KAAK,CAAC,aAAa,EAAE,CAAC;QACjH,KAAK,kBAAkB;YACrB,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,uCAAuC,KAAK,CAAC,IAAI,CAAC,MAAM,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAChH,KAAK,eAAe;YAClB,OAAO,iCAAiC,KAAK,CAAC,OAAO,eAAe,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,UAAU,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,UAAU,KAAK,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC,WAAW,KAAK,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,UAAU,KAAK,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC,EAAE,CAAC;QAC/P,KAAK,OAAO;YACV,OAAO,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvC;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAiB;IACzC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,aAAa;YAChB,OAAO,4BAA4B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC3E,KAAK,gBAAgB;YACnB,OAAO,+BAA+B,KAAK,CAAC,IAAI,UAAU,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC7M,KAAK,yBAAyB;YAC5B,OAAO,wCAAwC,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACtF,KAAK,wBAAwB;YAC3B,OAAO,uCAAuC,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,aAAa,KAAK,CAAC,QAAQ,EAAE,CAAC;QAChH,KAAK,eAAe;YAClB,OAAO,8BAA8B,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,QAAQ,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,WAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACxJ,KAAK,WAAW;YACd,OAAO,0BAA0B,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAClH,KAAK,aAAa;YAChB,OAAO,4BAA4B,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QACpL,KAAK,2BAA2B;YAC9B,OAAO,0CAA0C,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,WAAW,EAAE,CAAC;QAC/F,KAAK,2BAA2B;YAC9B,OAAO,0CAA0C,KAAK,CAAC,IAAI,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACtH,KAAK,4BAA4B;YAC/B,OAAO,2CAA2C,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,KAAK,eAAe,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/H,KAAK,6BAA6B;YAChC,OAAO,4CAA4C,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,OAAO,EAAE,CAAC;QAC9G,KAAK,2BAA2B;YAC9B,OAAO,0CAA0C,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,KAAK,UAAU,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACjI,KAAK,sBAAsB;YACzB,OAAO,qCAAqC,KAAK,CAAC,IAAI,UAAU,KAAK,CAAC,SAAS,UAAU,KAAK,CAAC,UAAU,EAAE,CAAC;QAC9G,KAAK,cAAc;YACjB,OAAO,6BAA6B,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC,OAAO,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;IAChI,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,KAAa,EAAE,SAAS,GAAG,EAAE;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACrD,IAAI,UAAU,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;QACnC,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC;AAClD,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask.d.ts","sourceRoot":"","sources":["../../../src/cli/ask.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ask.d.ts","sourceRoot":"","sources":["../../../src/cli/ask.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAO5E,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC,CAAC;AAEF,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,iBAoHxE"}
|
package/dist/src/cli/ask.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
-
import { DEFAULT_OPENAI_MODEL, inferProviderFromModel, runAgentLoop, formatTraceForConsole, createLogger, resolveProviderApiKey, resolveApiKeyForModel, } from '../index.js';
|
|
3
|
+
import { appendMemoryCatalogSystemContext, DEFAULT_OPENAI_MODEL, createLlmAdapter, inferProviderFromModel, runAgentLoop, formatTraceForConsole, createLogger, resolveProviderApiKey, resolveApiKeyForModel, } from '../index.js';
|
|
4
|
+
import { runMaintenanceForRecordedCandidates } from '../core/memory/maintenance-integration.js';
|
|
4
5
|
import { submitChatSessionPrompt } from '../core/chat/session-submit.js';
|
|
5
6
|
import { createChatSession, readChatSession, readChatSessionCatalog, saveChatSessions } from '../core/chat/storage.js';
|
|
6
7
|
import { resolveWorkspaceContext } from '../core/runtime/workspaces.js';
|
|
@@ -13,6 +14,10 @@ export async function runAskCli(goal, options = {}) {
|
|
|
13
14
|
const maxSteps = options.maxSteps ?? parsePositiveInt(process.env.HEDDLE_MAX_STEPS) ?? 100;
|
|
14
15
|
const workspaceRoot = options.workspaceRoot ?? process.cwd();
|
|
15
16
|
const stateRoot = join(workspaceRoot, options.stateDir ?? '.heddle');
|
|
17
|
+
const systemContext = appendMemoryCatalogSystemContext({
|
|
18
|
+
systemContext: options.systemContext,
|
|
19
|
+
memoryRoot: join(stateRoot, 'memory'),
|
|
20
|
+
});
|
|
16
21
|
const logger = createLogger({ pretty: true, level: 'debug' });
|
|
17
22
|
const provider = inferProviderFromModel(model);
|
|
18
23
|
const sessionStoragePath = join(stateRoot, 'chat-sessions.catalog.json');
|
|
@@ -54,6 +59,8 @@ export async function runAskCli(goal, options = {}) {
|
|
|
54
59
|
sessionId: targetSession.id,
|
|
55
60
|
prompt: goal,
|
|
56
61
|
apiKey: options.apiKey,
|
|
62
|
+
systemContext,
|
|
63
|
+
memoryMaintenanceMode: 'inline',
|
|
57
64
|
leaseOwner: {
|
|
58
65
|
ownerKind: 'ask',
|
|
59
66
|
ownerId: `ask-${process.pid}`,
|
|
@@ -74,23 +81,36 @@ export async function runAskCli(goal, options = {}) {
|
|
|
74
81
|
].filter((line) => Boolean(line)).join('\n') + '\n');
|
|
75
82
|
return;
|
|
76
83
|
}
|
|
84
|
+
const apiKey = options.apiKey ?? resolveProviderApiKey(provider);
|
|
85
|
+
const llm = createLlmAdapter({ model, apiKey });
|
|
86
|
+
const memoryDir = join(stateRoot, 'memory');
|
|
77
87
|
const result = await runAgentLoop({
|
|
78
88
|
goal,
|
|
79
89
|
model,
|
|
80
|
-
apiKey
|
|
90
|
+
apiKey,
|
|
81
91
|
maxSteps,
|
|
82
92
|
logger,
|
|
83
93
|
workspaceRoot,
|
|
84
94
|
stateDir: options.stateDir,
|
|
95
|
+
memoryDir,
|
|
85
96
|
searchIgnoreDirs: options.searchIgnoreDirs,
|
|
86
|
-
systemContext
|
|
97
|
+
systemContext,
|
|
87
98
|
includePlanTool: false,
|
|
99
|
+
llm,
|
|
88
100
|
});
|
|
89
|
-
|
|
101
|
+
const maintenance = await runMaintenanceForRecordedCandidates({
|
|
102
|
+
memoryRoot: memoryDir,
|
|
103
|
+
llm,
|
|
104
|
+
source: 'heddle ask',
|
|
105
|
+
trace: result.trace,
|
|
106
|
+
maxSteps: 20,
|
|
107
|
+
});
|
|
108
|
+
const trace = maintenance.events.length > 0 ? [...result.trace, ...maintenance.events] : result.trace;
|
|
109
|
+
process.stdout.write(`${formatTraceForConsole(trace)}\n`);
|
|
90
110
|
const traceDir = join(stateRoot, 'traces');
|
|
91
111
|
mkdirSync(traceDir, { recursive: true });
|
|
92
112
|
const traceFile = join(traceDir, `trace-${Date.now()}.json`);
|
|
93
|
-
writeFileSync(traceFile, JSON.stringify(
|
|
113
|
+
writeFileSync(traceFile, JSON.stringify(trace, null, 2));
|
|
94
114
|
logger.info({ traceFile }, 'Trace saved');
|
|
95
115
|
}
|
|
96
116
|
async function runDaemonBackedAsk(options) {
|
|
@@ -108,6 +128,8 @@ async function runDaemonBackedAsk(options) {
|
|
|
108
128
|
sessionId,
|
|
109
129
|
prompt: options.goal,
|
|
110
130
|
apiKey: options.apiKey,
|
|
131
|
+
systemContext: options.systemContext,
|
|
132
|
+
memoryMaintenanceMode: 'inline',
|
|
111
133
|
});
|
|
112
134
|
process.stdout.write([
|
|
113
135
|
`Session: ${result.session?.id ?? sessionId}`,
|
package/dist/src/cli/ask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../src/cli/ask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,oBAAoB,EAEpB,sBAAsB,EACtB,YAAY,EACZ,qBAAqB,EACrB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../src/cli/ask.ts"],"names":[],"mappings":"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"}
|
package/dist/src/cli/chat/App.js
CHANGED
|
@@ -51,7 +51,7 @@ function EmbeddedChatApp({ runtime }) {
|
|
|
51
51
|
setActiveModel(sessionModel);
|
|
52
52
|
}
|
|
53
53
|
}, [activeModel, activeSession, runtime.model]);
|
|
54
|
-
const { status, setStatus, isRunning, error, liveEvents, workingFrame, elapsedSeconds, pendingApproval, approvalChoice, interruptRequested, currentAssistantText, currentPlan, resetRunState, actionState, workingFrames, } = useApprovalFlow(nextLocalId);
|
|
54
|
+
const { status, setStatus, isRunning, isMemoryUpdating, error, liveEvents, workingFrame, elapsedSeconds, pendingApproval, approvalChoice, interruptRequested, currentAssistantText, currentPlan, resetRunState, actionState, workingFrames, } = useApprovalFlow(nextLocalId);
|
|
55
55
|
const messages = useMemo(() => activeSession?.messages ?? [], [activeSession?.messages]);
|
|
56
56
|
const compacting = activeSession?.context?.compactionStatus === 'running';
|
|
57
57
|
const activityText = currentActivityText(liveEvents, isRunning, elapsedSeconds, pendingApproval, interruptRequested);
|
|
@@ -61,11 +61,13 @@ function EmbeddedChatApp({ runtime }) {
|
|
|
61
61
|
: compacting ? 'compacting'
|
|
62
62
|
: interruptRequested ? 'interrupt requested'
|
|
63
63
|
: isRunning ? 'running'
|
|
64
|
-
:
|
|
64
|
+
: isMemoryUpdating ? 'memory updating'
|
|
65
|
+
: status;
|
|
65
66
|
const statusHint = pendingApproval ? '←/→ choose • Enter confirms • A remembers for this project • Esc denies • Ctrl+C exits'
|
|
66
67
|
: compacting ? 'Compacting archived history in the background • Ctrl+C exits'
|
|
67
68
|
: isRunning ? 'Type freely • Enter queues prompt • Esc requests stop after the current step • Ctrl+C exits'
|
|
68
|
-
:
|
|
69
|
+
: isMemoryUpdating ? 'Memory maintenance is running in the background • Enter sends • Ctrl+C exits'
|
|
70
|
+
: 'Enter sends • Tab completes slash commands • /help shows commands • !command runs shell • Ctrl+C exits';
|
|
69
71
|
const runtimeHostWarning = runtime.runtimeHost?.kind === 'daemon' && !runtime.runtimeHost.stale ?
|
|
70
72
|
`Daemon is also attached to this workspace at http://${runtime.runtimeHost.endpoint.host}:${runtime.runtimeHost.endpoint.port}. Different sessions are fine; avoid writing to the same session from multiple clients.`
|
|
71
73
|
: undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../../../src/cli/chat/App.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../../../src/cli/chat/App.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,GACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAGhE,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AAEjD,MAAM,UAAU,GAAG,CAAC,EAAE,OAAO,EAAkC;IAC7D,OAAO,KAAC,eAAe,IAAC,OAAO,EAAE,OAAO,GAAI,CAAC;AAC/C,CAAC;AAED,SAAS,eAAe,CAAC,EAAE,OAAO,EAAkC;IAClE,MAAM,WAAW,GAAG,WAAW,EAAE,CAAC;IAClC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,WAAW,EACX,cAAc,EACd,UAAU,EACV,YAAY,GACb,GAAG,cAAc,EAAE,CAAC;IACrB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAElH,MAAM,EACJ,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,aAAa,EACb,aAAa,GACd,GAAG,eAAe,CAAC;QAClB,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;QAC9C,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;QACtC,YAAY,EAAE,OAAO,CAAC,KAAK;QAC3B,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,cAAc,CAAC;QAC7B,KAAK;QACL,cAAc;QACd,gBAAgB;QAChB,UAAU;QACV,YAAY;KACb,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,YAAY,CAAC;QACzB,aAAa;QACb,mBAAmB;KACpB,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC;QAC1D,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;YACjC,cAAc,CAAC,YAAY,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAEhD,MAAM,EACJ,MAAM,EACN,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,KAAK,EACL,UAAU,EACV,YAAY,EACZ,cAAc,EACd,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,WAAW,EACX,aAAa,EACb,WAAW,EACX,aAAa,GACd,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,QAAQ,IAAI,EAAE,EAAE,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IACzF,MAAM,UAAU,GAAG,aAAa,EAAE,OAAO,EAAE,gBAAgB,KAAK,SAAS,CAAC;IAC1E,MAAM,YAAY,GAAG,mBAAmB,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC;IACrH,MAAM,aAAa,GAAG,mBAAmB,CACvC,WAAW,EACX,aAAa,EAAE,OAAO,EAAE,kBAAkB,IAAI,aAAa,EAAE,OAAO,EAAE,sBAAsB,CAC7F,CAAC;IACF,MAAM,aAAa,GAAG,WAAW,aAAa,EAAE,EAAE,IAAI,eAAe,GAAG,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAChI,MAAM,cAAc,GAClB,eAAe,CAAC,CAAC,CAAC,mBAAmB;QACrC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY;YAC3B,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,qBAAqB;gBAC5C,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;oBACvB,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB;wBACtC,CAAC,CAAC,MAAM,CAAC;IACX,MAAM,UAAU,GACd,eAAe,CAAC,CAAC,CAAC,wFAAwF;QAC1G,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,8DAA8D;YAC7E,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,6FAA6F;gBAC3G,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,8EAA8E;oBACnG,CAAC,CAAC,wGAAwG,CAAC;IAC7G,MAAM,kBAAkB,GACtB,OAAO,CAAC,WAAW,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACpE,uDAAuD,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,yFAAyF;QACxN,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,aAAa,GAAG,UAAU;SAC7B,KAAK,CAAC,CAAC,CAAC,CAAC;SACT,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC;SAC1G,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;QAC5B,IAAI,SAAS,IAAI,KAAK,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,OAAO,GAAG,KAAK,CAAC,IAAI,MAAM,cAAc,GAAG,CAAC;QAC9C,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC;IACpB,CAAC,CAAC,CAAC;IACL,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CACH,SAAS,IAAI,eAAe,IAAI,kBAAkB,IAAI,KAAK,CAAC,CAAC;QAC3D;YACE,KAAK,EACH,eAAe,CAAC,CAAC,CAAC,YAAY;gBAC9B,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,gCAAgC;oBAC1C,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB;wBAC/B,CAAC,CAAC,YAAY;YAChB,KAAK,EACH,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC;gBACvE,CAAC,CAAC,aAAa;YACjB,KAAK;YACL,oBAAoB;YACpB,WAAW;SACZ;QACH,CAAC,CAAC,SAAS,EACb;QACE,SAAS;QACT,eAAe;QACf,kBAAkB;QAClB,KAAK;QACL,YAAY;QACZ,aAAa;QACb,oBAAoB;QACpB,WAAW;KACZ,CACF,CAAC;IACF,MAAM,sBAAsB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9C,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7B,OAAO,kDAAkD,CAAC;QAC5D,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,eAAe,CAAC;YACpC,SAAS,EAAE,eAAe;YAC1B,KAAK,EAAE,WAAW;YAClB,MAAM,EACJ,eAAe,CAAC,CAAC,CAAC,mBAAmB;gBACrC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;oBACvB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY;wBAC3B,CAAC,CAAC,MAAM;YACV,YAAY,EAAE,qBAAqB,CAAC;gBAClC,WAAW,EAAE,aAAa,EAAE,IAAI,IAAI,SAAS;gBAC7C,WAAW;gBACX,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,cAAc;gBACtB,IAAI,EAAE,UAAU;gBAChB,aAAa;gBACb,aAAa;gBACb,eAAe;gBACf,QAAQ;gBACR,QAAQ;gBACR,UAAU;gBACV,eAAe;gBACf,cAAc;gBACd,KAAK;gBACL,WAAW;gBACX,cAAc,EAAE,oBAAoB,CAAC,KAAK,CAAC;gBAC3C,eAAe,EAAE,qBAAqB,CAAC,KAAK,CAAC;gBAC7C,WAAW,EAAE,OAAO,CAAC,KAAK;gBAC1B,aAAa,EAAE,OAAO,CAAC,OAAO;gBAC9B,iBAAiB,EAAE,OAAO,CAAC,WAAW;aACvC,CAAC;SACH,CAAC,CAAC;QAEH,OAAO;YACL,yBAAyB,KAAK,CAAC,UAAU,GAAG;YAC5C,SAAS,KAAK,CAAC,OAAO,EAAE;YACxB,SAAS,KAAK,CAAC,QAAQ,EAAE;YACzB,aAAa,KAAK,CAAC,QAAQ,EAAE;SAC9B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,EAAE;QACD,OAAO;QACP,eAAe;QACf,WAAW;QACX,eAAe;QACf,SAAS;QACT,UAAU;QACV,aAAa;QACb,aAAa;QACb,aAAa;QACb,QAAQ;QACR,QAAQ;QACR,UAAU;QACV,cAAc;QACd,KAAK;QACL,WAAW;QACX,OAAO,CAAC,KAAK;QACb,OAAO,CAAC,OAAO;QACf,OAAO,CAAC,WAAW;QACnB,cAAc;QACd,UAAU;KACX,CAAC,CAAC;IACH,MAAM,sBAAsB,GAAG,WAAW,CAAC,CAAC,KAAqD,EAAE,EAAE;QACnG,IAAI,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,WAAW,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YACnD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE,IAAI,eAAe,EAAE,QAAQ,CAAC,CAAC;QAClG,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,YAAY,CAAC,SAAS,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAC1F,MAAM,aAAa,GAAG,CAAC,EAAU,EAAE,EAAE;QACnC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACvB,UAAU,EAAE,CAAC;QACb,aAAa,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,EAAE;QACzC,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,aAAa,IAAI,aAAa,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;YACnD,eAAe,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,EAAU,EAAE,EAAE;QAClC,MAAM,aAAa,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,aAAa,EAAE,CAAC;YAClB,UAAU,EAAE,CAAC;YACb,2BAA2B,EAAE,CAAC;YAC9B,aAAa,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE,GAAG,WAAW,CAAC;QAC7D,OAAO;QACP,WAAW;QACX,iBAAiB,EAAE,mBAAmB;QACtC,eAAe;QACf,QAAQ;QACR,KAAK,EAAE,WAAW;QAClB,iBAAiB;QACjB,mBAAmB;QACnB,KAAK,EAAE,KAAK,CAAC,QAAQ;KACtB,CAAC,CAAC;IAEH,MAAM,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,YAAY,EAAE,GAAG,mBAAmB,CAAC;QAChG,OAAO;QACP,WAAW;QACX,cAAc,EAAE,gBAAgB;QAChC,QAAQ;QACR,cAAc;QACd,eAAe;QACf,aAAa;QACb,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;QACtC,WAAW;QACX,SAAS;QACT,aAAa;QACb,YAAY;QACZ,iBAAiB;QACjB,mBAAmB;QACnB,aAAa;QACb,aAAa;QACb,yBAAyB;QACzB,YAAY,EAAE,KAAK,CAAC,OAAO;QAC3B,UAAU,EAAE,KAAK,CAAC,KAAK;QACvB,eAAe,EAAE,KAAK,CAAC,UAAU;QACjC,sBAAsB;QACtB,SAAS;QACT,eAAe;QACf,WAAW;QACX,yBAAyB;QACzB,gBAAgB;QAChB,WAAW,EAAE,OAAO,CAAC,KAAK;QAC1B,aAAa,EAAE,OAAO,CAAC,OAAO;QAC9B,iBAAiB,EAAE,OAAO,CAAC,WAAW;QACtC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;KAC/C,CAAC,CAAC;IAEH,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,aACpC,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,aACzC,MAAC,IAAI,IAAC,IAAI,6BAER,KAAC,IAAI,IAAC,QAAQ,kBACX,MAAM,aAAa,EAAE,IAAI,IAAI,SAAS,YAAY,WAAW,YAAY,OAAO,CAAC,QAAQ,EAAE,GACvF,IACF,EACP,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,wBACjD,cAAc,IACjB,EACP,KAAC,IAAI,IAAC,QAAQ,kBACX,UAAU,GACN,EACN,kBAAkB,CAAC,CAAC;wBACnB,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,YACjB,kBAAkB,GACd;wBACT,CAAC,CAAC,IAAI,IACF,EAEN,KAAC,iBAAiB,IAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,GAAI,EAEjE,MAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EACvE,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,aAEX,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,YACrD,eAAe,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,GAC/H,EACN,eAAe,CAAC,CAAC;wBAChB,KAAC,gBAAgB,IAAC,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,GAAI;wBACxF,CAAC,CAAC,8BACG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oCACtB,KAAC,gBAAgB,IACf,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAChC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAC3B,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAChD;oCACJ,CAAC,CAAC,IAAI,EACL,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oCACxB,KAAC,kBAAkB,IACjB,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAClC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,EAC/B,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,gBAAgB,GAClD;oCACJ,CAAC,CAAC,IAAI,EACL,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;oCAC5B,KAAC,sBAAsB,IACrB,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE,EACtC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,EAChC,gBAAgB,EAAE,OAAO,CAAC,WAAW,CAAC,gBAAgB,GACtD;oCACJ,CAAC,CAAC,IAAI,EACL,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;oCAC5B,KAAC,cAAc,IAAC,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAI;oCAChG,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;wCAC9B,KAAC,gBAAgB,IAAC,KAAK,EAAE,KAAK,GAAI;wCACpC,CAAC,CAAC,IAAI,EACN,MAAC,GAAG,eACF,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aAAE,GAAG,SAAS,EAChC,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,KAAC,WAAW,IACV,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,WAAW,EACnB,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC,EACpC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,+BAA+B,EAC3F,eAAe,EAAE,EAAE,EACnB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,sBAAsB,EACpC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;oDAClB,UAAU,EAAE,CAAC;oDACb,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC;gDAC3B,CAAC,GACD,GACE,IACF,EACN,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,aACjC,KAAC,IAAI,IAAC,QAAQ,kBACX,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,QAAQ;gDAChC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB;oDAC9B,CAAC,CAAC,eAAe,GACZ,EACP,KAAC,IAAI,IAAC,QAAQ,kBACX,sBAAsB,CAAC,CAAC,CAAC,UAAU;gDACpC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,cAAc,WAAW;oDAC1C,CAAC,CAAC,EAAE,GACC,IACH,IACL,IACD,EACN,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,QAAQ,kBAAE,SAAS,WAAW,MAAM,aAAa,KAAK,GAAQ,EACpE,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,KAAK,YAAG,SAAS,KAAK,CAAC,MAAM,EAAE,GAAQ,EAClF,KAAC,IAAI,IAAC,QAAQ,kBAAE,MAAM,aAAa,EAAE,GAAQ,IACxC,IACH,CACP,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa,EAAE,sBAA+B;IACzE,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,MAAM,aAAa,GAAG,4BAA4B,CAAC,KAAK,CAAC,CAAC;IAC1D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,WAAW,gBAAgB,CAAC,sBAAsB,CAAC,OAAO,CAAC;IACpE,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,sBAAsB,EAAE,CAAC,CAAC,CAAC;IAC5E,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,GAAG,aAAa,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1F,OAAO,WAAW,gBAAgB,QAAQ,CAAC;AAC7C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACrC,IAAI,KAAK,IAAI,SAAS,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC;IAClE,CAAC;IAED,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;QACnB,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC;IACzC,CAAC;IAED,OAAO,GAAG,KAAK,EAAE,CAAC;AACpB,CAAC"}
|
|
@@ -15,6 +15,7 @@ export type ActionState = {
|
|
|
15
15
|
setError: (value: string | undefined) => void;
|
|
16
16
|
setStatus: (value: string) => void;
|
|
17
17
|
setIsRunning: (value: boolean) => void;
|
|
18
|
+
setIsMemoryUpdating: (value: boolean) => void;
|
|
18
19
|
setInterruptRequested: (value: boolean) => void;
|
|
19
20
|
setLiveEvents: StateSetter<LiveEvent[]>;
|
|
20
21
|
setPendingApproval: (value: PendingApproval | undefined) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAgentRun.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useAgentRun.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useAgentRun.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useAgentRun.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { useMemo } from 'react';
|
|
2
|
+
import { readFileSync, writeFileSync } from 'node:fs';
|
|
2
3
|
import { createCyberLoopKinematicsObserver, createLogger, createLlmAdapter, createDefaultAgentTools, runAgentLoop, } from '../../../index.js';
|
|
4
|
+
import { runMaintenanceForRecordedCandidates } from '../../../core/memory/maintenance-integration.js';
|
|
3
5
|
import { DEFAULT_INSPECT_RULES, DEFAULT_MUTATE_RULES, runShellCommand } from '../../../core/tools/run-shell.js';
|
|
4
6
|
import { previewEditFileInput } from '../../../core/tools/edit-file.js';
|
|
5
7
|
import { appendDirectShellHistory, buildConversationMessages, countAssistantSteps, formatChatFailureMessage, formatEditPreviewHistoryMessage, formatPlanHistoryMessage, formatDirectShellResponse, shouldFallbackToMutate, summarizeTrace, summarizeToolCall, toLiveEvent, } from '../utils/format.js';
|
|
@@ -139,8 +141,13 @@ export async function executeAgentTurn(args) {
|
|
|
139
141
|
if (leaseConflict) {
|
|
140
142
|
state.setError(leaseConflict);
|
|
141
143
|
state.setStatus('Blocked');
|
|
144
|
+
state.setIsRunning(false);
|
|
145
|
+
state.interruptRequestedRef.current = false;
|
|
146
|
+
state.setInterruptRequested(false);
|
|
147
|
+
state.abortControllerRef.current = undefined;
|
|
142
148
|
updateSessionById(sessionId, (sessionToUpdate) => ({
|
|
143
149
|
...sessionToUpdate,
|
|
150
|
+
lastContinuePrompt: undefined,
|
|
144
151
|
messages: [
|
|
145
152
|
...sessionToUpdate.messages,
|
|
146
153
|
{ id: state.nextLocalId(), role: 'assistant', text: leaseConflict },
|
|
@@ -374,6 +381,17 @@ export async function executeAgentTurn(args) {
|
|
|
374
381
|
state.setError(formattedSummary);
|
|
375
382
|
}
|
|
376
383
|
state.setStatus(result.outcome === 'done' ? 'Idle' : `Stopped: ${result.outcome}`);
|
|
384
|
+
scheduleBackgroundMemoryMaintenance({
|
|
385
|
+
runtime,
|
|
386
|
+
llm,
|
|
387
|
+
sessionId,
|
|
388
|
+
trace: result.trace,
|
|
389
|
+
traceFile,
|
|
390
|
+
updateSessionById,
|
|
391
|
+
nextLocalId: state.nextLocalId,
|
|
392
|
+
setLiveEvents: state.setLiveEvents,
|
|
393
|
+
setIsMemoryUpdating: state.setIsMemoryUpdating,
|
|
394
|
+
});
|
|
377
395
|
return result;
|
|
378
396
|
}
|
|
379
397
|
catch (runError) {
|
|
@@ -647,4 +665,59 @@ async function runDirectShellAction(args) {
|
|
|
647
665
|
state.setIsRunning(false);
|
|
648
666
|
}
|
|
649
667
|
}
|
|
668
|
+
function scheduleBackgroundMemoryMaintenance(args) {
|
|
669
|
+
void (async () => {
|
|
670
|
+
const maintenance = await runMaintenanceForRecordedCandidates({
|
|
671
|
+
memoryRoot: args.runtime.memoryDir,
|
|
672
|
+
llm: args.llm,
|
|
673
|
+
source: `terminal chat session ${args.sessionId}`,
|
|
674
|
+
trace: args.trace,
|
|
675
|
+
maxSteps: 20,
|
|
676
|
+
onTraceEvent: (event) => {
|
|
677
|
+
if (event.type === 'memory.maintenance_started') {
|
|
678
|
+
args.setIsMemoryUpdating(true);
|
|
679
|
+
}
|
|
680
|
+
const next = toLiveEvent(event);
|
|
681
|
+
if (!next) {
|
|
682
|
+
return;
|
|
683
|
+
}
|
|
684
|
+
args.setLiveEvents((current) => [...current, { id: args.nextLocalId(), text: next }].slice(-8));
|
|
685
|
+
},
|
|
686
|
+
});
|
|
687
|
+
if (maintenance.events.length === 0) {
|
|
688
|
+
return;
|
|
689
|
+
}
|
|
690
|
+
const currentTrace = readTraceEvents(args.traceFile);
|
|
691
|
+
const nextTrace = [...currentTrace, ...maintenance.events];
|
|
692
|
+
writeFileSync(args.traceFile, `${JSON.stringify(nextTrace, null, 2)}\n`, 'utf8');
|
|
693
|
+
args.updateSessionById(args.sessionId, (session) => touchSession({
|
|
694
|
+
...session,
|
|
695
|
+
turns: session.turns.map((turn, index) => (index === session.turns.length - 1 ?
|
|
696
|
+
{
|
|
697
|
+
...turn,
|
|
698
|
+
events: summarizeTrace(nextTrace),
|
|
699
|
+
}
|
|
700
|
+
: turn)),
|
|
701
|
+
}));
|
|
702
|
+
args.setIsMemoryUpdating(false);
|
|
703
|
+
})().catch((error) => {
|
|
704
|
+
args.setIsMemoryUpdating(false);
|
|
705
|
+
args.setLiveEvents((current) => [
|
|
706
|
+
...current,
|
|
707
|
+
{
|
|
708
|
+
id: args.nextLocalId(),
|
|
709
|
+
text: `Memory maintenance failed: ${error instanceof Error ? error.message : String(error)}`,
|
|
710
|
+
},
|
|
711
|
+
].slice(-8));
|
|
712
|
+
});
|
|
713
|
+
}
|
|
714
|
+
function readTraceEvents(path) {
|
|
715
|
+
try {
|
|
716
|
+
const parsed = JSON.parse(readFileSync(path, 'utf8'));
|
|
717
|
+
return Array.isArray(parsed) ? parsed : [];
|
|
718
|
+
}
|
|
719
|
+
catch {
|
|
720
|
+
return [];
|
|
721
|
+
}
|
|
722
|
+
}
|
|
650
723
|
//# sourceMappingURL=useAgentRun.js.map
|