Vincent v0.7.0 is out.
This release is mainly about one thing:
Making agentic development workflows easier to operate when you are not staring at them.
As Vincent has grown, simply starting an agent has become the easy part.
The harder questions are:
- What is it doing right now?
- Does it need input from me?
- Can I control it from a script or over SSH?
- Can it notify me when something important happens?
- Can I inspect what happened without opening the TUI?
- Can I put limits around how much an autonomous task can consume?
v0.7.0 tackles a lot of that.
A proper workspace for running tasks
The TUI received one of its biggest UX improvements so far.
Opening a task now takes you into a dedicated full-screen workspace with separate views for:
- Steps & Attempts
- Task Details
- Output
- Diff
Attempt selection follows you between views, outputs can be switched between retries, and failed attempts expose their result summary directly in the timeline.
The main task board can now stay what it should be: a board.
The details live where they belong.
Agents can finally tell you what they are doing
A running step can now publish its own status:
vincent status "Running integration tests"
That status becomes visible in the TUI and is also available through the API.
This sounds like a small feature, but it changes the experience of running longer workflows quite a bit.
Instead of:
running...
you can see something closer to:
» Investigating the failing authentication test
or:
» Waiting for the GitHub checks to complete
Agent steps also receive the VINCENT_* environment variables that command and check steps already had, so agents can report their own progress through their shell tools.
Vincent can notify you when it actually needs you
Previously, Vincent could ring the terminal bell when a task reached an interactive state.
That is useful — assuming the TUI is open.
v0.7.0 adds configurable external notifications.
You can run a command whenever a task enters states such as:
notify:
command:
- notify-send
- "Vincent needs attention"
on:
- blocked
- awaiting_input
- awaiting_gate
- done
Vincent passes a JSON payload to the command, including information about the task and the transition.
Because this is command-based rather than tied to a specific notification provider, you can integrate it with whatever makes sense for your setup:
- desktop notifications
- Slack
- scripts
- webhooks
- file drops
- custom internal tooling
The important part is that a task can now run in the background and actively tell you when human involvement is useful.
The CLI can now control almost everything
A major goal of this release was reducing the dependency on the TUI for operational tasks.
vincent task now includes commands for actions such as:
vincent task pause
vincent task resume
vincent task skip
vincent task approve
vincent task reject
vincent task retry
vincent task repair
vincent task archive
vincent task answer
This makes Vincent much easier to use from:
- shell scripts
- CI environments
- cron jobs
- remote SSH sessions
- automation around existing developer tooling
For example, blocked tasks can now be discovered and retried programmatically:
vincent task ls --state blocked --json \
| jq -r '.[].id' \
| xargs -n1 vincent task retry
The TUI remains useful for interactive work, but it is no longer the only practical control surface.
Logs and transcripts are first-class CLI citizens
Two new commands make debugging and remote operation significantly easier:
vincent daemon logs
and:
vincent task transcript <task-id>
Daemon logs are read directly from disk, so they still work even if the daemon itself is unavailable.
Task transcripts can be viewed as human-readable output, NDJSON, or raw agent JSONL.
That makes it much easier to inspect what happened inside an attempt without digging through Vincent's data directory manually.
Create tasks directly from GitHub issues
Vincent can now create a task from a GitHub issue.
For projects connected to GitHub, Vincent can pull in:
- the issue title
- description
- issue URL
- labels
- assignee
- milestone
- issue number
Workflow fields can also be populated from issue metadata when their definitions match.
This is a particularly useful bridge between traditional development workflows and agentic execution.
An issue can increasingly become the starting point for a reproducible workflow rather than merely a description of work waiting for someone to pick it up.
Put a budget around autonomous work
v0.7.0 also introduces per-task spending limits.
That means autonomous workflows can have explicit boundaries around how much agent execution they are allowed to consume.
For long-running or heavily automated workflows, this is an important safety mechanism.
Autonomy is much more useful when it comes with limits.
Better tooling for writing workflows
Workflow authors also get some useful additions.
Create a starting workflow:
vincent workflow init
And render a workflow template without running it:
vincent workflow render
The latter is especially useful when building workflows with fields and templates because you can validate the generated result before actually executing anything.
Smaller changes that matter
There is a lot more in this release, including:
- idempotency keys for task creation
- stronger checks around restricted agent execution
- agent adapter version and capability reporting
- safer process recovery
- workflow source tracking
- new built-in workflows
- improved retry and polling behavior
- better wrapping of long content in the TUI
- macOS release signing/notarization work
You can find the full list in the changelog.
Where Vincent is heading
The goal with Vincent is not to build another chat UI around an LLM.
I want the unit of work to be a workflow.
Agents are one tool inside that workflow, alongside commands, checks, control flow, human gates, retries, parallel execution, and deterministic automation.
And increasingly, I want those workflows to be able to run without requiring constant supervision.
v0.7.0 is a fairly big step in that direction.
If you're experimenting with agentic software development, I'd love to hear what kinds of workflows you're building.
Full changelog:
https://lezli01.is-a.dev/vincent/changelog.html
Top comments (0)