MCPcopy Create free account
hub / github.com/diillson/chatcli / handleCommandBlocks

Method handleCommandBlocks

cli/agent_command_blocks.go:320–403  ·  view source on GitHub ↗

handleCommandBlocks processa blocos de comandos com UI refinada

(ctx context.Context, blocks []CommandBlock)

Source from the content-addressed store, hash-verified

318
319// handleCommandBlocks processa blocos de comandos com UI refinada
320func (a *AgentMode) handleCommandBlocks(ctx context.Context, blocks []CommandBlock) {
321 outputs := make([]*CommandOutput, len(blocks))
322 showFullPlan := false
323 lastExecuted := -1
324
325 renderer := agent.NewUIRenderer(a.logger)
326 renderer.SetSkipClearOnNextDraw(true)
327
328 //mainLoop:
329 for {
330 renderer.ClearScreen()
331 renderer.PrintHeader()
332
333 if showFullPlan {
334 renderer.PrintPlanFull(blocks, outputs, a.validator)
335 } else {
336 renderer.PrintPlanCompact(blocks, outputs)
337 }
338
339 renderer.PrintLastResult(outputs, lastExecuted)
340 renderer.PrintMenu()
341
342 prompt := renderer.PrintPrompt()
343 answer := a.getInput(prompt)
344 answer = strings.ToLower(strings.TrimSpace(answer))
345
346 switch {
347 case answer == "q":
348 fmt.Println(renderer.Colorize(i18n.T("agent.status.exiting"), agent.ColorGray))
349 return
350
351 case answer == "r":
352 continue
353
354 case answer == "p":
355 showFullPlan = !showFullPlan
356 continue
357
358 case answer == "":
359 continue
360
361 case strings.HasPrefix(answer, "v"):
362 a.cmdViewOutput(renderer, outputs, answer)
363 continue
364
365 case strings.HasPrefix(answer, "w"):
366 a.cmdSaveOutput(renderer, outputs, answer)
367 continue
368
369 case answer == "a":
370 a.cmdBatchExecute(ctx, renderer, blocks, outputs, &lastExecuted)
371 continue
372
373 case strings.HasPrefix(answer, "e"):
374 a.cmdEditAndExecute(ctx, renderer, blocks, outputs, answer, &lastExecuted)
375 continue
376
377 case strings.HasPrefix(answer, "t"):

Callers 1

Calls 15

ClearScreenMethod · 0.95
PrintHeaderMethod · 0.95
PrintPlanFullMethod · 0.95
PrintPlanCompactMethod · 0.95
PrintLastResultMethod · 0.95
PrintMenuMethod · 0.95
PrintPromptMethod · 0.95
getInputMethod · 0.95
ColorizeMethod · 0.95
cmdViewOutputMethod · 0.95
cmdSaveOutputMethod · 0.95

Tested by

no test coverage detected