github / github/copilot-sdk

CustomAgents - Ignores agents loaded from .github/agents folder

Aperta
#1,889 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
enhancement
Lingua principale
Java
Stelle
10.5k
Fork
1.5k
Merge medio
1g 11h
PR unite (30g)
127

Descrizione

When you set `SessionConfig.CustomAgents` all agents that would be otherwise loaded from the workspace .github/agent folder are ignored

This simple examples shows the behaviour

```cs
using GitHub.Copilot;

// path to .github folder containing agents folder
const string WorkingDirectory = @"C:\SomeWorkspace";

await using var client = new CopilotClient();

await using var session = await client.CreateSessionAsync(new SessionConfig
{
WorkingDirectory = WorkingDirectory,
EnableConfigDiscovery = true, // Note that this has to be true to get any agents to load from disk - (see https://github.com/github/copilot-sdk/issues/1887)
CustomAgents = [ // Remove this property and you'll see that all agents are loaded from the .github/agents folder
new() {
Name = "Custom"
}
]
});

var agentsList = await session.Rpc.Agent.ListAsync();

foreach (var agent in agentsList.Agents)
{
// You'll only see the "Custom" agent.
Console.WriteLine(agent.Name);
}
```

Agent file I was using in a .github/agents/sample.agent.md file:
```md
---
name: sample
description: Sample Agent
---

You are an sample agent for this repository, you're just happy to be here!
```

The agent list isn't merged together like skills, instructions and MCPs are.

Additionally, are there any plans to bring the agents loaded in via the CustomAgents property into full parity with agents loaded from the .github/agents folder? It seems that not all properties are supported, like Handoffs, which means no `SessionHandoffEvent` can ever be raised and agent passing can only happen via sub-agents via the `task` tool.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start at SessionConfig.CustomAgents and the Agent.ListAsync entry point, then trace how agents are discovered from .github/agents when EnableConfigDiscovery is true. Reproduce the example with a custom agent and a sample.agent.md file, and verify that the resulting list includes both sources while preserving the documented agent behavior. Review the CustomAgents handling alongside agent properties such as Handoffs and SessionHandoffEvent.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
csharp
Ambito
api, developer-experience
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
48/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.