Releases: vekexasia/pi-extensible-workflows
Release list
v5.11.2
Fixes
- Keep Trajectory live state below the WebSocket frame cap, fetch transcript bodies on demand, and reconnect detached servers after publisher disconnects. Restart existing Pi processes after upgrading so their Trajectory publisher uses the new protocol.
v5.11.1
Fixes
- Keep streamed reasoning and response progress out of workflow and subagent status, persistence, and exports, and sanitize live activity before terminal rendering.
- Keep Herdr's working state aligned with workflow lifecycle transitions, including pauses, checkpoints, terminal runs, and concurrent runs.
v5.11.0
Starter
- New packaged roles:
scout(read-only recon),oracle(second opinion, read-only plusbash), andresearcher(all session tools exceptedit/write/bash, uses web tools when present), with dynamicscout-model,oracle-model, andresearcher-modelaliases. - The packaged
reviewerrole now filters findings on evidence, labels them P0/P1/P2, and ends with a machine-readable merge verdict. - New package-level slash-command prompts that drive the packaged roles:
/scout,/parallel-scout,/oracle,/council,/review,/parallel-review,/review-loop, and/deep-research. Prompts are declared in the package manifest and are not removed by the starter filter.
Runtime
- Role frontmatter tools that are not active in the launching session no longer fail the launch with
UNKNOWN_TOOL. The agent now runs without the missing tool and a warning is surfaced in the TUI (once per role/tool per executor). Call-leveltools,effectiveTools, and boundary checks still fail hard, and doctor diagnostics are unchanged. This makes packaged roles such asreviewerwork on sessions without the optionalgrep/find/lsbuilt-ins.
v5.10.0
[5.10.0] - 2026-08-28
Packaging
- The published package now loads bundled extension entries (
dist/src/index.js,dist/starter/index.js,dist/subagents/index.js,dist/trajectory/index.js) instead of TypeScript sources, cutting Pi startup overhead from ~1.25s to ~0.06s. Package filters that excluded the old.tsentries must switch to the newdist/*.jspaths (see the extensions guide). Repository-root source installs still load the TypeScript entries.
Full changelog: v5.9.0...v5.10.0
v5.9.0
[5.9.0] - 2026-08-28
New capabilities
- Trajectory can export one persisted workflow run as a self-contained static HTML report (
exportTrajectoryRunHtml): the live UI with inlined assets and injected state instead of a WebSocket, viewable fromfile://, sandboxed iframes, and thedocs/run.htmlgist viewer. - The Trajectory run dossier gains a Share button (and the CLI a
piewf share <run-id>command) that uploads the static report as a secret GitHub gist through the user'sghCLI and returns the viewer URL. Share is served by the Trajectory extension itself; secret gists are unlisted, not private.
Packaging
- Moved the eval harness from
src/to the unpublishedevals/src/directory and stopped publishingevals/cases andtest/fixturesin the npm package.npm run evalsandnpm run evals:ambientare unchanged for repository checkouts.
Fixes
- Closing the workflow dashboard after a confirmed stop now leaves the parent Pi session ready for its next prompt, and intentional cancellation skips provider recovery (#241).
- Live Herdr handoffs show queued/opening status and bypass provider recovery only when a handoff was actually attempted, preserving genuine provider errors containing
abort(#204, #240).
Full changelog: v5.8.0...v5.9.0
v5.8.0
Breaking changes
- Require every workflow agent to submit its result through
workflow_result. Unstructured agents use{ result: string }, return that string to their parent, and fail withRESULT_INVALIDafter the existing two result prompts when they do not submit one. Eager transports now receive the runtime-generated workflow prompt when their session is created.
New capabilities
-
Trajectory now publishes current-session durable subagents as first-class publisher state, including live progress, attempts, transcripts, results, failures, worktrees, and resolved tools.
-
Registered-function
context.invoke(name, input, label?)now supports presentation-only nested breadcrumbs without changing journal identity (#223). -
Trajectory adds a resizable, scrollable workflow Gantt with sticky time axis and independently collapsible Gantt, agent, and log sections, with layout state persisted in local storage (#224).
-
Trajectory replaces a stale detached server when its server or UI files change, so
/workflow trajectoryand auto-open use the current implementation (#226). -
Trajectory groups live sessions by full project folder in a collapsible, dense sidebar with persisted folder state (#227).
-
Trajectory auto-attaches once per interactive Pi session when persisted workflow runs are restored or after the first successful workflow launch;
/workflow trajectoryremains the manual re-open (#217). -
Trajectory records per-tool wall-clock execution timing in workflow-agent session JSONL and displays completed and failed tool durations across its event, agent, inspector, and Gantt views. Loaded transcripts retain up to 400 non-timing entries plus their matching timing entries (#212).
-
Trajectory renders canonical skill file reads as compact
[skill] name:start-endevent previews while retaining their full input in the inspector (#215). -
Trajectory renders tool event arguments as colored key/value pairs with bounded row values while retaining full input for search and inspection (#222).
-
Trajectory summarizes assistant tool calls as separate event chips and inspector blocks with searchable arguments (#220).
Packaging
- Moved Trajectory's server and controller into the bundled extension; the core entry no longer exports
createTrajectoryController,createTrajectoryRunLoader,createTrajectorySubagentLoader,loadTrajectoryRuns,openTrajectoryUrl,trajectoryUrl, or the Trajectory contract types.
Fixes
- Sanitize Trajectory markdown before rendering assistant messages and system prompts.
- Keep Trajectory layout and sidebar preference storage failures from stopping the UI, preserving defaults.
- Exclude non-message session records from Trajectory agent transcripts instead of labeling them assistant messages.
- Ensure idle Trajectory servers destroy connected client sockets before closing, remove their lock, and exit.
- Recover from live but unhealthy Trajectory server locks by replacing the stale process after the startup budget expires.
- Give Trajectory server frame-size and fingerprint configuration separate, unambiguous options.
- Restore Trajectory home, run, and agent views from
?view=&run=&agent=on refresh and Back (#228). - Fetch one agent transcript on demand when combined Trajectory state exceeds the WebSocket frame cap, so agent views keep their events.
- Label canonical Trajectory skill reads as
SKILLin event and inspector views while retaining the tool inspector panes (#219). - Drop disconnected Trajectory publishers and their runs, returning an open session to the empty home view (#218).
- Collapse shadowed model aliases to the static settings winner in the LLM-facing workflow catalog index and detail results while preserving full provenance for trusted catalogs (#210).
- Clarify Trajectory message token usage as per-call provider input/output (with optional reasoning and cache rows) or a displayed-text estimate, without duplicating it in the header (#221).
Documentation
- Document how to disable the bundled
reviewLoopstarter, Subagents, and Trajectory independently with Pi package filters.
Verification
- GitHub Actions completed the full check, package inspection, and npm publication.
- All three packages were installed from the public npm registry in a clean project.
Packages:
pi-extensible-workflows@5.8.0@piewf/cli@5.8.0@piewf/herdr@5.8.0
Full changelog: v5.7.0...v5.8.0
v5.6.1
Fixes
- Wait for background workflow log entries and completion follow-ups instead of a 100ms spin, so Publish does not flake under parallel load.
Verification
npm run check- 20 parallel copies of the previously flaky tests
Packages:
pi-extensible-workflows@5.6.1@piewf/cli@5.6.1@piewf/herdr@5.6.1@piewf/subagents@5.6.1
Full changelog: v5.6.0...v5.6.1
v5.6.0
Highlights
- Removed per-call
thinking. Concrete models must beprovider/model:thinking; aliases may omit the suffix and inherit it from the target. Role-filethinkingfrontmatter is rejected. roleis now a name string only. Role files provide defaults; per-callAgentOptionsmodel,tools,skills,extensions, andcontextFilesoverride them.- Added terminal-run retention settings (
retention.olderThanDays,retention.maxTerminalRuns) applied best-effort at session start to hard-terminal runs only.
Breaking changes
- Role objects,
RoleOverride,ROLE_OVERRIDE_KEYS, andvalidateRoleOverrideare removed.overrideSystemPromptremains role-file only. - Persisted legacy role objects are rejected as corrupt. Legacy role snapshots fold
thinkingintomodel. - Removed the optional
singleAgentworkflow-catalog function from@piewf/subagents. Use coreagent()andwithWorktree()in workflow scripts.
Before:
agent(prompt, {
role: { name: "reviewer", model: "anthropic/claude-fable-5", thinking: "high", tools: ["!*", "read"] },
})After:
agent(prompt, {
role: "reviewer",
model: "anthropic/claude-fable-5:high",
tools: ["!*", "read"],
})Fixes
- Report failed ownership writes per run instead of crashing the host.
- Keep nested
failedAtpaths absolute and journal-consistent. - Resolve real-session trace paths from the package root.
Documentation
- Documented agent session transitions and tightened the root README.
Verification
npm run check- Dry-run package inspection for all four publishable workspaces
Packages:
pi-extensible-workflows@5.6.0@piewf/cli@5.6.0@piewf/herdr@5.6.0@piewf/subagents@5.6.0
Full changelog: v5.5.0...v5.6.0
v5.4.0
Highlights
- Consolidated
@piewf/subagentsto five model-facing tools and added durable foreground execution tosubagents_run(#198). - Added compact Subagents TUI rendering, a bounded live background widget, stale-run warnings, and the read-only
/subagentspicker with live inspection, inline steering, lifecycle controls, and shared workflow-agent actions. - Deduplicated Subagents inspection snapshots, excluded system prompts, preserved legacy records, and made accounting cumulative across internal retries (#200).
- Separated repeated registered-function invocations into stable occurrence-aware progress groups in live and navigator views (#199).
- Reworked the workflow background widget to avoid remounts, reduce idle repaint work, suspend under
/workflow, refresh clocks and navigation correctly, and restore compact one-line transcript receipts (#202). - Added clearer workflow state, token, cost, model, runtime, and retry details across progress views.
Subagents migration
The model-facing v5.3 tools map to v5.4 as follows:
subagents_list({})->subagents_inspect({})subagents_status({ id })->subagents_inspect({ id })subagents_result({ id })->subagents_inspect({ id })
subagents_steer, subagents_stop, and subagents_retry remain separate. Background remains the default for subagents_run; use mode: "foreground" only when the terminal envelope is needed inline. The optional singleAgent workflow function remains inline and does not create a durable standalone run.
Reliability, API, and documentation
- Accepted a submitted
workflow_resulteven when followed by an empty provider abort. - Reported workflow confirmation dialogs as blocked activity for Herdr and lifecycle observers.
- Kept
piewf doctorread-only during Pi model discovery. - Exported shared workflow/subagent presentation helpers and
formatCostfrom the core package. - Split core persistence internals into focused modules while preserving the public facade.
- Updated Pi development dependencies to
0.84.1and expanded the README and dedicated Subagents and Herdr guides.
Verification
npm run check- Dry-run package inspection for all four publishable workspaces
Packages:
pi-extensible-workflows@5.4.0@piewf/cli@5.4.0@piewf/herdr@5.4.0@piewf/subagents@5.4.0
Full changelog: v5.3.0...v5.4.0
v5.1.1
Highlights since v5.0.0
- Added a unified
/workflowcommand for run, agent, lifecycle, budget, and checkpoint actions. - Added interactive resume support for interrupted workflows, including resuming all workflows at startup.
- Added
/workflow backgroundto move a foreground workflow into background delivery without restarting it. - Added per-call role overrides and
contextFilespolicies for controlling agent context. - Added
piewf doctor --rolediagnostics for effective agent resources and prompts. - Added long-running shell progress reporting and improved foreground log rendering.
- Added typed workflow schemas and local Pi/session inspection APIs.
- Improved Herdr session inspection and continuation behavior.
- Fixed workflow dashboard state glyphs and activity display.
All checks passed. Packages published:
pi-extensible-workflows@5.1.1@piewf/cli@5.1.1@piewf/herdr@5.1.1