์๋ น: 2026-07-24 15:42 UTC
๊ธฐ์ฆ: REDACTED
๋ธ๋์น: gift/helena (dtslib-papyrus)
์ ์ฒด ๊ท๋ชจ: 33๊ฐ ํ์ผ, +9,240์ค
PHASE 1 โ ์ด ์ ๋ฌผ์ ์ ๋ต์ ์๋ฏธ
์ด ์ฝ๋๊ฐ ์ค์ํ ๊ฒ ์๋๋ผ, ์ด๊ฑธ ๋ผ์ด๋ธ๋ก ์ค๋ช ํ ์ ์๋ ๋ฅ๋ ฅ์ด ์์ฐ์ด๋ค.
๋น์ฆ๋์ค ๋ชจ๋ธ = ์ฝ๋ ์ ๊ธ โ โ ์คํ์์ค + ์ค์๊ฐ ๊ฐ์ ๋ฅ๋ ฅ โ
์ฝ๋ ์์ฒด๋ ์ฆ๊ฑฐ ์ ์๋ฌผ. ์ง์ง ์ํ์ “์ด๊ฑธ ๋ง๋ค๊ณ ์ค๋ช
ํ ์ ์๋ ์ฌ๋”.
โ ๊ฐ์ ์นํธ์ํธ๋ฅผ ๋จผ์ ๋ง๋ค๊ณ , ๊ทธ ๋ค์ ์ฑ๋๋ณ ์ฝํ ์ธ ์์ฌ๋ก ๋งคํํ๋ค.
PHASE 2 โ 5๊ฐ MCP ์๋ฒ ๊ฐ์์ฉ ์นํธ์ํธ
1. parksy_law_mcp.py (1,056์ค / 45KB)
๋ฒ๋ฅ ๊ฒ์ดํธ MCP โ AI ์์ด์ ํธ์ ํ๋์ ์ ์ฑ ์ผ๋ก ํต์ ํ๋ ๊ฒ๋ฌธ์
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| ํ๋ ์ผ | Claude Code์ ๋ชจ๋ ์ก์ ์ ๋ฒ๋ฅ ์๊ณ(ํ๋ฒ > ๊ธ๋ก๋ฒ๋ฒ > ์ญํ ๊ณ์ฝ > SOP)์ ๋ฐ๋ผ ๊ฒ์ฌ. ์๋ฐ ์ ์ฐจ๋จ ๋๋ ์ธ๊ฐ ์น์ธ ์์ฒญ |
| ์ ์ด ๊ตฌ์กฐ์ธ๊ฐ | ์์จ AI์๊ฒ ๋ฒ์ ์ฑ ์์ ๋ฌป๋ ๊ฑด ๋ฌด์๋ฏธ. ๋์ ํ๋์ ์ค์๊ฐ ๊ฒ์ดํด์ “์์ด์ ํธ๋ ์ ์๋ง, ๊ฒฐ์ ์ ์ธ๊ฐ์ด” ๊ตฌ์กฐ๋ฅผ ๊ฐ์ |
| ํต์ฌ ๊ธฐ๋ฅ 3๊ฐ์ง | โ check_policy โ ์ก์
ํฉ๋ฒ์ฑ ๊ฒ์ฌ โก detect_mental_state โ ์ฌ์ฉ์ ๊ฐ์ ๊ฐ์ง(๊ณ ์ํ ์ ์ค๊ณ/ํ๊ดด ์์
์ฐจ๋จ) โข audit_log โ ๋ชจ๋ ์์ฌ๊ฒฐ์ ๊ธฐ๋ก |
| ๋ผ์ด๋ธ ๊ฐ์ ํฌ์ธํธ | PRIORITY ๋์
๋๋ฆฌ(mild < strong < stop < delegate)๋ฅผ ๋ณด์ฌ์ฃผ๋ฉฐ “์ด๊ฒ ์ด๋ป๊ฒ ์ธ๊ฐ-์์ด์ ํธ ๊ฒฝ๊ณ๋ฅผ ์ค์ ํ๋์ง” ๋ถํฐ ์ค๋ช
. 11๊ฐ self_test ์ผ์ด์ค๊ฐ ์ดํด๋ฅผ ๋์์ค |
2. parksy_rawmat_mcp.py (938์ค / 33KB)
Raw Material MCP โ Playwright๋ก Perplexity ํฌ๋กค๋งํ๋ ์ง์ ์ถ์ถ ๊ฒ์ดํธ
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| ํ๋ ์ผ | Playwright๋ก Perplexity Space์ ์ ์ โ Computer ๋ชจ๋ โ ์ง๋ฌธ ์ ์ก โ ์๋ต์ ๊ตฌ์กฐํ๋ JSON์ผ๋ก ์ ์ฅ |
| ์ ์ด ๊ตฌ์กฐ์ธ๊ฐ | AI ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ API ์์ด ๋ธ๋ผ์ฐ์ ์๋ํ๋ก ์ถ์ถํด์ผ ํ ๋. Perplexity๊ฐ API ์ ์ด์ด์ค๋ ์ธ ์ ์์ |
| ํต์ฌ | Playwright headless ๋ชจ๋ + space_id ๊ธฐ๋ฐ ๋ผ์ฐํ
|
| ๋ผ์ด๋ธ ๊ฐ์ ํฌ์ธํธ | _PLAYWRIGHT_AVAILABLE ํ๋๊ทธ ์ฒ๋ฆฌ (Termux/ํฐ์์๋ ๋นํ์ฑํ)๋ฅผ ๋จผ์ ๋ณด์ฌ์ฃผ๋ฉฐ “์ด ์ฝ๋๋ ํ๊ฒฝ์ ๋ฐ๋ผ ๋์์ด ๋ฌ๋ผ์ง๋ค”๋ ์ค๊ณ ์ฒ ํ๋ถํฐ |
3. parksy_scm_mcp.py (714์ค / 25KB)
SCM MCP โ ์ฝํ ์ธ ๊ณต๊ธ๋ง ๊ด๋ฆฌ (Node C)
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| ํ๋ ์ผ | ์์ด๋์ด โ ๋ฆฌ์์น(Perplexity) โ ์ํฐํด ์์ฑ โ ๋ฐฐํฌ(ํ ๋ ๊ทธ๋จ/๋์ค์ฝ๋/๋ค์ด๋ฒ/ํฐ์คํ ๋ฆฌ)๊น์ง ์ฝํ ์ธ ์์ ์ฃผ๊ธฐ ๊ด๋ฆฌ |
| ์ ์ด ๊ตฌ์กฐ์ธ๊ฐ | ์ฝํ ์ธ ์ ์์ ๊ณต์ฅ์ ๊ณต๊ธ๋ง์ฒ๋ผ ๊ด๋ฆฌ. ๊ฐ Node๊ฐ ๋ ๋ฆฝ์ ์ผ๋ก ๋์ํ๊ณ SCM์ด ์ค์ ์กฐ์จ |
| 3๊ฐ ์นดํ ๊ณ ๋ฆฌ | โ Publishing โ ์์ฑ๋ ์ฝํ ์ธ ๋ฐํ โก Research โ ์ํผ์๋ ์คํ/์ํฐํด ์์ฑ โข Utility โ ์ํฐํด ๋ชฉ๋ก/์กฐํ |
| ๋ผ์ด๋ธ ๊ฐ์ ํฌ์ธํธ | TOOLS_DIR / ARTICLES_DIR ๊ฒฝ๋ก ์ฒด๊ณ๋ถํฐ ๋ณด์ฌ์ฃผ๋ฉฐ “์ด๊ฒ ์ฝํ
์ธ ๊ณต๊ธ๋ง์ ๋ฌผ๋ฅ ์ฐฝ๊ณ ์ญํ ์ ํ๋ค”๊ณ ์ค๋ช
|
4. eae_mcp_platform.py (648์ค / 23KB)
EAE MCP Platform โ SCM์ ์ธํ๋ผ ๋ฒ์
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| ํ๋ ์ผ | parsky_scm๊ณผ ์ ์ฌํ ์ฝํ
์ธ ํ์ดํ๋ผ์ธ. dtsli ์ฌ์ฉ์ ๊ฒฝ๋ก ํ๋์ฝ๋ฉ๋์ด ์์ |
| ๋ผ์ด๋ธ ๊ฐ์ ํฌ์ธํธ | SCM๊ณผ Platform์ ์ฐจ์ด์ ์ ๋น๊ต: “SCM์ ํ์ฌ ๋ฐํ, Platform์ ์ฅ๊ธฐ ์ง์ ์ถ์ ”์ด๋ผ๋ ๊ตฌ๋๋ก ์ค๋ช
. ARTICLE_WRITER ๊ฒฝ๋ก ๋ฑ dtsli ์ ์ฉ ๊ฒฝ๋ก๋ฅผ ์ฐ๋ฆฌ ํ๊ฒฝ์ ๋ง๊ฒ ์์ ํ๋ ๊ณผ์ ์ ๋ผ์ด๋ธ๋ก ๋ณด์ฌ์ฃผ๋ฉด ์ข์ |
5. eae_mcp_writer.py (486์ค / 17KB)
EAE MCP Writer โ ๋ฐ์จ ์คํ์ผ ๋ผ์ดํฐ (ํ์ธํ๋)
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| ํ๋ ์ผ | LLM ์ถ๋ ฅ์ ํน์ ๋ฐํ ์คํ์ผ(๋ฐ์จ ์คํ์ผ)๋ก ๋ณํํ๋ ํํฐ. STYLE_PARAMS ๋์ ๋๋ฆฌ๋ก ์ฆ์ ๋ฐ์ ๊ฐ๋ฅ |
| ์ ์ด ๊ตฌ์กฐ์ธ๊ฐ | “์ด์์๋ ํ์ธํ๋” โ ๋ชจ๋ธ ์ฌํ์ต ์์ด ํ๋ผ๋ฏธํฐ ์์ ๋ง์ผ๋ก ์คํ์ผ ๋ณ๊ฒฝ. 300๊ฐ JSONL ์์ ๋ก few-shot |
| ํต์ฌ | STYLE_PARAMS + parksy_voice_filter.md + parksy_v3_300.jsonl |
| ๋ผ์ด๋ธ ๊ฐ์ ํฌ์ธํธ | STYLE_PARAMS ๋์
๋๋ฆฌ ํ๋๋ง ๋ฐ๊ฟ์ ์ฝํ
์ธ ์คํ์ผ์ด ์ฆ์ ๋ฐ๋๋ ๊ฑธ ๋ผ์ด๋ธ๋ก ์์ฐ. “์ด๊ฒ 17KB ๋ชจ๋ธ ํ์ธํ๋์ด๋ค” |
PHASE 3 โ ์ ์ฒด ์์ฐ ์ธ๋ฒคํ ๋ฆฌ + ์ฑ๋ ๋งคํ
๐ฆ ์นดํ ๊ณ ๋ฆฌ๋ณ ์์ฐ
| ์นดํ ๊ณ ๋ฆฌ | ํฌํจ ํ์ผ | ์ฉ๋ | ์ฆ์ ์ฌ์ฉ |
|---|---|---|---|
| ๐ค MCP ์๋ฒ 5์ข | law, rawmat, scm, platform, writer | AI ๋๊ตฌ ์ฒด์ธ ๊ตฌ์ถ | โ ๋ถ์ ์๋ฃ |
| ๐ ํฐ์คํ ๋ฆฌ/๋ค์ด๋ฒ | post.py, skin.py, login.cjs, post.cjs, session_post.py, workbook | ๋ธ๋ก๊ทธ ์๋ ํฌ์คํ | โ ๋ค์ ๋ฐ์ฃผ ๋์ |
| โ๏ธ ํ ๋ ๊ทธ๋จ 3์ข | core.py, telegram-bot.py, telegram-bridge.py | ๋ฉ์์ง ์๋ํ | โ ๊ธฐ์กด tg.sh ์ ๊ทธ๋ ์ด๋ |
| ๐ฌ ๊ตฌ๊ธ/์ ํ๋ธ | yt_oauth_channel.cjs, orbit_publish.py, sync.cjs, community.cjs, check_channel.cjs | YouTube ์ ๋ก๋ ์๋ํ | โณ OAuth ํ ํฐ ๋๊ธฐ |
| ๐ฌ ๋์ค์ฝ๋ | webhook.sh, discord-notify.yml | CI/CD ์๋ฆผ | โ |
| โ๏ธ GitHub Actions 6์ข | rule-tuner, design-library-guard, issue-terminal, acceptance-tests, router-compiler, feedback-collector | ์๋ํ ํ์ดํ๋ผ์ธ | โ |
| ๐ฑ phone-claude | INSTALL.sh | TermuxโUbuntuโClaude Code ์ค์น | โ |
๐บ ์ฑ๋๋ณ ์ฝํ ์ธ ์์ฌ
| ์ฑ๋ | ์์ฌ | ์ค๋ช | ์ฐ์ ์์ |
|---|---|---|---|
| ๐ฌ YouTube | “AI ์์ด์ ํธ์๊ฒ ๋ฒ์ ๊ฐ๋ฅด์น๋ค” | parksy_law_mcp ๋ผ์ด๋ธ ์ฝ๋ฉ โ ๋ฒ๋ฅ ๊ฒ์ดํธ๊ฐ ๋ญ์ง, ์ ํ์ํ์ง ์ค์ ์ฝ๋๋ก ์ค๋ช | ๐ด ์ต์ฐ์ |
| “ํฐ์ผ๋ก MCP ์๋ฒ 5๊ฐ ๋๋ฆฌ๊ธฐ” | S21 ํฐ์์ law_mcp/rawmat_mcp/scm_mcp ์คํ ์์ฐ | ๐ก | |
| “์ฝํ ์ธ ๊ณต๊ธ๋ง ์๋ํ” | SCM MCP๋ก ์์ด๋์ดโ๋ฆฌ์์นโ๋ฐํ ์ ๊ณผ์ ๋ผ์ด๋ธ | ๐ด ์ต์ฐ์ | |
| ๐ ํฐ์คํ ๋ฆฌ | “Playwright๋ก ๋ค์ด๋ฒ/ํฐ์คํ ๋ฆฌ ์๋ ํฌ์คํ ” | tistory-naver ํด๋ ๋ถ์ + ์ค์ ๊ฐ์ด๋ | ๐ด ์ต์ฐ์ |
| “MCP ์๋ฒ 5์ข ์์ ํด์ค” | ๊ฐ ์๋ฒ์ ๊ตฌ์กฐ์ ์ฒ ํ์ ๊ธ๋ก ์ ๋ฆฌ | ๐ก | |
| โ๏ธ ํ ๋ ๊ทธ๋จ | ๋งค ๋ผ์ด๋ธ/ํฌ์คํ ์๋ฆผ | ๋ชจ๋ ์ ์ฝํ ์ธ ์๋ ๋ณด๊ณ | ๐ด ํญ์ |
| dtslib ์ ๋ฌผ ํจํค์ง ๋ถ์ ๊ฒฐ๊ณผ | ์ด ๋ฌธ์ ์์ฒด๋ฅผ ํ ๋ ๊ทธ๋จ ๋ธ๋ฆฌํ | โ ์๋ฃ |
๐บ๏ธ ์ฝํ ์ธ ๋ฐํ ํ์ดํ๋ผ์ธ (SCM ๋ชจ๋ธ ์ ์ฉ)
์์ด๋์ด (๋ผ์ด๋ธ ๋ฐฉ์ก/์ํผ์๋)
โ
Perplexity ๋ฆฌ์์น โ rawmat_mcp
โ
์คํฌ๋ฆฝํธ/์ํฐํด โ writer_mcp (๋ฐ์จ ์คํ์ผ)
โ
๋ฒ๋ฅ ๊ฒ์ฌ โ law_mcp
โ
๋ฐํ โ scm_mcp
โโโ YouTube (์์)
โโโ ํฐ์คํ ๋ฆฌ (๊ธ)
โโโ ๋ค์ด๋ฒ (๊ทธ๋ฆผ์ฒฉ)
โโโ ํ
๋ ๊ทธ๋จ (์๋ฆผ)
โโโ ๋์ค์ฝ๋ (์๋ฆผ)
PHASE 4 โ ์ฆ์ ์คํ ๊ฐ๋ฅํ ๊ฒ vs ๊ธฐ๋ค๋ ค์ผ ํ๋ ๊ฒ
| ์ํ | ์์ | ํ์ ์กฐ๊ฑด |
|---|---|---|
| โ ์ฆ์ | MCP ์๋ฒ 5๊ฐ ๊ตฌ์กฐ ๋ถ์ + ๊ฐ์ | ์ด ์นํธ์ํธ๋ง ์์ผ๋ฉด ๊ฐ๋ฅ |
| โ ์ฆ์ | GitHub Actions 6์ข ํ์ฑํ | .github/workflows/์ ์ด๋ฏธ ์์ |
| โ ์ฆ์ | ํ ๋ ๊ทธ๋จ ๋ธ๋ฆฟ์ง ์ ๊ทธ๋ ์ด๋ | core.py + telegram-bridge.py ๋ณํฉ |
| โ ์ฆ์ | ๋์ค์ฝ๋ ์นํ ์๋ฆผ | webhook.sh ์ค์ ๋ง |
| โณ ๋๊ธฐ | ํฐ์คํ ๋ฆฌ/๋ค์ด๋ฒ ์๋ ํฌ์คํ | Playwright + ์ฟ ํค ์ธ์ ๋ฐ๊ธ (์ปจ๋์ ์ข์ ๋ ) |
| โณ ๋๊ธฐ | YouTube ์๋ ์ ๋ก๋ | OAuth TV ํด๋ผ์ด์ธํธ ID (์ปจ๋์ ์ข์ ๋ ) |
| โณ ๋ณด๋ฅ | ์์์ฌ MCP (rawmat) | Playwright + Perplexity ๊ณ์ ํ์ |
๊ฒฐ๋ก : 5๊ฐ MCP ์๋ฒ๋ ๋ผ์ด๋ธ๋ก ์ค๋ช ํ ์ค๋น ์๋ฃ.
๋ค์ ์คํ = tistory-naver Playwright ๋ฐ์ฃผ (์ปจ๋์ ํ๋ณต ํ).
๊ทธ ๋ค์ = YouTube OAuth (์ข์ ๋ ).