oto/agent-roadmap/archive/phase/cli-automation-surface/milestones/cli-automation-baseline.md
toki 807ca7fc6e refactor: agent-roadmap 구조로 마이그레이션 및 AI 에이전트 규칙 일원화
- agent-ops/roadmap/를 agent-roadmap/으로 디렉터리 구조 재구성
- AI 에이전트별 ignore 파일 (.clineignore, .cursorignore, .geminiignore 등) 및
  규칙 파일 (.clinerules, .cursorrules, AGENTS.md 등) 통합
- agent-ops 스킬 템플릿 및 규칙 파일 업데이트
- opencode.json 설정 갱신
2026-05-27 12:58:08 +09:00

3.2 KiB

CLI 자동화 기준선 정리

목표

현재 OTO CLI가 제공하는 실행 모드와 핵심 확장 경계를 장기 호환 기준선으로 정리한다. 같은 단계의 나머지 작업이 기존 -j, -f, scheduler 흐름을 깨지 않고 구조화 출력과 검증 기능을 추가할 수 있게 만든다.

단계

CLI 자동화 표면 정리

상태

완료

구현 잠금

  • 상태: 해제
  • 이유: 완료된 Milestone이며 완료 기준과 완료 근거가 문서화되어 있다. 후속 확장은 별도 Milestone에서 다룬다.
  • 해제 근거: 완료된 Milestone으로 완료 근거가 작업 컨텍스트에 문서화되어 있다.
  • 잠금 중 금지:
    • 해당 없음

범위

  • 기존 -j, -f, scheduler 모드를 유지할 호환 표면으로 정리한다.
  • YAML 파이프라인, 커맨드 확장, 단일 바이너리 배포 구조를 OTO의 핵심 경계로 유지한다.
  • Jenkins는 현재 호환 실행 경로로 남기되, 이후 작업에서 제어면을 Jenkins 전용 환경 변수에 고정하지 않도록 기준을 세운다.
  • 현재 코드와 문서에 흩어진 실행 모드 설명을 기준선으로 삼아, 이후 구조화 출력과 agent 확장 작업의 변경 허용 범위를 정리한다.

필수 기능

  • [cli-modes] CLI 실행 모드별 책임과 호환 기준이 문서화되어 있다.
  • [yaml-command] YAML 파이프라인과 커맨드 확장 모델이 핵심 경계로 명시되어 있다.
  • [binary-dist] 단일 바이너리 배포 구조가 장기 유지 대상인지 확인되어 있다.
  • [jenkins-boundary] Jenkins 전용 환경 변수 의존을 확장 지점과 분리할 기준이 정리되어 있다.

완료 기준

  • 새 기능을 추가할 때 어떤 CLI 동작을 깨면 안 되는지 빠르게 판단할 수 있다.
  • CLI 자동화 표면 정리 단계의 구조화 출력, YAML validation, Jenkins 의존성 완화 작업이 이 기준선을 참조해 진행될 수 있다.
  • README의 사용법 설명, CLI 구현, agent-roadmap/의 상세 로드맵이 같은 실행 모드 경계를 가리킨다.

범위 제외

  • oto-agent 프로세스나 Edge bootstrap 흐름을 구현하지 않는다.
  • proto-socket 메시지 프로토콜을 설계하거나 구현하지 않는다.
  • Jenkins 지원을 제거하지 않는다.

작업 컨텍스트

  • 먼저 README.md, agent-ops/rules/project/rules.md, lib/oto/application.dart, lib/cli/**의 현재 실행 모드 설명을 확인한다.
  • 코드 변경이 필요하면 관련 도메인 rule을 먼저 읽고, 변경 범위를 CLI 호환 경계 정리에 맞춘다.
  • 완료 근거:
    • README.md현재 상태, 실행 모드, CLI 호환 기준선, Roadmap 섹션이 CLI 실행 모드와 확장 경계를 같은 기준으로 설명한다.
    • lib/oto/application.dartBuildType과 실행 모드별 DataComposer 분기가 README의 실행 표면과 일치한다.
    • lib/cli/commands/command_exe.dartlib/cli/commands/command_scheduler.dart-j, -f, scheduler 호환 표면을 구현한다.
    • README.md의 설치 명령이 dart compile exe bin/main.dart -o oto 단일 바이너리 산출물을 장기 배포 기준으로 명시한다.