@knth/release-notes-cli
Version:
Interactive CLI for generating release notes based on git history using Azure OpenAI
46 lines • 1.26 kB
TypeScript
import { AzureOpenAI } from "openai";
export interface GitCommit {
hash: string;
date: string;
message: string;
author_name: string;
author_email: string;
}
export interface ReleaseNotesOptions {
repoPath: string;
client: AzureOpenAI;
deployment: string;
maxCommits?: number;
fromCommit?: string;
toCommit?: string;
}
export declare class ReleaseNotesGenerator {
private git;
private client;
private deployment;
private maxCommits;
private fromCommit?;
private toCommit?;
constructor(options: ReleaseNotesOptions);
/**
* Check if we're in a valid git repository
*/
checkGitRepo(): Promise<void>;
/**
* Get the last N commits from the current branch
*/
getLastCommits(count?: number): Promise<GitCommit[]>;
/**
* Get commits between two commit hashes (inclusive)
*/
getCommitsBetween(fromCommit: string, toCommit: string): Promise<GitCommit[]>;
/**
* Get detailed commit information for each commit
*/
getCommitDetails(commits: GitCommit[]): Promise<string[]>;
/**
* Generate release notes using AI
*/
generateReleaseNotes(): Promise<string>;
}
//# sourceMappingURL=release-notes-generator.d.ts.map