gitextract_m3xbil2z/ ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ └── feature_request.md │ ├── pull_request_template.md │ ├── scripts/ │ │ └── check_pr_title.py │ └── workflows/ │ ├── check-pr-title.yml │ └── run-ruff.yml ├── .gitignore ├── LICENSE ├── README.md ├── REUSE.toml ├── config/ │ ├── __init__.py │ ├── agent_quickstart.yaml │ ├── agent_quickstart_graph.yaml │ ├── agent_quickstart_skill.yaml │ ├── agent_single-test.yaml │ ├── agent_web_demo.yaml │ ├── benchmark/ │ │ ├── browsecomp-en-200.yaml │ │ ├── browsecomp-en.yaml │ │ ├── browsecomp-zh.yaml │ │ ├── default.yaml │ │ ├── example_dataset.yaml │ │ ├── finsearchcomp.yaml │ │ ├── frames-test.yaml │ │ ├── futurex.yaml │ │ ├── gaia-test.yaml │ │ ├── gaia-validation-165.yaml │ │ ├── gaia-validation-text-only.yaml │ │ ├── gaia-validation.yaml │ │ ├── hle-text-only.yaml │ │ ├── hle.yaml │ │ ├── webwalkerqa.yaml │ │ └── xbench-ds.yaml │ ├── benchmark_browsecomp-en-200_mirothinker_v1.yaml │ ├── benchmark_browsecomp-en_mirothinker.yaml │ ├── benchmark_browsecomp-zh_mirothinker_v1.yaml │ ├── benchmark_browsecomp-zh_mirothinker_v2.yaml │ ├── benchmark_browsecomp-zh_mirothinker_v3.yaml │ ├── benchmark_frames-test_mirothinker.yaml │ ├── benchmark_gaia-validation-165_mirothinker_tool.yaml │ ├── benchmark_gaia-validation-165_mirothinker_v1.yaml │ ├── benchmark_gaia-validation-text-103_kimi_k25.yaml │ ├── benchmark_gaia-validation-text-103_mirothinker_multi-agent.yaml │ ├── benchmark_gaia-validation-text-103_mirothinker_v1.yaml │ ├── benchmark_gaia-validation-text-103_mirothinker_v2.yaml │ ├── benchmark_hle-text-only_mirothinker.yaml │ ├── benchmark_hle_mirothinker_v1.yaml │ ├── benchmark_webwalkerqa_mirothinker.yaml │ ├── benchmark_xbench-ds_mirothinker.yaml │ ├── llm/ │ │ ├── base_kimi_k25.yaml │ │ ├── base_mirothinker.yaml │ │ └── base_openai.yaml │ ├── prompts/ │ │ ├── __init__.py │ │ ├── base_agent_prompt.py │ │ ├── main_agent_prompt_deepseek.py │ │ ├── main_agent_prompt_gaia.py │ │ ├── main_boxed_answer.py │ │ ├── prompt_final_answer_extraction.yaml │ │ ├── prompt_main_agent.yaml │ │ ├── prompt_main_agent_benchmark.yaml │ │ ├── prompt_main_agent_gaia.yaml │ │ ├── prompt_sub_agent.yaml │ │ ├── prompt_subtask.yaml │ │ └── sub_worker.py │ └── tool/ │ ├── tool-audio-os.yaml │ ├── tool-audio.yaml │ ├── tool-browsing.yaml │ ├── tool-code-sandbox.yaml │ ├── tool-image-video-os.yaml │ ├── tool-image-video.yaml │ ├── tool-jina-scrape.yaml │ ├── tool-markitdown.yaml │ ├── tool-reading.yaml │ ├── tool-reasoning-os.yaml │ ├── tool-reasoning.yaml │ ├── tool-scrape-website-v1.yaml │ ├── tool-searching-serper.yaml │ ├── tool-searching.yaml │ ├── tool-serper-search.yaml │ └── tool-serper-sogou-search.yaml ├── data/ │ ├── FSI-2023-DOWNLOAD.xlsx │ └── README.md ├── docs/ │ └── mkdocs/ │ ├── README.md │ ├── docs/ │ │ ├── all_about_agents.md │ │ ├── browsecomp_en.md │ │ ├── browsecomp_zh.md │ │ ├── claude-3.7-sonnet.md │ │ ├── contribute_benchmarks.md │ │ ├── contribute_llm_clients.md │ │ ├── contribute_tools.md │ │ ├── contributors.md │ │ ├── core_concepts.md │ │ ├── data.md │ │ ├── deepseek.md │ │ ├── download_datasets.md │ │ ├── e2b_advanced_features.md │ │ ├── evaluation_overview.md │ │ ├── faqs.md │ │ ├── finsearchcomp.md │ │ ├── futurex.md │ │ ├── gaia_test.md │ │ ├── gaia_validation_claude37sonnet.md │ │ ├── gaia_validation_gpt5.md │ │ ├── gaia_validation_mirothinker.md │ │ ├── gaia_validation_prerequisites.md │ │ ├── gaia_validation_text_only.md │ │ ├── hle.md │ │ ├── hle_text_only.md │ │ ├── index.md │ │ ├── license.md │ │ ├── llm_clients_overview.md │ │ ├── mirothinker.md │ │ ├── model_comparison.md │ │ ├── openai-gpt4o.md │ │ ├── openai-gpt5.md │ │ ├── openrouter-claude-3.7-sonnet.md │ │ ├── quickstart.md │ │ ├── tool_audio.md │ │ ├── tool_audio_os.md │ │ ├── tool_overview.md │ │ ├── tool_python.md │ │ ├── tool_reading.md │ │ ├── tool_reasoning.md │ │ ├── tool_reasoning_os.md │ │ ├── tool_searching.md │ │ ├── tool_searching_serper.md │ │ ├── tool_vqa.md │ │ ├── tool_vqa_os.md │ │ ├── webwalkerqa.md │ │ ├── whats_new.md │ │ ├── why_miroflow.md │ │ ├── xbench_ds.md │ │ └── yaml_config.md │ └── mkdocs.yml ├── miroflow/ │ ├── __init__.py │ ├── agents/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── context.py │ │ ├── factory.py │ │ ├── iterative_agent_with_rollback.py │ │ └── sequential_agent.py │ ├── benchmark/ │ │ ├── __init__.py │ │ ├── calculate_average_score.py │ │ ├── eval_utils.py │ │ ├── run_benchmark.py │ │ ├── task_runner.py │ │ └── verifiers/ │ │ ├── __init__.py │ │ ├── base_verifier.py │ │ ├── browsecomp_en_verifier.py │ │ ├── browsecomp_zh_verifier.py │ │ ├── finsearchcomp_verifier.py │ │ ├── gaia_common_verifier.py │ │ ├── gaia_verifier.py │ │ ├── hle_verifier.py │ │ ├── simpleqa_verifier.py │ │ └── xbench_verifier.py │ ├── io_processor/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── exceed_max_turn_summary_generator.py │ │ ├── file_content_preprocessor.py │ │ ├── final_answer_extractor.py │ │ ├── input_hint_generator.py │ │ ├── input_message_generator.py │ │ ├── regex_boxed_extractor.py │ │ └── summary_generator.py │ ├── llm/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── claude_anthropic.py │ │ ├── claude_openrouter.py │ │ ├── factory.py │ │ ├── gpt5_openai.py │ │ ├── gpt_openai.py │ │ ├── mirothinker_sglang.py │ │ ├── openai_client.py │ │ ├── openrouter.py │ │ └── util.py │ ├── logging/ │ │ ├── __init__.py │ │ ├── decorators.py │ │ ├── span.py │ │ ├── task_tracer.py │ │ └── tool_logging.py │ ├── py.typed │ ├── registry.py │ ├── skill/ │ │ ├── __init__.py │ │ ├── manager.py │ │ └── skills/ │ │ ├── Afternoon_feeling/ │ │ │ └── SKILL.md │ │ ├── Today_feeling/ │ │ │ └── SKILL.md │ │ └── simple_file_understanding/ │ │ └── SKILL.md │ ├── tool/ │ │ ├── __init__.py │ │ ├── factory.py │ │ ├── manager.py │ │ └── mcp_servers/ │ │ ├── __init__.py │ │ ├── audio_mcp_server.py │ │ ├── audio_mcp_server_os.py │ │ ├── browser_session.py │ │ ├── code_sandbox.py │ │ ├── jina_scrape.py │ │ ├── miroapi_serper_mcp_server.py │ │ ├── reading_mcp_server.py │ │ ├── reasoning_mcp_server.py │ │ ├── reasoning_mcp_server_os.py │ │ ├── scrape_website_v1.py │ │ ├── searching_mcp_server.py │ │ ├── serper_search.py │ │ ├── serper_sogou_search.py │ │ ├── skill_mcp_server.py │ │ ├── utils/ │ │ │ ├── smart_request.py │ │ │ └── url_unquote.py │ │ ├── vision_mcp_server.py │ │ └── vision_mcp_server_os.py │ └── utils/ │ ├── __init__.py │ ├── file_content_utils.py │ ├── io_utils.py │ ├── parsing_utils.py │ ├── prepare_benchmark/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── common.py │ │ ├── gen_browsecomp.py │ │ ├── gen_finsearchcomp.py │ │ ├── gen_frames.py │ │ ├── gen_futurex.py │ │ ├── gen_gaia.py │ │ ├── gen_gaia_text_only.py │ │ ├── gen_hle.py │ │ ├── gen_hle_text_only.py │ │ ├── gen_webwalkerqa.py │ │ ├── gen_xbench_ds.py │ │ └── main.py │ ├── prompt_utils.py │ ├── summary_utils.py │ └── tool_utils.py ├── pyproject.toml ├── scripts/ │ ├── benchmark/ │ │ ├── check_progress/ │ │ │ ├── check_progress_browsecomp-en-200.py │ │ │ ├── check_progress_browsecomp-en.py │ │ │ ├── check_progress_browsecomp-zh.py │ │ │ ├── check_progress_frames-test.py │ │ │ ├── check_progress_gaia-validation-165.py │ │ │ ├── check_progress_gaia-validation-text-103.py │ │ │ ├── check_progress_hle-text-only.py │ │ │ ├── check_progress_hle.py │ │ │ ├── check_progress_webwalkerqa.py │ │ │ └── check_progress_xbench-ds.py │ │ ├── kimi_k25/ │ │ │ └── gaia-validation-text-103_kimi_k25_8runs.sh │ │ └── mirothinker/ │ │ ├── browsecomp-en-200_mirothinker_v1.sh │ │ ├── browsecomp-en_mirothinker_3runs.sh │ │ ├── browsecomp-zh_mirothinker_v1.sh │ │ ├── browsecomp-zh_mirothinker_v2.sh │ │ ├── browsecomp-zh_mirothinker_v3.sh │ │ ├── frames-test_mirothinker_3runs.sh │ │ ├── gaia-validation-165_mirothinker_v1.sh │ │ ├── gaia-validation-text-103_mirothinker_v1.sh │ │ ├── gaia-validation-text-103_mirothinker_v2.sh │ │ ├── hle-text-only_mirothinker_3runs.sh │ │ ├── hle_mirothinker_v1.sh │ │ ├── webwalkerqa_mirothinker_3runs.sh │ │ └── xbench-ds_mirothinker_8runs.sh │ ├── run_prepare_benchmark.sh │ ├── run_single_task.py │ ├── start_web.sh │ └── test_single_task.sh └── web_app/ ├── __init__.py ├── api/ │ ├── __init__.py │ ├── dependencies.py │ └── routes/ │ ├── __init__.py │ ├── configs.py │ ├── health.py │ ├── tasks.py │ └── uploads.py ├── core/ │ ├── __init__.py │ ├── config.py │ ├── session_manager.py │ └── task_executor.py ├── frontend/ │ ├── index.html │ ├── package.json │ ├── postcss.config.js │ ├── src/ │ │ ├── App.tsx │ │ ├── api/ │ │ │ ├── client.ts │ │ │ └── tasks.ts │ │ ├── components/ │ │ │ ├── common/ │ │ │ │ ├── FileUpload.tsx │ │ │ │ ├── LoadingSpinner.tsx │ │ │ │ └── MarkdownRenderer.tsx │ │ │ └── task/ │ │ │ ├── TaskForm.tsx │ │ │ ├── TaskHistory.tsx │ │ │ └── TaskStatus.tsx │ │ ├── hooks/ │ │ │ └── usePolling.ts │ │ ├── index.css │ │ ├── main.tsx │ │ ├── types/ │ │ │ └── task.ts │ │ └── vite-env.d.ts │ ├── tailwind.config.js │ ├── tsconfig.json │ ├── tsconfig.node.json │ └── vite.config.ts ├── main.py └── models/ ├── __init__.py └── task.py