FeaturedPost1

๋‚˜๋งŒ ์•Œ๊ณ  ์‹ถ์€ AI ํŠธ๋ Œ๋“œ? ์ „๋ฌธ๊ฐ€๋“ค์ด ๋ชฐ๋ž˜ ๊ตฌ๋…ํ•˜๋Š” AI ๋‰ด์Šค๋ ˆํ„ฐ ์ถ”์ฒœ 5

์—ฌ๋Ÿฌ๋ถ„, ํ˜น์‹œ ์ž๊ณ  ์ผ์–ด๋‚˜๋ฉด ๋ฐ”๋€Œ์–ด ์žˆ๋Š” AI ์„ธ์ƒ ๋•Œ๋ฌธ์— ๋ฉ€๋ฏธ ๋‚˜์ง€ ์•Š์œผ์„ธ์š”? ์—Š๊ทธ์ œ ๋ฐฐ์šด ๊ธฐ์ˆ ์ด ์˜ค๋Š˜์€ ๊ตฌ์‹์ด ๋˜์–ด๋ฒ„๋ฆฌ๋Š” ์ด ์†๋„... ์†”์งํžˆ ์ €๋„ ๊ฐ€๋”์€ "์•„, ๊ทธ๋ƒฅ ์…”ํ„ฐ ๋‚ด๋ฆฌ๊ณ  ์‹ถ๋‹ค"๋ผ๊ณ  ์ƒ๊ฐํ•  ๋•Œ๊ฐ€ ์žˆ๋‹ต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ ๊ฐ™์€ ํŠธ๋ Œ๋“œ ์„ธํ„ฐ๋“ค์ด ๊ทธ๋Ÿด ์ˆœ ์—†์ž–์•„์š”! ๊ทธ๋ž˜์„œ ์ค€๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ •๋ณด์˜ ํ™์ˆ˜ ์†์—์„œ ํ—ˆ์šฐ์ ๋Œ€๋Š” ๋Œ€์‹ , ์ „๋ฌธ๊ฐ€๋“ค์ด ํ•„ํ„ฐ๋งํ•ด ์ค€ ๋…ธ๋‹ค์ง€๋งŒ ์™์™ ๊ณจ๋ผ ๋จน๋Š” ๋ฐฉ๋ฒ•! ๋ฐ”๋กœ AI ์ „๋ฌธ๊ฐ€๋“ค์ด ์•„์นจ๋งˆ๋‹ค ๋ˆˆ ๋น„๋น„๋ฉฐ ์ฝ๋Š”๋‹ค๋Š” '์ง„์งœ' ๋‰ด์Šค๋ ˆํ„ฐ ๋ฆฌ์ŠคํŠธ์˜ˆ์š”. ๐Ÿ“Œ ์—๋””ํ„ฐ์˜ 3์ค„ ์š”์•ฝ ๊ธ€๋กœ๋ฒŒ ์‹ค๋ฆฌ์ฝ˜๋ฐธ๋ฆฌ ํŠธ๋ Œ๋“œ๋ถ€ํ„ฐ ์‚ฐ์—… ํ˜„์žฅ์˜ ์‹ค์ „ ์‚ฌ๋ก€๊นŒ์ง€ ํ•œ ๋ฒˆ์— ์ •๋ฆฌ! ์–ด๋ ค์šด ๋…ผ๋ฌธ๋„ ์ค‘ํ•™์ƒ์ด ์ดํ•ดํ•  ์ˆ˜ ์žˆ์„ ๋งŒํผ ์‰ฝ๊ฒŒ ํ’€์–ด์ฃผ๋Š” ์นœ์ ˆํ•จ์€ ๋ค. ๋‚˜์—๊ฒŒ ๋งž๋Š” ๋‰ด์Šค๋ ˆํ„ฐ ํ•˜๋‚˜๋งŒ ๊ณจ๋ผ๋„ 'AI ๋ฌธ๋งน' ํƒˆ์ถœ์€ ์‹œ๊ฐ„๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์™œ ๊ตณ์ด ๋‰ด์Šค๋ ˆํ„ฐ๋ฅผ ๊ตฌ๋…ํ•ด์•ผ ํ• ๊นŒ์š”? "๊ทธ๋ƒฅ ๊ตฌ๊ธ€๋งํ•˜๋ฉด ์•ˆ ๋ผ?"๋ผ๊ณ  ๋ฌผ์œผ์‹ ๋‹ค๋ฉด, ๋Œ€๋‹ตํ•ด ๋“œ๋ฆฌ๋Š” ๊ฒŒ ์ธ์ง€์ƒ์ •! ๋งค์ผ ์Ÿ์•„์ง€๋Š” ์ˆ˜์ฒœ ๊ฑด์˜ AI ๊ด€๋ จ ๊ธฐ์‚ฌ์™€ ๋…ผ๋ฌธ์„ ์šฐ๋ฆฌ๊ฐ€ ์ผ์ผ์ด ๋‹ค ์ฝ์„ ์ˆ˜๋Š” ์—†์ž–์•„์š”. ๋‰ด์Šค๋ ˆํ„ฐ๋Š” ์ „๋ฌธ๊ฐ€๋“ค์ด '์ด๊ฑด ์ง„์งœ ์ค‘์š”ํ•ด'๋ผ๊ณ  ๊ฒ€์ฆํ•œ ๊ฒƒ๋งŒ ๋ฉ”์ผํ•จ์œผ๋กœ ๋ฐฐ๋‹ฌํ•ด ์ค๋‹ˆ๋‹ค. ์ผ์ข…์˜ '์ธ์‚ฌ์ดํŠธ ๊ตฌ๋… ์„œ๋น„์Šค'์ธ ์…ˆ์ด์ฃ . ๋ฐ”์œ ์ถœ๊ทผ๊ธธ ์ง€ํ•˜์ฒ ์—์„œ 5๋ถ„๋งŒ ํˆฌ์žํ•ด๋„ ํšŒ์‚ฌ์—์„œ "์š”์ฆ˜ ๊ทธ ๊ธฐ์ˆ  ๋ดค์–ด?"๋ผ๋Š” ์งˆ๋ฌธ์— ์—ฌ์œ ๋กญ๊ฒŒ ๋ฏธ์†Œ ์ง€์„ ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ „๋ฌธ๊ฐ€๋“ค์ด ํ”ฝ(Pick)ํ•œ AI ๋‰ด์Šค๋ ˆํ„ฐ BEST 5 1. ๋ฏธ๋ผํด๋ ˆํ„ฐ : ์‹ค๋ฆฌ์ฝ˜๋ฐธ๋ฆฌ์˜ ์•„์นจ์„ ๋ฐฐ๋‹ฌํ•ฉ๋‹ˆ๋‹ค ๋งค์ผ๊ฒฝ์ œ์˜ ๋ฒ ํ…Œ๋ž‘ ๊ธฐ์ž๋“ค์ด ๋ณด๋‚ด์ฃผ๋Š” ์ด ๋ ˆํ„ฐ๋Š” ์ง„์งœ ์นœ์ ˆํ•ด์š”. ์ค‘ํ•™์ƒ์ด ์ฝ์–ด๋„ ์ดํ•ด๋  ์ •๋„๋กœ ์‰ฝ๊ฑฐ๋“ ์š”. ์‹ค๋ฆฌ์ฝ˜๋ฐธ๋ฆฌ์—์„œ ๋ฒŒ์–ด์ง€๋Š” ๋น…ํ…Œํฌ ๊ธฐ์—…๋“ค์˜ ์ „์Ÿ๊ณผ ๊ทธ ์†์˜ AI ํŠธ๋ Œ๋“œ๋ฅผ ๋งˆ์น˜ ์˜†์ง‘ ํ˜•์ด ์ด์•ผ๊ธฐํ•ด์ฃผ๋“ฏ ํ’€์–ด์ค๋‹ˆ๋‹ค. ์ฃผ 3ํšŒ ์ƒˆ๋ฒฝ์— ๋„์ฐฉํ•˜๋‹ˆ, ๋ฏธ๋ผํด ๋ชจ๋‹์„ ๊ฟˆ๊พธ๋Š” ๋ถ„๋“ค์—๊ฒŒ ๋”ฑ์ด๊ฒ ์ฃ ? 2. AI Breakfast : ๊ธ€๋กœ๋ฒŒ ์‹œ๊ฐ์„ ๋„“ํžˆ๊ณ  ์‹ถ๋‹ค๋ฉด ์˜๋ฌธ ๋ ˆํ„ฐ์ง€๋งŒ ๊ฒ๋จน์ง€ ๋งˆ์„ธ์š”! (์šฐ๋ฆฌ์—๊ฒŒ๋Š” ๊ตฌ๊ธ€...

๐Ÿš€ 2025๋…„ ๋ฌด๋ฃŒ ์ž๋™ํ™” ํ•„์ˆ˜ ํ”„๋กœ๊ทธ๋žจ ์™„์ „ ์ •๋ณต: ํŒŒ์ด์ฌ·Node.js·Google Gemini CLI 3์ข… ์„ธํŠธ ์„ค์น˜๋ถ€ํ„ฐ ํ™œ์šฉ๊นŒ์ง€

๋งค์ผ ๋ฐ˜๋ณต๋˜๋Š” ์—…๋ฌด์— ์ง€์ณ ๊ณ„์‹ ๊ฐ€์š”? 2025๋…„ ํ˜„์žฌ, ๊ฐœ์ธ ์ž๋™ํ™”๋Š” ๋” ์ด์ƒ ๊ฐœ๋ฐœ์ž๋งŒ์˜ ์ „์œ ๋ฌผ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ด ๊ฐ€์ด๋“œ๋ฅผ ๋”ฐ๋ผํ•˜๋ฉด 30๋ถ„ ๋‚ด์— ํŒŒ์ด์ฌ, Node.js, Google Gemini CLI๋ฅผ ์„ค์น˜ํ•˜๊ณ  ์ฒซ ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง์žฅ์ธ ๊น€๋Œ€๋ฆฌ๋Š” ๋งค์ฃผ 20์‹œ๊ฐ„์„ ์—‘์…€ ๋ฐ์ดํ„ฐ ์ •๋ฆฌ์— ์†Œ๋ชจํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ฌด๋ฃŒ ์ž๋™ํ™” ๋„๊ตฌ 3์ข… ์„ธํŠธ๋ฅผ ๋„์ž…ํ•œ ํ›„, ์ด ์‹œ๊ฐ„์„ ๋‹จ 2์‹œ๊ฐ„์œผ๋กœ ๋‹จ์ถ•ํ–ˆ์ฃ . ์–ด๋–ป๊ฒŒ ๊ฐ€๋Šฅํ–ˆ์„๊นŒ์š”? ๋ฐ”๋กœ ์˜ฌ๋ฐ”๋ฅธ ๋„๊ตฌ ์„ ํƒ๊ณผ ์ฒด๊ณ„์ ์ธ ์„ค์น˜ ๊ณผ์ • ๋•๋ถ„์ž…๋‹ˆ๋‹ค.

์™œ ์ด 3๊ฐ€์ง€ ํ”„๋กœ๊ทธ๋žจ์ธ๊ฐ€?

2025๋…„ ์ž๋™ํ™” ํŠธ๋ Œ๋“œ๋ฅผ ๋ถ„์„ํ•œ ๊ฒฐ๊ณผ, ๊ฐ€์žฅ ํšจ๊ณผ์ ์ด๋ฉด์„œ ๋ฌด๋ฃŒ์ธ ์กฐํ•ฉ์ด ๋ฐ”๋กœ ํŒŒ์ด์ฌ + Node.js + Google Gemini CLI์ž…๋‹ˆ๋‹ค. ๊ฐ๊ฐ์˜ ์—ญํ• ์€ ๋ช…ํ™•ํ•ฉ๋‹ˆ๋‹ค:

  • ํŒŒ์ด์ฌ: ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์™€ ์›น ์Šคํฌ๋ž˜ํ•‘์˜ ์ ˆ๋Œ€ ๊ฐ•์ž
  • Node.js: ์›น ๊ธฐ๋ฐ˜ ์ž๋™ํ™”์™€ API ์—ฐ๋™์˜ ํ•ต์‹ฌ
  • Google Gemini CLI: AI ๊ธฐ๋ฐ˜ ์—…๋ฌด ์ž๋™ํ™”์˜ ๊ฒŒ์ž„์ฒด์ธ์ €

๐Ÿ’ก Pro Tip: ์ด ์„ธ ๋„๊ตฌ๋งŒ์œผ๋กœ๋„ ์ผ๋ฐ˜์ ์ธ ์‚ฌ๋ฌด ์—…๋ฌด์˜ 80% ์ด์ƒ์„ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1๋‹จ๊ณ„: ํŒŒ์ด์ฌ ์„ค์น˜ ๋ฐ ์„ค์ •

ํŒŒ์ด์ฌ ์„ค์น˜ ๋ฐ ์„ค์ •

ํŒŒ์ด์ฌ ์„ค์น˜๋Š” ์ƒ๊ฐ๋ณด๋‹ค ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ดˆ๋ณด์ž๋“ค์ด ์ž์ฃผ ๋†“์น˜๋Š” ์ค‘์š”ํ•œ ์„ค์ •๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค.

Windows ์‚ฌ์šฉ์ž ์„ค์น˜ ๋ฐฉ๋ฒ•

1. python.org ์ ‘์† 2. "Download Python 3.12.x" ํด๋ฆญ 3. ์„ค์น˜ ์‹œ "Add Python to PATH" ์ฒดํฌ๋ฐ•์Šค ๋ฐ˜๋“œ์‹œ ์„ ํƒ 4. ์„ค์น˜ ์™„๋ฃŒ ํ›„ cmd์—์„œ "python --version" ์ž…๋ ฅํ•ด ํ™•์ธ


์ž์„ธํ•œ ์„ค์น˜ ๋ฐฉ๋ฒ•

https://goddigitalnomad.blogspot.com/2025/09/2025_23.html

macOS ์‚ฌ์šฉ์ž ์„ค์น˜ ๋ฐฉ๋ฒ•

1. Homebrew ์„ค์น˜: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 2. Python ์„ค์น˜: brew install python 3. ํ„ฐ๋ฏธ๋„์—์„œ python3 --version์œผ๋กœ ํ™•์ธ

์„ค์น˜ ํ›„ ์ฒซ ๋ฒˆ์งธ ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ๋กœ ๊ฐ„๋‹จํ•œ ํŒŒ์ผ ์ •๋ฆฌ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค:

import os import shutil from datetime import datetime def organize_downloads(): downloads_path = os.path.expanduser("~/Downloads") for filename in os.listdir(downloads_path): if filename.endswith(('.pdf', '.docx', '.xlsx')): dest_folder = os.path.join(downloads_path, "Documents") os.makedirs(dest_folder, exist_ok=True) shutil.move(os.path.join(downloads_path, filename), dest_folder) print("ํŒŒ์ผ ์ •๋ฆฌ ์™„๋ฃŒ!") organize_downloads()

2๋‹จ๊ณ„: Node.js ์„ค์น˜ ๋ฐ npm ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ

Node.js ์„ค์น˜ ๋ฐ npm ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ

Node.js๋Š” ์›น ๊ธฐ๋ฐ˜ ์ž๋™ํ™”์˜ ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ API ์—ฐ๋™๊ณผ ์›น ์Šคํฌ๋ž˜ํ•‘์—์„œ ํƒ์›”ํ•œ ์„ฑ๋Šฅ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

๊ถŒ์žฅ์‚ฌํ•ญ: Node.js 20.x LTS ๋ฒ„์ „์„ ์„ค์น˜ํ•˜์„ธ์š”. 2025๋…„ ๊ธฐ์ค€์œผ๋กœ ๊ฐ€์žฅ ์•ˆ์ •์ ์ž…๋‹ˆ๋‹ค.

์„ค์น˜ ๊ณผ์ •

์ƒ์„ธ ์„ค์น˜ ๊ฐ€์ด๋“œhttps://goddigitalnomad.blogspot.com/2025/09/2025-nodejs.html
  1. nodejs.org์—์„œ LTS ๋ฒ„์ „ ๋‹ค์šด๋กœ๋“œ
  2. ์„ค์น˜ ์™„๋ฃŒ ํ›„ ํ„ฐ๋ฏธ๋„์—์„œ node --version ํ™•์ธ
  3. npm ์—…๋ฐ์ดํŠธ: npm install -g npm@latest

์‹ค๋ฌด์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ์ž๋™ํ™” ํŒจํ‚ค์ง€๋“ค์„ ๋ฏธ๋ฆฌ ์„ค์น˜ํ•ด๋‘๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค:

# ํ•„์ˆ˜ ํŒจํ‚ค์ง€ ์„ค์น˜ npm install -g puppeteer cheerio axios nodemailer # ๊ฐ„๋‹จํ•œ ์›น ์Šคํฌ๋ž˜ํ•‘ ์˜ˆ์ œ const axios = require('axios'); const cheerio = require('cheerio'); async function getWeather() { const response = await axios.get('https://weather.com'); const $ = cheerio.load(response.data); console.log('์˜ค๋Š˜ ๋‚ ์”จ:', $('.temp').text()); } getWeather();

3๋‹จ๊ณ„: Google Gemini CLI๋กœ AI ์ž๋™ํ™” ๊ตฌํ˜„

Google Gemini CLI๋กœ AI ์ž๋™ํ™” ๊ตฌํ˜„

2025๋…„ ๊ฐ€์žฅ ์ฃผ๋ชฉ๋ฐ›๋Š” ์ž๋™ํ™” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์ž์—ฐ์–ด ๋ช…๋ น์–ด๋งŒ์œผ๋กœ๋„ ๋ณต์žกํ•œ ์—…๋ฌด๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์–ด, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ง€์‹์ด ์ œํ•œ์ ์ธ ๋ถ„๋“ค์—๊ฒŒ๋„ ๊ฐ•๋ ฅํ•œ ๋ฌด๊ธฐ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

์„ค์น˜ ๋ฐ ์ดˆ๊ธฐ ์„ค์ •

# Node.js๊ฐ€ ์„ค์น˜๋œ ์ƒํƒœ์—์„œ npm install -g @google-ai/generativelanguage # API ํ‚ค ์„ค์ • (Google AI Studio์—์„œ ๋ฐœ๊ธ‰) export GOOGLE_API_KEY="your-api-key-here" # ์ฒซ ๋ฒˆ์งธ ๋ช…๋ น ํ…Œ์ŠคํŠธ gemini "์˜ค๋Š˜ ํ•  ์ผ ๋ชฉ๋ก์„ ์ž‘์„ฑํ•ด์ค˜"

์‹ค์ œ ์—…๋ฌด์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” Gemini CLI ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค:

#!/bin/bash # ์ผ์ผ ์—…๋ฌด ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ # 1. ์ด๋ฉ”์ผ ์š”์•ฝ ์ƒ์„ฑ gemini "์–ด์ œ ๋ฐ›์€ ์ด๋ฉ”์ผ๋“ค์„ ์š”์•ฝํ•ด์„œ ์ค‘์š”๋„์ˆœ์œผ๋กœ ์ •๋ฆฌํ•ด์ค˜" > daily_summary.txt # 2. ํšŒ์˜๋ก ์ž‘์„ฑ ๋„์›€ gemini "์˜ค๋Š˜ ๋งˆ์ผ€ํŒ… ํšŒ์˜ ์•ˆ๊ฑด์„ ํ† ๋Œ€๋กœ ํšŒ์˜๋ก ํ…œํ”Œ๋ฆฟ ์ž‘์„ฑ" > meeting_template.md # 3. ๋ณด๊ณ ์„œ ๊ฐœ์š” ์ƒ์„ฑ gemini "์ด๋ฒˆ ์ฃผ ์„ฑ๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ฃผ๊ฐ„ ๋ณด๊ณ ์„œ ๊ตฌ์กฐ ์ œ์•ˆ" > report_outline.txt

ํ†ตํ•ฉ ํ™œ์šฉ: 3๊ฐ€์ง€ ๋„๊ตฌ๋ฅผ ์—ฐ๊ฒฐํ•˜์—ฌ ์Šˆํผ ์ž๋™ํ™” ๋งŒ๋“ค๊ธฐ

๊ฐ๊ฐ์˜ ๋„๊ตฌ๋„ ๊ฐ•๋ ฅํ•˜์ง€๋งŒ, ์„ธ ๊ฐœ๋ฅผ ์—ฐ๊ฒฐํ–ˆ์„ ๋•Œ ์ง„์งœ ๋งˆ๋ฒ•์ด ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค. ์‹ค์ œ ์—…๋ฌด์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ†ตํ•ฉ ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ”— ํ†ตํ•ฉ ์ž๋™ํ™” ์‹œ๋‚˜๋ฆฌ์˜ค: ๋งค์›” ๋ณด๊ณ ์„œ ์ž๋™ ์ƒ์„ฑ

  1. ํŒŒ์ด์ฌ์œผ๋กœ ์—‘์…€ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๋ฐ ๊ฐ€๊ณต
  2. Node.js๋กœ ์ฐจํŠธ ์ด๋ฏธ์ง€ ์ž๋™ ์ƒ์„ฑ
  3. Gemini CLI๋กœ ๋ณด๊ณ ์„œ ํ…์ŠคํŠธ ์ž‘์„ฑ
  4. ์ตœ์ข… PDF ๋ณด๊ณ ์„œ ์ž๋™ ์ƒ์„ฑ ๋ฐ ์ด๋ฉ”์ผ ๋ฐœ์†ก

# ํ†ตํ•ฉ ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ ์˜ˆ์ œ (Python) import subprocess import pandas as pd def monthly_report_automation(): # 1. ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ (Python) data = pd.read_excel("monthly_data.xlsx") summary = data.groupby('category').sum() # 2. Node.js ์ฐจํŠธ ์ƒ์„ฑ ํ˜ธ์ถœ subprocess.run(["node", "generate_charts.js"]) # 3. Gemini๋กœ ๋ณด๊ณ ์„œ ํ…์ŠคํŠธ ์ƒ์„ฑ subprocess.run([ "gemini", f"๋‹ค์Œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์›”๊ฐ„ ๋ณด๊ณ ์„œ ์ž‘์„ฑ: {summary.to_string()}" ]) print("์›”๊ฐ„ ๋ณด๊ณ ์„œ ์ž๋™ ์ƒ์„ฑ ์™„๋ฃŒ!") monthly_report_automation()

์ž์ฃผ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ์™€ ํ•ด๊ฒฐ์ฑ…

⚠️ ์ฃผ์˜์‚ฌํ•ญ

  • PATH ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ •์„ ๋ฐ˜๋“œ์‹œ ํ™•์ธํ•˜์„ธ์š”
  • ๋ฐฉํ™”๋ฒฝ ์„ค์ •์œผ๋กœ ์ธํ•œ ์„ค์น˜ ์˜ค๋ฅ˜๊ฐ€ ๋นˆ๋ฒˆํ•ฉ๋‹ˆ๋‹ค
  • API ํ‚ค๋Š” ์ ˆ๋Œ€ ์ฝ”๋“œ์— ์ง์ ‘ ํ•˜๋“œ์ฝ”๋”ฉํ•˜์ง€ ๋งˆ์„ธ์š”

์ดˆ๋ณด์ž๋“ค์ด ๊ฐ€์žฅ ๋งŽ์ด ๊ฒช๋Š” ์„ค์น˜ ์˜ค๋ฅ˜ 3๊ฐ€์ง€์™€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค:

๋ฌธ์ œ ํ•ด๊ฒฐ์ฑ…
'python' ๋ช…๋ น์–ด ์ธ์‹ ๋ถˆ๊ฐ€ PATH ํ™˜๊ฒฝ๋ณ€์ˆ˜์— Python ๊ฒฝ๋กœ ์ถ”๊ฐ€
npm ์„ค์น˜ ๊ถŒํ•œ ์˜ค๋ฅ˜ ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์‹คํ–‰
Gemini API ํ‚ค ์˜ค๋ฅ˜ Google AI Studio์—์„œ ์ƒˆ API ํ‚ค ์žฌ๋ฐœ๊ธ‰

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ (FAQ)

❓ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝํ—˜์ด ์ „ํ˜€ ์—†์–ด๋„ ๋”ฐ๋ผํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

๋„ค, ์ด ๊ฐ€์ด๋“œ๋Š” ๋น„์ „๊ณต์ž๋„ ์ถฉ๋ถ„ํžˆ ๋”ฐ๋ผํ•  ์ˆ˜ ์žˆ๋„๋ก ๋‹จ๊ณ„๋ณ„๋กœ ๊ตฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณต์‚ฌ-๋ถ™์—ฌ๋„ฃ๊ธฐ๋งŒ์œผ๋กœ๋„ ์ฒซ ์ž๋™ํ™”๋ฅผ ๊ฒฝํ—˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

❓ ์„ค์น˜์— ์–ผ๋งˆ๋‚˜ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๋‚˜์š”?

์ „์ฒด ์„ค์น˜ ๊ณผ์ •์€ ๋ณดํ†ต 20-30๋ถ„ ์ •๋„ ์†Œ์š”๋˜๋ฉฐ, ์ธํ„ฐ๋„ท ์†๋„์— ๋”ฐ๋ผ ์ฐจ์ด๊ฐ€ ๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

❓ ๋งฅ๊ณผ ์œˆ๋„์šฐ ๋ชจ๋‘์—์„œ ๋™์ผํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋‚˜์š”?

์˜ˆ, ์„ธ ๋„๊ตฌ ๋ชจ๋‘ ํฌ๋กœ์Šค ํ”Œ๋žซํผ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์„ค์น˜ ๋ฐฉ๋ฒ•๋งŒ ์•ฝ๊ฐ„ ๋‹ค๋ฅผ ๋ฟ, ์‚ฌ์šฉ๋ฒ•์€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

❓ Google Gemini CLI ์‚ฌ์šฉ์— ๋น„์šฉ์ด ๋ฐœ์ƒํ•˜๋‚˜์š”?

๋ฌด๋ฃŒ ํ• ๋‹น๋Ÿ‰ ๋‚ด์—์„œ๋Š” ๋น„์šฉ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ๊ฐœ์ธ ์‚ฌ์šฉ ์ˆ˜์ค€์—์„œ๋Š” ๋ฌด๋ฃŒ ํ•œ๋„๋ฉด ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

❓ ํšŒ์‚ฌ ์ปดํ“จํ„ฐ์—์„œ๋„ ์„ค์น˜ ๊ฐ€๋Šฅํ•œ๊ฐ€์š”?

IT ์ •์ฑ…์— ๋”ฐ๋ผ ๋‹ค๋ฅด์ง€๋งŒ, ๋Œ€๋ถ€๋ถ„์˜ ๋„๊ตฌ๋Š” ๊ด€๋ฆฌ์ž ๊ถŒํ•œ ์—†์ด๋„ ์„ค์น˜ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์ „์— IT ๋ถ€์„œ์™€ ์ƒ์˜ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

❓ ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์˜ค๋ฅ˜ ๋‚  ๋•Œ๋Š” ์–ด๋–ป๊ฒŒ ํ•˜๋‚˜์š”?

๊ฐ ๋„๊ตฌ์˜ ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ์ฐธ๊ณ ํ•˜๊ฑฐ๋‚˜, ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ๋„์›€์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„ ๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์œผ๋กœ ํ•ด๊ฒฐ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๐ŸŽฏ ๋‹ค์Œ ๋‹จ๊ณ„ ์ถ”์ฒœ

๊ธฐ๋ณธ ์„ค์น˜๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ๋‹ค๋ฉด, ์ด์ œ ์‹ค์ „ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•ด๋ณด์„ธ์š”:

  • ✅ ์ผ์ผ ์ด๋ฉ”์ผ ์ž๋™ ๋ถ„๋ฅ˜ ์‹œ์Šคํ…œ ๊ตฌ์ถ•
  • ✅ ์›”๊ฐ„ ๋ณด๊ณ ์„œ ์ž๋™ ์ƒ์„ฑ ์›Œํฌํ”Œ๋กœ์šฐ
  • ✅ ์†Œ์…œ ๋ฏธ๋””์–ด ํฌ์ŠคํŒ… ์ž๋™ํ™”

๐Ÿ“š ์ถ”์ฒœ ๋ฆฌ์†Œ์Šค

  1. Python.org ๊ณต์‹ ํŠœํ† ๋ฆฌ์–ผ - ํŒŒ์ด์ฌ ๊ธฐ์ดˆ๋ถ€ํ„ฐ ๊ณ ๊ธ‰๊นŒ์ง€ ์ฒด๊ณ„์  ํ•™์Šต
  2. Node.js ๊ณต์‹ ๋ฌธ์„œ - ์›น ์ž๋™ํ™” ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ํ•„์ˆ˜ ๊ฐ€์ด๋“œ
  3. Google AI Studio - Gemini API ํ‚ค ๋ฐœ๊ธ‰ ๋ฐ ์‚ฌ์šฉ๋ฒ• ์ƒ์„ธ ์•ˆ๋‚ด

๋ฉด์ฑ…์กฐํ•ญ: ๋ณธ ๊ฐ€์ด๋“œ์˜ ์ •๋ณด๋Š” 2025๋…„ 1์›” ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ, ์†Œํ”„ํŠธ์›จ์–ด ๋ฒ„์ „ ์—…๋ฐ์ดํŠธ์— ๋”ฐ๋ผ ์ผ๋ถ€ ๋‚ด์šฉ์ด ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ ์‚ฌ์šฉ ์‹œ ๋ฐ์ดํ„ฐ ๋ฐฑ์—…์„ ๊ถŒ์žฅํ•˜๋ฉฐ, ํšŒ์‚ฌ ์ •์ฑ… ์ค€์ˆ˜๋Š” ์‚ฌ์šฉ์ž์˜ ์ฑ…์ž„์ž…๋‹ˆ๋‹ค. ๋ณธ ์ฝ˜ํ…์ธ ๋Š” ์ •๋ณด ์ œ๊ณต ๋ชฉ์ ์ด๋ฉฐ, ๋ฐœ์ƒ ๊ฐ€๋Šฅํ•œ ์†์‹ค์— ๋Œ€ํ•ด์„œ๋Š” ์ฑ…์ž„์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.