Summary
Add an interactive dashboard workflow for reviewing, editing, approving, rejecting, and sequencing Forge plans before execution, including support for pending approval queues across multiple running UI tasks.
Problem / Opportunity
Forge's agentic loop includes plan generation, validation, user approval, execution, validation gates, reviewer checks, and bounce-backs. The dashboard already exposes task execution and pending prompts, but plan review is not yet a first-class visual workflow. Users working in the browser should be able to:
- Inspect generated plans before tools run.
- Edit plan steps and constraints without going back to the CLI.
- Understand which permissions will likely be requested.
- Approve, reject, or send plans back for revision.
- Manage multiple pending tasks from one approval queue.
A visual plan editor would make Forge's controllability more accessible while preserving the same runtime guarantees as the CLI.
Proposed Feature
Build a dashboard Plan Editor and Approval Queue:
- Plan detail view with step list, dependencies, target files/modules, expected tools, and validation expectations.
- Inline editing for step text, order, mode, and constraints before approval.
- Approval queue for tasks waiting on user decisions.
- Plan diff view when the planner revises a plan after user edits or validation feedback.
- Permission forecast panel based on expected tools and side effects.
- WebSocket updates so queue status changes without reloads.
Scope
Expected implementation areas:
src/core/loop.ts and src/core/plan-fixer.ts for exposing editable plan state safely.
src/ui/task-runner.ts for pending approval state and responses.
src/ui/server.ts REST/WebSocket endpoints for plan fetch/update/approve/reject.
src/ui/public/ vanilla JS/CSS for the editor and queue.
src/types/index.ts for serializable plan/edit/approval contracts.
src/persistence/tasks.ts and events for recording plan revisions.
- Docs updates for dashboard task approval.
Acceptance Criteria
Non-Goals
- Building a full project management board.
- Allowing dashboard edits to bypass planner validation or permission gates.
- Replacing CLI plan approval for terminal users.
- Supporting arbitrary custom DAG editing in the first version.
Dependencies / Risks
- Plan edits must remain compatible with the task state machine in
src/persistence/tasks.ts.
- The UI shell should remain lean and avoid adding a framework unless there is a strong justification.
- Permission forecasts may be incomplete; wording and data contracts should prevent over-trust.
- Multiple tabs editing the same pending plan need conflict handling.
Open Questions
- Should edited plans be revalidated automatically before approval?
- Should the queue group tasks by project, mode, or age?
- Should the editor support dependency edges visually in the first version, or start with ordered steps?
- Should rejected plans remain resumable from the dashboard?
Summary
Add an interactive dashboard workflow for reviewing, editing, approving, rejecting, and sequencing Forge plans before execution, including support for pending approval queues across multiple running UI tasks.
Problem / Opportunity
Forge's agentic loop includes plan generation, validation, user approval, execution, validation gates, reviewer checks, and bounce-backs. The dashboard already exposes task execution and pending prompts, but plan review is not yet a first-class visual workflow. Users working in the browser should be able to:
A visual plan editor would make Forge's controllability more accessible while preserving the same runtime guarantees as the CLI.
Proposed Feature
Build a dashboard Plan Editor and Approval Queue:
Scope
Expected implementation areas:
src/core/loop.tsandsrc/core/plan-fixer.tsfor exposing editable plan state safely.src/ui/task-runner.tsfor pending approval state and responses.src/ui/server.tsREST/WebSocket endpoints for plan fetch/update/approve/reject.src/ui/public/vanilla JS/CSS for the editor and queue.src/types/index.tsfor serializable plan/edit/approval contracts.src/persistence/tasks.tsand events for recording plan revisions.Acceptance Criteria
requestPermissioncalls.Non-Goals
Dependencies / Risks
src/persistence/tasks.ts.Open Questions