Description
When running python run.py --sim in WSL2, the program crashes with an AttributeError followed by a Segmentation Fault. It appears that the configuration loader is returning None instead of a dictionary, causing .get() to fail when trying to read the API key.
Environment
- OS: Windows 11 with WSL2 (Ubuntu 22.04)
- Python Version: 3.10 (running inside a
venv)
- Mode: Simulation (
--sim)
Steps to Reproduce
- Clone the repository.
- Create a virtual environment and run
pip install -e ".[all]".
- Create
config/user.yaml with the correct format:
llm:
provider: "claude"
api_key: "sk"
model: "anthropic/claude-sonnet-4.6"
api_base: "https://api.nih.cc"
temperature: 0.0
max_tokens: 2048
Error Log
Starting MuJoCo simulation...
Sim arm connected. Joints: [0.0, 0.01, 0.01, 0.0, -0.0]
Scene objects: banana, mug, bottle, screwdriver, duck, lego
Sim perception ready (ground-truth mode).
Traceback (most recent call last):
File "/mnt/g/Robotics_Projects/vector-os-nano/run.py", line 724, in
main()
File "/mnt/g/Robotics_Projects/vector-os-nano/run.py", line 675, in main
api_key = cfg.get("llm", {}).get("api_key") or os.environ.get("OPENROUTER_API_KEY")
AttributeError: 'NoneType' object has no attribute 'get'
Segmentation fault (core dumped)
Additional Context
I have verified that the config/user.yaml file exists in the correct directory, is not empty, and has the correct YAML indentation. It seems the cfg object is being evaluated as None before it even attempts to fallback to os.environ.get.
Description
When running
python run.py --simin WSL2, the program crashes with anAttributeErrorfollowed by a Segmentation Fault. It appears that the configuration loader is returningNoneinstead of a dictionary, causing.get()to fail when trying to read the API key.Environment
venv)--sim)Steps to Reproduce
pip install -e ".[all]".config/user.yamlwith the correct format:llm:
provider: "claude"
api_key: "sk"
model: "anthropic/claude-sonnet-4.6"
api_base: "https://api.nih.cc"
temperature: 0.0
max_tokens: 2048
Error Log
Starting MuJoCo simulation...
Sim arm connected. Joints: [0.0, 0.01, 0.01, 0.0, -0.0]
Scene objects: banana, mug, bottle, screwdriver, duck, lego
Sim perception ready (ground-truth mode).
Traceback (most recent call last):
File "/mnt/g/Robotics_Projects/vector-os-nano/run.py", line 724, in
main()
File "/mnt/g/Robotics_Projects/vector-os-nano/run.py", line 675, in main
api_key = cfg.get("llm", {}).get("api_key") or os.environ.get("OPENROUTER_API_KEY")
AttributeError: 'NoneType' object has no attribute 'get'
Segmentation fault (core dumped)
Additional Context
I have verified that the config/user.yaml file exists in the correct directory, is not empty, and has the correct YAML indentation. It seems the cfg object is being evaluated as None before it even attempts to fallback to os.environ.get.