Skip to content

Conversation

@DaveBurman-MSFT
Copy link
Contributor

No description provided.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new blog post demonstrating techniques for generating and utilizing Adaptive Cards in Copilot Studio without manually writing JSON. The post showcases progressively advanced approaches, from basic generation to dynamic, context-aware forms with automated response interpretation.

Key Changes:

  • New blog post exploring Adaptive Card generation using AI assistance
  • Documentation of techniques for dynamic form creation and interpretation
  • Examples demonstrating integration with tools and generative orchestration

Reviewed changes

Copilot reviewed 2 out of 23 changed files in this pull request and generated 2 comments.

File Description
assets/lib Updated subproject commit reference
_posts/2025-12-18-adaptive-card-generation.md New blog post on AI-assisted Adaptive Card generation techniques

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

```json
[
{
"scenario":"best suited for long journies by car",
Copy link

Copilot AI Dec 24, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'journies' to 'journeys'.

Suggested change
"scenario":"best suited for long journies by car",
"scenario":"best suited for long journeys by car",

Copilot uses AI. Check for mistakes.

Now I have to make a pretty big disclaimer here; this works well as screenshots, but in reality, depending on how this is consumed, the user experience is less than ideal. In channels where message streaming is supported (like the Test Pane), the original formatted response is partially sent to the user before the topic kicks in to reformat. This could be avoided by implementing a more controlled flow; i.e. if the topic initiated the calls to the tools and didn't rely on the orchestrator quite as much. I'll demonstrate that in the next example.

So we've got to a point where Adaptive Card JSON is generated on the fly, and dynamically; fundementally different form content is displayed determined by natural language descriptions of forms I defined in a global variable. That's pretty useful, and certainly beats figuring out where I missed a comma or curly brace in handwritten JSON, but I still feel like there's more to be done. How about trying to understand a user's response to an Adaptive Card on the fly?
Copy link

Copilot AI Dec 24, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'fundementally' to 'fundamentally'.

Suggested change
So we've got to a point where Adaptive Card JSON is generated on the fly, and dynamically; fundementally different form content is displayed determined by natural language descriptions of forms I defined in a global variable. That's pretty useful, and certainly beats figuring out where I missed a comma or curly brace in handwritten JSON, but I still feel like there's more to be done. How about trying to understand a user's response to an Adaptive Card on the fly?
So we've got to a point where Adaptive Card JSON is generated on the fly, and dynamically; fundamentally different form content is displayed determined by natural language descriptions of forms I defined in a global variable. That's pretty useful, and certainly beats figuring out where I missed a comma or curly brace in handwritten JSON, but I still feel like there's more to be done. How about trying to understand a user's response to an Adaptive Card on the fly?

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants