import {Meta} from '@storybook/addon-docs/blocks'

<Meta title='@dxtmisha/vi/scripts/Classes/AiDoc - Công cụ Tài liệu hóa bằng AI'/>

# Lớp AiDoc

Công cụ trung tâm để điều phối việc tạo tài liệu bằng AI trong toàn bộ dự án. Nó chịu trách nhiệm đọc cấu hình, quét các thư mục và phân phối các nhiệm vụ tài liệu cho các trình xử lý AI chuyên biệt.

## Tính năng chính

- **Xử lý Hàng loạt** — tự động lặp qua các thư mục đã cấu hình để tạo tài liệu cho nhiều tệp cùng lúc.
- **Tích hợp Toàn diện** — đọc các thiết lập dự án thông qua `PropertiesConfig` để xác định các đường dẫn và phạm vi mục tiêu.
- **Tích hợp Git** — sử dụng `GitRead` để nhận diện các tệp liên quan và lọc chúng dựa trên trạng thái của kho lưu trữ.
- **Khả năng Chịu lỗi** — xử lý lỗi mạnh mẽ trong quá trình tạo tài liệu để đảm bảo hệ thống hoạt động ổn định hoặc báo cáo sự cố một cách rõ ràng.

## Khởi tạo

Lớp `AiDoc` thường được khởi tạo như một trình điều phối chính để bắt đầu quá trình tạo tài liệu.

```typescript
import { AiDoc } from '@dxtmisha/scripts'

const engine = new AiDoc()

// Bắt đầu xử lý tất cả các thư mục đã cấu hình
await engine.make()
```

## Phương thức

### Điều khiển

- `make(): Promise<void>` — điểm bắt đầu chính. Đọc cấu hình và bắt đầu xử lý tất cả các thư mục tài liệu đã được xác định.
- `makeDirectory(dir: string): Promise<void>` — xử lý tất cả các tệp liên quan trong một thư mục cụ thể bằng cách ủy quyền cho các trình xử lý AI chuyên biệt.


Một trình điều phối cấp cao không công khai các thuộc tính cấu hình hoặc trạng thái phức tạp.
