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.
Files changed (77) hide show
  1. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/.claude-plugin/plugin.json +1 -1
  2. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/PKG-INFO +3 -2
  3. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/README.md +2 -1
  4. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/install.ps1 +58 -58
  5. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/install.sh +29 -29
  6. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/pyproject.toml +1 -1
  7. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/hwpx-form/SKILL.md +2 -1
  8. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/.claude-plugin/marketplace.json +0 -0
  9. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/.gitignore +0 -0
  10. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/CLAUDE.md +0 -0
  11. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/LICENSE +0 -0
  12. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/commands/hwpx.md +0 -0
  13. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/sample-values.json +0 -0
  14. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/scripts/build_skill_package.py +0 -0
  15. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/scripts/check_stdout_purity.py +0 -0
  16. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/scripts/make_sample.py +0 -0
  17. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/doc-create/SKILL.md +0 -0
  18. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/format-convert/SKILL.md +0 -0
  19. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/gongmun-format/SKILL.md +0 -0
  20. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/office-export/SKILL.md +0 -0
  21. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/skills/table-calc/SKILL.md +0 -0
  22. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/__init__.py +0 -0
  23. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/__init__.py +0 -0
  24. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/base.py +0 -0
  25. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/hwpx_engine.py +0 -0
  26. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/kordoc_engine.py +0 -0
  27. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/adapter/office_readers.py +0 -0
  28. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/cli.py +0 -0
  29. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/__init__.py +0 -0
  30. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/analyze.py +0 -0
  31. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/convert.py +0 -0
  32. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/export.py +0 -0
  33. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/fill.py +0 -0
  34. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/fmt.py +0 -0
  35. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/generate.py +0 -0
  36. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/outline.py +0 -0
  37. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/page_break.py +0 -0
  38. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/read.py +0 -0
  39. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/render.py +0 -0
  40. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/row_height.py +0 -0
  41. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_clear.py +0 -0
  42. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_copy.py +0 -0
  43. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_map_cmd.py +0 -0
  44. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_new.py +0 -0
  45. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/table_set.py +0 -0
  46. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/commands/validate.py +0 -0
  47. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/format.py +0 -0
  48. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/src/hwpx_kit/output.py +0 -0
  49. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/templates/Default_Template.hwpx +0 -0
  50. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/__init__.py +0 -0
  51. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/conftest.py +0 -0
  52. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/legacy-sample.hwp +0 -0
  53. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/seoul-attachment.hwpx +0 -0
  54. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/seoul-body.hwpx +0 -0
  55. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/seoul-report-brief.hwpx +0 -0
  56. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/fixtures/real/seoul-report-cover.hwpx +0 -0
  57. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_adapter.py +0 -0
  58. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_analyze.py +0 -0
  59. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_cli.py +0 -0
  60. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_convert.py +0 -0
  61. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_export.py +0 -0
  62. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_fill.py +0 -0
  63. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_format.py +0 -0
  64. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_integration.py +0 -0
  65. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_kordoc.py +0 -0
  66. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_office_readers.py +0 -0
  67. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_output.py +0 -0
  68. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_page_break.py +0 -0
  69. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_read_validate.py +0 -0
  70. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_real_forms.py +0 -0
  71. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_row_height.py +0 -0
  72. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_skill_package.py +0 -0
  73. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_stdout_purity.py +0 -0
  74. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_table_clear.py +0 -0
  75. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_table_copy.py +0 -0
  76. {hwpx_kit_cli-0.1.1 → hwpx_kit_cli-0.1.2}/tests/test_table_map_new.py +0 -0
  77. {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.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.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](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](LICENSE)
33
+ [![PyPI](https://img.shields.io/pypi/v/hwpx-kit-cli.svg)](https://pypi.org/project/hwpx-kit-cli/)
33
34
  [![Python](https://img.shields.io/badge/python-3.10%2B-3776AB.svg)](https://www.python.org/)
34
35
  [![Claude Code](https://img.shields.io/badge/Claude%20Code-plugin-d97757.svg)](https://claude.com/claude-code)
35
36
  [![Tests](https://img.shields.io/badge/tests-145%20passing-brightgreen.svg)](tests/)
@@ -81,7 +82,7 @@ Claude Code에서:
81
82
  <summary>수동 설치</summary>
82
83
 
83
84
  ```bash
84
- pip install git+https://github.com/6aneffy/hwpx-kit.git
85
+ pip install hwpx-kit-cli
85
86
  ```
86
87
 
87
88
  ```powershell
@@ -7,6 +7,7 @@
7
7
  *"이 양식에 채워줘" 한마디로, 서식 무손상 한글 문서가 나옵니다.*
8
8
 
9
9
  [![License](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](LICENSE)
10
+ [![PyPI](https://img.shields.io/pypi/v/hwpx-kit-cli.svg)](https://pypi.org/project/hwpx-kit-cli/)
10
11
  [![Python](https://img.shields.io/badge/python-3.10%2B-3776AB.svg)](https://www.python.org/)
11
12
  [![Claude Code](https://img.shields.io/badge/Claude%20Code-plugin-d97757.svg)](https://claude.com/claude-code)
12
13
  [![Tests](https://img.shields.io/badge/tests-145%20passing-brightgreen.svg)](tests/)
@@ -58,7 +59,7 @@ Claude Code에서:
58
59
  <summary>수동 설치</summary>
59
60
 
60
61
  ```bash
61
- pip install git+https://github.com/6aneffy/hwpx-kit.git
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 = "git+https://github.com/6aneffy/hwpx-kit.git"
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:-git+https://github.com/6aneffy/hwpx-kit.git}"
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
+
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "hwpx-kit-cli"
3
- version = "0.1.1"
3
+ version = "0.1.2"
4
4
  description = "한글(HWPX) 문서 자동화 CLI — Korean HWPX document automation for AI agents: analyze, fill, read, validate, table ops"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -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 git+https://github.com/6aneffy/hwpx-kit.git`
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