본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 05. 20. 02:33

thesongzhu/Friday

요약

Friday는 사용자의 업무를 학습하고 도구를 연결하여 반복적인 작업을 워크플로로 전환하는 셀프 호스팅 가능한 개인용 AI 실행 파트너입니다. 완전 자율 시스템이 아닌 '승인 우선(Approval-first)' 방식을 채택하여, 민감한 작업이나 인간의 개입이 필요한 시점에는 명확하게 멈추고 사용자의 승인을 요청하도록 설계되었습니다.

핵심 포인트

  • 로컬 우선(Local-first) 및 BYOK(Bring Your Own Key) 방식을 지원하여 보안과 개인정보를 중시합니다.
  • 단순 채팅봇을 넘어 목표를 부여받으면 역량을 확인하고, 도구를 찾아 실행하며, 결과를 검증하는 실행 파트너 역할을 수행합니다.
  • CAPTCHA 우회, 결제, 운영 환경 변경 등 위험 요소에 대해서는 엄격한 경계를 설정하여 인간의 승인을 거칩니다.
  • 실행 결과와 실패 사례를 메모리 및 평가 케이스에 기록하여 안전하게 학습하고 개선합니다.

당신의 업무를 학습하고, 기술을 사용하며, 승인 하에 행동하는 개인용 AI.

AI와 대화하고, 목표를 부여하며, 도구를 연결하세요. 반복되는 업무를 감사 가능한 워크플로 (Workflows)로 전환할 수 있습니다.

로컬 우선 (Local-first) · BYOK (Bring Your Own Key) · 승인 우선 (Approval-first) · 인간 제어 (Human-controlled) · 증거 기반 (Evidence-backed)

Friday는 셀프 호스팅 (Self-hosted) 가능한 개인용 AI 및 자동화 런타임 (Runtime)입니다.

이 시스템은 단순한 빈 채팅봇이라기보다 개인적인 실행 파트너 (Execution partner)처럼 느껴지도록 설계되었습니다. 사용자가 목표를 주면, Friday는 자신이 할 수 있는 일을 확인하고, 설정된 기능 (Capabilities)을 사용하며, 인간만이 할 수 있는 부분에 대해 요청을 보낸 뒤, 실행하고, 결과를 검증하며, 학습한 내용을 기록합니다. 기능 습득 (Capability acquisition) 및 자체 업그레이드 흐름 (Self-upgrade flows)은 활발히 진행 중인 작업이며, 완전히 자율적인 약속이라기보다는 검토 단계가 포함된 진행 중인 작업 (WIP, Work In Progress)으로 취급되어야 합니다.

Friday는 마법 같은 완전 자율 시스템이 아닙니다. 사용자를 대신해 계정을 생성하거나, CAPTCHA를 우회하거나, 서비스 비용을 결제하거나, 운영 환경을 변경하는 조치를 취하거나, 제공되지 않은 자격 증명 (Credentials)을 사용하지 않습니다. Friday의 역할은 안전하게 수행할 수 있는 업무를 수행하고, 사용자의 도움이 필요할 때 명확하게 멈추며, 증거를 남기는 것입니다.

사용자가 목표를 부여합니다.
예시: "이 PDF들을 읽고, 최신 웹 검색 결과와 비교한 뒤, 인용구가 포함된 짧은 요약본을 저장해줘."

Friday가 역량을 확인합니다.
텍스트, 비전 (Vision), OCR, 웹 검색 (Web Search), PDF, 파일 (File), 브라우저 (Browser), 선택적 채널 (Optional Channel), 모델 (Model), 메모리 (Memory) 및 워크플로 (Workflow) 지원 여부를 확인합니다.

Friday가 격차 해소 방안을 보고하거나 초안을 작성합니다.
설치된 기술 (Skills), 신뢰할 수 있는 카탈로그 (Trusted Catalogs), MCP 서버, 로컬 파일, 패키지 레지스트리 (Package Registries), OpenAPI 명세 (OpenAPI Specs) 및 웹을 검색하여 후보 도구 또는 기술을 찾을 수 있습니다. 다만, 설치/업데이트 경로는 정책에 의해 제한되며 지속적인 강화 (Hardening) 과정을 거칩니다.

Friday가 인간의 개입이 필요한 시점에 요청합니다.
API 키, OAuth, 유료 플랜, CAPTCHA, 로그인, 민감한 권한 및 고위험 작업은 인간의 승인 단계 (Human Gate)를 거칩니다.

Friday가 실행하고 검증합니다.
기술 (Skills), 도구 (Tools), 워크플로 (Workflows), 브라우저/데스크톱 제어 또는 채널 어댑터 (Channel Adapters)를 통해 실행한 후 결과를 확인합니다.

Friday가 안전하게 학습합니다.
메모리, 라우팅 선호도 (Routing Preferences), 설정 레시피 (Setup Recipes), 생성된 기술 (Generated Skills), 평가 케이스 (Eval Cases) 및 실패 교훈을 업데이트할 수 있습니다. 기본적으로 모델 가중치 (Model Weights)를 학습시키지는 않습니다.

영역Friday가 수행하도록 설계된 작업경계 (Boundary)
채팅 및 작업 실행답변, 계획, 도구 기반 작업 실행, 진행 상황 표시 및 실패로부터의 복구구성된 제공자 (Providers) 및 부여된 도구에 따라 달라짐
...
npm install -g @thesongzhu/friday
friday start
# http://localhost:3141 접속
git clone https://github.com/thesongzhu/Friday.git
cd Friday
bash scripts/ops/friday-first-run.sh
...

첫 실행 도우미 (First-run helper)는 의존성 (Dependencies)을 설치하고, Friday를 빌드하며, 로컬 런타임 (Local Runtime)을 시작하고, 설정 페이지를 엽니다. macOS에서는 재시작 후에도 Friday가 다시 실행될 수 있도록 로그인 시작 에이전트 (Login Startup Agent)와 메뉴 바 컴패니언 (Menu Bar Companion)을 함께 설치합니다. 데스크톱 (Desktop), 문서 (Documents) 또는 다운로드 (Downloads) 폴더에서 실행할 경우, 로그인 에이전트를 설치하기 전에 ~/Friday에 launchd-safe 런타임을 자동으로 준비합니다.

git clone https://github.com/thesongzhu/Friday.git
cd Friday
npm install
...
docker compose -f docker/docker-compose.yml up --build
# http://localhost:3141 접속

첫 실행 시 제공자 (Providers), 로컬 권한 (Local permissions), 그리고 선택적 기능 (Optional capabilities)에 대한 설정 가이드가 진행됩니다. 채널 설정 (Channel setup)은 선택 사항이며, 설정된 채널이 사용 가능한 상태로 취급되기 전에 반드시 검증 과정을 거쳐야 합니다. 설정이 완료되면 Friday는 바로 홈 (Home) 화면으로 이동해야 합니다.

Friday는 BYOK (Bring Your Own Key) 방식입니다. 즉, 사용자가 사용하고자 하는 모델과 검색/API 자격 증명 (Credentials)을 직접 가져와야 합니다.

설정 흐름은 모든 기능 (Capability)에 대해 다음 네 가지 질문에 답해야 합니다:

**내가 이 기능을 가지고 있는가?****가지고 있지 않다면, 정확히 무엇이 누락되었는가?****어디에서 이를 설정하는가?**설정 후, Friday가 실제 작업을 통해 이를 검증할 수 있는가?

전형적인 제공자 (Provider) 경로에는 OpenAI, Doubao/Volcengine, Moonshot, Anthropic, Google, OpenRouter, Tavily, Serper, 로컬 브라우저/PDF/파일 도구 (Tooling), MCP 서버, 그리고 커스텀 스킬 (Custom skills)이 포함됩니다. 키(Key)나 계정이 누락된 경우 성공으로 처리되지 않습니다. Friday는 이를 인간의 개입이 필요한 차단 요소 (Human blocker)로 표시하고 다음 설정 단계로 안내해야 합니다.

Friday가 목표를 달성하기 위한 기능이 없을 때, 목표로 하는 폐쇄 루프 (Closed loop)는 다음과 같습니다:

목표 (Goal) -> 기능 격차 (Capability gap) -> 후보 (Candidates) -> 샌드박스/테스트 (Sandbox/test) -> 필요 시 승인 (Approval if required) -> 설치/등록 (Install/register) -> 진단 검증 (Doctor verify) -> 실행 (Execute)

이 루프는 아직 포괄적인 프로덕션 보증 (Production guarantee) 단계는 아닙니다. 현재 빌드는 격차를 보고하고 워크플로우의 일부를 실행할 수 있지만, 생성된 스킬 (Generated skills), 자체 업그레이드 (Self-upgrades), 그리고 조정 충실도 (Adjustment-fidelity) 경로는 여전히 검토 단계(Review-gated)에 있으며 지속적인 스트레스 테스트 (Stress tests)의 대상입니다. 허용되는 자동 단계는 정책 (Policy)에 따라 달라집니다. 검색, 분석, 초안 생성, 그리고 샌드박스 검증은 기본적으로 저위험 (Low-risk)으로 분류됩니다. 코드 다운로드, 패키지 설치, 설정 작성, 도구 등록, 셸 접속 (Shell access), 그리고 외부 네트워크 호출은 자율성 정책 (Autonomy policy)의 통제를 받습니다. OAuth, 결제, CAPTCHA, API 키, 민감한 권한, 그리고 프로덕션 쓰기 (Production writes) 작업은 항상 사용자의 승인이 필요합니다.

Friday의 자기 개선 (Self-improvement)은 의도적으로 지루하고 검사 가능하도록 설계되었습니다:

메모리 사실 (Memory facts): 선호도, 프로젝트 규칙, 반복되는 컨텍스트, 그리고 사용자의 수정 사항.
라우팅 선호도 (Routing preferences): 어떤 제공자(provider)가 어떤 종류의 작업에 가장 적합했는지에 대한 정보.
레시피 (Recipes): 성공적이었던 설정 및 복구 단계.
기술 및 워크플로우 (Skills and workflows): 테스트와 증거가 포함되어 생성되거나 개선된 결과물 (artifacts).
평가 케이스 (Eval cases): 계속해서 통과해야 하는 고정된 시나리오.
실패 교훈 (Failure lessons): 무엇이 고장 났는지, 무엇이 그것을 고쳤는지, 그리고 언제 재시도를 중단해야 하는지에 대한 정보.

이것은 모델 가중치 학습 (model-weight training)이 아닙니다. 이는 사용자가 검사, 편집, 일시 중지 또는 삭제할 수 있는 감사 가능한 상태 (auditable state) 및 재사용 가능한 결과물 (artifacts)입니다.

Friday는 단순한 규칙을 따릅니다: 지루한 부분은 자동화하고, 되돌릴 수 없거나 민감한 부분은 사용자가 통제권을 유지하도록 합니다.

  • 기본적으로 로컬 우선 런타임 (Local-first runtime) 및 로컬 상태를 사용합니다.

  • 사용자의 키를 직접 사용합니다 (Bring-your-own keys); 자격 증명 (credentials)은 환경 변수, 관리되는 비밀 참조 (managed secret refs), 또는 OS 기반의 비밀 저장소에 보관되어야 합니다.

  • 권한 부여 (Capability grants)에는 범위 (scope), 이유 (reason), 증거 (evidence), 그리고 만료 기간 (expiry)이 포함됩니다.

  • 고위험 작업은 명시적인 승인을 필요로 합니다.

  • 도구 호출 (Tool calls), 워크플로우 실행 (workflow runs), 자가 치유 실행 (self-healing runs), 그리고 채널 작업 (channel actions)은 감사 증거 (audit evidence)를 남깁니다.

  • 설치 실패 또는 생성된 권한은 롤백 (rollback)을 지원해야 합니다.

  • 공용 네트워크 노출은 명시적인 인증 (auth), CORS, TLS/프록시 (proxying), 그리고 최소 권한 원칙 (least-privilege access)을 요구합니다.

  • 보편적인 자동화를 보장하는 것은 아닙니다.

  • 사용자의 개입 없이 모든 작업을 수행할 수 있는 완전 자율 시스템이 아닙니다.

  • 로그인, CAPTCHA, 결제, 플랫폼 규칙 또는 제공자 제한을 우회하지 않습니다.

  • 검토 없이 임의의 제3자 코드를 안전하게 실행하지 않습니다.

  • 호스트, API 키, 계정 및 연결된 채널을 보호해야 하는 사용자의 책임을 면제하지 않습니다.

  • 시작하기 (Getting Started)

  • 문서 허브 (Documentation Hub)

  • 로드맵 (Roadmap)

  • 비전 (Vision)

  • 권한 매트릭스 (Capability Matrix)

  • Friday 확장하기 (Extending Friday)

  • 문제 해결 (Troubleshooting)

  • 기여하기 (Contributing)

  • 보안 (Security)

플랫폼 (Platform)방법 (Method)상태 (Status)
macOS / Linux / Windowsnpm install -g @thesongzhu/friday코어/소스 패키지가 npm에 1.0.0으로 게시됨; 네이티브 데스크톱 컴패니언 (native desktop companion)의 동등성은 플랫폼별로 상이함
소스 (Source)git clone + npm install + npm run build사용 가능
Dockerdocker compose -f docker/docker-compose.yml up --build이 리포지토리(repo)에서 사용 가능

공식 npm 패키지는 @thesongzhu/friday입니다. npm에 있는 스코프가 지정되지 않은 friday 패키지는 관련이 없습니다.

Linux 및 Windows 데스크톱 컴패니언 (desktop companion) 동작은 완료된 네이티브 데스크톱 릴리스 주장으로서가 아니라, 플랫폼별 기능 확인 (capability checks) 및 릴리스 증거를 통해 확인해야 합니다.

Discord - discord.gg/qXQRFg2u
이슈 (Issues) - GitHub Issues
보안 (Security) - SECURITY

Friday는 MIT 라이선스 하의 오픈 소스 소프트웨어입니다.

Friday에는 제3자 에이전트 생태계 (third-party agent ecosystem) 형식 및 동작에 대한 호환성 및 적응 작업이 포함되어 있습니다. 보존된 업스트림 (upstream) 저작권 및 라이선스 고지는 NOTICE를 참조하십시오.

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub Codex tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0