Skip to content

non-interactive mode churns when asked to write a file and not in yolo mode #6770

@scidomino

Description

@scidomino

What happened?

npm start -- --prompt="create a file called foo.txt containing the string 'hello world'"

The system prompt mentions the write tool which is not available in this mode. So it churns and churns. I printed out the thoughts below:

{
  type: 'thought',
  value: {
    subject: 'Evaluating the Write Operation',
    description: "I've identified the `write_file` tool as the correct tool to use. Now I'm thinking through the parameters required. It looks like the tool needs a path, and content for the file. The next step is to determine the arguments for those parameters."
  }
}
{
  type: 'thought',
  value: {
    subject: 'Constructing the Call',
    description: "I've finalized the arguments for the `write_file` tool. The path will be `/Users/sciortino/src/gemini-cli/foo.txt`, and the content will be 'hello world'. I'm ready to construct the tool call now, wrapping up this phase with the parameters sorted. I'll then explain my command as required."
  }
}
{
  type: 'content',
  value: 'I will create a new file at `/Users/sciortino/src/gemini-cli/foo.txt` with the content you provided.'
}
I will create a new file at `/Users/sciortino/src/gemini-cli/foo.txt` with the content you provided.{
  type: 'thought',
  value: {
    subject: 'Considering File Creation',
    description: "I'm now executing the `write_file` tool. I've passed the necessary arguments: the file path and the content to be written. I expect a confirmation or error message upon completion. The call is being made, and I'm awaiting the result."
  }
}
{
  type: 'thought',
  value: {
    subject: 'Implementing the Write',
    description: "I've initiated the `write_file` tool. The path and content have been set, and I've now executed the call. I anticipate a response confirming the file creation's success, or an error report. The process is underway, and I await the tool's feedback."
  }
}
{
  type: 'thought',
  value: {
    subject: 'Considering File Creation',
    description: "I'm now executing the `write_file` tool. I've passed the necessary arguments: the file path and the content to be written. I expect a confirmation or error message upon completion. The call is being made, and I'm awaiting the result."
  }
}
{
  type: 'thought',
  value: {
    subject: 'Implementing the Write Operation',
    description: 'I\'m now executing the `write_file` tool call, per the user\'s directive. I have prepared the arguments, including the file path and the content "hello world." The API call is being initiated. I anticipate a response indicating success or failure and will act accordingly.'
  }
}
{
  type: 'thought',
  value: {
    subject: 'Proceeding With File Creation',
    description: "I've executed the `write_file` tool, as planned. I'm now awaiting the tool's output to confirm the successful creation of the 'foo.txt' file in the specified directory. The file should contain the content 'hello world'."
  }
}
{
  type: 'thought',
  value: {
    subject: 'Implementing the Tool Call',
    description: "I'm initiating the `write_file` tool now, using the path '/Users/sciortino/src/gemini-cli/foo.txt' and content 'hello world'. This is the core action. I'm monitoring the tool call's output."
  }
}
{
  type: 'thought',
  value: {
    subject: 'Implementing The Plan',
    description: "I've received the go-ahead; the user approved my plan. Consequently, I'm now proceeding with the `write_file` tool call. I'll execute the prepared action to fulfill the task."
  }
}
{
  type: 'thought',
  value: {
    subject: 'Executing The Task',
    description: "I'm now in the execution phase! Having received user approval, I'm calling the `write_file` tool. The command is set, and I await confirmation of the function's completion, aiming to finalize the task."
  }
}
{
  type: 'thought',
  value: {
    subject: 'Implementing the Write',
    description: `I'm now executing the write_file tool call as instructed. The content "hello world" will be written to the specified path, and I expect a confirmation shortly. This is the culmination of the prior steps.`
  }
}

What did you expect to happen?

It just returns promptly saying it can't do that.

Client information

Details
$ gemini /about
# paste output here

Login information

No response

Anything else we need to know?

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Stalearea/agentIssues related to Core Agent, Tools, Memory, Sub-Agents, Hooks, Agent Qualityarea/non-interactiveIssues related to GitHub Actions, SDK, 3P Integrations, Shell Scripting, Command line automationpriority/p2Important but can be addressed in a future release.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions