Step 1 - Clone and create an isolated environment
git clone https://github.com/Eldergenix/Plato-Scientific-Research-Autonomous-Agent.git
cd Plato-Scientific-Research-Autonomous-Agent
python -m venv .venv
source .venv/bin/activate
pip install -e .
Review the repository's .env.example before running live retrieval. Keep provider keys scoped to development until you have budget limits and run manifests enabled.
Step 2 - Choose a domain profile
Start with a built-in domain and a small dataset. A domain profile should define:
| Profile concern | Example decision |
|---|
| Retrieval sources | arXiv, OpenAlex, Crossref, PubMed, ADS, Semantic Scholar |
| Keyword extraction | field-specific terms and synonyms |
| Journal preset | target venue style and constraints |
| Executor | local Python, container, Modal, or E2B |
| Novelty corpus | papers and records used for comparison |
Do not mix domains casually. Biology, astronomy, and ML systems have different retrieval and validation needs.
Step 3 - Run a bounded research task
Use a tiny input first:
plato run examples/minimal_project.yaml --max-cost-usd 5 --max-sources 20
If your local command differs, inspect the repository examples and mirror the smallest supported run. The first successful run should produce artifacts, not a polished paper.
Step 4 - Inspect the evidence matrix
Before reading the manuscript, inspect the claim evidence file. A healthy evidence matrix should show:
- Atomic claim text.
- Source IDs and URLs.
- Quote spans or exact evidence locations when available.
- Confidence and failure notes.
- Claims with no evidence marked for revision.
Any claim without traceable evidence should be removed, rewritten as a hypothesis, or sent back through retrieval.
Reasoning rule: claim granularity matters. "This method improves robustness" is too broad to audit; "this method reduced error rate on dataset X under condition Y" can be tied to a source or experiment.
Step 5 - Validate citations
Use citation validation as a gate, not as a post-processing nicety. Check that references resolve against authoritative sources and that retraction or metadata failures are visible.
Minimum citation gate:
- Every final reference has a resolvable identifier or URL.
- Bibliographic metadata matches the cited source.
- Retraction checks are recorded when available.
- The final manuscript does not cite sources that failed validation without an explicit note.
Step 6 - Run the reviewer panel
Create separate review axes:
- Methodology: is the experiment design appropriate?
- Statistics: are tests, sample sizes, and uncertainty reported correctly?
- Novelty: is the contribution meaningfully different from retrieved work?
- Writing: are claims clear, limited, and supported?
Aggregate reviewer feedback into a revision plan. Bound revisions with a maximum iteration count so the agent cannot loop indefinitely.
Use reviewer disagreement as a signal, not a nuisance. If the novelty reviewer accepts a claim but the statistics reviewer rejects the evidence, the next action is more analysis, not better prose.
Step 7 - Require a reproducibility manifest
Every run should emit a manifest with:
{
"git_sha": "current repository commit",
"project_hash": "input project checksum",
"models": ["model ids used"],
"source_ids": ["retrieved paper ids"],
"token_usage": {"input": 0, "output": 0},
"cost_usd": 0,
"created_at": "ISO timestamp"
}
If a paper draft cannot be tied back to source IDs, model versions, and executable analysis outputs, treat it as exploratory text rather than research output.
Step 8 - Run a budgeted autonomous loop
After one manual pass is stable, try an autonomous loop with strict limits:
plato loop --hours 2 --max-cost-usd 20
Review the commits or generated patches manually. Revert regressions and keep a changelog of what the agent improved.