crewai - 💡(How to fix) Fix [BUG] `human_input=True`: the feedback prompt references a "Final Result above" that is never displayed unless `verbose=True` [3 pull requests]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

When a Task has human_input=True but the agent/crew is not verbose, CrewAI shows the 💬 Human Feedback Required panel — "Provide feedback on the Final Result above" — but the result is never printed. The operator is asked to approve output they cannot see.

The two behaviours are gated independently:

  • the result render (_show_logsAgentLogsExecutionEvent) is gated on verbose=agent.verbose or crew.verbose;
  • the feedback gate fires whenever human_input=True.

So human_input=True + non-verbose ⇒ a prompt that explicitly references content ("the Final Result above") that was never rendered.

Root Cause

crew_agent_executor.py::_show_logs emits AgentLogsExecutionEvent(verbose=agent.verbose or crew.verbose), so the result render is verbose-gated, while the human-feedback gate (core/providers/human_input.py::_prompt_input) fires on human_input alone and prints a prompt that assumes the result is "above".

Fix Action

Fixed

Code Example

from crewai import Agent, Crew, Task, Process
from crewai.llms.base_llm import BaseLLM

class StubLLM(BaseLLM):
    def call(self, messages, tools=None, callbacks=None, available_functions=None,
             from_task=None, from_agent=None, response_model=None):
        return "Thought: I know it.\nFinal Answer: The sky is blue."
    def supports_function_calling(self) -> bool:
        return False

agent = Agent(role="Tester", goal="Be a Minimal Reproduction", backstory="bg",
              llm=StubLLM(model="stub"), verbose=False)
task = Task(description="Sky colour?", expected_output="a colour",
            agent=agent, human_input=True)
Crew(agents=[agent], tasks=[task], process=Process.sequential, verbose=False).kickoff()
RAW_BUFFERClick to expand / collapse

Description

When a Task has human_input=True but the agent/crew is not verbose, CrewAI shows the 💬 Human Feedback Required panel — "Provide feedback on the Final Result above" — but the result is never printed. The operator is asked to approve output they cannot see.

The two behaviours are gated independently:

  • the result render (_show_logsAgentLogsExecutionEvent) is gated on verbose=agent.verbose or crew.verbose;
  • the feedback gate fires whenever human_input=True.

So human_input=True + non-verbose ⇒ a prompt that explicitly references content ("the Final Result above") that was never rendered.

Relationship to #6065

This is separate from #6065 (the AttributeError: 'AgentExecutor' object has no attribute 'ask_for_human_input' crash). On 1.14.5 / 1.14.6 that crash fires first and masks this. The bug here is observable on 1.14.4 (where human_input still works), and will resurface on 1.14.5+ once #6065 / #6069 lands — so it's worth fixing alongside it.

Steps to Reproduce

A minimal reproduction follows.

from crewai import Agent, Crew, Task, Process
from crewai.llms.base_llm import BaseLLM

class StubLLM(BaseLLM):
    def call(self, messages, tools=None, callbacks=None, available_functions=None,
             from_task=None, from_agent=None, response_model=None):
        return "Thought: I know it.\nFinal Answer: The sky is blue."
    def supports_function_calling(self) -> bool:
        return False

agent = Agent(role="Tester", goal="Be a Minimal Reproduction", backstory="bg",
              llm=StubLLM(model="stub"), verbose=False)
task = Task(description="Sky colour?", expected_output="a colour",
            agent=agent, human_input=True)
Crew(agents=[agent], tasks=[task], process=Process.sequential, verbose=False).kickoff()

Press enter at the prompt.

Expected behavior

When human_input is requested, the result under review is displayed (or embedded in the feedback panel) regardless of verbose — the prompt should never reference output that wasn't shown.

Screenshots/Code snippets

N/A (minimal reproduction above)

Operating System

Ubuntu 24.04

Python Version

3.12

crewAI Version

1.14.4

crewAI Tools Version

1.14.4

Virtual Environment

Venv

Evidence

  • verbose=False: only the feedback panel appears; no result anywhere.
  • verbose=True: the ✅ Agent Final Answer panel renders, and the feedback panel includes a Final Output: line — confirming the result display is purely verbose-gated.

Possible Solution

Root cause

crew_agent_executor.py::_show_logs emits AgentLogsExecutionEvent(verbose=agent.verbose or crew.verbose), so the result render is verbose-gated, while the human-feedback gate (core/providers/human_input.py::_prompt_input) fires on human_input alone and prints a prompt that assumes the result is "above".

Suggested fix

When human_input is active, surface the AgentFinish output regardless of verbose — either emit the result event unconditionally in that path, or include the output directly in the feedback panel so "the Final Result above" is always actually present.

Additional context

Bug diagnosis performed and issue description Generated by Claude Code

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

When human_input is requested, the result under review is displayed (or embedded in the feedback panel) regardless of verbose — the prompt should never reference output that wasn't shown.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING