Unified Agent + reusable Go agent core.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

style: unify terminal color palette and darken diff colors

authored by

Cheyan and committed by
Lyric Wai
3b3a67fa ecfca419

+19 -13
+1 -1
cmd/mistermorph/chatcmd/modelcmd.go
··· 44 44 _, _ = fmt.Fprintf(writer, "error rebuilding client: %v\n", err) 45 45 return nil, llmconfig.ClientConfig{}, false 46 46 } 47 - _, _ = fmt.Fprintf(writer, "\033[90m[active model: %s]\033[0m\n", newCfg.Model) 47 + _, _ = fmt.Fprintf(writer, "\033[33m[active model: %s]\033[0m\n", newCfg.Model) 48 48 return newClient, newCfg, true 49 49 }
+7 -1
cmd/mistermorph/chatcmd/repl.go
··· 44 44 AutoComplete: autoComplete, 45 45 Stdout: sess.cmd.OutOrStdout(), 46 46 Stderr: sess.cmd.OutOrStderr(), 47 + FuncFilterInputRune: func(r rune) (rune, bool) { 48 + if r == '\n' { 49 + return ' ', true 50 + } 51 + return r, true 52 + }, 47 53 }) 48 54 if err != nil { 49 55 return err ··· 152 158 if sess.compactMode { 153 159 _, _ = fmt.Fprintf(writer, "%s\n", output) 154 160 } else { 155 - _, _ = fmt.Fprintf(writer, "\033[48;5;208m\033[30m %s> \033[0m %s\n", sess.agentName, output) 161 + _, _ = fmt.Fprintf(writer, "\033[43m\033[30m %s> \033[0m %s\n", sess.agentName, output) 156 162 } 157 163 158 164 history = append(history,
+2 -2
cmd/mistermorph/chatcmd/session.go
··· 406 406 return 407 407 } 408 408 writer := sess.currentWriter() 409 - msg := fmt.Sprintf("\x1b[90m used \x1b[36m%s\x1b[0m", toolName) 409 + msg := fmt.Sprintf("\x1b[33m used \x1b[32m%s\x1b[0m", toolName) 410 410 _, _ = fmt.Fprintf(writer, "\r\033[K%s\n", msg) 411 411 })) 412 412 opts = append(opts, agent.WithPlanStepUpdate(func(runCtx *agent.Context, update agent.PlanStepUpdate) { ··· 424 424 if runCtx != nil && runCtx.Plan != nil { 425 425 total = len(runCtx.Plan.Steps) 426 426 } 427 - _, _ = fmt.Fprintf(writer, "\033[90mplan: ✓ %s", update.CompletedStep) 427 + _, _ = fmt.Fprintf(writer, "\033[32mplan: ✓ %s", update.CompletedStep) 428 428 if total > 0 { 429 429 _, _ = fmt.Fprintf(writer, " [%d/%d]", update.CompletedIndex+1, total) 430 430 }
+5 -5
cmd/mistermorph/chatcmd/ui.go
··· 107 107 lastLinesMu.Unlock() 108 108 109 109 clearSeq := buildClearSeq(prevLines) 110 - _, _ = fmt.Fprintf(writer, "%s\033[36m%s\033[0m \033[90m%s\033[0m", clearSeq, spinner[i%len(spinner)], currentMsg) 110 + _, _ = fmt.Fprintf(writer, "%s\033[92m%s\033[0m \033[33m%s\033[0m", clearSeq, spinner[i%len(spinner)], currentMsg) 111 111 i++ 112 112 case <-done: 113 113 return ··· 138 138 _, _ = fmt.Fprint(writer, chatBanner) 139 139 } 140 140 if model != "" { 141 - _, _ = fmt.Fprintf(writer, "model=%s\n", model) 141 + _, _ = fmt.Fprintf(writer, "\033[38;5;242mmodel=%s\033[0m\n", model) 142 142 } 143 143 if workspaceDir != "" { 144 - _, _ = fmt.Fprintf(writer, "workspace_dir=%s\n", workspaceDir) 144 + _, _ = fmt.Fprintf(writer, "\033[38;5;242mworkspace_dir=%s\033[0m\n", workspaceDir) 145 145 } 146 146 if fileCacheDir != "" { 147 - _, _ = fmt.Fprintf(writer, "file_cache_dir=%s\n", fileCacheDir) 147 + _, _ = fmt.Fprintf(writer, "\033[38;5;242mfile_cache_dir=%s\033[0m\n", fileCacheDir) 148 148 } 149 149 if !compact { 150 - _, _ = fmt.Fprintln(writer, "\033[90mInteractive chat started. Press Ctrl+C or type /exit to quit.\033[0m") 150 + _, _ = fmt.Fprintln(writer, "\033[33mInteractive chat started. Press Ctrl+C or type /exit to quit.\033[0m") 151 151 } 152 152 }
+4 -4
internal/clifmt/diff.go
··· 291 291 switch dl.kind { 292 292 case '-': 293 293 if color { 294 - bg := "\x1b[48;5;52m" 295 - fg := "\x1b[38;5;210m" 294 + bg := "\x1b[48;2;61;1;0m" 295 + fg := "\x1b[38;5;174m" 296 296 b.WriteString(bg) 297 297 b.WriteString(fmt.Sprintf("%s%*d%s - ", gray, gutterWidth, lineNum, fg)) 298 298 safeText := strings.ReplaceAll(text, "\x1b[0m", "\x1b[39m"+bg+fg) ··· 303 303 } 304 304 case '+': 305 305 if color { 306 - bg := "\x1b[48;5;22m" 307 - fg := "\x1b[38;5;150m" 306 + bg := "\x1b[48;2;2;40;0m" 307 + fg := "\x1b[38;5;108m" 308 308 b.WriteString(bg) 309 309 b.WriteString(fmt.Sprintf("%s%*d%s + ", gray, gutterWidth, lineNum, fg)) 310 310 safeText := strings.ReplaceAll(text, "\x1b[0m", "\x1b[39m"+bg+fg)