@nomadamas/k-skill 0.2.4 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skills/k-skill-cleaner/instruction.md +1 -1
- package/skills/k-skill-setup/instruction.md +114 -157
- package/skills/k-skill-setup/skill.json +2 -2
- package/skills/ktx-booking/instruction.md +38 -221
- package/skills/ktx-booking/references/AUTOMATION-LEGAL-STATEMENT.md +10 -0
- package/skills/ktx-booking/scripts/ktx_booking.py +176 -1274
- package/skills/ktx-booking/scripts/ktx_booking.py.lock +27 -0
- package/skills/ktx-booking/scripts/ktx_timetable.py +141 -0
- package/skills/ktx-booking/skill.json +11 -5
- package/skills/seoul-weather-risk/instruction.md +28 -35
- package/skills/seoul-weather-risk/scripts/seoul_weather_risk.py +15 -68
- package/skills/seoul-weather-risk/skill.json +2 -2
- package/skills/srt-booking/instruction.md +48 -154
- package/skills/srt-booking/references/AUTOMATION-LEGAL-STATEMENT.md +25 -0
- package/skills/srt-booking/scripts/srt_booking.py +134 -235
- package/skills/srt-booking/scripts/srt_booking.py.lock +207 -0
- package/skills/srt-booking/skill.json +5 -7
- package/skills/store-longevity-radar/instruction.md +7 -3
- package/skills/store-longevity-radar/scripts/__pycache__/store_longevity_download.cpython-312.pyc +0 -0
- package/skills/store-longevity-radar/scripts/store_longevity_download.py +136 -0
- package/skills/store-longevity-radar/scripts/store_longevity_radar.py +1 -51
- package/src/assemble.js +1 -1
- package/src/execute.js +13 -3
- package/skills/srt-booking/scripts/srt_seats.py +0 -156
- package/skills/used-car-price-search/instruction.md +0 -109
- package/skills/used-car-price-search/references/TRADEMARK-LEGAL-STATEMENT.md +0 -9
- package/skills/used-car-price-search/skill.json +0 -8
package/package.json
CHANGED
|
@@ -36,7 +36,7 @@ npx -y @nomadamas/k-skill@0 exec k-skill-cleaner scripts/k_skill_cleaner.py -- \
|
|
|
36
36
|
--skills-root . \
|
|
37
37
|
--scan-default-logs \
|
|
38
38
|
--days 90 \
|
|
39
|
-
--never-use
|
|
39
|
+
--never-use lotto-results,market-kurly-search \
|
|
40
40
|
--keep k-skill-setup,k-skill-cleaner
|
|
41
41
|
```
|
|
42
42
|
|
|
@@ -2,184 +2,164 @@
|
|
|
2
2
|
|
|
3
3
|
## Purpose
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
`k-skill` 스킬 설치부터 CLI 런타임, credential, 환경 검증까지 한 번에 정리한다.
|
|
6
|
+
이미 설치된 항목은 확인만 하고 건너뛴다.
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
- 런타임 환경변수 확인
|
|
9
|
-
- 선택 사항: 주기적인 업데이트 확인 자동화
|
|
10
|
-
- 선택 사항: GitHub star 여부 확인 및 동의 시 실행
|
|
8
|
+
기본 원칙:
|
|
11
9
|
|
|
12
|
-
|
|
10
|
+
- Node.js 18 이상과 `npx`를 사용한다.
|
|
11
|
+
- credential은 환경변수, agent vault, `~/.config/k-skill/secrets.env` 순으로 확인한다.
|
|
12
|
+
- Dolshoi credential mode에서는 평문 credential을 요청하거나 파일에 직접 저장하지 않는다.
|
|
13
|
+
- 설치, 예약 작업, GitHub star처럼 외부 상태를 바꾸는 작업은 실행 전에 동의를 받는다.
|
|
14
|
+
- 사용자가 승인한 범위만 실행하고 별도 helper, 요약, AI/CLI 예약 작업을 추가하지 않는다.
|
|
13
15
|
|
|
14
|
-
|
|
15
|
-
- credential resolution order에 따라 확보한다
|
|
16
|
-
- 필요한 패키지가 없으면 대체 구현을 찾기보다 전역 설치를 먼저 시도한다
|
|
17
|
-
- `cron`, `launchd`, `schtasks`, `gh` 같은 지속성/외부 상태 변경은 자동으로 하지 말고 먼저 사용자 동의를 받는다
|
|
18
|
-
- GitHub star는 사용자가 명시적으로 동의했을 때만 실행한다
|
|
16
|
+
## 1. Install the skills
|
|
19
17
|
|
|
20
|
-
|
|
18
|
+
일반적인 Claude Code, Codex, OpenCode, OpenClaw 등에서는 `skills` CLI로 전체 스킬을
|
|
19
|
+
전역 설치하는 경로를 권장한다.
|
|
21
20
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
2. 필요한 login capability가 이미 provision되어 있으면 `vault-run <capability_id> <action> [args...]`를 사용한다.
|
|
26
|
-
3. capability가 없으면 username/password/key를 채팅으로 묻지 말고 `request_vault_credential` tool로 앱 vault 입력 UI를 호출한다.
|
|
27
|
-
4. 내장 browser tool이 CloakBrowser를 제공하거나 `CLOAKBROWSER_PEEK_TOKEN`이 있으면 browser action은 CloakBrowser를 우선한다.
|
|
28
|
-
5. 조회 결과가 실제 action의 입력이면 공식 표면에서 장바구니, 예약, 신청서 작성, 연락 초안 등 가역적 단계를 이어서 수행한다.
|
|
29
|
-
6. 결제, 실제 메시지/메일 전송, 최종 제출, 취소 같은 비가역 효과 직전에만 `clarify`로 대상·금액/payload·효과를 승인받고, 승인되면 같은 turn에 실행한다.
|
|
21
|
+
```bash
|
|
22
|
+
npx --yes skills add NomaDamas/k-skill --all -g
|
|
23
|
+
```
|
|
30
24
|
|
|
31
|
-
|
|
25
|
+
목록을 먼저 보거나 일부 스킬만 설치하려면:
|
|
32
26
|
|
|
33
|
-
|
|
27
|
+
```bash
|
|
28
|
+
npx --yes skills add NomaDamas/k-skill --list
|
|
29
|
+
npx --yes skills add NomaDamas/k-skill --skill <skill-name> -g
|
|
30
|
+
```
|
|
34
31
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
3. **`~/.config/k-skill/secrets.env`** (기본 fallback) — plain dotenv 파일, 퍼미션 `0600`.
|
|
38
|
-
4. **아무것도 없으면** 유저에게 물어서 2 또는 3에 저장한다.
|
|
32
|
+
Claude Code에서는 marketplace plugin으로 전체 번들을 설치하는 경로도 지원한다.
|
|
33
|
+
Claude Code 안에서 다음 명령을 실행한다.
|
|
39
34
|
|
|
40
|
-
|
|
35
|
+
```text
|
|
36
|
+
/plugin marketplace add NomaDamas/k-skill
|
|
37
|
+
/plugin install k-skill@k-skill
|
|
38
|
+
```
|
|
41
39
|
|
|
42
|
-
|
|
40
|
+
plugin으로 설치한 스킬은 `/k-skill:<스킬 이름>`으로 호출한다.
|
|
41
|
+
예: `/k-skill:k-skill-setup`, `/k-skill:lotto-results`.
|
|
43
42
|
|
|
44
|
-
|
|
43
|
+
두 설치 방식을 중복 실행할 필요는 없다. 현재 agent에서 스킬이 이미 보이면 설치를
|
|
44
|
+
다시 하지 말고 다음 단계로 진행한다.
|
|
45
45
|
|
|
46
|
-
##
|
|
46
|
+
## 2. Use the k-skill CLI
|
|
47
47
|
|
|
48
|
-
|
|
48
|
+
설치되는 `SKILL.md`는 스킬 선택과 최소 안전 규칙을 담은 adapter다. 전체 instruction
|
|
49
|
+
조립과 bundled `scripts/`, `references/` 접근은 `@nomadamas/k-skill` CLI가 담당한다.
|
|
49
50
|
|
|
50
|
-
|
|
51
|
+
기본 경로는 `npx`이며 CLI를 별도로 설치할 필요는 없다.
|
|
51
52
|
|
|
52
53
|
```bash
|
|
53
|
-
npx
|
|
54
|
+
npx -y @nomadamas/k-skill@0 instruct k-skill-setup
|
|
55
|
+
npx -y @nomadamas/k-skill@0 list
|
|
54
56
|
```
|
|
55
57
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
## Setup steps
|
|
59
|
-
|
|
60
|
-
### 1. Create the default secrets file (generic fallback only)
|
|
61
|
-
|
|
62
|
-
돌쇠 credential mode나 다른 host vault를 쓰지 않는 경우에만 기본 fallback 파일을 만든다.
|
|
58
|
+
반복 사용으로 전역 명령이 필요할 때만 선택적으로 설치한다.
|
|
63
59
|
|
|
64
60
|
```bash
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
KSKILL_SRT_ID=replace-me
|
|
68
|
-
KSKILL_SRT_PASSWORD=replace-me
|
|
69
|
-
KSKILL_KTX_ID=replace-me
|
|
70
|
-
KSKILL_KTX_PASSWORD=replace-me
|
|
71
|
-
KSKILL_FORESTTRIP_ID=replace-me
|
|
72
|
-
KSKILL_FORESTTRIP_PASSWORD=replace-me
|
|
73
|
-
KSKILL_EV_CHARGER_API_KEY=replace-me
|
|
74
|
-
KSKILL_BUILDING_REGISTER_API_KEY=replace-me
|
|
75
|
-
KSKILL_RISS_API_KEY=replace-me
|
|
76
|
-
LAW_OC=replace-me
|
|
77
|
-
KIPRIS_PLUS_API_KEY=replace-me
|
|
78
|
-
AIR_KOREA_OPEN_API_KEY=replace-me
|
|
79
|
-
KSKILL_PROXY_BASE_URL=
|
|
80
|
-
EOF
|
|
81
|
-
chmod 0600 ~/.config/k-skill/secrets.env
|
|
61
|
+
npm install -g @nomadamas/k-skill@0
|
|
62
|
+
k-skill instruct k-skill-setup
|
|
82
63
|
```
|
|
83
64
|
|
|
84
|
-
|
|
65
|
+
bundled helper와 reference는 항상 CLI를 통해 사용한다.
|
|
85
66
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
한국 부동산 실거래가 조회는 기본 hosted proxy(`k-skill-proxy.nomadamas.org`)를 경유하므로 사용자 쪽 `DATA_GO_KR_API_KEY` 가 불필요하다.
|
|
67
|
+
```bash
|
|
68
|
+
npx -y @nomadamas/k-skill@0 exec <skill-name> scripts/<file> -- <args>
|
|
69
|
+
npx -y @nomadamas/k-skill@0 read <skill-name> references/<file>
|
|
70
|
+
```
|
|
91
71
|
|
|
92
|
-
|
|
72
|
+
설치된 스킬 디렉터리나 repository 상대 경로에서 helper를 직접 실행하지 않는다.
|
|
93
73
|
|
|
94
|
-
|
|
74
|
+
## 3. Resolve credentials
|
|
95
75
|
|
|
96
|
-
|
|
76
|
+
각 스킬이 요구하는 값만 준비한다. 모든 credential을 미리 요구하지 않는다.
|
|
97
77
|
|
|
98
|
-
|
|
78
|
+
credential resolution order:
|
|
99
79
|
|
|
100
|
-
|
|
80
|
+
1. 현재 프로세스 환경변수
|
|
81
|
+
2. agent가 제공하는 secret vault
|
|
82
|
+
3. 기본 fallback `~/.config/k-skill/secrets.env`
|
|
83
|
+
4. 필요한 값이 없으면 정확한 환경변수 이름과 발급처를 안내
|
|
101
84
|
|
|
102
|
-
|
|
85
|
+
Dolshoi credential mode:
|
|
103
86
|
|
|
104
|
-
|
|
87
|
+
- `DOLSHOI_ACTION_BROKER_URL`과 usable `vault-run`이 모두 있을 때만 활성화한다.
|
|
88
|
+
- plaintext credential을 묻거나 출력하거나 `secrets.env`를 만들지 않는다.
|
|
89
|
+
- 필요한 credential이 없으면 `request_vault_credential`을 사용한다.
|
|
105
90
|
|
|
106
|
-
|
|
91
|
+
Generic mode에서 fallback 파일이 필요하면:
|
|
107
92
|
|
|
108
|
-
|
|
93
|
+
```bash
|
|
94
|
+
mkdir -p ~/.config/k-skill
|
|
95
|
+
touch ~/.config/k-skill/secrets.env
|
|
96
|
+
chmod 0600 ~/.config/k-skill/secrets.env
|
|
97
|
+
```
|
|
109
98
|
|
|
110
|
-
|
|
99
|
+
실제 값은 사용자가 이용 중인 가장 안전한 입력 표면으로 받는다. 대화에 평문 값을
|
|
100
|
+
붙여 넣도록 요구하지 않는다.
|
|
111
101
|
|
|
112
|
-
|
|
102
|
+
`KSKILL_PROXY_BASE_URL`을 비워 두면 `k-skill-proxy` 기반 스킬은 기본 hosted endpoint를 사용한다.
|
|
103
|
+
사용자가 직접 운영하는 proxy가 있을 때만 URL을 설정한다.
|
|
113
104
|
|
|
114
|
-
|
|
105
|
+
```bash
|
|
106
|
+
KSKILL_PROXY_BASE_URL=
|
|
107
|
+
# KSKILL_PROXY_BASE_URL=https://your-proxy.example.com
|
|
108
|
+
```
|
|
115
109
|
|
|
116
|
-
|
|
110
|
+
무료 hosted proxy로 처리되는 기능에는 사용자 upstream API key를 요구하지 않는다.
|
|
111
|
+
로그인 기반 스킬은 해당 스킬의 공식 로그인/browser 절차를 따르며 credential을
|
|
112
|
+
`secrets.env`에 복사하도록 요구하지 않는다.
|
|
117
113
|
|
|
118
|
-
|
|
114
|
+
Hosted proxy 기본 계약:
|
|
119
115
|
|
|
120
|
-
|
|
116
|
+
- 미세먼지, 한강 수위, 주유소 가격, 생활쓰레기 배출정보 조회, 학교 급식 식단 조회, 의약품 안전 체크, 식품 안전 체크는 `KSKILL_PROXY_BASE_URL`을 비워 두면 기본 hosted endpoint를 사용한다.
|
|
117
|
+
- 서울 지하철: 사용자 시크릿 불필요 (기본 hosted proxy 사용, 운영자만 `SEOUL_OPEN_API_KEY`).
|
|
118
|
+
- 생활쓰레기 배출정보 조회: 사용자 시크릿 불필요. `/v1/household-waste/info`와 운영자 서버의 `DATA_GO_KR_API_KEY`를 사용한다.
|
|
119
|
+
- 학교 급식 식단 조회: 사용자 시크릿 불필요. `/v1/neis/school-search`, `/v1/neis/school-meal`과 운영자 서버의 `KEDU_INFO_KEY`를 사용한다.
|
|
120
|
+
- 한국 법령 검색은 기본 hosted proxy를 사용하며, 운영자만 서버 환경변수 `LAW_OC`를 설정한다.
|
|
121
|
+
- 한국 특허 정보 검색: `KIPRIS_PLUS_API_KEY`는 운영자 서버에만 둔다.
|
|
122
|
+
- 한국 주식 정보 조회는 proxy가 운영자 `KRX_API_KEY`를 사용하므로 사용자 키가 불필요하다.
|
|
123
|
+
- 부동산 실거래가 조회와 주유소 가격 조회도 hosted proxy 기본 경로에서는 사용자 upstream key가 불필요하다.
|
|
121
124
|
|
|
122
|
-
|
|
125
|
+
## 4. Verify the setup
|
|
123
126
|
|
|
124
|
-
|
|
125
|
-
- KTX: `KSKILL_KTX_ID`, `KSKILL_KTX_PASSWORD`
|
|
126
|
-
- 자연휴양림 빈 객실 조회: `KSKILL_FORESTTRIP_ID`, `KSKILL_FORESTTRIP_PASSWORD`
|
|
127
|
-
- 한국 법령 검색: 사용자 시크릿 불필요 (기본 hosted proxy 사용, 운영자만 `LAW_OC`)
|
|
128
|
-
- 한국 부동산 실거래가 조회: 사용자 시크릿 불필요 (기본 hosted proxy 사용)
|
|
129
|
-
- 한국 특허 정보 검색: `KIPRIS_PLUS_API_KEY`
|
|
130
|
-
- 한국 주식 정보 조회: 사용자 시크릿 불필요 (기본 hosted proxy 사용, 운영자만 `KRX_API_KEY`)
|
|
131
|
-
- 생활쓰레기 배출정보 조회: 사용자 시크릿 불필요 (`serviceKey`는 proxy 서버 주입, 호출 시 `pageNo=1`·`numOfRows=100` 필수)
|
|
132
|
-
- 학교 급식 식단 조회: 사용자 시크릿 불필요 (`KEDU_INFO_KEY`는 proxy 서버만)
|
|
133
|
-
- 도서관 도서 조회: 사용자 시크릿 불필요 (`DATA4LIBRARY_AUTH_KEY`는 proxy 서버만)
|
|
134
|
-
- 의약품 안전 체크: 사용자 시크릿 불필요 (`DATA_GO_KR_API_KEY`는 proxy 서버만)
|
|
135
|
-
- 식품 안전 체크: 사용자 시크릿 불필요 (`DATA_GO_KR_API_KEY`와 선택적 `FOODSAFETYKOREA_API_KEY`는 proxy 서버만)
|
|
136
|
-
- 창업진흥원 K-Startup 조회: 사용자 시크릿 불필요 (`DATA_GO_KR_API_KEY`는 proxy 서버만; `--direct` 호출 때만 `KSKILL_KSTARTUP_API_KEY`)
|
|
137
|
-
- 전기차 충전소 위치·상태 조회: 사용자 시크릿 불필요 (hosted proxy 사용; `--direct` 때만 `KSKILL_EV_CHARGER_API_KEY` 또는 `DATA_GO_KR_API_KEY`)
|
|
138
|
-
- 건축물대장 표제부 조회: 사용자 시크릿 불필요 (hosted proxy 사용; `--direct` 때만 `KSKILL_BUILDING_REGISTER_API_KEY` 또는 `DATA_GO_KR_API_KEY`)
|
|
139
|
-
- KERIS/RISS 학술자료 검색: 사용자 본인 `KSKILL_RISS_API_KEY`(호환 `RISS_API_KEY`) 필요 (RISS 검색 API는 비영리 기관/대학 전용 키로 직접 호출, proxy 미사용)
|
|
140
|
-
- 근처 가장 싼 주유소 찾기: 사용자 시크릿 불필요 (기본 hosted proxy 사용)
|
|
141
|
-
- 서울 지하철: 사용자 시크릿 불필요 (기본 hosted proxy 사용, 운영자만 `SEOUL_OPEN_API_KEY`)
|
|
142
|
-
- 서울 실시간 혼잡도: 사용자 시크릿 불필요 (기본 hosted proxy 사용, 운영자만 `SEOUL_OPEN_API_KEY`)
|
|
143
|
-
- 한국 날씨: 사용자 시크릿 불필요 (기본 hosted proxy 사용, 운영자만 `KMA_OPEN_API_KEY`)
|
|
144
|
-
- 사용자 위치 미세먼지 조회: `KSKILL_PROXY_BASE_URL` 또는 `AIR_KOREA_OPEN_API_KEY`
|
|
127
|
+
bundled 검증 helper를 CLI로 실행한다.
|
|
145
128
|
|
|
146
|
-
|
|
129
|
+
```bash
|
|
130
|
+
npx -y @nomadamas/k-skill@0 exec k-skill-setup scripts/check-setup.sh --
|
|
131
|
+
```
|
|
147
132
|
|
|
148
|
-
|
|
133
|
+
Generic mode에서 `secrets.env`가 필요하지 않은 구성이라면 파일 부재 자체를 전체 설치
|
|
134
|
+
실패로 단정하지 않는다. 실제 사용할 스킬의 필수 환경변수와 CLI 실행 가능 여부를 함께
|
|
135
|
+
확인한다.
|
|
149
136
|
|
|
150
|
-
|
|
137
|
+
최소 확인:
|
|
151
138
|
|
|
152
139
|
```bash
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
echo "next steps:"
|
|
157
|
-
echo " 1. create ~/.config/k-skill/secrets.env with your credentials"
|
|
158
|
-
echo " 2. chmod 0600 ~/.config/k-skill/secrets.env"
|
|
159
|
-
else
|
|
160
|
-
perms=$(stat -f '%Lp' "$secrets_file" 2>/dev/null || stat -c '%a' "$secrets_file" 2>/dev/null)
|
|
161
|
-
if [ "$perms" != "600" ]; then
|
|
162
|
-
echo "insecure permissions on $secrets_file: $perms (expected 600)"
|
|
163
|
-
echo "run: chmod 0600 $secrets_file"
|
|
164
|
-
else
|
|
165
|
-
echo "k-skill setup looks usable"
|
|
166
|
-
fi
|
|
167
|
-
fi
|
|
140
|
+
node --version
|
|
141
|
+
npx -y @nomadamas/k-skill@0 list
|
|
142
|
+
npx -y @nomadamas/k-skill@0 instruct k-skill-setup
|
|
168
143
|
```
|
|
169
144
|
|
|
170
|
-
|
|
145
|
+
확인이 끝나면 다음만 짧게 보고한다.
|
|
171
146
|
|
|
172
|
-
|
|
147
|
+
- 사용한 스킬 설치 방식 (`skills` 또는 Claude Code plugin)
|
|
148
|
+
- CLI 사용 방식 (`npx` 기본 또는 선택적 global install)
|
|
149
|
+
- 준비된 credential과 아직 필요한 환경변수 이름
|
|
150
|
+
- 검증 성공/실패와 사용자가 해야 할 다음 한 단계
|
|
173
151
|
|
|
174
|
-
|
|
152
|
+
## 5. Optional update checks
|
|
175
153
|
|
|
176
|
-
|
|
154
|
+
주기적인 업데이트 확인을 원하는지 먼저 묻는다. 원하지 않으면 건너뛴다.
|
|
177
155
|
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
- 기본
|
|
181
|
-
-
|
|
182
|
-
-
|
|
156
|
+
정책:
|
|
157
|
+
|
|
158
|
+
- 기본 명령은 설치를 변경하지 않는 `npx --yes skills check`다.
|
|
159
|
+
- `check`에 `-g` 같은 추가 옵션을 붙이지 않는다.
|
|
160
|
+
- 자동 업데이트는 사용자가 명시적으로 요청한 경우에만 별도로 논의한다.
|
|
161
|
+
- 사용자가 승인한 확인 작업만 생성한다.
|
|
162
|
+
- 별도 요약 작업, helper script, `claude -p` 같은 AI/CLI 작업을 함께 만들지 않는다.
|
|
183
163
|
|
|
184
164
|
macOS / Linux 예시:
|
|
185
165
|
|
|
@@ -210,44 +190,21 @@ npx --yes skills check >> "$HOME/.config/k-skill/logs/skills-check.log" 2>&1
|
|
|
210
190
|
schtasks /Create /SC DAILY /TN "k-skill-update-check" /TR "\"$HOME/.config/k-skill/bin/check-skill-updates.cmd\"" /ST 09:00 /F
|
|
211
191
|
```
|
|
212
192
|
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
- `~/.config/k-skill/logs/skills-check.log`
|
|
193
|
+
사용자가 이 확인 작업 하나만 승인했다면 `k-skill-update-check` 외의 예약 작업이나
|
|
194
|
+
추가 스크립트를 만들지 않는다.
|
|
216
195
|
|
|
217
|
-
|
|
196
|
+
## 6. Optional GitHub star
|
|
218
197
|
|
|
219
|
-
|
|
198
|
+
마지막에 한 번만 묻는다.
|
|
220
199
|
|
|
221
200
|
```text
|
|
222
201
|
k-skill 저장소(NomaDamas/k-skill)에 GitHub star를 눌러드릴까요?
|
|
223
|
-
원하시면 `gh` 로 바로 처리하고, 원하지 않으면 건너뜁니다.
|
|
224
202
|
```
|
|
225
203
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
- 사용자가 명시적으로 동의하기 전에는 star API를 호출하지 않는다
|
|
229
|
-
- `gh` 가 없거나 인증되지 않았으면 설치/로그인 안내만 하고 자동 우회하지 않는다
|
|
230
|
-
- star 대상 저장소는 `NomaDamas/k-skill` 이다
|
|
231
|
-
|
|
232
|
-
동의했고 `gh auth status` 가 정상이면 GitHub API로 star를 실행한다. (`gh` CLI에는 `repo star` 서브커맨드가 없다.)
|
|
204
|
+
동의한 경우에만 실행한다.
|
|
233
205
|
|
|
234
206
|
```bash
|
|
235
|
-
|
|
236
|
-
gh api user/starred/NomaDamas/k-skill >/dev/null 2>&1 && echo "already starred" || echo "not starred yet"
|
|
237
|
-
|
|
238
|
-
# star 실행
|
|
239
|
-
gh api -X PUT user/starred/NomaDamas/k-skill
|
|
207
|
+
gh api -X PUT /user/starred/NomaDamas/k-skill
|
|
240
208
|
```
|
|
241
209
|
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
## Completion checklist
|
|
245
|
-
|
|
246
|
-
- `~/.config/k-skill/secrets.env` exists with permission `0600` (또는 에이전트가 자체 vault로 credential을 관리 중)
|
|
247
|
-
- 필요한 환경변수가 설정되어 있다
|
|
248
|
-
- 사용자가 원한 경우에만 업데이트 확인 자동화 또는 GitHub star가 설정되었다
|
|
249
|
-
|
|
250
|
-
## Notes
|
|
251
|
-
|
|
252
|
-
- 기본 흐름은 "전체 스킬 설치 → 이 setup skill 실행 → 개별 기능 사용" 이다
|
|
253
|
-
- 저장소 안에는 secret file을 두지 않는다
|
|
210
|
+
동의하지 않거나 `gh` 인증이 없으면 건너뛴다.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "k-skill-setup",
|
|
3
|
-
"description": "
|
|
3
|
+
"description": "Install the k-skill bundle, use the unified CLI, resolve credentials, verify the runtime, and optionally configure update checks and GitHub starring.",
|
|
4
4
|
"profiles": [
|
|
5
5
|
"proxy",
|
|
6
6
|
"vault",
|
|
7
7
|
"browser",
|
|
8
8
|
"operations"
|
|
9
9
|
],
|
|
10
|
-
"frontmatter": "name: k-skill-setup\ndescription:
|
|
10
|
+
"frontmatter": "name: k-skill-setup\ndescription: Install the k-skill bundle, use the unified CLI, resolve credentials, verify the runtime, and optionally configure update checks and GitHub starring.\nlicense: MIT\nmetadata:\n category: setup\n locale: ko-KR\n phase: v1",
|
|
11
11
|
"bundle": [
|
|
12
12
|
{
|
|
13
13
|
"from": "scripts/check-setup.sh",
|