8f48dd838b
Replace task statuses (pending/running/succeeded/failed/cancelled) with
a kanban workflow: todo → in_progress → in_review → done/wontdo.
When a non-review agent task completes, the API auto-creates a child
review task and moves the parent to in_review. Only humans can move
tasks from in_review to done/wontdo via the TUI.
New components:
- cmd/tui: bubbletea kanban board with $EDITOR integration
- POST /api/v1/tasks/{id}/complete: agent completion callback
- Operator --api-url flag for completion callbacks
- ProviderQueue sets tasks to in_progress on pickup
- AgentTask reconciler calls /complete on job finish
28 lines
483 B
Go
28 lines
483 B
Go
package main
|
|
|
|
import (
|
|
"flag"
|
|
"fmt"
|
|
"os"
|
|
|
|
tea "github.com/charmbracelet/bubbletea"
|
|
|
|
"git.unkin.net/unkin/forgebot/internal/tui"
|
|
)
|
|
|
|
func main() {
|
|
apiURL := flag.String("api", "http://localhost:8000", "forgebot API base URL")
|
|
flag.Parse()
|
|
|
|
if v := os.Getenv("FORGEBOT_API_URL"); v != "" {
|
|
*apiURL = v
|
|
}
|
|
|
|
m := tui.NewApp(*apiURL)
|
|
p := tea.NewProgram(m, tea.WithAltScreen())
|
|
if _, err := p.Run(); err != nil {
|
|
fmt.Fprintf(os.Stderr, "error: %v\n", err)
|
|
os.Exit(1)
|
|
}
|
|
}
|