kunal.sachdev → made their first commit to this issue’s fork.
🐛 XB AI: User selection should be taken into account while building page Active is merge.
It’s working as expected now. What I did to test this:
- Created a new content type named 'tour' with following fields:
- Tour Description - Text (formatted, long)
- Tour Image - Media field
- Tour Id - Number (integer)
- Tour Tags - Reference type field referring to taxonomy term
- Author - Reference type field referring to user
- Created two pieces of content of the tour type.
- Then created a code component using the AI with the prompt:- 'Can you create component which lists content from tour content type? I'd like to display these in a card container using tour cards'
Tested this, and AI correctly attempts data fetching only as needed.
I agree with the approach of removing the default information tool from the orchestrator, since not all agents require it and those that do already have it included.
Additionally, I tested everything and can confirm that all features are working as intended.
I've created a follow-up issue to address handling large context #3547595: Handle exception caused by context window overflow in Canvas AI →
While testing, I found that metadata is still being generated for nodes, which is wrong.
I tried to fix the problem mentioned in #14 📌 Enable AI agents to generate components that fetch menus Active and the response message is now shorter. There are still occasional additional messages, but the situation is better than before. Please see the attached screenshot.
kunal.sachdev → made their first commit to this issue’s fork.
It is now working for custom content-types and custom fields.
kunal.sachdev → changed the visibility of the branch 3542029-enable-ai-agents to hidden.
kunal.sachdev → changed the visibility of the branch 3542596-enable-ai-agents to hidden.
Working on making it work for custom content and custom fields too.
I tested the prompt "Create a component to render the admin menu as a mega menu" under the following scenarios:
- jsonapi_menu_items module installed, linkset disabled: Uses jsonapi_menu_items code to fetch the menu.
- jsonapi_menu_items module installed, linkset enabled: Still uses jsonapi_menu_items code to fetch the menu.
- jsonapi_menu_items module uninstalled, linkset enabled: Uses linkset code to fetch the menu.
- jsonapi_menu_items module uninstalled, linkset disabled, user has 'administer site configuration' permission: Displays a message prompting to enable linkset configuration.
- jsonapi_menu_items module uninstalled, linkset disabled, user does not have 'administer site configuration' permission: Displays a message prompting to install the jsonapi_menu_items module or enable the linkset endpoint.
I also tested with a custom menu name, and it worked as expected.
kunal.sachdev → changed the visibility of the branch 3542596-linkset-for-menu-fetching to hidden.
It's working as expected. I have tested it with the following prompts:
- Create a component to show title of the latest page
- Create a component to show title of all the articles
- Create a component to show title and body of all the articles and pages
I’ve uploaded a video to illustrate how it’s currently working.
kunal.sachdev → created an issue.
Follow-up issue created 📌 Expand Playwright test coverage for XB AI module Active
kunal.sachdev → created an issue.
This provides a good foundation!! We can include additional tests for page builder tasks and other edge cases in a follow-up.
kunal.sachdev → created an issue.
Tested on my end and the results are as expected 👍🏻
I worked on the feature allowing the AI to generate an execution plan, which is then displayed on the screen. The next step is to figure out how to check off each item in the execution plan as the corresponding tool completes its task. The main challenge here is that tool results are only provided once the entire agent called from orchestrator has finished.
For eg - In case of page builder task, AI creates a plan something like:
- Adding components to the page:
- component 1
- component 2
- component 3
- Updating title of the page
- Updating metadata of the page
However, all tool results become available only when the page builder agent completes, so we miss out on intermediary progress updates for each item as they're finished.
kunal.sachdev → created an issue.
This is how it's working now!!
→
I tested by creating 4–5 components, including one from an image, and everything worked as expected each time ✅
Adding the video to show how it's working currently →
Currently, only messages from executing agents are displayed. I think we should also find a way to display messages from the tools that are executed.
The issue mentioned in
#39
📌
Generate/update title and metadata for pages created from components
Active
was occurring intermittently because $agent->solve()
sometimes returned an empty string, and we were using this value as the response message. To address this, I reverted the change that used $agent->solve()
for the response message.
I have tested all scenarios and it's working as expected!!
I tested it, and the issue mentioned in https://git.drupalcode.org/project/experience_builder/-/merge_requests/1... still persists.
kunal.sachdev → created an issue.
Addressed all feedback.
Tested it locally and it's working as expected!!
I tested it locally and it's working as expected now!!
While testing, I discovered another issue: components added through the page builder agent are not updating correctly. Specifically, the text of the component is not being changed in the backend and remains set to its default value.
I tested the case mentioned in
#26
📌
Generate/update title and metadata for pages created from components
Active
and it works as expected but after running 6-7 prompts, the AI started to behave unexpectedly.
I also tried similar prompts on version 1.x and observed the same issue there: the AI unnecessarily considers history/comments even when they’re not relevant. I have created a new issue
🐛
AI should use only necessary history/comments for each task
Active
to address this and I think we should prioritise fixing this issue first.
kunal.sachdev → created an issue.
The case mentioned in
#23
📌
Generate/update title and metadata for pages created from components
Active
was failing because the pageData
was not getting updated with fresh values every time. I have fixed it now.
kunal.sachdev → changed the visibility of the branch 1.x to hidden.
kunal.sachdev → made their first commit to this issue’s fork.
Tested it locally, I think one thing which is not working as expected is that the final message about the template is created successfully is shown before and then the message about creating the footer section is shown. Attached the screen recording showing how it's working. →
The second case mentioned in
#17
📌
Generate/update title and metadata for pages created from components
Active
wasn't working because the getEntityField
tool was fetching only published data. Since the page hadn’t been published, it retrieved the title as "Untitled page," which led to a new title being created unnecessarily. To resolve this, we removed the getEntityField
tool and now pass the XB page data as context directly to all relevant tools
I’ve manually tested all scenarios locally, and everything is now working as expected.
Tested it manually and it's working as expected.
Work in progress!!
kunal.sachdev → made their first commit to this issue’s fork.
Although sometimes the title is not getting updated on the page. I checked this same issue is also there in 0.x branch so created a issue for that 🐛 Title is not update on the page when created through AI Active
kunal.sachdev → created an issue.
Some scenarios are not working as expected so I am trying to fix it.
I am going to work on this!!
This is how it's working for now →
kunal.sachdev → changed the visibility of the branch 3533881-generateupdate-title-and to hidden.
kunal.sachdev → created an issue.
All feedback has been addressed.