namespace TeamUp.SharedKernel.Git;
/// A file read from a Git source.
public sealed record GitFile(string Path, string Content);
///
/// Provider-agnostic read access to a Git source (Gitea in V1; GitHub/GitLab/Azure DevOps later).
/// Implemented by the Integrations module; consumed by Skills to sync SKILL.md files. Read-only in
/// V1 — write-back (PR comments, branches) is Phase 2.
///
public interface IGitProvider
{
/// A short identifier for the configured source (used as the skill's provenance).
string Name { get; }
/// Returns every SKILL.md in the source, with its repo-relative path and content.
Task> ListSkillFilesAsync(CancellationToken cancellationToken = default);
}