hwpx-kit-cli 0.1.1__tar.gz → 0.1.2__tar.gz
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.
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/.claude-plugin/plugin.json +1 -1
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/PKG-INFO +3 -2
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/README.md +2 -1
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/install.ps1 +58 -58
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/install.sh +29 -29
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/pyproject.toml +1 -1
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/hwpx-form/SKILL.md +2 -1
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/.claude-plugin/marketplace.json +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/.gitignore +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/CLAUDE.md +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/LICENSE +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/commands/hwpx.md +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/sample-values.json +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/scripts/build_skill_package.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/scripts/check_stdout_purity.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/scripts/make_sample.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/doc-create/SKILL.md +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/format-convert/SKILL.md +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/gongmun-format/SKILL.md +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/office-export/SKILL.md +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/table-calc/SKILL.md +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/__init__.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/__init__.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/base.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/hwpx_engine.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/kordoc_engine.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/office_readers.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/cli.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/__init__.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/analyze.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/convert.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/export.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/fill.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/fmt.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/generate.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/outline.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/page_break.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/read.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/render.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/row_height.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_clear.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_copy.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_map_cmd.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_new.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_set.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/validate.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/format.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/output.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/templates/Default_Template.hwpx +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/__init__.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/conftest.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/legacy-sample.hwp +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/seoul-attachment.hwpx +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/seoul-body.hwpx +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/seoul-report-brief.hwpx +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/seoul-report-cover.hwpx +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_adapter.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_analyze.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_cli.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_convert.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_export.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_fill.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_format.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_integration.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_kordoc.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_office_readers.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_output.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_page_break.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_read_validate.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_real_forms.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_row_height.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_skill_package.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_stdout_purity.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_table_clear.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_table_copy.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_table_map_new.py +0 -0
- {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_table_set.py +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hwpx-kit",
|
|
3
3
|
"description": "한글(HWPX/HWP) 문서 자동화 스킬 모음 — 양식 분석·채우기·백지 생성·표기 변환·공문 규약·표 계산·오피스 출력. CLI는 첫 사용 시 스킬이 설치를 안내 (Python 3.10+ 필요).",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.2",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "6aneffy",
|
|
7
7
|
"email": "tkdgus990809@gmail.com"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: hwpx-kit-cli
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: 한글(HWPX) 문서 자동화 CLI — Korean HWPX document automation for AI agents: analyze, fill, read, validate, table ops
|
|
5
5
|
Project-URL: Homepage, https://github.com/6aneffy/hwpx-kit
|
|
6
6
|
Project-URL: Repository, https://github.com/6aneffy/hwpx-kit
|
|
@@ -30,6 +30,7 @@ Description-Content-Type: text/markdown
|
|
|
30
30
|
*"이 양식에 채워줘" 한마디로, 서식 무손상 한글 문서가 나옵니다.*
|
|
31
31
|
|
|
32
32
|
[](LICENSE)
|
|
33
|
+
[](https://pypi.org/project/hwpx-kit-cli/)
|
|
33
34
|
[](https://www.python.org/)
|
|
34
35
|
[](https://claude.com/claude-code)
|
|
35
36
|
[](tests/)
|
|
@@ -81,7 +82,7 @@ Claude Code에서:
|
|
|
81
82
|
<summary>수동 설치</summary>
|
|
82
83
|
|
|
83
84
|
```bash
|
|
84
|
-
pip install
|
|
85
|
+
pip install hwpx-kit-cli
|
|
85
86
|
```
|
|
86
87
|
|
|
87
88
|
```powershell
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*"이 양식에 채워줘" 한마디로, 서식 무손상 한글 문서가 나옵니다.*
|
|
8
8
|
|
|
9
9
|
[](LICENSE)
|
|
10
|
+
[](https://pypi.org/project/hwpx-kit-cli/)
|
|
10
11
|
[](https://www.python.org/)
|
|
11
12
|
[](https://claude.com/claude-code)
|
|
12
13
|
[](tests/)
|
|
@@ -58,7 +59,7 @@ Claude Code에서:
|
|
|
58
59
|
<summary>수동 설치</summary>
|
|
59
60
|
|
|
60
61
|
```bash
|
|
61
|
-
pip install
|
|
62
|
+
pip install hwpx-kit-cli
|
|
62
63
|
```
|
|
63
64
|
|
|
64
65
|
```powershell
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
# hwpx-kit installer (Windows)
|
|
2
|
-
$ErrorActionPreference = "Stop"
|
|
3
|
-
|
|
4
|
-
$source = $env:HWPX_KIT_SOURCE
|
|
5
|
-
if (-not $source) {
|
|
6
|
-
$source = "
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
# 1. Python 확인
|
|
10
|
-
$py = Get-Command python -ErrorAction SilentlyContinue
|
|
11
|
-
if (-not $py) {
|
|
12
|
-
Write-Host "Python 3.10+ 가 필요합니다. https://www.python.org/downloads/ 에서 설치 후 다시 실행하세요."
|
|
13
|
-
exit 1
|
|
14
|
-
}
|
|
15
|
-
$ver = & python -c "import sys; print(sys.version_info >= (3, 10))"
|
|
16
|
-
if ($ver.Trim() -ne "True") {
|
|
17
|
-
Write-Host "Python 3.10 이상이 필요합니다. 현재: $(& python --version)"
|
|
18
|
-
exit 1
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
# 2. 패키지 설치 (사용자 영역 — 관리자 권한 불필요)
|
|
22
|
-
Write-Host "hwpx-kit 설치 중..."
|
|
23
|
-
& python -m pip install --user --upgrade $source
|
|
24
|
-
if ($LASTEXITCODE -ne 0) { Write-Host "설치 실패"; exit 1 }
|
|
25
|
-
|
|
26
|
-
# 2-1. .hwp 변환용 (실패해도 치명적 아님 — convert만 비활성)
|
|
27
|
-
& python -m pip install --user --upgrade pyhwpx *> $null
|
|
28
|
-
if ($LASTEXITCODE -ne 0) { Write-Host "참고: pyhwpx 설치 실패 — 'hwpx-kit convert'(.hwp 변환)만 사용 불가" }
|
|
29
|
-
|
|
30
|
-
# 2-2. kordoc — 조건부 옵션 (한글 없는 환경의 구형 .hwp 전용). npm 있으면 조용히 시도.
|
|
31
|
-
# PDF/DOCX/XLSX 읽기는 내장(파이썬)이라 kordoc 불필요
|
|
32
|
-
$npm = Get-Command npm -ErrorAction SilentlyContinue
|
|
33
|
-
if ($npm) {
|
|
34
|
-
& npm install -g "kordoc@3.18.0" *> $null
|
|
35
|
-
if ($LASTEXITCODE -eq 0) { Write-Host "kordoc 3.18.0 설치됨 (구형 .hwp 직접 읽기 활성)" }
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
# 3. 동작 확인
|
|
39
|
-
& python -m hwpx_kit.cli --help *> $null
|
|
40
|
-
if ($LASTEXITCODE -ne 0) { Write-Host "설치 확인 실패"; exit 1 }
|
|
41
|
-
|
|
42
|
-
# 4. Claude Code 플러그인 등록 (레포 루트 = 자기-마켓플레이스)
|
|
43
|
-
# 구 단일 스킬 잔재가 있으면 제거 (플러그인과 이중 트리거 방지)
|
|
44
|
-
$legacy = "$env:USERPROFILE\.claude\skills\hwpx-kit"
|
|
45
|
-
if (Test-Path $legacy) { Remove-Item -Recurse -Force $legacy; Write-Host "구버전 단일 스킬 제거됨" }
|
|
46
|
-
|
|
47
|
-
$claude = Get-Command claude -ErrorAction SilentlyContinue
|
|
48
|
-
if ($claude -and $env:HWPX_KIT_SOURCE -and (Test-Path "$env:HWPX_KIT_SOURCE\.claude-plugin\marketplace.json")) {
|
|
49
|
-
& claude plugin marketplace add $env:HWPX_KIT_SOURCE 2>$null
|
|
50
|
-
& claude plugin install "hwpx-kit@hwpx-kit-market" 2>$null
|
|
51
|
-
if ($LASTEXITCODE -eq 0) { Write-Host "Claude Code 플러그인 설치됨 (hwpx-kit@hwpx-kit-market)" }
|
|
52
|
-
else { Write-Host "플러그인 등록 실패 — Claude Code에서 직접: /plugin marketplace add $env:HWPX_KIT_SOURCE" }
|
|
53
|
-
} else {
|
|
54
|
-
Write-Host "플러그인 등록: 레포 클론 경로에서 /plugin marketplace add <레포경로> 후 /plugin install hwpx-kit@hwpx-kit-market"
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
Write-Host "완료. 새 터미널에서 'hwpx-kit --help' 또는 Claude에게 hwpx 작업을 요청하세요."
|
|
58
|
-
|
|
1
|
+
# hwpx-kit installer (Windows)
|
|
2
|
+
$ErrorActionPreference = "Stop"
|
|
3
|
+
|
|
4
|
+
$source = $env:HWPX_KIT_SOURCE
|
|
5
|
+
if (-not $source) {
|
|
6
|
+
$source = "hwpx-kit-cli"
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
# 1. Python 확인
|
|
10
|
+
$py = Get-Command python -ErrorAction SilentlyContinue
|
|
11
|
+
if (-not $py) {
|
|
12
|
+
Write-Host "Python 3.10+ 가 필요합니다. https://www.python.org/downloads/ 에서 설치 후 다시 실행하세요."
|
|
13
|
+
exit 1
|
|
14
|
+
}
|
|
15
|
+
$ver = & python -c "import sys; print(sys.version_info >= (3, 10))"
|
|
16
|
+
if ($ver.Trim() -ne "True") {
|
|
17
|
+
Write-Host "Python 3.10 이상이 필요합니다. 현재: $(& python --version)"
|
|
18
|
+
exit 1
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
# 2. 패키지 설치 (사용자 영역 — 관리자 권한 불필요)
|
|
22
|
+
Write-Host "hwpx-kit 설치 중..."
|
|
23
|
+
& python -m pip install --user --upgrade $source
|
|
24
|
+
if ($LASTEXITCODE -ne 0) { Write-Host "설치 실패"; exit 1 }
|
|
25
|
+
|
|
26
|
+
# 2-1. .hwp 변환용 (실패해도 치명적 아님 — convert만 비활성)
|
|
27
|
+
& python -m pip install --user --upgrade pyhwpx *> $null
|
|
28
|
+
if ($LASTEXITCODE -ne 0) { Write-Host "참고: pyhwpx 설치 실패 — 'hwpx-kit convert'(.hwp 변환)만 사용 불가" }
|
|
29
|
+
|
|
30
|
+
# 2-2. kordoc — 조건부 옵션 (한글 없는 환경의 구형 .hwp 전용). npm 있으면 조용히 시도.
|
|
31
|
+
# PDF/DOCX/XLSX 읽기는 내장(파이썬)이라 kordoc 불필요
|
|
32
|
+
$npm = Get-Command npm -ErrorAction SilentlyContinue
|
|
33
|
+
if ($npm) {
|
|
34
|
+
& npm install -g "kordoc@3.18.0" *> $null
|
|
35
|
+
if ($LASTEXITCODE -eq 0) { Write-Host "kordoc 3.18.0 설치됨 (구형 .hwp 직접 읽기 활성)" }
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
# 3. 동작 확인
|
|
39
|
+
& python -m hwpx_kit.cli --help *> $null
|
|
40
|
+
if ($LASTEXITCODE -ne 0) { Write-Host "설치 확인 실패"; exit 1 }
|
|
41
|
+
|
|
42
|
+
# 4. Claude Code 플러그인 등록 (레포 루트 = 자기-마켓플레이스)
|
|
43
|
+
# 구 단일 스킬 잔재가 있으면 제거 (플러그인과 이중 트리거 방지)
|
|
44
|
+
$legacy = "$env:USERPROFILE\.claude\skills\hwpx-kit"
|
|
45
|
+
if (Test-Path $legacy) { Remove-Item -Recurse -Force $legacy; Write-Host "구버전 단일 스킬 제거됨" }
|
|
46
|
+
|
|
47
|
+
$claude = Get-Command claude -ErrorAction SilentlyContinue
|
|
48
|
+
if ($claude -and $env:HWPX_KIT_SOURCE -and (Test-Path "$env:HWPX_KIT_SOURCE\.claude-plugin\marketplace.json")) {
|
|
49
|
+
& claude plugin marketplace add $env:HWPX_KIT_SOURCE 2>$null
|
|
50
|
+
& claude plugin install "hwpx-kit@hwpx-kit-market" 2>$null
|
|
51
|
+
if ($LASTEXITCODE -eq 0) { Write-Host "Claude Code 플러그인 설치됨 (hwpx-kit@hwpx-kit-market)" }
|
|
52
|
+
else { Write-Host "플러그인 등록 실패 — Claude Code에서 직접: /plugin marketplace add $env:HWPX_KIT_SOURCE" }
|
|
53
|
+
} else {
|
|
54
|
+
Write-Host "플러그인 등록: 레포 클론 경로에서 /plugin marketplace add <레포경로> 후 /plugin install hwpx-kit@hwpx-kit-market"
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
Write-Host "완료. 새 터미널에서 'hwpx-kit --help' 또는 Claude에게 hwpx 작업을 요청하세요."
|
|
58
|
+
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
set -euo pipefail
|
|
3
|
-
|
|
4
|
-
SOURCE="${HWPX_KIT_SOURCE:-
|
|
5
|
-
|
|
6
|
-
if ! command -v python3 >/dev/null; then
|
|
7
|
-
echo "Python 3.10+ 가 필요합니다."; exit 1
|
|
8
|
-
fi
|
|
9
|
-
python3 -c 'import sys; sys.exit(0 if sys.version_info >= (3, 10) else 1)' \
|
|
10
|
-
|| { echo "Python 3.10 이상 필요. 현재: $(python3 --version)"; exit 1; }
|
|
11
|
-
|
|
12
|
-
echo "hwpx-kit 설치 중..."
|
|
13
|
-
python3 -m pip install --user --upgrade "$SOURCE"
|
|
14
|
-
python3 -m hwpx_kit.cli --help >/dev/null
|
|
15
|
-
|
|
16
|
-
# Claude Code 플러그인 등록 (레포 루트 = 자기-마켓플레이스)
|
|
17
|
-
rm -rf "$HOME/.claude/skills/hwpx-kit" # 구 단일 스킬 잔재 — 이중 트리거 방지
|
|
18
|
-
|
|
19
|
-
if command -v claude >/dev/null && [ -n "${HWPX_KIT_SOURCE:-}" ] \
|
|
20
|
-
&& [ -f "$HWPX_KIT_SOURCE/.claude-plugin/marketplace.json" ]; then
|
|
21
|
-
claude plugin marketplace add "$HWPX_KIT_SOURCE" 2>/dev/null || true
|
|
22
|
-
claude plugin install "hwpx-kit@hwpx-kit-market" \
|
|
23
|
-
&& echo "Claude Code 플러그인 설치됨 (hwpx-kit@hwpx-kit-market)" \
|
|
24
|
-
|| echo "등록 실패 — Claude Code에서: /plugin marketplace add $HWPX_KIT_SOURCE"
|
|
25
|
-
else
|
|
26
|
-
echo "플러그인 등록: 레포 클론 경로에서 /plugin marketplace add <레포경로> 후 /plugin install hwpx-kit@hwpx-kit-market"
|
|
27
|
-
fi
|
|
28
|
-
echo "완료."
|
|
29
|
-
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -euo pipefail
|
|
3
|
+
|
|
4
|
+
SOURCE="${HWPX_KIT_SOURCE:-hwpx-kit-cli}"
|
|
5
|
+
|
|
6
|
+
if ! command -v python3 >/dev/null; then
|
|
7
|
+
echo "Python 3.10+ 가 필요합니다."; exit 1
|
|
8
|
+
fi
|
|
9
|
+
python3 -c 'import sys; sys.exit(0 if sys.version_info >= (3, 10) else 1)' \
|
|
10
|
+
|| { echo "Python 3.10 이상 필요. 현재: $(python3 --version)"; exit 1; }
|
|
11
|
+
|
|
12
|
+
echo "hwpx-kit 설치 중..."
|
|
13
|
+
python3 -m pip install --user --upgrade "$SOURCE"
|
|
14
|
+
python3 -m hwpx_kit.cli --help >/dev/null
|
|
15
|
+
|
|
16
|
+
# Claude Code 플러그인 등록 (레포 루트 = 자기-마켓플레이스)
|
|
17
|
+
rm -rf "$HOME/.claude/skills/hwpx-kit" # 구 단일 스킬 잔재 — 이중 트리거 방지
|
|
18
|
+
|
|
19
|
+
if command -v claude >/dev/null && [ -n "${HWPX_KIT_SOURCE:-}" ] \
|
|
20
|
+
&& [ -f "$HWPX_KIT_SOURCE/.claude-plugin/marketplace.json" ]; then
|
|
21
|
+
claude plugin marketplace add "$HWPX_KIT_SOURCE" 2>/dev/null || true
|
|
22
|
+
claude plugin install "hwpx-kit@hwpx-kit-market" \
|
|
23
|
+
&& echo "Claude Code 플러그인 설치됨 (hwpx-kit@hwpx-kit-market)" \
|
|
24
|
+
|| echo "등록 실패 — Claude Code에서: /plugin marketplace add $HWPX_KIT_SOURCE"
|
|
25
|
+
else
|
|
26
|
+
echo "플러그인 등록: 레포 클론 경로에서 /plugin marketplace add <레포경로> 후 /plugin install hwpx-kit@hwpx-kit-market"
|
|
27
|
+
fi
|
|
28
|
+
echo "완료."
|
|
29
|
+
|
|
@@ -17,7 +17,8 @@ CLI `hwpx-kit`으로 hwpx 문서를 다룬다. 항상 `--json`을 붙여 실행
|
|
|
17
17
|
없으면 사용자에게 설치 안내: `winget install Python.Python.3.12` 또는
|
|
18
18
|
python.org ("Add to PATH" 체크), 설치 후 새 터미널
|
|
19
19
|
3. 마지막으로 설치 — 사용자에게 시키지 말고 네가 직접:
|
|
20
|
-
`pip install --user
|
|
20
|
+
`pip install --user hwpx-kit-cli`
|
|
21
|
+
(실패 시 폴백: `pip install --user git+https://github.com/6aneffy/hwpx-kit.git`)
|
|
21
22
|
→ `python -m hwpx_kit.cli --version` 확인 후 원래 작업 계속
|
|
22
23
|
|
|
23
24
|
기존 문서(계획안·보고서 작성본)를 양식 삼아 **다른 사업 문서를 새로 쓰는** 요청도
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|