Skip to content

NaradaAI/narada-python-sdk

Repository files navigation

NARADA AI Logo.

Computer Use for Agentic Process Automation!

Sign Up Documentation Twitter Follow LinkedIn Follow

The official Narada Python SDK that helps you launch browsers and run tasks with Narada UI agents.

Installation

pip install narada

Quick Start

Important: The first time Narada opens the automated browser, you will need to manually install the Narada Enterprise extension and log in to your Narada account.

After installation and login, create a Narada API Key (see this link for instructions) and set the following environment variable:

export NARADA_API_KEY=<YOUR KEY>

That's it. Now you can run the following code to create a browser environment and ask an agent to download a file for you from arxiv:

import asyncio

from narada import Agent, BrowserEnvironment


async def main() -> None:
    # Create the browser environment. It initializes lazily on the first action.
    env = BrowserEnvironment()
    agent = Agent(environment=env)

    try:
        # Run a task in this browser environment.
        response = await agent.run(
            prompt='Search for "LLM Compiler" on Google and open the first arXiv paper on the results page, then open the PDF. Then download the PDF of the paper.',
            # Optionally generate a GIF of the agent's actions.
            generate_gif=True,
        )

        print("Response:", response.model_dump_json(indent=2))
    finally:
        await env.close()


if __name__ == "__main__":
    asyncio.run(main())

This would then result in the following trajectory:

File Download Example

You can use the SDK to launch browsers and run automated tasks using natural language instructions. For more examples and code samples, please explore the examples/ folder in this repository.

Migration note

This version introduces a non-backward-compatible, agent-centered API:

  • Create an execution target with an environment, such as BrowserEnvironment, CloudBrowserEnvironment, RemoteBrowserEnvironment, or LambdaEnvironment.
  • Create an Agent(environment=env, kind=...) and call await agent.run(prompt=...).
  • Browser actions such as go_to_url, agentic_selector, and sheet operations are now methods on Agent.
  • Environments keep lifecycle/bookkeeping APIs such as start(), close(), browser_window_id, and cloud_browser_session_id.

Features

  • Natural Language Control: Send instructions in plain English to control browser actions
  • Parallel Execution: Run multiple browser tasks simultaneously across different windows
  • Error Handling: Built-in timeout handling and retry mechanisms
  • Action Recording: Generate GIFs of agent actions for debugging and documentation
  • Async Support: Full async/await support for efficient operations

Key Capabilities

  • Web Search & Navigation: Automatically search, click links, and navigate websites
  • Data Extraction: Extract information from web pages using AI understanding
  • Form Interaction: Fill out forms and interact with web elements
  • File Operations: Download files and handle web-based documents
  • Multi-window Management: Coordinate tasks across multiple browser instances

License

This project is licensed under the Apache 2.0 License.

Support

For questions, issues, or support, please contact: support@narada.ai

Citation

We appreciate it if you could cite Narada if you found it useful for your project.

@software{narada_ai2025,
  author = {Narada AI},
  title = {Narada AI: Agentic Process Automation for Enterprise},
  year = {2025},
  publisher = {GitHub},
  url = {https://github.com/NaradaAI/narada-python-sdk}
}
Made with ❤️ in Berkeley, CA.

About

Computer Use for Agentic Process Automation

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages