About this talk
In this talk, Jamie, co-founder of Freely Give and maintainer of the AI module for Drupal, explores the future of AI integration within the Drupal ecosystem. He shares insights from his extensive experience in the Drupal community, particularly focusing on how AI can enhance capabilities beyond traditional frameworks. Jamie highlights the advances made in AI technology, such as the development of innovative AI agents and tools that interact seamlessly with Drupal. He discusses partnerships with Symfony AI and the implementation of open-source solutions like the prompt API, which enable users to harness local AI functionalities. The speaker emphasizes the importance of community collaboration and adaptability, noting the continuous evolution of AI solutions to meet real-world needs in a fast-changing tech landscape.
Full transcript
Hello. >> Hello. >> Cool. Um, it's 1:30, so uh we'll begin. We got a lot to cover. Um, I'm going to, uh, be doing a lot of live demos, which, uh, might be a terrible, terrible idea. We'll see if it works out. I, uh, yeah, we I I don't know how it's going to go, but um, I'm just wondering if anyone here has not heard me talk
before about AI. Uh so a few okay a few and does anyone here not know about the AI initiative and the AI module. Okay so I will briefly go over it. Um what we have is a number of people uh you've saw you saw some stuff in the Dre note about what we're doing with AI. Um and there is a panel discussion about the AI initiative. So
I'm going to really briefly cover it. But um what I've been doing is I've had a bunch of different roles. I've been focusing a lot on the innovation side of what we're doing with Drupal AI where I'm kind of playing a bit and exploring what could happen and what could come. So today I'm going to talk a little bit less about the kind of the basics of
the AI module and what is there and a little bit about like where we're going and the general feel for it. And I I've called this why there's a great future for Drupal AI. um this talk uh I've given something similar recently where I called it like is there a future for Drupal AI which was a little bit less um you know le less positive but the
the reason is that everything has been changing so much uh we're in a place where you know a year ago I would have said we're ahead and now I still think we're doing very well but people are catching up people are really taking AI seriously uh other systems are um are really going for it. And and there was a part of me that did wonder like is
this is this still a future to this? Is this going to go anywhere? Is this a good idea still? Or are we just focusing on something that that really uh you know everyone else is going to beat us uh with their billions in Silicon Valley? Uh and the answer I think is no. So that's nice. But we're going to go through that. So um my name is
Jamie. I co-founded a company called Freely Give. We specialized in native Drupal CRM for quite a while. I've been in a Drupal community for quite some time. I think it's 2011 um is when I I sort of started um and um I'm one of the maintainers of the AI module and one of the uh founding part of one of the founding members of the AI initiative, but
I'm not a programmer. So I became obsessed with AI when it first hit. Um, can everyone remember like okay when you first found out about like let's say chat GBT 3.5 like when it first like hit how many people felt a sense of like utter like super excitement? Yeah. Really positive. Okay. How many people had a sense of like absolute terror and impending dread? Okay. And how
many people had both simultaneously at the same time? Right. Yeah. Yeah. Yeah. So um um I I got obsessed and um this is why we've pivoted to our company doing almost nothing but AI. so how do we maintain our edge? Well, I think there's a few things to think about. One of them is um I think now is the time to make advances in AI outside of
Drupal. So sorry to make use of um yeah advances in AI outside of Drupal. And to a lot of people this is an obvious thing. they would say why are we building an AI agent framework surely everyone else is doing a better job and um I think people have this like I always feel like at the beginning um you know a lot of people in Drupal community
feel very low about themselves there's this kind of apologetic thing that like you know the C or the Ruby on those are the real programmers and and and PHP we kind of hang our head down in shame and Drupal even more so in fact when I was at university I did a computer science just one of the one course, one little module and I did say I'm
working in Drupal and my lecturer I think it was in the Apache Foundation did go he he said to me like oh I'm sorry about that. Um so so we had that but it's like no I actually strongly believe that uh we had I was going to have we we're going to make some we made some t-shirts for one event real devs do it with Drupal because
the reality is one of the things about us is that we're in the edges solving real people's problems. we're like sat near them doing stuff. Whereas when you look at the companies like OpenAI where obviously there are some, you know, geniuses there, but they're in this tiny little ivory tower, the thing they did was somewhat accidental and they're finding it so hard to actually really sit with
people who are doing proper, you know, proper stuff with AI or or or see the actual use cases for it. Um, when when the MCP standard came out, I thought it was pretty terrible and I thought it was just a beta version, so it's fine. and it's grown in excitement and it's got a lot of energy behind it, but you really felt like the person who made
that has no idea how AI actually works in the real world. It's never going to do anything. It's never going to work. And and it and it didn't really. And the more I've heard about the way that a lot of those companies are operating, it is still the case that they will really drink their own Kool-Aid and believe certain things that AI can do. They just simply
can't. And they would know if they were doing stuff with real people towards goals. So I think we have real reason to believe in what we do because we can get to the real use cases. It's still quite difficult to find. We're getting more and more case studies. Um freely give are also finding that we're we're find there's a lot more projects that we're doing that are
paying really well with good margins to solve things with AI that are successful and we're getting a lot in the Drupal community of people showing us their case studies. Um, I'm shocked that it's we're not further ahead as a whole worldwide community. I thought last year there would be more. There's still some hesitancy. Even when you have like provable cases that AI is help would help them,
you still get a bit of hesitency. I think a lot of a lot of organizations don't have skin in the game and they don't need to do things that make things better or faster. Uh, and so finding those places where this matters is still quite difficult. But we're doing I think we can do a better job and we are doing that. But having said all that, it's
starting to get pretty good out there. So clawed code was the first time I saw an agent framework and I don't know what you call it exactly that was truly amazing. And um and this stuff is like really taken off. Um, I would say December 2025 is when uh the the kind of vibe coding, I don't know, command line agent interfaces really took off. Like midway December,
it was night and day how good they were compared to even November. And some people say it's even as early as February this year is when it really took off. Um, but it was wild. It did mean that my Christmas was spent with this laptop vibe coding in a corner during all the different Christmas family events. Uh because it was this feeling of like I there's so
much I can do now. I why why would I ever stop every single time? I'm not doing things. I'm not winning. I'm not moving forwards. I'm not getting things done on time. Uh and there's an element if everyone else is having a holiday and Christmas and I can just like get in there. So it was it's quite complicated. Um but um I've calmed down a little bit,
but I think we've seen that a lot with people talking about how vibe coding has become uh a bit of a um a bit of an addiction. Uh, one of my close friends sent me a tweet about how all of their productive friends that they know of are working harder than they've ever done before and having the best time of their life than ever before. And my
friend was like, "Yes, it's similar to like fentinel except probably healthier for me." Um, [laughter] so it's yeah, but it's um, but what I'm thinking is when we talk about Drupal AI and is it going to work? Is it going to succeed? It is not to me the code that has been written that we've written that is the main thing that will survive what we're building especially
the AI initiative where it is a group of agencies that they they join forces we they when you join us you you pay you pay your regular amount of money and you pay and you commit at least one half developer time u a lot are doing full-time and some more so you're committing people to push this Drupal AI forwards and you're committing money to manage that stuff
happening. And what that means is is I feel like the Drupalai initiative is not just a community that is building something, but is a community that is exploring this completely new wild world all together. And as we find things change and shift, we can shift with it. It is not about us being precious about the things that we built and assuming that something we made a year
ago is amazing. We have to keep rebuilding. We have to keep throwing stuff away when we know it's not good. um we are still going to hold our head high and still believe that we in the Drupal community can do well and not just assume these other companies are all just better than us. Um but at the same time we're going to have that humility that when
they do things well we use that. And so I'm going to show a little bit today and it's going to be complicated. There's a lot to go through and whether or not I'll get all the way to the end I haven't managed to yet. Um so we'll see. But um what I'm going to show you is as we start innovating all these kind of newer ways to
do things. They're not oneoff um oh everything you built previously with the Drupal AI stuff now has to be rebuilt on a completely new thing. Uh I mean how many people here uh lived through the Drupal 7 to 8 uh upgrade? Did anyone love that? >> No. Right. So we are trying to not have that where you have to rebuild but but we are trying to also
be cutting edge. So if we have to that's that's not the end of the that's not you know never going to happen. And what I'm going to show you is every single one of these things are innovative actually they can bring people along uh the whole way. Everything you've made in the old format can move to this new thing or or make use of it. So I'm
going to mention sales here. Uh Drupal Forge has been fantastic uh working with us. If you go to um freely uh drupalforge.org/ufreelygive, you will get to this page here. and this is where we put our demos. We're we're working on in the initiative to actually do this in a an official manner to have all of these demo places, but Drupal Forge is a place where you can
click on one of these um uh the demos that we've made. There's a lot on there as well. And uh you type in this this this question and it will create a a small little test copy that lasts for about an hour with you can log in as an admin. So you can actually try out all this stuff and it's hooked up to the AI module and
Amaz provide some free credits like like a dollar or free AI credits. So you can if you want to try something out, you can click a button and immediately get going with seeing this like cool innovative stuff without having to mess around with things locally etc. But they're all everything here is open source. It's all on GitHub. So behind every one of these things is a git
repository which you can also use locally. So I've got this flowrop one that I'm going to show off and there is this um thing here. One thing I just wanted to mention first is another way in which we are moving towards uh bringing stuff in from the outside community is we're starting to partner a lot more with Symphfony AI. It they they they happened a little bit
after us. Um when they announced we reached out to them like day one and started talking about ways that we could share what we're doing. We're a little bit scrappier in what we do in Drupal and Symphony AI has this like Symphony has this reputation of being a really good fundamental reliable base. So they can move slower but um have something that is going to be have
more longevity. Whereas we're focusing on really pushing innovation on on on where things could go. But um we made this abstraction layer. We made something in Drupal to connect to all these different models and Symfony has one and it took a while for it to get to a place that it was is it was uh comparable to ours but it now is and it now means that
um I think we're planning on it for the AI module 2.0. It might not hit that, but it looks really good what we've done with it so far. So then we'll be able to have it so that actually there's a wider community of people keeping track of all the different models, all the inte different integration points, and we can make use of that rather than having to
do that in Drupal. So although that was the heart of what we did with the AI module, it's becoming something that now Symphony is doing. And we've Symphony's got an MCP SDK which we're making use of and they also have an agents SDK which we're likely to make use of. Um, and so a lot of it we're going to as we upgrade things into the Symfony world
will all benefit anyone who's been doing stuff with with AI and Drupal [snorts] from everything that's going on there. okay. So before I go for the flowrop stuff, one cool thing that we started working on as well is, uh, Google actually reached out to us and they have something that is called the prompt API, the Chrome browser prompt API. And what this is is a simple way
where you can actually run a little model inside your browser. Um, so I've got some things here. You can see um when you log in, what will happen is when you try and use some AI, this little pop-up will appear and you'll click download and it will install it. Um, again, you can try this out on Drupal Forge as one of the things and you can download
it for yourself and try it out. But it's got some it's a very simple model. So if we go to content um we can do things like this where we go in and edit it in this is not it's not necessarily the fastest but let's say the alternative text which we've had in Drupal CMS since 1.0 But now if I click generate with AI, this is now
it is doing a round trip where it's going back to the web server sorting things out which means it plugs into all of our guardrails and all of our settings etc that we have in the AI community Drupal AI community but then it's running back to my browser which is running this and then we've got robots with language options English Spanish and German. Now this might not
be the fastest. There's stuff we could do to improve the prompt. We could try and make it better at these things. I think there's going to be lots of modern AI that's going to be better than what can run in our browser, but in not too long, that wasn't crazy long, we have AI, but it's entirely running in a browser. There's no external API stuff. There's no
privacy issues. This is something we can control. Um, so I think that's pretty cool. I don't know if you want to give a clap for the AI. I mean, a lot of people love doing stuff with sovereignty and stuff. So, and and and and we've kind of improved it with the added it to things like the tone changing things. So, if I go to here, I could
change this tone to be uh excited and inspired and click change tone. Um and you'll see like uh AI stream a response. Um but again, this is all local. So, there's a lot of applications here where we can start doing private um things. It streams it in with the HTML and then once it's finished rendering it will look a little bit nicer. Um, as you can see
it's not super fast. There is a new version of it coming out in the next month or so and I think we might start being able to explore it working with um the AI agents themselves but for now for the these simple cases we have a browser API um and uh yeah you can try now AI without any API keys. Uh it's better for the environment this
it's a lot lot safer cheaper. uh you're never going to get banned from it. It's yours. Um etc. And we got a few other little demos uh where like summarize. But one thing that we've explored um and this is actually not us. It's someone from the Drupal community that has made this. The AI assistant went via the Drupal server. So it's private, but your web server still
deals with that stuff. What we have here, I I think there's a lot that could be said to make these uh the UX of this better, but we have here AI summarize and this button, it runs inside CK editor and it connects your JavaScript app directly to the LLM. So here we have AI where it never even leaves this machine. It is entirely private. Not even the
external server can do that. And it's pretty easy. It's got it, we got it working in Drupal. So this is something where we can take everything we've got and take advantage of these new models. But building these AI agents has been quite complic complicated. So what we have here is this new visual builder for AI. So we called it flowdrop UI for AI agents and it is
something that allows us to see all of the tools that we have in the AI community and see this flow because there's lots of things that we tend to do in Drupal where we try to make it very customizable and work in every single use case but it meant that getting anything done was quite hard. There was all these different forms that you had to fill in
um to set things out and it was quite hard to visualize what's going on. So this is the Drupal CMS agent that comes with uh Drupal CMS 1.0. 0 and obviously later ones as well. And it shows you we've got the content type agent, filter agent, and the taxonomy agent. And you can see the tools it has. It can list taxonomy terms, get current content entity values,
uh modify vocabulary, modify taxonomy terms, etc. And then when you click edit, you can edit these these things here. But um and let's say we edit this one here, you can see the system prompt, the instructions. You're an AI agent on a Drupal 11 site, etc., etc. But if we go to this chatbot one, you'll notice these settings are look are probably look quite familiar to a
lot of people because what we've got here is these are just a block settings and the one way that you know a lot of people have created these flow things uh like I say ECA and Maestro and and Flowrop and automators and all these other things where all of your agents has to move to a completely new framework that you have to rebuild, you have to retest
in order to get working. What uh Jurgen did with ECA is he created this thing called the model API that connects different front ends to different backends. And then Shibin um and David from Factorio who really pushed this flow UI. What they were able to do and actually I did some of it with with VI coding over that Christmas that I did not spend as much time
with family as maybe I should have is we created this thing where um instead of writing a new flow it it doesn't this thing doesn't actually save anything any new entities. It's only working with core Drupal stuff. So when I save anything to that assistant, it's saving it to the same Drupal AI Drupal assistant entities that we've done before. And that means that when anyone creates any
agents now those things you can just open up in this new flow and because of this model API what we can do as as uh we saw in the Dre note this new front end for ECA um we can also put that on top of it. So there's this thing here where this innovation of making it much much easier to build these agents and visualize them working.
Everyone can just start using it and it now has had a lot of developers check through the code, test it, write, you know, work on it and improve everything compared to what I vibe coded. But even when it was vibe coded, it was basically something you could securely use because you can build it on your own little local. It saves everything to the config and then you
can save or export those that config into your live site. But it's saving just a normal conf everything that is like existed before that's been tested that other people are using. So even if this was unsafe to publish and put you know out for everyone to use um it's pretty safe even though it's vioded because it just does this one thing that doesn't have the outside world
having to worry about it. And so this like way of thinking about things when we worry about vibe coding, security, maintenance, there's actually a lot of places where it doesn't matter as much. But let's take this further. We have here something called the AI agent handler. And it's a chatbot inside this site that allows you to actually create agents using uh AI. So you can describe a
new agent like I want it to an agent that creates blog posts or that creates variants and you could ask it and it would create that for you. But what you have is a whole collection of things called tools. So the way the AI agents connect with um with Drupal is these tools uh like get the config schema list bundles on an entity. And we've built quite
a lot of them. But tools are actually relatively simple. They're quite on the edge of Drupal and they do this one thing. So what if we could start using AI to create those tools and then create the agents? And so Marcus started exploring that and now we have this unbelievably ginormous list of agents here. Uh I mean it's just so many now and we've kind of got
something where we have agents and there's a module for it the AI agents collection um module where it will install these things and we have agents for almost everything that you can imagine in Drupal. Um, what I've also started doing is started creating there's a slideshow that we we share like a year and a half ago about the AI agents coming to Drupal in the future that
we kind of wanted and I could just pass in that list. It's just a markdown list of agent names with no context, nothing about them. And I started building these things and uh we just need to figure out how to try this stuff out. So what we have is we've tried to come up with like um new UX for this. I think this needs to be improved.
But we open up an agent. This was the evaluation agent. I say what can you do? And it tells me all the things that it that it's got. But then what I can do is I can at a particular one of them like the text format manager. And it's what can you do? I can list text formats, create new text formats, etc. Um so I'm going to
try let's say the user agent um at user manager. Uh can you create um for me a new role called uh blogger and all the different different bits of Drupal. Now we've got agents that can cover those things. So the next stage in this is to figure out like what do we want to do with the fact that now we could have AI change almost every single
setting. One is a systems manager. They can just change all the kind of core systems. I mean, this user one is going to be pretty dangerous to have on a live site as well because it obviously can create admin users. So, we're going to want to decide how do we interact with this? Uh, has anyone here tried out or heard of um uh claudebot or open that's
called open claw, >> right? So we don't exactly have that in Drupal but what we one thing we tried to do um is Marcus tried out a new he called it the orchestrator uh thing. So if I create a new thread, this new chat, I've got I can do direct calls to a particular agent, but I've now got this planning agent instead. And what we can do
is I can ask it, can you create for me a new content type called events come up list of fields and he actually used vibe coding to create this new potential chatbot which uh for Drupal that borrowed from the way that open claw does things. I don't know if you've heard of like the Ralph loop where you can have AI just go over and over and over
and we've got something like that. So you can ask it um a question and and we were told for Drupal CMS 1.0 know a gate was can we make sure the AI responds within like 10 seconds we wanted to be fast that's what we assume everyone wanted but gradually who here has used chat gvt deep research yeah have you liked it mostly useful somewhat yeah okay and
what I'm finding is a lot of people are starting to be okay with AI taking a long time if it does a good job and if it's solving something complex and so Marcus went the other way what if we when you ask it to do something it just takes ages but the thing is quite good at the end and so we have this thing where it will
instead of it we have an assistant we have to actually configure all the different agents we can ask it this orchestrator knows all the different agents that exist and it creates a plan for how it's going to build everything and you can actually edit that plan uh I mean this has already been executed but you can go in and edit the prompt move things up or down
and then you can execute it and then each of these agents will go one at a time try to solve that particular problem for you um it's not really going to be marketeteer friendly There's a lot of things that could be improved here, but we're now seeing something that inside Drupal we could do something a little bit more complex. um uh the other thing about this agent
collections module is um there are these things called skills inside them. So if you are familiar with claude code, you've probably heard about skills. If you're not, what we had is um the way that we tended to do things and we done in Drupal is you have an agent that does a thing like Drupal CMS agent that helps you create content types or pages. Then you have
sub agents that does a more specific thing with tools and it's very set in stone. And if you want to do something else, you have a whole new agent to do. Uh and similarly when MCP came out with the tools, if you load an MCP um server onto your agent, what would happen is the everything about that MCP tool would be in the context window in the
prompt of everything that agent ever does, which is nice for some things because it knows it's there and will likely use them. But if you have a lot of MCPS, you gradually find your AI agent gets really confused, doesn't know what it's doing. Um it it's much more expensive. it it can use less of the context window for other useful things because it's just got the whole
list of every tool that it ever wants to use. Skills are a little bit different. So with skills there's a list of skills that it has access to but it can load them. It's like kind of like the matrix of the little like you know oh I can I can uh fly a helicopter like you can you the skills when it's asking when it's trying to do
something it will load in that skill and skills are some instructions but skills also can uh depending how you set them up can also install things via composer. So you can have fmpg skill. It will also install the fmpg. Skills can come with their own little scripts that help AI do things. Um and um when you need to use a skill, it will do that thing well.
And gradually we're finding um it's something called skills uh.sh that this is becoming a pattern that is working really nicely. Uh there's a lot of other things like plugins and sub8. There's all these things, but this one play skills.sh SH is a repository of loads of skills with a leaderboard of how many installs they have and it will work with all the different cla code, codecs, etc.
you want to do. So inside the agent a uh agents collection module that has all that also we've created a skill that can tell AI how to make its own tools. So you can come up with a new agent you want to do and it can write and create all those tools for you and make the agent and connect them all together. Um but we've gone a
little bit further with that as well. Um, so one of the things we're going to try and do, there's a place here. We're going to put it somewhere proper. It's in um, Alons is a new developer who's joined us recently and he's put this together and he's created a kind of skills awesome Drupal AI starter pack. So it's like a place that you can go with these
commands and run it and then it will sort of install all the different skills that we think are good idea. And then he's also come along um and uh and tried to come up with a comprehensive list of skills. A lot of people will come to me and tell me, "Oh, have you seen this new set of skills I've built?" And I'm like, "Yes, a lot of
people have shown me that." What I'm interested in is someone to start like sorting them out and let's as a community start creating what we think are the ideal ones. So for a long time, Matt Grammix's Drupal Claude skills was the one I focused on. It had ones like Drupal at your fingertips. So it was a skill based around the book. Uh Drupal config management. There was
a search API one simple oorthth. Um uh there was one I think um that was good at uh Drupal security uh uh yeah security patterns. Um so this is the one I tended to use. But um what I think would be really great and you can see Scott's got a Drupal contribute fix. Um so there's a lot of these skills that people are starting to put together.
And what would be I think really great is if we can start moving towards having something consistent. We've actually got a few clients that are are actually trying to pay us to build something like this for their organization and their rules. Uh and what I'm hoping is that we can have this as a thing that we all regularly communicate uh collaborate on. Um that if I get
started with Claude uh code or codeex that there's a thing that we're all as a community trying out together, improving together. Um we we also it's not just skills it has some dev plugins. So we'll do things like run clawed code inside DDEV in a container. So if it goes a bit wild, it's less likely to do that thing of that you may have heard of it
like just deleting everything on your machine. Um because it's just in its little container. And then we'll have like playright which is a tool that allows AI to control a browser like Chrome and like click around and look at your site and test things itself. And again that's all part of this one package you can install and it has everything that you might need to get going
with this. Our hope is that this is just something we've put together, but our hope is that this can become something that we push into the community. Uh we have a page or something for it. We have issues for it and people can start contributing to it. We've seen that with there's things like oh my claude code. I think someone from ZivTech um someone I was speaking
to yesterday was telling me about how the process they had of when they wanted to improve uh oh my uh uh Claude code um they submitted a skill that was called the harsh critic as opposed to just the critic skill. Um and um they had a process of testing. So you had to submit your skill and you had to prove that the thing was better in some
way and they would then test it and then submit it. and that he said he managed to get this the speed at which he went from submitting a a pull request and it getting accepted was like a day or so. Um so um I think we want something like that. You can see Ziptech as well the Drupal critic thing is is here. Um that there's something like
that I think we would really benefit from the Drupal community. Um but again we went a bit further with that because we have these skills. Well, what can we do with them? So there's this thing called Acria Nebula. One of the things I've been wanting to do since the beginning is Figma to Drupal, but not just Figma Drupal, WordPress Drupal and Drupal to Drupal and Squarespace to
everything to Drupal. Um, and we've been trying to do that for a good year and a bit. And we've had some level some some success, but this new flow has just done it now. Like we have clients, they've paid us to do it. Uh, we charged we suggest an amount of money and they they were like, "No, you could, you know, go even higher." Like it was
it was something that was like financially good for them. It was really good for us and the speed at which we could go from a WordPress site into we actually bought this into Acque Source which is a SASbased um version of like essentially you know Drupal CMS but um all of the things that we are using in Acqueource are part of the open source canvas. So open
source canvas has a command line interface to put things into it and edit it and it has some skills and so claude code or codecs can make use of those to build something and and so what we do is we take something as a source and this is one of the ones casal and we start off with it in um um we actually first started in WordPress
and we start getting it to build uh a design system in storybooks. Um storybooks has wide industry support. There's a lot of AI stuff around it. Has a lot of these really cool accessibility tests built into it that we make use of. But what we've done as well is made um made these uh skills so that that it knows how to make um uh storybooks components that
would be compatible with canvas. Canvas has a number of libraries that it supports. It supports Tailwind, but it doesn't support everything whereas Storybooks will support a lot more. So this helps find, you know, hone it down to that thing. Um, and so we'll have this site here. Um, and um, um, you see claude code on the side. Uh, you've got a prompt uh, that you start off
with. A lot of the time we actually store these prompts as tasks, MD files we point at. And then you'll see AI is building this in on the right hand side. You see the thing in a in a source and you can see all of those um, um, components being built and they're they're actually code components. So inaccurate source they store them as JavaScript code components. It's
pushing them in but it's also pushing it's also testing them. It's also checking them. It's validating them. It's looking for accessibility issues to then fix. It's also migrating the content um not just um uh not just actually the pure um you know the poor things and uh the pure uh uh you know components. Um and you saw in Dre note that we had something similar with lovable.
So you build something lovable and you bring that in. Um, so that was that. Again, I just like telling AI it's done a good job. If it ever takes over the world, I want to know that we're really polite. So can we just give it a nice clap? Well done. [applause] >> You know, you have come up with a lot of the stuff that we do. Um,
you know, early days actually I found out like, you know, there's actually an environmental cost of saying please too much. It kind of messes with it. But actually early days, people did some experiments and found that if you kind of start aggressively swearing at it, it actually is more likely to get the thing you want done, which uh I'm still not willing to try that out just
in case it remembers. Um [laughter] so we've done the same thing. We actually um not lovable. We found some place called one compiler, some random vibe coding site because we wanted to make a new website for free to give AI and a non we have actually focus our tooling on um uh we used to focus on marketeers. We focus it on highly skilled engineers who are good
Drupal developers but also good with AI. That's been our target now. Can we make a really good developer 20 30 times faster? Because if we can do that, that's going to be amazing. It's going to make lots of money. it's going to provide lots of value. Um, and then as that gets better and better, we can go back to worrying about can we get it so a
marketeer can do it? Can we do it fully automated? So by by because we did it the other way before, we spent a lot of time working on UX stuff when we probably didn't need to because the models were improving that you didn't need that particular UX thing. Took a lot of time. Um, so now we focused on uh on on on this. But having said that,
our project manager who she is not a developer, uh she did a computer science degree but hasn't done any programming was able to vibe code this thing through one compiler some random website and it just gave us some screenshots and basic HTML and we were able to bring it into story books and then into um um okay I don't have I've got a story books thing somewhere
else. Um and then uh and then bring it in. And so if I show you my so this is um me working with it. Uh you can see um in zed we've got um these tasks for all the steps. They're just written files. We've got the skills. Um uh the reference was like um um reference stuff. There's like the original pictures. Um was one of these places.
Okay. Uh, can't find it for now. Um, but we had the pictures that you could look at. H original designs. Yeah. So, they were just pictures of what it what it designed and AO was able to pull that in. And because it's controlling a browser, we found like someone can give gave us a Figma prototype. So, it wasn't even the proper Figma stuff. It could explore the
site and bring that in. Um, an existing Drupal site, explore the site and bring that in. So, we're starting to explore and then going back to what we did last year, going back to using this combined with like the migrate module. So we can start migrating a large amount of content without AI doing every single thing. But here it's doing the migration, but the AI is doing
um working on on it. And and one thing we found is that it's this is it's all open source. Um some of the tools tooling that we've got isn't uh open source yet, but it's eventually going to make its way into Acura Nebula or something that's complimentary to it if it's not appropriate for Nebula itself. Um the additions we've got are things like the accessibility checks, the
controlling of the Chrome browser to do those checks, uh and the content migration as well. Um but you can actually use this ongoing to actually try and create the content. So I'd written a lot of content uh about what I wanted us to say. I pointed at a website that was aiming to be the tone that I wanted to pick and AI said to me, "Yes, I
can see how that's a lot less copy. we need to make this a lot clearer. Uh because I just wrote so much and it made this this thing that was in a kind of like um you know hardcore um Silicon Valley style uh what drives us pioneers not followers. We build AI frameworks not just use them. We push the boundaries of what's possible your success is ours.
So it's like very you know aggressive. So we thought what if because again it got all the content from these MD files on my machine. What if I got AI to go and look around and change the tone a bit. So, I've got this about us too. And at Drupal Camp England, I actually um I asked people to give an example. Uh so, we'll do that in
a bit. Um but you can see now um here this is it doing a kind of friendly Britishy one. The AI team actually enjoy working with um not your typical tech company. We're small, tight-knit uh team who actually care. You work directly with the people that building your thing. We don't just implement them. Um no lock in, no sneaky recurring charges. So, it had that thing. Um
the final line was and yes we're UK based London Hastings but we're happy set up in your office wherever you are we'll bring the biscuits. So it kind of had that like thing now at Drupal Camp England they thought wouldn't it be fun to try and make it so that we had it as a moody teenager. So uh fine [laughter] here's who we are or whatever. We
do AI stuff really cool but you probably won't get we actually talk to you. Most companies make you deal with some random account manager who doesn't even know what your project is. It's so annoying. with us. You talk directly to the people who act people building your thing like the actual people revolutionary con concept apparently. >> So there you go. Now I can have a moody >>
so I I'm going to push past this one. There's a really cool test here on the thing where in order to do this well we're going to need a better testing framework. You can get it onto flow drop um on on dup star forge and we need a lot of people to help us with this. Um but here's an example of like we can you can click
a thing and it will run through a chat you had with uh the Drupal CMS agents. Um and it will show you the failures etc. Uh and if you look at the issues there the plan is to make it so that we can start making it easier and easier for people to create tests and submit them. So then we can start all that massive list of agents
that we had. we can start validating if they're any good, if they work, if they work on the different models, they work on open source. And the eventual dream is to use that as training data to make like a Drupal CMS AI assistant um model that's like local that is open source. So there is an issue there if you want to get there. But where I've gone
with this is the next step. So um uh I should actually um project claude um Drupal claude agent SDK. So what we've done is we've loved this Drupal this AI claude um this claude code stuff and we've been trying to make our agents better and better in Drupal and there's some features we need. So there's complicated things like memory, compaction, sub aent, skills, all these things we
need to build into PHP and I've been trying to do that. But then I thought, what if we just use cloud code itself? I'm having a great time with it a lot of time when I'm doing my own projects. I'm still using Drupal. And if I had time, I'd show you this compliance manager thing that we've been building. Um, we're still using Drupal a lot, but um,
a lot of time it's to store the content, but Claude code is so good that so much of the time I'm just putting markdown files on my file system and having Claude code go through them, explore them, write a plan, write another plan, do all these things, and then and then produce something. So, and it's got all these things. It's got skills. It's got its own way
of orchestrating things. It's got its own way of doing memory. So, what I found is some something that is called the Claude agent SDK. And it's really confusingly named because there's a lot of agent SDKs. Most agent SDKs are a framework that build agents. This is not that. This is a framework that connects your application to the actual claude code binary itself. So it like automates you
going into claude code and typing things and getting a response. Um and um uh there's a Python SDK. So what I did is I vibe coded. Again, this is going to be very expens experimental. Don't use this. I've got the phrase do it with Drupal. And when I announced this it was #d don't do this with Drupal this time. Um but um yeah we coded a PHP
SDK. Uh they've got a TypeScript one that now I think we're moving towards and you can set it up yourself. I this this page is really complicated and I'm I'm leaving it so because I really don't want people to use this that much because it is very very scary. But what we have here is something where I can actually do things with clawed code directly in Drupal.
So I can say what can you do? And it's I'm cla code and it'll do all that stuff. Now I've made something that looks like terminal but it's not actually terminal. This is Drupal sending things. There's already terminal JavaScript things that literally run terminal itself in the web browser that can connect with claude code. That's normal. What this is is Drupal sending things. Um, so tell me
again. And what I'm going to show you is when I say tell me again, I've got this thing here, processes, and you're going to see it pop up where it will actually create a version inside uh on my computer of claw code. So you see laps time, CPU usage, memory usage that is now doing a bunch of stuff. And you can see in Drupal, I'm managing all
these cla code sessions. So if I look at one of the ones I've done before, claude code stores a lot of it sessions in a raw JSON format. So I've got in Drupal a readable one. So you can see what can I do for you? It says that click more tells you those things. So we've got claude code running in Drupal. But okay, whatever. Like it's the
same as as as cloud code. But then what we found is we could actually expose our tools. So if I enable this um last time I did this it didn't work. So I won't actually do it properly. But all of the tools that we have access to in uh Drupal are now there. And we have a new module which I think is going to be released at
some point. I don't know exactly where it's going to go. It might go into tool module itself, but called tool CLI. Um and what this is is uh is everyone familiar with actions in Drupal core. So tool is us reimagining how we think actions ought to have been built from the start where it's a lot more structured. So the way you input things into these tools/ actions
is very clearly defined. Um I keep hearing that you'll get some people they'll say you need an entity ID or entities input and sometimes in Drupal you sort of have to guess and then things white screen. Okay that's not the way to do it. You do it again some other way. Whereas this tells you exactly how to input it and it gives you examples of how to
input it and has structured outputs. So it will tell you that it's um this is how it's going to tell you it's successful. You know is it one or zero? Is it yes or no? Is it success or failure? And we found that with the early actions that they just wouldn't tell us just Drupal kind of figures out like a texonomy has been made and so we
needed AI to know that this has been a success. So tool is that and it's now an interface that tools can work inside ECA. They can work with MCP. They can work with the orchestration module that connects to things like active pieces and obviously they can work with AI. And now we have it so they can produce a CLI. So you can use Drush to control all
of those tools. So now instead of doing things with clawed code, I can do this inside Drupal, I can also do it outside of Drupal. I can have Claude code do all the things that we got tools, all the ways of setting up entities rather than it just vibe coding it. Rather than it doing things via the database, it can use these tools that we've made and
we use Drush. And we're going to try and make Drush aliases so it's less long like it's easier for it to do. And then I thought, well, the thing about our agents that we already have is they are just a bunch of configuration of tools and a system prompt. And this system prompt is a setting that you can do when you send things off. So what I
can do is I can make it. So if I go down to one of the settings, which again deliberately made the UX terrible. I'm not putting effort into it. This is a this is not good. Don't use this. I can make it behave as an agent. So I can select an agent like um okay I've got all of them here. Um so I can select the content
type agent or do I have the Drupal CMS agent? Yeah, there we go. Drupal CMS assistant. And now now um I can ask it what can you do? And you'll see the way it talks is a little bit different because you can see I've put in that that that that uh the system prompts now appeared there. is also set up all the tools behind the scenes. And
now it's going to behave exactly like um a Drupal CMS agent. You can see the process has started. and there we go. Now it's doing markdown. Um what can I do with XS special agents? It tells me the content types, fields, taxonomy, and and how how I want it to work. So given I can do that. Well, what if I just want to use the agents I've
already built in Drupal CMS but with claude code behind the scenes? Um, and so if you go to AI agent assistant and Drupal CMS, you'll see um, edit, you'll see there's this new little setting, use claude code SDK for the attached agent. So I can come along and do this and say, uh, what can you And we'll see uh, that process has started. And so now instead
of using in behind the scenes, instead of using our agent system that we built in PHP, we're actually using clawed code and everything that has able ability to all of those skills you saw, we can now bring it into this. Um, and it's just behaving inside Drupal and from the end user point of view behaving exactly like those things. We can have field widget actions like buttons
in the the edit form. You click on it, AI does some automation and gets going. So that's something there. What we started doing is exploring in Drupal more ways that we can expose AI to agents outside of us. So Scott's kind of tried to coin the term inside out AI, which is what you've seen in Drupal CMS 1.0. And with this Nebula stuff, that's outside in is
AI agents communicating inside to Drupal, but us making Drupal better at being um allowing agents to be a, you know, first party citizen. And as I've done that, we've started finding little tools that we think we need to make AI use it better. So one tool that we have is we thought, okay, well, how can I get AI to start messing with our content? Well, we've created
something that means that we can output every single page as a markdown file. So, so it's a flat file, but keep some of the structure so that AI can still read and see this in a much easier way than taking screenshots. We've created a tool that can interact with views and indexes, so it can search for content. But the normal way views will work is you'll ask
you'll search for something in the content. If you're doing, you know, full text search, you'll find it in the content and it will give you a list of the content entities. Then you click on one and then you see it. This is not that great for AI. So we've done something where we've made a kind of tool like like a GP style tool like it does with
files where when you search for a phrase, it will go through all your content, but it will give you the content, but also the text just before and after that content appears to have AI know the context of what's going on there. And I haven't got it yet, but one of the big use cases for this that I'm trying to achieve is um somebody told me about
Paul Johnson told me about how in the early days he he there was a university and it was in the news and they got sued for I don't know if it's 20k or 200k. It was a lot of money because somebody had applied to that university based around a statistic on their website that was wrong and out of date. And um so what they had to do
is go and look through ginormous numbers of pages. Um, like University of Edinburgh has like 1,500 pages. U, this story is not about them. Don't worry if Emma who's here. I'm not bad mouthing that university. They got 1,500 uh websites, a lot of pages. But this other university, again, not Edinburgh, another university. They um they said that they had to actually pay a whole team of people
just read everything to find anywhere where this statistic appears. And so the thing I'm going to try and do is with this again it's going to be any week uh now any day now but it's like to use those things that we built with tool CLI to see doing something where you can get these agents just go through everything in your Drupal site uh and do an
analysis of it or change something. Um we renamed experience builder to canvas. So Adric had to go through his blog and and change the word experience builder into canvas. And you could do find and replace if you had it in Word. That's not that easy to do in Drupal. Uh you can do it with a script but you don't really want an automated script because actually what
if you have the phrase um we have renamed experience >> Yeah. You don't want that to be we have renamed canvas to canvas. Uh and so what you actually want is an AI to go through it and just check I want to rename this but look at the context around it and figure out is this actually one that you want to rename. Um and we have some
demos where what we will then do is output it um as a um uh uh to the content moderation thing so human can go and approve approve approve. So this is a little bit about what the future is. I don't know to what degree we're going to actually bring this in to the core of like something like Drupal CMS uh or if it's going to be something
that is an addition for the more advanced cases. It's certainly the case that making Drupal a first party citizen for connecting with these things is a priority. Uh so some quite hardcore issues to do with like having something like Drush in core itself. Uh I think it's called Dex. Uh the symphony runtime so that when you are calling Drupal you don't have to bootstrap the whole thing.
It makes it a lot more efficient. We got stuff to do with making agents um have an execution principle so that we have the permissions so that when somebody communicates to Drupal we we we we can trace and log what that agent has done and what rules and permissions it should have. So, there's a lot of stuff going on to make this thing uh something that we
can go from don't do this with Drupal ever to oh maybe actually it's quite cool. So, um yeah, I think um we're out of time so I haven't got the last thing to show but we got close to all of it. Um so, yeah. Um do I think it will be relevant? Um yes, we need sore content even though websites aren't as big. So um uh and
as I said it's not just the code it's community we're all learning together. Um so yeah join the conversation hash AI on Drupal Slack. Uh there's new drupal.orgai. Um you can inquire about joining AI initiative hash AI contribute always on uh so uh feel and I'm also on LinkedIn. Um and I'm founder of free to give. So if you want to partner on anything feel free to
contact us to collaborate or do anything. Um so uh yeah thank you. Any time for questions or no time for questions? Who who do I'm talking to? Okay. Until somebody tells me no. Does anyone want to ask a question? >> Yes. >> Integration with lane fuse. You know what lane fuse is? >> Yeah. Um there is a module for that. It's a classic Drupal thing. There is
there's some some people worked on the Langfuse thing. So um there's a um uh the observability you're involved in observability. So this person involved in the observability um module which is sort of like doing it inside Drupal. The kind of the logging uh langu is the logging thing, right? I've got that right. >> Yeah. So like um and what we've decided to do is create something that
allows you to log things in Drupal uh for simple cases but also in a structure that could work with Langfuse, open telemetry, etc. etc. Marcus has also made something called the agent debugger which is super cool where when you do something with agents the debugger does show you a graph of everything working. So it shows you um uh all the steps it did all the tool calls
it has it actually shows you like a visual graph of it. Uh and that's that's a little bit like langu stuff but for like the debugging process. I would like that to become something we can do for logging as well. Um, there's reasons why I think we should do a lot of that stuff in Drupal because I think during the build process, uh, you're going to want
to see a lot of those logs and a lot of those things like Langfuse and, uh, open telemetry are built for like CIS admins. Um, it's not that easy as a non-dev to see what your agents are doing. So, I think there's stuff that we need to do to improve that. Um, but there is also a module uh, I think it's just called Langfuse which integrates the
AI stuff with Langfuse itself. Are there any more questions? >> How much of what you demoed was open source versus connected to some closed source? >> Oh, everything is open source. So, uh the only thing that wasn't fully open source is that um the Figma to Drupal stuff. So, it's Aquin Nebula is fully open source. We have some of the extra tooling that we've built that is
not yet open sourced. uh but we're just working on that right now like this sort of a thing that we're building to so bringing some of those things into nebula um the way we did things in our own version is a very very fine it's aimed at claude code and this particular use case uh and bringing things into a source and the way Nebula's tried to do
things is more open in sense of you can use whatever tool you want so there's a more of an complicated install process it's not complicated but it was complicated to make uh and and they've got a way that your skills could work in cursor or whatever you want to use whereas Ours right now is just pure clawed code. So the moving process is something where we have
to try and do the things that we've done well but also create a process that means that developers can use their own tooling rather than ours. Uh so that's why it's not open source yet but everything else is. So like it's either on Drupal Forge. So if you go to Drupal Forge you'll when you see one of those demos you'll see the repo, you'll see where those
are or it's on drupal.org um or it's on GitHub. But yeah, everything's open source. We're really finding that helps. Um I'm very nervous from a business model point of view of doing too much proprietary. There's a few things we thought of doing proprietary, but whereas we I think are ahead and and we could make some money by being able to do this stuff faster and better right
this second. A lot of the stuff that I think is really cool now, everyone will be doing in eight months time easily. So having a product based around that and it's hard because as soon as I have a product I know works, I can use VI coding to some somewhat copy it. So what we're taking from a business standpoint is we're taking the approach of aiming to
open source things, try and get as many people collaborating on them. So the stuff that the tooling that we got is good. Uh and then trying to find incredibly hard problems with high margins and high value that we try and solve with AI today and and walk away with a large amount of cash now and no worry about the future, ongoing revenue, uh product, anything like that
because I I don't know what's going to happen in years time. So I just need if money's in my bank, at least that's a thing. And AI can't take that yet. I think if it could, that is very scary. Um, so yeah, >> I mean, again, we're way over time, but is there anything else? Um, >> yeah, >> from from a security standpoint, it seems like you're
using some of these tools in a development scenario, like when they go into a production environment, like you would want like a second version that has a lot of things locked down or removed and stripped out. part of the road. >> Yeah. Yeah. So, what we're seeing is like a lot of this exploration in my cloud agent SDK because I'm trying to get it to work in
this like weird environment, we're seeing things that we actually do really need. So, like the tool CLI is not that is I've got a version in my module that is like the the kind of the bad one, but we're making a real one in tool that will be secure. Uh like I said, the execution principle and uh and for the permissions of that is an issue that
a lot of people are working on right now and it is not me voding it. So uh it is it is something that we need more eyes on but that's going to be really important. Um like the GP tool as well will be something that I think we want to do in a secure way. Actually um the the Symphfony people saw what I'd done and they've created
their own uh agent SDK connector in Symphfony. That is something I think you could trust where you can then build your Symfony application to use claude code. And then also one of my devs who've got involved in this, he's moved it to the TypeScript uh official TypeScript SDK. So now I don't have to maintain one through constantly vibe coding it. And that's another way that's going to
be somewhat more secure. Uh there's quite a lot of security issues that we have to think about with um Claude code doing loads of weird stuff with the files. Um you can contain it to one folder. You can give it only access to the tools that you give it access to. Um, but we're going to have to think a little bit about that because I do think
there's a lot right now where AI works with files better than it does with databases. And there's this um initiative, there's this agent FS thing that's in GitHub and a lot of people exploring it of a new agent file system where they're changing the file system itself to be aimed at agents and every single file will have a little SQLite database that keeps a record of every
single change. And the idea is if I just let agents loose on this new agent FS without using git work trees that's very slow and cumbersome AI can do whatever it likes because I just revert back to any moment. So there's all these kind of things we're thinking about like do we want to make it so almost all content and all config and everything is stored in
files in Drupal or in a NoSQL database or something so we can have a history of it but then how do we do that and have the permissions you saw with claude code it stored a history of my logs in this JSON file you know that's not going to be very secure for Drupal right now because a lot of people's private information might be in that so
we need some kind of permissions around it there's a lot that would have to be done before this is something that would be usable uh in an end user environment safely. Uh but the thing is you can install that like you go to that claw agent SDK there is a bash script it sets up claude code inside DDEV so you can get it working so it's like
we can actually see if it's any good uh and the main thing I'm trying to do is find evidence that this cla code approach is better than the other approach like that finding everything will it do a better job than the other one that agent tests will it get to 100% faster uh and if so is it worth it um or do we copy things from it
into the PHP version of agents that Okay, [applause] >> thank you.