nextlevelbuilder / nextlevelbuilder/goclaw
Feature Request: Background Exec with Output Delivery to LLM
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 3.6k
- Forks
- 1.1k
- Avg merge
- 3d 5h
- Merged PRs (30d)
- 24
Description
Problem
I need to run long-running data processing tasks (e.g., scripts that produce incremental results over time) and have the LLM receive and reason about the periodic output within the current conversation.
None of the existing mechanisms fit:
exec: synchronous, 60s timeout, blocks conversation.spawn: spins up a full LLM subagent loop — overkill for running a single shell command. One-shot, no incremental output streaming.cron/heartbeat: isolated sessions, output goes to external channels, not back to the current conversation.
Desired Behavior
// 1. Start background command, get job ID immediately
exec(command: "python process.py", background: true)
→ { "job_id": "bg-xxx", "status": "running" }
// 2. Poll output + status (or auto-push at intervals)
exec_status(job_id: "bg-xxx")
→ { "status": "running", "new_output": "Processed 5000/20000 rows..." }
// 3. Cancel if needed
exec_cancel(job_id: "bg-xxx")
Key Questions
- Push vs pull for delivering output to LLM?
- New param on
execor a separate tool? - Can this reuse
SubagentManagerinfra (ID tracking,AsyncCallback,MessageBus) without the full LLM loop?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the existing exec, spawn, cron, and heartbeat mechanisms, then inspect the mentioned SubagentManager, AsyncCallback, and MessageBus infrastructure. Define whether background jobs use push or pull delivery and how job status, output, and cancellation fit the current conversation; done means the requested lifecycle works without starting a full LLM subagent loop.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- ai, api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100