# Biomni-ReAct This project is a lightweight implementation scaffold for a Biomni-inspired ReAct architecture. It follows the core design pattern visible in Biomni: retrieve a task-specific subset of resources, construct a biomedical agent prompt, then run an iterative reasoning and tool-execution loop. ## Architecture 1. **Task specification**: input task, workspace, expected outputs, and optional constraints are normalized into `TaskSpec`. 2. **Resource registry**: tools, software packages, and data resources are represented as searchable `Resource` records. 3. **Resource retriever**: a simple lexical retriever selects task-relevant resources before the agent starts reasoning. 4. **ReAct loop**: the model alternates between planning text and explicit executable actions. 5. **Executor**: shell and Python actions run inside a bounded workspace, and every step is logged. 6. **Artifacts**: retrieval plan, trace, final answer, and run summary are written for evaluation. ## Quick Start ```bash cd /225040511/project/Biomni-ReAct python -m biomni_react.cli --task examples/simple_task.json --workspace runs/demo ``` For an OpenAI-compatible endpoint, set: ```bash export BIOMNI_REACT_API_KEY="..." export BIOMNI_REACT_BASE_URL="https://api.openai.com/v1" export BIOMNI_REACT_MODEL="gpt-4o-mini" ``` The agent writes run artifacts under the workspace directory. If no API key is configured, it still creates the retrieval plan and summary so the pipeline can be tested offline. ## Relation to Biomni This repository intentionally keeps the implementation small. It mirrors the Biomni logic rather than copying its full infrastructure: resource retrieval first, prompt grounding second, then a ReAct-style execute/observe loop with auditable logs.