nextlevelbuilder / nextlevelbuilder/goclaw

Feature Request: Background Exec with Output Delivery to LLM

Open
#1,102 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

agent:github-maintain area:agent-loop area:sandbox enhancement maintain:triaged P2-medium
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 exec or a separate tool?
  • Can this reuse SubagentManager infra (ID tracking, AsyncCallback, MessageBus) without the full LLM loop?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.