본문으로 건너뛰기

oneshim-app

바이너리 진입점 크레이트. DI 와이어링, 스케줄러, 라이프사이클, 자동 업데이트를 담당합니다.


주요 기능

컴포넌트 조립 (DI 와이어링)

모든 크레이트의 컴포넌트를 생성하고 의존성을 주입하여 애플리케이션을 조립합니다.

스케줄러

주기적으로 실행되는 8개의 태스크 루프를 관리합니다.

루프역할
Monitor메트릭/창 수집, 캡처 결정
Metrics시스템 메트릭 저장
Process프로세스 스냅샷
Sync서버 배치 업로드
Heartbeat서버 연결 확인
Aggregation메트릭 집계
Notification유휴/장시간 작업 알림
FocusEdge Intelligence 집중도 분석

Edge Intelligence (집중도 분석)

로컬에서 사용자의 집중도를 분석하고 AI 제안을 생성합니다.

제안조건
휴식 권장장시간 연속 작업
집중 시간 필요소통 비율 과다
컨텍스트 복원인터럽션 후 미복귀
소통 과다 알림평균 대비 과도한 소통

라이프사이클 관리

시그널 처리(Ctrl+C, SIGTERM) 및 Graceful Shutdown을 수행합니다.

자동 업데이트

GitHub Releases 기반으로 자동 업데이트를 확인하고 설치합니다.

자동 시작

각 플랫폼의 네이티브 방식으로 로그인 시 자동 시작을 설정합니다.


실행 흐름


빌드 및 실행

# 개발 빌드
cargo build -p oneshim-app

# 릴리즈 빌드
cargo build --release -p oneshim-app

# 실행
cargo run -p oneshim-app

환경 변수

변수필수설명
ONESHIM_EMAIL로그인 이메일
ONESHIM_PASSWORD로그인 비밀번호
RUST_LOG로그 레벨 (기본: info)
ONESHIM_CONFIG설정 파일 경로

관련 문서: