breezy-car-95415
03/11/2026, 5:28 PMbash or file_editor tools to actually create the directories and files, it just outputs the textual instructions in the chat (e.g., "Here is the code, save it as index.ts...").
My questions:
Is this a known limitation/failure of tool-calling with this specific local model, or could it be related to missing SCM integration?
Does OpenHands silently fall back to conversational mode if a background tool fails (e.g., if npm wasn't found in the container)?
Any advice on how to force it into "agentic/action" mode with a local LLM would be appreciated!magnificent-tiger-32598
03/11/2026, 5:46 PM~/.openhands/agent_settings.json
here is where I am at for Qwen 3 Coder Next -- native_tool_calling might be relevant for you (ignore the $ variable strings, you'd need to replace those)
{
"llm": {
"model": "openai/$Model",
"api_key": "$ApiKey",
"base_url": "$OpenHandsBaseUrl",
"api_version": null,
"aws_access_key_id": null,
"aws_secret_access_key": null,
"aws_region_name": null,
"openrouter_site_url": "<https://docs.all-hands.dev/>",
"openrouter_app_name": "OpenHands",
"num_retries": 5,
"retry_multiplier": 8.0,
"retry_min_wait": 8,
"retry_max_wait": 64,
"timeout": 3600,
"max_message_chars": 131072,
"temperature": 0.7,
"top_p": 0.95,
"top_k": 40,
"max_input_tokens": $ContextLimit,
"max_output_tokens": 16384, "model_canonical_name": null,
"extra_headers": null,
"input_cost_per_token": null,
"output_cost_per_token": null,
"ollama_base_url": null,
"stream": false,
"drop_params": true,
"modify_params": true,
"disable_vision": null,
"disable_stop_word": false,
"caching_prompt": true,
"log_completions": false,
"log_completions_folder": "logs/completions",
"custom_tokenizer": null,
"native_tool_calling": true,
"force_string_serializer": null,
"reasoning_effort": "high",
"reasoning_summary": null,
"enable_encrypted_reasoning": true,
"prompt_cache_retention": "24h",
"extended_thinking_budget": 200000,
"seed": null,
"safety_settings": null,
"usage_id": "agent",
"litellm_extra_body": {
"presence_penalty": 0.3,
"frequency_penalty": 0.3
}
},
"tools": [],
"mcp_config": {},
"filter_tools_regex": null,
"include_default_tools": [
"FinishTool",
"ThinkTool"
],
"agent_context": null,
"system_prompt_filename": "system_prompt.j2",
"security_policy_filename": "security_policy.j2",
"system_prompt_kwargs": {
"llm_security_analyzer": true
},
"condenser": {
"llm": {
"model": "openai/$Model",
"api_key": "$ApiKey",
"base_url": "$OpenHandsBaseUrl",
"api_version": null,
"aws_access_key_id": null,
"aws_secret_access_key": null,
"aws_region_name": null,
"openrouter_site_url": "<https://docs.all-hands.dev/>",
"openrouter_app_name": "OpenHands",
"num_retries": 5,
"retry_multiplier": 8.0,
"retry_min_wait": 8,
"retry_max_wait": 64,
"timeout": 3600,
"max_message_chars": 131072,
"temperature": 0.5,
"top_p": 0.95,
"top_k": 40,
"max_input_tokens": $ContextLimit,
"max_output_tokens": 8192,
"model_canonical_name": null,
"extra_headers": null,
"input_cost_per_token": null,
"output_cost_per_token": null,
"ollama_base_url": null,
"stream": false,
"drop_params": true,
"modify_params": true,
"disable_vision": null,
"disable_stop_word": false,
"caching_prompt": true,
"log_completions": false,
"log_completions_folder": "logs/completions",
"custom_tokenizer": null,
"native_tool_calling": true,
"force_string_serializer": null,
"reasoning_effort": "high",
"reasoning_summary": null,
"enable_encrypted_reasoning": true,
"prompt_cache_retention": "24h",
"extended_thinking_budget": 200000,
"seed": null,
"safety_settings": null,
"usage_id": "condenser",
"litellm_extra_body": {
"presence_penalty": 0.05,
"frequency_penalty": 0.05
}
},
"max_size": 100,
"max_tokens": null,
"keep_first": 2,
"minimum_progress": 0.1,
"hard_context_reset_max_retries": 5,
"hard_context_reset_context_scaling": 0.8,
"kind": "LLMSummarizingCondenser"
},
"critic": null,
"kind": "Agent"
}breezy-car-95415
03/11/2026, 5:57 PMmagnificent-tiger-32598
03/11/2026, 5:58 PM~/.openhands as a volume. do you have an existing ~/.openhands/agent_settings.json then?magnificent-tiger-32598
03/11/2026, 5:59 PMbreezy-car-95415
03/11/2026, 6:44 PM~/.openhands/agent_settings.jsonfaint-greece-70506
03/11/2026, 7:26 PMmagnificent-tiger-32598
03/11/2026, 7:38 PM~/.openhands/agent_settings.json ? Or is it meant only for OpenHands CLI?faint-greece-70506
03/11/2026, 7:38 PMroot@e23175cf727e:/app# grep -w -R agent_settings.json
root@e23175cf727e:/app# grep -R agent_settings.json
root@e23175cf727e:/app# cd /
root@e23175cf727e:/# grep -R agent_settings.json
^C
root@e23175cf727e:/# find . -name "agent_settings.json"
root@e23175cf727e:/#magnificent-tiger-32598
03/11/2026, 7:44 PMcalm-artist-7206
03/11/2026, 7:46 PMagent_settings.json, it still uses the legacy V0 settings format and file, settings.jsonmagnificent-tiger-32598
03/11/2026, 7:59 PMcalm-artist-7206
03/11/2026, 8:02 PMopenhands web I believe (it's not the same GUI, it's the CLI accessed via a web view)breezy-car-95415
03/11/2026, 8:15 PMlimited-student-10747
03/11/2026, 9:32 PMbreezy-car-95415
03/12/2026, 7:23 AMnarrow-motorcycle-3726
04/12/2026, 5:17 PMnarrow-motorcycle-3726
04/12/2026, 5:30 PMnarrow-motorcycle-3726
04/14/2026, 5:05 PMrhythmic-minister-50213
04/15/2026, 4:38 PM