Repository navigation
v2.3.1
Sync to Forge plugin v2.3.1. The marketplace version is now 2.3.1, matching the plugin. It also carries the 1.24.1 through 2.3.0 changes, which were not released separately.
Marketplace
- The plugin's listing now says to ask Forge by name, replacing "No trigger words needed", which described behaviour this release removes.
Changed
- Forge starts only when you ask for it by name. Include
forge,@forge,shiptodayor@shiptodayin your message ("forge, implement PROJ-123"). A message that doesn't name Forge gets a normal response, even when it is about planning or shipping work or mentions a work item key. If a message only mentions Forge in passing, Claude asks whether you meant Forge before starting anything. - Workflows run straight through. There is no pause between steps. To end a run early, ask Claude to stop: the run ends with a recap of what it produced and which steps did not run, and it is not recorded as abandoned.
- Step permissions are guidance, not blocks. The hook no longer blocks tools outside a step's declared categories; Claude follows them from the step's instructions. The hook now holds tools in two situations only: while a question is waiting for you, and while a write is waiting for your approval.
- Shell commands are never checked.
Bash,PowerShell,ShellandMonitorpass every check whatever the command, so the special cases for bounded reads, pull-request revisions and installed-skill reads are gone. - Workflow authoring asks more before it saves. It suggests the dashboard's per-step settings when that is all you need, asks before saving a step that writes as "Never asks", and says that a saved custom workflow stops receiving Forge's updates to that workflow.
Added
- Steps set to "Always asks" hold their writes until you approve a plan. Claude shows you one write plan — what it will write, where, and a preview — and nothing is written until you approve it: tracker, docs and messaging writes, code-host connector writes, and
Edit/Writeare held. Skip and Keep as draft complete the step with nothing written. - An answer must come from you. Claude can post an answer to a question Forge asked only after asking you with its question tool or receiving your next message, so it cannot approve a write plan on your behalf. Stopping a run is never refused.
- Recovery after a lost reply. When Forge's reply does not arrive in full (for example, when it was too long and saved to a file),
forge__get_workflow_staterestores the pending question, the active step and its write lock, or, when the reply that went missing was the run's last, reports that the run has ended and releases it. Until that re-sync, a step whose reply could not be read holds its writes.
Fixed
- Guidance names the right answer field. A pending question's answer goes in the field it asks for (
user_answerfor a question), instead of alwaysgate_answer. - Only Forge's own reply header changes the workflow state. Findings or quoted text in a reply body can no longer pin a question, release the write lock or change the step's permissions.
- Checkpoints for a linked session carry its work item, and a snoozed session's wake condition and linked work item are recorded only in validated form.
- Local workflow state lasts 12 hours idle, up from 4, matching Forge's server.
- The required-skill reminder names the real step. It no longer suggests completing the workflow's name as if it were a step.
Diff: #32