CubePlex 0.9.0
Long-running commands can now continue as background tasks after the current reply ends. View their progress and output from the conversation, stop individual tasks, and let the agent continue when results are ready.
Background tasks
- Long commands continue beyond a reply. Background-capable commands that are still running after 60 seconds become conversation background tasks. The agent can finish the current reply and continue the request when the final result arrives. Execute tasks have a one-hour deadline by default.
- Completion brings the agent back. Task results are recorded before delivery and can start a follow-up reply. In group conversations, a result waits while another participant owns the active run or a confirmation is pending.
- Monitors report once. A monitor checks a condition and produces one final success, failure, or timeout result. Its log output does not repeatedly wake the agent. Stopping a monitor does not stop the separate command or service it observes.
See Managing Sandboxes for task behavior and recovery details.
Task controls and output
- A dedicated task panel. Open Background tasks in the conversation header to see active and recent completed tasks. The badge counts unfinished tasks.
- Stop one task or all current work. Stop task targets an individual task. Stop all stops the current response and tasks in the current execution generation. Accepted stops remain Stopping until termination is confirmed.
- Inspect results without expanding the timeline. Completed results appear as compact rows. Click one to open its execution record, request, and final output in the right preview panel; on mobile, the preview fills the screen.
- Live command output. Output appears while a command runs. Command details separate the shell command from execution options, with controls to copy the command or inspect and copy the original request JSON.
Reliability and fixes
- Improved recovery of accepted messages, scheduled runs, event-triggered runs, and task result notifications after worker interruptions.
- Improved recovery of final command logs. A command can remain pending after process exit while its output is recovered; unavailable output is identified rather than shown as a complete result.
- Restarting or deleting a sandbox requests its tasks to stop and waits for confirmed cleanup. Removing resources or access also revokes the affected work.
- Custom answers are now accepted for interactive questions that allow text input, including later questions delivered through IM connectors. Feishu receipts retain the submitted custom answer.
- Fixed competing navigation during onboarding, oversized presented images, and repeated “Reply failed” messages across turns of the same run.
- The sandbox image now includes the OpenSSH client for
sshandscp.
Before upgrading
Existing deployments upgrading from 0.8.0 need a maintenance migration to move command history and pending result notifications to the new task lifecycle. Stop every old backend API and worker before running the migration; this transition cannot run alongside old backend instances during a rolling update. Fresh installations use the normal installation flow.
Follow the maintenance steps for Docker Compose or Kubernetes. Active legacy commands and monitors reported by the migrator must finish or be explicitly stopped before retrying. The migration does not assume that an unreachable process has ended.
Upgrade the backend, frontend, and sandbox image together to v0.9.0, or install Helm chart 0.9.0.
If an organization has saved a sandbox policy, update its default image in Admin > Sandbox to ghcr.io/cubeplexai/cubeplex-sandbox:v0.9.0 as well. The saved policy takes precedence over the deployment's sandbox.image setting. Existing running sandboxes keep their current image: after their tasks finish, use Restart in Settings > Sandboxes and wait for cleanup to complete. The next command creates a container with the new policy image and retains the working files. Updating the chart or restarting the backend alone does not replace running sandbox containers.