Show HN: Workflow Use – 결정론적이고 자가 치유가 가능한 브라우저 자동화 (RPA 2.0)
요약
Workflow Use는 변수를 활용하여 결정론적인 워크플로우를 생성하고 실행하는 RPA 2.0 도구입니다. 자연어로 작업을 설명하면 Browser Use를 통해 실행 과정을 기록하고, 이를 재사용 가능한 의미론적 워크플로우로 자동 변환하여 저장합니다. 단계 실행 실패 시 자가 치유(Self-healing)를 위해 Browser Use로 폴백하는 기능을 제공합니다.
핵심 포인트
- 자연어 설명을 기반으로 재사용 가능한 의미론적 워크플로우 자동 생성
- 실행 실패 시 Browser Use를 통한 자가 치유(Self-healing) 및 폴백 기능 지원
- AI 없이도 매개변수(Parameters)를 활용한 결정론적 워크플로우 재사용 가능
- 실행 기록을 데이터베이스에 저장하여 메타데이터와 함께 관리
⚙️ Workflow Use는 변수를 사용하여 결정론적 (Deterministic) 워크플로우를 생성하고 실행하는 가장 쉬운 방법이며, 단계가 실패할 경우 Browser Use로 폴백 (Fallback)합니다. 사용자는 레코더에게 워크플로우를 보여주기만 하면, 저희가 자동으로 워크플로우를 생성합니다.
❗ 이 프로젝트는 매우 초기 개발 단계에 있으므로 운영 환경 (Production)에서 사용하는 것을 권장하지 않습니다. 많은 것들이 변경될 예정이며 아직 출시 일정은 정해지지 않았습니다. 원래 이 프로젝트는 Browser Use를 더 신뢰할 수 있고 결정론적으로 만들고자 하는 고객의 요구로부터 탄생했습니다.
🚀 새로운 기능: 생성 모드 (Generation Mode)
자연어 (Natural language)로부터 워크플로우를 자동으로 생성하세요! 작업을 설명하면, 저희가 Browser-use를 한 번 실행한 다음, 데이터베이스에 저장되는 재사용 가능한 의미론적 (Semantic) 워크플로우를 생성합니다.
빠른 명령 (Quick Commands)
# 작업 설명으로부터 워크플로우 생성
python cli.py generate-workflow "Find GitHub stars for browser-use repo"
...
작동 방식
- 설명 (Describe): 자연어로 작업을 전달합니다.
- 실행 (Execute): Browser-use가 작업을 한 번 완료합니다.
- 생성 (Generate): 실행 기록 → 매개변수 (Parameters)가 포함된 의미론적 (Semantic) 워크플로우로 변환합니다.
- 저장 (Store): 메타데이터 (Metadata)와 함께 데이터베이스에 저장합니다.
- 재사용 (Reuse): AI 없이도 다른 입력값으로 워크플로우를 실행합니다.
고급 옵션 (Advanced Options)
# 생성을 위한 커스텀 모델
python cli.py generate-workflow "Your task" \
--agent-model "gpt-4.1-mini" \
...
저장소 (Storage)
워크플로우는 workflows/storage/에 저장됩니다:
metadata.json- 모든 워크플로우의 검색 가능한 인덱스workflows/<id>.workflow.json- 개별 워크플로우 파일
프로그래밍 방식 사용 (Programmatic Usage)
프로그래밍 방식 사용 (Programmatic Usage)
from workflow_use.healing.service import HealingService
from workflow_use.storage.service import WorkflowStorageService
from browser_use.llm import ChatOpenAI
...
빠른 시작 (Quick start)
git clone https://github.com/browser-use/workflow-use
확장 프로그램 빌드하기 (Build the extension)
cd extension && npm install && npm run build
워크플로우 환경 설정하기 (Setup workflow environment)
cd .. && cd workflows
uv sync
source .venv/bin/activate # mac / linux
...
도구로 워크플로우 실행하기 (Run workflow as tool)
python cli.py run-as-tool examples/example.workflow.json --prompt "fill the form with example data"
미리 정의된 변수로 워크플로우 실행하기 (Run workflow with predefined variables)
python cli.py run-workflow examples/example.workflow.json
사용자 지정 워크플로우 기록하기 (Record your own workflow)
python cli.py create-workflow
모든 명령어 보기 (See all commands)
python cli.py --help
Python에서 사용하기 (Usage from python)
워크플로우 파일을 실행하는 것은 다음과 같이 간단합니다:
from workflow_use import Workflow
workflow = Workflow.load_from_file("example.workflow.json")
...
클라우드 브라우저 지원 (Cloud Browser Support)
의미론적 추상화(semantic abstraction, AI 사용 안 함)를 통해 Browser-Use Cloud에서 워크플로우를 실행할 수 있습니다. (신규 가입자는 OAuth를 통한 $10 크레딧 또는 이메일을 통한 $1을 받습니다):
(참고: BROWSER_USE_API_KEY 환경 변수 설정)
from workflow_use import Workflow
workflow = Workflow.load_from_file("workflow.json", llm, use_cloud=True)
...
예시:
examples/cloud_browser_demo.py- 기록된 워크플로우를 로드하여 클라우드에서 실행하기
GUI 시작하기 (Launch the GUI)
워크플로우 UI는 워크플로우를 관리, 조회 및 실행할 수 있는 시각적 인터페이스를 제공합니다.
옵션 1: CLI 명령어 사용 (권장)
GUI를 시작하는 가장 쉬운 방법은 내장된 CLI 명령어를 사용하는 것입니다:
cd workflows
python cli.py launch-gui
이 명령어는 다음 작업을 수행합니다:
- 백엔드 서버(FastAPI) 시작
- 프론트엔드 개발 서버 시작
- 브라우저에 http://localhost:5173 자동 열기
- 로그를
./tmp/logs디렉터리에 캡처
작업이 완료되면 Ctrl+C를 눌러 두 서버를 모두 중단하세요.
옵션 2: 서버를 개별적으로 시작하기
또는, 서버를 각각 개별적으로 시작할 수도 있습니다:
백엔드 (backend) 서버 시작
cd workflows
uvicorn backend.api:app --reload
프론트엔드 (frontend) 개발 서버 시작
cd ui
npm install
npm run dev
두 서버가 모두 실행되면, 브라우저에서 http://localhost:5173을 통해 Workflow GUI에 접속할 수 있습니다. UI를 통해 다음 작업이 가능합니다:
- 워크플로 (workflows)를 대화형 그래프로 시각화
- 사용자 정의 입력 파라미터 (input parameters)로 워크플로 실행
- 워크플로 실행 로그를 실시간으로 모니터링
- 워크플로 메타데이터 및 세부 정보 편집
데모 (Demos)
Workflow Use를 이용한 즉각적인 양식 작성
Gregor의 설명
특징 (Features)
- 🔁 한 번 기록하고 영원히 재사용: 브라우저 상호작용을 한 번 기록하면 무한히 재생할 수 있습니다.
- ⏳ 프롬프트 대신 보여주기 (Show, don't prompt): Browser Use가 똑같은 일을 반복하도록 매번 몇 시간씩 프롬프팅 (prompting)할 필요가 없습니다.
- ⚙️ 구조화되고 실행 가능한 워크플로 (Structured & Executable Workflows): 기록된 내용을 결정론적 (deterministic)이고 빠르며 신뢰할 수 있는 워크플로로 변환하며, 양식에서 변수를 자동으로 추출합니다.
- 🪄 인간과 유사한 상호작용 이해: 기록에서 노이즈를 지능적으로 필터링하여 의미 있는 워크플로를 생성합니다.
- 🔒 엔터프라이즈급 기반 (Enterprise-Ready Foundation): 자가 치유 (self-healing) 및 워크플로 차이점 비교 (workflow diffs)와 같은 기능을 통해 미래의 확장성을 고려하여 구축되었습니다.
비전 및 로드맵 (Vision and roadmap)
컴퓨터에게 해야 할 일을 한 번만 보여주면, 인간의 개입 없이도 반복해서 수행하게 될 것입니다.
워크플로 (Workflows)
- 파이썬 (python) 코드 내에서
.json파일을 사용하는 좋은 방법 마련 - 단계 (step) 실패 시 LLM 폴백 (fallback) 개선 (현재 매우 미흡함)
- 자가 치유 (Self healing): 실패 시 에이전트 (agent)가 자동으로 개입하여 워크플로 파일을 업데이트
- LLM 단계에 대한 더 나은 지원
- 이전 단계의 출력을 다음 단계의 입력으로 사용
- 워크플로를 MCP 도구로 노출
- Browser Use를 사용하여 웹사이트로부터 워크플로를 자동으로 생성
개발자 경험 (Developer experience)
- CLI 개선
- 확장 프로그램 (extension) 개선
- 단계 편집기 (Step editor)
에이전트 (Agent)
- Browser Use가 워크플로를 MCP 도구로 사용할 수 있도록 허용
- 워크플로를 웹사이트 캐싱 레이어 (caching layer)로 사용
AI 자동 생성 콘텐츠
본 콘텐츠는 HN Claude Code Search의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기