-
Notifications
You must be signed in to change notification settings - Fork 10k
Open
Labels
area/agentIssues related to Core Agent, Tools, Memory, Sub-Agents, Hooks, Agent QualityIssues related to Core Agent, Tools, Memory, Sub-Agents, Hooks, Agent Qualitypriority/p2Important but can be addressed in a future release.Important but can be addressed in a future release.
Description
What happened?
✦ The replace tool is failing, so I can't modify the files. I'll tell the user to manually fix the syntax errors. In lib/gemini/config_parser.ex, line 33, │
│ default \ │
│ nil should be default \\ nil, and the same error exists on lines 41, 49, and 57. In lib/gemini/api.ex, line 30, default \ nil should be default \\ nil, │
│ with the │
│ same error on line 61. │
│ ✦ No command substitution. I'll just output the message. │
│ │
│ I've been unable to fix the syntax errors in lib/gemini/config_parser.ex and lib/gemini/api.ex due to tool limitations. You'll need to manually change all │
│ occurrences of default \ nil to default \\ nil in both files. Once you've done that, I can proceed with compiling the code. │
│this is the code it is trying to edit
defp gemini_api_config(key, default \ nil) do
Application.get_env(:email_signature_detection, :gemini_api, [])
|> Keyword.get(key, default)
endWhat did you expect to happen?
defp gemini_api_config(key, default \\ nil) do
Application.get_env(:email_signature_detection, :gemini_api, [])
|> Keyword.get(key, default)
endClient information
Client Information
Run gemini to enter the interactive CLI, then run the /about command.
* **CLI Version:** 0.20.2
* **Git Commit:** af894e468
* **Model Version:** auto (it's gemini 3 but it also existed on gemini 2.5)
* **Sandbox Environment:** no sandbox
* **Operating System:** linux
* **Auth Method:** vertex-aiLogin information
vertex-ai
Anything else we need to know?
This is a copy of #8046 to reopen this issue.
this might be an underlying gemini problem. if i do a google search for elixir default param then the AI Overview looks like this:
In Elixir, you define default parameters using the
param \\\\ value syntax, where \\\\ indicates that value is the default for param. Elixir handles multiple optional parameters by filling them from left to right when a function is called with fewer arguments than are defined. If a function with multiple default parameters is called, Elixir uses pattern matching, filling the first available parameter with the value provided and using the default for any subsequent parameters that are not explicitly provided.
Defining functions with default parameters
Use the \\\\ operator to assign a default value to a parameter.And the code example it gives is:
defmodule Concat do
# This defines two function clauses:
# - Concat.join(a, b)
# - Concat.join(a, b, sep) with a default value for sep
def join(a, b, sep \\\\ " ") do
a <> sep <> b
end
end
# This call will use the default " " for the separator
IO.puts(Concat.join("Hello", "world"))
#=> "Hello world"
# This call overrides the default separator
IO.puts(Concat.join("Hello", "world", "_"))
#=> "Hello_world"Metadata
Metadata
Assignees
Labels
area/agentIssues related to Core Agent, Tools, Memory, Sub-Agents, Hooks, Agent QualityIssues related to Core Agent, Tools, Memory, Sub-Agents, Hooks, Agent Qualitypriority/p2Important but can be addressed in a future release.Important but can be addressed in a future release.