Skip to main content

Nutaan ERP AI Agent SDK - Autonomous AI agent for ERPNext/Frappe with 14 built-in tools

Project description

Nutaan ERP AI Agent SDK

Autonomous AI agent for ERPNext/Frappe automation with 14 built-in tools.

PyPI version Python 3.8+ License: MIT

Core SDK for autonomous AI agent functionality. This package provides:

  • Agent Management: Create and manage AI agents with Google Gemini
  • 14 Built-in Tools: Navigate, create documents, fill forms, and more
  • LangChain Integration: Built on LangChain for robust agent orchestration
  • Intent Engine: Smart clarification for vague requests
  • Action Tracking: Automatic session tracking and reporting
  • Context Building: Utilities for ERPNext/Frappe context

Installation

From PyPI (Recommended)

pip install nutaan-erp

For Development (Local)

pip install -e /path/to/nutaan-erp/sdk

For Production (Git)

pip install git+https://github.com/tecosys/nutaan-erp.git#subdirectory=sdk

Quick Start

from nutaan_erp import AgentManager, AgentConfig

# Create configuration
config = AgentConfig(
    api_key="your-gemini-api-key",
    model_name="gemini-2.0-flash-exp",
    temperature=0.1,
    max_tokens=4000
)

# Create agent manager
manager = AgentManager(config)

# Build context (example for Frappe/ERPNext)
from nutaan_erp.utils import build_frappe_context

context = build_frappe_context(
    user="john@example.com",
    current_path="/app/sales-order",
    roles=["Sales User", "Sales Manager"],
    user_full_name="John Doe"
)

# Execute agent
result = manager.execute(
    message="Create a new Sales Order for customer ABC Corp",
    context=context,
    history=[]
)

print(result)

Features

Tools

The SDK includes 14 tools:

  1. navigate - Navigate to doctypes/forms
  2. create_doc - Create new documents
  3. set_field - Set form field values
  4. click_button - Click buttons on page
  5. analyze_screen - Analyze current page state
  6. scroll_page - Scroll page up/down
  7. add_table_row - Add rows to child tables
  8. set_table_field - Set child table field values
  9. get_field_value - Get field values
  10. select_option - Select dropdown options
  11. get_validation_errors - Check validation errors
  12. search_doctype - Search for records in a DocType
  13. get_doctype_list - Get list of available records
  14. validate_doctype_exists - Check if a specific record exists

Configuration

config = AgentConfig(
    api_key="...",              # Required
    model_name="...",           # Default: gemini-2.0-flash-exp
    temperature=0.1,            # Default: 0.1
    max_tokens=4000,            # Default: 4000
    max_iterations=10,          # Default: 10
    timeout=300                 # Default: 300 seconds
)

Architecture

nutaan_erp/
├── core/
│   ├── agent.py       # AgentManager
│   ├── config.py      # AgentConfig
│   └── tools.py       # Tool definitions
├── integrations/
│   └── langchain.py   # LangChain wrapper
└── utils/
    └── context.py     # Context building

Requirements

  • Python >= 3.8
  • langchain >= 0.3.0
  • langchain-google-genai >= 2.0.0
  • langchain-core >= 0.3.0

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nutaan_erp-1.0.0-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file nutaan_erp-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: nutaan_erp-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for nutaan_erp-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 705126516c643818dc869b77ce386ae6302cfbeace093cba0063942ac018e779
MD5 1ea7fac296b8258b9857e97da72f118a
BLAKE2b-256 23826a3905533a585a035d2b61dd022dc224064308d36c444e6b22a81e0ae1ec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page