아티클
다양한 읽을거리를 확인해 보세요.[오픈클로 01] 초보자를 위한 오픈클로 설치하기
📅 2026년 5월 17일 · 👁 3
초보자를 위한 오픈클로 설치하기처음은 누구나 어렵고 지루합니다. 이 지루한 30분만 지나면 AI 비서가 일하기 시작합니다. 오늘 30분이 아까워서 미루면 내일도 모레도 그 잡다한 반복 작업을 직접 하게 됩니다. 자, 터미널 하나 열어놓고 커피 한 잔 내리면서 따라오세요. 생각보다 금방 끝납니다. 만약 설치를 하다가 문제가 생겼다면, 챕터 마지막에 있는 문제가 생겼을 때 페이지를 확인하세요.Node.js 설치하기컴퓨터 사양은 크게 신경 안 써도 됩니다. 오픈클로 자체가 무거운 프로그램이 아닙니다. AI 모델은 클라우드에서 돌아가고, 오픈클로는 그 AI에게 일을 전달하고 결과를 받아오는 역할입니다. 최근 5년 안에 산 컴퓨터라면 거의 다 됩니다. 딱 하나, Node.js 22 버전 이상이 필요합니다. 당장 Node.js가 뭔지 자세히 알 필요는 없습니다. Node.js는 자바스크립트를 컴퓨터에서 실행하는 도구이며, 오픈클로가 자바스크립트로 만들어져서 필요하다는 정도만 알아두세요.Node.js 설치되어 있는지 확인하기Node.js가 이미 설치되어 있을 수도 있으니까 먼저 확인해봅시다. 터미널을 열고 이렇게 입력해보세요.v22.x.x 이상의 숫자가 나오면 OK입니다. 만약 command not found라고 나오거나 버전이 22보다 낮으면 다음에서 Node.js부터 설치하면 됩니다. 이미 Node.js 22 이상이 설치되어 있다면 이 섹션은 건너뛰세요.Homebrew로 Node.js 설치하기macOS는 Homebrew로 설치하는 방법이 가장 간편합니다. Homebrew가 없는 독자 여러분을 위해 Homebrew 설치부터 차근차근 진행하겠습니다.01 다음 사이트에 접속해 설치 명령어를 복사하고 터미널에 붙여넣어 실행하세요. 설치 명령어는 다음과 같습니다. 사이트 화면을 캡처한 이미지는 크게 중요하지 않으므로 생략했습니다.Homebrew : brew.sh/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"02 Homebrew를 설치했다면 이어서 Node.js 설치 명령을 실행하면 됩니다.```> brew install node```설치 프로그램으로 Node.js 설치하기만약 Homebrew가 없거나 Homebrew를 통해 설치하고 싶지 않고, 어쩔 수 없이 윈도우를 쓰는 환경이라면 Node.js 공식 사이트에서 다운로드할 수 있습니다.01 nodejs.org/ko/download에 접속해서 버전과 환경을 선택합니다. 버전은 LTS라고 써져있는 버전을 선택하세요. 환경은 macOS, 리눅스, 윈도우 등 사용자 컴퓨터에 맞는 것을 고르면 됩니다.02 설치 프로그램 다운로드를 선택하고 설치 프로그램을 실행합니다. 설치 프로그램에서는 [Continue]만 누르면 됩니다.설치가 끝났다면 다시 터미널을 열어 node -v 명령을 실행해 설치가 잘 되었는지 확인하는 게 좋습니다. Node.js는 오픈클로를 실행하기 위해 꼭 필요하므로 오픈클로를 설치한 이후에도 삭제하면 안 됩니다.오픈클로 설치하기Node.js를 준비했다면 오픈클로를 바로 설치합니다. 두 가지 방법이 있습니다. 하나는 설치 스크립트를 사용하는 것이고, 하나는 Node.js의 패키지 관리자인 npm을 사용하는 겁니다.설치 스크립트 사용하기저는 설치 스크립트 방법을 추천합니다. 가장 간편하고 실수할 일이 적습니다.01 오픈클로 홈페이지에서 다음 설치 명령어를 복사한 후 터미널에 붙여넣고 [Enter]를 누르세요. 이 스크립트가 알아서 오픈클로를 설치하고, 기본 설정 파일을 만들고, 온보딩 마법사까지 자동으로 시작합니다.이렇게 정상적으로 설치가 끝나고 온보딩 화면이 나오면 됩니다.온보딩 마법사 따라가기온보딩 마법사는 오픈클로의 초기 설정을 간편하게 수행할 수 있는 프로그램입니다. 온보딩 마법사를 시작하는 방법은 터미널에서 다음 명령어를 입력하는 겁니다. 설치 스크립트로 오픈클로를 설치했다면 명령어를 입력하지 않아도 자동으로 실행될 겁니다.```openclaw onboard --install-daemon```자세한 설명보다는 설치부터 하고 싶은 분, 이미 오픈클로를 한 번 설치해본 분은 다음 목록을 보고 그대로 따라하세요. 가장 빠르게 온보딩을 끝낼 수 있는 방법을 정리한 목록입니다. 초보 독자 여러분은 읽지 않고 넘어가도 좋습니다.I understand this is personal-by-default and shared/multi-user use requires lock-down. Continue?YesOnboarding modeQuickStartModel/auth providerOpenAIOpenAI auth methodOpenAI Codex (ChatGPT OAuth)챗GPT 계정 로그인Default modelopenai-codex/gpt-5.3-codexSelect channel (QuickStart)Telegram (Bot API)How do you want to provide this Telegram bot token?Enter Telegram bot token텔레그램 봇 생성 및 토큰 입력Search providerSkip for nowConfigure skills now? (recommended)NoEnable hooks?Skip for now ([Space ➝ Enter])How do you want to hatch your bot?Do this later이제 온보딩을 본격적으로 시작해보겠습니다. 어려워도 하나씩 천천히 따라하면 누구나 설치할 수 있습니다.01 처음에 보안 안내가 나옵니다. 오픈클로는 여러분의 컴퓨터를 제어할 수 있는 AI라서, 몇 가지 주의 사항을 미리 알려주는 겁니다.핵심만 정리하면 이렇습니다. 읽어보고 동의하면 다음 단계로 넘어갑니다.신뢰할 수 있는 AI 모델만 사용하세요. Anthropic(클로드), OpenAI(GPT) 같은 검증된 서비스를 쓰라는 뜻입니다. 책에서는 OpenAI의 GPT를 사용합니다.API 키를 안전하게 보관하세요. API 키가 유출되면 다른 사람이 여러분 돈으로 AI를 사용할 수 있습니다.채널 접근을 제한하세요. 아무나 오픈클로에 명령을 보낼 수 없게 관리해야 합니다.02 지금부터는 오픈클로가 던지는 질문에 차례대로 대답하며 오픈클로 설정을 진행할 겁니다. 처음은 온보딩 모드를 설정합니다. 빠른 시작을 위해 [QuickStart]로 진행하겠습니다.03 게이트웨이 위치를 선택합니다. 이 질문은 버전과 사용환경에 따라서 나오지 않을 수 있습니다. 다음 세 가지 옵션 중 하나를 선택합니다.Local (이 컴퓨터)Remote (SSH/Tailnet)Configure later (나중에 설정)여러분은 [Local]을 선택하세요. 지금 쓰고 있는 컴퓨터에서 오픈클로를 운영한다는 뜻입니다. 대부분의 사용자에게는 이게 최선의 선택입니다. 나중에 서버에 올리고 싶어지면 그때 변경하면 됩니다. [Remote]는 별도의 서버(VPS, 홈 서버 등)에서 돌릴 때 쓰는 옵션입니다. 지금 단계에서는 신경 쓰지 않아도 됩니다.04 AI 프로바이더Provider를 선택합니다. 여기가 가장 중요한 단계입니다. 오픈클로의 모델, 즉 두뇌를 결정하는 겁니다. 여기서 OpenAI를 선택하세요. 이 책에서는 OpenAI를 기준으로 설명합니다. OpenAI는 GPT-5.1-mini 같은 가성비 좋은 모델부터 GPT-4.1까지 다양한 선택지를 제공합니다. 도구 사용 능력도 뛰어나서 오픈클로와 궁합이 좋습니다.05 OpenAI를 선택하면 인증 방식을 선택할 수 있습니다. 이 책에서는 인증 방식은 [OpenAI Codex]를 사용합니다. 각 방식마다 장단점이 있으니 본인에게 맞는 걸 선택하세요. OAuth 방식은 챗GPT를 구독할 때 사용할 수 있습니다. API Key 방식은 사용하는 만큼 비용을 지불해야 합니다. 챗GPT 계정으로 연동하기ChatGPT Plus나 Pro를 구독하고 있다면 이 방법이 가장 편합니다. API 키 없이 기존 ChatGPT 계정으로 바로 연결합니다. 챗GPT Plus 또는 Pro 구독이 필요합니다.01 앞에서 본 온보딩 마법사에서 [OpenAI Codex (ChatGPT OAuth)]를 선택합니다. 그러면 로그인을 위한 브라우저가 자동으로 열립니다.02 챗GPT 계정으로 로그인합니다. 이미 로그인되어 있다면 건너뜁니다. [계속] 버튼을 눌러 오픈클로가 계정에 접근할 수 있도록 승인합니다.03 연결 완료 메시지가 나타나면 터미널로 돌아가세요.04 사용할 모델을 선택합니다. 모델은 최신 모델을 선택하세요.챗GPT 계정 연동은 장점이 있습니다. API 키를 따로 발급받을 필요가 없습니다. 키가 유출될 걱정도 없죠. 그리고 이미 구독 중인 챗GPT 요금제를 그대로 사용하니 저렴합니다. 나중에 모델을 다시 연결하고 싶다면 openclaw configure 명령어를 실행하고 model 설정에서 재연결할 수 있습니다. API 키로 인증하기챗GPT를 구독하지 않거나 사용량 기반 과금을 원한다면 API 키를 발급받아 사용합니다. 이미 챗GPT 계정 연동을 끝냈다면 이 부분은 생략해도 됩니다.01 OpenAI 플랫폼에 접속해서 로그인합니다.platform.openai.com02 좌측 메뉴에서 [API Keys ➝ Create new secret key] 버튼을 누릅니다. 키 이름을 정하고 [Create secret key]를 클릭합니다.이때 주의할 점이 있습니다. 생성한 키는 딱 한 번만 보인다는 겁니다. 그러므로 반드시 복사해서 안전한 곳에 저장하세요. sk-proj-로 시작하는 긴 문자열이 키입니다. 또한, API 키는 유출하면 안 됩니다. 여러분의 비밀번호와 같습니다. 절대 깃허브에 커밋(업로드)하거나 공개하지 마세요. 키가 유출되었다면 즉시 OpenAI 플랫폼에서 삭제하고 새로 발급받으세요.03 복사한 키를 온보딩 마법사에 붙여넣습니다.API 키 방식은 사용량만큼 과금합니다. 가벼운 일상 사용 기준이라면 월 5~20달러 정도 예상하면 됩니다. 만약 사용량 한도를 정하고 싶다면 [Settings → Billing → Usage limits]에서 월 최대 지출 한도를 설정해두세요. 설정한 금액 이상은 과금하지 않습니다.메신저 채널 연결하기채널은 오픈클로와 소통하는 메신저를 말합니다. 오픈클로는 정말 다양한 채널을 지원하며, 다음 채널이 대표적입니다.텔레그램Telegram왓츠앱WhatsApp디스코드Discord이 책에서는 텔레그램을 기준으로 진행합니다. 텔레그램은 오픈클로 설정이 가장 간단하고, 봇 API가 안정적이며, 무료이고, PC와 모바일 모두에서 쓸 수 있다는 장점이 많은 메신저입니다. 다만 텔레그램을 연동하려면 봇 토큰이 필요합니다. 텔레그램에서 봇을 만들고 토큰을 받는 방법부터 알아보겠습니다.01 스마트폰에 텔레그램 앱을 설치하고 실행하세요. 검색창에 ‘@BotFather’를 검색합니다.02 BotFather에게 /newbot이라고 메시지를 보냅니다. 봇 이름과 봇 사용자명을 정해줍니다. 저는 봇 이름을 goldenrabbitbot으로 하겠습니다. 봇 사용자명은 반드시 ‘bot’으로 끝나야 하며, 전 세계에서 유일한 이름을 정해야 합니다. 겹치지 않는 이름을 찾아보세요.이름을 정하면 BotFather가 봇 토큰을 알려줍니다. 이 토큰을 복사하세요. 봇 토큰도 API 키처럼 다른 사람에게 공유하면 안 됩니다. 토큰이 유출되면 BotFather에서 /revoke 명령으로 폐기하고 새로 발급받으세요.03 온보딩 마법사로 돌아갑니다. 복사한 토큰을 붙여넣으면 됩니다.검색 제공자 선택하기토큰을 입력하고 나면 검색 제공자를 묻습니다. 원하는 검색 엔진을 선택하세요. 잘 모르겠다면 [Skip for now]를 선택해 넘어가도 괜찮습니다.나만 명령할 수 있도록 설정하기allowFrom을 묻습니다. 이건 ‘누가 이 봇을 쓸 수 있게 할 건가요?’라는 질문입니다. 이걸 설정해야 아무나 봇에게 명령을 내릴 수 없습니다.01 allowFrom에는 본인의 텔레그램 user ID를 입력하면 됩니다. 텔레그램에서 @userinfobot 검색해서 대화를 시작합니다. /start를 보내면 본인의 user ID를 알려줍니다.02 온보딩 마법사로 돌아가 user ID를 붙여넣습니다. 이제 여러분의 오픈클로는 여러분 본인만 사용할 수 있는 겁니다.추가 기능 설정하기이제 오픈클로 설정이 거의 끝났습니다. 이어서 설명하는 추가 기능 설정은 생략해도 됩니다. 나중에 필요할 때 언제든지 설정할 수 있습니다. 첫 번째는 오픈클로에게 유용한 스킬을 달아주는 과정입니다. 스킬은 오픈클로에게 특정 작업에 대한 설명과 수행 방법을 적어둔 설명서 같은 겁니다.01 당장 스킬을 설정하고 싶지 않다면 [no]를 선택해서 지나갑니다. 하지만 몇몇 자주 사용하는 스킬은 미리 설정해두는 것을 추천합니다. [yes ➝ npm]을 선택하면 사용할 수 있는 스킬 목록이 나타납니다.02 저는 구글 워크스페이스 작업을 위한 스킬을 추가해보겠습니다. gog, himalaya를 선택하세요. 나중에 필요한 스킬을 얼마든지 설치하고 활용할 수 있습니다.03 스킬 설치가 끝났다면 API 키와 훅 사용 여부를 물어봅니다. 위치 정보 조회나 음성 생성 등을 위한 기능이지만 나중에도 설정할 수 있기 때문에 전부 [No]를 입력하여 넘어가겠습니다. ‘Enable Hooks?’는 훅 기능을 사용할 것인지 선택하는 옵션입니다. 이것도 [Skip for now]를 선택하고 나중에 필요할 때 활성화하겠습니다.환경 변수 설정하기온보딩에서 입력한 API 키는 ~/.openclaw/openclaw.json 파일에 저장합니다. 그대로 사용할 수도 있지만, 이 방식은 파일을 열어보면 키가 그대로 보여서 보안이 취약할 수 있습니다. 더 안전한 방법이 있습니다. 환경 변수에 키를 저장해두는 겁니다. 환경 변수는 컴퓨터가 기억하는 메모 같은 겁니다. API 키처럼 민감한 정보를 저장해두기 좋습니다. macOS는 ~/.zshrc 파일에서 환경 변수를 관리할 수 있습니다.01 먼저 터미널을 열고, 다음 명령어를 입력하세요.```echo 'export OPENAI_API_KEY="sk-proj-여러분의키"' >> ~/.zshrc```echo 명령어는 따옴표 안의 내용을 그대로 출력하는 명령어입니다. export는 환경 변수를 추가하는 명령어입니다. 환경 변수는 다음과 같은 형태로 입력합니다. 우리는 GPT의 API 키를 사용하니 환경 변수 이름은 OPENAI_API_KEY이고, 큰따옴표 사이에는 이전에 복사한 키가 들어갑니다.환경 변수 이름="값">>는 출력한 내용을 특정 파일에 추가하라는 뜻입니다. 그래서 따옴표 안에 있는 ‘export...’ 명령어를 ~/.zshrc 파일 맨 끝에 추가합니다.02 환경 변수를 변경해도 터미널에 바로 적용되는 것은 아닙니다. 새로운 터미널을 시작해야 적용됩니다. 설정을 바로 적용하려면 이 명령어를 실행하세요.```source ~/.zshrc```이렇게 하면 ~/.zshrc 파일에 export OPENAI_API_KEY="..." 한 줄이 추가됩니다. 터미널이 실행될 때마다 이 파일을 읽어서 환경 변수를 설정합니다. 오픈클로는 실행될 때 OPENAI_API_KEY라는 이름을 찾아서 자동으로 사용합니다. 오픈클로는 API 키가 필요할 때 환경 변수를 먼저 찾아보고, 없다면 설정 파일인 openclaw.json에서 찾아 사용합니다. 게이트웨이 시작하고 메시지 보내기온보딩 마법사가 어떤 환경에서 오픈클로 봇을 실행할지 물어봅니다. 오픈클로를 실행할 모든 준비가 끝난 겁니다.01 오픈클로는 기본적으로 두 가지 실행 환경을 제공합니다. 터미널에서 대화하려면 [Hatch in TUI]를 선택합니다. 터미널이 어렵다면 [Open the web UI]를 선택해 웹브라우저에서 오픈클로와 대화할 수 있습니다.02 종종 온보딩 과정 중에 작업이 꼬이는 경우 게이트웨이가 안 켜지는 경우가 있습니다. 이럴 때는 다음 명령어를 이용해서 게이트웨이를 수동으로 실행합니다.```openclaw gateway run --port 18789```화면에 이런 식으로 나오면 성공입니다.```[OpenClaw Gateway] Starting...[Agent] Ready[Gateway] Listening on port 18789```03 터미널로 오픈클로를 실행했다고 브라우저에서 사용하지 못하는 건 아닙니다. 언제든지 브라우저 대시보드를 열어볼 수 있습니다. 다음 명령어를 실행하세요.```openclaw dashboard```또는 브라우저에서 직접 http://127.0.0.1:18789로 접속해도 됩니다. 다른 포트번호로 실행했다면 18789 대신 실행한 포트 번호를 입력하면 됩니다. 이렇게 터미널이나 웹브라우저에서 오픈클로와 대화해도 좋습니다. 하지만 AI 비서를 어디에서나 활용하려면 스마트폰으로 대화하는 게 좋겠죠. 터미널이나 웹브라우저는 채널 연결이 원활하지 않을 때만 사용하겠습니다.04 이제 텔레그램 앱을 열고 대화를 시작해보겠습니다. BotFather가 텔레그램 봇 토큰과 함께 채팅방 링크를 주었을 겁니다. 링크에 접속하면 새로운 대화가 열립니다. 여기서 우리가 방금 만든 봇과 대화할 수 있습니다. 먼저 나를 무엇으로 부를지 알려주고, AI 비서에게 이름과 역할을 만들어주세요.05 답장이 왔다면 설정은 잘 끝난 겁니다. 우리의 AI 비서가 무사히 첫 출근을 했네요. 간단하게 첫 업무를 시킬 겸, 다음에 또 설치할 일이 생길 수 있으니 오픈클로 설정 과정을 정리해달라고 말해보겠습니다.[나]다음에 또 설치할 일이 있을 수 있으니까, 오픈클로 설정 과정을 처음부터 끝까지 정리해줘.[/나]이 정도면 기본은 된 겁니다. 시시하다고 생각하나요? 아직 워밍업입니다. 오픈클로의 진짜 능력은 파일을 읽고 쓰고, 웹을 검색하고, 스케줄에 맞춰 자동으로 일하는 데 있습니다. 여러분은 24시간 365일 컴퓨터에 상주하는 AI 비서를 얻었습니다. 다음 챕터부터 차근차근 배워볼 겁니다.---이렇게 오픈클로 설정이 끝났습니다. 나중에 새로운 컴퓨터에 다시 설치하거나 새로운 봇을 만든다면 비슷한 과정을 반복할 겁니다. 지금은 어려워도 나중에는 순식간에 새로운 봇을 만들어낼 수 있습니다. 혹시 설치가 잘 안 됐다면 도서의 문제가 생겼을 때를 참고해주세요.
[디자인 클래스 02] 캔바 쉽고 빠르게 배우기
📅 2026년 5월 15일 · 👁 24
[디자인 클래스 02] 캔바 쉽고 빠르게 배우기캔바는 기존에 사용하던 파워포인트, 포토샵 등 PC 설치 프로그램과는 다르게 인터넷에 접속해서 사용할 수 있는 서비스입니다. 그래서 메뉴와 기능들의 위치가 이전 프로그램과 다르고, 또한 간소화되어 있기 때문에 오히려 어려워하는 분들이 많습니다. [Chapter 02] 캔바 빠르게 배우기에서는 가장 기본적인 캔바 메인 화면과 캔바 작업 화면의 인터페이스를 하나하나 살펴보겠습니다. 지금 바로 배워봅시다.캔바 메인 화면 살펴보기먼저 캔바 메인 화면을 보면서 기본 사용 방법을 알아보겠습니다. 기본 사용법 이외에 추가적인 기능은 실습하면서 설명하겠습니다. 화면의 기능을 천천히 살펴보면서 어떤 것을 할 수 있는지 확인해봅시다.➊ 홈 : 프로젝트나 템플릿 등 작업 중에 캔바의 메인 화면으로 이동할 수 있는 버튼입니다. [홈] 버튼과 마찬가지로 오른쪽 위에 있는 [Canva] 로고를 눌러도 메인 화면으로 이동할 수 있습니다.➋ 프로젝트 : 지금까지 만든 모든 프로젝트를 확인할 수 있습니다. 이 공간에서는 다양한 작업물을 [전체], [폴더], [디자인], [이미지] 등으로 나누어 관리할 수 있습니다. 특히 [폴더]에 프로젝트별로 파일을 정리해두면, 나중에 작업할 때 훨씬 빠르고 편리하게 찾을 수 있습니다.➌ 템플릿 : 캔바에서 제공하는 모든 템플릿을 한눈에 볼 수 있습니다. 프레젠테이션, 포스터, 이력서 등 원하는 템플릿을 카테고리별로 선택하여 볼 수 있습니다. [템플릿]을 클릭한 후에, 왼쪽 사이드바 맨 위에 있는 []를 누르면 템플릿 관련 메뉴가 보입니다. 여기에는 [사진], [그래픽] 등 템플릿에 사용할 수 있는 요소를 찾아볼 수 있습니다. 그 아래에 있는 [크리에이터]는 전 세계 수천 명의 캔바 크리에이터를 쉽게 찾아 팔로우할 수 있습니다. 2025년 기준, 우리나라에서도 약 150명의 캔바 크리에이터가 활동하며 한국 스타일의 다양한 디자인을 만들어 제공합니다.❹ 브랜드 센터 : 회사에서 팀 간 브랜드 디자인을 일관되게 관리하고 모든 구성원이 동일한 스타일로 작업할 수 있도록 돕는 캔바의 ‘본부’와 같은 곳입니다. 로고, 색상, 글꼴 등을 미리 지정해 브랜드의 정체성을 유지할 수 있습니다. 특히 글꼴, 로고, 템플릿을 통일해두면 기업 내 디자인 자산을 체계적으로 관리할 수 있어 매우 유용합니다.➎ Canva AI : 텍스트를 입력하면 디자인, 이미지, Docs, 코드 등을 생성을 할 수 있는 탭입니다.➏ 알림 : 다른 사람이 디자인에 댓글을 남기거나 편집 권한을 줘서 변경 사항이 있을 때, 또는 공유된 디자인에서 피드백을 받을 때 발생합니다. 캔바에 접속하자마자 바로 확인할 수 있어 받은 의견을 빠르고 효율적으로 검토할 수 있습니다.➐ 디자인 만들기 : 프레젠테이션, SNS, 동영상, 인쇄 등 원하는 디자인 유형을 선택하고 크기와 형태를 지정하여 빠르게 디자인을 시작할 수 있는 기본 탭입니다➑ 최근 디자인 : 가장 최근에 작업한 프로젝트를 한눈에 확인할 수 있는 공간입니다. 이전에 진행하던 작업으로 빠르게 이동할 수 있습니다.➒ 업로드 : 기존에 사용하던 파일을 캔바에 업로드해 새로운 프로젝트로 활용할 수 있는 탭입니다. 예를 들어 파워포인트로 만든 기존 디자인을 그대로 가져와 캔바에서 수정하고 보완할 수 있습니다. 지원되는 종류와 파일 형식은 다음과 같습니다.캔바 작업 화면 살펴보기캔바에서 디자인을 제작할 때 보이는 캔바 작업 화면에서 주요 기능과 위치별 사용 방법에 대해 간단히 알아보겠습니다.➊ 파일 : 디자인의 전체 설정과 관리 기능이 모여 있는 메뉴입니다. 문서 프로그램의 ‘파일 메뉴’와 비슷하며 저장이나 복사 같은 기본 기능 이외에 버전 기록 확인, 슬라이드 설정 등을 실행할 수 있습니다.❷ 크기 조정 : 작업 중인 디자인을 다른 크기로 변경하거나 복사할 수 있는 기능입니다. 예를 들어 정사각형 모양의 카드뉴스를 포스터로 만들 때 유용합니다.❸ 편집 중 : 프로젝트의 작업 모드를 확인할 수 있습니다. [편집 중], [댓글 달기], [보기 모드] 3가지 모드로 설정할 수 있습니다.❹ 제목 : 디자인의 제목을 설정하는 영역입니다. 자동 저장되니, 파일 이름처럼 명확하게 설정하면 나중에 찾아보기 쉽습니다.❺ 팀원 공유 : 같은 팀원을 초대하여 실시간으로 공동 작업을 할 수 있는 기능입니다. 편집 권한도 설정할 수 있어 팀원들과 함께 효율적으로 작업할 수 있습니다.❻ 분석 : 공유한 디자인의 반응을 데이터로 확인할 수 있는 기능입니다. 링크를 통한 총 방문자 수, 방문 횟수, 디자인에 머무른 평균 시간, 평균 방문 페이지 수 등 자세한 데이터를 수치로 확인할 수 있습니다.➐ 공유 : 디자인을 링크로 공유하거나 파일로 다운로드할 수 있는 기능입니다. 파워포인트로 저장하거나 웹사이트로 바로 게시할 수 있으며, 템플릿 링크를 생성해 다른 사용자가 같은 디자인을 활용하도록 공유할 수도 있습니다.❽ 기능 메뉴 : 디자인 작업에 필요한 모든 기능이 모여 있는 영역입니다. [디자인], [요소], [텍스트], [브랜드 센터], [업로드 항목], [도구], [프로젝트], [앱]으로 나누어져 있습니다.캔바 기본 단축키 알아보기캔바에서 사용할 수 있는 단축키를 소개하고자 합니다. 단축키를 미리 익혀두면 훨씬 빠르게 디자인 작업을 할 수 있습니다.캔바 기본 단축키 16개캔바에서는 복사, 붙여넣기, 실행 취소, 정렬처럼 자주 사용하는 기본 작업을 단축키로 빠르게 처리할 수 있습니다. 몇 가지 단축키만 익혀도 작업 속도가 눈에 띄게 빨라지고, 반복 작업에 드는 시간도 줄일 수 있습니다. 다른 프로그램의 단축키와 유사해 금방 익숙해질 수 있을 겁니다.요소 삽입 단축키(TRCLS)마우스를 움직이지 않고도 기본 요소를 추가할 수 있는 단축키가 있습니다. 예를 들어 [T]를 누르면 텍스트 상자가, [R]을 누르면 사각형, [C]는 원, [L]은 선, [S]는 메모지를 추가할 수 있습니다. 이 단축키들은 각각 Text, Rectangle, Circle, Line, Sticky note의 앞 글자에서 따온 것으로, 영어 단어의 첫 글자를 기억하면 쉽게 사용할 수 있습니다.요소 편집 단축키캔바에서는 요소를 정교하게 배치하거나 반복해서 복사할 때 유용한 단축키가 있습니다. 드래그 복사, 수직·수평 정렬 복사, 빠른 복제 기능을 활용하면 작업 효율을 크게 높일 수 있습니다.프레젠테이션 단축키발표 중 캔바를 더 자유롭게 활용하고 싶다면 보기 전환과 타이머 설정 단축키를 익혀두면 좋습니다. 특히 숫자 키보드로 설정하는 타이머 기능은 시간제한이 있는 발표나 수업에서 유용합니다.
[클로드 01] 엑셀에 클로드 추가 기능 설치하기
📅 2026년 5월 13일 · 👁 175
엑셀이나 파워포인트 같은 마이크로소프트 오피스 프로그램에는 추가 기능이 있습니다. 추가 기능은 기본 프로그램에 새로운 능력을 덧붙이는 확장 도구입니다. 엑셀에 클로드 추가 기능을 설치하면 엑셀 안에서 바로 클로드에게 도움을 요청할 수 있습니다. 이런 추가 기능도 커넥터와 비슷한 방식으로 동작합니다. 다만, 엑셀과 파워포인트에서 추가 기능을 사용하려면 클로드 프로 이상의 요금제와 마이크로소프트 365 구독이 필요합니다. 무료 버전의 엑셀, 파워포인트에서는 추가 기능을 설치할 수 없는 점을 미리 참고하세요.01단계 먼저 엑셀을 실행합니다. 화면 위쪽에 있는 리본 메뉴에서 [추가 기능]을 클릭합니다. 검색창에 ‘Claude’를 입력해 검색한 다음, ‘Claude by Anthropic for Excel’을 찾아 [추가]를 누르세요.02단계 추가하면 리본 메뉴에 [Claude] 탭이 새로 나타납니다. 이 탭을 클릭하면 오른쪽에 클로드 패널이 열립니다. [Log in to Claude]를 눌러 클로드 계정으로 로그인하세요.03단계 이미 클로드에 로그인되어 있는 브라우저에서 실행한다면 바로 승인 화면이 나타납니다. [승인]을 눌러 진행하세요.04단계 다음으로 코드를 복사하라는 화면이 나옵니다. [Copy sign-in code]를 눌러 코드를 복사한 다음, 엑셀로 돌아와 클로드 패널에 복사한 코드를 붙여 넣으세요. 이어서 몇 가지 요구사항을 묻는 질문이 나오면 원하는 항목을 선택하거나 [Skip]을 눌러 넘어갑니다. 이제 엑셀 안에서 바로 클로드를 사용할 수 있습니다.05단계 간단하게 한 번 사용해볼까요? 다음 실습을 위한 샘플 데이터를 미리 준비해두면 좋을 것 같습니다. 가상의 쇼핑몰 회원 데이터를 만들어달라고 요청하겠습니다.06단계 클로드는 직접 엑셀 파일 편집 작업을 수행해야 할 때 권한 부여를 요청합니다. 저는 [Always allow]를 선택해 다음에는 일일이 권한을 승인할 필요가 없습니다. 물론 중요한 파일이라면 [Allow once]를 선택하는 게 좋겠죠.참고로 권한 승인 모드는 언제든지 바꿀 수 있습니다. 클로드 입력창에 있는 [▷▷] 버튼을 눌러 변경하세요.07단계 결과를 확인해보겠습니다. 클로드가 셀에 값을 자동으로 채워 넣었습니다. 심지어 서식도 보기 좋게 정리해줬네요.
[n8n 02] n8n 워크플로 구조 알아보기
📅 2026년 5월 11일 · 👁 140
n8n을 본격적으로 사용하기 전에 전체 구조를 먼저 이해해두면, 워크플로를 설계하거나 문제를 해결할 때 훨씬 수월합니다. 여기서는 앞에서 간략히 언급했던 워크플로와 노드라는 개념이 무엇인지, 그리고 이를 실제로 다룰 때 화면의 어떤 부분에서 어떤 설정을 조작하는지까지 전체적인 구조를 살펴보겠습니다.[01] 워크플로란?워크플로는 n8n에서 자동화 프로세스를 구성하는 기본 단위입니다. 하나의 워크플로는 여러 개의 작업 단계를 순차적으로 연결하여 하나의 자동화 흐름을 만드는 것으로, 각 단계는 하나의 노드로 표현합니다.워크플로는 보통 트리거 노드부터 시작됩니다. 트리거는 워크플로를 실행하는 조건이나 신호로, ‘매일 아침 9시에 실행’, ‘웹훅이 호출되었을 때 실행’, ‘특정 이메일이 도착했을 때 실행’ 등이 여기에 해당합니다. 트리거로 시작된 워크플로는 이후 데이터를 가져오거나 외부 서비스를 호출하는 노드로 이어지고, 마지막에는 메시지를 전송하거나 파일로 저장 또는 결과를 기록하는 등의 마무리 작업을 수행하며 종료됩니다.한 번 만든 워크플로는 계속해서 재사용할 수 있고 각 워크플로는 서로 독립적으로 작동하므로 여러 개를 만들어도 충돌 없이 운용할 수 있습니다. 따라서 필요한 자동화 작업을 목적별로 나누어 각 워크플로로 설계하는 것이 좋습니다.<한 걸음 더!> 샘플 워크플로 참고하기워크플로를 처음부터 만드는 것이 어렵게 느껴진다면 n8n에서 제공하는 워크플로 템플릿Templates을 활용할 수도 있습니다. 화면 왼쪽 아래에 상자 모양의 [Templates] 버튼을 클릭하면 n8n 공식 템플릿 페이지로 이동할 수 있습니다.n8n 공식 템플릿 페이지는 4,000개가 넘는 검증된 워크플로 템플릿을 제공하며, 버튼 한 번으로 자신의 n8n 환경에 그대로 복사해올 수 있습니다. 각 템플릿은 워크플로의 전체 구조와 모든 노드 설정을 포함하기 때문에 템플릿을 열어보면 구조를 분석하고 동작 방식을 이해할 수 있습니다. 또한 일부 템플릿에는 노드마다 사용법이나 설명이 메모 형태로 포함되어 있어 처음 접하는 사용자도 각 노드가 어떤 역할을 하는지 쉽게 이해할 수 있습니다. 템플릿은 그대로 실행해 활용할 수도 있고, 필요한 부분만 수정해 자신의 업무 흐름에 맞게 커스터마이징할 수도 있습니다.인기 있는 템플릿으로는 Gmail에 새 메일이 도착하면 자동으로 슬랙 채널에 알림을 보내는 워크플로(Auto-Categorize Gmail Emails with AI and Send Prioritized Slack Alerts)나 줌 회의 내용을 AI로 요약해서 참석자들에게 이메일로 전송하는 워크플로(Zoom AI Meeting Assistant creates mail summary, ClickUp tasks and follow-up call)가 있습니다. 이런 템플릿을 살펴보면 해당 템플릿을 사용하지 않더라도 워크플로 설계에 대한 감을 익힐 수 있습니다. 또, 업무 자동화 아이디어도 얻을 수도 있기 때문에 참고용으로 여러 템플릿을 둘러보는 것도 추천합니다.[02] 노드와 연결워크플로의 각 단계는 노드라고 불리는 단위 작업으로 구성됩니다. 각 노드는 특정한 기능을 담당하는 작은 프로그램과 같습니다. n8n에서 제공하는 다양한 종류의 노드들을 조합하면 높은 차원의 흐름을 만들 수 있습니다. 노드는 역할에 따라 크게 3가지로 나뉩니다.트리거 노드: 워크플로를 시작하는 조건이나 신호로직 노드: 흐름을 제어하거나 데이터를 가공액션 노드: 실제 작업을 수행워크플로는 트리거 노드가 설정된 조건에 따라 시작되고, 이어서 로직 노드가 데이터를 처리한 뒤 액션 노드가 필요한 작업을 수행하는 방식으로 진행됩니다.여기서는 편의상 3가지 노드로 분류했지만, 노드의 종류는 매우 다양합니다. n8n에서 공식적으로 제공하는 노드 외에도 전 세계 사용자들이 만든 커뮤니티 노드도 사용할 수 있습니다. 그리고 이런 액션 노드들 사이에 조건을 나누거나 반복을 설정하는 로직 노드를 추가할 수 있습니다. 로직 노드는 IF, Switch, Wait, Loop와 같이 워크플로에 복잡한 조건을 만들거나 데이터를 변환하는 작업을 합니다.개별 노드를 더 자세히 살펴볼까요? 각 노드는 기본적으로 입력 포트Input와 출력 포트Output를 가집니다. 입력 포트에서 이전 노드의 데이터를 받아 작업을 수행한 뒤 출력 포트로 결과를 다음 노드에 전달합니다.입력 포트와 출력 포트는 캔버스의 노드에서 다음과 같은 형태로 표시됩니다.노드 출력 포트 옆에 나타나는 ➊ [+] 버튼을 클릭해 새로운 노드를 추가하기 때문에 추가된 노드는 자동으로 앞선 노드와 화살표로 연결됩니다. 노드 간 연결선 위에 마우스를 올리면 ➋ [+]와 ➌ [휴지통] 아이콘이 나타나며, 노드 사이에 새 노드를 추가하거나 연결을 삭제할 수 있습니다.떨어진 노드를 연결하고 싶다면 노드의 출력 포트를 클릭한 채로 다음 노드로 드래그 앤 드롭하면 됩니다.이와 같이 연결선을 따라 데이터가 이전 노드에서 다음 노드로 전달되며, 각 노드는 전달받은 데이터를 기반으로 설정된 매개변수에 따라 작업을 수행합니다. 매개변수란 이 노드에서 어떤 작업을 수행할지를 결정하는 주요 설정값입니다. 요청할 URL, 사용할 계정, 반복 횟수, 필터 조건 등이 여기에 포함됩니다.[03] 워크플로 구조 이해하기기본적으로 n8n에서는 노드들이 연결된 순서대로 하나씩 실행됩니다. 앞선 노드가 실행되고, 그 결과가 다음 노드로 전달되면 그 노드가 이어서 작동하는 식입니다. 예를 들어 ‘구글 시트에서 데이터를 불러오는 노드’ 다음에 ‘슬랙으로 전송하는 노드’를 연결하면 먼저 시트에서 데이터를 읽고 나서 그 값을 가지고 슬랙 메시지를 보내는 순서로 실행됩니다.노드가 나열된 위치를 기반으로 실행 순서를 보면 기본적으로 노드들이 왼쪽에서 오른쪽, 위에서 아래 순서로 실행됩니다. 즉 먼저 연결된 노드가 먼저 실행되고, 같은 시점에 여러 노드가 연결되어 있으면 위에 있는 노드가 먼저, 그다음 아래쪽 노드가 실행됩니다.중간에 IF 노드나 Switch 노드와 같은 특수 노드를 사용하면 조건에 따라 두 갈래로 나뉘는 흐름을 만들 수도 있습니다. 예를 들어 조건이 참일 때만 슬랙에 알림을 보내고, 거짓이면 이메일로 보고서를 보내는 흐름을 만드는 것이죠.또는 오류가 발생했을 때 별도의 경로를 구성하는 방식에서도 분기를 만들 수 있습니다. n8n에서는 어떤 노드에서 오류가 발생하면 기본적으로 그 지점에서 워크플로가 멈춥니다. 하지만 오류 상황에 따라 별도의 경로를 구성해두면 문제가 생겼을 때 다른 노드로 흐름을 전환하거나, 관리자에게 알림을 보내는 등의 대응을 할 수 있습니다. 조건에 따라 분기되는 워크플로는 뒤에서 다시 한번 다루겠습니다.[04] 워크플로 실행 및 결과 확인하기완성된 워크플로를 실제로 작동시킬 때는 해당 워크플로 캔버스 오른쪽 위에 있는 [Inactive] 버튼을 눌러서 활성화하면 됩니다. 이렇게 활성화하면 실제 시작 노드로 설정되어 있는 조건에 따라서 전체 워크플로가 동작합니다. 활성화된 워크플로는 다시 비활성하지 않으면 계속 작동하기 때문에 사용하지 않을 때는 반드시 다시 버튼을 클릭하여 비활성화합니다.워크플로 전체를 테스트용으로 한 번 실행할 때는 캔버스 아래의 [Execute workflow]를 클릭합니다. 이 버튼은 테스트용 시작 버튼이기 때문에 시작 노드가 어떤 트리거로 선택되어 있는지와 관계없이 현재 시점에서 워크플로가 바로 실행됩니다.워크플로 전체를 테스트하지 않고 하나의 개별 노드를 단독으로 실행해보는 것도 가능합니다. 노드를 더블클릭하여 설정 패널을 열고 상단에 있는 [Execute step] 버튼을 누르면 그 노드만 따로 실행할 수 있습니다.워크플로가 실행되고 나면 각 노드의 입력값과 출력 결과를 하나씩 확인할 수 있습니다. 앞에서 설명한 것처럼 노드 설정 패널의 왼쪽에는 Input 탭이, 오른쪽에는 Output 탭이 나타납니다. 이 탭들을 통해 어떤 데이터가 들어왔고 어떤 결과가 나갔는지를 시각적으로 확인할 수 있습니다.n8n의 모든 데이터는 기본적으로 JSON 형식으로 처리됩니다. 노드 하나가 실행되면 그 노드의 출력 결과가 JSON 형식으로 만들어지고, 다음 노드의 입력으로 자동 전달됩니다.데이터는 단순한 텍스트나 숫자뿐 아니라, 배열처럼 여러 항목을 가진 구조일 수도 있습니다. 예를 들어 구글 시트에서 여러 줄의 데이터를 가져오면, 각 줄이 하나의 JSON 객체가 되고, 이 객체들이 모여 배열 형태로 전달됩니다. 다음 노드에서는 이 배열을 반복 처리하거나, 조건에 따라 특정 항목만 골라내는 작업을 할 수 있습니다.모든 워크플로 실행 결과는 자동으로 기록됩니다. 캔버스 상단의 [Executions] 탭을 클릭하면 지금까지 실행된 모든 기록이 시간순으로 정리되어 있습니다. 각 항목을 클릭하면 해당 실행이 성공했는지 실패했는지, 어느 노드에서 오류가 났는지, 얼마나 시간이 걸렸는지를 하나씩 살펴볼 수 있습니다. 특정 노드에서 문제가 생겼다면, 노드를 클릭했을 때 오류 메시지와 오류 발생 위치가 함께 표시됩니다. 이 정보를 바탕으로 어떤 설정이 잘못되었는지, 자료 형식에 문제가 있는 건지 등을 파악해 수정할 수 있습니다. 최신 버전의 n8n에는 워크플로 창 상단에 Evaluations라는 기능이 새로 추가되었습니다. 이 메뉴는 AI를 사용하는 워크플로에 대해 테스트 데이터셋을 돌려보고 정답 대비 출력을 비교하여 메트릭을 산출하는 등 모델이나 노드의 성능을 실험적으로 평가할 수 있도록 만든 기능입니다.따라서 출력이 매번 달라질 수 있는 AI 기반 워크플로에 한해 이 Evaluations 기능이 필요하며, 결과가 일정한 단순 자동화 워크플로에서는 굳이 이 기능을 쓸 필요는 없습니다. 또한 최신 버전에 서만 제공하는 베타 기능이기 때문에 최신 버전으로 업데이트하지 않은 경우 이 기능을 사용할 수 없습니다.
[바이브 코딩 외주 돈 벌기 03] 클로드 코드로 고객이 요청한 자동화 프로그램 만들기
📅 2026년 5월 10일 · 👁 199
[바이브 코딩 외주 돈 벌기 03] 클로드 코드로 고객이 요청한 자동화 프로그램 만들기앞에서 네이버에 자동으로 로그인하는 프로그램을 만들어 보았습니다. 그런데 로그인 자체가 목적인 프로그램은 거의 없습니다. 로그인은 시작일 뿐이고, 진짜 가치는 로그인 이후에 무엇을 하느냐에 있습니다. 이번 프로젝트는 네이버 로그인 이후 메일함에 접근하여 필요한 정보를 수집하는 프로그램입니다. 앞에서 만든 로그인 자동화가 실제 외주 프로젝트에서 어떻게 활용되는지 직접 경험해 보겠습니다.[01] 고객 요구사항 확인하기쇼핑몰을 운영하는 고객으로부터 의뢰가 들어왔습니다. 여러 쇼핑몰을 동시에 운영하고 있는데, 주문이 들어올 때마다 네이버 메일로 알림이 옵니다. 문제는 하루에 들어오는 메일이 수십 통이고, 그중에서 주문 관련 메일만 골라내서 확인하는 작업을 매번 수동으로 해야 한다는 것입니다. 특정 기간 동안 들어온 메일 중에서 주문과 관련된 메일만 걸러내고, 해당 메일의 제목과 수신 날짜를 엑셀로 정리해달라는 요청이었습니다.대화를 나누면서 두 가지를 추가로 제안했습니다.주문 메일을 구분하는 키워드를 고객이 직접 설정할 수 있도록 하는 기능입니다. 쇼핑몰마다 메일 제목이 다르고, 향후 새로운 쇼핑몰이 추가되더라도 고객이 직접 키워드를 추가하면 별도의 수정 의뢰 없이 대응할 수 있기 때문입니다.메일을 확인할 기간도 직접 지정할 수 있게 하자고 제안했습니다. 오늘 하루치만 확인할 수도 있고, 일주일 치를 한꺼번에 확인할 수도 있으면 훨씬 유용할 것입니다.이처럼 고객이 요구하지 않았더라도 사용 편의를 고려해 한 발짝 더 나아가는 것이 단골 고객을 만드는 비결입니다. 최종적으로 정리한 요구사항은 다음과 같습니다.네이버 메일함에서 지정한 기간 동안 수신된 메일을 확인메일 제목에 특정 키워드가 포함된 메일만 필터링(키워드 직접 설정 가능)조건에 맞는 메일의 제목과 수신 날짜를 엑셀 파일로 저장[02] 현실적으로 견적 제안하기고객의 요구사항을 바탕으로 이번 프로젝트의 복잡도를 분석해 보겠습니다. 네이버 로그인 자동화는 이미 앞에서 만들어 본 경험이 있으니 익숙한 영역입니다. 여기에 메일함 이동, 메일 제목과 날짜 수집, 키워드 필터링, 엑셀 저장 기능이 추가됩니다. 로직 자체는 단순하지만 제법 신경써야할 것들이 있어 보입니다. 필요한 기능을 나열해 보면 다음과 같습니다.네이버 자동 로그인(Selenium)메일함 이동 및 메일 목록 크롤링날짜 기간 필터링키워드 매칭 필터링엑셀 파일 저장(openpyxl)GUI 화면 구성(아이디/비밀번호 입력, 키워드 설정, 기간 설정, 결과 테이블)작업 기간은 개발 2일, 테스트 및 디버깅 1일로 총 3일 정도 소요될 것으로 예상했습니다. 웹 자동화와 크롤링이 결합된 프로젝트이고, GUI까지 포함되어 있으므로 30만 원을 제안했습니다. 고객도 큰 이견 없이 수락하여 바로 작업에 들어가게 되었습니다.[03] 미리 생각하고 설계하기이번 프로그램에 필요한 것들을 정리해 보겠습니다. 프로그램의 목적은 네이버 메일함에서 주문 관련 메일을 찾아 엑셀로 저장하는 것입니다. 필요한 기능은 네 가지입니다.아이디와 비밀번호를 입력받을 수 있는 화면조회할 기간과 키워드를 설정할 수 있는 기능조건에 맞는 메일을 화면에서 바로 확인할 수 있는 테이블결과를 엑셀 파일로 저장하는 기능프로그램이 동작하는 순서도 생각해 보겠습니다.네이버에 로그인메일함 페이지로 이동메일 목록에서 각 메일의 제목과 수신 날짜를 수집사용자가 지정한 기간과 키워드 조건에 맞는 메일 추리기결과를 화면에 표시하고 엑셀 파일로 저장여기서 한 가지 팁이 있습니다. 메일함으로 이동하는 방법은 두 가지가 있습니다. 어떤 방법이 더 좋은 방법일까요?웹 화면에서 네이버 메일을 클릭해서 이동하는 방법인터넷 주소에 직접 네이버 메일함 주소로 이동하는 방법정답은 네이버 메일함 주소(URL)을 이용해 이동하는 것이 더 좋은 방법입니다. 그 이유는 프로그램을 제작할 때는 무조건 과정을 줄이고 단순화해야 오류가 없습니다. 때문에 URL 정보를 직접 제공해 이동하도록 하는 것이 과정도 단순하고 간단한 방법이기 때문에 권장합니다. 네이버 메일 메인 화면으로 이동한 다음 상단 주소창에 떠 있는 URL을 기록해둡니다.네이버 메일함 URL : https://mail.naver.com이제 앞에서 배운 것처럼 메일함에서 필요한 웹 요소 선택자를 확인하겠습니다. 네이버 메일함에서 확인해야 할 요소는 두 가지입니다. 메일 제목과 메일 수신 날짜입니다.메일 제목 요소 선택자 값css selector : #mail_list_wrap > ul > li.mail_item.mail-54752 > div > div.mail_inner > divXpath : //*[@id="mail_list_wrap"]/ul/li[1]/div/div[4]/div메일 수신 시간의 요소 선택자 값selector : #mail_list_wrap > ul > li.mail_item.mail-54752 > div > div.mail_date_wrap > spanXpath : //*[@id="mail_list_wrap"]/ul/li[1]/div/div[5]/span또한 여러 페이지에 걸쳐서 메일을 확인할 필요가 있을 수 있기 때문에 다음 페이지로 넘기는 버튼의 요소를 확인해야 합니다. 그러나 앞서서 메일함으로 이동할때 URL을 이용했던 것처럼 메일함의 페이지를 이동할때도 ULR을 이용할 수 있습니다. 메일함의 페이지를 넘겨보면 아래와 같이 URL이 변경됨을 확인할 수 있고 이를 통해서 규칙을 확인할 수 있습니다.1페이지 : https://mail.naver.com/v2/folders/-1?page=12페이지 : https://mail.naver.com/v2/folders/-1?page=2이번에는 이 정보를 이용하여 페이지를 넘기는걸 응용해보겠습니다. 이전 프로젝트에서는 로그인에 필요한 선택자 세 가지만 정리하면 됐지만, 이번에는 로그인 이후 수집해야 할 데이터의 선택자까지 추가로 확인해야 합니다. 프로그램이 복잡해질수록 prd.md에 정리해야 할 정보도 늘어나지만, 결국 하는 일은 같습니다. 필요한 요소의 위치를 찾아서 인공지능에게 알려주는 것입니다. 최종 내용을 정리해보겠습니다.프로그램 목적 : 네이버 메일함에서 주문 관련 메일을 키워드로 필터링하여 엑셀로 저장하는 프로그램필요 기능 GUI (아이디/비밀번호 입력, 기간 설정, 키워드 설정, 결과 테이블)네이버 자동 로그인메일 제목/날짜 크롤링키워드 필터링엑셀 파일 저장동작 순서 1. 네이버 로그인2. 메일함으로 이동 (https://mail.naver.com/)3. 메일 목록에서 제목과 수신 날짜 수집4. 지정 기간 + 키워드 조건으로 필터링5. 결과를 GUI 테이블에 표시하고 엑셀로 저장웹 요소 선택자 아이디 입력창Selector : #idXPath : //*[@id="id"]비밀번호 입력창Selector : #pwXPath : //*[@id="pw"]로그인 버튼Selector : #log\.loginXPath : //*[@id="log.login"]메일 제목Selector : #mail_list_wrap > ul > li > div > div.mail_inner > divXPath : //*[@id="mail_list_wrap"]/ul/li[1]/div/div[4]/div메일 수신 날짜Selector : #mail_list_wrap > ul > li > div > div.mail_date_wrap > spanXPath : //*[@id="mail_list_wrap"]/ul/li[1]/div/div[5]/span페이지네이션1페이지 : https://mail.naver.com/v2/folders/-1?page=12페이지 : https://mail.naver.com/v2/folders/-1?page=2[04] 개발 시작하기01 커서를 실행하고 새 프로젝트를 생성합니다. 폴더 이름은 Vibe_20260223_NaverMailAuto로 지정하겠습니다.02 설계한 내용을 바탕으로 prd.md 문서를 생성하겠습니다. 정리한 내용을 그대로 입력해 넣도록 합니다.03 클로드 코드를 실행하고 [Shift + Tab]을 눌러서 [Plan] 모드로 변경한뒤 prd.md 문서를 첨부하고 구현 계획을 수립해달라고 요청하겠습니다.[나] : 첨부 파일을 확인하여 네이버 메일 주문 확인 자동화 프로그램을 구현계획을 수립하고 개발을 진행해줘.04 클로드가 작성해준 계획을 확인해보겠습니다.[인공지능] :계획을 읽다가 매우 놀란 부분이 있었습니다. 사실 이 부분에서 오류가 발생할 것을 예상하고 있었습니다. 네이버 메일함에서 날짜를 보면 오늘 수신된 메일은 날짜가 아닌 "오전/오후 HH:MM" 형식으로 표시됩니다. 날짜 기반 필터링을 하려면 이 부분을 별도로 처리해야 하는데, 클로드가 이미 그것까지 고려하여 계획을 수립해 준 것입니다. 이런 부분을 미리 잡아주는 것이 [Plan] 모드를 활용하는 가장 큰 장점입니다.05 계획을 승인하고 개발을 진행한 후 main.py 를 직접 실행하여 가상환경을 구성하고 패키지를 설치하세요. 이 과정은 앞에서 다뤘기 때문에 내용은 생략하겠습니다. 모든 패키지를 설치하였으면 프로그램을 실행해보세요.프로그램이 성공적으로 실행되었습니다.[05] 테스트하고 디버깅하기01 필요 정보들을 입력하고 추출을 시작해보겠습니다.02 오늘 하루를 추출하고 있는데 너무 많은 과거 까지 확인하는 현상이 발견되었습니다. 오늘 하루 메일만 확인하는 거면 1페이지만 확인해도 충분한데 다른 페이지들까지 확인하고 있는 상황입니다.03 터미널에 있는 로그를 확인해보니 특별히 확인되는 현상이 없습니다. 클로드가 문제를 해결할 수 있도록 정보를 제공해보겠습니다.[나] : 프로그램을 실행해보니 현재 터미널에서는 문제 없이 진행되는 것으로 보이는데 내가 지정한 날짜는 오늘 하루 임에도 불구하고 여러 페이지를 확인하고 있어. 실제 오늘 수신된 메일은 1page에 전부 확인되거든. 원인을 확인해볼래?[인공지능] :결과를 보면 현재 프로그램은 전체 페이지를 크롤링 한 뒤 분류하는 로직으로 설계되어 있었습니다. 제가 명확하게 설계하지 않은 이유이기 때문에 기간을 넘어서면 크롤링을 중단하는 로직을 추가하여 보완하면 해결될 것 같습니다.04 이후 테스트를 하면서 다음과 같은 문제들을 수정했습니다.1page가 아닌 2page로 넘어가서 완료됨상태바가 진행 상태와 상관없이 표시됨제목에 ‘쿠팡’ 키워드가 포함된 메일은 1건인데 2건이 표시됨프로그램에서 제목이 줄바꿈 되어 제대로 표시 안됨 1줄로 표시 필요[06] 고객에게 프로그램 배포하기모든 기능이 정상 동작하는 것을 확인했으니 이제 실행 파일로 배포할 차례입니다. 클로드에게 배포를 요청하고 빌드가 완료되면 dist 폴더 안에 생성된 실행 파일을 압축해 고객에게 전달하면 됩니다.[나] : 가상 환경에 PyInstaller를 설치하고 실행 파일로 빌드해줘.[07] 프로젝트 회고하기이번 프로젝트의 전체 소요 시간을 정리해 보면 다음과 같습니다.고객 상담 및 요구사항 파악 : 20분견적 제안 및 협의 : 10분개발 설계 (선택자 확인 포함) : 40분초기 개발 : 40분테스트 및 디버깅 : 120분배포 및 안내 문서 작성 : 30분고객 전달 및 사용법 안내 : 40분총 소요 시간 : 약 5시간 (300분)30만 원짜리 프로젝트를 약 5시간 만에 완료했으니 시급으로 환산하면 약 6만 원입니다. 이번 프로젝트는 앞에서 만든 네이버 로그인 자동화의 확장이었습니다. 로그인까지는 동일하고, 그 이후에 메일함 이동, 데이터 수집, 필터링, 엑셀 저장이라는 단계가 추가된 구조입니다. 프로그램의 규모는 커졌지만 개발 흐름은 동일했습니다. 필요한 웹 요소의 선택자를 찾고, 동작 순서를 정리해서 인공지능에게 전달하고, 테스트하면서 문제를 잡아나가는 과정입니다.테스트 과정에서 인상적이었던 장면이 두 가지 있었습니다. 하나는 [Plan] 모드로 수립한 계획에서 클로드가 날짜 표시 형식 문제를 미리 잡아준 것입니다. 네이버 메일함에서 오늘 수신된 메일은 날짜가 아닌 시간으로 표시되는데, 이 부분을 사전에 고려하지 않으면 날짜 필터링에서 반드시 오류가 발생합니다. [Plan] 모드를 활용해 계획을 먼저 세우는 것이 단순히 절차가 아니라 실제로 오류를 예방하는 효과가 있다는 것을 다시 한번 확인한 순간이었습니다. 다른 하나는 크롤링 결과를 의심했다가 오히려 클로드가 맞았던 경험입니다. 키워드에 해당하는 메일이 1건이라고 생각했는데 프로그램은 2건이라고 표시했고, 실제로 대조해 보니 2건이 맞았습니다.이번 프로젝트에서 배운 점은 크게 두가지 입니다. 첫째, 고객이 요청하지 않은 기능을 추가하는 센스가 단가를 높인다는 점입니다. 이번 프로젝트에서 고객은 엑셀 저장만 요청했지만, GUI 테이블과 키워드 직접 설정 기능을 추가로 제안했습니다. 이런 작은 차이가 고객 만족도를 높이고, 재의뢰와 좋은 리뷰로 이어집니다. 둘째, 웹 자동화에서는 과정을 단순화하는 것이 정답이라는 점입니다. 메일함으로 이동할 때 화면에서 아이콘을 클릭하는 대신 URL로 직접 이동하는 것처럼, 같은 결과를 내더라도 단계를 줄일수록 오류가 줄어듭니다. 프로그램의 안정성은 복잡한 코드가 아니라 단순한 설계에서 나옵니다.
[바이브 코딩 외주 돈벌기 02] 견적 금액, 이렇게 정합니다
📅 2026년 5월 8일 · 👁 216
[바이브 코딩 외주 돈벌기 02] 견적 금액, 이렇게 정합니다외주 개발을 처음 시작하면 가장 막막한 것이 견적입니다. 도대체 얼마를 불러야 할지 감이 오지 않습니다. 너무 높게 부르면 계약이 안 될 것 같고, 너무 낮게 부르면 손해 보는 것 같습니다. 인터넷에서 시세를 검색해봐도 천차만별이라 기준을 잡기가 어렵습니다. 견적의 출발점은 시장 가격입니다. 플랫폼에서 나와 비슷한 서비스를 제공하는 사람이 얼마를 받고 있는지 먼저 파악하세요. 크몽이나 숨고에서 유사한 서비스를 검색하면 대략적인 시세를 알 수 있습니다.하지만 시장 가격만 보고 견적을 내면 문제가 생길 수 있습니다. 유사한 유형의 프로젝트는 존재할 수 있지만 같은 프로젝트는 단 한 가지도 없기 때문에 프로젝트마다 견적을 달리해야 합니다. 그래서 저는 시장 가격을 참고하되, 두 가지 질문을 추가로 던집니다.첫째, 나는 한 달에 부업으로 얼마를 벌고 싶은가?둘째, 이 프로젝트에 얼마나 시간이 걸릴지?이 두 가지를 조합하면 나만의 최저 기준선이 만들어집니다. 시장 가격이 적정해 보여도, 내 시간 대비 수익이 맞지 않으면 과감하게 조정하거나 거절할 수 있는 근거가 생깁니다.[노하우 01] 내가 벌고 싶은 금액에서 시작하기다양한 플랫폼을 통해 시장 가격을 파악했다면, 이제 나만의 기준선을 만들 차례입니다. 방법은 간단해요. 내가 한 달에 얼마를 벌고 싶은지, 그리고 일주일에 몇 시간을 투자할 수 있는지 정하면 됩니다. 이 두 숫자만 정하면 나의 시간당 단가가 나옵니다. 예를 들어 한 달에 100만 원을 벌고 싶고, 일주일에 10시간 정도 투자할 수 있다고 가정해봅시다. 그럼 이렇게 정리할 수 있습니다.한 달이면 약 40시간이고100만 원을 40시간으로 나누면?결론 : 시간당 2만 5천 원 = 나의 기준 단가 만약 한 달에 200만 원을 목표로 하고, 일주일에 15시간을 투자할 수 있다면 어떨까요? 한 달 60시간, 시간당 약 3만 3천 원이 됩니다. 반대로 한 달에 50만 원만 벌어도 만족스럽고, 일주일에 5시간밖에 못 쓴다면 시간당 2만 5천 원 정도가 되죠. 표로 정리하면 다음과 같습니다.이렇게 계산한 시간당 단가가 나만의 최저 기준선입니다. 프로젝트를 보고 대략 몇 시간이 걸릴지 예측한 뒤, 시간당 단가를 곱하면 내가 받아야 할 최소 금액이 나옵니다.실제 견적은 이 최저 기준선과 시장 가격을 함께 고려해 정합니다. 시장 가격이 내 기준선보다 높다면 시장 가격에 맞춰 제안하면 되고, 시장 가격이 내 기준선보다 낮다면 그 프로젝트는 시간 대비 수익이 맞지 않는다는 신호입니다. 이럴 때는 과감하게 거절하거나, 범위를 조정해 제안할 수 있습니다. 물론 처음에는 시간 예측이 잘 안 맞습니다. 5시간이면 될 줄 알았는데 10시간이 걸리기도 하고, 반대로 예상보다 훨씬 빨리 끝나기도 해요. 하지만 프로젝트를 몇 개 진행하다 보면 점점 감이 잡힙니다. 그래서 초반에는 시간 예측에 여유를 두는 게 좋습니다.[노하우 02] 프로젝트 복잡성으로 시간 예측하기시간당 단가를 정했으면, 이제 프로젝트에 얼마나 시간이 걸릴지 예측해야 합니다. 여기서 중요한 것은 기술적 난이도가 아닙니다. 복잡성입니다. 복잡성이란 다음을 고려합니다.프로젝트에 포함된 기능 개수처리해야 할 예외 상황 수고객과 주고받아야 할 커뮤니케이션의 양 등특히 기업 고객들의 경우 커뮤니케이션에 할애해야 하는 시간이 많이 필요합니다. 예를 들면 미팅을 요청하거나, 문서 작성을 요구하는 경우입니다. 이런 것들을 고려해야 나의 노력을 아끼면서도 만족스러운 수익을 낼 수 있습니다.그리고 복잡성이 높아질수록 반드시 고려할 것이 있습니다. 바로 오류입니다. 바이브 코딩은 AI가 코드를 작성하지만 AI가 만든 코드도 오류가 납니다. 그리고 프로젝트가 복잡해질수록 오류는 급격하게 늘어납니다. 기능이 하나일 때는 오류가 나도 원인을 금방 찾습니다. 그런데 기능이 다섯 개, 열 개로 늘어나면 오류가 어디서 발생했는지 찾는 것부터 쉽지 않습니다. 이 기능을 고쳤더니 저 기능이 안 되고, 저 기능을 고쳤더니 또 다른 문제가 생기는 상황이 벌어집니다. 복잡한 프로젝트일수록 개발 시간보다 디버깅 시간이 더 오래 걸리는 경우도 많습니다. 이 보이지 않는 시간들을 고려해서 견적을 내야 합니다. 그러면 어떻게 기준을 잡는 것이 좋을까요? 하나씩 알아보겠습니다.단순한 프로젝트 : 1시간에서 3시간 정도엑셀에서 특정 셀의 데이터를 다른 형식으로 변환하는 작업, 단순한 화면 조작 매크로, 정해진 웹 사이트에서 데이터 몇 개를 추출하는 작업 등이 여기에 해당합니다. 기능이 하나이고, 예외 상황도 거의 없으며, 고객의 요구사항도 명확합니다. 오류가 나더라도 원인 파악이 쉽고 수정도 빠릅니다. 스트레스가 적은 대신 경쟁자가 많고 단가가 낮습니다.중간 프로젝트 : 5시간에서 20시간 정도여러 페이지를 순회하며 데이터를 수집하는 크롤링, 외부 API와 연동해 데이터를 주고받는 프로그램, 여러 단계의 업무 프로세스를 자동화하는 매크로 등이 해당합니다. 기능이 여러 개이고, 예외 상황도 몇 가지 고려해야 합니다. 이 정도 복잡도부터는 오류 대응 시간을 넉넉히 잡아야 합니다. 개발은 3시간 만에 끝났는데 테스트하면서 발견된 오류를 잡는 데 2시간이 더 걸리는 일이 흔합니다. 수요가 많고 바이브 코딩만으로 충분히 수행할 수 있는 프로젝트라고 생각합니다. 이 책에서는 관련 예제를 중점으로 다룰 예정입니다.복잡한 프로젝트 : 20시간 이상데이터베이스가 필요한 시스템, 사용자 인터페이스가 있는 웹 애플리케이션, 여러 외부 서비스와 연동되는 복합 시스템, 다양한 프로세스의 업무 자동화 프로그램 등이 여기에 해당합니다. 기능도 많고, 예외 상황도 많고, 고객과의 커뮤니케이션도 여러 차례 필요합니다. 이 단계에서는 오류와의 싸움이 본격적으로 시작합니다. 여러 기능이 서로 연결되어 있기 때문에, 한 곳을 수정하면 다른 곳에서 문제가 터지기도 합니다. 어제까지 잘되던 기능이 오늘 갑자기 안 되는 상황도 생깁니다. 복잡한 프로젝트일수록 디버깅과 테스트에 전체 시간의 절반 이상이 소요된다고 생각하면 됩니다. 고소득을 위해서는 진입해야 하는 시장이지만 스트레스가 많고, 기술적 요구사항도 높습니다. 충분한 실전 경험을 쌓은 뒤 도전해야 합니다.[노하우 03] 수수료와 세금을 제외하면 대부분 65%가 내 수익!견적을 산정할 때 많은 분이 놓치는 부분이 있습니다. 바로 수수료와 세금입니다. 고객에게 10만 원을 받았다고 해서 10만 원이 내 통장에 들어오는 게 아닙니다. 여기서 플랫폼 수수료가 빠지고, 나중에 세금도 내야 합니다. 이걸 미리 계산하지 않으면 열심히 일하고도 최저임금도 못 받는 웃픈 상황이 발생할 수 있습니다. 먼저 플랫폼 수수료를 살펴봅시다. 크몽, 위시켓, 프리모아 등 대부분의 외주 플랫폼은 결제 금액의 10%에서 25% 정도를 수수료로 가져갑니다. 플랫폼마다 다르고, 같은 플랫폼이라도 등급이나 조건에 따라 달라지기도 합니다. 예를 들어 고객이 10만 원을 결제했는데 수수료가 20%라면, 실제로 내가 받는 돈은 8만 원입니다. 10시간 걸린 프로젝트라면 시간당 1만 원에서 시간당 8천 원으로 줄어드는 셈이죠.세금도 고려해야 합니다. 사업자를 내고 진행하는 경우 부가가치세와 종합소득세를 내야 합니다. 세율은 소득 구간에 따라 다르지만, 대략적으로 수입의 10%에서 20% 정도는 세금으로 나간다고 생각하면 됩니다. 물론 필요 경비를 공제받을 수 있고, 상황에 따라 달라지지만 대략적인 감각은 갖고 있어야 합니다.결국 고객이 결제한 금액에서 플랫폼 수수료 20%, 세금 15%가 빠진다고 가정하면 실제로 내 손에 들어오는 돈은 원래 금액의 65% 정도입니다. 10만 원짜리 프로젝트라면 실수령액은 약 6만 5천 원인 셈이죠. 이걸 모르고 견적을 짜면 내가 생각한 시간당 단가와 실제 시간당 수익 사이에 큰 괴리가 생깁니다. 그래서 저는 견적을 산정할 때 이런 비용을 미리 반영합니다. 내가 시간당 2만 5천 원을 받고 싶다면, 실제 견적은 그보다 30~40% 정도 높게 잡아야 합니다. 시간당 3만 5천 원 정도로 계산해야 수수료와 세금을 빼고 나서 2만 5천 원이 남는 겁니다. 처음에는 이게 번거롭게 느껴질 수 있지만, 한 번 계산해두면 그다음부터는 자연스럽게 적용됩니다.대표 플랫폼별 수수료는 다음 링크를 참고하세요. 구체적인 수수료 비율이나 비용은 정책에 따라 수시로 바뀔 수 있습니다.크몽 수수료 : bit.ly/4qF5259위시켓 수수료 : bit.ly/4r0Injx프리모아 수수료 : bit.ly/4qTNLEU단가 감각 실제 사례 이모저모아무리 시장 가격을 조사하고 시간당 단가를 계산해도, 처음에는 감이 잘 안 잡힙니다. 이 프로젝트에 시간이 얼마나 걸릴지, 이 정도 금액이 적정한지 판단하기 어렵거든요. 그래서 제가 실제로 진행했던 프로젝트들의 단가와 작업 내용을 공유하려고 합니다. 이 금액을 그대로 따라 하라는 게 아닙니다. 각 프로젝트가 어떤 로직으로 구성되어 있고, 어느 정도 복잡성을 가지며, 그에 따라 어떤 가격대가 형성되는지 감각을 익히라는 이유로 설명에 포함했습니다. 이 감각이 생기면 새로운 프로젝트를 봤을 때 ‘대략 어느 정도 시간이 걸리겠구나’, ‘얼마 정도를 불러야겠구나’ 하는 판단을 할 수 있습니다.[사례 01] 단축키 클릭 매크로 : 3만 원키보드 단축키를 누르면 미리 설정한 화면 좌표를 자동으로 클릭하는 프로그램입니다. F1, 1, 2 같은 키에 원하는 클릭 위치를 지정해두면, 반복적인 마우스 클릭 작업을 단축키 하나로 처리할 수 있습니다.[사례 02] 엑셀 데이터 입력 프로그램 : 10만 원엑셀에 정리된 데이터를 회사 전산 프로그램에 자동으로 입력하는 프로그램입니다. 수백 건의 데이터를 일일이 복사해서 붙여넣는 단순 반복 작업을 자동화합니다.[사례 03] PDF파일 데이터 엑셀변환 프로그램 : 15만 원PDF 파일에서 필요한 항목만 OCR로 추출해 엑셀에 정리하는 프로그램입니다. 수작업으로 하나씩 옮겨 적던 작업을 자동화해 대량의 PDF도 빠르게 처리할 수 있습니다.[사례 04] AI 영상 생성 자동화 프로그램 : 50만 원노트북 카메라로 촬영한 영상을 AI로 자동 변환하고, 지정한 모니터에서 바로 재생하는 프로그램입니다. 촬영부터 생성, 재생까지 전 과정이 자동화되어 별도 수작업 없이 동작합니다.[사례 05] 병원 예약 관리 시스템 : 100만 원소규모 병원을 위한 예약 관리 시스템입니다. 치료 종류별로 소요 시간을 설정하고, 같은 시간대에 의사나 장비가 중복 배정되지 않도록 자동으로 충돌을 방지합니다. 캘린더 기반 화면에서 예약 현황을 한눈에 확인하고 관리할 수 있습니다.[사례 06] 쇼핑몰 주문 현황 조회 자동화 및 문자 발송 시스템 : 140만 원여러 쇼핑몰의 주문 목록을 자동으로 수집하고, 택배사 API를 통해 배송 상태를 주기적으로 조회하는 시스템입니다. 배송 출발이나 배송 완료 시 고객에게 자동으로 문자를 발송하고, 모든 내역은 엑셀로 저장합니다. 주문량이 많은 셀러가 일일이 배송 현황을 확인하고 연락하는 수고를 덜어줍니다.[사례 07] 기업 업무 프로세스 자동화 시스템 : 440만 원여러 사이트에 흩어져 있는 데이터를 자동으로 수집하고, 신청 시스템에 입력하는 것까지 한 번에 처리하는 프로그램입니다. 기존에는 담당자가 사이트마다 돌아다니며 복사하고 붙여넣고, 신청 시스템에 하나씩 입력하느라 수천 건을 처리하는 데 며칠이 걸렸습니다. 이 프로그램으로 몇 시간 만에 끝낼 수 있게 되었습니다.제가 수행한 프로젝트들은 3만 원짜리 단순 매크로부터 수백만 원짜리 시스템까지 다양합니다. 반복 클릭을 줄여주는 간단한 프로그램도 있고, 며칠 걸리던 업무를 몇 시간으로 단축시키는 시스템도 있습니다. 고객이 얻는 가치가 클수록, 프로젝트가 복잡할수록 단가는 높아집니다. 견적에 정답은 없습니다. 같은 프로젝트라도 누가 하느냐에 따라, 어떤 상황이냐에 따라 금액이 달라질 수 있습니다. 중요한 건 시장 시세를 파악하고, 내가 납득할 수 있는 기준을 세우는 겁니다. 그 기준은 경험이 쌓이면서 자연스럽게 다듬어집니다.