PyAutoScientist enables human-led, natural-language software development — an experimental reference implementation by James Nightingale. Humans describe what the software should do, why it is needed, and how success should be judged; specialist AI agents help plan, implement, test, and prepare releases. Humans remain responsible for scientific objectives, contributor communication, and consequential decisions. Using this ecosystem is optional: you do not need to adopt PyAutoScientist or use AI to contribute to PyAutoLabs.
See the PyAutoScientist Dashboard to monitor work across the organism: expand an organ for a concise status and evidence links, or copy the Scientist prompt for a summary or cross-organ task. Detailed records remain with their owners, including:
- PyAutoMind Dashboard: planned and active development tasks on the scientist's mind.
- PyAutoHeart Dashboard: the health of every repository, rolled into the authoritative GREEN/STALE/YELLOW/RED release verdict.
- PyAutoHands Dashboard: what shipped — the released library versions and the release train's recent runs.
- PyAutoDNA Dashboard: software stacks — observed environments, compatibility decisions and validated upgrade campaigns.
- PyAutoMemory Dashboard: the scientist's long-term knowledge — the reading queue, citation work and each sub-wiki's maturity.
- PyAutoEyes Dashboard: what the software shows — every figure the libraries draw on realistic data, one row per visualization project, with freshness against the latest release.
📖 Docs: https://pyautoscientist.readthedocs.io
🍴 Adoption guide: https://pyautoscientist.readthedocs.io/en/latest/adoption/guide.html
If you are already in an ordinary ChatGPT conversation, that conversation can remain the scientist-facing orchestrator rather than moving the whole task into a coding harness. Start with:
Start this PyAutoMind task using the ChatGPT route: <prompt-path-or-task>.
The route uses whatever repository and GitHub capabilities the current conversation actually exposes, and escalates only the smallest coherent phase that needs a real execution environment. Mind remains the task record; Brain, review, Heart and human merge gates remain unchanged. See the ChatGPT orchestration route for the copyable launch prompt and adapter contract.
Making development accessible through natural language does not reduce the standard of evidence required before code is accepted or released.
PyAuto uses several layers of testing:
- The scientific libraries have extensive unit-test suites covering their numerical behaviour and public APIs.
- User-facing workspaces run curated smoke tests on every push and pull request.
- Release validation runs the full set of runnable workspace scripts, including the examples in
autolens_workspace. Scripts that genuinely cannot be run automatically are listed explicitly, with reasons, in each workspace’sconfig/build/no_run.yaml. - Dedicated integration repositories such as
autolens_workspace_testmirror complete modelling workflows while replacing expensive non-linear searches with fast test configurations. PyAutoHeartmonitors repository health and provides the release-readiness gate used before software is published.
Natural-language requirements are translated into tests, examples and documentation that demonstrate the requested behaviour. AI-generated code is not considered complete simply because it runs or appears plausible.
The shared PyAuto AI Policy describes the principles governing natural-language development, validation, attribution, licensing and human responsibility.
PyAutoScientist is organised as a software organism whose repositories mirror the roles of human organs:
| Organ | Repo | Role |
|---|---|---|
| Brain | PyAutoBrain | Works out how: classifies, plans and routes work through specialist reasoning and coding agents. |
| Broca | PyAutoBroca | Tracks assistant evaluation and upkeep evidence. |
| Mind | PyAutoMind | Captures intent: every piece of work begins as a plain-English description of what should change and is tracked from the initial idea to its completed implementation. |
| Cortex | PyAutoCortex | Holds the science body map and one ledger per science project — the runs on the cluster and a dated log of what was set off, seen and learned — so a project is picked up where it was left, apart from software development. |
| Memory | PyAutoMemory | Provides long-term scientific knowledge through cross-linked literature wikis, concepts and verifiable citations. |
| Eyes | PyAutoEyes | The dashboard of every figure the PyAuto libraries draw: it gathers each library's rendered gallery on realistic data into one board, so what the software shows can be seen, judged and improved in one place. |
| Ears | PyAutoEars | Listens to public community conversations and feedback, showing who may need attention and where listening coverage is incomplete; the Community workflow helps you decide how to respond. |
| Heart | PyAutoHeart | Monitors repository health and supplies the authoritative GREEN/YELLOW/RED release-readiness verdict. |
| Hands | PyAutoHands | Executes builds and releases: packages libraries, generates notebooks, creates tags and publishes releases to PyPI. |
| Pulse | PyAutoPulse | The dashboard of how fast the PyAuto libraries run: it gathers each library's profiling results into one board, so run times and how they change across releases can be seen in one place. |
| Insight | PyAutoInsight | Coordinates inference campaigns and their tasks in one place, showing results, diagnostics, provenance and missing evidence across projects while keeping scientific conclusions with the human and Cortex. |
| DNA | PyAutoDNA | Records software-stack specifications, tracks what local, RAL and CI environments run, and coordinates validated upgrades with compatibility evidence and rollback history. |
| Nerves | PyAutoNerves | Provides the configuration and serialization layer connecting shared conventions across the scientific libraries and workspaces. |
| Gut | PyAutoGut | Holds stale branches, dead code and other condemned material as recoverable Git references before it is permanently removed. |
PyAutoBrain also contains specialist agents that act like additional senses and capabilities. For example, its community agent serves as the organism’s Ears, listening to the shared Discussions hub and user-submitted GitHub issues, helping the human maintainer discuss them with contributors and routing actionable work into development.
The Cortex keeps scientific experiments on a separate track from software development. An experiment is written down as a question with the result that will settle it stated in advance, waits for whatever software work it depends on to be finished, runs on a computing cluster, and then comes back for the human maintainer to judge. Its board shows every experiment currently on that track — waiting to start, running, or waiting on a verdict — and is published at https://pyautolabs.github.io/PyAutoCortex/. The verdicts themselves are recorded in the Cortex and nowhere else: a conclusion written only into a project’s own notes does not count, which is what keeps the record of what the science actually found complete.
The software developed by the organism lives across the PyAutoLabs organisation. See the PyAutoLabs front door for the full repository map.
STARTER.md provides an empty, independently named local dashboard with explicit optional organ connections. It is the first starter slice; full bootstrap, organ activation and independent deployment remain in development.
In March 2026, following more than a decade of exclusively human-led software development, PyAutoLabs transitioned to a fully natural-language, agentic-AI development ecosystem called PyAutoScientist. The software it now develops grew out of that decade of human-led work: PyAutoLens (strong gravitational lensing), PyAutoGalaxy (galaxy structure and morphology), PyAutoFit (Bayesian model fitting), PyAutoArray (scientific data structures) and PyAutoCTI (CCD charge-transfer calibration), together with their workspaces and tutorials.
The organism standards index links the shared dashboard sizing, navigation and orchestration contracts, their reusable components and validation. Consult the applicable standard when changing a shared interface; keep each board's data and workflow with its owner. The published documentation continues to build from PyAutoBrain's docs.
PyAuto is built in the open by its users: everyone is welcome to ask questions, share what they have made with it, and contribute.
Questions, ideas and bug reports: the PyAutoLabs Discussions. Chat with us on Slack. Contributions follow the PyAutoLabs contribution guide (one guide for every repository), the Code of Conduct and the AI Policy.
Each project keeps a community page listing community-built tools, tutorials and how to contribute:
Released under the MIT License. Copyright (c) 2026 Jammy2211.
Use the Scientist tab in the cockpit for the organism overview and its copyable check-in prompt. Ask for a high-level summary across all organs over the last 24 hours, a chosen date range, or help coordinating work across organs. Reporting guidance defines source coverage, event dates and concise evidence-linked summaries. Detailed work and authoritative records remain with each organ.
The dashboard includes expandable project cards linking software, shared dependencies, documentation, tutorials, workspaces, assistants and owner records. See the project configuration contract to connect resources; an assistant is optional and source records remain with their owners.