run method

  1. @override
void run()
override

Runs this command.

The return value is wrapped in a Future if necessary and returned by CommandRunner.runCommand.

Implementation

@override
void run() {
  if (!ContextService.isInitialized()) {
    print('ContextForge has not been initialized in this repository.\n');
    print('Run:');
    print('  contextforge init');
    return;
  }

  ContextService.ensureContextFilesExist();

  print('🔍 Analyzing repository...');

  // Scan repository structure
  final scanner = RepoScanner();
  final structure = scanner.scanRepository();

  // Detect tech stack
  final stack = StackDetector.detectTechStack();

  // Update architecture.md
  _updateArchitectureFile(ContextService.contextDir, structure, stack);

  print('✔ Repository analysis completed');
}