Skip to content

fix(goal): pause blocked autonomous continuation - #888

Open
paralin wants to merge 1 commit into
PrimeIntellect-ai:mainfrom
paralin:fix/goal-pause-resume
Open

fix(goal): pause blocked autonomous continuation#888
paralin wants to merge 1 commit into
PrimeIntellect-ai:mainfrom
paralin:fix/goal-pause-resume

Conversation

@paralin

@paralin paralin commented Aug 7, 2026

Copy link
Copy Markdown

Active goals automatically continue after every normal assistant turn until the model marks them complete. When progress depends entirely on an external actor or event, the model currently has no way to yield, so it can spend repeated turns reporting the same blocker.

Expose goal.pause(reason) and goal.resume() through the existing goal host bridge and bundled Python skill. Pausing reuses the persisted paused state and clears queued goal contexts, while resuming reactivates the same goal after new input arrives.

Teach the continuation prompt and skill guidance to pause instead of emitting unchanged holding updates. Active goals that are not paused retain the existing continue-until-complete behavior, and the change adds no new daemon protocol status.

Note

Pause blocked autonomous goal continuation via goal.pause() and goal.resume()

  • Adds goal.pause(reason) and goal.resume() Python skill functions in goal/init.py that send requests over the kernel host bridge.
  • Adds _pauseGoalFromHost and _resumeGoalFromHost methods to AgentSession in agent-session.ts; pausing is only allowed when the goal is active, resuming only when paused.
  • Updates goal context instructions in goals.ts to tell the model to call goal.pause("waiting for …") when blocked on external input and goal.resume() after new input arrives.
  • Pause reasons are validated: trimmed, must be non-empty, and capped at 1000 characters (MAX_THREAD_GOAL_PAUSE_REASON_CHARS).
  • Behavioral Change: a paused goal no longer enqueues autonomous continuation turns; a subsequent goal.resume() (without external queuing) also does not automatically enqueue a continuation.

Macroscope summarized d170f8b.

Expose pause and resume through the goal host bridge and Python skill so
an agent can yield without completing its objective while external input
is pending.

Reuse the persisted paused state, clear queued goal contexts, and teach
the continuation prompt to pause instead of emitting holding turns.

Signed-off-by: Christian Stewart <christian@aperture.us>
zhengr pushed a commit to zhengr/prime-agent that referenced this pull request Aug 8, 2026
…ntellect-ai#888)

Autolinked emails like user@example.com were rendered as
'user@example.com (mailto:user@example.com)' because the comparison
token.text === token.href failed (text lacks mailto: prefix).

Now strips mailto: prefix before comparing, so autolinked emails
display without redundant URL in parentheses.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant