<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="https://nanddeepn.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://nanddeepn.github.io/" rel="alternate" type="text/html" /><updated>2026-07-12T15:29:53+08:00</updated><id>https://nanddeepn.github.io/feed.xml</id><title type="html">Nanddeep Nachan Blogs</title><subtitle>Welcome to my blog</subtitle><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><entry><title type="html">Empowering Enterprise AI Agents with IQ and Microsoft Foundry</title><link href="https://nanddeepn.github.io/posts/2025-07-05-ai-agents-microsoft-iq/" rel="alternate" type="text/html" title="Empowering Enterprise AI Agents with IQ and Microsoft Foundry" /><published>2026-07-05T00:00:00+08:00</published><updated>2026-07-05T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/ai-agents-microsoft-iq</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2025-07-05-ai-agents-microsoft-iq/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>As organizations move from AI assistants to autonomous AI agents, one challenge becomes increasingly important: <strong>how can agents access the right information, at the right time, from trusted enterprise sources?</strong></p>

<p>Large Language Models (LLMs) are excellent at reasoning and generating responses, but they have no inherent understanding of an organization’s people, documents, business data, or internal processes. Without enterprise context, even the most advanced models can produce incomplete or inaccurate answers.</p>

<p>Microsoft addresses this challenge with the <strong>Microsoft IQ Platform</strong>-a unified intelligence layer that brings together knowledge from Microsoft 365, business systems, enterprise documents, and the public web. Instead of forcing developers to integrate dozens of different data sources individually, Microsoft IQ provides a consistent way for AI agents to discover, retrieve, and reason over enterprise knowledge.</p>

<p>When combined with <strong>Microsoft Foundry</strong>, organizations can build AI agents that understand:</p>

<ul>
  <li>Employees and collaboration</li>
  <li>Business operations and structured data</li>
  <li>Enterprise knowledge and documents</li>
  <li>Current information from the web</li>
</ul>

<p>This article explains the Microsoft IQ Platform, its four intelligence pillars, and how it empowers enterprise AI agents built with Microsoft Foundry.</p>

<h2 id="why-enterprise-ai-needs-intelligence">Why Enterprise AI Needs Intelligence</h2>

<p>Traditional AI applications mainly answer questions using prompts and the knowledge embedded inside the model.</p>

<p>Enterprise AI is different.</p>

<p>An enterprise agent must understand:</p>

<ul>
  <li>Who is asking?</li>
  <li>What department do they belong to?</li>
  <li>Which documents can they access?</li>
  <li>What business systems contain the required information?</li>
  <li>Which knowledge source is authoritative?</li>
  <li>Is there newer information available on the web?</li>
</ul>

<p>Without this context, an AI agent becomes another chatbot.</p>

<p>With enterprise intelligence, an AI agent becomes a trusted digital coworker capable of making informed decisions.</p>

<h2 id="what-is-microsoft-iq-platform">What is Microsoft IQ Platform?</h2>

<p>Microsoft IQ Platform is Microsoft’s unified enterprise intelligence platform designed to provide AI agents with contextual knowledge from across the organization.</p>

<p>Rather than treating enterprise information as isolated silos, Microsoft IQ combines multiple intelligence sources into a single platform that AI agents can consume.</p>

<p>The platform consists of four major intelligence pillars:</p>

<ul>
  <li>Work IQ</li>
  <li>Fabric IQ</li>
  <li>Foundry IQ</li>
  <li>Web IQ</li>
</ul>

<p>Together they provide a complete understanding of an organization.</p>

<p>The image below summarizes the Microsoft IQ Platform.</p>

<table>
  <thead>
    <tr>
      <th><strong>Intelligence</strong></th>
      <th><strong>Focus</strong></th>
      <th><strong>Primary Context</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Work IQ</td>
      <td>People and collaboration</td>
      <td>Microsoft 365 knowledge</td>
    </tr>
    <tr>
      <td>Fabric IQ</td>
      <td>Business operations</td>
      <td>Business data and systems</td>
    </tr>
    <tr>
      <td>Foundry IQ</td>
      <td>Enterprise knowledge</td>
      <td>Documents and knowledge bases</td>
    </tr>
    <tr>
      <td>Web IQ</td>
      <td>Internet intelligence</td>
      <td>Web, news, images, videos</td>
    </tr>
  </tbody>
</table>

<h2 id="microsoft-iq-platform-architecture">Microsoft IQ Platform Architecture</h2>

<p>The Microsoft IQ Platform combines multiple intelligence layers.</p>

<h3 id="1-work-iq">1. Work IQ</h3>

<p><strong>“How your employees work”</strong></p>

<p>Work IQ provides AI agents with organizational context.</p>

<p>It understands:</p>

<ul>
  <li>Employees</li>
  <li>Teams</li>
  <li>Meetings</li>
  <li>Emails</li>
  <li>Chats</li>
  <li>Files</li>
  <li>Calendars</li>
  <li>Work relationships</li>
  <li>Collaboration patterns</li>
  <li>Business workflows</li>
</ul>

<p>Instead of simply knowing documents, an AI agent understands <strong>how people work together</strong>.</p>

<p><strong>Typical information available</strong></p>

<ul>
  <li>Organization hierarchy</li>
  <li>Team membership</li>
  <li>Recent meetings</li>
  <li>Shared documents</li>
  <li>Email conversations</li>
  <li>Collaboration history</li>
  <li>Microsoft Graph relationships</li>
  <li>Microsoft 365 workflows</li>
</ul>

<p><strong>Example</strong></p>

<p>Instead of asking:</p>

<p>Show me the latest project documents.</p>

<p>The agent can understand:</p>

<p>Show documents recently discussed in meetings by my product engineering team.</p>

<p>This level of understanding comes from Work IQ.</p>

<h3 id="2-fabric-iq">2. Fabric IQ</h3>

<p><strong>“How your business operates”</strong></p>

<p>Work IQ focuses on people.</p>

<p>Fabric IQ focuses on business operations.</p>

<p>It gives AI agents access to structured business information such as:</p>

<ul>
  <li>Customers</li>
  <li>Products</li>
  <li>Orders</li>
  <li>Inventory</li>
  <li>Finance</li>
  <li>ERP</li>
  <li>CRM</li>
  <li>Manufacturing</li>
  <li>Sales</li>
  <li>Business KPIs</li>
</ul>

<p>Fabric IQ understands business entities instead of collaboration.</p>

<p><strong>Business systems supported</strong></p>

<p>Fabric IQ can provide intelligence from:</p>

<ul>
  <li>Microsoft Fabric</li>
  <li>Data warehouses</li>
  <li>Lakehouses</li>
  <li>SQL databases</li>
  <li>ERP systems</li>
  <li>CRM systems</li>
  <li>Operational databases</li>
</ul>

<p><strong>Example</strong></p>

<p>A supply chain agent could answer:</p>

<ul>
  <li>Current inventory levels</li>
  <li>Warehouse status</li>
  <li>Product availability</li>
  <li>Delayed shipments</li>
  <li>Regional demand</li>
</ul>

<p>instead of only searching documents.</p>

<h3 id="3-foundry-iq">3. Foundry IQ</h3>

<p><strong>“How your agents unlock knowledge”</strong></p>

<p>Foundry IQ is the enterprise knowledge intelligence layer for Microsoft Foundry.</p>

<p>Its primary objective is to help AI agents retrieve trusted organizational knowledge.</p>

<p>Unlike Work IQ and Fabric IQ, Foundry IQ focuses on:</p>

<ul>
  <li>Policies</li>
  <li>Procedures</li>
  <li>Technical documentation</li>
  <li>Product manuals</li>
  <li>Knowledge bases</li>
  <li>Standard operating procedures</li>
  <li>Compliance documents</li>
  <li>Research documents</li>
  <li>Enterprise content</li>
</ul>

<p>Instead of directly embedding documents into prompts, Foundry IQ indexes, organizes, and retrieves the most relevant information before the model generates a response.</p>

<p>This dramatically improves:</p>

<ul>
  <li>Accuracy</li>
  <li>Grounding</li>
  <li>Citation quality</li>
  <li>Trustworthiness</li>
</ul>

<p><strong>Key capabilities</strong></p>

<p>Foundry IQ supports:</p>

<ul>
  <li>Retrieval Augmented Generation (RAG)</li>
  <li>Hybrid Search</li>
  <li>Semantic Search</li>
  <li>Vector Search</li>
  <li>Metadata filtering</li>
  <li>Knowledge connectors</li>
  <li>Multi-step retrieval</li>
  <li>Citation generation</li>
</ul>

<p><strong>Example</strong></p>

<p>An HR agent may answer:</p>

<p>What is our maternity leave policy?</p>

<p>Rather than relying on model memory, Foundry IQ retrieves the latest HR policy from the organization’s knowledge base before generating the answer.</p>

<h3 id="4-web-iq">4. Web IQ</h3>

<p><strong>“How you connect to web intelligence”</strong></p>

<p>Enterprise decisions sometimes require current information that does not exist inside the organization.</p>

<p>Web IQ provides AI agents with trusted information from the public web.</p>

<p>Examples include:</p>

<ul>
  <li>News</li>
  <li>Financial information</li>
  <li>Market trends</li>
  <li>Public documentation</li>
  <li>Images</li>
  <li>Videos</li>
  <li>Industry updates</li>
</ul>

<p>This allows enterprise agents to combine internal knowledge with external intelligence.</p>

<p><strong>Example</strong></p>

<p>A sales agent can answer:</p>

<ul>
  <li>Latest competitor announcements</li>
  <li>Market trends</li>
  <li>Industry news</li>
  <li>Product launches</li>
</ul>

<p>while also considering internal pricing and customer information.</p>

<h2 id="how-microsoft-foundry-uses-iq">How Microsoft Foundry Uses IQ</h2>

<p>Microsoft Foundry provides the platform for building enterprise AI agents.</p>

<p>The IQ Platform supplies the intelligence.</p>

<p>Think of the relationship like this:</p>

<table>
  <thead>
    <tr>
      <th><strong>Microsoft Foundry</strong></th>
      <th><strong>Microsoft IQ</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Builds AI agents</td>
      <td>Provides enterprise knowledge</td>
    </tr>
    <tr>
      <td>Orchestrates workflows</td>
      <td>Supplies context</td>
    </tr>
    <tr>
      <td>Connects models</td>
      <td>Retrieves trusted information</td>
    </tr>
    <tr>
      <td>Executes tools</td>
      <td>Understands enterprise data</td>
    </tr>
    <tr>
      <td>Runs reasoning</td>
      <td>Grounds responses</td>
    </tr>
  </tbody>
</table>

<p>Together they create enterprise-grade AI applications.</p>

<h2 id="end-to-end-flow">End-to-End Flow</h2>

<p>A typical request follows these steps:</p>

<ul>
  <li>A user asks an AI agent a question.</li>
  <li>Microsoft Foundry analyzes the request.</li>
  <li>The agent determines which intelligence source is needed.</li>
  <li>IQ retrieves the appropriate context.</li>
  <li>The LLM reasons using the retrieved information.</li>
  <li>Foundry orchestrates tools if actions are required.</li>
  <li>The response is generated with grounded enterprise knowledge.</li>
</ul>

<p>Instead of asking the model to “guess,” the model answers using verified organizational information.</p>

<h2 id="combining-multiple-iq-sources">Combining Multiple IQ Sources</h2>

<p>One of the biggest strengths of Microsoft IQ is that agents are not limited to a single knowledge source.</p>

<p>Consider this question:</p>

<p>Which customers might be affected by today’s manufacturing delay?</p>

<p>The agent could use:</p>

<ul>
  <li><strong>Work IQ</strong> to identify the operations team responsible.</li>
  <li><strong>Fabric IQ</strong> to determine affected products and customers.</li>
  <li><strong>Foundry IQ</strong> to retrieve manufacturing procedures and escalation policies.</li>
  <li><strong>Web IQ</strong> to check whether weather or transportation disruptions contributed to the delay.</li>
</ul>

<p>The final response combines intelligence from all four sources into a single grounded answer.</p>

<h2 id="real-world-use-cases">Real-World Use Cases</h2>

<p><strong>Employee Copilot</strong></p>

<p>Uses:</p>

<ul>
  <li>Work IQ</li>
  <li>Foundry IQ</li>
</ul>

<p>Provides:</p>

<ul>
  <li>HR policies</li>
  <li>Leave guidance</li>
  <li>Organizational information</li>
  <li>Employee onboarding</li>
</ul>

<p><strong>Customer Support Agent</strong></p>

<p>Uses:</p>

<ul>
  <li>Foundry IQ</li>
  <li>Fabric IQ</li>
</ul>

<p>Provides:</p>

<ul>
  <li>Product documentation</li>
  <li>Customer history</li>
  <li>Warranty information</li>
  <li>Troubleshooting guides</li>
</ul>

<p><strong>Finance Agent</strong></p>

<p>Uses:</p>

<ul>
  <li>Fabric IQ</li>
</ul>

<p>Provides:</p>

<ul>
  <li>Revenue analysis</li>
  <li>Financial forecasting</li>
  <li>Budget reports</li>
  <li>Business KPIs</li>
</ul>

<p><strong>Executive Assistant</strong></p>

<p>Uses:</p>

<ul>
  <li>Work IQ</li>
  <li>Fabric IQ</li>
  <li>Web IQ</li>
</ul>

<p>Provides:</p>

<ul>
  <li>Meeting summaries</li>
  <li>Business performance</li>
  <li>Market updates</li>
  <li>Competitive intelligence</li>
</ul>

<p><strong>Compliance Agent</strong></p>

<p>Uses:</p>

<ul>
  <li>Foundry IQ</li>
</ul>

<p>Provides:</p>

<ul>
  <li>Regulatory guidance</li>
  <li>Company policies</li>
  <li>Risk assessments</li>
  <li>Audit support</li>
</ul>

<h2 id="benefits-of-microsoft-iq-platform">Benefits of Microsoft IQ Platform</h2>

<p>Organizations adopting Microsoft IQ gain several advantages:</p>

<ul>
  <li>Unified intelligence across multiple enterprise data sources</li>
  <li>Better grounded AI responses</li>
  <li>Reduced hallucinations through trusted retrieval</li>
  <li>Rich understanding of people, business processes, and knowledge</li>
  <li>Easier integration with Microsoft Foundry AI agents</li>
  <li>Improved accuracy for enterprise decision-making</li>
  <li>Support for both structured and unstructured data</li>
  <li>Ability to combine internal and external intelligence</li>
  <li>Consistent context across multiple AI agents</li>
</ul>

<h2 id="microsoft-iq-and-the-future-of-enterprise-ai">Microsoft IQ and the Future of Enterprise AI</h2>

<p>As organizations deploy multiple AI agents across departments, the challenge shifts from simply choosing the right language model to providing those agents with accurate, trusted, and contextual information.</p>

<p>The Microsoft IQ Platform addresses this by separating <strong>reasoning</strong> from <strong>enterprise intelligence</strong>. Large language models continue to evolve, but the real value comes from grounding those models in organizational knowledge. By combining Work IQ, Fabric IQ, Foundry IQ, and Web IQ, Microsoft enables AI agents to understand people, business operations, enterprise content, and the outside world through a unified intelligence layer.</p>

<p>When integrated with Microsoft Foundry, this creates a powerful foundation for building enterprise-grade AI agents that are not only intelligent, but also reliable, secure, and capable of delivering meaningful business outcomes.</p>

<h2 id="summary">Summary</h2>

<p>Building effective enterprise AI agents requires more than powerful language models. Agents must understand employees, business data, organizational knowledge, and external events to provide accurate and trustworthy responses.</p>

<p>The Microsoft IQ Platform delivers this intelligence through four complementary pillars:</p>

<ul>
  <li><strong>Work IQ</strong> provides context about people, collaboration, and workflows.</li>
  <li><strong>Fabric IQ</strong> connects agents to business entities, systems of record, and operational data.</li>
  <li><strong>Foundry IQ</strong> grounds responses using trusted enterprise documents, policies, and knowledge bases.</li>
  <li><strong>Web IQ</strong> enriches agents with current information from the public web.</li>
</ul>

<p>Microsoft Foundry orchestrates these intelligence sources, enabling AI agents to retrieve the right context, reason over it, and take meaningful actions. Together, Microsoft IQ and Microsoft Foundry provide a comprehensive platform for developing enterprise AI solutions that are context-aware, grounded in trusted information, and ready to support real-world business scenarios.</p>

<h2 id="references">References</h2>

<ul>
  <li><a href="https://github.com/microsoft/Build26-BRK240-build-context-aware-agents-from-data-to-decisions">Microsoft Build 2026 - BRK240 Build context aware agents from data to decisions</a></li>
  <li>
    <table>
      <tbody>
        <tr>
          <td>[Microsoft IQ</td>
          <td>Unified Enterprise Intelligence for AI](https://www.microsoft.com/en-us/ai/microsoft-iq?WT.mc_id=M365-MVP-5003693)</td>
        </tr>
      </tbody>
    </table>
  </li>
  <li><a href="https://learn.microsoft.com/en-us/microsoft-iq/?WT.mc_id=M365-MVP-5003693">Microsoft IQ documentation</a></li>
  <li><a href="https://learn.microsoft.com/en-us/fabric/iq/overview?WT.mc_id=M365-MVP-5003693">Fabric IQ</a></li>
  <li><a href="https://learn.microsoft.com/en-us/azure/foundry/agents/concepts/what-is-foundry-iq/?WT.mc_id=M365-MVP-5003693">Foundry IQ</a></li>
  <li><a href="https://www.microsoft.com/en-us/webiq/?WT.mc_id=M365-MVP-5003693">Web IQ</a></li>
  <li><a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/extensibility/work-iq/?WT.mc_id=M365-MVP-5003693">Work IQ</a></li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Microsoft Foundry" /><category term="AI" /><category term="2026" /><category term="July 2026" /><category term="AI 2026-27" /><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Copilot Cowork: From AI Assistant to AI Teammate in Microsoft 365</title><link href="https://nanddeepn.github.io/posts/2026-06-17-copilot-cowork/" rel="alternate" type="text/html" title="Copilot Cowork: From AI Assistant to AI Teammate in Microsoft 365" /><published>2026-06-17T00:00:00+08:00</published><updated>2026-06-17T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/copilot-cowork</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2026-06-17-copilot-cowork/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>Microsoft has taken a major step in the evolution of workplace AI with <strong>Copilot Cowork</strong>, an agentic experience built into Microsoft 365 Copilot. Unlike traditional AI assistants that respond to prompts and generate content, Copilot Cowork can plan, coordinate, and execute work across Microsoft 365 applications on your behalf while keeping users in control through approval workflows.</p>

<h2 id="what-is-copilot-cowork">What is Copilot Cowork?</h2>

<p>Copilot Cowork is an AI-powered execution layer within Microsoft 365 Copilot. Users describe an outcome they want to achieve, and Cowork determines the necessary steps, gathers context, coordinates activities, and performs actions across Microsoft 365 applications such as Outlook, Teams, Word, Excel, and Calendar.</p>

<p>Instead of asking:</p>

<blockquote>
  <p>Draft an email</p>
</blockquote>

<p>You can ask:</p>

<blockquote>
  <p>Schedule a project kickoff meeting with the architecture team, create an agenda, send invitations, and prepare a briefing document.</p>
</blockquote>

<p>Cowork can handle the entire workflow while requesting approval before executing important actions.</p>

<h2 id="the-evolution-of-copilot">The Evolution of Copilot</h2>

<table>
  <thead>
    <tr>
      <th>Stage</th>
      <th>Capability</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Traditional Copilot</td>
      <td>Answers questions and generates content</td>
    </tr>
    <tr>
      <td>Agent-based Copilot</td>
      <td>Performs specialized tasks through agents</td>
    </tr>
    <tr>
      <td>Copilot Cowork</td>
      <td>Plans, coordinates, and executes multi-step business processes</td>
    </tr>
  </tbody>
</table>

<h2 id="key-capabilities-of-copilot-cowork">Key Capabilities of Copilot Cowork</h2>

<h3 id="1-outcome-based-work">1. Outcome-Based Work</h3>
<p>Users specify the desired result rather than individual steps. Cowork determines the sequence of actions needed to achieve the objective.</p>

<h3 id="2-multi-step-task-execution">2. Multi-Step Task Execution</h3>
<p>Cowork can perform complex workflows involving multiple Microsoft 365 services, including emails, meetings, documents, and collaboration.</p>

<h3 id="3-human-approval-and-control">3. Human Approval and Control</h3>
<p>Before executing important actions such as sending emails, scheduling meetings, or modifying documents, Cowork requests approval from the user.</p>

<h3 id="4-long-running-tasks">4. Long-Running Tasks</h3>
<p>Cowork supports work that continues over time, such as project coordination, monthly reviews, and ongoing research activities.</p>

<h3 id="5-deep-microsoft-365-integration">5. Deep Microsoft 365 Integration</h3>
<p>Cowork operates across Outlook, Teams, Word, Excel, PowerPoint, OneDrive, SharePoint, and Calendar.</p>

<h2 id="work-iq-the-intelligence-behind-cowork">Work IQ: The Intelligence Behind Cowork</h2>

<p>Work IQ enables AI to understand relationships across emails, meetings, chats, documents, projects, and organizational knowledge, helping Cowork reason over business context rather than isolated information.</p>

<h2 id="multi-model-intelligence">Multi-Model Intelligence</h2>

<p>Copilot Cowork leverages multiple AI models optimized for different tasks, providing better reasoning, improved research quality, cost optimization, and task-specific model selection.</p>

<h2 id="built-in-skills">Built-In Skills</h2>

<h3 id="communication-skills">Communication Skills</h3>
<ul>
  <li>Drafting emails</li>
  <li>Following up with stakeholders</li>
  <li>Creating summaries</li>
  <li>Coordinating responses</li>
</ul>

<h3 id="calendar-skills">Calendar Skills</h3>
<ul>
  <li>Scheduling meetings</li>
  <li>Finding availability</li>
  <li>Managing appointments</li>
  <li>Preparing agendas</li>
</ul>

<h3 id="document-skills">Document Skills</h3>
<ul>
  <li>Creating reports</li>
  <li>Generating proposals</li>
  <li>Producing project documentation</li>
  <li>Organizing content</li>
</ul>

<h3 id="research-skills">Research Skills</h3>
<ul>
  <li>Collecting information</li>
  <li>Summarizing findings</li>
  <li>Preparing executive briefings</li>
  <li>Gathering project insights</li>
</ul>

<h2 id="real-world-use-cases">Real-World Use Cases</h2>

<h3 id="executive-assistant">Executive Assistant</h3>
<p>Review calendars, schedule meetings, prepare briefs, send follow-ups, and organize action items.</p>

<h3 id="project-management">Project Management</h3>
<p>Create project plans, coordinate meetings, track actions, share updates, and prepare communications.</p>

<h3 id="sales-preparation">Sales Preparation</h3>
<p>Research customers, review interactions, gather documents, and build briefing packages.</p>

<h3 id="employee-onboarding">Employee Onboarding</h3>
<p>Schedule welcome meetings, create documentation, coordinate training, and track milestones.</p>

<h2 id="getting-started">Getting Started</h2>

<ol>
  <li>Open Microsoft 365 Copilot.</li>
  <li>Select Cowork.</li>
  <li>Describe the outcome you want to achieve.</li>
  <li>Review the proposed plan.</li>
  <li>Approve actions as needed.</li>
  <li>Monitor progress and results.</li>
</ol>

<h2 id="governance-and-security">Governance and Security</h2>

<p>Copilot Cowork operates within existing Microsoft 365 security boundaries, leveraging Microsoft Entra, Microsoft Purview, DLP policies, and existing access controls.</p>

<h2 id="general-availability-highlights">General Availability Highlights</h2>

<ul>
  <li>Broader tenant availability</li>
  <li>New AI model options</li>
  <li>Enhanced image generation capabilities</li>
  <li>Improved execution experiences</li>
  <li>Expanded skills and workflow support</li>
  <li>Better Microsoft 365 integration</li>
</ul>

<h2 id="conclusion">Conclusion</h2>

<p>Copilot Cowork represents Microsoft’s vision of the next generation of AI-powered productivity. By combining multi-model intelligence, Work IQ, Microsoft 365 integration, and governed automation, Cowork transforms AI from an assistant into a true digital coworker capable of delivering business outcomes.</p>

<p><strong>Copilot helped you create work. Copilot Cowork helps you complete work.</strong></p>

<h2 id="references">References</h2>

<ul>
  <li><a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/cowork/?WT.mc_id=M365-MVP-5003693">Copilot Cowork overview</a></li>
  <li><a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/cowork/get-started?WT.mc_id=M365-MVP-5003693">Get started with Copilot Cowork</a></li>
  <li><a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/cowork/cowork-models?WT.mc_id=M365-MVP-5003693">Choose a model for Copilot Cowork</a></li>
  <li><a href="https://www.microsoft.com/en-us/microsoft-365/blog/2026/06/16/copilot-cowork-is-now-generally-available/?WT.mc_id=M365-MVP-5003693">Copilot Cowork is now generally available</a></li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Microsoft 365" /><category term="AI" /><category term="2026" /><category term="June 2026" /><category term="AI 2026-27" /><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Microsoft Build 2026: How Microsoft Foundry Is Powering the Next Generation of AI Agents</title><link href="https://nanddeepn.github.io/posts/2026-06-05-ms-build-foundry-updates/" rel="alternate" type="text/html" title="Microsoft Build 2026: How Microsoft Foundry Is Powering the Next Generation of AI Agents" /><published>2026-06-05T00:00:00+08:00</published><updated>2026-06-05T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/ms-build-foundry-updates</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2026-06-05-ms-build-foundry-updates/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>Microsoft Build 2026 showcased a major evolution in Microsoft’s AI strategy. While previous years focused on copilots and generative AI experiences, Build 2026 demonstrated how AI is rapidly moving toward intelligent, autonomous, and collaborative agent systems.</p>

<p>At the center of this transformation is Microsoft Foundry, Microsoft’s unified platform for building, deploying, managing, and governing AI applications and agents at enterprise scale.</p>

<p>The theme emerging from Build 2026 is clear: the future belongs to developers who can combine models, data, tools, memory, and governance into production-ready AI systems.</p>

<h2 id="hosted-agents-simplify-enterprise-ai-deployment">Hosted Agents Simplify Enterprise AI Deployment</h2>

<p>A major challenge for organizations adopting AI agents is operational complexity. Build 2026 introduced significant advancements in Hosted Agents within Microsoft Foundry Agent Service.</p>

<p>Hosted Agents enable organizations to:</p>

<ul>
  <li>Deploy agents without managing infrastructure</li>
  <li>Scale automatically</li>
  <li>Support long-running workflows</li>
  <li>Maintain enterprise-grade security</li>
  <li>Simplify lifecycle management</li>
</ul>

<p>Microsoft’s goal is to allow developers to focus on business capabilities rather than infrastructure management.</p>

<p>For enterprises building customer service agents, HR assistants, IT support agents, or operational automation solutions, this dramatically accelerates time to value.</p>

<h2 id="new-agent-capabilities-memory-skills-and-runtime-intelligence">New Agent Capabilities: Memory, Skills, and Runtime Intelligence</h2>

<p>One of the most exciting areas of innovation announced at Build 2026 is the expansion of agent capabilities. Microsoft Foundry now introduces several foundational building blocks for more intelligent agents.</p>

<h3 id="procedural-memory">Procedural Memory</h3>

<p>Agents can now retain learned processes and operational context over time.</p>

<p>This allows agents to:</p>

<ul>
  <li>Remember previous workflows</li>
  <li>Improve consistency</li>
  <li>Support long-running business processes</li>
  <li>Deliver more personalized experiences</li>
</ul>

<p>Rather than treating every interaction as a new conversation, agents can build upon previous experiences.</p>

<h3 id="skills-and-toolboxes">Skills and Toolboxes</h3>

<p>Microsoft announced enhanced support for Skills and Toolboxes. Skills allow organizations to package reusable business capabilities that can be shared across multiple agents.</p>

<p>Examples include:</p>

<ul>
  <li>Customer lookup</li>
  <li>Document processing</li>
  <li>Approval workflows</li>
  <li>Inventory checks</li>
  <li>ERP integrations</li>
</ul>

<p>Toolboxes provide standardized collections of tools that agents can use securely and consistently. This promotes reusability and reduces development effort across large organizations.</p>

<h2 id="foundry-iq-advances-enterprise-grounding">Foundry IQ Advances Enterprise Grounding</h2>

<p>Grounding remains one of the most important requirements for enterprise AI. At Build 2026, Microsoft highlighted continued innovation in Foundry IQ, helping organizations connect AI systems to trusted business data.</p>

<p>Enhancements include:</p>

<ul>
  <li>Smarter content extraction</li>
  <li>Improved data pipelines</li>
  <li>Better retrieval quality</li>
  <li>Enhanced security controls</li>
  <li>Governance improvements</li>
</ul>

<p>Microsoft also reported significant improvements in agentic retrieval quality, helping AI systems produce more accurate and relevant responses. For enterprises, this means AI agents can make decisions and generate responses using authoritative organizational knowledge instead of relying solely on model training data.</p>

<h2 id="model-choice-continues-to-expand">Model Choice Continues to Expand</h2>

<p>A recurring theme throughout Build 2026 was model flexibility. Microsoft is investing heavily in a multi-model ecosystem that allows organizations to select the best model for each workload.</p>

<p>Microsoft Foundry now supports a broad collection of:</p>

<ul>
  <li>Microsoft AI models</li>
  <li>Partner models</li>
  <li>Open-source models</li>
  <li>Custom fine-tuned models</li>
  <li>Multimodal models</li>
</ul>

<p>This approach gives organizations the freedom to optimize for:</p>

<ul>
  <li>Cost</li>
  <li>Performance</li>
  <li>Latency</li>
  <li>Compliance</li>
  <li>Industry-specific requirements</li>
</ul>

<p>Rather than locking customers into a single AI provider, Microsoft is positioning Foundry as an open platform for model innovation.</p>

<h2 id="microsofts-new-mai-models-expand-the-foundry-ecosystem">Microsoft’s New MAI Models Expand the Foundry Ecosystem</h2>

<p>Microsoft Build 2026 also introduced significant advancements to Microsoft’s in-house MAI (Microsoft AI) model family, demonstrating the company’s continued investment in building world-class AI models optimized for enterprise and developer workloads. Available through Microsoft Foundry, these models are designed to support reasoning, coding, image generation, speech, and transcription scenarios while giving organizations greater flexibility in choosing the right model for their AI applications. By expanding the MAI portfolio, Microsoft is strengthening its open and multi-model strategy, enabling customers to balance performance, cost, governance, and workload-specific requirements across a unified AI platform.</p>

<p>Key MAI model announcements include:</p>

<ul>
  <li>MAI-Thinking-1 – Microsoft’s flagship reasoning model, designed for complex problem-solving, multi-step reasoning, software engineering tasks, and long-context understanding.</li>
  <li>MAI-Code-1 Flash – A lightweight, high-performance coding model optimized for developer productivity and integrated into tools such as GitHub Copilot and Visual Studio Code.</li>
  <li>MAI-Image-2.5 – Supports advanced image generation and image editing capabilities for creative and business applications.</li>
  <li>MAI-Image-2.5 Flash – A faster and more cost-efficient image model designed for real-time visual AI experiences.</li>
  <li>MAI-Voice-2 – Delivers natural, multilingual speech synthesis with improved voice quality and broader language support.</li>
  <li>MAI-Transcribe-1.5 – Provides high-accuracy speech-to-text transcription for meeting intelligence, contact centers, and enterprise communication scenarios.</li>
  <li>Microsoft Foundry Integration – All MAI models are available through Microsoft Foundry, allowing developers to easily incorporate them into AI applications and agentic workflows.</li>
  <li>Greater Model Choice – The MAI family complements Microsoft’s growing ecosystem of proprietary, partner, and open-source models, giving organizations more flexibility when selecting AI capabilities for specific business needs.</li>
</ul>

<p>Together, these new MAI models demonstrate Microsoft’s commitment to delivering a comprehensive AI platform that supports a wide range of multimodal and agentic AI scenarios while maintaining enterprise-grade scalability, security, and governance.</p>

<h2 id="stronger-observability-and-governance">Stronger Observability and Governance</h2>

<p>As AI systems become more autonomous, governance becomes increasingly important.</p>

<p>Microsoft Foundry now includes expanded capabilities for:</p>

<ul>
  <li>Agent monitoring</li>
  <li>Tracing</li>
  <li>Evaluation</li>
  <li>Diagnostics</li>
  <li>Operational insights</li>
  <li>Compliance controls</li>
</ul>

<p>These capabilities help organizations understand:</p>

<ul>
  <li>What agents are doing?</li>
  <li>Why decisions were made?</li>
  <li>Which tools were used?</li>
  <li>How workflows are performing?</li>
</ul>

<p>This level of visibility is critical for regulated industries and enterprise-scale deployments.</p>

<h2 id="from-laptop-to-cloud-a-unified-ai-platform">From Laptop to Cloud: A Unified AI Platform</h2>

<p>A key message from Microsoft’s Build 2026 keynote was the creation of a seamless AI development ecosystem spanning devices, edge environments, and cloud infrastructure.</p>

<p>Microsoft described a future where developers can build AI solutions that operate across:</p>

<ul>
  <li>Local devices</li>
  <li>Enterprise environments</li>
  <li>Cloud infrastructure</li>
  <li>Multi-model ecosystems</li>
</ul>

<p>All while maintaining control, governance, and flexibility.</p>

<p>This vision aligns closely with Microsoft’s broader strategy of making AI accessible everywhere while keeping developers at the center of innovation.</p>

<h2 id="conclusion">Conclusion</h2>

<p>Microsoft Build 2026 demonstrated that the industry is moving beyond simple chat experiences toward intelligent, action-oriented AI systems.</p>

<p>Microsoft Foundry is emerging as the platform that enables this transformation by bringing together models, memory, tools, runtime services, grounding, observability, and governance into a unified development experience.</p>

<h2 id="references">References</h2>

<ul>
  <li><a href="https://blogs.microsoft.com/blog/2026/06/02/microsoft-build-2026-be-yourself-at-work/?WT.mc_id=M365-MVP-5003693">Microsoft Build 2026: Be yourself at work</a>
-<a href="https://devblogs.microsoft.com/foundry/whats-new-in-microsoft-foundry-build-2026/?WT.mc_id=M365-MVP-5003693">What’s new in Microsoft Foundry | Build Edition</a></li>
  <li><a href="https://devblogs.microsoft.com/foundry/agent-service-build2026/?WT.mc_id=M365-MVP-5003693">Build and run agents at scale with Microsoft Foundry at Build 2026</a></li>
  <li><a href="https://devblogs.microsoft.com/foundry/build-2026-foundry-models/?WT.mc_id=M365-MVP-5003693">A Developer’s Guide to Managing Models, Cost and Quality in Microsoft Foundry</a></li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Microsoft Foundry" /><category term="AI" /><category term="2026" /><category term="June 2026" /><category term="AI 2026-27" /><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Connect Foundry Agent to Copilot Studio</title><link href="https://nanddeepn.github.io/posts/2026-05-30-connect-foundry-agent-copilot-studio/" rel="alternate" type="text/html" title="Connect Foundry Agent to Copilot Studio" /><published>2026-05-30T00:00:00+08:00</published><updated>2026-05-30T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/connect-foundry-agent-copilot-studio</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2026-05-30-connect-foundry-agent-copilot-studio/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>Connecting a Microsoft Foundry Agent from Copilot Studio is a powerful way to bring advanced, enterprise-grade AI capabilities into a low-code conversational experience. Microsoft Foundry helps developers build, deploy, and manage production-ready agents with custom models, tools, grounding data, evaluations, and observability. Copilot Studio helps makers create conversational agents for Microsoft Teams, websites, Microsoft 365, and other channels using a guided low-code experience.</p>

<p>Together, these platforms allow organizations to build once in Microsoft Foundry and deliver the experience through Copilot Studio. Microsoft Foundry provides custom model orchestration, tool and knowledge grounding, evaluation, and observability, while Copilot Studio provides visual topic authoring, multi-channel publishing, and Power Platform governance.</p>

<h2 id="what-is-a-microsoft-foundry-agent">What Is a Microsoft Foundry Agent?</h2>

<p>A Microsoft Foundry Agent is an AI agent built using Microsoft Foundry. It can use models, tools, knowledge sources, and instructions to complete tasks. These agents are useful when the solution needs more advanced AI orchestration, custom logic, enterprise data grounding, or deeper observability.</p>

<p>For example, a Foundry Agent can be designed to:</p>

<ul>
  <li>Search enterprise knowledge sources.</li>
  <li>Call APIs or tools.</li>
  <li>Use specific models for reasoning.</li>
  <li>Follow custom business instructions.</li>
  <li>Work with complex workflows.</li>
  <li>Be evaluated and monitored before production use.</li>
</ul>

<p>In simple words, Microsoft Foundry is where technical teams can build a strong and controlled AI agent.</p>

<h2 id="what-is-copilot-studio">What Is Copilot Studio?</h2>

<p>Copilot Studio is a low-code platform for creating custom copilots and agents. It allows business users, makers, and technical teams to build conversational experiences without writing complex code.</p>

<p>With Copilot Studio, you can:</p>

<ul>
  <li>Design topics and conversation flows.</li>
  <li>Add actions and plugins.</li>
  <li>Publish agents to Teams, websites, and other channels.</li>
  <li>Apply Power Platform governance.</li>
  <li>Manage environments, security, and data loss prevention policies.</li>
</ul>

<p>In simple words, Copilot Studio is where you create the user-facing conversational experience.</p>

<h2 id="why-connect-foundry-agent-with-copilot-studio">Why Connect Foundry Agent with Copilot Studio?</h2>

<p>Many organizations already build advanced AI agents in Microsoft Foundry. However, business users often interact with AI through Microsoft Teams, websites, or enterprise copilots. Instead of rebuilding the same agent logic inside Copilot Studio, you can connect the Foundry Agent and reuse it.</p>

<p>This approach gives the best of both worlds:</p>

<ul>
  <li>Microsoft Foundry provides deep AI capabilities, custom models, tools, grounding, and observability.</li>
  <li>Copilot Studio provides a simple conversational interface, low-code orchestration, Power Platform governance, and easy publishing.</li>
</ul>

<h2 id="high-level-architecture">High-Level Architecture</h2>

<p>At a high level, the connection works like this:</p>

<ul>
  <li>The user asks a question in a Copilot Studio agent.</li>
  <li>Copilot Studio decides when the external Foundry Agent should be used.</li>
  <li>Copilot Studio calls the connected Microsoft Foundry Agent.</li>
  <li>The Foundry Agent processes the request using its instructions, tools, model, and knowledge sources.</li>
  <li>The response is returned to Copilot Studio.</li>
  <li>Copilot Studio shows the final answer to the user.</li>
</ul>

<p>This means Copilot Studio acts as the front-end experience, while Microsoft Foundry Agent acts as the advanced AI capability behind the scenes.</p>

<h2 id="step-by-step-connect-foundry-agent-from-copilot-studio">Step-by-Step: Connect Foundry Agent from Copilot Studio</h2>

<h3 id="step-1-open-your-copilot-studio-agent">Step 1: Open Your Copilot Studio Agent</h3>

<ul>
  <li>Open Copilot Studio</li>
  <li>Select the custom agent where you want to use the Microsoft Foundry Agent.</li>
</ul>

<p>This will be your main user-facing agent. Users will interact with this agent through Teams, web, or other published channels.</p>

<h3 id="step-2-go-to-the-agents-page">Step 2: Go to the Agents Page</h3>

<ul>
  <li>Open the <strong>Agents</strong> tab.</li>
  <li>Click <strong>+ Add an agent</strong>.</li>
</ul>

<p>This as the starting point for connecting a Microsoft Foundry Agent.</p>

<h3 id="step-3-choose-microsoft-foundry">Step 3: Choose Microsoft Foundry</h3>

<ul>
  <li>
    <p>Under Connect to an external agent, select Microsoft Foundry as the agent type.</p>

    <p><img src="/media/2026-05-30-connect-foundry-agent-copilot-studio/02.png" alt="" /></p>
  </li>
</ul>

<p>This tells Copilot Studio that the external agent you want to connect is hosted in Microsoft Foundry.</p>

<h3 id="step-4-select-or-create-a-connection">Step 4: Select or Create a Connection</h3>

<ul>
  <li>
    <p>Copilot Studio shows available Microsoft Foundry connections. You can either select an existing connection or create a new one.</p>
  </li>
  <li>
    <p>To create a new connection, provide the Foundry project endpoint URL.</p>
  </li>
</ul>

<p>This connection allows Copilot Studio to communicate with the Microsoft Foundry project.</p>

<h3 id="step-5-enter-name-and-description">Step 5: Enter Name and Description</h3>

<p>After the connection is created, enter a proper Name and Description for the connected agent.</p>

<p>The description is very important. Copilot Studio uses this description to understand when the Foundry Agent should be used.</p>

<p>For example, instead of writing:</p>

<blockquote>
  <p>Handles support questions.</p>
</blockquote>

<p>Write something more specific:</p>

<blockquote>
  <p>Use this agent to answer technical support questions about product installation, configuration, known issues, troubleshooting steps, and recommended fixes.</p>
</blockquote>

<p>A clear description helps the main Copilot Studio agent route the right user questions to the right connected agent.</p>

<h3 id="step-6-enter-the-microsoft-foundry-agent-id">Step 6: Enter the Microsoft Foundry Agent ID</h3>

<ul>
  <li>Next, enter the Agent ID of the Microsoft Foundry Agent you want to connect.</li>
</ul>

<p>This tells Copilot Studio exactly which Foundry Agent should be called.</p>

<h3 id="step-7-review-the-description">Step 7: Review the Description</h3>

<p>Review the description again and make it more contextual if needed.</p>

<p>This is especially important when your Copilot Studio agent has multiple tools, actions, or connected agents. If two connected agents have similar descriptions, Copilot Studio may not always choose the correct one.</p>

<p>For example:</p>

<p>Poor description:</p>

<blockquote>
  <p>Answers HR questions.</p>
</blockquote>

<p>Better description:</p>

<blockquote>
  <p>Use this agent for employee HR policy questions related to leave policy, holidays, benefits, onboarding, and employee handbook content.</p>
</blockquote>

<h3 id="step-8-add-the-agent">Step 8: Add the Agent</h3>

<ul>
  <li>Select Add Agent to complete the connection.</li>
</ul>

<p>Once added, the Microsoft Foundry Agent becomes available as a connected agent inside Copilot Studio.</p>

<h3 id="step-9-test-the-agent">Step 9: Test the Agent</h3>

<p>After the agent is added, test it immediately using the Copilot Studio test pane. Microsoft documentation mentions that once the agent is created, you can test it immediately.</p>

<p>Test different types of questions, such as:</p>

<ul>
  <li>Questions that should be handled by Copilot Studio directly.</li>
  <li>Questions that should be routed to the Foundry Agent.</li>
  <li>Questions that are outside the Foundry Agent’s scope.</li>
  <li>Questions with missing information.</li>
  <li>Questions involving sensitive or restricted data.</li>
</ul>

<p>Testing helps confirm that the correct agent is being invoked and that the response quality is acceptable.</p>

<h3 id="step-10-publish-the-copilot-studio-agent">Step 10: Publish the Copilot Studio Agent</h3>

<p>After testing, publish the Copilot Studio agent to the required channel.</p>

<p>For example, you can publish it to:</p>

<ul>
  <li>Microsoft Teams</li>
  <li>A public or internal website</li>
  <li>Microsoft 365 experiences</li>
  <li>Other supported Copilot Studio channels</li>
</ul>

<h2 id="important-configuration-considerations">Important Configuration Considerations</h2>

<h3 id="agent-description-matters">Agent Description Matters</h3>

<p>The description is not just documentation. It helps the main Copilot Studio agent understand when to call the connected Microsoft Foundry Agent. Microsoft recommends updating the description so Copilot Studio can understand when to invoke the agent.</p>

<p>A good description should explain:</p>

<ul>
  <li>What the Foundry Agent does.</li>
  <li>What type of questions it can answer.</li>
  <li>What business process it supports.</li>
  <li>When it should not be used.</li>
  <li>Use the Correct Foundry Portal</li>
</ul>

<p>The Foundry Agent should be created in the new Microsoft Foundry portal. Agents created in the previous portal are not supported for this connection and can cause a 404 - Version not found error.</p>

<h3 id="validate-security-and-data-flow">Validate Security and Data Flow</h3>

<p>When Copilot Studio calls a Microsoft Foundry Agent, data moves between agents. You should review what data is passed, how it is processed, and whether the connected agent meets your organization’s compliance needs.</p>

<h2 id="benefits-of-connecting-foundry-agent-from-copilot-studio">Benefits of Connecting Foundry Agent from Copilot Studio</h2>

<h3 id="faster-time-to-value">Faster Time to Value</h3>

<p>You do not need to rebuild the same agent logic inside Copilot Studio. If the agent already exists in Microsoft Foundry, you can connect it and reuse it.</p>

<p>This helps teams move faster from prototype to production.</p>

<h3 id="better-separation-of-responsibilities">Better Separation of Responsibilities</h3>

<p>Technical teams can build and manage advanced AI logic in Microsoft Foundry. Business makers can design user conversations and channels in Copilot Studio.</p>

<p>This creates a clean separation:</p>

<ul>
  <li>Foundry: advanced AI, models, tools, grounding, evaluation.</li>
  <li>Copilot Studio: user experience, topics, publishing, and governance.</li>
</ul>

<h3 id="enterprise-grade-ai-capabilities">Enterprise-Grade AI Capabilities</h3>

<p>Microsoft Foundry can support more advanced agent scenarios using custom models, tools, and knowledge grounding. Copilot Studio can then make those capabilities available to end users through simple conversations.</p>

<h3 id="reuse-across-experiences">Reuse Across Experiences</h3>

<p>A single Foundry Agent can be reused across different Copilot Studio agents or business scenarios, depending on the design.</p>

<p>For example, a product knowledge Foundry Agent can support:</p>

<ul>
  <li>Sales teams</li>
  <li>Support teams</li>
  <li>Field engineers</li>
  <li>Customer success teams</li>
</ul>

<h3 id="governance-through-power-platform">Governance Through Power Platform</h3>

<p>Since the user-facing agent is built in Copilot Studio, organizations can apply Power Platform environment strategy, DLP policies, lifecycle management, and governance processes.</p>

<h2 id="best-practices">Best Practices</h2>

<ol>
  <li>
    <p><strong>Use Clear Agent Metadata</strong></p>

    <p>Give the connected Foundry Agent a clear name and description. This helps Copilot Studio decide when to use it.
 Avoid generic descriptions. Be specific about the agent’s purpose.</p>
  </li>
  <li>
    <p><strong>Keep Agent Scope Focused</strong></p>

    <p>Do not make one Foundry Agent responsible for everything. A focused agent is easier to test, govern, monitor, and improve.
 For example, instead of creating one large enterprise agent, create separate agents for:</p>

    <ul>
      <li>HR policy</li>
      <li>IT support</li>
      <li>Sales proposals</li>
      <li>Finance FAQs</li>
      <li>Product documentation</li>
    </ul>
  </li>
  <li>
    <p><strong>Test Routing Carefully</strong></p>

    <p>Test whether Copilot Studio calls the Foundry Agent only when needed. If the connected agent is called too often or not called when expected, improve the name and description.</p>
  </li>
  <li>
    <p><strong>Review Data Sharing</strong></p>

    <p>Before publishing, check what information Copilot Studio sends to the Foundry Agent. Make sure sensitive data is handled properly and follows your organization’s policies.</p>
  </li>
  <li>
    <p><strong>Monitor Both Platforms</strong></p>

    <p>Monitor the experience from both sides:</p>

    <ul>
      <li>Copilot Studio for conversation behavior and user interaction.</li>
      <li>Microsoft Foundry for agent behavior, quality, and observability.</li>
    </ul>
  </li>
  <li>
    <p><strong>Use a Sandbox Environment First</strong></p>

    <p>Before publishing to production, test the integration in a development or sandbox environment. This helps validate behavior without impacting business users.</p>
  </li>
  <li>
    <p><strong>Version Your Foundry Agent</strong></p>

    <p>When you update the Foundry Agent, test the updated version before exposing it through Copilot Studio. Versioning helps avoid unexpected production issues.</p>
  </li>
  <li>
    <p><strong>Review DLP and Environment Policies</strong></p>

    <p>Since Copilot Studio is governed by Power Platform, review environment-level DLP policies and connector rules before production rollout.</p>
  </li>
</ol>

<h2 id="security-and-governance-considerations">Security and Governance Considerations</h2>

<p>Connecting agents should not be treated only as a technical configuration. It should also be reviewed from a governance perspective.</p>

<p>Important areas to review include:</p>

<ul>
  <li>What user data is sent to the Foundry Agent?</li>
  <li>What knowledge sources does the Foundry Agent use?</li>
  <li>What tools or APIs can the Foundry Agent call?</li>
  <li>Are permissions properly configured?</li>
  <li>Are responses traceable?</li>
  <li>Is there proper monitoring?</li>
  <li>Is human review needed for sensitive use cases?</li>
  <li>Are DLP policies correctly configured?</li>
  <li>Does the integration meet organizational compliance requirements?</li>
</ul>

<h2 id="summary">Summary</h2>

<p>Connecting a Microsoft Foundry Agent from Copilot Studio allows organizations to combine advanced AI engineering with low-code conversational delivery. Microsoft Foundry is ideal for building powerful, grounded, and production-grade agents. Copilot Studio is ideal for creating user-friendly conversational experiences and publishing them across channels like Microsoft Teams and websites.</p>

<p>This integration helps organizations reuse existing Foundry Agents, reduce duplicate development, improve governance, and deliver advanced AI capabilities directly to business users. The most important success factors are clear agent descriptions, correct Foundry Agent ID, use of the new Microsoft Foundry portal, careful testing, and strong governance.</p>

<p>In simple words: Build the intelligence in Microsoft Foundry, connect it in Copilot Studio, and deliver it where users work.</p>

<h2 id="references">References</h2>

<ul>
  <li><a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/add-agent-foundry-agent?WT.mc_id=M365-MVP-5003693">Microsoft Learn: Connect to a Microsoft Foundry agent from Copilot Studio</a></li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Microsoft Foundry" /><category term="AI" /><category term="2026" /><category term="May 2026" /><category term="AI 2026-27" /><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Extend AI in SharePoint with Skills</title><link href="https://nanddeepn.github.io/posts/2026-05-13-extend-ai-spo-skills/" rel="alternate" type="text/html" title="Extend AI in SharePoint with Skills" /><published>2026-05-13T00:00:00+08:00</published><updated>2026-05-13T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/extend-ai-spo-skills</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2026-05-13-extend-ai-spo-skills/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>AI in SharePoint brings Copilot-like intelligence directly inside SharePoint sites and document libraries. It helps users work with content using natural language instead of manually opening documents, reading large files, creating metadata, or setting up rules step by step.</p>

<p>One of the powerful capabilities in AI in SharePoint is <strong>skills</strong>. A skill is a reusable AI instruction that captures a repeatable business process. Instead of asking AI the same detailed prompt again and again, users can create a skill once and reuse it whenever needed.</p>

<p>For example, if a legal team regularly reviews contract documents to check whether required clauses are present, they can create a skill for that review process. Later, any permitted user on the same SharePoint site can run that skill on selected documents.</p>

<p>Microsoft describes skills as a way to extend AI in SharePoint by turning a repeatable, multi-step workflow into a reusable asset that others can run on the same site. Skills can capture organization-specific rules such as document standards, review checklists, and validation steps.</p>

<h2 id="what-are-skills-in-ai-in-sharepoint">What are skills in AI in SharePoint?</h2>

<p>A <strong>skill</strong> is a reusable instruction set for AI in SharePoint. It tells the AI how to perform a specific task in a consistent way.</p>

<p>In simple words, a skill is like a saved prompt, but more structured and reusable. It can include steps, expected inputs, expected outputs, and business rules.</p>

<p>For example, a skill can be created to:</p>

<ul>
  <li>Review contract documents.</li>
  <li>Check whether files follow naming standards.</li>
  <li>Extract key information from documents.</li>
  <li>Validate whether documents contain required details.</li>
  <li>Summarize selected files in a standard format.</li>
  <li>Organize files based on content.</li>
  <li>Work with SharePoint lists where supported.</li>
</ul>

<p>Skills use the existing capabilities of AI in SharePoint. They do not add a completely new external system or custom code execution capability. Microsoft states that skills can reuse built-in AI in SharePoint capabilities and chain them into a sequence of steps. Depending on what is supported on the site, skills can understand and summarize content, organize files and folders, and interact with SharePoint content such as lists.</p>

<h2 id="why-skills-are-useful">Why skills are useful</h2>

<p>In many organizations, users perform the same content-related tasks repeatedly. These tasks may be simple, but they often require users to remember business rules or follow a checklist.</p>

<p>For example:</p>

<ul>
  <li>
    <p>A finance team may need to check invoices before processing them.</p>
  </li>
  <li>
    <p>A legal team may need to verify contracts before approval.</p>
  </li>
  <li>
    <p>A project team may need to summarize project documents every week.</p>
  </li>
  <li>
    <p>A compliance team may need to review policy documents against internal standards.</p>
  </li>
</ul>

<p>Without skills, every user has to write a detailed prompt each time. This can lead to inconsistent results because different users may describe the same task differently.</p>

<p>Skills help solve this problem by converting the task into a reusable asset. Once a skill is created, users can run it again with simpler prompts. AI in SharePoint can also automatically load a relevant skill based on the user’s request, or the user can call a skill explicitly by name.</p>

<h2 id="how-skills-extend-ai-in-sharepoint">How skills extend AI in SharePoint</h2>

<p>Skills extend AI in SharePoint in three main ways.</p>

<p><strong>1. They make AI reusable</strong></p>

<p>A normal prompt is usually one-time. A skill can be saved and reused.</p>

<p>For example, instead of writing this long prompt every time:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Review these contracts and check whether each contract contains a lawyer ID in xxx-xxx format. If the contract does not contain the lawyer ID, add it to the Invalid Contracts list.
</code></pre></div></div>

<p>You can create a skill named <strong>Contract Validation Skill</strong> and later simply say:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Run Contract Validation Skill on these documents.
</code></pre></div></div>

<p><strong>2. They make AI more consistent</strong></p>

<p>Different users may write different prompts for the same task. This can produce different outputs.</p>

<p>A skill captures the standard process once. This helps the organization get more consistent results from AI.</p>

<p>For example, a policy review skill can always check the same sections, the same compliance points, and the same output format.</p>

<p><strong>3. They make AI more business-specific</strong></p>

<p>Generic AI prompts may not know your internal standards. Skills can include your organization’s own rules.</p>

<p>For example:</p>

<ul>
  <li>Contract must contain lawyer ID.</li>
  <li>Invoice must contain vendor name, invoice number, purchase order number, and amount.</li>
  <li>Project document must include owner, timeline, risks, and status.</li>
  <li>HR policy must include effective date, policy owner, and review date.</li>
</ul>

<p>This makes AI in SharePoint more useful for real business scenarios.</p>

<h2 id="prerequisites">Prerequisites</h2>

<p>Before using skills, AI in SharePoint must be available for the site.</p>

<ul>
  <li>
    <p>Users need an active <strong>Microsoft 365 Copilot license</strong>. AI in SharePoint is included with this license during public preview and at general availability with no additional cost.</p>
  </li>
  <li>
    <p>Activate site collection feature named “Agent Assets”.</p>

    <p><img src="/media/2026-05-13-extend-ai-spo-skills/02.png" alt="" /></p>

    <p>Activating the feature creates a document library named “Agent Assets” with 2 folders - Plans and Skills</p>
  </li>
</ul>

<h2 id="permissions-required-for-skills">Permissions required for skills</h2>

<p>Skills follow SharePoint permissions.</p>

<ul>
  <li>To create a skill, a user needs <strong>Edit</strong> permission on the SharePoint site.</li>
  <li>To run a skill, a user needs <strong>View</strong> permission on the SharePoint site.</li>
</ul>

<p>If a different permission model is needed, organizations can break permission inheritance on the Agent Assets library and apply more restrictive permissions.</p>

<p>This is important because skills do not bypass SharePoint security. A skill can only perform actions that the current user already has permission to perform.</p>

<h2 id="where-skills-are-stored">Where skills are stored</h2>

<p>Skills are stored inside the SharePoint site in the <strong>Agent Assets</strong> library.</p>

<p>The storage path is:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>/Agent Assets/Skills/&lt;skill-name&gt;/SKILL.md
</code></pre></div></div>

<p>Each skill is saved as a Markdown file named SKILL.md.</p>

<p>This is useful because skills become SharePoint content. They can be reviewed, governed, retained, labeled, and audited like other SharePoint files.</p>

<p>Microsoft states that the Agent Assets library is created and managed by the product and cannot be deleted. However, standard SharePoint file governance can be applied to skill files, including permissions, retention, sensitivity labels, and auditing.</p>

<h2 id="how-to-create-a-skill">How to create a skill</h2>

<p>A skill can be created from the AI in SharePoint chat panel using natural language.</p>

<p><strong>Step 1: Open AI in SharePoint</strong></p>

<ul>
  <li>
    <p>Open a SharePoint site page or a document library where AI in SharePoint is available.</p>
  </li>
  <li>
    <p>Then open the AI in SharePoint chat panel.</p>
  </li>
  <li>
    <p>The page should not be in edit mode.</p>
  </li>
</ul>

<p><strong>Step 2: Describe the workflow</strong></p>

<ul>
  <li>Ask AI in SharePoint to create a skill by describing the task.</li>
</ul>

<p>Example:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Create a skill to review project documents and check whether each document includes project owner, project timeline, risks, dependencies, and current status. If any document is missing these details, summarize what is missing and suggest improvements.
</code></pre></div></div>

<p><strong>Step 3: Review the draft skill</strong></p>

<ul>
  <li>
    <p>AI in SharePoint generates a draft skill definition.</p>
  </li>
  <li>
    <p>Review the steps carefully. This is important because the skill may be reused by other users on the site.</p>
  </li>
  <li>
    <p>Check whether:</p>
    <ul>
      <li>The purpose is clear.</li>
      <li>The steps are correct.</li>
      <li>The inputs are clear.</li>
      <li>The output format is useful.</li>
      <li>The business rules are complete.</li>
      <li>The skill does not perform unwanted actions.</li>
    </ul>
  </li>
</ul>

<p><strong>Step 4: Ask for changes if needed</strong></p>

<p>You can ask AI in SharePoint to adjust the skill before saving it.</p>

<p>Example:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Update the skill to provide the result in a table format with columns for Document Name, Missing Information, Risk Level, and Recommended Action.
</code></pre></div></div>

<p><strong>Step 5: Save the skill</strong></p>

<ul>
  <li>
    <p>Once the draft looks correct, confirm that you want to save the skill.</p>
  </li>
  <li>
    <p>The skill is saved in the Agent Assets library of the site.</p>
  </li>
</ul>

<h2 id="how-to-run-a-skill">How to run a skill</h2>

<p>A skill can be run from the AI in SharePoint chat experience.</p>

<p><strong>Step 1: Select content</strong></p>

<ul>
  <li>In a document library, select one or more files that the skill should work on.</li>
  <li>This step is optional, but it is useful when testing a skill.</li>
</ul>

<p><strong>Step 2: Ask AI to perform the task</strong></p>

<ul>
  <li>
    <p>You can ask a natural language question or instruction that matches the skill’s purpose.</p>
  </li>
  <li>
    <p>AI in SharePoint can automatically load the relevant skill based on the request.</p>
  </li>
</ul>

<p>Example:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Review these documents for project readiness.
</code></pre></div></div>

<p>If a matching skill exists, AI in SharePoint may load it automatically.</p>

<p><strong>Step 3: Invoke a skill by name</strong></p>

<p>You can also run a skill explicitly by name.</p>

<p>Example:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Run Project Readiness Review Skill on the selected documents.
</code></pre></div></div>

<p><strong>Step 4: Confirm the skill was loaded</strong></p>

<p>When the skill runs, the chat UI shows a skill indicator card. This helps users confirm that the required skill was loaded.</p>

<h2 id="example-skill-scenario-contract-validation">Example skill scenario: Contract validation</h2>

<p>Let us understand skills with a practical example.</p>

<ul>
  <li>
    <p>A legal department stores contracts in a SharePoint document library. Every contract must contain a lawyer ID in a specific format, such as ABC-123.</p>
  </li>
  <li>
    <p>The team wants AI in SharePoint to review selected contracts and identify invalid contracts.</p>
  </li>
  <li>
    <p>The user can create a skill with a prompt like:</p>

    <p>Create a skill to review legal contract documents. Check whether each contract mentions a lawyer ID in xxx-xxx format, where x is an alphanumeric character. If a contract does not contain a valid lawyer ID, add the document name to the Invalid Contracts list. If the list does not exist, create it with relevant columns.</p>
  </li>
  <li>
    <p>Once saved, users can later run:</p>

    <p>Run Contract Validation Skill on the selected documents.</p>
  </li>
</ul>

<p>The benefit is that the legal validation process becomes reusable and consistent.</p>

<h2 id="example-skill-scenario-project-document-review">Example skill scenario: Project document review</h2>

<p>A project management team may store project initiation documents, status reports, and risk logs in SharePoint.</p>

<p>The organization may require every project document to include:</p>

<ul>
  <li>Project owner</li>
  <li>Business sponsor</li>
  <li>Timeline</li>
  <li>Scope</li>
  <li>Risks</li>
  <li>Dependencies</li>
  <li>Current status</li>
</ul>

<p>A skill can be created to review selected documents and return a structured report.</p>

<p>Example prompt:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Create a skill to review project documents and check whether each document contains project owner, business sponsor, timeline, scope, risks, dependencies, and current status. Return the result in a table with document name, missing fields, risk level, and recommended action.
</code></pre></div></div>

<p>This helps project managers quickly identify incomplete documents.</p>

<h2 id="example-skill-scenario-policy-review">Example skill scenario: Policy review</h2>

<p>An HR or compliance team may need to check whether policy documents follow internal standards.</p>

<p>A skill can check whether each policy document contains:</p>

<ul>
  <li>Policy name</li>
  <li>Policy owner</li>
  <li>Effective date</li>
  <li>Review date</li>
  <li>Approval authority</li>
  <li>Applicability</li>
  <li>Escalation process</li>
</ul>

<p>Example prompt:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Create a skill to review HR policy documents. Check whether each policy includes policy owner, effective date, next review date, approval authority, applicability, and escalation process. Summarize missing information and suggest corrections.
</code></pre></div></div>

<p>This helps improve document quality before publishing.</p>

<h2 id="example-skill-scenario-invoice-validation">Example skill scenario: Invoice validation</h2>

<p>A finance team may receive invoices from multiple vendors.</p>

<p>A skill can help validate whether each invoice contains:</p>

<ul>
  <li>Vendor name</li>
  <li>Invoice number</li>
  <li>Invoice date</li>
  <li>Purchase order number</li>
  <li>Amount</li>
  <li>Tax details</li>
  <li>Payment terms</li>
</ul>

<p>Example prompt:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Create a skill to review invoice documents. Check whether each invoice contains vendor name, invoice number, invoice date, purchase order number, total amount, tax details, and payment terms. For incomplete invoices, provide a summary of missing information.
</code></pre></div></div>

<p>This can reduce manual review effort and improve finance process accuracy.</p>

<h2 id="what-skills-cannot-do">What skills cannot do</h2>

<p>Skills are powerful, but they have boundaries.</p>

<p>Skills cannot connect to external systems or execute custom code. A skill can only perform actions the user already has permission to do. It does not expand access or introduce new capabilities beyond what AI in SharePoint provides.</p>

<p>This means skills cannot directly:</p>

<ul>
  <li>Call an external API.</li>
  <li>Run custom scripts.</li>
  <li>Connect to third-party systems by themselves.</li>
  <li>Bypass SharePoint permissions.</li>
  <li>Access content the user is not allowed to access.</li>
  <li>Perform actions outside the capabilities of AI in SharePoint.</li>
</ul>

<p>This is an important governance point. Skills are not custom plugins or external automation connectors. They are reusable AI instructions within the AI in SharePoint experience.</p>

<h2 id="skills-vs-prompts">Skills vs prompts</h2>

<p>A prompt is usually a one-time instruction.</p>

<p>A skill is a reusable instruction saved on the SharePoint site.</p>

<table>
  <thead>
    <tr>
      <th><strong>Area</strong></th>
      <th><strong>Prompt</strong></th>
      <th><strong>Skill</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Purpose</td>
      <td>One-time request</td>
      <td>Reusable task</td>
    </tr>
    <tr>
      <td>Storage</td>
      <td>Not saved as a reusable asset</td>
      <td>Saved in Agent Assets library</td>
    </tr>
    <tr>
      <td>Consistency</td>
      <td>Depends on how user writes it</td>
      <td>Standardized process</td>
    </tr>
    <tr>
      <td>Reuse</td>
      <td>User must write again</td>
      <td>Can be run again</td>
    </tr>
    <tr>
      <td>Governance</td>
      <td>Limited</td>
      <td>Can be managed as SharePoint content</td>
    </tr>
    <tr>
      <td>Best for</td>
      <td>Simple ad-hoc questions</td>
      <td>Repeatable business process</td>
    </tr>
  </tbody>
</table>

<h2 id="skills-vs-power-automate">Skills vs Power Automate</h2>

<p>Skills and Power Automate are not the same.</p>

<p>Power Automate is used to create event-based workflows, approvals, integrations, and business process automation across Microsoft 365 and external systems.</p>

<p>Skills are used to make AI in SharePoint perform repeatable content-related tasks using reusable instructions.</p>

<table>
  <thead>
    <tr>
      <th><strong>Area</strong></th>
      <th><strong>Skills in AI in SharePoint</strong></th>
      <th><strong>Power Automate</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Main purpose</td>
      <td>Reusable AI task in SharePoint</td>
      <td>Workflow automation</td>
    </tr>
    <tr>
      <td>User experience</td>
      <td>Natural language chat</td>
      <td>Flow designer</td>
    </tr>
    <tr>
      <td>Best for</td>
      <td>Document understanding, summarization, review, organization</td>
      <td>Approvals, notifications, integrations, scheduled jobs</td>
    </tr>
    <tr>
      <td>External systems</td>
      <td>Not supported directly by skills</td>
      <td>Supported through connectors</td>
    </tr>
    <tr>
      <td>Custom logic</td>
      <td>Limited to AI in SharePoint capabilities</td>
      <td>Can include conditions, loops, connectors, custom APIs</td>
    </tr>
    <tr>
      <td>Execution</td>
      <td>User-driven through AI experience</td>
      <td>Trigger-based or manual</td>
    </tr>
  </tbody>
</table>

<p>In many scenarios, both can complement each other. For example, a skill can help review documents, while Power Automate can manage approval routing or notifications.</p>

<h2 id="relationship-with-ai-powered-sharepoint-rules">Relationship with AI-powered SharePoint rules</h2>

<p>AI in SharePoint can also help users create document library rules using natural language.</p>

<p>For example, users can ask SharePoint to send an email, move a file, copy a file, or set a value based on conditions. Microsoft states that AI in SharePoint can help set up rules in a document library by describing the desired action using natural language. Supported rule actions include email, move, copy, and set value.</p>

<p>Skills are different because they focus on reusable AI instructions. Rules focus on automated library behavior when items are created, modified, or deleted.</p>

<p>A simple way to understand the difference:</p>

<ul>
  <li>Use <strong>skills</strong> when users need a reusable AI review or content task.</li>
  <li>Use <strong>rules</strong> when the library should automatically react to content changes.</li>
</ul>

<h2 id="governance-considerations">Governance considerations</h2>

<p>Skills should be governed carefully because they can influence how users process business content.</p>

<p><strong>1. Control who can create skills</strong></p>

<p>By default, users with Edit permissions can create skills. For business-critical sites, organizations may want only site owners, knowledge managers, or content owners to create or modify skills.</p>

<p>This can be done by managing permissions on the Agent Assets library.</p>

<p><strong>2. Review skill definitions</strong></p>

<p>Since skills are stored as Markdown files, site owners can review the underlying skill file if needed.</p>

<p>However, if the file is edited directly, the format should be kept intact so AI in SharePoint can continue to interpret the skill correctly.</p>

<p><strong>3. Apply retention and sensitivity labels</strong></p>

<p>Skills are stored in SharePoint, so standard governance can apply.</p>

<p>Organizations can consider:</p>

<ul>
  <li>Retention labels</li>
  <li>Sensitivity labels</li>
  <li>Auditing</li>
  <li>Permission reviews</li>
  <li>Version history</li>
  <li>Access reviews</li>
</ul>

<p><strong>4. Avoid over-permissioning</strong></p>

<p>A skill cannot give users more access than they already have. Still, organizations should ensure that SharePoint permissions are correctly configured.</p>

<p>If users should not process confidential documents, they should not have access to those documents in the first place.</p>

<p><strong>5. Test skills before broad use</strong></p>

<p>Before making a skill available to a wider audience, test it with real-world sample documents.</p>

<p>Check:</p>

<ul>
  <li>Does it understand the task correctly?</li>
  <li>Does it return consistent output?</li>
  <li>Does it ask for missing information when needed?</li>
  <li>Does it avoid unwanted changes?</li>
  <li>Does it work well with selected files?</li>
</ul>

<h2 id="best-practices-for-creating-skills">Best practices for creating skills</h2>

<p><strong>1. Start with a clear purpose</strong></p>

<p>Do not create a skill for a vague task.</p>

<p>Instead of:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Create a skill to review documents.
</code></pre></div></div>

<p>Use:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Create a skill to review vendor contract documents and check whether they include contract owner, effective date, expiry date, payment terms, termination clause, and liability clause.
</code></pre></div></div>

<p><strong>2. Define input clearly</strong></p>

<p>Mention what the skill should work on.</p>

<p>Example:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>The skill should work on selected documents in the current document library.
</code></pre></div></div>

<p><strong>3. Define output format</strong></p>

<p>Ask for a clear output format.</p>

<p>Example:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Return the result in a table with columns: Document Name, Status, Missing Information, Risk Level, and Recommended Action.
</code></pre></div></div>

<p><strong>4. Include business rules</strong></p>

<p>Add organization-specific rules.</p>

<p>Example:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Mark the document as High Risk if it does not contain an expiry date or termination clause.
</code></pre></div></div>

<p><strong>5. Keep the skill focused</strong></p>

<p>Avoid creating one large skill that does everything.</p>

<p>It is better to create separate skills such as:</p>

<ul>
  <li>Contract Review Skill</li>
  <li>Invoice Validation Skill</li>
  <li>Project Readiness Skill</li>
  <li>Policy Compliance Skill</li>
</ul>

<p>Focused skills are easier to test, maintain, and trust.</p>

<p><strong>6. Review before saving</strong></p>

<p>Always review the draft skill before saving. Make sure it matches the intended process.</p>

<p><strong>7. Name skills clearly</strong></p>

<p>Use meaningful names.</p>

<p>Good examples:</p>

<ul>
  <li>Contract Validation Skill</li>
  <li>Invoice Completeness Review Skill</li>
  <li>HR Policy Review Skill</li>
  <li>Project Status Summary Skill</li>
</ul>

<p>Avoid generic names like:</p>

<ul>
  <li>Test Skill</li>
  <li>Document Skill</li>
  <li>Review Skill</li>
</ul>

<h2 id="use-cases">Use cases</h2>

<ul>
  <li>
    <p><strong>Legal document review</strong>: Legal teams can create skills to check contracts for mandatory clauses, lawyer IDs, expiry dates, renewal terms, liability clauses, and missing approvals.</p>
  </li>
  <li>
    <p><strong>Finance invoice validation</strong>: Finance teams can use skills to check whether invoices contain required fields such as vendor name, invoice number, purchase order number, tax details, and payment terms.</p>
  </li>
  <li>
    <p><strong>HR policy quality check</strong>: HR teams can create skills to review policy documents and check whether they include owner, effective date, review date, applicability, and escalation process.</p>
  </li>
  <li>
    <p><strong>Project documentation review</strong>: Project teams can use skills to check whether project documents contain scope, timeline, risks, dependencies, owner, and current status.</p>
  </li>
  <li>
    <p><strong>Compliance checklist review</strong>: Compliance teams can use skills to review documents against internal standards before publishing or audit submission.</p>
  </li>
  <li>
    <p><strong>Knowledge base improvement</strong>: Support teams can create skills to review knowledge articles and check whether they include symptoms, cause, resolution, owner, and last reviewed date.</p>
  </li>
  <li>
    <p><strong>Sales proposal review</strong>: Sales teams can create skills to review proposals for customer name, business problem, solution summary, pricing assumptions, timeline, risks, and next steps.</p>
  </li>
  <li>
    <p><strong>Content publishing readiness</strong>: Communication teams can use skills to check whether publishing documents include title, summary, audience, approval status, owner, and publish date.</p>
  </li>
</ul>

<h2 id="example-prompt-templates">Example prompt templates</h2>

<p><strong>Contract review skill</strong></p>

<p>Create a skill named Contract Validation Skill. This skill should review selected contract documents and check whether each document contains contract owner, effective date, expiry date, payment terms, termination clause, and liability clause. Return the result in a table with document name, validation status, missing information, risk level, and recommended action.</p>

<p><strong>Invoice review skill</strong></p>

<p>Create a skill named Invoice Completeness Review Skill. This skill should review selected invoice documents and check whether each invoice includes vendor name, invoice number, invoice date, purchase order number, total amount, tax details, and payment terms. Return incomplete invoices with missing fields and recommended action.</p>

<p><strong>Policy review skill</strong></p>

<p>Create a skill named HR Policy Review Skill. This skill should review selected HR policy documents and check whether each document includes policy owner, effective date, next review date, approval authority, applicability, and escalation process. Return the result in a table with missing details and improvement suggestions.</p>

<p><strong>Project readiness skill</strong></p>

<p>Create a skill named Project Readiness Review Skill. This skill should review selected project documents and check whether each document contains project owner, sponsor, scope, timeline, risks, dependencies, and current status. Mark documents as Ready, Needs Update, or High Risk.</p>

<h2 id="recommended-implementation-approach">Recommended implementation approach</h2>

<p>Organizations should not enable skills randomly across all sites without planning. A better approach is to start small and expand gradually.</p>

<p><strong>Phase 1: Identify candidate processes</strong></p>

<p>Find document-heavy processes that are repeated often.</p>

<p>Examples:</p>

<ul>
  <li>Contract review</li>
  <li>Invoice validation</li>
  <li>Policy review</li>
  <li>Project reporting</li>
  <li>Knowledge article review</li>
</ul>

<p><strong>Phase 2: Choose pilot sites</strong></p>

<p>Enable AI in SharePoint for selected pilot sites instead of all sites.</p>

<p>This allows better control during preview.</p>

<p><strong>Phase 3: Create initial skills</strong></p>

<p>Create a small set of high-value skills with clear business owners.</p>

<p><strong>Phase 4: Test with real documents</strong></p>

<p>Run skills on sample files and validate the output with business users.</p>

<p><strong>Phase 5: Apply governance</strong></p>

<p>Review permissions, sensitivity labels, retention, and audit requirements.</p>

<p><strong>Phase 6: Train users</strong></p>

<p>Teach users how to run skills, how to interpret outputs, and when to escalate to human review.</p>

<p><strong>Phase 7: Expand gradually</strong></p>

<p>After successful validation, expand to more teams and sites.</p>

<h2 id="key-limitations-to-remember">Key limitations to remember</h2>

<p>Skills are currently part of the preview version of AI capabilities in SharePoint. Microsoft notes that the article applies to the preview version, previously referred to as Knowledge Agent.</p>

<p>Important limitations include:</p>

<ul>
  <li>The site must be opted in to AI in SharePoint preview.</li>
  <li>Users need proper licensing.</li>
  <li>Skills work only within AI in SharePoint capabilities.</li>
  <li>Skills cannot connect to external systems.</li>
  <li>Skills cannot execute custom code.</li>
  <li>Skills do not bypass SharePoint permissions.</li>
  <li>Skills are available only within the first-party AI in SharePoint experience by default.</li>
  <li>The Agent Assets library is product-managed and cannot be deleted.</li>
</ul>

<p><strong>Business benefits</strong></p>

<p>Skills can provide many benefits to organizations using SharePoint.</p>

<p><strong>Improved productivity</strong></p>

<p>Users spend less time writing repeated prompts and manually reviewing documents.</p>

<p><strong>Better consistency</strong></p>

<p>Common business processes can be captured once and reused by many users.</p>

<p><strong>Lower dependency on technical teams</strong></p>

<p>Business users can create skills using natural language without building custom applications.</p>

<p><strong>Better document quality</strong></p>

<p>Skills can help detect missing information, incomplete documents, and quality gaps.</p>

<p><strong>Stronger governance alignment</strong></p>

<p>Because skills are stored in SharePoint, organizations can apply familiar SharePoint governance controls.</p>

<p><strong>Faster adoption of AI</strong></p>

<p>Skills make AI more practical because users can apply it to real daily work, not just generic questions.</p>

<h2 id="summary">Summary</h2>

<p>Skills in AI in SharePoint help organizations convert repeatable content tasks into reusable AI-powered assets. They allow users to create structured, business-specific instructions using natural language and reuse them across future prompts.</p>

<p>Skills are especially useful for document review, contract validation, invoice checking, policy review, project document analysis, and knowledge base improvement.</p>

<p>They do not replace Power Automate, custom applications, or external integrations. Instead, they extend AI in SharePoint by making document-centric AI tasks more repeatable, consistent, and easier to use.</p>

<p>From a governance perspective, skills follow SharePoint permissions and are stored as Markdown files in the Agent Assets library. Organizations can apply standard SharePoint governance such as permissions, retention, sensitivity labels, and auditing.</p>

<p>For best results, organizations should start with focused business scenarios, create well-defined skills, test them with real content, and manage permissions carefully.</p>

<h2 id="references">References</h2>

<ul>
  <li><a href="https://learn.microsoft.com/en-us/SharePoint/ai-in-sharepoint-skills?WT.mc_id=M365-MVP-5003693">Microsoft Learn: Extend AI in SharePoint with skills</a></li>
  <li><a href="https://learn.microsoft.com/en-us/SharePoint/ai-in-sharepoint-get-started?WT.mc_id=M365-MVP-5003693">Microsoft Learn: Get started with AI in SharePoint</a></li>
  <li><a href="https://learn.microsoft.com/en-us/SharePoint/ai-in-sharepoint-automate-workflows?WT.mc_id=M365-MVP-5003693">Microsoft Learn: Automate workflows in a SharePoint document library</a></li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Microsoft 365" /><category term="AI" /><category term="SharePoint" /><category term="2026" /><category term="May 2026" /><category term="M365 2026-27" /><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Run AI Agents Effortlessly with Microsoft Foundry Hosted Agents</title><link href="https://nanddeepn.github.io/posts/2026-04-18-hosted-agents-foundry/" rel="alternate" type="text/html" title="Run AI Agents Effortlessly with Microsoft Foundry Hosted Agents" /><published>2026-04-18T00:00:00+08:00</published><updated>2026-04-18T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/hosted-agents-foundry</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2026-04-18-hosted-agents-foundry/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>When you build AI agents using open-source frameworks, you usually have to handle a long list of infrastructure chores yourself - containerizing the app, setting up a web server, wiring in security, persisting memory, scaling, telemetry, and rollbacks. These tasks get even harder when you are running across multiple cloud environments.</p>

<p><strong>Hosted Agents</strong> in Microsoft Foundry’s Agent Service solve this problem. They let you bring <strong>your own agent code</strong> (written in LangGraph, Microsoft Agent Framework, or custom code) and run it as a <strong>managed, containerized service</strong> on Microsoft-managed, pay-as-you-go infrastructure.</p>

<p>In simple words: You write the agent logic, Foundry handles the plumbing.</p>

<blockquote>
  <p><strong>Note:</strong> Hosted Agents are currently in preview.</p>
</blockquote>

<h2 id="key-concepts"><strong>Key Concepts</strong></h2>

<h3 id="1-hosted-agent"><strong>1. Hosted Agent</strong></h3>

<p>A hosted agent is a <strong>containerized agentic AI application</strong> that runs on Foundry Agent Service. Unlike prompt-based agents (which you configure through instructions), hosted agents are built entirely through <strong>code</strong> and deployed as <strong>container images</strong>.</p>

<p>They follow a standard lifecycle: <strong>Create → Start → Update → Stop → Delete</strong>.</p>

<h3 id="2-hosting-adapter"><strong>2. Hosting Adapter</strong></h3>

<p>The hosting adapter is a framework abstraction layer that exposes your agent (or custom code) as an <strong>HTTP service</strong>. It gives you:</p>

<ul>
  <li><strong>Simplified local testing</strong> - run your agent locally on localhost:8088 before deploying.</li>
  <li><strong>Automatic protocol translation</strong> - handles conversion between Foundry request/response format and your framework’s native data structures.</li>
  <li><strong>Built-in observability</strong> - exports traces, metrics, and logs through OpenTelemetry.</li>
  <li><strong>Seamless Foundry integration</strong> - works with the Foundry Responses API, conversation management, and auth flows.</li>
</ul>

<p><strong>Public adapter packages:</strong></p>

<ul>
  <li><strong>Python:</strong> <code class="language-plaintext highlighter-rouge">azure-ai-agentserver-core</code>, <code class="language-plaintext highlighter-rouge">azure-ai-agentserver-agentframework</code>, <code class="language-plaintext highlighter-rouge">azure-ai-agentserver-langgraph</code></li>
  <li><strong>.NET:</strong> <code class="language-plaintext highlighter-rouge">Azure.AI.AgentServer.Core</code>, <code class="language-plaintext highlighter-rouge">Azure.AI.AgentServer.AgentFramework</code></li>
</ul>

<h3 id="3-agent-identity"><strong>3. Agent Identity</strong></h3>

<ul>
  <li><strong>Unpublished agents</strong> run under the project managed identity (shared across unpublished agents in the project).</li>
  <li><strong>Published agents</strong> get their own dedicated agent identity. After publishing, re-grant permissions to any Azure resources the agent accesses - permissions don’t transfer automatically.</li>
</ul>

<h3 id="4-managed-service-capabilities"><strong>4. Managed Service Capabilities</strong></h3>

<p>Agent Service handles:</p>

<ul>
  <li>Provisioning and autoscaling</li>
  <li>Conversation orchestration and state management</li>
  <li>Identity management</li>
  <li>Integration with Foundry tools and models</li>
  <li>Built-in observability and evaluation</li>
  <li>Enterprise-grade security, compliance, and governance</li>
</ul>

<h2 id="framework-and-language-support"><strong>Framework and Language Support</strong></h2>

<table>
  <thead>
    <tr>
      <th><strong>Framework</strong></th>
      <th><strong>Python</strong></th>
      <th><strong>C#</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Microsoft Agent Framework</td>
      <td>Yes</td>
      <td>Yes</td>
    </tr>
    <tr>
      <td>LangGraph</td>
      <td>Yes</td>
      <td>No</td>
    </tr>
    <tr>
      <td>Custom code</td>
      <td>Yes</td>
      <td>Yes</td>
    </tr>
  </tbody>
</table>

<h2 id="agent-replica-sizes"><strong>Agent Replica Sizes</strong></h2>

<p>You can pick CPU and memory pairs for each replica (an agent can run multiple replicas). Supported sizes range from <strong>0.25 vCPU / 0.5 GiB</strong> up to <strong>4.0 vCPU / 8.0 GiB</strong>, in 0.25 vCPU / 0.5 GiB steps.</p>

<h2 id="how-it-works-end-to-end-flow"><strong>How It Works: End-to-End Flow</strong></h2>

<ul>
  <li>Write your agent using Microsoft Agent Framework, LangGraph, or custom code.</li>
  <li>Wrap it with the hosting adapter so it exposes a REST API.</li>
  <li>Test locally on <a href="http://localhost:8088/responses">http://localhost:8088/responses</a>.</li>
  <li>Containerize the agent using a Dockerfile (must target linux/amd64).</li>
  <li>Push the image to Azure Container Registry (ACR).</li>
  <li>Register the agent with Foundry (via Azure Developer CLI or Python SDK).</li>
  <li>Foundry deploys it as a managed container, autoscaled and secured.</li>
  <li>Monitor, update, or stop the agent through its lifecycle.</li>
</ul>

<h2 id="local-testing-before-deployment"><strong>Local Testing Before Deployment</strong></h2>

<p>Before you hand the agent to Foundry, the hosting adapter lets you validate behavior on your own machine. When you run your agent locally, the adapter starts a web server on localhost port 8088 and exposes your agent as a REST endpoint. You can then send sample inputs and inspect responses using any HTTP client, exactly as Foundry will call it in production.</p>

<p><strong>Local testing lets you:</strong></p>

<ul>
  <li>Validate agent behavior and tool calls before containerization.</li>
  <li>Debug issues in your development environment with familiar tools.</li>
  <li>Try different input scenarios quickly and iterate on instructions.</li>
  <li>Verify API compatibility with the Foundry Responses API.</li>
</ul>

<h2 id="deploying-a-hosted-agent"><strong>Deploying a Hosted Agent</strong></h2>

<h3 id="prerequisites"><strong>Prerequisites</strong></h3>

<ul>
  <li>A Microsoft Foundry project.</li>
  <li>Python 3.10 or later for SDK-based development.</li>
  <li>Azure CLI 2.80 or later.</li>
  <li>Docker Desktop for local container development.</li>
  <li>Familiarity with Azure Container Registry.</li>
  <li>Agent code built on a supported framework.</li>
</ul>

<h3 id="required-permissions"><strong>Required Permissions</strong></h3>

<table>
  <thead>
    <tr>
      <th><strong>Scenario</strong></th>
      <th><strong>Required Roles</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Create a new Foundry project</td>
      <td>Azure AI Owner on Foundry resource</td>
    </tr>
    <tr>
      <td>Deploy to an existing project with new resources</td>
      <td>Azure AI Owner on Foundry + Contributor on subscription</td>
    </tr>
    <tr>
      <td>Deploy to a fully configured project</td>
      <td>Reader on account + Azure AI User on project</td>
    </tr>
  </tbody>
</table>

<h3 id="deployment-paths"><strong>Deployment Paths</strong></h3>

<p>Foundry supports two paths to deploy a hosted agent. Both produce the same managed runtime - pick the path that fits your workflow.</p>

<h4 id="path-1---azure-developer-cli-fastest"><strong>Path 1 - Azure Developer CLI (fastest)</strong></h4>

<p>The Azure Developer CLI with the ai agent extension is the fastest way to go from code to running agent. In a single command, it provisions the required Azure resources (container registry, application insights, managed identity, RBAC), builds the container image from your source, pushes it to the registry, and registers a new agent version with Foundry. It is designed for rapid prototyping and interactive setup from a local project or a sample template.</p>

<h4 id="path-2---python-sdk-programmatic--ci-cd"><strong>Path 2 - Python SDK (programmatic / CI-CD)</strong></h4>

<p>The Azure AI Projects SDK is the right path when you need programmatic control - for CI/CD pipelines, GitOps workflows, or integrating agent deployment into a larger release process. With the SDK you explicitly build and push your container image to Azure Container Registry, grant the Foundry project’s managed identity permission to pull from that registry, ensure an account-level capability host exists with public hosting enabled, and then register a new hosted agent version with parameters for image reference, CPU, memory, tools, and environment variables.</p>

<h4 id="key-configuration-parameters"><strong>Key Configuration Parameters</strong></h4>

<table>
  <thead>
    <tr>
      <th><strong>Parameter</strong></th>
      <th><strong>Description</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Agent name</td>
      <td>Unique identifier (alphanumeric with hyphens, up to 63 characters).</td>
    </tr>
    <tr>
      <td>Container image</td>
      <td>Full Azure Container Registry image URL with tag - must be built for linux/amd64.</td>
    </tr>
    <tr>
      <td>CPU</td>
      <td>vCPU allocation per replica (for example, 0.25, 1.0, 2.0, up to 4.0).</td>
    </tr>
    <tr>
      <td>Memory</td>
      <td>Memory allocation per replica (paired with CPU; for example, 2 GiB with 1 vCPU).</td>
    </tr>
    <tr>
      <td>Tools</td>
      <td>Built-in tools attached to the agent - Code Interpreter, Image Generation, Web Search, MCP connections.</td>
    </tr>
    <tr>
      <td>Environment variables</td>
      <td>Runtime configuration values such as project endpoint and model deployment name.</td>
    </tr>
  </tbody>
</table>

<h4 id="supported-built-in-tools"><strong>Supported Built-in Tools</strong></h4>

<ul>
  <li>Code Interpreter - executes sandboxed code at agent runtime.</li>
  <li>Image Generation - produces images inline during the conversation.</li>
  <li>Web Search - grounds responses with current information from the web.</li>
  <li>MCP (Model Context Protocol) connections - plug in external tool servers.</li>
</ul>

<h4 id="cleanup"><strong>Cleanup</strong></h4>

<p>When you are done testing or decommissioning an agent, tear down the deployment to stop incurring charges. Both paths provide a symmetric cleanup action - the Azure Developer CLI removes all provisioned resources, while the SDK lets you delete specific agent versions programmatically.</p>

<h2 id="use-cases"><strong>Use Cases</strong></h2>

<table>
  <thead>
    <tr>
      <th><strong>Scenario</strong></th>
      <th><strong>Why Hosted Agents fit</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Enterprise copilots with custom logic</td>
      <td>Run proprietary code and private tools inside a governed environment.</td>
    </tr>
    <tr>
      <td>LangGraph / Agent Framework workflows</td>
      <td>Deploy multi-step orchestrations without managing your own Kubernetes or App Service.</td>
    </tr>
    <tr>
      <td>Line-of-business automation</td>
      <td>Agents that call internal APIs and custom functions securely.</td>
    </tr>
    <tr>
      <td>Long-running / stateful conversations</td>
      <td>Service handles conversation state and memory for you.</td>
    </tr>
    <tr>
      <td>Regulated industries (finance, healthcare, gov)</td>
      <td>Enterprise-grade security, compliance, RBAC, managed identities.</td>
    </tr>
    <tr>
      <td>Agents using Foundry tools</td>
      <td>Native access to Code Interpreter, Web Search, Image Generation, MCP servers.</td>
    </tr>
    <tr>
      <td>CI/CD-deployed agent apps</td>
      <td>Programmatic deployment through Python SDK enables GitOps-style rollout.</td>
    </tr>
    <tr>
      <td>Rapid prototyping</td>
      <td>Azure Developer CLI provisions infra, registry, identity, and RBAC in one azd up.</td>
    </tr>
  </tbody>
</table>

<h2 id="summary"><strong>Summary</strong></h2>

<p>Hosted Agents in Microsoft Foundry offer a <strong>code-first, managed path to production</strong> for AI agents. You write agent logic using the framework of your choice - Microsoft Agent Framework, LangGraph, or custom code - wrap it with the <strong>hosting adapter</strong>, containerize it, and hand it to Foundry. From there, Foundry handles <strong>provisioning, autoscaling, identity, observability, security, and lifecycle management</strong>.</p>

<p>For developers, Hosted Agents remove the operational burden of running agentic applications so you can focus on what differentiates your agent - its logic, tools, and user experience.</p>

<h2 id="references"><strong>References</strong></h2>

<ul>
  <li><a href="https://learn.microsoft.com/en-us/azure/foundry/agents/concepts/hosted-agents?WT.mc_id=M365-MVP-5003693">Hosted agents in Foundry Agent Service</a></li>
  <li><a href="https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/deploy-hosted-agent?WT.mc_id=M365-MVP-5003693">Deploy a hosted agent</a></li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Microsoft Foundry" /><category term="AI" /><category term="2026" /><category term="April 2026" /><category term="AI 2026-27" /><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">SharePoint File-Level Archiving Solution</title><link href="https://nanddeepn.github.io/posts/2026-04-05-sp-file-archival/" rel="alternate" type="text/html" title="SharePoint File-Level Archiving Solution" /><published>2026-04-05T00:00:00+08:00</published><updated>2026-04-05T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/sp-file-archival</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2026-04-05-sp-file-archival/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>Managing storage in SharePoint Online has become a growing challenge for organizations as content continues to expand across departments, projects, and collaboration spaces. Traditionally, Microsoft provided <strong>site-level archiving</strong>, which forced IT teams to archive entire sites-even when only a portion of the content was inactive.</p>

<p>With the introduction of <strong>file-level archiving in Microsoft 365 Archive (Public Preview 2026)</strong>, organizations now have a <strong>modern, granular, and cost-effective way</strong> to archive content based on file age while keeping active collaboration unaffected.</p>

<p>This article provides a <strong>detailed, practical, and customer-ready explanation</strong> of file-level archiving, including architecture, implementation approach, automation strategy, and business benefits.</p>

<h2 id="the-storage-challenge-why-file-level-archiving-matters">The Storage Challenge: Why File-Level Archiving Matters</h2>

<p>Organizations face:</p>

<ul>
  <li>Rapid growth of SharePoint content</li>
  <li>Long-lived sites (HR, Finance, Projects)</li>
  <li>Mix of active and inactive files in the same library</li>
</ul>

<p>Previously:</p>

<ul>
  <li>Only <strong>site-level archiving</strong> was available</li>
  <li>Result:
    <ul>
      <li>Entire site had to be archived OR</li>
      <li>Old files stayed in active storage</li>
    </ul>
  </li>
</ul>

<p>This led to:</p>

<ul>
  <li>Increased storage costs</li>
  <li>Reduced performance</li>
  <li>Poor search and Copilot relevance</li>
</ul>

<p>With file-level archiving:</p>

<ul>
  <li>Archive only inactive files</li>
  <li>Keep active content available</li>
  <li>Optimize storage efficiently</li>
</ul>

<p>As highlighted in the provided document , this capability enables <strong>precision-based storage management</strong>, which was not possible earlier.</p>

<h2 id="what-is-file-level-archiving">What is File-Level Archiving?</h2>

<p>File-level archiving extends Microsoft 365 Archive from the site level to individual files, allowing files within active SharePoint sites to be moved into cold storage independently. Archived files remain visible in their original document library location with a distinct archive icon overlay, maintaining user familiarity with content structure.</p>

<p>While archived, files are not readable and require reactivation before access, but all metadata, permissions, and version history are fully preserved throughout the archive and reactivation cycle.</p>

<p>Users with edit permissions can archive files directly from SharePoint sites enabled for file archiving by selecting one or more files and choosing the archive action. The feature supports folder-level actions, enabling users to archive or reactivate all files within a folder including subfolders in a single operation, with automatic email notification upon completion.</p>

<p>File-level archiving allows:</p>

<ul>
  <li>Archiving <strong>individual files or folders</strong></li>
  <li>Within <strong>active SharePoint sites</strong></li>
  <li>Without impacting ongoing collaboration</li>
</ul>

<p><strong>Key Characteristics:</strong></p>

<ul>
  <li>Files move to <strong>cold storage tier</strong></li>
  <li>Still visible in SharePoint (with archive indicator)</li>
  <li>Metadata, permissions, and version history preserved</li>
  <li>Requires reactivation before access</li>
</ul>

<p>This ensures:</p>

<ul>
  <li>No data loss</li>
  <li>No governance impact</li>
</ul>

<h2 id="how-file-level-archiving-works">How File-Level Archiving Works</h2>

<p><strong>End-to-End Flow</strong></p>

<ul>
  <li>Identify inactive files (e.g., older than 3 years)</li>
  <li>Archive files to Microsoft 365 Archive</li>
  <li>Files move to cold storage</li>
  <li>Users can restore when needed</li>
</ul>

<h2 id="addressing-customer-requirements">Addressing Customer Requirements</h2>

<p><strong>Requirement 1: Archive files based on age</strong></p>

<p>Since automatic policies are evolving (preview stage), implement:</p>

<ul>
  <li><strong>Power Automate</strong> OR</li>
  <li><strong>PnP PowerShell / Microsoft Graph</strong></li>
</ul>

<p>Example logic:</p>

<ul>
  <li>Modified Date ≤ 3 years</li>
</ul>

<p>This enables <strong>automated lifecycle-based archiving</strong></p>

<p><strong>Requirement 2: Easy Restore for Users</strong></p>

<ul>
  <li>Users with <strong>read permission</strong> can restore files</li>
  <li>No IT dependency</li>
  <li>Restore behavior:
    <ul>
      <li>Recent → instant</li>
      <li>Older → up to 24 hours</li>
    </ul>
  </li>
</ul>

<p><strong>Requirement 3: Save SharePoint Storage</strong></p>

<ul>
  <li>Archived files moved to <strong>low-cost storage tier</strong></li>
  <li>Up to <strong>75% cost savings</strong> compared to SharePoint storage</li>
</ul>

<h2 id="storage-cost-optimization">Storage Cost Optimization</h2>

<table>
  <thead>
    <tr>
      <th><strong>Storage Type</strong></th>
      <th><strong>Cost</strong></th>
      <th><strong>Purpose</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>SharePoint Online</td>
      <td>Standard pricing</td>
      <td>Active data</td>
    </tr>
    <tr>
      <td>Microsoft 365 Archive</td>
      <td>Low (~$0.05/GB)</td>
      <td>Archived data</td>
    </tr>
  </tbody>
</table>

<p>Key benefit:</p>

<ul>
  <li>Charges apply <strong>only when tenant exceeds quota</strong></li>
</ul>

<h2 id="file-level-vs-site-level-archiving">File-Level vs Site-Level Archiving</h2>

<p>Microsoft 365 Archive now offers both file-level and site-level archiving capabilities, each serving distinct use cases for IT decision makers.</p>
<ul>
  <li>Site-level archiving works well for project-based sites that conclude all at once, moving entire sites to cold storage when all collaboration has ended.</li>
  <li>File-level archiving provides the precision instrument for large, long-lived sites where a handful of active files coexist with years of inactive content, enabling selective archiving without disrupting ongoing work.</li>
</ul>

<p>The granular control of file-level archiving allows administrators to enable users to identify and archive content they are familiar with, rather than requiring administrators to make broad judgement calls about entire site relevancy.</p>

<p>This approach improves both Copilot and search performance by removing archived files from the active index while maintaining governance and compliance requirements.</p>

<table>
  <thead>
    <tr>
      <th><strong>Feature</strong></th>
      <th><strong>File-Level</strong></th>
      <th><strong>Site-Level</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Granularity</td>
      <td>Individual files</td>
      <td>Entire site</td>
    </tr>
    <tr>
      <td>User Control</td>
      <td>Yes</td>
      <td>No (Admin only)</td>
    </tr>
    <tr>
      <td>Impact</td>
      <td>Minimal</td>
      <td>Entire site unavailable</td>
    </tr>
    <tr>
      <td>Use Case</td>
      <td>Long-lived sites</td>
      <td>Completed projects</td>
    </tr>
  </tbody>
</table>

<p>File-level archiving is ideal for:</p>

<ul>
  <li>HR portals</li>
  <li>Finance systems</li>
  <li>Ongoing collaboration sites</li>
</ul>

<h2 id="automation-strategy-recommended">Automation Strategy (Recommended)</h2>

<p>Since policy-based archiving is not fully available yet:</p>

<p><strong>Option 1: PnP PowerShell (Best for Enterprise)</strong></p>

<ul>
  <li>Scan all sites</li>
  <li>Filter files older than 3 years</li>
  <li>Archive using API</li>
</ul>

<p><strong>Option 2: Power Automate</strong></p>

<ul>
  <li>Scheduled flow</li>
  <li>Condition-based filtering</li>
  <li>Archive action</li>
</ul>

<h2 id="governance--control">Governance &amp; Control</h2>

<p>Admins can:</p>

<ul>
  <li>Enable/disable archive per tenant/site</li>
  <li>Control user permissions</li>
  <li>Monitor archive usage</li>
</ul>

<h2 id="impact-on-copilot-and-search">Impact on Copilot and Search</h2>

<p>One of the most important benefits:</p>

<ul>
  <li>Archived files removed from active index</li>
  <li>
    <p>Improves:</p>

    <ul>
      <li>Search results</li>
      <li>Copilot responses</li>
    </ul>
  </li>
</ul>

<p>Only relevant, active data is surfaced</p>

<h2 id="use-cases">Use Cases</h2>

<p>File-level archiving directly addresses two critical customer needs:</p>
<ol>
  <li>Easy restore functionality</li>
  <li>SharePoint storage savings</li>
</ol>

<p>For storage optimization, archiving helps reduce active SharePoint storage consumption by moving inactive content to a lower-cost cold storage tier, potentially saving up to 75% compared to adding additional SharePoint storage capacity.</p>

<p><strong>1. HR Department</strong></p>

<ul>
  <li>Archive employee records older than 5 years</li>
  <li>Keep current employees active</li>
</ul>

<p><strong>Finance</strong></p>

<ul>
  <li>Archive historical invoices and reports</li>
  <li>Maintain compliance</li>
</ul>

<p><strong>3. Project Sites</strong></p>

<ul>
  <li>Archive completed deliverables</li>
  <li>Keep active project files</li>
</ul>

<p><strong>4. Legal &amp; Compliance</strong></p>

<ul>
  <li>Retain records in archive</li>
  <li>Restore when needed for audits</li>
</ul>

<h2 id="implementation-roadmap">Implementation Roadmap</h2>

<p><strong>Phase 1: Pilot</strong></p>

<ul>
  <li>Enable file-level archive</li>
  <li>Select few sites</li>
  <li>Test automation</li>
</ul>

<p><strong>Phase 2: Scale</strong></p>

<ul>
  <li>Apply across tenant</li>
  <li>Define policies</li>
</ul>

<p><strong>Phase 3: Optimize</strong></p>

<ul>
  <li>Monitor storage savings</li>
  <li>Fine-tune rules</li>
</ul>

<h2 id="licensing--availability">Licensing &amp; Availability</h2>

<ul>
  <li>Available in <strong>Public Preview (March 2026)</strong></li>
  <li>GA expected: <strong>July 2026</strong></li>
  <li>Uses:
    <ul>
      <li>Microsoft 365 Archive</li>
      <li>Syntex PAYG model</li>
    </ul>
  </li>
</ul>

<h2 id="key-benefits">Key Benefits</h2>

<ul>
  <li>Up to 75% storage cost savings</li>
  <li>File-level precision</li>
  <li>Native Microsoft 365 integration</li>
  <li>Easy restore (self-service)</li>
  <li>Improved search &amp; Copilot relevance</li>
  <li>No external storage dependency</li>
</ul>

<h2 id="summary">Summary</h2>

<p>File-level archiving in Microsoft 365 Archive is a <strong>game-changing capability</strong> for SharePoint storage management.</p>

<p>It enables organizations to:</p>

<ul>
  <li>Archive files based on age</li>
  <li>Reduce storage costs significantly</li>
  <li>Provide seamless restore experience</li>
  <li>Maintain governance and compliance</li>
</ul>

<p>While still in preview, it is recommended to:</p>
<ul>
  <li>Start with a pilot implementation</li>
  <li>Build automation for age-based archiving</li>
  <li>Scale after General Availability</li>
</ul>

<h2 id="references">References</h2>

<ul>
  <li><a href="https://learn.microsoft.com/en-us/microsoft-365/archive/archive-overview?WT.mc_id=M365-MVP-5003693">Microsoft 365 Archive</a></li>
  <li><a href="https://techcommunity.microsoft.com/blog/microsoft_365blog/file-level-archiving-comes-to-microsoft-365-archive-public-preview/4506886?WT.mc_id=M365-MVP-5003693">Microsoft Tech Community Blog (File-Level Archiving Announcement)</a></li>
  <li><a href="https://learn.microsoft.com/en-us/microsoft-365/archive/archive-end-user?WT.mc_id=M365-MVP-5003693">End user experience in Microsoft 365 Archive</a></li>
  <li><a href="https://adoption.microsoft.com/en-us/microsoft-365-archive/?WT.mc_id=M365-MVP-5003693">Microsoft 365 Archive Adoption</a></li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Microsoft 365" /><category term="AI" /><category term="2026" /><category term="April 2026" /><category term="M365 2026-27" /><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Agents in Viva Engage Community</title><link href="https://nanddeepn.github.io/posts/2026-03-27-agents-viva-engage/" rel="alternate" type="text/html" title="Agents in Viva Engage Community" /><published>2026-03-27T00:00:00+08:00</published><updated>2026-03-27T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/agents-viva-engage</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2026-03-27-agents-viva-engage/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>Agents in Viva Engage Community are AI-powered assistants that enhance enterprise knowledge sharing by automatically identifying unanswered questions and generating contextual, grounded responses. Built on Microsoft Copilot capabilities and integrated with Microsoft 365 data sources such as SharePoint and Viva Engage conversations, these agents act as scalable digital experts within communities.</p>

<p>This detailed article explains Viva Engage Community Agents in depth, including architecture, working principles, licensing, deployment configuration, governance, and real-world use cases-based on Microsoft’s official guidance.</p>

<h2 id="overview-of-viva-engage-community-agents">Overview of Viva Engage Community Agents</h2>

<p>A Viva Engage Community Agent is designed to:</p>

<ul>
  <li>Continuously monitor community activity</li>
  <li>Identify unanswered questions</li>
  <li>Generate AI-based responses grounded in enterprise data</li>
  <li>Provide answers with citations</li>
  <li>Support human validation workflows</li>
</ul>

<p>Unlike traditional bots, these agents are <strong>context-aware and knowledge-grounded</strong>, ensuring that responses are relevant and aligned with organizational knowledge.</p>

<h2 id="architecture-and-components">Architecture and Components</h2>

<p>The functionality of Viva Engage Community Agents is built on multiple Microsoft 365 services working together.</p>

<p><strong>1. Viva Engage (Yammer) Community Layer</strong></p>

<ul>
  <li>Source of:
    <ul>
      <li>Questions</li>
      <li>Conversations</li>
      <li>Community interactions</li>
    </ul>
  </li>
  <li>Provides the <strong>engagement surface</strong> for users</li>
</ul>

<p><strong>2. Microsoft 365 Copilot / AI Layer</strong></p>

<ul>
  <li>Responsible for:
    <ul>
      <li>Natural language understanding</li>
      <li>Answer generation</li>
      <li>Context synthesis</li>
    </ul>
  </li>
</ul>

<p><strong>3. Knowledge Grounding Layer</strong></p>

<ul>
  <li>Uses:
    <ul>
      <li>SharePoint Online content</li>
      <li>Existing Viva Engage conversations</li>
    </ul>
  </li>
  <li>Ensures answers are:
    <ul>
      <li>Accurate</li>
      <li>Contextual</li>
      <li>Referenced (citations included)</li>
    </ul>
  </li>
</ul>

<p><strong>4. Microsoft Graph</strong></p>

<ul>
  <li>Handles:
    <ul>
      <li>Data access</li>
      <li>Security trimming</li>
    </ul>
  </li>
  <li>Ensures:
    <ul>
      <li>Responses respect user permissions</li>
    </ul>
  </li>
</ul>

<p><strong>5. Governance &amp; Compliance Layer</strong></p>

<ul>
  <li>Managed via:
    <ul>
      <li>Microsoft 365 Admin Center</li>
      <li>Viva Engage Admin settings</li>
    </ul>
  </li>
  <li>Includes:
    <ul>
      <li>Data protection</li>
      <li>Access control</li>
      <li>Responsible AI enforcement</li>
    </ul>
  </li>
</ul>

<h2 id="how-the-community-agent-works">How the Community Agent Works</h2>

<p>The agent follows a structured multi-step workflow:</p>

<p><strong>Step 1: Scheduled Community Scan</strong></p>

<ul>
  <li>Runs automatically every <strong>15-20 minutes</strong></li>
  <li>Identifies:
    <ul>
      <li>Newly posted questions</li>
      <li>Unanswered questions</li>
    </ul>
  </li>
</ul>

<p><strong>Step 2: Question Qualification</strong></p>

<p>The agent filters posts based on:</p>

<ul>
  <li>Post type = <strong>Question</strong></li>
  <li>No existing:
    <ul>
      <li>Best answer</li>
      <li>Verified answer</li>
    </ul>
  </li>
  <li>Age &lt; <strong>14 days</strong></li>
</ul>

<p>This ensures the agent focuses only on relevant and actionable queries.</p>

<p><strong>Step 3: Context Gathering</strong></p>

<p>The agent collects context from:</p>

<ul>
  <li>Previous Viva Engage discussions</li>
  <li>SharePoint documents and knowledge bases</li>
  <li>Organizational content accessible via Microsoft Graph</li>
</ul>

<p>This step ensures <strong>retrieval-augmented generation (RAG)</strong>.</p>

<p><strong>Step 4: Answer Generation</strong></p>

<ul>
  <li>Uses Copilot AI models to:
    <ul>
      <li>Interpret the question</li>
      <li>Generate a meaningful answer</li>
    </ul>
  </li>
  <li>Adds:
    <ul>
      <li>Citations</li>
      <li>References to source content</li>
    </ul>
  </li>
</ul>

<p><strong>Step 5: Review and Posting</strong></p>

<p>Two configurable modes:</p>

<p><strong>1. Review Mode (Human-in-the-loop)</strong></p>

<ul>
  <li>Answer is:
    <ul>
      <li>Drafted by agent</li>
      <li>Sent to admin/expert for approval</li>
    </ul>
  </li>
  <li>Best for:
    <ul>
      <li>Sensitive domains</li>
      <li>Regulated industries</li>
    </ul>
  </li>
</ul>

<p><strong>2. Auto-Post Mode</strong></p>

<ul>
  <li>Answer is directly published</li>
  <li>Best for:
    <ul>
      <li>High-volume communities</li>
      <li>Low-risk queries</li>
    </ul>
  </li>
</ul>

<p><strong>Step 6: Continuous Learning</strong></p>

<ul>
  <li>Agent improves over time by:
    <ul>
      <li>Using updated conversations</li>
      <li>Leveraging new SharePoint content</li>
    </ul>
  </li>
</ul>

<h2 id="licensing-requirements">Licensing Requirements</h2>

<p><strong>1. Base Requirements</strong></p>

<ul>
  <li>Microsoft 365 tenant</li>
  <li>Viva Engage enabled</li>
</ul>

<p><strong>2. Copilot Enablement</strong></p>

<ul>
  <li>Community agents rely on:
    <ul>
      <li>Microsoft 365 Copilot capabilities</li>
    </ul>
  </li>
  <li>Licensing may include:
    <ul>
      <li>Microsoft 365 Copilot license (per user)</li>
      <li>Or tenant-level Copilot features (depending on rollout)</li>
    </ul>
  </li>
</ul>

<p><strong>3. Data Access Requirements</strong></p>

<ul>
  <li>SharePoint Online (for knowledge grounding)</li>
  <li>Microsoft Graph access</li>
  <li>Proper permissions configuration</li>
</ul>

<p><strong>4. Admin and Governance Controls</strong></p>

<ul>
  <li>Managed via:
    <ul>
      <li>Microsoft 365 Admin Center</li>
      <li>Viva Engage Admin portal</li>
    </ul>
  </li>
</ul>

<p>Includes:</p>

<ul>
  <li>Policy enforcement</li>
  <li>Access control</li>
  <li>Monitoring and auditing</li>
</ul>

<h2 id="deployment-and-configuration">Deployment and Configuration</h2>

<p><strong>Step 1: Identify Suitable Community</strong></p>

<p>Choose communities that:</p>

<ul>
  <li>Have frequent Q&amp;A interactions</li>
  <li>Require faster response times</li>
  <li>Have available knowledge sources</li>
</ul>

<p><strong>Step 2: Initiate Setup</strong></p>

<ul>
  <li>Navigate to Viva Engage community</li>
  <li>
    <p>Click <strong>“Set up your community agent”</strong></p>

    <p><img src="/media/2026-03-27-agents-viva-engage/02.png" alt="" /></p>
  </li>
</ul>

<p><strong>Step 3: Configure Settings</strong></p>

<p><strong>Require Review Before Posting</strong></p>

<ul>
  <li>ON → Responses require approval</li>
  <li>OFF → Automatic posting</li>
</ul>

<p><strong>Recommendation:</strong></p>

<ul>
  <li>Start with <strong>Review Mode</strong></li>
</ul>

<p><strong>Step 4: Ensure Knowledge Readiness</strong></p>

<ul>
  <li>Validate:
    <ul>
      <li>SharePoint content is structured</li>
      <li>Knowledge base is updated</li>
    </ul>
  </li>
  <li>Ensure:
    <ul>
      <li>Proper permissions</li>
    </ul>
  </li>
</ul>

<p><strong>Step 5: Activate Agent</strong></p>

<ul>
  <li>Click <strong>“Add community agent”</strong></li>
  <li>Agent begins:
    <ul>
      <li>Scanning</li>
      <li>Responding</li>
    </ul>
  </li>
</ul>

<p><strong>Step 6: Monitor and Optimize</strong></p>

<ul>
  <li>Review:
    <ul>
      <li>Accuracy of responses</li>
      <li>User feedback</li>
    </ul>
  </li>
  <li>Adjust:
    <ul>
      <li>Review settings</li>
      <li>Knowledge sources</li>
    </ul>
  </li>
</ul>

<h2 id="governance-and-responsible-ai">Governance and Responsible AI</h2>

<p><strong>1. Data Security</strong></p>

<ul>
  <li>Agents respect:
    <ul>
      <li>Microsoft Graph permissions</li>
    </ul>
  </li>
  <li>No unauthorized data exposure</li>
</ul>

<p><strong>2. Compliance</strong></p>

<ul>
  <li>Aligns with:
    <ul>
      <li>Microsoft Purview policies</li>
      <li>Organizational compliance standards</li>
    </ul>
  </li>
</ul>

<p><strong>3. Human Oversight</strong></p>

<ul>
  <li>Recommended:
    <ul>
      <li>Use review mode initially</li>
    </ul>
  </li>
  <li>Define:
    <ul>
      <li>Approval workflows</li>
    </ul>
  </li>
</ul>

<p><strong>4. Risk Mitigation</strong></p>

<ul>
  <li>Validate responses for:
    <ul>
      <li>Accuracy</li>
      <li>Bias</li>
      <li>Sensitive content</li>
    </ul>
  </li>
</ul>

<h2 id="use-cases">Use Cases</h2>

<p><strong>1. IT Support Community</strong></p>

<p><strong>Scenario:</strong><br />
Employees ask technical questions</p>

<p><strong>Agent Role:</strong></p>

<ul>
  <li>Provides answers using:
    <ul>
      <li>Previous discussions</li>
      <li>SharePoint documentation</li>
    </ul>
  </li>
</ul>

<p><strong>Outcome:</strong></p>

<ul>
  <li>Reduced support tickets</li>
  <li>Faster issue resolution</li>
</ul>

<p><strong>2. HR Knowledge Community</strong></p>

<p><strong>Scenario:</strong><br />
Employees ask HR-related questions</p>

<p><strong>Agent Role:</strong></p>

<ul>
  <li>Answers policy-based queries</li>
</ul>

<p><strong>Outcome:</strong></p>

<ul>
  <li>Consistent communication</li>
  <li>Reduced HR workload</li>
</ul>

<p><strong>3. Project Communities</strong></p>

<p><strong>Scenario:</strong><br />
Teams collaborate on projects</p>

<p><strong>Agent Role:</strong></p>

<ul>
  <li>Surfaces past solutions</li>
</ul>

<p><strong>Outcome:</strong></p>

<ul>
  <li>Faster decision-making</li>
  <li>Reduced duplication</li>
</ul>

<p><strong>4. Learning and Training Communities</strong></p>

<p><strong>Scenario:</strong><br />
Employees or students ask learning questions</p>

<p><strong>Agent Role:</strong></p>

<ul>
  <li>Provides contextual explanations</li>
</ul>

<p><strong>Outcome:</strong></p>

<ul>
  <li>Improved learning experience</li>
</ul>

<p><strong>5. Enterprise Knowledge Hub</strong></p>

<p><strong>Scenario:</strong><br />
Large organizations with distributed knowledge</p>

<p><strong>Agent Role:</strong></p>

<ul>
  <li>Acts as centralized knowledge assistant</li>
</ul>

<p><strong>Outcome:</strong></p>

<ul>
  <li>Scalable expertise</li>
  <li>Better knowledge discovery</li>
</ul>

<h2 id="benefits">Benefits</h2>

<ul>
  <li>Improved response time</li>
  <li>Reduced dependency on experts</li>
  <li>Increased knowledge reuse</li>
  <li>Better engagement in communities</li>
  <li>Scalable AI-driven support</li>
</ul>

<h2 id="limitations">Limitations</h2>

<ul>
  <li>Only supports <strong>question-type posts</strong></li>
  <li>Depends on:
    <ul>
      <li>Quality of knowledge sources</li>
    </ul>
  </li>
  <li>May require:
    <ul>
      <li>Human validation</li>
    </ul>
  </li>
  <li>Not ideal for:
    <ul>
      <li>Highly complex or sensitive topics without review</li>
    </ul>
  </li>
</ul>

<h2 id="best-practices">Best Practices</h2>

<ul>
  <li>Start with <strong>Review Mode</strong></li>
  <li>Use <strong>well-structured SharePoint knowledge bases</strong></li>
  <li>Train moderators and reviewers</li>
  <li>Monitor performance regularly</li>
  <li>Gradually enable automation</li>
</ul>

<h2 id="summary">Summary</h2>

<p>Viva Engage Community Agents bring AI-powered automation into enterprise collaboration by proactively answering unanswered questions using organizational knowledge. By combining Microsoft 365 Copilot, SharePoint, and Viva Engage data, these agents enable faster, more consistent, and scalable knowledge sharing.</p>

<p>With proper deployment, governance, and high-quality data sources, organizations can transform their communities into intelligent, self-service knowledge ecosystems.</p>

<h2 id="references">References</h2>

<ul>
  <li><a href="https://learn.microsoft.com/en-us/viva/engage/ai-technology-with-viva-engage/agents-community-network-deployment-config?WT.mc_id=M365-MVP-5003693">Set up and manage agents in communities in Viva Engage</a></li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Microsoft 365" /><category term="AI" /><category term="2026" /><category term="March 2026" /><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Building AI Agent Workflows with Microsoft Foundry</title><link href="https://nanddeepn.github.io/posts/2026-03-15-workflows-ms-foundry/" rel="alternate" type="text/html" title="Building AI Agent Workflows with Microsoft Foundry" /><published>2026-03-15T00:00:00+08:00</published><updated>2026-03-15T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/workflows-ms-foundry</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2026-03-15-workflows-ms-foundry/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>Modern AI applications often require multiple steps, multiple agents, and interactions with external systems. A single AI agent is useful for answering questions or performing simple reasoning tasks, but real-world enterprise processes are usually more complex. They involve multiple stages such as classification, validation, decision-making, execution of actions, and integration with business systems.</p>

<p>To handle these complex scenarios, <strong>Microsoft Foundry introduces workflows</strong>. Workflows provide a structured orchestration layer that coordinates multiple AI agents, tools, and services to perform a sequence of tasks reliably and efficiently. Instead of relying on a single agent to reason through everything, workflows allow developers to define how different agents collaborate, how decisions are made, and how tasks are executed.</p>

<p>Workflows in Microsoft Foundry are especially useful for building <strong>multi-agent systems</strong>, enterprise automation, and long-running AI processes where reliability, control, and transparency are important.</p>

<h2 id="what-are-workflows-in-microsoft-foundry">What are Workflows in Microsoft Foundry</h2>

<p>A <strong>workflow</strong> in Microsoft Foundry represents a predefined sequence of steps that coordinate agents, tools, and external systems to complete a task.</p>

<p>Workflows allow developers to define:</p>

<ul>
  <li>The <strong>order of execution</strong></li>
  <li>The <strong>agents involved in each step</strong></li>
  <li>The <strong>conditions that control decision points</strong></li>
  <li>The <strong>actions or tools executed during processing</strong></li>
</ul>

<p>In a workflow, each step can be performed by:</p>

<ul>
  <li>An AI agent</li>
  <li>A function or tool</li>
  <li>An external system</li>
  <li>A human interaction step</li>
</ul>

<p>This structured approach ensures that AI applications behave predictably and can handle complex processes with multiple dependencies.</p>

<p>Unlike a single AI agent that reasons dynamically, workflows provide <strong>explicit control over execution paths</strong>, making them suitable for enterprise-grade AI applications.</p>

<h2 id="why-workflows-are-important">Why Workflows are Important</h2>

<p>Many AI applications require more than just generating text or answering questions. They often involve business processes that include several stages and decision points.</p>

<p>For example:</p>

<ul>
  <li>A customer support system might need to classify tickets, evaluate priority, and route them to the correct team.</li>
  <li>A document processing system might need to extract data, validate it, and store it in a database.</li>
  <li>A travel assistant might need to coordinate booking flights, hotels, and transport.</li>
</ul>

<p>Workflows help manage these scenarios by providing:</p>

<ul>
  <li>
    <p><strong>Structured Execution</strong>: Each step is executed in a predefined order, ensuring consistency and reliability.</p>
  </li>
  <li>
    <p><strong>Multi-Agent Coordination</strong>: Multiple AI agents can collaborate within a workflow to perform different roles.</p>
  </li>
  <li>
    <p><strong>Decision-Based Routing</strong>: Workflows can dynamically route execution paths based on conditions or AI outputs.</p>
  </li>
  <li>
    <p><strong>Integration with Systems</strong>: Workflows can connect AI agents with APIs, databases, and enterprise applications.</p>
  </li>
</ul>

<h2 id="core-components-of-a-workflow">Core Components of a Workflow</h2>

<p>Workflows in Microsoft Foundry are composed of several components that work together to manage task execution.</p>

<p><strong>1. Agents</strong></p>

<p>Agents are AI components responsible for reasoning, understanding prompts, and generating responses.</p>

<p>In workflows, agents can perform tasks such as:</p>

<ul>
  <li>Classifying input</li>
  <li>Extracting information</li>
  <li>Generating recommendations</li>
  <li>Making decisions</li>
</ul>

<p>Each agent focuses on a specific responsibility within the workflow.</p>

<p><strong>2. Tasks or Steps</strong></p>

<p>A workflow consists of multiple <strong>tasks</strong>, where each task performs a specific operation.</p>

<p>Examples include:</p>

<ul>
  <li>Running an agent</li>
  <li>Calling an API</li>
  <li>Executing a function</li>
  <li>Processing data</li>
</ul>

<p>Tasks form the building blocks of the workflow.</p>

<p><strong>3. Tools and Functions</strong></p>

<p>Workflows can invoke tools or external functions to perform actions such as:</p>

<ul>
  <li>Querying a database</li>
  <li>Sending emails</li>
  <li>Updating records</li>
  <li>Calling external APIs</li>
</ul>

<p>This allows workflows to interact with real-world systems.</p>

<p><strong>4. Conditional Logic</strong></p>

<p>Workflows support <strong>conditional branching</strong>, which enables decision-based execution.</p>

<p>For example:</p>

<ul>
  <li>If ticket severity is high, then escalate to priority queue</li>
  <li>If severity is low, then route to standard support</li>
</ul>

<p>This allows workflows to dynamically determine the next step based on results.</p>

<p><strong>5. Execution Control</strong></p>

<p>Workflows provide execution control features such as:</p>

<ul>
  <li>Sequential execution</li>
  <li>Parallel execution</li>
  <li>Conditional routing</li>
  <li>Error handling</li>
</ul>

<p>These controls ensure that workflows run efficiently and reliably.</p>

<h2 id="multi-agent-workflows-in-microsoft-foundry">Multi-Agent Workflows in Microsoft Foundry</h2>

<p>One of the powerful capabilities of Microsoft Foundry is <strong>multi-agent workflows</strong>, where multiple specialized agents collaborate to complete complex tasks.</p>

<p>Instead of a single AI agent performing all responsibilities, workflows divide tasks among different agents.</p>

<p>Example roles in a multi-agent workflow:</p>

<ul>
  <li><strong>Classification Agent</strong> - determines the category of a request</li>
  <li><strong>Decision Agent</strong> - determines the next action</li>
  <li><strong>Execution Agent</strong> - performs the final task</li>
  <li><strong>Validation Agent</strong> - checks output quality</li>
</ul>

<p>Each agent performs a specific role, improving both accuracy and reliability.</p>

<p>Benefits of multi-agent workflows include:</p>

<ul>
  <li>Better task specialization</li>
  <li>Improved reasoning accuracy</li>
  <li>Modular architecture</li>
  <li>Easier debugging and maintenance</li>
</ul>

<h2 id="workflow-execution-model">Workflow Execution Model</h2>

<p>When a workflow is executed, it follows a structured execution path defined by the workflow configuration.</p>

<p>The execution process typically includes:</p>

<ul>
  <li><strong>Input received</strong></li>
  <li><strong>First task triggered</strong></li>
  <li><strong>Agent processes input</strong></li>
  <li><strong>Result evaluated</strong></li>
  <li><strong>Conditional routing applied</strong></li>
  <li><strong>Next task executed</strong></li>
  <li><strong>Final output generated</strong></li>
</ul>

<p>This execution model ensures that tasks are performed in the correct sequence and decisions are handled appropriately.</p>

<h2 id="creating-workflows-in-microsoft-foundry">Creating Workflows in Microsoft Foundry</h2>

<p>Developers can create workflows using Microsoft Foundry Agent Service by defining steps that coordinate agents and tools.</p>

<p>The process typically involves:</p>

<p><strong>Step 1: Define the Workflow Objective</strong></p>

<p>Identify the business process the workflow will automate.</p>

<p>Example:<br />
Customer support ticket triage.</p>

<p><strong>Step 2: Identify Agents</strong></p>

<p>Determine the agents required for the process.</p>

<p>Example agents:</p>

<ul>
  <li>Ticket Classification Agent</li>
  <li>Priority Assessment Agent</li>
  <li>Routing Agent</li>
</ul>

<p><strong>Step 3: Define Workflow Steps</strong></p>

<p>Define the sequence of steps the workflow will execute.</p>

<p>Example:</p>

<ul>
  <li>Receive support ticket</li>
  <li>Classify issue type</li>
  <li>Determine severity</li>
  <li>Route to appropriate team</li>
</ul>

<p><strong>Step 4: Add Conditional Logic</strong></p>

<p>Define rules that determine workflow routing.</p>

<p>Example:</p>

<ul>
  <li>If severity = High → Escalation queue</li>
  <li>If severity = Medium → Standard queue</li>
  <li>If severity = Low → Self-service guidance</li>
</ul>

<p><strong>Step 5: Integrate Tools</strong></p>

<p>Add external integrations such as:</p>

<ul>
  <li>CRM systems</li>
  <li>Ticketing systems</li>
  <li>Knowledge bases</li>
</ul>

<h2 id="workflow-patterns-supported-in-foundry">Workflow Patterns Supported in Foundry</h2>

<p>Microsoft Foundry workflows support several orchestration patterns used in multi-agent systems.</p>

<p><strong>Sequential Pattern</strong></p>

<p>Tasks execute one after another in a fixed order.</p>

<p>Example:<br />
Data extraction → validation → storage.</p>

<p><strong>Conditional Routing Pattern</strong></p>

<p>The workflow branches based on decisions or AI outputs.</p>

<p>Example:<br />
Ticket severity determines the next processing path.</p>

<p><strong>Parallel Execution Pattern</strong></p>

<p>Multiple tasks run simultaneously.</p>

<p>Example:<br />
Running multiple data validation checks at the same time.</p>

<p><strong>Human-in-the-Loop Pattern</strong></p>

<p>Certain steps require human validation before continuing.</p>

<p>Example:<br />
Approving financial transactions.</p>

<h2 id="example-support-ticket-routing-workflow">Example: Support Ticket Routing Workflow</h2>

<p>A practical example of a Foundry workflow is <strong>support ticket triage</strong>.</p>

<p><strong>Step 1: Ticket Input</strong></p>

<p>A customer submits a support request.</p>

<p><strong>Step 2: Classification Agent</strong></p>

<p>The classification agent determines:</p>

<ul>
  <li>Category (billing, technical, account)</li>
  <li>Product area</li>
</ul>

<p><strong>Step 3: Severity Assessment Agent</strong></p>

<p>Another agent evaluates:</p>

<ul>
  <li>Urgency</li>
  <li>Impact</li>
  <li>Priority</li>
</ul>

<p><strong>Step 4: Conditional Routing</strong></p>

<p>Based on severity:</p>

<ul>
  <li>High → Escalation team</li>
  <li>Medium → Support queue</li>
  <li>Low → Automated response</li>
</ul>

<p><strong>Step 5: Action Execution</strong></p>

<p>The workflow creates a ticket in the helpdesk system and notifies the responsible team.</p>

<p><img src="/media/2026-03-15-workflows-ms-foundry/01.png" alt="" /></p>

<h2 id="benefits-of-workflows-in-microsoft-foundry">Benefits of Workflows in Microsoft Foundry</h2>

<p>Using workflows provides several advantages when building AI-powered enterprise applications.</p>

<ul>
  <li>
    <p><strong>Better Control</strong>: Developers can define exact execution paths instead of relying on unpredictable agent reasoning.</p>
  </li>
  <li>
    <p><strong>Modular Architecture</strong>: Each agent or step can be independently updated without affecting the entire system.</p>
  </li>
  <li>
    <p><strong>Improved Reliability</strong>: Structured workflows reduce errors and improve process consistency.</p>
  </li>
  <li>
    <p><strong>Enterprise Integration</strong>: Workflows allow AI agents to integrate with existing enterprise systems.</p>
  </li>
  <li>
    <p><strong>Scalable AI Systems</strong>: Workflows make it easier to scale multi-agent architectures for large organizations.</p>
  </li>
</ul>

<h2 id="use-cases">Use Cases</h2>

<p>Workflows in Microsoft Foundry can be used across many industries and business processes.</p>

<ul>
  <li>
    <p><strong>Customer Support Automation</strong>: Classify support tickets and route them automatically to the correct teams.</p>
  </li>
  <li>
    <p><strong>IT Incident Management</strong>: Analyze alerts and route them to appropriate response teams.</p>
  </li>
  <li>
    <p><strong>Document Processing</strong>: Extract data from documents, validate it, and store it in databases.</p>
  </li>
  <li>
    <p><strong>Insurance Claim Processing</strong>: Analyze claims, detect fraud risk, and route for approval.</p>
  </li>
  <li>
    <p><strong>Travel Planning Assistants</strong>: Coordinate multiple agents to book flights, hotels, and transportation.</p>
  </li>
</ul>

<h2 id="summary">Summary</h2>

<p>Workflows in Microsoft Foundry provide a structured way to orchestrate AI agents, tools, and enterprise systems to automate complex processes. Instead of relying on a single AI agent, workflows enable multiple specialized agents to collaborate within a defined execution structure.</p>

<p>By supporting sequential tasks, conditional routing, parallel execution, and integrations with external systems, workflows allow developers to build reliable and scalable multi-agent applications. This approach improves control, transparency, and reliability when deploying AI solutions in enterprise environments.</p>

<p>As organizations adopt agent-based architectures, workflows in Microsoft Foundry play a critical role in coordinating intelligent systems and enabling the next generation of AI-driven applications.</p>

<h2 id="references">References</h2>

<ul>
  <li>
    <p><a href="https://learn.microsoft.com/en-us/training/modules/build-agent-workflows-microsoft-foundry/?WT.mc_id=M365-MVP-5003693">Build agent-driven workflows using Microsoft Foundry</a></p>
  </li>
  <li>
    <p><a href="https://learn.microsoft.com/en-us/training/modules/build-agent-workflows-microsoft-foundry/4-create-workflows-microsoft-foundry?WT.mc_id=M365-MVP-5003693">Create workflows in Microsoft Foundry</a></p>
  </li>
  <li>
    <p><a href="https://learn.microsoft.com/en-us/azure/foundry/agents/concepts/workflow?WT.mc_id=M365-MVP-5003693">Build a workflow in Microsoft Foundry</a></p>
  </li>
  <li>
    <p><a href="https://devblogs.microsoft.com/foundry/introducing-multi-agent-workflows-in-foundry-agent-service/?WT.mc_id=M365-MVP-5003693">Introducing Multi-Agent Workflows in Foundry Agent Service</a></p>
  </li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Agent" /><category term="AI" /><category term="2026" /><category term="March 2026" /><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Using Microsoft Foundry Models in Copilot Studio</title><link href="https://nanddeepn.github.io/posts/2026-02-28-foundry-models-in-copilot-studio/" rel="alternate" type="text/html" title="Using Microsoft Foundry Models in Copilot Studio" /><published>2026-02-28T00:00:00+08:00</published><updated>2026-02-28T08:00:00+08:00</updated><id>https://nanddeepn.github.io/posts/foundry-models-in-copilot-studio</id><content type="html" xml:base="https://nanddeepn.github.io/posts/2026-02-28-foundry-models-in-copilot-studio/"><![CDATA[<h2 id="introduction">Introduction</h2>

<p>If you want your Copilot Studio agent to use a <strong>specific AI model</strong> (for example a model you deployed in <strong>Microsoft Foundry</strong>), you don’t need to build a custom connector or call an API manually for many scenarios. Copilot Studio now supports <strong>“Bring your own model for your prompts”</strong>-a native way to connect <strong>Microsoft Foundry models</strong> and use them directly inside <strong>Prompt tools / prompt actions</strong>.</p>

<h2 id="what-bring-your-own-model-for-prompts-actually-means">What “Bring Your Own Model for Prompts” Actually Means</h2>

<p>Copilot Studio has a <strong>Prompt tool</strong> (prompt action). When you create a prompt, you can select which model should run that prompt.</p>

<ul>
  <li>By default, you see <strong>managed models</strong>.</li>
  <li>With this feature, you can <strong>connect models from Microsoft Foundry / Model catalog</strong> and pick them in the prompt’s <strong>Model</strong> dropdown.</li>
</ul>

<blockquote>
  <p>[!NOTE]<br />
<strong>You’re not replacing the whole agent’s brain globally.</strong><br />
You’re choosing <strong>which model runs a specific prompt action</strong> inside your agent.</p>
</blockquote>

<h2 id="key-capabilities">Key Capabilities</h2>

<p><strong>1) Large model choice via Microsoft Foundry Model Catalog</strong></p>

<p>Microsoft highlights access to models such as GPT 4.5, Llama, DeepSeek, and 11,000+ more through Microsoft Foundry’s model catalog-available to use in Copilot Studio prompts through this integration.</p>

<p><strong>2) Prompt can be added as a tool or inside a topic</strong></p>

<p>You can add a prompt:</p>

<ul>
  <li>from the <strong>Tools tab</strong> (Add a tool → choose an existing prompt or create a new one), or</li>
  <li>inside <strong>Topics</strong> by adding a node and creating a <strong>New prompt</strong>.</li>
</ul>

<p><strong>3) Supports chat-completion type models (important limitation)</strong></p>

<p>At the time of the documentation update, it <strong>currently supports models with chat completion type</strong>.</p>

<h2 id="step-by-step-use-microsoft-foundry-model-in-a-copilot-studio-prompt">Step-by-Step: Use Microsoft Foundry Model in a Copilot Studio Prompt</h2>

<p><strong>Step 1: Create (or open) an agent in Copilot Studio</strong></p>

<p>Microsoft’s flow starts with creating an agent (Agents → New agent → “Skip to configure”, then fill details and create).</p>

<p><strong>Step 2: Add a Prompt tool (prompt action)</strong></p>

<p>In Copilot Studio:</p>

<ul>
  <li>Go to <strong>New tool → Prompt</strong></li>
  <li>Give your prompt a name</li>
  <li>Add instructions either by writing your own prompt OR letting Copilot suggest one and selecting “Keep it”.</li>
</ul>

<p><strong>Step 3: Connect an Microsoft Foundry model to the prompt</strong></p>

<p>On the right panel (next to prompt instructions):</p>

<ul>
  <li>Open the <strong>Model</strong> dropdown</li>
  <li>Select the <strong>plus (+)</strong> to connect a model from <strong>Microsoft Foundry</strong></li>
  <li>In the “Connect a model from Microsoft Foundry” screen, enter:
    <ul>
      <li><strong>Model deployment name</strong></li>
      <li><strong>Base model name</strong></li>
    </ul>
  </li>
  <li>Important: these must match <strong>exactly as they appear in Microsoft Foundry</strong></li>
  <li>Select <strong>Connect</strong></li>
</ul>

<p><strong>Step 4: Use the model in your agent</strong></p>

<p>Once connected:</p>

<ul>
  <li>The model appears in the <strong>Model dropdown</strong></li>
  <li>Select it for the prompt</li>
  <li>Add that prompt into your agent flow</li>
</ul>

<p>Microsoft clearly states: <strong>Anytime this prompt runs, it always uses the selected model.</strong></p>

<h2 id="working-with-images-and-documents-when-relevant">Working with Images and Documents (When Relevant)</h2>

<p>If your prompt includes <strong>image input</strong>, Copilot Studio will only show Microsoft Foundry models that support image/document usage. Microsoft lists examples like Phi vision models and GPT-4o/GPT-4.5-preview among those that work with images.</p>

<p>(If your use case is purely text, you can ignore this and just focus on chat-completion models.)</p>

<h2 id="governance-and-administration-very-important-for-enterprises">Governance and Administration (Very Important for Enterprises)</h2>

<p><strong>1) It uses a Connector</strong></p>

<p>Microsoft Foundry models are “connected by connectors.”</p>

<p><strong>2) Control with Power Platform Admin Center policies</strong></p>

<p>You can manage governance for this connector in <strong>Power Platform admin center → Policies</strong>, under the connector name <strong>“Microsoft Foundry”</strong>. Microsoft calls out that you can add a <strong>specific data policy (DLP)</strong> for these models (and manage it alongside tenant data policies).</p>

<p><strong>3) Connections are visible like other Power Platform connections</strong></p>

<p>Each model connection a maker sets up is also available as a <strong>connection</strong> (similar to how Power Apps connections appear).</p>

<p><strong>4) Responsible AI (RAI)</strong></p>

<p>Microsoft recommends applying <strong>Responsible AI (RAI) policies</strong> for the models you use and managing that in Microsoft Foundry.</p>

<h2 id="design-pattern-how-to-structure-prompts-when-you-bring-your-own-model">Design Pattern: How to Structure Prompts When You Bring Your Own Model</h2>

<p>When you start choosing different models for different prompts, a simple pattern works best:</p>

<ul>
  <li><strong>One prompt = one “job”</strong>
    <ul>
      <li>Example: “Summarize customer email”</li>
      <li>Separate prompt: “Extract order number and dates”</li>
    </ul>
  </li>
  <li><strong>Use the right model per job</strong>
    <ul>
      <li>Lower-cost / faster model for extraction or formatting</li>
      <li>Strong reasoning model for complex decision support</li>
    </ul>
  </li>
  <li><strong>Keep the prompt stable</strong>
    <ul>
      <li>Remember: your prompt will always run on the selected model</li>
      <li>So changes in model selection can change behavior; treat model choice like a “configuration decision”.</li>
    </ul>
  </li>
</ul>

<h2 id="use-cases">Use Cases</h2>

<p><strong>1) Industry-specific assistant (Healthcare / Legal / Finance)</strong></p>

<ul>
  <li>You choose a model that best fits domain language or compliance needs (through Foundry catalog)</li>
  <li>Use prompts for summarization, classification, or drafting, while still keeping the agent logic in Copilot Studio</li>
</ul>

<p><strong>2) Multi-model strategy inside one agent</strong></p>

<p>Within the same Copilot Studio agent:</p>

<ul>
  <li>Prompt A uses a fast model for “extract entities”</li>
  <li>Prompt B uses a stronger model for “generate final response”<br />
  This is possible because model selection happens <strong>per prompt tool</strong>.</li>
</ul>

<p><strong>3) Controlled rollouts and governance</strong></p>

<p>Because Foundry models are connected via a connector and can be governed via DLP policies in Power Platform admin center, you can:</p>

<ul>
  <li>allow only approved teams to use the connector</li>
  <li>restrict usage in certain environments (Dev/Test/Prod)</li>
  <li>enforce compliance boundaries</li>
</ul>

<h2 id="summary">Summary</h2>

<p>Microsoft Copilot Studio now allows organizations to bring their own Microsoft Foundry models directly into prompt actions, giving enterprises greater control over which AI model powers each specific task inside an agent.</p>

<p>Instead of relying only on default managed models, makers can connect a model deployed in Microsoft Foundry by selecting it in the Model dropdown within a Prompt tool, entering the correct deployment and base model names, and using it immediately inside agent flows. Every time that prompt runs, it consistently uses the selected model—enabling predictable behavior and controlled AI design.</p>

<h2 id="references">References</h2>

<ul>
  <li><a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/bring-your-own-model-prompts?WT.mc_id=M365-MVP-5003693">Microsoft Learn: Bring your own model for your prompts</a></li>
</ul>]]></content><author><name>Nanddeep Nachan</name><email>NanddeepNachan@gmail.com</email></author><category term="Agent" /><category term="AI" /><category term="2026" /><category term="February 2026" /><summary type="html"><![CDATA[Introduction]]></summary></entry></feed>