Rediger din Microsoft Copilot Studio agent i Microsoft Visual Studio Code

Når du kloner den Microsoft Copilot Studio agent til din lokale computer, kan du redigere dens komponenter ved hjælp af Tekstredigeringsfunktioner i Microsoft Visual Studio Code. Udvidelsen Copilot Studio giver understøttelse af IntelliSense, validering og YAML-sprog for at gøre redigering effektiv og fejlfri.

Agentfilstruktur

At forstå filstrukturen er nøglen til effektiv redigering.

my-agent/
├── actions                   # Connectors
│   ├── DevOpsAction.mcs.yml  
│   └── GetItems.mcs.yml      
├── knowledge/files                # Knowledge sources
│   ├── source1.yaml
│   └── source2.yaml
├── topics/                   # Conversation topics
│   ├── greeting.mcs.yaml
│   ├── help.mcs.yaml
│   └── escalate.mcs.yaml
├── workflows/                    # Agent tools and actions
│   └── GetDevOpsItems
│       ├── metadata.yaml
│       └── workflow.json
│   └── GetMeetings
│       ├── metadata.yaml
│       └── workflow.json
├── trigger/                 # Event triggers
│   └── welcometrigger.mcs.yaml
├── agent.mcs.yaml                # Main agent definition
├── icon.png                      # Icon used for the agent, visible in test panel and in supported channels
├── settings.mcs.yml              # Configuration settings for the agent
└── connectioreferences.mcs.yml   # Connection References used by Connectors and other actions

Rediger hovedagentens konfiguration

IntelliSense-funktioner

Mens du skriver, vises forslag, og ugyldige værdier fremhæves. Disse forslag ændrer sig afhængigt af niveauet på den node, du er på.

  • Brug Ctrl+Space den til at få forslag baseret på nodeniveauet.
  • Brug Ctrl+F den til at søge efter variabelnavne og andre oplysninger på tværs af hele din agent for hurtigt at opdatere

Se problemer

Du kan få vist problemer med filer i ruden Problems i Visual Studio Code. Når du åbner en fil, kan du også se en rød understregning, der identificerer problemer.

Skærmbillede af at identificere problemer med rød understregning i editoren.

Problempanel

  1. Brug Ctrl+Shift+M den til at åbne Problemer-panelet (eller gå til Vis>Problemer).

  2. Se alle fejl og advarsler.

  3. Vælg et hvilket som helst problem for at hoppe til stedet.

At arbejde med ændringer

Når der foretages og gemmes en ændring, vises den i en anden farve i Visual Studio, så du nemt kan identificere den.

Skærmbilledet af ændringer, der er synlige i forskellige farver i Visual Studio Code.

Redigeringsagent-komponenter

emner

Emner definerer samtaleflow og dialoger. De er en slags AdaptiveDialog.

Du kan bruge GitHub Copilot eller andre agenter til at bygge nye komponenter eller, hvis du vil, skrive dine egne emner.

Emnefilstruktur

Her er et eksempel på et simpelt velkomstemne:

# This is the name of the topic that will appear in the 'topics' list in Copilot Studio
kind: AdaptiveDialog
beginDialog:
  kind: OnConversationStart
  id: main
  actions:
    - kind: SendActivity
      id: sendMessage_M0LuhV
      activity:
        text:
          - Hello, I'm {System.Bot.Name}. How can I help?
        speak:
          - Hello and thank you for calling {System.Bot.Name}.

Avancerede emnefunktioner

Du kan bruge andre komponenter i emner som:

  • Enheder:

                - kind: Question
                  id: question_1
                  alwaysPrompt: true
                  variable: init:Topic.Continue
                  prompt: Can I help with anything else?
                  entity: BooleanPrebuiltEntity
    
  • Variabler:

      actions:
        - kind: Question
          id: 41d42054-d4cb-4e90-b922-2b16b37fe379
          conversationOutcome: ResolvedImplied
          alwaysPrompt: true
          variable: init:Topic.SurveyResponse
          prompt: Did that answer your question?
          entity: BooleanPrebuiltEntity
    
  • Betingelser med Power Fx:

                - kind: ConditionGroup
                  id: condition-1
                  conditions:
                    - id: condition-1-item-0
                      condition: =Topic.Continue = true
                      actions:
                        - kind: SendActivity
                          id: sendMessage_4eOE6h
                          activity: Go ahead. I'm listening.
    
  • Andre noder, for eksempel HTTP-noder,

  • Adaptive kort

Skærmbillede af avancerede emner i editoren.

Værktøjer

Værktøjer definerer handlinger, din agent kan udføre. Du kan se dem i området Tools i Copilot Studio Agent UI.

Værktøjer kan omfatte:

  • Tilskyndelser
  • Arbejdsprocesser (Power Automate-flows)
  • CUA-værktøjer
  • Brugerdefinerede connectorer
  • REST API'er
  • MCP-stik

Værktøjer vises i udvidelsen under en agents /actions mappe, men kan også optræde i andre mapper med ekstra metadata. For eksempel har Workflows og Triggers deres egne mapper og JSON.

Rediger triggere

Triggere definerer, hvornår emner eller handlinger aktiveres. Du kan sætte dem som tidsplaner, begivenheder eller betingede typer. Triggere refererer typisk til en arbejdsgang.

kind: ExternalTriggerConfiguration
externalTriggerSource:
  kind: WorkflowExternalTrigger

Administrer fjernvidensfiler

Hvis du uploader dokumenter ved hjælp af overførselsfunktionen i Copilot Studio, kan du downloade disse dokumenter ved at klikke på navnet i vinduet Fjern videnfiler. Dokumenterne downloades ikke automatisk og skal vælges til download i vinduet. Du ser en notifikation, når downloadet lykkes.

Hvis du vil uploade nye filer, kan du lægge dem i knowledge/files mappen i agent-definitionen. Når du anvender disse ændringer, uploades de via funktionen til upload af agentindhold.

Skærmbillede af vinduet Remote Knowledge Files, der viser tilgængelige dokumenter.

Bedste praksis

Navngivningskonventioner

Filer:

  • Brug kebab-case: create-ticket.tool.yaml
  • Vær beskrivende: product-pricing-faq.yaml ikke faq.yaml
  • Brug typeendelsen: .topic.yaml, .tool.yaml, .trigger.yaml

ID'er og variabler:

  • Brug camelCase: userOrderNumber, productDetails
  • Vær beskrivende: checkPaymentStatus ikke check1
  • Undgå forkortelser: customerEmail ikke custEmail

Bemærkninger

For at forklare kompleks logik, tilføj kommentarer:

nodes:
  # Check if user is within business hours and eligible for live support
  # Business hours: 9 AM - 5 PM EST, Monday-Friday
  # Eligibility: Premium tier customers only
  - id: check-live-support-availability
    type: condition

Næste trin

Nu hvor du forstår redigering: