UNPKG

context-forge

Version:

AI orchestration platform with autonomous teams, enhancement planning, migration tools, 25+ slash commands, checkpoints & hooks. Multi-IDE: Claude, Cursor, Windsurf, Cline, Copilot

98 lines 2.44 kB
import { EventEmitter } from 'events'; import { GitDisciplineConfig } from '../types/orchestration'; export interface GitStats { totalCommits: number; commitsByAgent: Record<string, number>; averageCommitInterval: number; branchesCreated: number; tagsCreated: number; lastCommitTime?: Date; complianceRate: number; } export interface CommitInfo { agentId: string; agentRole: string; sessionId: string; changes: string[]; tests?: string[]; blockers?: string[]; nextSteps?: string[]; } export declare class GitDisciplineService extends EventEmitter { private config; private projectPath; private stats; private lastCommitTimes; private autoCommitIntervals; private commitTemplate; constructor(config: GitDisciplineConfig, projectPath: string); /** * Initialize git discipline for the project */ initialize(): Promise<void>; /** * Ensure project is a git repository */ private ensureGitRepo; /** * Configure git settings */ private configureGit; /** * Set up git hooks */ private setupGitHooks; /** * Start auto-commit for an agent */ startAutoCommit(agentId: string, agentRole: string, sessionId: string): void; /** * Stop auto-commit for an agent */ stopAutoCommit(agentId: string): void; /** * Perform auto-commit */ private performAutoCommit; /** * Generate commit message from template */ private generateCommitMessage; /** * Create feature branch */ createFeatureBranch(branchName: string, agentId: string): Promise<string>; /** * Tag stable version */ tagStableVersion(tagName: string, message: string, agentId: string): Promise<void>; /** * Check compliance with commit interval */ checkCompliance(agentId: string): boolean; /** * Update commit statistics */ private updateCommitStats; /** * Update average commit interval */ private updateAverageInterval; /** * Get git statistics */ getStats(): GitStats; /** * Get recent commits */ getRecentCommits(limit?: number): Promise<any[]>; /** * Get current branch */ getCurrentBranch(): Promise<string>; /** * Clean up resources */ cleanup(): void; } //# sourceMappingURL=gitDiscipline.d.ts.map