Otto: Intelligent Automation and LLM Integration for Frappe Framework

This repository profile is provided by osrepos.com, an open source repository discovery platform.

Otto: Intelligent Automation and LLM Integration for Frappe Framework

Summary

Otto is an early-stage Frappe Framework application designed to bring intelligent automation and large language model (LLM) capabilities to the Frappe ecosystem. It serves as both a standalone app for task automation and a library for seamless LLM integration within custom Frappe applications. This project aims to empower Frappe users with advanced AI functionalities for various business processes.

Repository Information

Analyzed by OSRepos on April 16, 2026

Topics

Click on any tag to explore related repositories

Use at your own risk

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.

Introduction

Otto is an innovative application built on the Frappe Framework, designed to introduce intelligent automation and advanced Large Language Model (LLM) capabilities into the Frappe ecosystem. While currently in its early stages of development, Otto aims to provide a robust framework for automating tasks, building custom AI assistants over Frappe apps, and facilitating LLM integrations. It functions both as a Frappe app with defined doctypes for managing tasks, tools, and LLMs, and as a powerful library for developers to embed LLM interactions directly into their custom Frappe solutions.

Installation

To install Otto, you will need a Frappe bench directory with a site already set up. Follow these commands in your bench directory:

# In your bench directory
bench get-app otto --branch develop
bench --site site-name install-app otto

After installation, you can configure API keys in the Otto Settings doctype and explore the available models and functionalities.

Examples

Otto's library provides a straightforward way to integrate LLMs into your Frappe applications. Here's a brief example demonstrating how to fetch a model, create a session, interact with it, and handle tool use:

import otto.lib as otto
from otto.lib.types import ToolUseUpdate


# 1. Fetch model matching some criteria
model = otto.get_model(supports_vision=True, size="Small", provider="OpenAI") # str model id


# 2. Create new session
session = otto.new(
    model=model,
    instruction="You are a helpful coding assistant",
    tools=[calculator_tool_schema],
)

# Save id to resume session later
session_id = session.id


# 3. Interact (streaming)
stream = session.interact("Calculate 15 * 23", stream=True)
for chunk in stream:
    print(chunk.get("text", ""), end="")
result = stream.item


# 4. Handle tool use
for tool in session.get_pending_tool_use():
    result = execute_tool(tool.name, tool.args) # execute tool

    # update session with tool result
    session.update_tool_use(
        ToolUseUpdate(id=tool.id, status="success", result=result)
    )

# Continue session with tool result
session.interact(stream=False)


# 5. Load and resume interaction (non-streaming)
session = otto.load(session_id)
response, _ = session.interact("What was the result?", stream=False)
if response:
    print(response["content"])

For more detailed examples and comprehensive documentation, refer to the Otto Library Documentation.

Why Use Otto?

Otto offers a compelling solution for organizations looking to enhance their Frappe applications with AI-driven capabilities. Its primary benefits include:

  • Intelligent Task Automation: Automate routine tasks within Frappe using defined "Otto Tasks" and "Otto Tools," triggered manually or by doctype lifecycle events.
  • Custom AI Assistants: Build tailored assistants that can interact with and leverage data from your Frappe apps, providing intelligent support and insights.
  • Seamless LLM Integration: Developers can easily integrate various Large Language Models into their custom Frappe apps using Otto's flexible library, abstracting away the complexities of LLM interaction.
  • Enhanced Business Processes: By automating responses and providing intelligent insights, Otto can significantly improve efficiency, as demonstrated by its internal use case in handling support tickets for Frappe's Helpdesk.
  • Future-Proofing: As part of Frappe's broader initiative to explore state-of-the-art AI, Otto positions Frappe apps at the forefront of AI innovation.

Links

Related repositories

Similar repositories that may be relevant next.

Open Index: A Deterministic Memory Layer for Your AI Agents

Open Index: A Deterministic Memory Layer for Your AI Agents

September 16, 2026

Open Index is a powerful tool for building domain-specific, accurate, and structured data that AI agents can effectively operate on. It enables the creation of a "brain," a searchable and continuously improving context graph tailored to any domain. This system ensures agents have access to reliable, up-to-date information, enhancing their capabilities and decision-making processes.

AI AgentsKnowledge GraphAgent Memory
tooltrim: Drastically Reduce LLM Agent Tool Output Tokens, Improve Accuracy

tooltrim: Drastically Reduce LLM Agent Tool Output Tokens, Improve Accuracy

September 16, 2026

tooltrim provides drop-in compression for LLM agent tool outputs, drastically cutting tokens while often improving answer accuracy. This provider-agnostic solution offers content-aware compression, faithfulness benchmarks, and seamless integration with popular frameworks or as an OpenAI-compatible proxy.

PythonLLM AgentsContext Compression
AgentShield: Python Firewall for AI Agent Spend Control

AgentShield: Python Firewall for AI Agent Spend Control

September 16, 2026

AgentShield is a pure Python library designed to prevent runaway AI agents from exceeding budget limits. It offers 10 composable spend rules, evaluated in under 1ms, providing robust cost control. Although its core development has transitioned to sipi.bot, the AgentShield Python package remains available for existing users and its test fixtures are open-source.

PythonAI AgentsCost Control
DA-Forge: Streamlining Declarative Agent Creation for Copilot Notebooks

DA-Forge: Streamlining Declarative Agent Creation for Copilot Notebooks

September 12, 2026

DA-Forge is a Python-based tool by Microsoft designed to automate the creation and deployment of Declarative Agents for Copilot Notebooks. It significantly reduces the manual effort and time required to set up AI assistants with specific grounding references, transforming an 85-minute process into just a few minutes. This tool is essential for developers and researchers working with Copilot Notebooks and Declarative Agents.

PythonMicrosoft 365Copilot

Source repository

Open the original repository on GitHub.

20 counted GitHub visits

View on GitHub
OS
OSRepos

Analysis and discovery of open source repositories. Find interesting projects and follow their updates.

Monitor your website with YourWebsiteScore

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of third-party repository code is at your own risk. Always review source code, dependencies, licenses, and security implications before running anything.

© 2025 OSRepos. Built with Nuxt 3 and lots of ❤️