#pabal-app-review-miner ๋ฌธ์ (ko-KR)
#๊ฐ์
pabal-app-review-miner๋ Google Play / App Store ๊ฒฝ์ ์ฑ ๋ฆฌ๋ทฐ๋ฅผ raw ๋ฐ์ดํฐ๋ก ์์งํ๊ณ , ๋ด ์ฑ ID ๊ธฐ์ค์ผ๋ก ์ ๋ฆฌํด ์ ์ฅํ๋ CLI์
๋๋ค.
#์ฃผ์ ๊ธฐ๋ฅ
- Google Play / App Store ์ต์ ๋ฆฌ๋ทฐ ์์ง
- ๋จ์ผ ๊ฒฝ์ ์ฑ, ๋ฉํฐ ๊ฒฝ์ ์ฑ ์์ง ์ง์
--my-app๋ง์ผ๋ก ์คํ ์ด๋ณ ์์ ๊ฒฝ์ ์ฑ ์๋ ํ์ ์ง์- ๋ด ์ฑ ๊ธฐ์ค ์ค์ฝํ๋ก ๊ฒฝ์ ์ฑ๋ณ JSON ์ ์ฅ
- ๋ฆฌ๋ทฐ ํญ๋ชฉ๋ณ ์์
reviewId(๋ฐ ๊ฐ๋ฅ ์storeReviewId) ์๋ ๋ถ์ฌ - ์์ง๋ ๋ฆฌ๋ทฐ๋ฅผ ํ๊ตญ์ด๋ก ๋ฒ์ญํด
reviews-ko/์ ์ ์ฅ - ๋ฒ์ญ ๋ฆฌ๋ทฐ ๊ธฐ๋ฐ ๊ฒฝ์์ฑ ์ธ์ฌ์ดํธ ๋ฆฌํฌํธ ์์ฑ (
reports/)
์ถ๋ ฅ ๊ตฌ์กฐ:
data/{myAppId}/reviews/{competitor}.json
#๋น ๋ฅธ ์์
npm install
npm run build
npm run setup:icon
npm run review:collect -- --my-app golden-horizon --apps apps.json --limit 200
npm run review:collect -- --my-app golden-horizon --apps apps.json --limit 200 --append-existing
npm run review:collect -- --my-app golden-horizon --auto-top 5 --limit 200
npm run review:collect -- --my-app golden-horizon --apps apps.json --platform ios --limit 200
npm run review:collect-by-name -- --my-app golden-horizon --name "BJJBuddy"
npm run review:backfill-ids -- --my-app golden-horizon
npm run report:translate -- --my-app golden-horizon
npm run report:analyze -- --my-app golden-horizon
npm run report:render-html -- --my-app golden-horizon
npm run report:preview -- --my-app golden-horizon --port 4173
pabal-store-api-mcp๊ฐ ์ด๋ฏธ ์ค์ ๋์ด ์์ผ๋ฉด setup:icon์ ์๋ ๋ถํธ์คํธ๋ฉ์ ๊ฑด๋๋๋๋ค.
#์ ์
#1. ์ค์น
๋ฐํ์ ์๊ตฌ์ฌํญ:
- Node.js
>=20.19.0
npm install
npm run build
#2. registered-apps.json ์ค๋น
์ด ํ๋ก์ ํธ๋ ์๋ ํ์ผ์์ myAppId๋ฅผ ์ฐพ์ต๋๋ค.
~/.config/pabal-mcp/registered-apps.json
๊ถ์ฅ: ๊ธฐ์กด pabal-store-api-mcp ์ค์ ์ฌ์ฌ์ฉ
npm run setup:icon
์๋ ํ์ผ์ด ์ด๋ฏธ ์กด์ฌํ๊ณ ์ ํจํ๋ฉด, ์ด ๋ช ๋ น์ ์๋ ๋ถํธ์คํธ๋ฉ์ ๊ฑด๋๋๋๋ค.
~/.config/pabal-mcp/config.json~/.config/pabal-mcp/registered-apps.json
๋์ฒด ๊ฒฝ๋ก: ๋ก์ปฌ ๋ถํธ์คํธ๋ฉ(๊ธฐ์กด ๋์ ์ ์ง)
npm run setup:icon
์ด ๋ช ๋ น์ด ์ํํ๋ ์์ :
~/.config/pabal-mcpํด๋ ์์ฑchmod 700์ ์ฉ (ํ๊ฒฝ์ ๋ฐ๋ผ ์คํจํด๋ ๊ณ์ ์งํ)registered-apps.json์ด ์์ผ๋ฉด ๊ธฐ๋ณธ ํ ํ๋ฆฟ ์์ฑ~/.config/pabal-mcpํด๋ ๋ด ํ์ผ ๊ถํ์600์ผ๋ก ์ ๊ธ~/.config/pabal-mcp/config.json์dataDir๊ฐ ์๊ณ pabal-web์ด ์กด์ฌํ๋ฉด ์ํ ์์ด์ฝ(public/products/*/icons/icon.png, ๋์ฒด ๊ฒฝ๋กpublic/products/*/icon.png)์ ์ด ํ๋ก์ ํธ์data/{appId}/icon.png๋ก ๋๊ธฐํํด ๋์๋ณด๋/๋ฆฌํฌํธ ํ๋ฉด ์์ด์ฝ์ผ๋ก ์ฌ์ฉ
๋ฏธ์ค์ ์ ์๋์ผ๋ก ๋น ๋ฅด๊ฒ ์ถ๊ฐ
mkdir -p ~/.config/pabal-mcp
chmod 700 ~/.config/pabal-mcp
cat > ~/.config/pabal-mcp/registered-apps.json <<'JSON'
{
"apps": [
{
"slug": "golden-horizon",
"name": "Golden Horizon",
"appStore": {
"bundleId": "com.quartz.goldenhorizon",
"appId": "1234567890",
"name": "Golden Horizon",
"supportedLocales": ["en-US", "ko-KR"]
},
"googlePlay": {
"packageName": "com.quartz.goldenhorizon",
"name": "Golden Horizon",
"supportedLocales": ["en-US", "ko-KR"]
}
}
]
}
JSON
open ~/.config/pabal-mcp
chmod 600 ~/.config/pabal-mcp/*
#๐ ์๊ฒฉ ์ฆ๋ช ์ค์
pabal-resource-mcp๋ pabal-store-api-mcp์ ์ค์ ํ์ผ์ ์ฌ์ฉํฉ๋๋ค. App Store Connect API ํค, Google Play ์๋น์ค ๊ณ์ ๋ฑ ์์ธ ์๊ฒฉ ์ฆ๋ช
์ค์ ์ pabal-store-api-mcp README๋ฅผ ์ฐธ๊ณ ํ์ธ์.
#3. JSON ๊ท์น
- ์ฑ ํญ๋ชฉ ์ต์ ํ์ ํ๋๋
slug์ ๋๋ค. --my-app์slug,name,appStore.bundleId,appStore.appId,googlePlay.packageName์ค ํ๋๋ก ๋งค์นญ๋ฉ๋๋ค.- ์ถ๋ ฅ ๊ฒฝ๋ก์
{myAppId}๋กslug๊ฐ ์ฌ์ฉ๋๋ฏ๋ก ์ผ๊ด๋๊ฒ ์ ์งํ์ธ์. - ์๋ ๊ฒฝ์์ฑ ํ์(
--my-app๋ง ์ฌ์ฉ)์googlePlay.packageName๋๋appStore.appId์ค ์ต์ 1๊ฐ๊ฐ ํ์ํฉ๋๋ค.
#4. (์ ํ) ๋ฑ๋ก ํ์ผ ๊ฒฝ๋ก ์ปค์คํ
--registered-apps-path /your/path/registered-apps.json
#5. ๋น ๋ฅธ ๊ฒ์ฆ
npm run review:collect -- --my-app golden-horizon --apps apps.json --limit 1
#๋ฌธ์ ์๋ด
- ๋ฆฌ๋ทฐ ๋ช
๋ น:
review:*์คํฌ๋ฆฝํธ - ๋ฆฌํฌํธ ๋ช
๋ น:
report:*์คํฌ๋ฆฝํธ