nexus-agents - v2.80.0
    Preparing search index...

    Interface IScmProvider

    Core SCM provider interface.

    All methods return Result<T, ScmError> for consistent error handling across GitHub REST API, gh CLI, and future GitLab/Gitea backends.

    interface IScmProvider {
        platform: ScmPlatform;
        repo: string;
        getIssue(number: number): Promise<Result<ScmIssue, ScmError>>;
        listIssues(
            filters?: IssueFilters,
        ): Promise<Result<readonly ScmIssue[], ScmError>>;
        createIssue(
            title: string,
            body: string,
            labels?: readonly string[],
        ): Promise<Result<ScmIssue, ScmError>>;
        addLabels(
            issueNumber: number,
            labels: readonly string[],
        ): Promise<Result<void, ScmError>>;
        createPR(
            options: CreatePROptions,
        ): Promise<Result<ScmPullRequest, ScmError>>;
        mergePR(
            prNumber: number,
            options?: MergePROptions,
        ): Promise<Result<void, ScmError>>;
        getPRStatus(prNumber: number): Promise<Result<ScmPRStatus, ScmError>>;
        addComment(
            issueNumber: number,
            body: string,
        ): Promise<Result<void, ScmError>>;
        listComments(
            issueNumber: number,
        ): Promise<Result<readonly ScmComment[], ScmError>>;
    }

    Implemented by

    Index

    Properties

    platform: ScmPlatform

    Platform identifier.

    repo: string

    Repository in owner/repo format.

    Methods