con un clic
k-skill-setup
// After installing the full k-skill bundle, configure and verify the shared cross-platform setup, then optionally wire update checks and GitHub starring with explicit user consent.
// After installing the full k-skill bundle, configure and verify the shared cross-platform setup, then optionally wire update checks and GitHub starring with explicit user consent.
Look up Daiso products by store name and product keyword using official Daiso Mall store/search/stock surfaces. Use when the user wants to know whether a product is available at a specific Daiso store.
๋ค๋์ ๊ณต๊ฐ ๊ฒ์/๊ฐ๊ฒฉ๋น๊ต ํ๋ฉด์ผ๋ก ์ํ ํ๋ณด๋ฅผ ์ฐพ๊ณ , ์ผํ๋ชฐ๋ณ ์ต์ ๊ฐยท๋ฐฐ์ก๋น ํฌํจ ์ค๊ตฌ๋งค๊ฐยท์นด๋ ํ ์ธ๊ฐยท๋ฌด์ด์ ํ ๋ถ ์ ๋ณด๋ฅผ ๋ณด์์ ์ผ๋ก ๋น๊ตํ๋ค.
Use when the user asks for nearby Korean emergency rooms, ์๊ธ์ค, ER, or emergency bed/๋ณ์ status near a location. Ask for the user's current location first unless a location was already provided.
Use kakaocli on macOS to read KakaoTalk chats, search messages, send replies after explicit confirmation, and delete sent messages with explicit operator intent.
CGV, ๋ฉ๊ฐ๋ฐ์ค, ๋กฏ๋ฐ์๋ค๋ง ์ํ๊ด ๊ฒ์, ์์์, ์๊ฐํ, ์์ฌ์ ์กฐํ๊ฐ ํ์ํ ๋ ์ฌ์ฉํ๋ค.
๊ณต๊ณต๋ฐ์ดํฐํฌํธ ์ฐฝ์ ์งํฅ์ K-Startup Open API(15125364)๋ก ํตํฉ ๊ณต๊ณ ์ฌ์ ์ ๋ณดยท์ง์์ฌ์ ๊ณต๊ณ ยท์ฐฝ์ ์ฝํ ์ธ ยทํต๊ณ๋ณด๊ณ ์๋ฅผ k-skill-proxy ๊ฒฝ์ ๋ก ์กฐํํ๋ค. ๊ฒ์ ์ ์ฉ.
| name | k-skill-setup |
| description | After installing the full k-skill bundle, configure and verify the shared cross-platform setup, then optionally wire update checks and GitHub starring with explicit user consent. |
| license | MIT |
| metadata | {"category":"setup","locale":"ko-KR","phase":"v1"} |
์ ์ฒด k-skill ์ค์น๊ฐ ๋๋ ๋ค, ๊ณตํต ํ์ ์์
์ ์ฒ๋ฆฌํ๋ค.
์ด ์คํฌ์ ๊ธฐ๋ณธ ์ ์ฑ :
cron, launchd, schtasks, gh ๊ฐ์ ์ง์์ฑ/์ธ๋ถ ์ํ ๋ณ๊ฒฝ์ ์๋์ผ๋ก ํ์ง ๋ง๊ณ ๋จผ์ ์ฌ์ฉ์ ๋์๋ฅผ ๋ฐ๋๋ค๋ชจ๋ credential-bearing ์คํฌ์ ์๋ ์ฐ์ ์์๋ฅผ ๋ฐ๋ฅธ๋ค.
~/.config/k-skill/secrets.env (๊ธฐ๋ณธ fallback) โ plain dotenv ํ์ผ, ํผ๋ฏธ์
0600.๊ธฐ๋ณธ ๊ฒฝ๋ก์ ์ ์ฅํ๋ ๊ฒ์ fallback์ผ ๋ฟ, ๊ฐ์ ๊ฐ ์๋๋ค.
~/.config/k-skill/secrets.env์ด ์คํฌ์ k-skill ์ ์ฒด ์คํฌ ์ค์น๊ฐ ๋๋ ๋ค ์คํํ๋ ๊ฒ์ ๊ธฐ๋ณธ์ผ๋ก ํ๋ค.
์:
npx --yes skills add <owner/repo> --all -g
์ค์น๊ฐ ๋๋๋ฉด ์ด ์คํฌ์ ํธ์ถํด ์๋ setup ๋จ๊ณ๋ฅผ ์ด์ด๊ฐ๋ค.
์์ด์ ํธ๊ฐ ์์ฒด vault๋ฅผ ์ฐ์ง ์๋ ๊ฒฝ์ฐ, ๊ธฐ๋ณธ fallback ํ์ผ์ ๋ง๋ ๋ค.
mkdir -p ~/.config/k-skill
cat > ~/.config/k-skill/secrets.env <<'EOF'
KSKILL_SRT_ID=replace-me
KSKILL_SRT_PASSWORD=replace-me
KSKILL_KTX_ID=replace-me
KSKILL_KTX_PASSWORD=replace-me
KSKILL_FORESTTRIP_ID=replace-me
KSKILL_FORESTTRIP_PASSWORD=replace-me
LAW_OC=replace-me
KIPRIS_PLUS_API_KEY=replace-me
AIR_KOREA_OPEN_API_KEY=replace-me
KSKILL_PROXY_BASE_URL=
EOF
chmod 0600 ~/.config/k-skill/secrets.env
์ ์ ์๊ฒ ๋ฌผ์ด์ ์ค์ ๊ฐ์ ์ฑ์ด๋ค.
์์ธ ์งํ์ฒ ๋์ฐฉ์ ๋ณด, ํ๊ตญ ๋ ์จ, ๋ฏธ์ธ๋จผ์ง, ํ๊ฐ ์์, ์ฃผ์ ์ ๊ฐ๊ฒฉ, ์ํ์ฐ๋ ๊ธฐ ๋ฐฐ์ถ์ ๋ณด ์กฐํ, ํ๊ต ๊ธ์ ์๋จ ์กฐํ, ์์ฝํ ์์ ์ฒดํฌ, ์ํ ์์ ์ฒดํฌ๋ KSKILL_PROXY_BASE_URL ์ ๋น์ ๋๋ฉด ๊ธฐ๋ณธ hosted path(k-skill-proxy.nomadamas.org)๋ฅผ ๊ทธ๋๋ก ์ด๋ค. ๋ณ๋ self-host proxy๋ฅผ ์ธ ๋๋ง KSKILL_PROXY_BASE_URL ์ ์ฑ์ด๋ค.
ํ๊ตญ ๋ฒ๋ น ๊ฒ์์ ๋ก์ปฌ korean-law-mcp ๊ฒฝ๋ก๋ฅผ ์ธ ๋๋ง LAW_OC ๋ฅผ ์ฑ์ด๋ค. remote endpoint๋ ์ฌ์ฉ์ LAW_OC ์์ด url๋ง ๋ฑ๋กํ๋ฉด ๋๊ณ , ๊ธฐ์กด ๊ฒฝ๋ก ์ฅ์ ์์๋ ๋ฒ๋ง(https://api.beopmang.org)์ fallback์ผ๋ก ์๋ดํ๋ค.
ํ๊ตญ ๋ถ๋์ฐ ์ค๊ฑฐ๋๊ฐ ์กฐํ๋ ๊ธฐ๋ณธ hosted proxy(k-skill-proxy.nomadamas.org)๋ฅผ ๊ฒฝ์ ํ๋ฏ๋ก ์ฌ์ฉ์ ์ชฝ DATA_GO_KR_API_KEY ๊ฐ ๋ถํ์ํ๋ค.
ํ๊ตญ ์ฃผ์ ์ ๋ณด ์กฐํ๋ ๊ธฐ๋ณธ hosted proxy(k-skill-proxy.nomadamas.org)๋ฅผ ๊ฒฝ์ ํ๋ฏ๋ก ์ฌ์ฉ์ ์ชฝ KRX_API_KEY ๊ฐ ๋ถํ์ํ๋ค. self-host proxy ์ด์์๋ง ์๋ฒ ํ๊ฒฝ๋ณ์ KRX_API_KEY ๋ฅผ ์ฌ์ฉํ๋ค.
๋์๊ด ๋์ ์กฐํ๋ ๊ธฐ๋ณธ hosted proxy(k-skill-proxy.nomadamas.org)๋ฅผ ๊ฒฝ์ ํ๋ฏ๋ก ์ฌ์ฉ์ ์ชฝ DATA4LIBRARY_AUTH_KEY ๊ฐ ๋ถํ์ํ๋ค. self-host proxy ์ด์์๋ง ์๋ฒ ํ๊ฒฝ๋ณ์ DATA4LIBRARY_AUTH_KEY ๋ฅผ ์ฌ์ฉํ๋ค.
์ํ์ฐ๋ ๊ธฐ ๋ฐฐ์ถ์ ๋ณด ์กฐํ๋ k-skill-proxy์ /v1/household-waste/info ๋ผ์ฐํธ๋ฅผ ํธ์ถํ๊ณ , serviceKey(DATA_GO_KR_API_KEY)๋ proxy ์๋ฒ์์ ์ฃผ์
/๊ด๋ฆฌํ๋ฏ๋ก ์ฌ์ฉ์ ์ชฝ DATA_GO_KR_API_KEY ๊ฐ ๋ถํ์ํ๋ค.
ํ๊ต ๊ธ์ ์๋จ ์กฐํ๋ k-skill-proxy์ /v1/neis/school-searchยท/v1/neis/school-meal์ ํธ์ถํ๊ณ , KEDU_INFO_KEY๋ ํ๋ก์ ์๋ฒ์๋ง ๋๋ฏ๋ก ์ฌ์ฉ์ ์ชฝ์ ๋ ํ์๊ฐ ์๋ค.
๋์๊ด ๋์ ์กฐํ๋ k-skill-proxy์ /v1/data4library/* ๋ผ์ฐํธ๋ฅผ ํธ์ถํ๊ณ , DATA4LIBRARY_AUTH_KEY๋ ํ๋ก์ ์๋ฒ์๋ง ๋๋ฏ๋ก ์ฌ์ฉ์ ์ชฝ์ ๋ ํ์๊ฐ ์๋ค.
๊ทผ์ฒ ๊ฐ์ฅ ์ผ ์ฃผ์ ์ ์ฐพ๊ธฐ๋ ๊ธฐ๋ณธ hosted proxy๋ฅผ ๊ฒฝ์ ํ๋ฏ๋ก ์ฌ์ฉ์ ์ชฝ OPINET_API_KEY ๊ฐ ๋ถํ์ํ๋ค.
์์ฝํ ์์ ์ฒดํฌ๋ k-skill-proxy์ /v1/mfds/drug-safety/lookup ๋ผ์ฐํธ๋ฅผ ํธ์ถํ๊ณ , DATA_GO_KR_API_KEY ๋ ํ๋ก์ ์๋ฒ์์๋ง ์ฃผ์
/๊ด๋ฆฌํ๋ฏ๋ก ์ฌ์ฉ์ ์ชฝ์ ๋ ํ์๊ฐ ์๋ค.
์ํ ์์ ์ฒดํฌ๋ k-skill-proxy์ /v1/mfds/food-safety/search ๋ผ์ฐํธ๋ฅผ ํธ์ถํ๊ณ , DATA_GO_KR_API_KEY ๋ฐ ์ ํ์ FOODSAFETYKOREA_API_KEY ๋ ํ๋ก์ ์๋ฒ์์๋ง ์ฃผ์
/๊ด๋ฆฌํ๋ฏ๋ก ์ฌ์ฉ์ ์ชฝ์ ๋ ํ์๊ฐ ์๋ค.
์ฐฝ์
์งํฅ์ K-Startup ์กฐํ๋ k-skill-proxy์ /v1/kstartup/* ๋ผ์ฐํธ๋ฅผ ํธ์ถํ๊ณ , ServiceKey(DATA_GO_KR_API_KEY)๋ ํ๋ก์ ์๋ฒ์์๋ง ์ฃผ์
/๊ด๋ฆฌํ๋ฏ๋ก ์ผ๋ฐ ์กฐํ๋ ์ฌ์ฉ์ ์ชฝ์ ํค๊ฐ ํ์ ์๋ค. --direct ํธ์ถ์ ์ธ ๋๋ง KSKILL_KSTARTUP_API_KEY ๋ฅผ ์ฑ์ด๋ค.
ํ๊ตญ ํนํ ์ ๋ณด ๊ฒ์์ KIPRIS Plus Open API ๊ฒฝ๋ก๋ฅผ ์ธ ๋ KIPRIS_PLUS_API_KEY ๋ฅผ ์ฑ์ด๋ค. helper๋ ์ด ๊ฐ์ ์ฝ์ด ์ค์ ์์ฒญ์์ ServiceKey ์ฟผ๋ฆฌ ํ๋ผ๋ฏธํฐ๋ก ๋ณด๋ธ๋ค. ๊ณต๊ณต๋ฐ์ดํฐํฌํธ์์ ๋ณต์ฌํ percent-encoded key๋ ๊ทธ๋๋ก ๋ฃ์ด๋ ๋๋ค.
์ธ์ฆ ์คํฌ์์ ๊ฐ์ด ๋น ์ก์ ๋๋ credential resolution order์ ๋ฐ๋ผ ํ๋ณดํ๋ค.
ํ์ํ ๊ฐ ์:
KSKILL_SRT_ID, KSKILL_SRT_PASSWORDKSKILL_KTX_ID, KSKILL_KTX_PASSWORDKSKILL_FORESTTRIP_ID, KSKILL_FORESTTRIP_PASSWORDLAW_OC + korean-law-mcpLAW_OC ์์ด url๋ง ๋ฑ๋ก, ์ฅ์ ์ ๋ฒ๋ง fallbackKIPRIS_PLUS_API_KEYKRX_API_KEY)serviceKey๋ proxy ์๋ฒ ์ฃผ์
, ํธ์ถ ์ pageNo=1ยทnumOfRows=100 ํ์)KEDU_INFO_KEY๋ proxy ์๋ฒ๋ง)DATA4LIBRARY_AUTH_KEY๋ proxy ์๋ฒ๋ง)DATA_GO_KR_API_KEY๋ proxy ์๋ฒ๋ง)DATA_GO_KR_API_KEY์ ์ ํ์ FOODSAFETYKOREA_API_KEY๋ proxy ์๋ฒ๋ง)DATA_GO_KR_API_KEY๋ proxy ์๋ฒ๋ง; --direct ํธ์ถ ๋๋ง KSKILL_KSTARTUP_API_KEY)SEOUL_OPEN_API_KEY)SEOUL_OPEN_API_KEY)KMA_OPEN_API_KEY)KSKILL_PROXY_BASE_URL ๋๋ AIR_KOREA_OPEN_API_KEY์ํฌ๋ฆฟ์ด ๋น์ด ์๋ค๋ ์ด์ ๋ก ๋ค๋ฅธ ์๋น์ค๋ ๋น๊ณต์ ์ฐํ ๊ฒฝ๋ก๋ฅผ ์๋ ์ ํํ์ง ์๋๋ค.
bash scripts/check-setup.sh
setup์ด ๋๋๋ฉด ์ฌ์ฉ์์๊ฒ ์ฃผ๊ธฐ์ ์ธ ์ ๋ฐ์ดํธ ํ์ธ ์๋ํ๋ฅผ ์ํ๋์ง ๋จผ์ ๋ฌป๋๋ค. ์ํ์ง ์์ผ๋ฉด ๊ฑด๋๋ด๋ค.
๊ธฐ๋ณธ ์ ์ฑ :
์
๋ฐ์ดํธ ํ์ธ ๋ง ๊ธฐ๋ณธ์ผ๋ก ์ ์ํ๋คcrontab, launchd, schtasks)์ ๋์ ์์ด ์ ์ฉํ์ง ์๋๋คnpx --yes skills check์๋ ์
๋ฐ์ดํธ ๋ฅผ ์ํ ๋๋ง npx --yes skills update ๊ธฐ๋ฐ ์ค์ผ์ค์ ๋ณ๋๋ก ์ ์ํ๋คmacOS / Linux ์์:
mkdir -p ~/.config/k-skill/bin ~/.config/k-skill/logs
cat > ~/.config/k-skill/bin/check-skill-updates.sh <<'EOF'
#!/usr/bin/env bash
set -euo pipefail
mkdir -p "$HOME/.config/k-skill/logs"
{
date '+[%Y-%m-%d %H:%M:%S]'
npx --yes skills check
printf '\n'
} >> "$HOME/.config/k-skill/logs/skills-check.log" 2>&1
EOF
chmod +x ~/.config/k-skill/bin/check-skill-updates.sh
(crontab -l 2>/dev/null; echo "0 9 * * * $HOME/.config/k-skill/bin/check-skill-updates.sh") | crontab -
Windows ์์:
New-Item -ItemType Directory -Force "$HOME/.config/k-skill/bin" | Out-Null
New-Item -ItemType Directory -Force "$HOME/.config/k-skill/logs" | Out-Null
@'
npx --yes skills check >> "$HOME/.config/k-skill/logs/skills-check.log" 2>&1
'@ | Set-Content "$HOME/.config/k-skill/bin/check-skill-updates.cmd"
schtasks /Create /SC DAILY /TN "k-skill-update-check" /TR "\"$HOME/.config/k-skill/bin/check-skill-updates.cmd\"" /ST 09:00 /F
์ค์ ํ์๋ ๋ก๊ทธ ์์น๋ฅผ ์งง๊ฒ ์๋ ค์ค๋ค:
~/.config/k-skill/logs/skills-check.logsetup ๋ง์ง๋ง์๋ ๋ค์์ฒ๋ผ ์งง๊ฒ ๋ฌป๋๋ค.
k-skill ์ ์ฅ์(NomaDamas/k-skill)์ GitHub star๋ฅผ ๋๋ฌ๋๋ฆด๊น์?
์ํ์๋ฉด `gh` ๋ก ๋ฐ๋ก ์ฒ๋ฆฌํ๊ณ , ์ํ์ง ์์ผ๋ฉด ๊ฑด๋๋๋๋ค.
๊ท์น:
gh repo star ๋ฅผ ์คํํ์ง ์๋๋คgh ๊ฐ ์๊ฑฐ๋ ์ธ์ฆ๋์ง ์์์ผ๋ฉด ์ค์น/๋ก๊ทธ์ธ ์๋ด๋ง ํ๊ณ ์๋ ์ฐํํ์ง ์๋๋คNomaDamas/k-skill ์ด๋ค๋์ํ๊ณ gh auth status ๊ฐ ์ ์์ด๋ฉด:
gh repo star NomaDamas/k-skill
์ฑ๊ณตํ๋ฉด ์งง๊ฒ ์๋ฃ๋ง ์๋ฆฐ๋ค.
~/.config/k-skill/secrets.env exists with permission 0600 (๋๋ ์์ด์ ํธ๊ฐ ์์ฒด vault๋ก credential์ ๊ด๋ฆฌ ์ค)