Repository navigation
Shift 0.2.0
Plugins can give the model a verb without shipping code. A declared tool is a JSON Schema over an argv template, or over read with its path fixed; calling one is rewritten into that built-in's call before the policy sees it, so it carries no authority of its own and a plugin cannot widen its own by wrapping a command. Pane rows can act: a label bound to a run, a declared tool, or a workflow whose checks decide whether the work was earned. Two plugins join the bundle — kanban, a per-project board kept as one file the pane and the agent share, and shift-dev in this repository's own checkout.
Skills are searched rather than described. The system prompt used to carry every skill's description in every request; it now names them and the skill tool takes a query. With all bundled plugins on, the prompt went from 4,956 characters to 910. Oversized tool output is written whole to the session folder and returned as a head, a tail and a path, instead of being cut off where the tail is. The compaction summary is bounded, and every receipt now reports price-weighted cost by billing type, with rates configured rather than compiled in so none can go stale. --resume takes a session's id as well as its name.
Install with brew install thrashr888/tap/shift.