namespace TeamUp.SharedKernel.Ai; /// A skill's prompt body + its primary risk-tagged action, for prompt assembly. public sealed record SkillPrompt( string Key, string Name, string Body, string PrimaryAction, string PrimaryActionRisk, IReadOnlyList Roles); /// Resolves skill prompts by key (latest version). Implemented by the Skills module. public interface ISkillCatalog { Task> GetByKeysAsync( IReadOnlyCollection keys, CancellationToken cancellationToken = default); }