Redigera din Microsoft Copilot Studio-agent i Microsoft Visual Studio Code

När du klonar Microsoft Copilot Studio-agenten till din lokala dator kan du redigera dess komponenter med hjälp av Microsoft Visual Studio Codes textredigeringsfunktioner. Copilot Studio-tillägget tillhandahåller IntelliSense, validering och YAML-språkstöd för att göra redigeringen effektiv och felfri.

Agentfilsstruktur

Att förstå filstrukturen är nyckeln till 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

Redigera agentens huvudkonfiguration

IntelliSense-funktioner

I takt med att du skriver visas förslag, och ogiltiga värden markeras. Dessa förslag ändras beroende på vilken nodnivå du befinner dig på.

  • Använd Ctrl+Space för att få förslag baserat på nodnivån.
  • Använd Ctrl+F för att söka efter variabelnamn och annan information i hela din agent och enkelt uppdatera den

Visa problem

Du kan visa problem med filer i fönstret Problem i Visual Studio Code. När du öppnar en fil ser du också en röd understrykning som markerar problem.

Skärmbild som visar problem markerade med röd understrykning i redigeraren.

Rutan Problem

  1. Använd Ctrl+Shift+M för att öppna fönstret Problem (eller gå till Visa>Problem).

  2. Visa alla fel och varningar.

  3. Välj vilket problem som helst för att hoppa till platsen.

Arbeta med ändringar

När en ändring görs och sparas visas den i en annan färg i Visual Studio så att du enkelt kan identifiera den.

Skärmbild av ändringar som syns i olika färger i Visual Studio Code.

Redigera agentkomponenter

Ämnen

Ämnen definierar samtalsflöden och dialoger. De är en sorts AdaptiveDialog.

Du kan använda GitHub Copilot eller andra agenter för att hjälpa till med att skapa nya komponenter eller, om du vill, skriva egna ämnen.

Filstruktur för ämnen

Här är ett exempel på ett enkelt ämne för hälsning:

# 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}.

Avancerade ämnesfunktioner

Du kan använda andra komponenter i ämnen såsom:

  • Entiteter:

                - 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
    
  • Villkor 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.
    
  • Andra noder, till exempel HTTP-noder

  • Adaptiva kort

Skärmbild av avancerade funktioner för ämnen i redigeraren.

Verktyg

Verktyg definierar vilka åtgärder din agent kan utföra. Du kan se dem i området Verktyg i gränssnittet för Copilot Studio-agenten.

Verktyg kan inkludera:

  • Frågor
  • Arbetsflöden (Power Automate-flöden)
  • CUA-verktyg
  • Anpassade anslutningsprogram
  • REST-API:er
  • MCP-anslutningsprogram

Verktyg visas i tillägget under agentens /actions-mapp, men kan också förekomma i andra mappar med extra metadata. Till exempel har arbetsflöden och utlösare egna mappar och JSON.

Redigera utlösare

Utlösare definierar när ämnen eller åtgärder aktiveras. Du kan ställa in dem som scheman, händelser eller villkorstyper. Utlösare refererar vanligtvis till ett arbetsflöde.

kind: ExternalTriggerConfiguration
externalTriggerSource:
  kind: WorkflowExternalTrigger

Hantera fjärrkunskapsfiler

Om du laddar upp dokument med uppladdningsfunktionen i Copilot Studio blir dessa tillgängliga för nedladdning genom att du klickar på namnet i fönstret Fjärrkunskapsfiler. Dokumenten laddas inte ner automatiskt och måste väljas för nedladdning i fönstret. Du får se en avisering när nedladdningen har lyckats.

Om du vill ladda upp nya filer kan du lägga dem i knowledge/files-mappen i agentdefinitionen. När du tillämpar dessa ändringar laddas de upp via funktionen för uppladdning av agentinnehåll.

Skärmbild av filfönstret för fjärrkunskap som visar tillgängliga dokument.

Regelverk

Namngivningskonventioner

Filer:

  • Använd gemener: create-ticket.tool.yaml
  • Var beskrivande: product-pricing-faq.yaml inte faq.yaml
  • Använd typsuffixet: .topic.yaml, .tool.yaml, .trigger.yaml

ID:n och variabler:

  • Använd camelCase: userOrderNumber, productDetails
  • Var beskrivande: checkPaymentStatus inte check1
  • Undvik förkortningar: customerEmail inte custEmail

Kommentarer

För att tydliggöra komplex logik, lägg till 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ästa steg

Nu när du förstår redigering: