Frappe Technologies
Screenshot 2023-10-25 at 10.48.41 PM.png
Raven v2 by The Commit Company
No-code AI Chatbots, Workspaces, Custom Emojis, and much more!
author

By

Nikhil Kothari

·

17 February 2025

·

6

min read

We’ve been hard at work making Raven even more powerful, intuitive, and easy to use. Whether you’re managing teams, collaborating with customers, or just streamlining your workflows, these new features are designed to make your life easier. Let’s break it all down!

AI Agents

With Raven, you can now connect OpenAI’s large language models (LLMs) to your Frappe apps—no coding required. Using OpenAI’s Assistants API behind the scenes, you can create “agents” that follow specific instructions and perform predefined tasks.

At The Commit Company, for example, we’ve built an agent that processes invoices and creates Purchase Invoices in ERPNext. The agent is configured to extract the supplier ID from the GST number on the invoice and generate invoices using specific items from the Item doctype. We’ve defined “functions” for tasks like fetching a supplier based on a GST number or creating a purchase invoice. All of this is set up through the user interface, with instructions written in plain English. This makes it easy to create agents tailored to your unique needs.

Security is built into the system: agents can only access documents and APIs that the end user has permission to use. If a user doesn’t have access to create a specific document, the agent won’t either.
What’s more, the instructions for these agents can be dynamic. You can use Jinja tags to pass in variables like the current user’s name, ID, or today’s date. To make this even easier, we’ve included commonly used Jinja variables directly in the Raven interface.

For instance, we’ve created an agent to handle employee expense claims. Employees can send photos of receipts or invoices to the agent, which then creates an expense claim. If the employee sends additional images or PDFs in the same thread, the agent updates the expense claim with the new amounts and attaches the files directly to the document.

But how does the agent know the employee’s ID? Simple. We include this instruction in the agent’s configuration: “The user's name is {{ full_name }}, and their employee ID is {{ employee_id }}. If the bill doesn’t include a date, use {{ frappe.utils.today() }} as the current date.”

Looking ahead, we’re exploring support for other large language models. We’re also researching ways to fine-tune open-source models so they can integrate seamlessly with ERPNext and other Frappe apps without having to write complex instructions in the first place.

Workspaces

Workspaces in Raven

You can now create separate spaces on Raven with each space having its own set of channels.
This makes it easy to manage user permissions when you would like to have certain users only access channels in a given space, but not others. For example, you could create a space for your customers where your customers can interact on multiple channels, and still maintain a private space for your internal communication needs. If you’re in a multi-company setup, you could set a workspace per company so that employees belonging to that company can only access channels in their designated workspace. Speaking of companies, the Frappe HR integration now supports creating channels per department in their own distinct workspace based on the company.

With the workspace feature, we have also made a lot of improvements on performance. Since workspace or channel members don’t change often, these are always read from the cache - this not only makes network requests faster, but also consumes less compute resources.

Document Alerts

This was one of the most requested features by the community and we’re glad to announce that it’s finally here! Similar to the inbuilt notifications feature in Frappe, you can now set up notifications for when certain documents are created or modified. These notifications can be sent to either specific users or channels.

For example, we have set up a notification to send a message to the #finance channel whenever an Expense Claim is created by an employee. These notifications can use Jinja to embed fields in the message content and automatically come up with a document preview in the chat with options to print or apply workflow actions directly from Raven. Since these messages are linked to the document, you would also be able to view the message on the document’s timeline in the Desk interface.

You can even set conditions for when notifications are sent. For instance, when an expense claim is approved, a direct message can be sent to the employee from the bot, notifying them of the update.

But what if you want to send a notification to a user but the document doesn’t have a “User” field? No problem! You can customize the recipient using Jinja. In the Expense Claim example, we used Jinja to fetch the user ID from the associated Employee record.

Customizable document previews

Document Preview Customisations

In addition to document alerts, you can now attach documents to your messages and share them with your team. Use the “Send a Raven” button in the Desk interface or directly from the chat input.

To make this feature even more powerful, you can customize which document fields are displayed in the chat preview. Simply navigate to Settings > Document Previews and select the fields you want to show. This works seamlessly with automated document alerts, ensuring your team sees only the most relevant information.

Message Action Builder

Ever needed to create a support ticket or project issue directly from a message? With Message Actions, you can do just that.

For example, if you have a workspace where your customers engage with your team, and you need a quick way to copy the message and create a support ticket, you can create a Message Action to map the message content to a support ticket in Frappe Helpdesk. Use Jinja to format values or fetch data, such as the customer ID from the sender’s user ID. Once set up, simply right-click on any message, select the Message Action, and a popup will appear with all the details pre-filled. Submit the form, and a support ticket is created instantly in Frappe Helpdesk.

This feature is highly customizable—you can create any DocType or even call an API to generate multiple documents or interact with external services.

Custom Emojis

Custom Emojis to react to messages

Express yourself in more ways than ever with custom emojis. Simply upload an image/GIF on Raven, and use it across the app when reacting to messages.

More Layout Options

Layout options in Raven

To enhance readability, users can now choose between different chat layouts. Whether you prefer a left-right layout or the traditional format, you can set your preference in Settings, and it will sync across both web and mobile.

More New Features

YouTube Embedding: Sharing a YouTube link now displays an embedded video player instead of a plain link preview.

Pinned Messages: You can now pin important messages in a channel for easy reference.

Embedded Timestamps: If you have users across multiple timezones, you can now send a message with embedded timestamps.

For example, you could type “Let’s meet tomorrow at 9AM” and click the timestamp button in the editor - this will automatically convert “9AM” to a timestamp. When users in a different timezone see your message, they would simply hover over “9AM” and see the time in their local timezone.

On the Radar

We’re building a new native mobile app! This project has been in the works for a long time. It’s built using React Native and frappe-react-sdk and is structured to share around 40% of the code that’s already there on the web app (we’ll share more on the tech stuff during Frappe Build!) We expect to release the app on the stores by March (subject to approval from Apple and Google 🙂 )

We’re also working on a push notification relay server tailored to Raven’s use case. This would also cater to users who are self hosting the app and cannot use Frappe Cloud’s push notification relay service.

Published by

Nikhil Kothari

on

17 February 2025
1

Share

Add your comment

Success!

Error

Comments

M
Mohammed Abdul Hafeez

· 

February 20, 2025

Cool new features update and can’t wait more to see native mobile app.

Discussion

image7f7d4e.png

Paul Mugambi

·

3 days

ago

Beautiful read, and an insight into an individual I respect and have learned a lot from. Am inspired to trust the process and never give up.

image4c43d6.png

Anna Dane

·

5 days

ago

I must say this is a really amazing post, and for some of my friends who provide Best British Assignment Help, I must recommend this post to them.

Add your comment

Comment