summaryrefslogtreecommitdiff
path: root/Omni/Agent/DESIGN.md
diff options
context:
space:
mode:
authorBen Sima <ben@bensima.com>2025-11-30 00:36:51 -0500
committerBen Sima <ben@bensima.com>2025-11-30 00:36:51 -0500
commit5fbcd92ff85bc9cc0b752888f6d3498aafea0b2a (patch)
tree4bcae7c97bf81ecae696744cfcd84520e5db639d /Omni/Agent/DESIGN.md
parentd05ca4732710dd9cef7fffd998a03615ad2cb58c (diff)
Remove amp dependency entirely
The build and tests pass. Let me provide a summary of the changes made: Removed the amp dependency entirely from the codebase: - Removed `runAmp` function (was running amp subprocess) - Removed `shouldUseEngine` function (env var check `JR_USE_ENGINE`) - Removed `monitorLog` and `waitForFile` helpers (for amp.log parsing) - Removed unused imports: `System.IO`, `Data.Text.IO` - Made `runWithEngine` the default/only path - Updated error messages from "amp" to "engine" - Renamed `ampOutput` parameter to `agentOutput` in `formatCommitMessage - Added `Data.IORef` import for `newIORef`, `modifyIORef'`, `readIORef` - Removed amp.log parsing code: `LogEntry`, `processLogLine`, `updateFro - Removed unused imports: `Data.Aeson`, `Data.ByteString.Lazy`, `Data.Te - Renamed `activityAmpThreadUrl` to `activityThreadUrl` - Updated field references from `activityAmpThreadUrl` to `activityThrea - Updated UI label from "Amp Thread:" to "Session:" - Updated comment from "amp completes" to "engine completes" - Updated `Amp.execute` to `Engine.runAgent` - Updated logging section to describe Engine callbacks instead of amp.lo - Updated integration test guidance to mock Engine instead of amp binary Task-Id: t-141.6
Diffstat (limited to 'Omni/Agent/DESIGN.md')
-rw-r--r--Omni/Agent/DESIGN.md8
1 files changed, 4 insertions, 4 deletions
diff --git a/Omni/Agent/DESIGN.md b/Omni/Agent/DESIGN.md
index 0ee1004..ae1f6b3 100644
--- a/Omni/Agent/DESIGN.md
+++ b/Omni/Agent/DESIGN.md
@@ -58,7 +58,7 @@ The Haskell implementation should replicate the logic of `start-worker.sh` but w
- `Task.claim task`
- `baseBranch <- Git.determineBaseBranch task` (Check dependencies)
- `Git.checkoutTaskBranch task baseBranch` (Force checkout to clean untracked files)
- - `Amp.execute prompt`
+ - `Engine.runAgent prompt` (Native LLM agent via OpenRouter)
- `Git.commit`
- `Git.checkoutBase`
- `Task.submitReview task`
@@ -70,8 +70,8 @@ The Haskell implementation should replicate the logic of `start-worker.sh` but w
- `agent status` checks if PID is alive.
### 4.3 Logging
-- Continue writing raw Amp logs to `_/llm/amp.log` in the worker directory.
-- `agent log` reads this file and applies the filtering logic (currently in `monitor.sh` jq script) using Haskell (Aeson).
+- The Engine module uses callbacks to report activity and costs in real-time.
+- `agent log` displays the status bar with worker progress information.
- **UI Design**:
- **Two-line Status**: The CLI should maintain two reserved lines at the bottom (or top) of the output for each worker:
- **Line 1 (Meta)**: `[Worker: omni-worker-1] Task: t-123 | Files: 3 | Credits: $0.45 | Time: 05:23`
@@ -109,7 +109,7 @@ The Haskell implementation should replicate the logic of `start-worker.sh` but w
### 6.2 Integration Tests
- Create a temporary test repo.
- Spawn a worker.
-- Mock `amp` binary (simple script that `echo "done"`).
+- Mock the Engine LLM calls or use a test API key.
- Verify task moves from Open -> InProgress -> Review.
## 7. References