@@ -46,7 +46,7 @@ func (m *Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
4646 var spinnerCmds []tea.Cmd
4747
4848 if runner .State == Running || runner .State == NotStarted {
49- if ! IsCI () && runner .Spinner != nil {
49+ if ! IsCI () && ! runner . Config . DisableUI && runner .Spinner != nil {
5050 newSpinner , cmd := runner .Spinner .Update (msg )
5151 runner .Spinner = & newSpinner
5252 spinnerCmds = append (spinnerCmds , cmd )
@@ -105,8 +105,8 @@ func (m *Model) View() string {
105105 }
106106 }
107107
108- // Handle CI mode
109- if IsCI () {
108+ // Handle CI mode or UI disabled mode
109+ if IsCI () || ( len ( m . Runners ) > 0 && m . Runners [ 0 ]. Config . DisableUI ) {
110110 allDone , anyFailed := m .checkTasksState ()
111111 if ! allDone && ! anyFailed {
112112 return ""
@@ -142,14 +142,14 @@ func renderTask(runner Runner, indent string) string {
142142 status = Color (runner .Config .Colors .Failure , runner .Config .Chars .Failure ) + " " + runner .Task .Title
143143 }
144144
145- if IsCI () {
145+ if IsCI () || runner . Config . DisableUI {
146146 view = indent + status + "\n "
147147 } else {
148148 view = indent + lipgloss .NewStyle ().Render (status ) + "\n "
149149 }
150150
151151 // Recursively render children
152- if len (runner .Children ) > 0 && (runner .State == Running || IsCI ()) {
152+ if len (runner .Children ) > 0 && (runner .State == Running || IsCI () || runner . Config . DisableUI ) {
153153 for _ , child := range runner .Children {
154154 view += renderTask (child , indent + " " )
155155 }
0 commit comments