moltbot-hybrid-engine / scripts /README_VERIFY_AND_ROO.md
dboa9
updates
3510644

Verify script results & Roo diagnostics

Where are the test results?

  • Default: The verify script prints results to stdout only. There is no file path unless you ask for one.

  • With a file: Run with --output / -o to write a JSON report:

    python3 scripts/verify_api.py --api-key YOUR_KEY --output scripts/verify_results.json
    

    The script prints the full path at the end, for example:

    Results written to: /home/mrdbo/projects/moltbot-hybrid-engine/scripts/verify_results.json
    
  • Typical results path:
    .../moltbot-hybrid-engine/scripts/verify_results.json
    (or whatever path you pass to --output).

The JSON contains base_url, timestamp_iso, all_passed, failed_count, and checks (each check: name, passed, detail).


Why am I still seeing the Roo error? (/tmp/roo-diagnostics-*.json)

Roo Code writes diagnostics to /tmp/roo-diagnostics-<id>.json when something goes wrong (e.g. model didn’t use a tool). That file is not the output of the verify script; it’s Roo’s own log for the failing run.

From your diagnostics file, the reported error is:

"The model provided text/reasoning but did not call any of the required tools. This usually indicates the model misunderstood the task or is having difficulty determining which tool to use."

So:

  1. The API is fine. The 422 fix and the verify script confirm the MoltBot endpoint accepts requests and returns chat completions (including array content and streaming).

  2. The problem is Roo’s “Architect” (or similar) mode. In that mode, Roo requires the model to use tools (e.g. run_terminal_cmd, attempt_completion, ask_followup_question). It sends a system/instructions that say “you must call a tool.”

  3. moltbot-legal (Qwen 2.5 7B) is a general chat model. It is not trained or instructed to speak Roo’s tool-calling protocol. So it answers in plain text (and maybe markdown/code blocks) instead of emitting tool calls. Roo then treats the response as invalid and shows:
    [ERROR] You did not use a tool in your previous response! Please retry with a tool use.
    That gets written into the diagnostics at /tmp/roo-diagnostics-*.json.

Summary: The failure is not timeout or 422. It’s that Roo expects tool use and moltbot-legal doesn’t call tools, so Roo keeps retrying and logs the incident to /tmp/roo-diagnostics-*.json.

Options:

  • Use MoltBot in a chat-only mode in Roo (if available), where tool use is not required.
  • Or use a model that supports OpenAI-style tool/function calling for Roo’s Architect (or agent) mode; moltbot-legal on the current Space is chat-only.