Drupal AI Contribution meeting 2025-06-30
>>> [!note] Migrated issue <!-- Drupal.org comment --> <!-- Migrated from issue #3533024. --> Reported by: [valthebald](https://www.drupal.org/user/239562) >>> <p>Drupal AI Contribution meeting from June 30, 2025 at 13:00 UTC to July 1, 2025 13:00 UTC (Check your local time at <a href="https://www.timebie.com/std/universal.php">https://www.timebie.com/std/universal.php</a>)</p> <h2>Where</h2> <p>#ai-contrib channel in <a href="https://www.drupal.org/slack/">Drupal Slack</a></p> <h2>Agenda</h2> <h3>Attendees self-intro and interests</h3> <h3>Follow-up to topics of previous meeting</h3> <h3>Release schedule for 1.1.0, 1.2.0 and 2.0.0</h3> <h3>Possible change of meetup frequency</h3> <h2>Attendees</h2> <p>(in the order of appearance in the chat)</p> <h2>Meeting transcript</h2> <h2>0&#65039;&#8419; Roll call! Who's here? And if you're up to a smalltalk, what are your interests (inside Drupal AI and outside of it)</h2> <table> <tr> <td>valthebald</td> <td>Val "valthebald" here, chess hobbyist lately &#128578;</td> </tr> <tr> <td>Bisonbleu</td> <td>Hi, Renaud, first time here, I&rsquo;m just starting <a href="https://en.wikipedia.org/wiki/Children_of_Dune">Children of Dune</a>, the 3rd book of 6 by Frank Herbert&hellip;&nbsp;(edited)</td> </tr> <tr> <td>rakeshjames</td> <td>Rakesh James (d.o- rakeshgectcr) here, Playing Badminton , Cricket and&nbsp; taking photos&nbsp;(edited)</td> </tr> <tr> <td>Marcus Johansson</td> <td>Marcus, right now I'm very invested in buying bicycle camping gear &#128578;</td> </tr> <tr> <td>dan2k3k4</td> <td>Dan, dan2k3k4Getting back into swim training after 15+ years of avoiding it</td> </tr> <tr> <td>Andy Marquis</td> <td>Andy here, trying to find work that pays actual $ :wink: But for now, doing some contrib stuff here and there to keep Drupal breathing.</td> </tr> <tr> <td>lussoluca</td> <td>Hi, I'm Luca from Italy. Scouting and mountain trips at the moment &#128578;</td> </tr> <tr> <td>breidert</td> <td>Hello - Christoph breidert here, looking forward to collaborating with you.Huge Sci-Fi fan (for example timeless Dune, but also modern stuff like Murderbot)&nbsp;(edited)</td> </tr> <tr> <td>baddysonja</td> <td>Badd&yacute; (baddysonja) living in Germany, born in Iceland. My interest outside of Drupal, AI and just general company work is GOLF. I love playing golf, hitting the balls, being in the nature for 4-5 hours and just think about next shot.</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>Kristen, California :wave: new interest is Pickleball :table_tennis_paddle_and_ball: lots of fun and good for socializing outside&hellip; other interests have mostly taken a back burner including hiking, travels, photography&hellip; though I&rsquo;m in Washington state at the moment</td> </tr> </table> <h2>1&#65039;&#8419;&nbsp; Release schedule</h2> <table> </table> <h2>1&#65039;&#8419; 1&#65039;&#8419;&nbsp; Current stable release is 1.1.0, and there are several commits in 1.1.x branch since the release</h2> <table> <tr> <td>valthebald</td> <td>@svendecabooter has raised the question if we're going to release 1.1.1 any time soon</td> </tr> <tr> <td>valthebald</td> <td>and the general question here what is the logic of releases</td> </tr> <tr> <td>valthebald</td> <td>For the "current stable", I suggest we have release windows twice a month, following core's model</td> </tr> <tr> <td>valthebald</td> <td>i.e. if there are approved changes in 1.1.x (current stable), we can make a new patch release</td> </tr> <tr> <td>valthebald</td> <td>and skip the release window otherwise</td> </tr> <tr> <td>Marcus Johansson</td> <td>Is bi-weekly Wednesdays good? Then people can expect it and if there is a security release its on the same day.</td> </tr> <tr> <td>valthebald</td> <td>I was thinking about wednesdays too, and for the same reason</td> </tr> <tr> <td>valthebald</td> <td><a href="https://www.drupal.org/drupal-security-team/security-release-numbers-and-release-timing">https://www.drupal.org/drupal-security-team/security-release-numbers-and-release-timing</a></td> </tr> <tr> <td>valthebald</td> <td>since core normally takes the third Wednesday, and it is not recommended to do releases on the same day, maybe we can use second and fourth Wednesdays?</td> </tr> <tr> <td>valthebald</td> <td>i.e. planned date for 1.1.1 (we already know there are merged issues there) would be July, 9?</td> </tr> <tr> <td>Marcus Johansson</td> <td>Sounds good to me</td> </tr> <tr> <td>valthebald</td> <td>@svendecabooter ^</td> </tr> </table> <h2>1&#65039;&#8419; 2&#65039;&#8419; Release 1.2.0</h2> <table> <tr> <td>valthebald</td> <td>1.2.x is work in progress, and <a href="https://drupal.slack.com/archives/C0803LX4536/p1751279718469809">https://drupal.slack.com/archives/C0803LX4536/p1751279718469809</a> already shows that it was good to split 1.1.x and 1.2.x</td> </tr> <tr> <td>valthebald</td> <td>Shall we plan release date for 1.2.0 already, or it's too early?</td> </tr> <tr> <td>valthebald</td> <td>if it is too early, what conditions should be met to set the date.if it's not too early, what date should we target?</td> </tr> <tr> <td>valthebald</td> <td>Meta issue for release 1.2.0 is[#3528530]</td> </tr> <tr> <td>Marcus Johansson</td> <td>I think we can do an alpha release this week already - it will not be feature complete and it will not have upgrade paths yet, but it would be good if people start playing around with Field Widget Action from @artem and we could also merge Prompt Management from @Scott Euser, so its there.I have done some other features, but someone should review them. Any none-trivial change from me, will not be merged anymore without two extra eyes on it.The list includes[#3531212]</td> </tr> <tr> <td>valthebald</td> <td>I can pledge on reviewing those (especially the first one is interesting)</td> </tr> <tr> <td>valthebald</td> <td>assuming we have people for cross-reviews (I think we do), would it be realistic to target end of summer for 1.2.0 and Vienna for (1.3.0|2.0.0)?</td> </tr> <tr> <td>Marcus Johansson</td> <td>I think so - there are three big features left that we have mapped out, base tools/tools api, ShortTermMemoryPlugin, Document Loader Normalization Layer. Outside of that anything that is high prioritized from Experience Builder.</td> </tr> <tr> <td>breidert</td> <td>I looked at the issues. They are great functionality to have. I think it would be easier for people without context to review, if we had standardized testing instructions. Once we have a DDEV setup I would imagine, that such issues come with a code snippet that a tester can paste, and they get the complete setup for review. Nothing to do now, but spreading the word &#128578;</td> </tr> <tr> <td>Scott Euser</td> <td>Yeah once we have some feedback on Prompt Management it should be a great easy task for contributors to follow the instructions there to convert more prompts over</td> </tr> </table> <h2>2&#65039;&#8419; Follow-ups from the previous meeting</h2> <table> </table> <h2>2&#65039;&#8419; 1&#65039;&#8419; AI initiative was announced on June 9</h2> <table> <tr> <td>valthebald</td> <td>Some dust has already settled, is it now more clear what it is and how is it related to what happens in #ai-contrib?</td> </tr> <tr> <td>valthebald</td> <td>Do you have any concerns, questions, emotions (positive or negative) that you'd like to share?</td> </tr> <tr> <td>Bisonbleu</td> <td>I like this saying: &laquo;Don&rsquo;t tell me you&rsquo;re funny. Make me laugh.&raquo;&nbsp;(edited)</td> </tr> <tr> <td>valthebald</td> <td>@Bisonbleu that doesn't sound as a positive emotion :wink:</td> </tr> <tr> <td>Bisonbleu</td> <td>Hm&hellip; maybe too much <a href="https://en.wikipedia.org/wiki/Melange_(Dune)">spice melange</a> ?</td> </tr> <tr> <td>valthebald</td> <td>nice to see a fellow Dune fan &#128578;</td> </tr> <tr> <td>baddysonja</td> <td>We had a webinar about the history, how we are organised and some tips on how to get involved. We are still at the starting block, so there will be more to come. I need to check if we already have the recording available.</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>We will have a blog post recap of that webinar soon with the recording</td> </tr> </table> <h2>2&#65039;&#8419; 2&#65039;&#8419; GUI tool builder (base tools or ECA)</h2> <table> </table> <h2>2&#65039;&#8419; 3&#65039;&#8419; More efficient data migration</h2> <table> </table> <h2>2&#65039;&#8419; 4&#65039;&#8419; Bigger tasks like full dynamic campaigns, changing brand colors, personalization</h2> <table> </table> <h2>2&#65039;&#8419; 5&#65039;&#8419; Content migration</h2> <table> </table> <h2>2&#65039;&#8419; 6&#65039;&#8419; better boilerplate recipe(s)</h2> <table> </table> <h2>2&#65039;&#8419; 7&#65039;&#8419; Clear documentation, understanding and promotion of what is available and what is planned</h2> <table> </table> <h2>Listing everything here to keep track. Some of those items already made it to 1.2.0 roadmap, some will be discussed later today</h2> <table> </table> <h2>3&#65039;&#8419; We need your help!</h2> <table> </table> <h2>3&#65039;&#8419; 1&#65039;&#8419; Test the new UI for triggering automators, agents etc.</h2> <table> <tr> <td>valthebald</td> <td>Citing @Marcus Johansson:@artem has finished the first version of the widget solution for triggering Automators, Agents or anything else via a button. Its here: <a href="https://www.drupal.org/project/ai/issues/3528684">#3528684: Add processor and field widget assist plugin system to AI Content Suggestions</a>It needs more improvement still probably, but the architecture is sound, so I have approved and merged it. Its in 1.2.x-dev and currently only have some few text solutions and some agent solutions in this branch: <a href="https://www.drupal.org/project/ai_agents/issues/3529591">#3529591: Add field widget action plugin based on agents</a>.It would be great if people could start testing it, to see what needs to improved. More follow up issues like this will come so for the Automators, so we cover at least 10 field types at 1.2.x launch: <a href="https://www.drupal.org/project/ai/issues/3532873">#3532873: Create alt text automator field widget</a>. Anyone wanting to work on this, we would be very helpful.&nbsp;(edited)</td> </tr> <tr> <td>Bisonbleu</td> <td>I&rsquo;m looking at the alt text automator field widget, sounds inviting&hellip; but that&rsquo;s just me being naive, right? i.e. not a simple task? @Marcus Johansson on a scale of 1 to 10, this is a what?</td> </tr> <tr> <td>Marcus Johansson</td> <td>5-6 - it would be good to create a good base class first for all implementation in the Automators, after that its a 3-4 maybe &#128578;</td> </tr> <tr> <td>Bisonbleu</td> <td>About that base class, can you think of any existing examples ?</td> </tr> <tr> <td>Marcus Johansson</td> <td>Right now there is only the text one, so the idea is that similar to how you write very little code with Automators to create a new plugin, we want to do the same for these widgets. So, any pattern that is reusable should be in the base class. I will most likely work on Wednesday on this.</td> </tr> <tr> <td>breidert</td> <td>Please check @artem&rsquo;s comment, maybe there is some configuration to borrow for <a href="https://www.drupal.org/project/ai/issues/3532873">Create alt text automator field widget</a>:By the way, there is already an example plugin in this issue <a href="https://www.drupal.org/project/ai_agents/issues/3529591">#3529591: Add field widget action plugin based on agents</a> that does the similar thing like <a href="https://www.drupal.org/project/ai_image_alt_text">https://www.drupal.org/project/ai_image_alt_text</a> module with Field Widget Actions and Agent.</td> </tr> </table> <h2>3&#65039;&#8419; 2&#65039;&#8419; Modeler API proof of concept</h2> <table> <tr> <td>valthebald</td> <td>@jurgenhaas has a very cool solution where the Modeler API takes over the responsibility for the Agents Form and if you install <a href="http://BNMN.io">BNMN.io</a> (or any other modeler in the future), its possible to setup the agents using graphs/GUI. The issue is here: <a href="https://www.drupal.org/project/ai_agents/issues/3530225">#3530225: Modeler API: Allow users to switch between the model and the form</a>. It would mean that you will be required to have Modeler API to run Agents until AI 2.0.0 is released - @Marcus Johansson basically just wants to see that there isn't a huge uproar against this, before merging</td> </tr> <tr> <td>jurgenhaas</td> <td>Adding to that intro, the Modeler API would not bring a huge weight to the stack, it's just implementing permissions, collection, routing, access control handler, list builder, and all those other classes and handlers that come with an entity type. AI Agents would not have to implement them all themselves, they would use the generic approach from Modeler API. If no modeler is installed, that's all the API does.</td> </tr> </table> <h2>3&#65039;&#8419; 3&#65039;&#8419; Running agents from drush</h2> <table> <tr> <td>valthebald</td> <td>@Marcus Johansson :"Another week, another shout out for maintainers - I did a solution for running agents from Drush. There are unimited possibilities for this. If you want to co-maintain or if you have cool ideas, please write in the issue queue. See <a href="https://www.drupal.org/project/ai_drush_agents">https://www.drupal.org/project/ai_drush_agents</a> and <a href="https://www.youtube.com/watch?v=UoWLlF8V9yA&amp;ab_channel=DrupalAIVideos">https://www.youtube.com/watch?v=UoWLlF8V9yA&amp;ab_channel=DrupalAIVideos</a>"</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>@RobLoach ^ since you did similar work</td> </tr> <tr> <td>RobLoach</td> <td>Nice one! Biggest issue I had with the MCP Drupal Server drush component was that it spins up a drush process, which often isn't available. This one kind of gets around doing that :+1:</td> </tr> </table> <h2>3&#65039;&#8419; 4&#65039;&#8419; Evaluate local setup with ddev</h2> <table> <tr> <td>valthebald</td> <td>@breidert has setup an issue for creating a development environment with DDEV for helping you with the AI module. Please come with feedback:<span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-7"><a href="https://www.drupal.org/project/ai/issues/3532795" title="Status: Closed (fixed)">#3532795: Provide development environment for AI development using DDEV</a></span></td> </tr> <tr> <td>lussoluca</td> <td>I can work on it. I already set ddev for local environments on other modules, like <a href="https://www.drupal.org/project/webprofiler">webprofiler</a> and <a href="https://www.drupal.org/project/search_api_typesense">search_api_typesense</a></td> </tr> <tr> <td>Bisonbleu</td> <td>That would be very useful. Right now I&rsquo;m working from a Ddev sandbox and adding tools in an empirical way&hellip;:alembic:</td> </tr> <tr> <td>lussoluca</td> <td>do you have something that you can share as a starting point?</td> </tr> <tr> <td>Bisonbleu</td> <td>Sure, what would be useful&hellip;?</td> </tr> <tr> <td>lussoluca</td> <td>anything you have that can be shared, then I'll work on a generic setup</td> </tr> <tr> <td>Bisonbleu</td> <td>This is how I got started. Let me know if you find issues.% mkdir dai-sandbox &amp;&amp; cd dai-sandbox% ddev config --project-type=drupal11 --docroot=web% ddev composer create &ldquo;drupal/recommended-project:^11.0.0&rdquo; --no-install% ddev composer require drush/drush:^13.6% ddev composer install% mkdir -p config/sync% cp web/sites/example.settings.local.php web/sites/default/settings.local.php- configure settings.php: config_sync_directory, hash_salt, trusted_host_patterns% ddev start% ddev drush site:install --locale=en --account-name=admin --account-pass=admin -y% git init- update .gitignore as required e.g. *.sql, *.zip, *.mysql.gz, etc.- add useful modules; customize for your requirements% ddev composer require drupal/admin_toolbar drupal/pathauto drupal/redirect drupal/token drupal/ctools- add ai related modules; customize for your requirements% ddev composer require drupal/ai:1.1.x-dev@dev drupal/ai_agents:1.1.x-dev@dev drupal/ai_provider_anthropic:1.1.x-dev@dev drupal/ai_provider_openai:1.1.x-dev@dev- to test patches in composer.json% ddev composer require cweagans/composer-patches- DDEV EXTRAS:- Adminer (like PhpMyAdmin but smaller/nicer)% ddev get ddev/ddev-adminer- Mailpit: captures outgoing emails; it&rsquo;s bundled in Ddev, you can open it with this command;% ddev mailpit- PHPUNIT (setup)% ddev composer require --dev drupal/core-dev% ddev composer update --with-all-dependencies% cp web/core/phpunit.xml.dist web/core/phpunit.xml- configure as follows <env name="&ldquo;SIMPLETEST_BASE_URL&rdquo;" value="&ldquo;https://dai-sandbox.ddev.site&rdquo;/"> <env name="&ldquo;SIMPLETEST_DB&rdquo;" value="&ldquo;mysql://db:db@db/db&rdquo;/"><br> <parameter name="&ldquo;outputDirectory&rdquo;" value="&ldquo;sites/simpletest/browser_output&rdquo;/">- then you should be able to run tests, for example:% ddev exec &ldquo;cd web/core &amp;&amp; ../../vendor/bin/phpunit tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php&rdquo;% ddev exec &ldquo;cd web/core &amp;&amp; ../../vendor/bin/phpunit ../modules/contrib/pathauto/tests/src/Unit/VerboseMessengerTest.php&rdquo;- PHP_CodeSniffer / phpcs (setup)% ddev composer require --dev drupal/coder- register the Drupal coding standards:% ddev exec vendor/bin/phpcs --config-set installed_paths vendor/drupal/coder/coder_sniffer- check what standards are available (should include &ldquo;Drupal&rdquo;, &ldquo;DrupalPractice&rdquo;)% ddev exec vendor/bin/phpcs -i- check a specific file or directory:% ddev exec vendor/bin/phpcs --standard=Drupal web/modules/custom/your_module% ddev exec vendor/bin/phpcs --standard=Drupal,DrupalPractice web/modules/custom/your_module- add a phpcs.xml file in your project root <?xml version=&ldquo;1.0"?> <ruleset name="&ldquo;Custom" drupal standards> &nbsp; <description>Custom coding standards for this project</description> &nbsp; <rule ref="&ldquo;Drupal&rdquo;/"> &nbsp; <rule ref="&ldquo;DrupalPractice&rdquo;/"> &nbsp; &nbsp; <!-- Paths to check --><p> &nbsp; <file>web/modules/custom</file> &nbsp; &nbsp; </p> <!-- Exclude certain files --><p> &nbsp; <exclude-pattern>*.min.js</exclude-pattern> &nbsp; <exclude-pattern>*.min.css</exclude-pattern> </p></rule></rule></ruleset>- then you can run this command% ddev exec vendor/bin/phpcs&nbsp;(edited)</parameter></env></env></td> </tr> <tr> <td>lussoluca</td> <td>yes, exactly</td> </tr> <tr> <td>Bisonbleu</td> <td>Ok, I&rsquo;ll review the above and add more info for the setup items&hellip;</td> </tr> <tr> <td>breidert</td> <td>Hello @lussoluca and @Bisonbleu - thank you for showing interest to contribute on this issue. Please make sure you follow the steps in the todos of the issue:TodoAlign with <a href="https://www.drupal.org/u/marcus_johansson">Marcus</a> because some prior work exist for the integration of Drupal AI with <a href="https://www.drupalforge.org/">DrupalForge</a>Create a proposal before implementation as issue commentImplement first versionList follow up tasks as issue commentsThe important part is the concept (as always :grin:). The main problem to solve is which AI key to use. We have different possibilities (Amazee..., OpenAI key during installation, etc.).To make it easy please suggest an approach first, so we can have more eyes on it and make sure the right thing gets implemented.</td> </tr> <tr> <td>Bisonbleu</td> <td>Thanks @breidert ! @lussoluca @rakeshjames I have updated my ^^ above quick-start list, including phpunit &amp; phpcs setups. Cheers!</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>Thanks for contributing here&hellip; please put any comments and code in the issue itself to further the issue along</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>@Darren @Sal you guys are likely interested from the Drupal Forge angle</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>@dan2k3k4 @matthews you guys might be interested as well</td> </tr> <tr> <td>Bisonbleu</td> <td>Posted as per your request @Kristen Pol (she/her):<span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-7"><a href="https://www.drupal.org/project/ai/issues/3532795" title="Status: Closed (fixed)">#3532795: Provide development environment for AI development using DDEV</a></span>#comment-16171997&nbsp;(edited)</td> </tr> <tr> <td>Darren</td> <td>Thanks for the heads up. If we put our recommended starting point in a repository, I can create a Drupal Forge template that provides a LiteLLM key and keep it updated. There are two templates that work with both DDEV and Drupal Forge we could use as starting points:<a href="https://github.com/drupalforge/starter_template">starter_template</a>: Creates a regular Composer project.<a href="https://github.com/drupalforge/DrupalPod">DrupalPod</a>: Creates local Composer repos in the repos directory.Once we agree on where to create the repo, I can get started.</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>Thanks @Darren please update the issue with your info when you get a chance</td> </tr> </table> <h2>3&#65039;&#8419; 5&#65039;&#8419; New project page on d.o.</h2> <table> <tr> <td>valthebald</td> <td>There is an issue about what should be present on the project page <a href="http://drupal.org/project/ai">drupal.org/project/ai</a>[#3532725]Your ideas are welcome!</td> </tr> <tr> <td>breidert</td> <td>It looks nice :nice:, thank you all who participated in the creation.&nbsp;(edited)</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>Love all the marketing feedback :heart_eyes:</td> </tr> </table> <h2>3&#65039;&#8419; 6&#65039;&#8419; Provider documentation template</h2> <table> <tr> <td>valthebald</td> <td>@Marcus Johansson:We have started to document more and the next step is to start documentation information about the providers. I have setup a template here, check if it covers everything and when it does its free for anyone to contribute for each and every provider:<span class="drupalorg-gitlab-issue-link drupalorg-gitlab-link-wrapper"><a href="https://git.drupalcode.org/project/ai/-/work_items/3533040" class="drupalorg-gitlab-link">https://git.drupalcode.org/project/ai/-/work_items/3533040</a></span></td> </tr> </table> <h2>4&#65039;&#8419; New plans</h2> <table> </table> <h2>4&#65039;&#8419; 1&#65039;&#8419; Contribution survey</h2> <table> <tr> <td>valthebald</td> <td>@breidert is working on a contribution survey for the features organization would like to have</td> </tr> <tr> <td>breidert</td> <td>If you want to preview the survey and provide feedback you can contribute to the <a href="https://www.drupal.org/project/ai_initiative/issues/3532322">issue in the Drupal AI Initiative project</a>.</td> </tr> </table> <h2>4&#65039;&#8419; 2&#65039;&#8419; AI logging and telemetry</h2> <table> <tr> <td>valthebald</td> <td>this is an early concept, meta issue to be created and presented by @breidert</td> </tr> <tr> <td>breidert</td> <td>Here is the <a href="https://www.drupal.org/project/ai/issues/3533109">meta issue</a>, we need review and contributors with the relevant experience.</td> </tr> </table> <h2>4&#65039;&#8419; 3&#65039;&#8419; UX concept</h2> <table> <tr> <td>valthebald</td> <td>this is an early concept, meta issue to be created and presented by @breidert</td> </tr> <tr> <td>breidert</td> <td>Working on it, and will link it here, once we have it.</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>We are moving the UX meeting to weekly and expanding its scope from just XB to be more general</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>I&rsquo;ve added Christoph as optional on that and added @bbruno and am waiting to get an email address from @yannickoo to add him</td> </tr> </table> <h2>5&#65039;&#8419; How can we help?&nbsp;(edited)&nbsp;</h2> <table> </table> <h2>5&#65039;&#8419; 1&#65039;&#8419; What are the areas of AI ecosystem in Drupal that you are interested in?</h2> <table> <tr> <td>lussoluca</td> <td>security:[#3527867]spent management: I haven't find an issue for that, should I create one?</td> </tr> <tr> <td>valthebald</td> <td>@lussoluca spent management - do you mean budget?</td> </tr> <tr> <td>lussoluca</td> <td>exactly</td> </tr> <tr> <td>lussoluca</td> <td>like <a href="https://docs.litellm.ai/docs/budget_manager">https://docs.litellm.ai/docs/budget_manager</a></td> </tr> <tr> <td>valthebald</td> <td>go ahead and create an issueI don't reckon anything existing, at maximum someone would find a preceding/duplicate issue</td> </tr> <tr> <td>Marcus Johansson</td> <td>Not exactly the same, but @svendecabooter works on <a href="https://www.drupal.org/project/ai_usage_limits">https://www.drupal.org/project/ai_usage_limits</a>.</td> </tr> <tr> <td>Marcus Johansson</td> <td>For[#3518963]&nbsp;(edited)</td> </tr> <tr> <td>Marcus Johansson</td> <td>And[#3527867] is actually done :smile: If you try 1.1.0 you will see that the chatbot will show you what its doing all the time.It was the reason why 1.1.0 was so delayed.</td> </tr> <tr> <td>Marcus Johansson</td> <td>Sorry, should close it.</td> </tr> <tr> <td>Marcus Johansson</td> <td>We however should add one for long running tasks/symfony messenger as discussed @lussoluca</td> </tr> <tr> <td>lussoluca</td> <td>Yes, that was the only issue that talks about long-running tasks I can find, but I mean the integration with Symfony Messenger</td> </tr> <tr> <td>lussoluca</td> <td>do you think I cant take a look at[#3518963]?</td> </tr> <tr> <td>Marcus Johansson</td> <td>Yes, would be nice - I can scope it out if you want?</td> </tr> <tr> <td>lussoluca</td> <td>It would be helpful, thanks</td> </tr> <tr> <td>Bisonbleu</td> <td>As far as I&rsquo;m concerned, it&rsquo;s a bit soon to say. But I do enjoy re-creating the examples I see in videos (I&rsquo;m a sceptic) and see how well they work (or don&rsquo;t) and what purpose they serve. I guess <a href="https://www.drupal.org/project/ai/issues/3532936">this issue</a> shows just that.Otherwise, and this is just instinct, I might be interested in testing RAG search using SQLite. Don&rsquo;t ask me why&hellip; it&rsquo;s just there. And, yes, I don&rsquo;t know what I don&rsquo;t know&hellip; :upside_down_face:</td> </tr> <tr> <td>Marcus Johansson</td> <td>@lussoluca - I have updated[#3518963], but its still very basic, I probably need to scope out more. How we take the input is the biggest issue, because we want to be able to attach this to Inputs, Outputs, but also Tool Decisions with its parameters. Probably a ChatMessage.</td> </tr> <tr> <td>lussoluca</td> <td>thanks!</td> </tr> <tr> <td>Marcus Johansson</td> <td>If you have time to research how <a href="https://openai.github.io/openai-agents-python/guardrails/">https://openai.github.io/openai-agents-python/guardrails/</a> and <a href="https://github.com/langchain-ai/langgraph-guardrails-example">https://github.com/langchain-ai/langgraph-guardrails-example</a> handles all different inputs, it would be great to have some overview of it. I can probably do it on Thursday otherwise</td> </tr> <tr> <td>lussoluca</td> <td>of course, I can look at them starting from tomorrow</td> </tr> <tr> <td>Marcus Johansson</td> <td>Another thing is to look into how much its possible to reuse the Field Validations/Validations rules for deterministic guardrails, but that's secondary to getting the architecture correct.</td> </tr> </table> <h2>5&#65039;&#8419; 2&#65039;&#8419; What would it make possible for you to contribute more?</h2> <table> <tr> <td>Andy Marquis</td> <td>A project/client willing to sponsor the work!&nbsp; I think theres a large pool of out of work Drupal devs willing and capable of contributing to this initiative but there&rsquo;s only so long we can all work for free.</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>That&rsquo;s definitely the case for lots of folks across all of Drupal contribution unfortunately</td> </tr> </table> <h2>5&#65039;&#8419; 3&#65039;&#8419; Do you have general improvement ideas on how we do AI with Drupal?</h2> <table> <tr> <td>Bisonbleu</td> <td>Is there anything happening to address ethics? Here&rsquo;s an example. I&rsquo;m sure you all have seen/read articles about the bots situation, where small websites are taking a bit hit because bots don&rsquo;t always act/behave in a nice way: <a href="https://arstechnica.com/ai/2025/03/devs-say-ai-crawlers-dominate-traffic-forcing-blocks-on-entire-countries/">1</a>, <a href="https://news.ycombinator.com/item?id=41923635">2</a>, <a href="https://www.businessinsider.com/openai-anthropic-ai-ignore-rule-scraping-web-contect-robotstxt">3</a>. Does Drupal AI need a bot defender/moderator module?&nbsp;(edited)</td> </tr> <tr> <td>valthebald</td> <td>I know of <a href="https://www.drupal.org/project/llmstxt">https://www.drupal.org/project/llmstxt</a></td> </tr> <tr> <td>valthebald</td> <td>and <a href="https://www.drupal.org/project/robotstxt">https://www.drupal.org/project/robotstxt</a> if openai/anthropic respect it</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>I think we need a meta or discussion issue on AI ethics in Drupal to gather problematic use cases and ideas of how to handle these</td> </tr> </table> <h2>6&#65039;&#8419; Open mike! Suggest your own topic</h2> <table> <tr> <td>valthebald</td> <td>if you start a new thread, better prepend it with :six 1&#65039;&#8419;, :six 2&#65039;&#8419; etc.</td> </tr> <tr> <td>Andy Marquis</td> <td>Why is ai_agents a separate thing? Would it not be easier to maintain as a submodule within ai like the others?</td> </tr> <tr> <td>valthebald</td> <td>@Andy Marquis mostly for historical reasons, plan is to make it a submodule in 2.0&nbsp;(edited)</td> </tr> <tr> <td>Marcus Johansson</td> <td>In 2.0 the agent config and runner is moving into AI Core. AI Agents as a module might still exist as one of the UI's for it.So it will be similar to Views and Views UI. If you have AI installed you can install and run any agent, but if you want to configure it you need to install som UI.</td> </tr> <tr> <td>Andy Marquis</td> <td>So that module then would be basically just providing some default plugins then for the UI but it sounds like our own modules could also provide similar plugins the way i understand that.</td> </tr> <tr> <td>Marcus Johansson</td> <td>Yeah, any module should be able to install agents just using the AI module. Since they are just configs they can be shipped in config/install or config/optional. In the future the Drupal CMS agents might even be only in that repo.</td> </tr> <tr> <td>mattgyver</td> <td>Hi :bow: not sure how to&nbsp; phrase this as a topic... but basically i have two things id like to discuss1) there are many (many) AI modules It is objectively overwhelming Even with more documentation, i find it hard to understand where to start to "do X thing" with AI.It is maybe just me.So i ask.Can we try to simplify ?Maybe stop publishing new module, centralize everything into ai, provide recipe/tour for the users :shrug: ... ?</td> </tr> <tr> <td>mattgyver</td> <td>2) there are many (many) hipe around Agents but it is hard to think about "real use case" where it is beneficial to implement agentic workflow.Can we create some kind of list of usage / case study to inspire developers to use AI suite ?</td> </tr> <tr> <td>Andy Marquis</td> <td>Yeah, it is overwhelming. I know AI in general is moving so fast. I&rsquo;m having a hard time understanding how to fully adopt AI to be honest with you. So far, the AI translate module is very effective for multi-lingual sites so I&rsquo;ve contributed to that. All the chat stuff, agents and weird prompts that honestly seem so unstructured and random are really confusing. I assume this is AI in general rather than Drupal.</td> </tr> <tr> <td>Andy Marquis</td> <td>I&rsquo;ve heard things like treat an agent like a developer you&rsquo;re giving instructions to. I guess I wouldn&rsquo;t really even know how to give instructions to another developer without knowing what they are capable of?? lol</td> </tr> <tr> <td>mattgyver</td> <td>UX is a priority imo</td> </tr> <tr> <td>valthebald</td> <td>@mattgyver I think you've raised topics important to many.</td> </tr> <tr> <td>valthebald</td> <td>@breidert is actively working on setting the UX goal</td> </tr> <tr> <td>valthebald</td> <td>Observability&nbsp; (is there such a word?) and "where do I start?" are areas that do not currently have clear solutions, but both are on the radar</td> </tr> <tr> <td>Kristen Pol (she/her)</td> <td>Yes&hellip; lots to improve upon hereIn addition to Val&rsquo;s comment, @Marcus Johansson is building out demos in Drupal Forge which will helpAnd, although more on the contribution side, I&rsquo;m working with Marcus, Jamie, Val and Christoph to update the issue management process to help with finding, managing and contributing to issues&hellip; we hope to have that sort this week&hellip; then we can update all existing issues that are being prioritized and create new issues as well</td> </tr> <tr> <td>Marcus Johansson</td> <td>@mattgyver &amp; @Andy Marquis I think its actually very hard to move more custom built functionality into the AI module, our discussion have been on the opposing end - to move out things, where mostly the framework modules powering custom functionality remains. Its quite hard managing releases with 10+ submodules and it will make us slower and slower in the future.The base problem is that AI touches on almost everything (configuration, styling, site building, migration, all parts of content editing etc.) so its impossible to fit all business cases/examples into one module, when there are 10k+ use cases to solve. The AI module can make it so you can run AI Providers, AI Agents, AI Workflows, Semantic Search etc. but the end product for a specific business case, the person with domain knowledge has to setup. The generic AI solutions that is seen in many products, including Drupal, will not be the AI solutions of the future, because the same way you don't want to hire someone to solve a generic task 50% correct, you do not want a solution that solves something in a generic fashion 50% correct - you want to solve your specific business case. Otherwise it just becomes AI slop and causes more harm, then going without.But I agree with all what has been said above - the UX and UI needs to improve, but also DX is the an important part I think - so we can empower developers and site-builders to build this themselves without having to be AI researcher. And its obvious that we are not there yet - documentation is lacking, examples are lacking, automatic tests are lacking and while many solutions works and can setup powerful working end products, its not very clear how to use them. We have also made great improvements on how the AI module can work together with recipes, but a lot is still being worked on. With DrupalForge and Amazee we will also be able to show a lot of example setups. Its just a huge field and up until lately there were very few people working on it in the Drupal community.I hope and think the AI Initiative is a turning point where we hopefully can go from being reactive to how incredibly fast the AI market is moving, and have much more resources to start planning and building roadmaps to build products that doesn't just solve the technical issues at hand, but that are also as easy to use as they can be, tested and fully documented. Its also very good that we get contributors/ideas from "the outside", because we are so entangled in AI everyday that it might be hard to understand, what is hard to understand - so its great you raise this!</td> </tr> </table> <p>Participants:</p> <p>valthebald, Bisonbleu, rakeshjames, Marcus Johansson, dan2k3k4, Andy Marquis, lussoluca, breidert, baddysonja, Kristen Pol</p> > Related issue: [Issue #3530332](https://www.drupal.org/node/3530332) > Related issue: [Issue #3532764](https://www.drupal.org/node/3532764)
issue