📱

Get Our Mobile App

Take your business learning on the go!

Download on the App StoreGet it on Google Play

NOTION CUSTOM AGENTS ARE HERE! Everything You Need To Know

Matthias Frank1:01:28

Transcription

Notion custom agents are here. This was Notion's biggest announcement last year, and now they are finally available. We have been testing this feature over the past months in early access, and let me tell you, it's really, really cool. We have a lot of things to cover here. First, what are custom agents? Second, how can you create them? Third, we have some really important tips and tricks. And then there's actually a big pricing update that we need to talk about for Notion. Last but not least, we are wrapping it up with a series of use cases that you can try out today. All of this in one video. So, let's go right ahead and jump in.

So first up, what are Notion custom agents? The easiest way to understand custom agents is to compare them to your personal agent. Your personal agent is the one that lives in this bubble, right? If you click on here and you chat with that one, mine is called Dwight. Or if you click on... your sidebar and then go to Notion AI, that is your personal agent. Your personal agent is very powerful, but it has sort of one big drawback. It is purely reactive, right? It only works when you call it. You need to tell your personal agent to, "Hey, please look at my to-do list." You need to tell it to, "you know, please process this part of my work." The... new custom agents, on the other hand, and that's sort of like the biggest difference, right? They work on triggers. So you can say, "Hey, please spring to life and do something whenever I get an email, whenever an event is scheduled, or just regularly, write every Monday morning."

The second big difference is that your personal agent can do anything that you can do, right? It can take any actions that you could do in Notion, and it can access any kind of information that you can access, which is great because it follows permissions, but sometimes, right, you want to have a bit more granular control, and that's exactly what custom agents allow you for. For custom agents, you can scope their abilities and their permissions very specifically. For example, you can give it access to only one database, and that, of course, will greatly increase the accuracy, right, because it will only ever go look in one place, and you don't risk that it gets distracted by something elsewhere in the system.

And last but certainly not least, your personal agent, like the name indicates, is only available to you. Of course, you can ask your agent to execute tasks for others, right? You can ask it to help Mark draft that briefing, right, based on the meeting, but again, that only works retroactively. So, you know, now you start managing other people's work; that's a lot of effort. And on the other hand, when it comes to your instructions, right, one of the biggest drawbacks that we currently have with personal agents is that we want to sort of like have a system prompt that includes best practices for everyone, and we need to do it in a little bit of a hacky way, right? We roll these out currently in organizations through sync blocks so that all of these personal agents somehow operate in a similar way, but with custom agents, you don't have that. Because with custom agents, you can either keep them to yourself or you can share them, right, and make them available to the whole organization so that they work for everyone.

Now, it's time to set up your first custom agent. You can find custom agents either through your settings or... through your sidebar, right? So, you see one of the areas here is agents. I can pop that up, and I see some of the agents that I have built. I can also click on the three dots, right, to look at sort of like... you know, define like how many of them should show up there as always in the sidebar, and we can create a new agent. That's what we're going to do. So, let's click on plus.

Now, if you create a new agent, you have a few options. The first one is you can actually start with a template, right? So, Notion is working on integrating agents into the marketplace. So, just like you will have templates for like specific parts of Notion, you will have templates for specific agents. They're not bad, right? You can definitely go ahead and sort of like look at how they work. They're also quite nice for inspiration. The second option is that you ask AI to create an agent. This is actually really cool because if you have sort of an idea of what you want to do, right, but don't know exactly how to set up, then this is the perfect place to do so. And the cool twist is that you can do that either here, right after you've clicked on plus, or you can actually also ask your personal agent to help you set something up. Right? Remember, personal agents can do anything that you can do. And since you can set up an AI agent, your personal agent can also set up one of these custom agents. But if you know these kind of videos, you know that when we first look at these things, we want to, you know, have full control over everything to really understand how it works, which is why we're going to click here in the top right corner on "create blank," which just gives us a new agent, and we have full control over everything.

Let's take a moment to look at the UI here. First up, Notion will always give your... agent this cute little illustration. Absolutely love it. You can click on that, right? And you can... modify it by changing the shape... and the color if you want to. You could also go for an emoji, but I really love the way that these have come together. And we see that we have this chat window, right? So, right off the bat, we can simply talk to our AI agent and again, like ask it to set it up itself, sort of, right? We can do that. But we want to ignore this left part for a moment and focus on the right part, the settings, right? And you, if you ever collapse them, right? So, if you have built already an agent and you want to get back to them, you can do so, right? Through the settings options here, right? So, a finished... agent will look like this, right? It has sort of its own chat window that you can interact with. Um, different, right, to your personal agent. Um, but going through settings will always allow you to change how it operates. Also particularly useful, right, if you used a template to start and you want to inspect how is it actually set up or if you ask the AI to create one for you.

The most exciting settings probably are right at the top: triggers. This is, right, what sets them apart so much from your personal agent because we can define when they run. They have, of course, the default, right, "new chat with Radiant Virtual" also. So, this is basically the same mode that you have for your personal assistant. You can always chat with them, right, for them to spring to life. And there might be some situations, right, if you say, for example, "hey, I want to create an agent that I have optimized for a specific task." Think of it similar to like projects, right, in Claude or ChatGPT. Then you can do that, right, give it that context, and then open that chat, and then we'll have only that available so you can sort of scope your personal agent, right, to specific use cases. But I think the real sweet spot are all the triggers that are available to have this run autonomously. So, let's click on "add trigger" and see what all we can do.

First up, the easiest one, right, on a schedule. You can tell this to run regularly. For example, right, you could create a daily briefing for you every day at 9:00 a.m., right? "Please look at my to-do list, look at my calendar, and then send me a little briefing." It's one of the use cases, right, that we want to touch on later, and it's the simplest one. Simply go in here, right, and you have the usual scheduling available in Notion to the time when it should work.

Now, the really exciting stuff, in my opinion, is possible through the other app triggers. So for now, right, there's a small selection, but they are already quite powerful, and I only expect them to increase further, right? Notion keeps building more AI connectors with other tools. So, I assume in the future, right, we'll be able to trigger agents even on more things. But for now, we have Slack. Um, so when a message is posted to a certain... channel, when there's an emoji reaction added to a message (super cool), or when the agent is mentioned, we'll talk about that in a moment. In Notion, we can trigger based on comments to a page, right? Pages added to a database, property updates, or pages removed from a database, which again gives you a ton of flexibility. For example, right, let's assume you have incoming... form submissions from someone, right? You could build an agent that reads that form, right, whenever a page is added to the database, and then automatically routes that to the right location. If it's a bug request, right, it might route it to the team or the person responsible for bugs. If it is a feature request, right, it might ping the person who's working on the roadmap, just like to give you a few ideas. And then, write Notion Calendar and Notion Mail, right? So, in Calendar, we can trigger this based on events creation, updated, and canceled. And for Mail, we can do it based on emails received, sent, um, or labels applied. And most of these triggers are really powerful, right? So, if we, for example, click into "new emails sent or received," right? We can further... sorry, I don't have it connected here. I'll show you in a second on a different account. Uh, we can further narrow down to, for example, only specific subject lines, right, giving you a ton of control over this. For now, let's continue our UI tour. Just one last note on triggers: you can combine any number of them, right? So, this could run on a schedule and whenever, you know, you receive an email. For example, instructions is the sweet spot, right? And you know this from pretty much all the AI tools. Here's where you add your prompt, and we'll talk a bit about prompting strategy in a moment, but basically, right? You want to follow all our usual guidance. Uh, remember, we have a full video that walks you through sort of like the best practices for getting the most out of Notion AI. Those tips are geared towards the personal one, but it works just as well here. So, in instructions, right, that's where you write your prompt.

And then again, another really exciting session... section, the tools and access, right? What is the agent supposed to be able to do? Should it be able to browse the web? Right? Your personal assistant by default can, but maybe you don't want the... custom agent to take into account, you know, what it finds there. Is it supposed to access pages in Notion? Right? Right now, by default, it doesn't have access to anything in the workspace. So, you can go ahead, right, and say, "Hey, yes, give it access to everything, right? I want you to be able to view every single page." Or you could now go in and give it access to specific things. So, for example, right, we could say, "hey, I want you to look at roundups, right, in my content hub." And this is something that, well, it shouldn't even just view. It should be able to edit the content, right? That way, when we then in our instructions tell it, "hey, please, you know, once a day or so, go into roundups and do something," it can interact with it. But if there's other information, maybe, right, maybe you have like certain brand guidelines, and you don't want the agent to mess with it, right? Then you could now load in your brand guidelines and tell it to, well, only view this. That's that, right? That's Notion.

And then we have the other tools, which again, right, is so cool that your agents can take actions elsewhere. For now, again, it's a little bit limited, but I expect that this will grow... a lot. Slack is super cool, right? It can already read your public channels. It can also reply, right? So, you could say, "hey, I want you to, I want to give you access to a specific channel, and I want you to be able to reply to that." Um, in general, right, you have read, you have read and reply, and then there's a third permission level, read and write, when it's supposed to do something proactively. We'll take a closer look at that during our use cases. And then we can add connections, right? So, you see that there's sort of like a lot of alpha ones, but your list might look a little bit different. This depends kind of on what Notion has already unlocked for your setup. But you can see we can have it interact with your calendar, right? So that way, it can do something to our schedule. It can work directly with our emails. So, draft or reply to one if we want to. Um, Slack, right, that's already connected. Amplitude, RTO, Figma, there's a lot of actions, right, that this can take. And you can also add custom MCP servers. So, the world is your oyster, right? These custom agents will be incredibly powerful at orchestrating actions across your whole system.

All right, we're nearly ready, right? Just two last small settings. One is the model picker, right? So, here you can predetermine which model should execute this. So, we can choose currently between Auto, Sonnet, Opus, and GPT-5. But Notion is super quick, right, with adding new models. So, expect this to be pretty much always an up-to-date list of what we have here. So, you can choose, right, how much power you need to execute a certain task.

And then last but not least, right, we have the advanced section where there's currently one thing: to allow list URLs. So, this is particularly relevant if you, or like, only relevant if you turn on web access, and if you then want to limit which pages it should access, right? So, for example, if you want it to browse the web, but you only wanted to look at your website, right, your company website, and sort of like some subpages there, then you can allow list that, and that means it will not access any other pages on the web.

All right, time to build actually our first little agent, and the example that we're going to tackle here is a little content market helper. So, one database that we have internally is this "Roundups" database, and basically, we have a different... automation that goes in once a week, grabs all my LinkedIn posts, and... adds them... to... Notion, right, so that we can post one of these content roundups... on our company channel. And as you see the output, right, from that... agent that does it online is like, the information is there, but this, this looks horrible, right? You, you can't post it anywhere. So, what we did in the past before custom agents were available... Um, we wrote a playbook, right? And we then once a week would go in and tell our personal agent, "hey, please format this accordingly," right? We have like this "how to format... weekly content roundups." It's one of our AI prompts, right? We have sort of the system where we separate specific workflows from the system prompt. And you can think of this as just a general AI SOP. And now with the custom agent, right, it's super easy to basically automate this process.

So, let's go back to our... little Radiant Virtual. So, let's rename him to, um, you know, my... weekly content... roundup or matcher, something like that. And then for my instructions, um, in this case, we can keep it super lightweight. It's actually one of the tips that we have, right? Sort of like taking, um, you know, instructions that are long and complex and that might be relevant in several... situations and actually have them in external pages. We'll talk about that in a second again. But basically, what we can now tell it is, um, "you are an expert... content... marketer tasked with formatting weekly content roundups." Um, "when you're... triggered, you will look at," and now I'm going to tell it what database it should look at. Right? So, I'm going to type "@" and we'll call on the "Roundups." Right? "You will look at Roundups and look for the last... added... entry. Then process this entry according to," right now I can call on my other, um, "Whoops." "how to how to format weekly content roundups... and according to format, and afterwards... set the status to process," right? I think there was a status, so I have to check it, but basically, that's sort of like the super simple, the most simplest prompt that you could write here, um, where you have all the information already externally. Of course, if you don't have this kind of structure already set up, right, you would need to tell it step by step how to operate, and we'll look at another prompt example in a moment, right? Where you sort of like explain this very granular because that's what you kind of have to do, right? You need to be very, very specific with what the agent is supposed to do because you want to avoid hidden assumptions. The biggest rig... reason, right, why any AI implementations fail is because we write very generic prompts, and then we leave a lot of it to the agent to determine how to execute, and that's usually a recipe for disaster. Right? In our AC/DC framework, the framework that we use to translate real-life processes into AI workflows, right? We are very, very specific about that. And again, we'll look at an example in a moment, but here we can get away with a very simple prompt because we have pretty much all the instructions outsourced already.

So, what else do we need? We need a trigger. We need to say on a schedule, "I want this to run, um, once a week," right? "I want this to run on Monday morning." Yep, that is perfect. Let's add this as a trigger. I don't need it to run when it's mentioned or something like that, right? That's pretty much all I want. And then under pages, uh, sorry, access, you see that the system is quite smart. Since I mentioned "Roundups" and "how to format weekly content update," um, this new one, right, that wasn't there previously, shows up there. Now it tells me, "well, you mentioned it, but it doesn't have access to it," right? So now I can tell, "well, I want this to view," right? And let's solve the example from before. "I don't want it to modify instructions," right? It should only view them. But of course, "Roundups" it should modify. Um, Slack it doesn't need in this case, right? We don't need any sort of like result, but we could have it post to a channel if we wanted to once it's done. And then for the model, we can leave this on auto. And now let's click on save.

Now, I could, of course, wait until Monday at 9:00 a.m. to see whether that works. But Notion has made it really easy to trigger and test these flows. So, we're just going to click on "run agent." And you see that will sort of like on my left side now, uh, send the first message like, "help me run weekly content draft format." And this, I think, is a very interesting phrasing because what this basically means now is that the agent will sort of check itself and check, "does it have the permissions that it needs, you know, is it set up correctly, um, can it execute on the tasks," right? So, it will tell me, "yes, um, this is the best way. The recurrence trigger is enabled and runs automatically. Amazing. Uh, should we run it now, right, and simulate the Monday a.m. trigger?" "Yes, that's what I want." But you saw the other options, right, were also to be a bit slower, right, and ask it to first show it, um, what it would actually do. So now let's see how it works, right? It will look at "Roundups." It will find the last entry, right, with the status "added," and now it will format it, and then after that, it will update the status. So, we can have a look at that and see what it did.

All right, there it is. Right, and we can see in the chat everything that it did, just like with the personal agent, right? We can sort of follow all the steps, and we see now, "okay, uh, it formulated the weekly roundup." So, let's have a look at the changes.

And there it is. Right, this looks much better. A, it, um, sets the status correctly to "formatted." It also figured out, right? I think I had something else as the name, but I figured out that this was the stage that it actually should use. And now we have it correctly formatted with headings, right, with sections, with nicely formatted links, the colors, pretty much everything that we had in our instructions.

Back in our custom agent, uh, when you navigate back to it, you now see this under "Recent Activity." And this is sort of super helpful for troubleshooting, right? Because this, of course, was now our test workflow, and everything worked fine. But a lot of times, right, when you create these agents, you will have to fine-tune them, and you have to figure out, well, where did it go wrong? And you can always go back, right, to any kind of chat history. Uh, you can continue now the conversation, right? So, it asks me, "does it look good, right?" "Do I want to change anything?" "Could, of course, ask it to, you know, you know, please go in and update your instructions," right? "I would like you to also send a Slack message, right, confirming once you're done something like this." Um, but you can also just go through, right, and figure out, "okay, when did this run?" Now, since this was a test run, right, a little less exciting, but once it runs on a schedule, right, or on autopilot, this is a great way to debug your agents.

Moving on to some really important tips and tricks around Notion custom agents. Tip number one is to share your agents with your team. Remember, this is one of the big benefits of these, right? They don't have to stay tied only to you. In order to share an agent, simply click on the share options in the top right corner. And here you see the usual settings, right? So, here I can now go ahead, and I could invite the whole team, right? You can invite individual users, of course, or everyone, right? If you have your workspace governance set up correctly through teams, you can simply invite "Team All," right, or that specific group to it, and then everyone has access. Alternatively, you can also publish your agent as a template, right? But this is sort of for external sharing, right, with people outside of your organization. So, within it, right, use the share options. One quick note here. Currently, it's a little bit weird the way Notion decides like what agents to show you here, right? It mostly shows you only your own agents. So, even if someone else shares an agent with you, it might not immediately pop up here. So, click on "more," right? And then you will see all the agents that you have currently access to, either, uh, the ones that you set up, right? Or the ones that have been shared with you or the whole workspace.

Tip number two is to actually turn agents off. Yes, you heard me right. We just spent all this time talking about how awesome custom agents are, but I highly, highly recommend that if you work in a team environment, you start by restricting them. And you can do so by going to your settings, features, Notion, and then under "Agents" here, control who can create agents. Highly recommend that you change this from "all workspace members" to "workspace owners only," and then later, after you've done your activation, to "workspace owners and added rules." The reason for that being is that while they are amazing, they can also create a lot of chaos, right? The fact that they run proactively without human interaction means they can do a ton of things in your workspace, and that makes it very important that you roll this out in a structured way. So, that's why my recommendation is to initially turn this off. Make sure you fully understand how they work and how they operate, and then slowly allow people to implement them. Now, the fact that you turn off sort of like who can create agents doesn't mean that no one else can use them. Remember, you can share your agents. So, what I would do, right, is I would put a process in place that anyone can request an agent, and then a workspace admin will go ahead and will set up that agent and then share that agent with that specific user so that they can further adapt it. That means you have now full control over which agents run around in your workspace, and you can make sure that you have all the education going on. Right? That's one of the key things that we do with all our clients who are already in the early beta and now also going forward with everyone where we implement it to make sure we have the right governance in place.

Speaking of what's happening, tip number three is to use the analytics, right, to keep tabs on what is happening and how much AI is used in your workspace. Again, only available in Enterprise right now, but Analytics AI, right? This will show you who's using how much AI, and particularly, um, like which agents, you know, execute how many steps. So, this will be quite useful for that.

Tip number four is all about permissions. Right? We already touched on this while we were building out our first agent, but it's so important I want to repeat it here. Make sure that your agents are always set up with the principle of least required permissions. Right? That means if it only needs to see something, make sure it has only "can view" permissions. Really only give it "can edit content," right? When you want it to make changes on this, and reduce that as much as possible because you want to have full control over what's happening, 'cause while it is great, right, that these can run in the background and do all kinds of things, you want to keep tabs on what it is that they're doing, particularly in the beginning when they're rolling out. So, when in doubt, right, err on the side of caution, and maybe also think about, "okay, maybe, you know, we start with an 80% workflow that doesn't update everything," right, "and acts more as a reader," and then later we upgrade the permissions once we know that it works. One sort of small tip here, right? And just to be aware of, if you want it to do actions in several databases, right? For example, setting relations to entries, in particular, right? If you wanted to, for example, connect an incoming... ticket, right, to a specific project or to a specific client. Remember that this will require edit permissions on both databases. Setting a relation, right? A two-way relation edits both records. So, you need to have the "can edit content" on both sides.

Tip number five goes back to our AI SOPs that we were talking about before. My recommendation would be that wherever possible, you keep as many instructions outside of the actual agent, right? And this is particularly relevant in situations when certain instructions might be relevant to multiple agents. Here's a simple example. Let's say you're building a series of agents for marketing. You might have a copywriter agent, right, that helps you create... new landing pages for individual products. You might have your weekly content roundup agent and the monthly newsletter agent. Now, all of these, right, will have to respect your brand guidelines and your tone of voice. So, of course, it is more efficient to set up one central document, right, your brand guidelines in your central documents database, and then in the instructions, right, of each agent to simply refer to that rather than in every single instruction write out, you know, like what the brand guidelines are because that means, right, you only have to update things in one place instead of in three places when anything changes. Now, this might seem very obvious with something like brand guidelines where you say, "of course, right, of course, I will create a central, um, you know, like page for that," and it is true, particularly for pages that humans will read, but you will run into plenty of situations, right, where you write sort of AI-specific instructions, and you might catch yourself that actually, you know, the same kind of instructions are required in several places. Another example that might be a bit less obvious than this would be like a simple document that explains how to create tasks in your project management system. This is likely to be a much shorter document, right? The "create tasks" one, but it might contain some very important information. For example, maybe part of your team culture is that every task needs a due date, right? Or maybe there are certain rules on who a task should be assigned to. By adding this to a central document, right? And again, having your different... tools or like different agents that need to create tasks refer to that will really improve the workflow. And this is a case, right, where we've seen with, uh, a lot of sort of like testing early on that people tend to write these instructions, you know, seven different times, uh, because there's always a little bit of a different flavor, but in the end, your systems will greatly profit from centralizing that information. A third example, right, would then, for example, be assignments. Let's say, right, you're using agents to, um, shuffle tickets to different places, and you want to like sort of like, uh, yeah, create rules on who is responsible for what. For example, you might create, right, a rule around like, "okay, whenever there's a front-end task, right, someone from this team or maybe that specific person is responsible." That is definitely information that should not be hidden away within the prompt instructions of an assistant, right? But instead, you want a central page in your system, right? That clearly lists out these assignments so that every single agent, right, who needs to review these assignments can do so easily.

Tip number six is the one agent, one job framework. Your results will greatly improve if you stick to the principle that every agent should have one specific role and not more. Right? One of the sort of tendencies that we have with agents is to put a bunch of stuff into them. When it comes to your personal agent, that tendency, right, is creating these giant master prompts for your personal agent and say, "Hey, if I ask you to do something for marketing, please follow these instructions." "If I want you to plan something, please follow these instructions." This, in my experience, right, greatly diminishes the performance of the agent. You're much better off with your personal agent, right? Having some very loose structure of, "hey, here's how my workspace operates," and then sort of calling on specific instructions, right? Actively telling it, "hey, we're doing marketing now." "Please review these instructions and then work on them." And the equivalent for custom agents, right, is to make sure that every agent has one specific thing it's supposed to accomplish and doesn't have to make a decision, right? You want to rule out as many decisions of the agent as possible. Make it as deterministic as possible. That means sometimes going very granular. But since you have unlimited agents and there's not sort of like any pricing cap against running several different agents rather than one big one, right, this will be very easy to do. So, for example, right, you might want to have one agent that routes tickets. You might want to have another agent that prioritizes incoming tickets and a third one that does the sprint planning for you. Or in other words, right, you might have a situation where depending on certain conditions, different things have to happen. And ideally, right, you rule them out to different agents so it's very clear which one is supposed to do what. There is sort of one limitation that is floating around... and sort of adjacent to this one agent, one job framework, and that is that currently your agents can't call other agents, right? So, you can't create an orchestrator agent and then say, "okay, if, you know, this is the case, call this agent." "If that is the case, call that agent," right? You can't write that in instructions. You instead have to construct it into the system because, of course, right, if the first agent modifies certain properties, right, or adds a page to a certain other page, and then you have an agent, right, that triggers based off, "hey, page added to database," then the chaining will work, but you can't have it in the instructions, so that's one limitation for now, right, to keep in mind.

Tip number seven is to build your own directory of agents in the workspace. As I mentioned previously, right, you have in your settings an overview of all the agents as a workspace owner, but that is quite limited. Most notably, it's really hard for the... AI actually to access this. Right? If you ask your personal assistant, "hey, which agents do we have in the workspace?" There's currently no tool, um, to answer that. So, to work around this and to create more visibility in what agents you have and how they're running, I highly recommend you start by tracking them manually in the beginning. So, to set up a database, right, to define, "okay, what agents do we have there? What is their purpose, etc.?" I have this actually has a template for you that you can get with all the templates down below in the description. If you're a subscriber to this newsletter, right, you can easily access it through the general subscriber hub, and through that, right, you can then track all the agents, what their purpose is, etc., making again the rollout and governance of them a bit easier.

Now, this tip is probably my favorite on the whole list because it takes a really cool concept from AI development and moves it, well, to Notion AI. The concept that I'm talking about is called compounding engineering. And you might have heard it from every one of the coolest AI companies that is around right now. Basically, compounding engineering is about this philosophy where you take AI for development, but rather than just asking, you know, AI agents to implement certain parts of your code. Wherever there are any failures, right? When, you know, there are any bugs or mistakes, anything that's happening, you add this sort of quick feedback loop to see, "okay, what can we change in our instructions for the AI," right, "or in our structure for next time to avoid that," which means that, right, with every issue that your system runs into, it gets better, hence the name compounding engineering, right? Sort of like in a flywheel, every execution is better than the previous one, which is where the real exponential gains are. Now, this is, of course, something that is kind of hard to transfer to an area outside of coding because most of our workflows, right, don't follow the same, um, rules, right, that coding follows. In other areas of knowledge work, right, particularly the feedback cycles are often far too long, but there are areas where it is very much possible to deploy, right, this principle, and one of them is with your agent runs. One of the things I would highly encourage you to is that wherever it makes sense, you add an agent run log. And again, this is available as a template that you can download, uh, below with the link. And the idea behind this agent run log is that for certain agents, you will add to their instructions that after every run, they're supposed to log what they did in this database. This example here is an agent run log for a Q&A bot. And that means we're capturing the question that was asked, right? Which question bot, uh, got this question, right? This would be a relation to the other database if you're using both of them together. Who asked it? Uh, and then how high the confidence was from the bot when it answered it. And so, of the most important part, other than just logging, right, activity and seeing what happens, is the agent feedback, right? Where you will ask the agent to provide some context on how easy it was for it to answer this, right? Or what is missing in the workspace to answer properly. So, you see, right, we have this knowledge gap checkbox, and we ask it basically to, "hey, if you are unable to answer a question properly, please mark that," and that creates now this feedback loop, right, because with every question that a user answers in the workspace, you get some hard data back on whether your workspace is set up to answer that, and then you can go in, right, and you can afterwards like create now the answers to that, which creates this positive feedback loop for your knowledge system in this case. But there might be very different other situations, right? Where this compounding feedback loop is also helpful. So, it's one of my favorite things to do, right? I think this, uh, will increase the value and the performance of your agents tremendously over time. Plus, it gives you, right, these mini analytics. It's also a cool hack, right? Even if you, uh, do it on agents that don't need this feedback line, right? If you just ask agents, you know, like after they run, "please log your run, um, to an external database." This allows you to basically recreate Notion's AI analytics on the business plan, right? So, if you're not an Enterprise, you can still get these insights on, "okay, how many AI runs do we have," right? "Who's using it, who's not using it so much by simply creating this logging yourself."

And our last tip, right, comes back to another point that we talked about earlier. Um, being very precise in your instructions. One of the biggest mistakes that we see again with AI is that people are far too vague. So, this is an example for a Slack ticket bot, right? The bad prompt would be to go ahead and say, "hey, when someone sends a Slack message, create a ticket in Notion, figure out who sent it and assign it to them, add a summary, and put it on the right team. After you're done, log what you did somewhere." Now, this is, of course, purposefully bad, but you see, I mean, except for the last sentence, how easy it is to just do something like this where you say, "hey, you know, please create a ticket, um, you know, assign it to a responsible person, add a summary, and assign it to the team," right? This, this might be the instructions that you give to a junior to do it, and then that junior can go ahead and figure it out on their own. Now, it's already bad to do this to a junior, right? You'd much rather give them very precise instructions so they know exactly what to do. But it's even better, even worse with AI. So, for starters, right, the very first thing that you would want to do to improve this is instead of saying, "you know, creating tickets," to directing it through the "@" command, right, specifically to the database where it should be created. And then the second improvement that you want to do to this prompt is instead of just telling it to figure out, "you know, who it was," and, "you know, assigning it to the right team," is to give very precise instructions on how to do that. Instead, this is how you want this prompt to look like. Right? We have the overview part where we generally instruct it, and then we go step by step through the things it needs to do to determine it. Right? So, in this case, after it's being triggered, right, it needs to identify the requestor in Slack. Someone has a Slack ID, right, that doesn't necessarily match, uh, their Notion ID. So, typically, we recommend you have a people directory, right, where you have both these values so the agent can do the matching. In this case, we're using the system-generated people database, right, where we have also a Slack ID property and tell it to, "hey, you know, look that up, figure out who that person is, and then link that Notion account." Then figure out the team, right, through the team relation on the people database. Create that entry, right, in tickets with all the values that you need, and so on and so on, right, being very, very decisive and prescriptive in what it's supposed to do. And, of course, right, then mixing it with the other tip that we had previously: if you have certain instructions like this "create a ticket" instructions that needs to be repeated across certain agents, you would outsource it to a different, uh, page, right, and simply reference "created the ticket, uh, in tickets according to, you know, ticket instructions." That's how you get agents, right, that follow exactly what you want them to do and create these repetitive workflows across the organization that really move the needle rather than just adding more chaos and entropy.

There is actually one other thing that's even more important for the success of your custom agents than the prompt, and that's the rest of your workspace. Does your workspace have an efficient, scalable data foundation? Are you using global databases, a consistent system across your whole organization? If not, your custom agents will be severely limited. Which is why when we work with new clients at our Notion consultancy, we first focus on building a best-in-class foundation before we then layer AI on top. If that is something you would like help with, then let's talk. You can find more information about our work either at matiasfrank.de/notionminds-consulting or with a link down below in the description.

All right, now it's time to talk about the big pricing update. I was already waiting for this pricing update ever since Notion started building custom agents because it was clear, right, that this all-in-one pricing would no longer work. So, here's what we already know about the new system. Notion will basically split AI into what I could call reactive AI, and that basically captures all the existing AI features that you have in your workspace. AI meeting notes, your personal agent, right, which basically makes up currently 90% of what you can do with AI in Notion, plus enterprise search, right? Notion's own version of deep research that you can trigger to compile, you know, big reports on both web resources and your own Notion resources. All of these will be included, uh, as before, right, with a base plan pricing. So, there's nothing that changes on your existing plan.

The new thing is about proactive AI, right? So, basically, for now, custom agents, and we'll see whether there will be additional features in the future as well that sort of like go into this area for this new part, right? The one that basically can run autonomously without, uh, human input. Um, we will have a new pricing model called Notion Tokens. And basically, uh, we know already, right, like that 1,000 Notion Tokens will cost $10. They are available as sort of like add-on purchases for your plan. Um, that is only relevant for Business and Enterprise, right, because those are the only two plans with AI. So, on those plans, workspace admins will be able to choose any number of additional tokens for the company, and then these will be your monthly tokens. So, as with all monthly token systems, right, you will have up to that many tokens to use. If you run out of tokens, your agents will pause until you either increase the tokens, right, that you have, or your next monthly bill rolls around, and then you can sort of like create and design your agents around it. We will have to see exactly how many tokens, you know, are consumed by agents. Currently, the preview, as I'm filming this video, doesn't yet have the analysis, right? So, we can't yet say, "okay, this type of agent requires that many tokens." But I'm sure we'll see that soon. And, of course, right, rule of thumb: the more complex of a model you use, the more expensive it will be, and the, um, you know, more additional steps it will take, the more expensive it will be. So, we will have an incentive, right, to structure these agents in the most lean way possible, which is anyway what I would suggest because it greatly increases the output of these agents, right, the one job, one agent rule. In terms of the timeline, uh, this is how it looks like, right? As of today, February 24th, we have custom agents launching. Then we will have until May 3rd for free exploration. So, basically, until May 3rd, right, you can run as many agents, you can test how they work, you can test what they do, and in that time, we expect the usage dashboard to go live. Right? So, within settings, Notion AI Agents, you will see how many tokens your agents consume and basically how many tokens you would need to buy to keep them running starting May 4th. Right? Starting May 4th is when tokens.

will be required to basically keep the lights on. Uh, so yeah, very excited to see how this plays out and how the token consumption goes. I think, right, for most workflows, this will be an absolute no-brainer because, oh, if the agent doesn't do it right, then you have to pay a human to do it. But of course, right, it means we also have to balance what we spend, you know, AI actions on and what is sort of like just useless instead.

With the most important tips and tricks covered, let's move on to use cases. To help you with these use cases, we've actually done something a little bit different this time and put together a template of self-installing Notion agent templates. Again, right, you can access this through the link in the description or if you're already subscribed to our newsletter, through your subscriber app that's linked on every single email. And on there, you will find this new template.

And the way that we've designed it is that you can basically use this and self-instruct AI to set it up for you. 'Cuz as always, right, we can't just push like this standard template to your situation, right? You will have your databases, your specific situations, and they are kind of designed to work with that. So we'll go over all the use cases in a moment, but basically, the way they are built is that you can just open it up and then ask AI, "Hey, can you help me set up this agent based on the instructions here and the questions that you're supposed to ask me?" Right? And it will sort of guide you through it, um, ask you, you know, for your situation, and then you can customize it to your specific needs.

But yeah, use case number one is bug triaging from Slack or generally ticket creation. Right? You can set up your agent to watch specific channels. And you can either choose to use the, you know, like the "watch any message in a channel" if it's sort of a general support one, right? If people can post there freely, or you can choose to trigger it based on a message.

Now, there are a few, um, small things to keep in mind with this. First, uh, when you integrate with Slack, currently this only works for public channels, right? So, you will not be able to watch DMs and you will not be able to watch private channels. That hopefully comes soon. But for now, you're limited to public.

And then second, in general, right, I would probably recommend to use the emoji reaction as a trigger simply because there's one, uh, drawback when it comes to watching channels or mentionings, right? In, uh, Notion AI, the way it currently works is if you set it up to watch for a mention, right, so where you say like, "You know, hey Notion AI, can you do XYZ?" you always call Notion AI, not the agent. That means if you have multiple different agents who all watch multiple Slack channels, it can sometimes be a bit difficult, right, to figure out, "Well, which one should be called?" By using emoji reactions, you work around it, right, because you can assign one specific emoji reaction to one specific agent, making it overall a bit easier.

A few more tips for this kind of workflow. When you set up like the ticket creation from Slack, you ideally want to have guardrails, right, in your Notion system as to what constitutes a ticket or task and who should it be assigned to, right? So the example from previous, right, we have that also laid out here where you ideally want the team member database, right, maybe m being able to match Slack IDs and having a team directory, right, so you can route the ticket to the exact right place. Bonus points if you have specific assignment rules, right? And so, for example, if you know, "Hey, front-end stuff will always be handled by Matt," right? If you can again like create some rules somewhere and have the agent look it up, then of course, this routing will tremendously improve.

A very useful adjacent workflow for this example is to use these Notion agents for what we call internal agencies. You probably know that, right? There are certain departments in a company who tend to run like agencies where you mostly do work for other departments. Typical examples include legal, uh, sometimes a design, right, when you sort of like create assets on demand, or marketing.

Now, if that's the case, right, if you have these sort of situations where you get a lot of requests internally and then need to process them and, you know, map them to the right team member, something like this again can be a great help. You might, for example, set up a dedicated Slack channel for design requests and then have them posted, uh, into there. You can either use one of existing Slack forms, right, and then type it as an answer and then Notion agents read that, or people can reply, sort of like, "No, just post directly," and then the agent processes it, asks some questions back if necessary, and otherwise fires it as a ticket.

Use case number two: weekly status reports. And you can think of this as a template that you can apply to pretty much anything that you need regular reporting on. The specific example is sort of a project manager one, right? So, it will look at your projects, it will look at your tasks, and then once a week give you a report on what's on your to-do list. But again, right, you can adjust this to pretty much any situation that you need.

One great alternative would be to take this template and turn it into a daily brief, right, rather than a weekly one, where it looks at your tasks due today, your projects that are currently ongoing. And maybe you also would want to add into it your calendar, right? Notion can access your calendar, so it can also brief you on how many meetings you have ahead, things like that.

Onboarding is notoriously difficult. So, this is where use case number three comes in. You can use agents as sort of an interactive help desk and integrate them either in Slack, right, or like as a dedicated page in your Notion system.

And then what you want to do is you want to take your handbook, right, and give your agent access to that as the main source. And by scoping the source, right, to this specific handbook, you make sure that all the answers that come through are, you know, sort of like the vetted ones from that part. And you don't need to worry about it resurfacing information in draft, right, or things that are not, you know, maybe just too distracting for a new hire.

This is also particularly powerful if you combine it with the compounding engineering principle from the logging, because chances are new hires will have a lot of questions and you might not anticipate every single one. So, by logging them, right, and then regularly reviewing what questions come through and how you can better answer them in your handbook, you make sure that the handbook auto-updates itself and just gets better over time.

Use case number four is probably my favorite of the list in the sense that like any company can use it, right? This is a super easy quick win. No matter what industry you're in, no matter what size you work with, right, this is something that you basically want to implement immediately.

It doesn't matter, right, what AI note-taker you use, whether it's the Notion AI note-taker or a third-party one, right? Pretty much all the good ones integrate with Notion in a way that it can automatically pipe your notes in there either natively, right, or at least through an automation like nadn or Make.com.

And once you have piped your meeting notes or transcripts into Notion, right, or just using Notion AI meeting notes directly, you can then use one of these agents. Basically, what you want to do is you want to help it process the information and automatically extract tasks. The way that you design this to your own individual needs might change, but the flow is always very similar, right? Take meeting transcripts, identify the next actions, and then based on certain rules, add them to your system.

You might tweak it a little bit. For example, you might, uh, one of my preferences is often, right, to sort of like have an additional review step in here, right? Maybe post this to a channel so that you can see, "Okay, these are the tasks that we would extract, should that be the case," or you run it completely on autopilot, right? Then pipe it automatically into the system. Again, right, relying on things like a team database or like, um, sort of like assignment lists to make sure that everything reaches the right person.

One tip here: if you are in a situation where you use meetings the database, right, ahead of the meeting to create the agenda and then add the summary sort of as the meeting occurs, you need to be a bit more creative with the trigger. In that case, right, you can't use the "page added to database" trigger on your agent because the meeting will be added much before it actually happens.

So, what you want to do then instead is you probably want to add a checkbox or status to your meeting database and call it something like "AI processed." And then you want to run this agent, uh, on demand on a schedule, right? So, every 6 hours or once a day, and have it go in, query all meetings, right, that are not processed yet. And then, as the last step, check that box. That way, right, you can build a circle, uh, that relies, uh, on a status property rather than on an unreliable, you know, page edit trigger.

Next one is a content calendar monitor. But again, I would encourage you to sort of like take a step back and think about this more as a general template, a structure, right, than, "Okay, this has to be a content calendar." Basically, what this is, it's a deadline monitor, right, like a controlling agent that makes sure that as deadlines approach, someone gets notified. In this case, when it's geared towards a content calendar, right? So, when do we have a publish date coming up, right? What content needs review, etc. But you could just as well adjust this to any other kind of deliverables that you need to regularly keep track of.

Sort of an adjacent flow to this is this CRM follow-up nudger, right, who keeps track of your CRM and reminds you to follow up on certain relationships. Now, the strength of an agent like this is that you can expand and personalize it over just simple rules, right?

One thing I think that's important to mention here as we go through these agents is that not every automation needs to be an agent. If you have a next follow-up date in your system, right, and you know, "Hey, uh, sort of like when X happens, then I need a reminder sent," that's a job for an automation. There's no sort of like AI step required, right? If deadline, then remind me.

Agents are powerful whenever you need to inject judgment, whenever you need to inject like, sort of like, reasoning and like a little bit of this flexibility that usually humans would do. So, in the case of the CRM follow-up nudger, right, you want to deploy it if it needs to look at a mix of signals, uh, to judge, you know, whether to reach out or whether you needed to then also automatically pull things together and prepare it, right?

So an example would be that maybe you're a VC, right, and you want to regularly reach out to your LPs. And you might have a date, right, when you typically want to re-engage them. And then, rather than this agent just nudging you to say like, "Hey, you know, time to engage," you actually have it go in, right, and have it look at, "Okay, you know, these are sort of like the investments that this LP has. These are our most recent updates from these companies that we've received. Let's draft a personalized message for that LP," and, you know, prepare it together with that little nudge.

Another example for this differentiation, right, between automation and agent is this next use case: the knowledge base auditor. Here, in this case, right, we want someone to evaluate the state of documentation and make sure, right, that it's up to date or that if it's outdated, we ping the right person.

This is something that if you just follow hard rules, right, you can automate it using traditional automation tools. But again, if you want to include judgment, you can use this. For example, right, you expand the knowledge base auditor with skills like access to Slack. So, you can ask it to not just, right, check the knowledge base for things that might be outdated, but when it finds something, right, that doesn't have a verification anymore, it might want to check Slack to see whether there have been any current discussions on that.

So that, together with the ping, right, on, "Okay, um, here's something that might be outdated," it can already give a recommendation whether this is a simple case of just, you know, re-verifying what's there or whether it should be updated with certain elements.

Now, after all these tips and tricks and use cases, let's quickly go back to the beginning. What makes custom agents, right, different from your personal agent, and where do they fit in your workflow? Well, as you've seen, they are really powerful, but they require a specific kind of situation.

You want to use a custom agent, right, when they have to work on certain triggers, right, when there are certain things that happen, you want to have things autonomously proactively handled. They are also great because you can granularly scope abilities, and, right, this ability to either keep them to yourself or share them with your team is pretty powerful.

Plus, then there's one more requirement, right? One more thing that we didn't talk about in the beginning, but that came up a few times in this video, and that is that it requires soft judgments. And that is really important because that is less a differentiation to a personal agent than to classic automations.

As you know, right, on this channel, we talk a lot about no-code automations. Now, with the help of VIP coding, right, we can even do cooler things on top of it. But the basics are still the same. Like classic automations, they share a lot of similarities to custom agents. They also happen proactively based on certain triggers, right? New email received, new calendar name and booked. They also can have very granular scoped abilities. In fact, automations typically have even more precise controls over what is that supposed to happen. And here as well, right, you can roll out automations either just for yourself or for the whole team.

The difference being, right, that an automation requires hard "if this, then that" rules. And sort of like the main differentiation, right, between when to use a custom agent and, uh, a classic automation will be this, right: does it require judgment or not?

But there's also a second layer, right, and we've seen this with a lot of our clients, so I just wanted to share it quickly here: custom agents are also really powerful when you need to build something quickly. Oftentimes, custom agents can help you get sort of like an 80/20 solution to what would have otherwise been a very, uh, complex automation.

One of my favorite examples is the report creation that we just talked about, right? Granted, reports also profit from soft judgment, but even in the past, right, let's say we have a situation where for a VC we need to automatically create reports to the LPs based on the updates that happened, uh, across the portfolio. Those updates are probably already somewhere in the Notion system. So, we can create an automation, right, that pulls these, uh, together, right, and that then creates automatic messages to every LP with that information. But it is a fairly complex automation build, right? It might take, uh, a lot of engineering hours to get right.

Custom agents, on the other hand, is something that you can spin up probably in half a day by working, right, on getting the prompt right and really detailing things out there. And then you have an 80/20 solution that might not, you know, go into every nook and cranny the same way a classic automation does, but that gets you a really good working, um, prototype.

And that's the thing, right? Because these customations can very often help you get very quickly to a 5x, right, or an 8x increase in productivity simply by making these very effortful workflows so much faster.

Now, where does this leave your personal agent, right? Does it mean there's less stuff to do for it? Well, no.

I will share a little bit more details, right, over the next few weeks on the blog and on this channel on how we see the orchestration between personal agent and custom agents. But basically, right, your personal agent will probably still be the most used AI that you have in the system. It's certainly the case for me, right? After testing custom agents for a long time, these custom agents are great, right, particularly for these things that happen on a schedule, right, that happen on triggers. But depending on how your day-to-day breaks down, right, how much routine work you have where custom agents are great versus how many, sort of like, more of one-off tasks you have where personal agents are great, right, that sort of comes into the fray.

So, to wrap up this whole video, right, I'm going to throw it to a good friend of mine who's also called Matias, who walks us through one of the recent use cases that he had for his personal agent when he launched his new startup on Product Hunt. Pretty cool startup, right? They do something with video creation, uh, sort of like an video editor, right, through text. I'll also link that down below if you want to check it out. But for now, just a really cool AI use case for your personal agent.

"Hey, this isn't the TS when you found a way.com, and I want to walk through our recent product launch and typically how we did the PR outreach with Notion Agency to highly process. We click in here and show you guys what we have.

So, what you see here is basically we have an unstructured list of CSVs, bullet points, emails, just a random collection of outlets and media contacts I want to reach out to. I created different email templates in different languages and kind of formats based on how I wanted the recipient to receive it, and there's a fresh way I want to thank their email. And what you can see here is the finished, populated Notion base for that.

I was actually able to use Notion agents here based on unstructured input, and I basically asked something along the lines of, 'Hey Notion, can you take the unstructured input above, which is the journalist social list and the two CSDs which I will link in here as well, and based on that, create a unified Notion database with the following categories? I want the first column to be the name of the outlet, second should be the category, so the type of outlet they are, then their email if they have a person email attached, I would like to have that in a separate column. Then finally, the status should be set to 'not contacted yet,' the language should be set to the standard language of the outlet, and then any additional notes that are saved in the unf input should be added to the notes section.' And they just did this, let it go. It ran for about 10-15 minutes. I had to let basically continue again a few times just because the list was that long, and in the end, to basically have the list below.

Then I did the same thing to create the email templates. I basically said, 'Okay, hey Notion, based on the database map below and the email templates, write a customized email to each of the contacts that is in the correct language and formatting and addresses the right people if the person is like by name in the intro section.' And it did that. Again, took a while. Well, I think this one took the longest. I think it was like almost 20 minutes of like the agent running on and off. That was time I could person spend working on our press release, making sure the final wording was the way I wanted it to.

And then when it was done, the output looked roughly like this, right? So, I'm going to close this quickly. We have email draft. So, I had two CCs. It addressed the person by name if the name was there. I also removed a lot of stuff in terms of anonymization here. And then for every additional journalist that I had for this, I had quite a few different contacts. It even added that to kind of allow me to send these out to as many people as possible. And happy Jenny's emails are personalized.

So then when I had this, I just created snippets in Notion Mail, that tutorial for another time. And all in all, I basically turned a one-day task into a roughly one to two-hour kind of automated tasks thanks to Notion Agent. And with that, I'll hand it back to my test friend. Peace out."

One last quick note: as you might know, we have this "Mastering Notion AI" a complete series with tons of resources, uh, that we've built up over the past few months. We, of course, now that custom agents have launched, uh, will extend it with that. But this is sort of like the theoretical foundation, right, and a lot of use cases around the AC/DC method for bond creation, how to build your master prompt for your personal agent, training self-installing AI instructions for your team, a lot of stuff across the board. It's really helpful. As a new subscriber, right, you have access to that through the newsletter hub. If you're not subscribed yet, check out the link in the description. And yeah, uh, we'll keep building on top of this to make sure that you have the best resources to make the most of Notion AI.

So much for Notion custom agents. I'm incredibly excited to see this feature finally live for everyone. We have had a ton of fun playing around with this in early access as well for our clients who were part of the beta. Now, I'm curious to hear from you: what custom agent are you going to build first? And if you want to learn more about how to make the most of Notion AI, well then check out this video next. In it, I walk you through creating the perfect system prompt for your personal Notion AI. Just stick here, and I will see you in a...