Metadata-Version: 2.4
Name: agentic-proteins
Version: 0.1.0
Summary: Deterministic, artifact-first protein design runtime and CLI
Project-URL: Documentation, https://bijux.github.io/agentic-proteins/
Project-URL: Repository, https://github.com/bijux/agentic-proteins
Project-URL: Issues, https://github.com/bijux/agentic-proteins/issues
Project-URL: Changelog, https://github.com/bijux/agentic-proteins/blob/main/CHANGELOG.md
Author-email: Bijan Mousavi <mousavi.bijan@gmail.com>
License: Apache-2.0
License-File: LICENSE
Keywords: auditability,bioinformatics,cli,laboratory,pipelines,protein-design,protein-structure,reproducible-science
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: MacOS
Classifier: Operating System :: OS Independent
Classifier: Operating System :: POSIX
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Topic :: Scientific/Engineering :: Chemistry
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Utilities
Requires-Python: >=3.11
Requires-Dist: biopython>=1.83
Requires-Dist: boto3>=1.34
Requires-Dist: click>=8.1
Requires-Dist: fastapi>=0.115
Requires-Dist: loguru>=0.7
Requires-Dist: numpy<2.0,>=1.26
Requires-Dist: pydantic>=2.0.2
Requires-Dist: requests>=2.31
Requires-Dist: slowapi>=0.1
Requires-Dist: uvicorn>=0.30
Provides-Extra: api
Requires-Dist: openprotein-python>=0.8.8; extra == 'api'
Provides-Extra: dev
Requires-Dist: arq[redis]>=0.18; extra == 'dev'
Requires-Dist: bandit<2.0,>=1.7.10; extra == 'dev'
Requires-Dist: build<2.0,>=1.0.3; extra == 'dev'
Requires-Dist: codespell<3.0,>=2.3.0; extra == 'dev'
Requires-Dist: deptry<1.0,>=0.10.0; extra == 'dev'
Requires-Dist: hypothesis-jsonschema<1.0,>=0.23.0; extra == 'dev'
Requires-Dist: hypothesis<7.0,>=6.103.0; extra == 'dev'
Requires-Dist: interrogate<2.0,>=1.7.0; extra == 'dev'
Requires-Dist: mypy<2.0,>=1.11.2; extra == 'dev'
Requires-Dist: pexpect<5.0,>=4.8.0; extra == 'dev'
Requires-Dist: pip-audit<3.0,>=2.7.3; extra == 'dev'
Requires-Dist: pydocstyle<7.0,>=6.2.1; extra == 'dev'
Requires-Dist: pyfakefs>=5.9.0; extra == 'dev'
Requires-Dist: pyright<2.0,>=1.1.320; extra == 'dev'
Requires-Dist: pytest-asyncio<2.0,>=1.0.0; extra == 'dev'
Requires-Dist: pytest-benchmark<5.0,>=4.0.0; extra == 'dev'
Requires-Dist: pytest-cov<7.0,>=6.2.1; extra == 'dev'
Requires-Dist: pytest-mock<4.0,>=3.14.1; extra == 'dev'
Requires-Dist: pytest-rerunfailures<14.0,>=13.0; extra == 'dev'
Requires-Dist: pytest-timeout<3.0,>=2.4.0; extra == 'dev'
Requires-Dist: pytest<9.0,>=8.4.1; extra == 'dev'
Requires-Dist: pytype>=2024.10.11; extra == 'dev'
Requires-Dist: radon>=6.0.0; extra == 'dev'
Requires-Dist: reuse<6.0.0,>=4.0.0; extra == 'dev'
Requires-Dist: ruff<1.0,>=0.6.8; extra == 'dev'
Requires-Dist: types-colorama<1.0,>=0.0.14; extra == 'dev'
Requires-Dist: types-orjson<4.0,>=3.6.0; extra == 'dev'
Requires-Dist: types-pexpect<5.0,>=4.9.0; extra == 'dev'
Requires-Dist: types-psutil<7.0,>=6.0.0; extra == 'dev'
Requires-Dist: types-pyyaml<7.0,>=6.0.12; extra == 'dev'
Requires-Dist: typing-extensions<5.0,>=4.5.0; extra == 'dev'
Requires-Dist: vulture<3.0,>=2.7; extra == 'dev'
Provides-Extra: local-esmfold
Requires-Dist: einops>=0.7; extra == 'local-esmfold'
Requires-Dist: tokenizers>=0.14; extra == 'local-esmfold'
Requires-Dist: torch>=2.8; extra == 'local-esmfold'
Requires-Dist: transformers>=4.53.2; extra == 'local-esmfold'
Provides-Extra: local-rosettafold
Requires-Dist: torch>=2.8; extra == 'local-rosettafold'
Provides-Extra: nl
Requires-Dist: langchain-community>=0.2; extra == 'nl'
Requires-Dist: langchain-core>=0.2; extra == 'nl'
Requires-Dist: langchain-huggingface>=0.3.1; extra == 'nl'
Description-Content-Type: text/markdown

# Agentic Proteins

<a id="top"></a>

**Deterministic, artifact-first protein design runtime and CLI** for traceable runs, human review, and reproducible decision trails.

[![PyPI - Version](https://img.shields.io/pypi/v/agentic-proteins.svg)](https://pypi.org/project/agentic-proteins/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/agentic-proteins.svg)](https://pypi.org/project/agentic-proteins/)
[![License: Apache-2.0](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://github.com/bijux/agentic-proteins/blob/main/LICENSE)
[![Documentation](https://img.shields.io/badge/docs-GitHub%20Pages-brightgreen)](https://bijux.github.io/agentic-proteins/)
[![CI Status](https://github.com/bijux/agentic-proteins/actions/workflows/ci.yml/badge.svg)](https://github.com/bijux/agentic-proteins/actions)

> **At a glance:** Deterministic runs • artifact-first output • human-in-the-loop gating • stable JSON contracts  
> **Audience:** Computational biology teams and lab workflows that require auditability and reproducibility.

---

## Table of Contents

* [Why Agentic Proteins?](#why-agentic-proteins)
* [Try It in 30 Seconds](#try-it-in-30-seconds)
* [Installation](#installation)
* [Quick Start](#quick-start)
* [What This Does](#what-this-does)
* [What This Does Not Do](#what-this-does-not-do)
* [Stable Public Surface](#stable-public-surface)
* [Docs & Resources](#docs--resources)
* [Contributing](#contributing)
* [License](#license)

[Back to top](#top)

---

<a id="why-agentic-proteins"></a>

## Why Agentic Proteins?

Protein design workflows need traceable decisions, stable artifacts, and reproducible execution paths. Agentic Proteins provides a deterministic loop that separates planning, execution, evaluation, and human decision points so that labs can audit and reproduce runs without digging into internal code.

[Back to top](#top)

---

<a id="try-it-in-30-seconds"></a>

## Try It in 30 Seconds

```bash
pipx install agentic-proteins  # Or: pip install agentic-proteins
agentic-proteins run --sequence "ACDEFGHIKLMNPQRSTVWY"
agentic-proteins inspect-candidate --latest
```

[Back to top](#top)

---

<a id="installation"></a>

## Installation

Requires **Python 3.11+**.

```bash

# Isolated install (recommended)

pipx install agentic-proteins

# Standard

pip install agentic-proteins
```

[Back to top](#top)

---

<a id="quick-start"></a>

## Quick Start

```bash

# Run a deterministic loop

agentic-proteins run --sequence "ACDEFGHIKLMNPQRSTVWY"

# Resume a run by ID

agentic-proteins resume --run-id <run_id>

# Compare two runs

agentic-proteins compare --left <run_id> --right <run_id>
```

[Back to top](#top)

---

<a id="what-this-does"></a>

## What This Does

* Runs a deterministic agentic loop with traceable artifacts and telemetry.
* Produces proxy structure-quality signals from sequence heuristics by default.
* Requires explicit opt-in to run real structure predictors via `--provider`.

[Back to top](#top)

---

<a id="what-this-does-not-do"></a>

## What This Does Not Do

* It does not run real structure prediction unless `--provider esmfold|rosettafold|openprotein` is specified and requirements are met.
* It does not finalize candidate selection without a signed human decision artifact.
* It does not expose internal modules as stable APIs.

[Back to top](#top)

---

<a id="stable-public-surface"></a>

## Stable Public Surface

* Supported CLI commands: `run`, `resume`, `compare`, `inspect-candidate`, `export-report`.
* Stable artifacts: `artifacts/<run_id>/` layout and JSON payloads.
* Stable CLI JSON output schema (see docs).

[Back to top](#top)

---

<a id="docs--resources"></a>

## Docs & Resources

Start here:

* **Getting Started**: https://bijux.github.io/agentic-proteins/overview/
* **CLI Reference**: https://bijux.github.io/agentic-proteins/cli/cli/
* **Architecture**: https://bijux.github.io/agentic-proteins/architecture/architecture/
* **Concepts**: https://bijux.github.io/agentic-proteins/concepts/terminology/

* **Site**: https://bijux.github.io/agentic-proteins/
* **Changelog**: https://github.com/bijux/agentic-proteins/blob/main/CHANGELOG.md
* **Repository**: https://github.com/bijux/agentic-proteins
* **Issues**: https://github.com/bijux/agentic-proteins/issues
* **Security**: https://github.com/bijux/agentic-proteins/security/advisories/new

[Back to top](#top)

---

<a id="contributing"></a>

## Contributing

See **[CONTRIBUTING.md](https://github.com/bijux/agentic-proteins/blob/main/CONTRIBUTING.md)** for setup, style, and tests.

[Back to top](#top)

---

<a id="license"></a>

## License

Apache-2.0 — see **[LICENSE](https://github.com/bijux/agentic-proteins/blob/main/LICENSE)**.
© 2025 Bijan Mousavi.

[Back to top](#top)
