diff --git a/DurableMultiAgentTemplate.Shared/Model/AdditionalLinkInfo.cs b/DurableMultiAgentTemplate.Shared/Model/AdditionalLinkInfo.cs
index 2e936b8..f6931fe 100644
--- a/DurableMultiAgentTemplate.Shared/Model/AdditionalLinkInfo.cs
+++ b/DurableMultiAgentTemplate.Shared/Model/AdditionalLinkInfo.cs
@@ -2,6 +2,10 @@
namespace DurableMultiAgentTemplate.Shared.Model;
+///
+/// Record representing additional information in link format.
+/// Used when providing links as additional information in agent responses.
+///
public record AdditionalLinkInfo(
[property: Description("リンクのラベルとして表示されるテキスト")]
string LinkText,
diff --git a/DurableMultiAgentTemplate.Shared/Model/AdditionalMarkdownInfo.cs b/DurableMultiAgentTemplate.Shared/Model/AdditionalMarkdownInfo.cs
index 8015a82..84602dd 100644
--- a/DurableMultiAgentTemplate.Shared/Model/AdditionalMarkdownInfo.cs
+++ b/DurableMultiAgentTemplate.Shared/Model/AdditionalMarkdownInfo.cs
@@ -2,6 +2,10 @@
namespace DurableMultiAgentTemplate.Shared.Model;
+///
+/// Record representing additional information in Markdown format.
+/// Used when providing Markdown text as additional information in agent responses.
+///
public record AdditionalMarkdownInfo(
[property: Description("Markdown形式の補足情報")]
string MarkdownText) : IAdditionalInfo;
diff --git a/DurableMultiAgentTemplate.Shared/Model/IAdditionalInfo.cs b/DurableMultiAgentTemplate.Shared/Model/IAdditionalInfo.cs
index 7c57859..6bee665 100644
--- a/DurableMultiAgentTemplate.Shared/Model/IAdditionalInfo.cs
+++ b/DurableMultiAgentTemplate.Shared/Model/IAdditionalInfo.cs
@@ -2,6 +2,10 @@
namespace DurableMultiAgentTemplate.Shared.Model;
+///
+/// Interface for additional information.
+/// Classes implementing this interface are used as supplementary information added to agent responses.
+///
[JsonDerivedType(typeof(AdditionalMarkdownInfo), typeDiscriminator: "markdown")]
[JsonDerivedType(typeof(AdditionalLinkInfo), typeDiscriminator: "link")]
public interface IAdditionalInfo;
diff --git a/DurableMultiAgentTemplate/Agent/AgentActivityName.cs b/DurableMultiAgentTemplate/Agent/AgentActivityName.cs
index 21d261b..b6b3cea 100644
--- a/DurableMultiAgentTemplate/Agent/AgentActivityName.cs
+++ b/DurableMultiAgentTemplate/Agent/AgentActivityName.cs
@@ -1,5 +1,9 @@
namespace DurableMultiAgentTemplate.Agent;
+///
+/// Static class defining agent activity names.
+/// Provides constants for orchestrator agent and worker agent names.
+///
public static class AgentActivityName
{
// Orchestrator Agent functions
diff --git a/DurableMultiAgentTemplate/Agent/AgentDefinition.cs b/DurableMultiAgentTemplate/Agent/AgentDefinition.cs
index e6c2767..7ba118f 100644
--- a/DurableMultiAgentTemplate/Agent/AgentDefinition.cs
+++ b/DurableMultiAgentTemplate/Agent/AgentDefinition.cs
@@ -4,6 +4,10 @@
namespace DurableMultiAgentTemplate.Agent;
+///
+/// Class providing agent definitions.
+/// Defines the functionality, descriptions, and parameters for each agent.
+///
//https://learn.microsoft.com/ja-jp/azure/ai-services/openai/how-to/dotnet-migration?tabs=stable
internal class AgentDefinition
{
diff --git a/DurableMultiAgentTemplate/Agent/Synthesizer/SynthesizerWithAdditionalInfoPrompt.cs b/DurableMultiAgentTemplate/Agent/Synthesizer/SynthesizerWithAdditionalInfoPrompt.cs
index 34d621e..4cd5835 100644
--- a/DurableMultiAgentTemplate/Agent/Synthesizer/SynthesizerWithAdditionalInfoPrompt.cs
+++ b/DurableMultiAgentTemplate/Agent/Synthesizer/SynthesizerWithAdditionalInfoPrompt.cs
@@ -1,5 +1,9 @@
namespace DurableMultiAgentTemplate.Agent.Synthesizer;
+///
+/// Static class defining prompts for generating responses with additional information.
+/// The system prompt includes instructions on how to generate responses and separate additional information.
+///
internal static class SynthesizerWithAdditionalInfoPrompt
{
// Orchestrator Agent functions
diff --git a/DurableMultiAgentTemplate/Starter.cs b/DurableMultiAgentTemplate/Starter.cs
index dedd683..f66e00c 100644
--- a/DurableMultiAgentTemplate/Starter.cs
+++ b/DurableMultiAgentTemplate/Starter.cs
@@ -8,6 +8,10 @@
namespace DurableMultiAgentTemplate;
+///
+/// Class providing starter functions for agent orchestration.
+/// Provides synchronous and asynchronous HTTP triggers to start agent orchestration.
+///
public class Starter(ILogger logger)
{
private static readonly JsonSerializerOptions _jsonSerializerOptions = new()
@@ -15,6 +19,12 @@ public class Starter(ILogger logger)
PropertyNameCaseInsensitive = true
};
+ ///
+ /// Synchronously executes agent orchestration and waits for completion. HTTP trigger function.
+ ///
+ /// HTTP request data
+ /// Durable task client
+ /// HTTP response containing agent processing results
[Function("SyncStarter")]
public async Task SyncStarter(
[HttpTrigger(AuthorizationLevel.Function, "post", Route = "invoke/sync")] HttpRequestData req,
@@ -41,6 +51,12 @@ public async Task SyncStarter(
return res;
}
+ ///
+ /// Asynchronously starts agent orchestration. HTTP trigger function.
+ ///
+ /// HTTP request data
+ /// Durable task client
+ /// HTTP response containing URLs for checking orchestration status
[Function("AsyncStarter")]
public async Task AsyncStarter(
[HttpTrigger(AuthorizationLevel.Function, "post", Route = "invoke/async")] HttpRequestData req,
@@ -63,6 +79,11 @@ public async Task AsyncStarter(
return await client.CreateCheckStatusResponseAsync(req, instanceId);
}
+ ///
+ /// Helper method to retrieve agent request data from an HTTP request.
+ ///
+ /// HTTP request data
+ /// Agent request data, or null if the request is invalid
private async Task GetRequestData(HttpRequestData req)
{
var requestBody = await req.ReadAsStringAsync();