hwpx — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited hwpx (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
한글(Hancom) HWPX 보고서를 생성한다. HWPX는 ZIP+XML(OWPML) 컨테이너라, 본문 XML을 손으로 작성하면 거의 항상 텍스트가 <hp:t> 밖에 들어가 "파일은 열려도 본문이 안 보이는" 결과가 된다. 그래서 이 스킬은 본문 XML을 직접 쓰지 않는다. 너는 보고서의 내용만 JSON으로 만들고, 스킬의 결정론적 빌드 스크립트가 템플릿·스타일·<hp:t> 배치·표를 정확히 조립한다.
(이 스킬의 디렉토리 절대경로는 스킬 로드 시 제공된다. 아래 <skill_dir>를 그 경로로 바꿔 쓴다. 강한 모델용 수동 XML 편집·읽기 상세는 SKILL.original.md 참조.)
python3 -c "import lxml"성공하면 진행. 실패하면 설치 후 재확인:
python3 -m pip install --user --quiet -r "<skill_dir>/requirements.txt"다음 스키마 그대로 작성한다 (예: /tmp/report_content.json):
{
"title": "보고서 제목",
"dept": "작성 부서명 (선택)",
"sections": [
{"heading": "1. 추진 배경 및 목적",
"bullets": [
"□ 핵심을 압축한 한 줄 범주 문장 (30~35자)",
" ❍ 그 범주의 구체적 설명을 활동·대상·방법까지 담아 한 문장으로 (65~70자)"
]},
{"heading": "3. 추진 일정", "bullets": [],
"table": {"template": "schedule", "headers": ["일자","추진내용","담당"],
"rows": [["’26.03.05.","[일반 1회] AI 개요","외부연사"]]}}
]
}문체 규칙(개조식 — 반드시 지킬 것):
□ 상위 줄과 그 아래 ❍ 하위 줄의 위계로 구성한다.□ 상위 줄: '□ ' 뒤 기준 30~35자. 단순 라벨 금지(핵심을 압축한 한 줄 범주 문장). 세부는 ❍로 내린다.❍ 하위 줄: ' ❍ '(앞 공백 2칸)로 시작, 65~70자의 구체적 설명 문장. 보통 □ 하나당 ❍ 1~2개.python3 "<skill_dir>/scripts/build_from_json.py" /tmp/report_content.json <output>.hwpxbuild_from_json.py가 템플릿 제목 도형·스타일·표·<hp:t> 배치를 결정론적으로 조립한다.OK: <경로> · 섹션 N개 · 표 M개. 그 .hwpx 경로를 사용자에게 알린다.python3 "<skill_dir>/scripts/style_check.py" <output>.hwpxINVALID가 나오면 위반 줄(X ...)을 보고 JSON의 해당 bullet을 고쳐(□ 30~35자로 줄이고 넘치는 세부는 ❍ 65~70자로 내림, 명사형 종결) 1번부터 다시 빌드한다.
section0.xml이나 zip 내부를 직접 작성·편집 금지. cat <<EOF > section0.xml 같은 방식절대 금지 — <hp:t> 누락/오배치로 본문이 사라진다. 오직 build_from_json.py로만 만든다.
<hp:run>에 직접 넣지 마라(반드시 <hp:t> 안). 이 배치는 스크립트가 알아서 한다.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.