Skip to content

Planck v0.1.2

Choose a tag to compare

@github-actions github-actions released this 16 May 21:17
· 111 commits to main since this release
253a08a

Sharper multi-agent coordination, resilience, and a cleaner inter-agent API. v0.1.2 overhauls the inter-agent tool set with clearer names, ID-based targeting, and parallel fan-out support — plus crash recovery, an image proxy, and an always-on prompt input.

Highlights

  • Inter-agent tool overhaul — tools renamed for clarity: call_agent (sync, blocks until the target responds), send_agent (async, fire-and-forget), respond_agent (report back to the caller). Targeting simplified to a single agent_id from list_team — no more identifier/identifier_type. Multiple agents of the same type are now allowed (e.g. two developers working on different features in parallel).
  • reset_previous_contextcall_agent and send_agent accept reset_previous_context: true to archive a worker's prior history before sending a new task, giving it a clean slate. Workers have automatic compaction for in-task context growth; this is for deliberate redirection across tasks.
  • Parallel fan-outsend_agent can be called multiple times in the same turn. Each worker runs concurrently and re-triggers the orchestrator separately when done via respond_agent.
  • Planck.Agent.SystemPrompt — system prompt assembly extracted into a dedicated module. Per-tool guidance sections are injected only when the relevant tool is present, using "Use when…" framing. Includes the ask/delegate decision rule, fan-out aggregation guidance, and recovery hints in error messages.
  • Agent resilience — tool task and stream task crashes are caught and returned as errors instead of leaving the agent stuck. Orphaned tool-call turns left by a previous crash are stripped on session load.
  • Prompt input — Send and the textarea are always enabled, even while the agent is generating. Messages sent while busy are queued and processed automatically after the current turn.

Breaking changes

  • ask_agentcall_agent, delegate_tasksend_agent, send_responserespond_agent. Any TEAM.json, sidecar code, or custom tooling using the old names must be updated.
  • checkpoint_agent removed. Use reset_previous_context: true on call_agent or send_agent instead.
  • identifier + identifier_type parameters removed from all targeting tools. All tools now take a single agent_id (from list_team).