# Amazon Nova Act SDK: Python Agents That Drive a Real Browser

> Nova Act is a Python SDK for browser automation driven by natural language prompts, backed by an AWS service for deploying and monitoring fleets of agents. It is not a Playwright replacement, and the README is explicit about what it will not do.

**aws/nova-act** — Amazon Nova Act is an AWS service for building and deploying highly reliable AI agents that automate UI-based workflows at scale.

- Repository: https://github.com/aws/nova-act
- Website: https://nova.amazon.com/act
- Stars: 916 · Forks: 148
- Language: Python
- License: Apache-2.0
- Published: 2026-09-10 · Updated: 2026-09-10 · Language: en
- Canonical page: https://hysenlabs.com/projects/aws-nova-act

## The problem Nova Act solves, and who it is actually for

Most browser automation breaks for one reason: the page changes and the selector stops matching. Nova Act takes a different position. Instead of writing a selector, you write a sentence. The README's own quick start asks for flights from Boston to Wolf on Feb 22nd, and the SDK is responsible for figuring out which fields to fill and which buttons to press. That is the whole value proposition, and it is worth being precise about who benefits.

The target user is a team that already has a repetitive UI workflow, usually one with no API behind it. Insurance portals, internal admin consoles, supplier dashboards, and government filing sites are the shapes that fit. The workflow has to be describable in English, because the README states plainly that Nova Act supports English. If your process is a sequence of clicks that a human can narrate, it is a candidate. If it depends on reading a pixel position or a specific DOM attribute, it is not.

The second audience is operations rather than engineering. The README describes a web playground at nova.amazon.com/act for exploration, an IDE extension for chat-to-script generation and step-by-step testing, and the AWS Console for monitoring deployed workflows. That path, from playground to IDE to deployed fleet, is the product. The Python SDK is the middle of it, not the whole of it.

## How a Nova Act run actually executes

A NovaAct instance is a context manager around a browser session. When you construct it, you pass a starting_page. When the context manager exits, Chrome closes. Between those two points, each act() call sends the current page state and your instruction to the model, which decides what to do next.

The browser itself is Playwright underneath. That is visible in the dependency list, which pins playwright between 1.54.0 and 1.56.0, and in the setup step that runs playwright install chrome. Nova Act does not have permission to install Google Chrome for you; the README says it works best with Chrome but will fall back to Chromium if you skip that step. The first run can take one to two minutes because Playwright modules are installed at that point, and the README notes this can be toggled off with the NOVA_ACT_SKIP_PLAYWRIGHT_INSTALL environment variable.

The control flow is prompt, observe, act, repeat. Because the model is in the loop, the README warns against touching the browser while an act() call is running. The underlying model will not know what you changed. That single sentence tells you more about the architecture than any diagram: the agent holds a model of the page, and your hands on the keyboard invalidate it.

Escalation is built in. The README describes Nova Act completing repetitive UI workflows and escalating to a human supervisor when appropriate, which is the human-in-the-loop section of the documentation. For a workflow that occasionally hits an ambiguous screen, that is the difference between a script that fails and a queue that a person can clear.

## Installing nova-act and running your first prompt

The package is on PyPI under the name nova-act. The README's installation section gives a single command, and the upgrade notice at the top of the file is worth reading before you start: versions older than 3.0 are no longer supported, and users are told to upgrade to receive security updates and new features.

```bash
pip install nova-act
pip show nova-act
```

The second command prints the installed version. If it reports anything below 3.0, run pip install --upgrade nova-act as the README instructs. Python 3.10 or above is required, and the supported operating systems are MacOS Sierra and later, Ubuntu 22.04 and later, WSL2, or Windows 10 and later.

Authentication comes next. The simplest route is an API key generated at https://nova.amazon.com/act, exported as an environment variable.

```sh
export NOVA_ACT_API_KEY="your_api_key"
```

With the key in place, the smallest working script is four lines. The README uses a practice site as the starting page.

```python
from nova_act import NovaAct

with NovaAct(starting_page="https://nova.amazon.com/act/gym/next-dot/search") as nova:
    nova.act("Find flights from Boston to Wolf on Feb 22nd")
```

Running that opens Chrome, performs the task, and closes the browser. Progress appears as console log messages. If you prefer to poke at it by hand, the README shows an interactive mode where you call nova.start() and then issue act() calls from the Python REPL. In that mode ctrl+x exits an agent action while leaving the browser intact for another call; ctrl+c closes the browser instead.

The alternative to API key authentication is IAM. The README points to the Amazon Nova Act User Guide for details and notes that IAM credentials are used through the Workflow constructs, with the SDK instantiating a default boto session if AWS credentials are already configured in your environment.

## Where Nova Act stops being the right tool

The README has a Known limitations section, and captchas get their own entry in the table of contents. If your workflow sits behind a challenge that is designed to stop automation, this SDK is not the workaround. That is a product boundary, not a bug to be filed.

Cost and latency are the second constraint. Every act() call is a model invocation against a hosted service. A workflow with forty steps is not forty milliseconds of DOM manipulation; it is forty round trips. The README does not publish per-call latency figures, so the honest position is that you should measure your own workflow rather than assume a number. What the README does tell you is that the very first run carries an extra one to two minute setup cost for Playwright.

The third case is anything that needs to be deterministic and auditable at the selector level. Nova Act is not a drop-in replacement for a hand-written Playwright test suite, and the related searches that pair the two are asking the wrong question. A Playwright test asserts on a locator you control. A Nova Act run asserts on a model's interpretation of a page. When a compliance reviewer asks why the agent clicked a particular checkbox, the answer is a prompt and a trace, not a line number.

Finally, there is the preview label. The README marks tool use, including external API calls, remote MCP, and agentic frameworks such as Strands Agents, as preview. Building a production dependency on a preview surface means accepting that the interface can move.

## Nova Act against browser-use and hand-written Playwright

The closest comparison people search for is Nova Act versus browser-use. Both put a language model in charge of a browser, and both let you describe a task in prose. The difference that matters for adoption is what sits behind the SDK. Nova Act is one component of an AWS service: the README describes deploying workflows to AWS and monitoring them in the AWS Console, with IAM authentication as the path for that deployment. A standalone agent library gives you a process you run yourself. If you want a fleet with a console and an escalation queue, that service layer is the reason to pick Nova Act. If you want a library you can embed in an existing job runner with no AWS account, it is a reason not to.

Against Playwright, the difference is the unit of work. Playwright's unit is a locator and an assertion, and it is deterministic and fast. Nova Act's unit is a sentence and a model decision, and it absorbs page changes that would break a locator. The README's own quick start uses a practice site, which is the honest framing: the SDK is aimed at workflows where the page is not yours to control.

Strands Agents appears in the README as an integration rather than a rival. Nova Act can call out to agentic frameworks, so the two can sit in the same system with Nova Act owning the browser and Strands owning the surrounding orchestration.

## Parallel sessions, persistence, secrets, and what you can inspect afterwards

The table of contents lists capabilities that decide whether this works at fleet scale. Running multiple sessions in parallel is supported, and persisting browser sessions means an agent can resume with an authenticated state rather than logging in again. Handling sensitive data has its own section, and the README points at entering sensitive information as a distinct concern rather than leaving it to the prompt.

Observability is covered by logging and viewing traces, recording a video of a session, and storing session data in your own Amazon S3 bucket. For a workflow that a supervisor has to review after an escalation, a recorded session is the artifact that makes the review possible. Headless runs can be viewed too, which matters because a headless agent that fails silently is the worst debugging experience there is.

Operationally, the constructor exposes a browser user agent setting, proxy configuration, and a time worked tracking utility. The proxy option is the one to check early if your target site restricts by geography. The README also documents working with browser dialogs, picking dates, searching on a site, and file upload and download, which are the four things that break naive automation most often.

One packaging detail worth knowing: the project ships a CLI. The pyproject.toml declares a console script named act pointing at nova_act.cli.cli:main, and the CLI dependencies are a separate optional extra. Installing the base package does not pull them in.

## Licence, upgrade cost, and the support window

The repository is Apache-2.0, declared both in the repository metadata and in the pyproject.toml license field. That covers the SDK source. It does not cover the hosted service. The README draws a clear line: using the playground or developer tools with API key authentication puts you under the nova.amazon.com Terms of Use, while IAM authentication and deployment to the Nova Act AWS service put you under the AWS Service Terms or your Customer Agreement. Two different agreements depending on how you authenticate. Read the one that applies to you; this is a description of what the README says, not legal advice.

Upgrade cost is real and the README treats it that way. Versions older than 3.0 are unsupported, and the documented upgrade path is pip install --upgrade nova-act followed by pip show nova-act to confirm. The release history shows frequent version bumps, with v3.4.187.0 on 2026-04-30, v3.3.316.0 on 2026-04-13, and v3.3.96.0 on 2026-04-01. That cadence means pinning is a decision you have to make deliberately. The repository's last push was on 2026-05-22, so the codebase is not archived, but the four months between that push and the most recent release date is worth noting if you are planning around a fixed support window.

The dependency list carries its own maintenance load. Playwright is pinned to a narrow range, strands-agents and strands-agents-tools are pinned with upper bounds, and the file's first line is the word Deprecated. The first line of requirements.txt reads Deprecated, which is an unusual thing to find at the top of a dependency manifest and is a signal to check how dependencies are actually resolved before you build a release process around it.

## Conclusion

Adopt Nova Act if your workflow lives in a browser, the steps are stable enough to describe in English, and you accept that the SDK is preview software tied to an AWS account or an API key from nova.amazon.com/act. Do not adopt it if you need deterministic selectors, offline operation, or a general-purpose scraper, because the act() call is a model invocation and the README itself names captchas as a known limitation. Before committing, verify three things: that your Python is 3.10 or above, that the version from pip show nova-act is 3.0 or later, and whether your traffic pattern fits the proxy and user agent options the constructor exposes.

## FAQ

### How do I use Nova Act?

Install the SDK with pip install nova-act, set NOVA_ACT_API_KEY, then create a NovaAct instance with a starting_page and call act() with an instruction. The README's quick start does exactly that in four lines.

### What is the Nova Act SDK?

It is a Python SDK for Amazon Nova Act, an AWS service for building AI agents that automate UI workflows in the browser. You define workflows by combining natural language prompts with Python code.

### How do I use Amazon Nova Act?

Start in the web playground at nova.amazon.com/act, develop in your IDE, deploy to AWS, and monitor the workflows in the AWS Console. The README presents that as the full path, with the Python SDK in the middle.

### What is Nova Act on AWS?

It is an AWS service for building and managing fleets of reliable AI agents that automate production UI workflows at scale. The SDK is the Python client for it, and IAM authentication is the path used for deploying workflows to the service.

### What is Nova Act from Amazon?

Amazon Nova Act completes repetitive UI workflows in the browser and escalates to a human supervisor when appropriate. It is available as an AWS service with a Python SDK, an IDE extension, and a web playground.

### How does Nova Act compare with browser-use?

Both put a language model in charge of a browser and accept prose instructions. Nova Act is one component of an AWS service, with deployment to AWS and monitoring in the AWS Console, while a standalone agent library gives you a process you run yourself.

## Sources

- [aws/nova-act on GitHub](https://github.com/aws/nova-act)
- [License: Apache-2.0](https://github.com/aws/nova-act/blob/main/LICENSE)
- [Project website](https://nova.amazon.com/act)
- [README](https://github.com/aws/nova-act/blob/main/README.md)
- [Releases](https://github.com/aws/nova-act/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/aws-nova-act
