Weekly AI Agent Tip #9: Moving List Attachments to a Library for your Agent
In this weeks mini-learning tip I'll share an idea I have related to the current constraint (as of November 25) where Copilot Studio Agents that are using a list do not reason over the list attachments. This is just an idea, and it could use some more flushing out, but I wanted to get your opinion. Perhaps if you like this we could add the flow as a template in the product. IMPORTANT: I did find out that you can just use a flow without the custom form (you'll get attachments as your first on change value in that case). That approach might make the file conversion a lot easier to handle. The passing of the right file type from Power Apps can be challenging. Using a standard flow when something changes (let me know if you need a video on this simpler option): 1. Use the Get attachments action to retrieve all attachments for the list item by ID. 2. Add an Apply to each loop over the attachments. 3. Use Get attachment content to retrieve the file’s binary content. 4. Use Create file in your Attachments library, setting File Name to DisplayName and File Content to the output of Get attachment content. My notes on the custom form: **Side point: Check our documentation on file size limitations. Use the attachment control to ensure files are not too large to reason over. **Attachment control 'OnAddFile': Set( varLatestFile, { name: Last(Self.Attachments).Name, contentBytes: JSON(Last(Self.Attachments).Value, JSONFormat.IncludeBinaryData) } ); //Remember to use your control's name P.S. This is better the using first as was in the video. **SharePoint Form 'OnSuccess': If( !IsBlank(varLatestFile), CopyFiletoLibrary.Run( //remember to use your flow's name SharePointForm1.LastSubmit.ID, SharePointForm1.LastSubmit.SKU, //replace SKU with your flow input(s) varLatestFile //This is a record (Name + Value) ) ); Set(varLatestFile, Blank()); //resets the variable after copy ResetForm(Self); RequestHide(); **Flow Create File Action Expressions: FileName: triggerBody()?['file']?['name'] FileContent: dataUriToBinary(triggerBody()?['file']?['contentBytes'])

Weekly AI Agent Tip #7: Generative Adaptive Cards

Make your Own Agents in Copilot | Complete Tutorial

Go From SharePoint To Power Apps (2026 Edition) - Full Build For Beginners

Don't learn AI Agents without Learning these Fundamentals

Hands-on with Microsoft Scout - New from Microsoft Build

Weekly AI Agent Tip #5: Designing Adaptive Cards in SECONDS!

Microsoft Just Released Their Own Linux Distro: Should You Be Worried?

What AI Agent Skills Are and How They Work

Weekly AI Agent Tip #11: Diversify your AI art for styles and races.

China’s Secret | The Most Unbelievable Megaprojects in China | 4K Travel Documentary

THIS is The EXACT Date of The Next Stock Market Crash.

I Think They Are Lying To You

10 Images | Coastal Citrus Floral Summer Paintings Screensaver l Frame TV ART |

Why AI Agents are either the best or worst thing we’ve ever built

Microsoft Copilot for Organizations – Complete Tutorial

What the Armor of God Really Means When You Feel Too Weak to Fight (No Ads)

SharePoint Just Got WAY Better: Workflows, Approvals, Quick Steps & Rules Explained

Getting Started with Microsoft Teams 2026 | Full Tutorial

Building AI Agents that actually work (Full Course)

