InternAgent Scientific Discovery
An autonomous research framework linking hypothesis generation, experiment execution, and literature-grounded research answers.
- Source repo
- InternScience/InternAgent
- Stars
- ★ 1.5k
- Last updated
- 3mo ago
- License
- NOASSERTION
- Primary language
- Python
- FA score
- 27/100 · Major gaps
At a glance
- How it runs
- Works with
- Universal · cross-platformClaude Code · OpenAI API · Claude API
- Cost
- Free software; you pay for model usage
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- A researcher validating a local setup can run AutoDebug, the documented toy task that requires no dataset or model downloads.
- Not a fit if
- Teams wanting a turnkey tool with no API keys or Conda setup
- Users who need a hosted service or container image instead of local runs
- Teams that need clear license terms before adopting the code
- Source review
- 27/100 · Major gaps 8 safety controls not found
What does this agent do, and when should you use it?
InternAgent-1.5 is a locally run command-line framework for autonomous scientific research, with discovery-experiment and deep-research QA modes. Its discovery workflow operates on algorithm-discovery tasks in tasks/, where a task can include prompt.json, baseline code/, and launcher.sh. A separate sci_tasks mode receives a published paper and its data to autonomously attempt reproduction of key findings. In QA mode, the Deep Research pipeline decomposes a question, gathers material from academic databases and the web in parallel, and produces a synthesized answer or structured report. Results are stored under results/ and logs under logs/; its deployment boundary is a local Python environment, configuration files, and credentials for external model services.
launch.py selects discovery or qa mode. Discovery can run tasks such as AutoDebug, or bypass idea generation with --skip_idea_generation and --idea_path to run experiments from an existing ideas.json file; launch_qa.py accepts --question and can save an answer to a Markdown file with -o. Task definitions live in tasks/ and include task prompts, baseline code, and launch scripts. Paper-reproduction tasks live in sci_tasks/tasks/ and take a published paper and its data as input. The Deep Research module breaks questions into subtasks, gathers information from academic databases and the web, then synthesizes an answer or report; the persistent Memory Module records experimental outcomes across sessions to avoid failed directions and build on successful ones. Connections to models are configured through .env and config/, covering OpenAI-compatible endpoints, OpenRouter, and Anthropic credentials for Claude-based experiment backends.
- A researcher validating a local setup can run AutoDebug, the documented toy task that requires no dataset or model downloads.
- An algorithm-research team can run discovery mode on a task that already supplies a task prompt, baseline code, and launcher under tasks/.
- A user who already has an ideas.json file can run experiments from it without regenerating ideas by using --skip_idea_generation and --idea_path.
- A scientist seeking an autonomous attempt to reproduce key findings from a published paper and its data can use a task under sci_tasks/tasks/.
- A researcher seeking a literature-synthesized answer to a question such as recent memory-augmented LLM advances can use QA mode.
How do you install or deploy this agent?
Create and activate the environment, then install dependencies:
conda create -n InternAgent python=3.11
conda activate InternAgent
pip install -r requirements.txtCreate the environment configuration:
mv .env.example .envPopulate .env with credentials for the selected backend. OPENAI_API_KEY and OPENAI_API_BASE_URL support embeddings and memory through OpenAI or compatible endpoints; for OpenRouter, set OPENROUTER_API_KEY and use config/openrouter_config.yaml; for Claude-based experiment backends, set ANTHROPIC_API_KEY.
How do you use this agent?
For the first verification run:
python launch_discovery.py --config ./config/default_config.yaml --task AutoDebug --exp_backend claudecodeThe unified launcher also supports:
python launch.py --mode discovery --task AutoDebug --exp_backend claudecode
python launch.py --mode qa --question "What are recent advances in memory-augmented LLMs?"To save a QA answer:
python launch_qa.py -q "What are recent advances in memory-augmented LLMs?" -o answer.mdStart configuration from config/default_config.yaml. Results and logs are written to results/ and logs/, respectively.
What are this agent's strengths and limitations?
- It exposes discovery experiments and deep-research QA as distinct modes through one launch.py entry point.
- Its persistent Memory Module records outcomes across sessions, with the stated purpose of avoiding previously failed directions.
- It covers both algorithm-discovery tasks and paper-reproduction tasks based on a paper and its data, rather than only a question-answering workflow.
- It documents configuration paths for OpenAI-compatible endpoints, OpenRouter, and Claude-based experiment backends.
- Operation requires local Conda, Python 3.11, shell access, and external API credentials; Deep Research also accesses academic databases and the web.
- Datasets and environment setup vary by task, so adopters must inspect the relevant task code and configuration under tasks/.
- The supplied material does not document a container image, managed service, stable programmatic service API, or cluster deployment path.
- The supplied license metadata is NOASSERTION, so adopters need to establish applicable licensing terms before use.
How does this agent compare with similar options?
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| InternAgent Scientific Discovery This agent | 27 · Major gaps | CLIFree + model costs | ★ 1.5k | 3mo ago | Python | Claude Code · OpenAI API · Claude API |
| Principia | 66 · Some gaps | CLIFree + model costs | ★ 1.1k | 1mo ago | Rich Text Format | — |
| Deep Researcher Agent | 52 · Major gaps | Agent plugin / skillFree + model costs | ★ 1.1k | 5mo ago | Python | Claude Code · OpenAI API · Claude API |
| XScientist | 61 · Some gaps | CLIFree + model costs | ★ 127 | 5d ago | Python | OpenAI API · Claude API |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence shows: The repository provides no documentation on permission management, user confirmation, data flow transparency, sensitive data handling, dependency security, external effects, rollback, or source attribution. README only mentions API key configuration but does not explain least privilege or user confirmation mechanisms. The dependency list is extensive but lacks security audit. Therefore all trust criteria score 0.
Evidence shows: README and code examples are largely consistent in task descriptions, but no error handling or failure message documentation is provided. Dependency list is complete but availability is not verified. Thus self-consistency scores 1, dependency availability scores 1, failure messages scores 0.
Evidence shows: README clearly identifies target audience (researchers) and multiple use cases (algorithm discovery, paper reproduction, deep research), but capability boundaries are vague, trigger conditions (e.g., task types) are not detailed, and environment fit only mentions Python 3.11 and API keys. Therefore audience and scenarios score 2, capability boundaries score 1, trigger precision score 1, environment fit score 1.
Evidence shows: README has clear structure with installation, configuration, and run examples, but lacks known limitations, version changelog, and maintenance responsibility. License is Apache 2.0 but metadata is NOASSERTION. Thus information architecture scores 2, install notes score 2, naming stability scores 1, examples and FAQ score 2, known limitations score 0, license score 2, versioning changelog score 1, maintenance responsibility score 1.
Evidence shows: README describes outputs (answers, reports) and various tasks, but no cost-benefit analysis or performance benchmarks are provided. Therefore output usability scores 1, marginal value scores 2, cost benefit scores 1.
Evidence shows: README cites papers and benchmarks, but no reproducible verification steps or separation of facts and inferences are provided. Thus claim traceability scores 1, cross-source corroboration scores 1, fact-inference separation scores 0.
- Not found in source: least-privilege scopingGrant only what the task needs: a dedicated account or read-only token, scoped to specific directories and repos.
- Not found in source: confirmation before actingTurn on (or add) a confirmation step before it acts, and try it in a sandbox or test environment before real data.
- Not found in source: data-flow disclosureWatch which external services it contacts (proxy or firewall logs) and keep sensitive data out until you know where it goes.
- Not found in source: sensitive-data handlingUse dedicated, low-privilege, revocable API keys — never production credentials — and keep secrets out of logs.
- Not found in source: dependency securityPin versions and run a dependency audit (npm audit, pip-audit) before installing; prefer running it in a container.
- Not found in source: disclosed external effectsEstablish which external systems it writes to, sends to or changes, and verify with test accounts or repos before production.
- Not found in source: rollback or recovery pathBack up first, or work on a git branch or snapshot, so its changes can be undone.
- Not found in source: verifiable attributionInstall from the official repo or registry and check the publisher and URL to avoid look-alike packages.
- The repository lacks documentation on permission management, user confirmation, or data flow transparency, posing security risks.
- The dependency list is extensive without security audit, potentially introducing known vulnerabilities.
- Known limitations and version changelog are missing, making it hard for users to assess suitability.