# AGENTS

이 문서는 dfxagent 코드베이스를 다루는 자동화 에이전트를 위한 작업 지침이다.

## 프로젝트 개요
- Spring Boot 기반의 메시지/파일 전송 에이전트
- 알려진 에이전트 간 라우팅, DB 연동, 파일 전송을 수행
- 설정 파일(JSON)을 읽어 동작하며, MyBatis 매퍼를 사용

## 주요 흐름 요약
- 추후 작성 예정

## 실행 방법
- Gradle 실행 (예시)
  - bootRun --args="--setting.file=D:\projects\bsm-lab\dfx\dfxagent\src\docs\agent-bsm-lab-postgres\conf\dfxagent-bsm-lab-postgres.json"
- JAR 실행 (예시)
  - `java -jar dfxagent.jar --setting.file=/path/to/settings.json`

### CLI 옵션
- `--setting.check`: 설정 파일 기반 DB 연결/에이전트 연결 점검
- `--parse.message.file=/path/to/file`: 직렬화된 메시지 파일을 JSON으로 출력

## 메시지 처리 규약
- 추후 작성 예정

## HTTP 엔드포인트
- `POST /listen`: 메시지 수신 (JSON 또는 multipart)
- `POST /telegram`: 처리 결과 ACK 수신
- `POST /command`: ALIVE/INFORMATION 명령 응답

## 작업 시 주의사항
- dfxagent-bsm-lab-postgres.json 파일과 같이 설정파일 기반으로 동작하므로 매번 설정파일 확인 필요
- 설정 예시 파일에 실제 접속 정보가 포함될 수 있으니 외부 공유 금지
- 메시지 저장 디렉터리는 날짜 기반 폴더 구조를 사용
- MyBatis 매퍼 경로는 설정 파일의 `sqlMapperLocations`에 의존

## 테스트/검증
- 추후 작성 예정
