Releases: 0x0w1/jig
Releases · 0x0w1/jig
Release list
v0.23.0 🌈
Changes
🐛 Fixes
- 스킬 실행 범위와 브랜치 정리·보호 정책 판정을 바로잡습니다
Summary
jig설치와 운영 모델 채택을 구분합니다. 현재 요청의 로컬 제한을 우선하고, 이미 승인된 저장소 정책은 다시 묻지 않으며, 하위 스킬 호출로 커밋·병합·푸시 권한을 확대하지 않습니다.readme와version-rubric에서 정상 편집과 사용자 변경 손실을 구분합니다. 이미 요청한 편집을 다시 승인받지 않고, 무응답을 기본 기준 생성이나 기존 기준 교체의 승인으로 사용하지 않습니다.repo-hygiene이 squash 이후 작업 경로의 현재 내용·유형·모드를 비교합니다. 무관한 후속 변경은 제외하고, 미반영 변경과 판정 불가를 구분해 불확실한 브랜치를 삭제 후보에 올리지 않습니다.github-sync가 기존 검토·검사·접근 제한을 보존하는 요청을 구성합니다. 오류 응답을 보호 부재로 해석하지 않고, 미지원 설정은 변경하지 않습니다.- 실제
Git격리 회귀 테스트와 보호 설정 모의 테스트를 추가하고, 한·영 문서·다이어그램·로컬 스킬 복사본·dist를 동기화했습니다.
v0.22.0 🌈
Changes
🚀 Enhancements
- Codex는 스킬 파일 대신 플러그인으로 설치합니다
Summary
- Codex 설치 방식이 플러그인으로 바뀌었습니다. Codex에 플러그인 시스템이 생겨
codex plugin marketplace add 0x0w1/jig와codex plugin add jig@jig로 설치합니다. Claude Code와 같은 payload를 그대로 쓰고, 스킬은jig:github-sync처럼 플러그인 네임스페이스로 로드됩니다. 저장소에는 아무것도 쓰지 않고 설치는 user-global입니다. install.sh의 대상은 Antigravity 하나만 남았습니다.--target codex는 플러그인 명령 두 줄을 담은 메시지와 함께 실패합니다. 배포 트리dist/codex/를 제거했습니다.- 기존
.agents/skills/jig-*Codex 설치본은 계속 로드되지만 더 이상 갱신되지 않습니다.jig-doctor와jig-update가 legacy로 보고하고 플러그인 마이그레이션을 안내합니다. Antigravity가 같은 디렉터리를 쓰고 있으면 공유 파일을 지우지 않습니다. jig-update가 Codex 플러그인을 host로 갱신합니다.codex plugin marketplace upgrade jig다음codex plugin add jig@jig. 설치 inventory 계약은 Codex plugin(user scope) 행과 Codex legacy files 행으로 나뉘어 11행이 됐습니다.- push 가드는 계속
.codex/hooks.json으로 갑니다. Codex는 플러그인 자체의 hook을 실행하지 않습니다(codex features list의plugin_hooks가removed).manage-native-hooks.sh가 가드를<git common dir>/jig/guard-push.sh로 clone-local 복사하고 hook 항목이 그곳을 가리키므로, 플러그인 설치본과 파일 설치본이 같은 항목으로 동작하고 플러그인 업그레이드에도 깨지지 않습니다. Codex 검출은 Codex 설정도 함께 봅니다. jig-doctor가 clone-local 가드의guard missing·guard drift상태를 보고합니다.- standalone Claude 설치본 버그를 고쳤습니다.
jig-prefix 매핑이 제거된dist/codexpayload를 받고 있어 다음 업데이트에서 404가 났습니다. 이제dist/antigravitypayload를 받습니다. - README, 설치 가이드, 저장소 설정 문서, 스킬 가이드 12종, 로드맵을 국·영문 모두 갱신했습니다.
Migration
- Re-run
manage-native-hooks.sh installfrom the installedgithub-syncskill in each project whose.codex/hooks.jsonor.agents/hooks.jsoncarries a jig entry. It repoints the entry at the clone-local guard and is idempotent.
- Migrate a Codex
.agents/skills/jig-*file installation to the plugin. Runcodex plugin marketplace add 0x0w1/jigthencodex plugin add jig@jig, delete only the span between<!-- jig:start github-release-setup -->and<!-- jig:end github-release-setup -->inAGENTS.md, and delete.agents/skills/jig-*ONLY when Antigravity is not installed in that repository, because both CLIs read that directory.
v0.21.1 🌈
v0.21.0 🌈
Changes
🚀 Enhancements
- Codex·Antigravity에도 push 가드를 네이티브 hook으로 설치합니다
Summary
- Codex(
.codex/hooks.json)와 Antigravity(.agents/hooks.json)에 push 명령을 실행 전에 검사하는PreToolUse가드가 네이티브 hook 항목으로 설치됩니다.--no-verify를 포함한 위반 push를 gitpre-pushhook보다 앞에서 거부하며, Claude Code 플러그인이 이미 하던 것과 같은 판정입니다. github-sync가 새scripts/manage-native-hooks.sh로 항목을 추가·갱신·제거합니다. 자기 항목만 만지고 사용자 항목은 보존하며,AGENTS.md·GEMINI.md의 jig 스탬프가 있는 호스트에만 project scope로 설치합니다.- 가드 원본은
skills/github-sync/assets/guard-push.sh하나(v2)입니다. Claude Code 플러그인의hooks/guard-push.sh는 빌드 복사본이고 판정 규칙과 차단 메시지는 그대로입니다. - Codex는
/hooks에서 항목을 한 번 검토·신뢰해야 hook을 실행합니다. jig는 이 단계를 대신하지 않고github-sync·jig-doctor보고서에서 매번 안내합니다. 신뢰 전에는 기존과 같은 상태입니다. jig-doctor가 호스트별 네이티브 hook 상태(installed,not installed,entry drift,user entry,guard missing,leftover)를 보고합니다.- 프로젝트에서 jig를 제거할 때는
manage-native-hooks.sh uninstall을 pre-push 정리보다 먼저 실행합니다. 자기 항목만 지우고 다른 항목이 없던 파일만 삭제합니다. - Antigravity 분기는 문서화된 계약(stdout
{"decision":"deny"})으로 구현했고 실기기 검증은 하지 않았습니다. 첫 Antigravity 설치에서git push --no-verify origin main이 거부되는지 확인해 주세요. Codex는codex exec에서 차단을 실측했습니다.
Migration
sh .agents/skills/jig-github-sync/scripts/manage-native-hooks.sh installwhen that script exists in the repository (Codex and Antigravity project installations; the Claude Code plugin carries the hook itself and needs nothing)
v0.20.0 🌈
Changes
🚀 Enhancements
- 이력이 절차를 따랐는지 검사하는 conformance-audit을 추가합니다
- README를 짧게 유지하는 압축 규칙을 readme 스킬에 넣습니다
- 저장소별 README 규약을 .jig/readme.md에 정하게 합니다
- jig-doctor가 README 규약도 함께 보고합니다
Summary
- 저장소의 이력이 절차를 실제로 따랐는지 사후에 판정하는
conformance-audit스킬이 추가됐습니다. 커밋 subject,Release-Grade적용률과 값, 태그 형식과 위치,main/developfast-forward 불변식, 기준 파일 도달성을 검사합니다. - 검사는
audit-history.sh가 수행하며 아무것도 쓰지 않습니다. 종료 코드가 계약이라 CI 작업에서 그대로 게이트로 쓸 수 있습니다:0준수,1위반,2사용법·환경 오류. - 도입 이전 이력을 위반으로 세지 않도록 기준선을 먼저 정합니다.
--since <ref>→.jig/versioning.md를 추가한 커밋 → 가장 오래된vX.Y.Z태그 순으로 해석하고, 아무것도 해석되지 않으면 전체 이력으로 넘어가지 않고 중단합니다. - 릴리즈 범위에
Release-Grade가 하나도 없는 상태를 위반으로 봅니다. 이때 릴리즈의 등급 하한이 빈 값이 되어 경고 없이 경로 하한만 남기 때문입니다. 부분 적용은 이행 중으로 보고 참고 사항으로만 남깁니다. readme스킬이 README를 짧게 유지합니다. 같은 사실이 두 곳 이상에 있으면 독자가 먼저 도달하는 한 곳만 남기고 나머지는 상세 문서로 옮깁니다. 맞춰야 할 줄 수 상한은 없어서, 예제가 실제로 필요한 library README가 규칙 때문에 깎이지 않습니다.- 소개는 기능 이름이 아니라 무엇이 편해지는지를 근거가 강한 순으로 쓰고, 저장소가 보일 수 없는 주장은 완화하지 않고 뺍니다. 로드맵·설계 기록은 문서 홈으로, build·검증 명령은
<details>로 접습니다. - 이미 공개된 README는 조용히 바뀌지 않습니다. 반복된 사실과 옮겨 갈 위치를 먼저 제시하고 수락한 뒤에만 적용하며, 거절된 제안도 보고에 남습니다.
- 저장소마다 다른 README 결정을
.jig/readme.md에 한 번 정해 두고 이후 실행마다 읽습니다.## Languages,## Sections,## Detail Docs,## Conventions네 section으로 결정만 담고 기준치나 검사 목록은 두지 않습니다. - 규약이 없으면 스캔 결과로 초안을 제안하고 수락한 뒤에만 파일을 씁니다. 거절하면 일반 기본값으로 계속 진행하므로, 규약이 없는 상태가 작업을 막지 않습니다.
jig-doctor가 README 규약의 경로·출처·존재하는 section·커밋 여부를 함께 보고합니다. 빠진 section은 계약 위반이 아니라 기본값으로의 fallback으로 보고하고, 파일이 없는 것은 정상 상태로 봅니다.
v0.19.2 🌈
Changes
📚 Documentation
- 국문 문서의 문체를 다듬습니다
Summary
README.ko.md와hotfix-flow·repo-hygiene국문 스킬 가이드의 산문을 다듬었습니다. 연결어미 뒤에 습관적으로 붙던 쉼표를 정리하고,manager로 추적되는처럼 행위자가 조사로 눌린 피동을 능동으로 바꿨습니다.hotfix-flow가이드는 같은 문형이 절마다 반복되던 것을 두 곳에서 풀었습니다. 목록에 의지를 붙였던 표현도 걷어냈습니다. 트리거가 게이트로 작동하는 근거를 담은 대조 문장들은 논지 자체라 그대로 뒀습니다.- 헤딩, mermaid 블록, 기준 질문 인용, 링크, 백틱 식별자, 스킬 표, 코드 블록, HTML 블록은 바이트 단위로 그대로입니다. 문장을 나누거나 합치지 않아 영문 문서와의 문장 대응도 유지됩니다.
- 국문 문서만 바뀌었고 영문 문서와 배포되는 스킬 payload는 그대로입니다. 설치된 프로젝트가 이번 업데이트로 해야 할 일은 없습니다.
v0.19.1 🌈
Changes
📚 Documentation
- README에서 Roadmap 링크를 내립니다
- README의 main push 서술을 실제 가드와 맞춥니다
Summary
- README 소개가
main직접 push는 항상 실패한다고 적고 있던 것을 고쳤습니다.v0.19.0부터hotfix/<slug>:main이 허용되므로 예외 없는 문장은 사실과 달랐습니다. force push 차단은 그대로 두고main이 정해진 두 경로로만 움직인다는 서술로 바꿨습니다. - 스킬 절에
main으로 가는 두 경로를 명시했습니다. 릴리즈의develop:mainfast-forward와, 릴리즈된 결함을develop대기열보다 먼저 내보낼 때의hotfix/<slug>:main입니다. 이전에는develop경유만 적혀 있어 그것이 유일한 경로로 읽혔습니다. - README 문서 목록에서 Roadmap 항목을 내렸습니다. 방향 후보와 설계 기록은 설치 전에 읽을 내용이 아니라 프로젝트가 스스로 관리하는 기록이라,
docs/en/roadmap.md·docs/ko/roadmap.md에 그대로 두고 문서 홈에서만 링크합니다. - 문서만 바뀌었고 배포되는 스킬 payload는 그대로입니다. 설치된 프로젝트가 이번 업데이트로 해야 할 일은 없습니다.
v0.19.0 🌈
Changes
🚀 Enhancements
- 릴리즈된 결함을 먼저 내보내는 hotfix-flow를 추가합니다
- 저장소 잔여물을 점검하고 정리하는 repo-hygiene를 추가합니다
- hotfix 오작동을 기계적으로 차단합니다
- 핫픽스 여부를 미리 정한 트리거 목록으로 판정합니다
- 핫픽스 판정에 기준 질문을 둡니다
📚 Documentation
- 로드맵 후보 A를 종료하고 폐기 사유를 남깁니다
Summary
- 보호 정책이 바뀝니다.
PreToolUse가드와 추적되는pre-pushhook이hotfix/<slug>:mainpush를 허용합니다. 이전에는develop:main만 통과했습니다. force push 차단, 보호 브랜치 삭제 차단, fast-forward 강제는 그대로입니다. hotfix-flow가 새로 들어갑니다.main에 이미 나간 결함을develop의 미릴리즈 작업보다 먼저 고쳐 내보냅니다.origin/main에서 분기해 squash 커밋 하나를 올리고, 태그와 릴리즈를 발행한 뒤main을develop에 병합해 돌려놓습니다. 돌려놓는 단계가 절차의 일부입니다. 하지 않으면 다음 릴리즈의 fast-forward가 막힙니다.- 핫픽스 오작동을 세 곳에서 기계적으로 막습니다.
pre-push는 hotfix push가main보다 정확히 한 커밋 앞설 것을 요구해develop에서 딴 브랜치가 미릴리즈 작업을 끌고 들어가는 것을 차단하고,hotfix-flow는 미릴리즈 작업이 없으면 중단하며,repo-hygiene은 돌려놓지 않은 핫픽스를 최우선으로 보고합니다. - 핫픽스 여부는 기준 파일의 새 선택 섹션
## Hotfix Triggers(한글## 핫픽스 트리거)로 판정합니다. 기준 질문 하나와 그 질문에 답해 인정된 조건 목록을 담습니다. 사용자가 급하다고 말하는 것은 답이 아니며, 목록에 없는 상황은 질문에 답한 뒤 조건을 별도 커밋으로 추가해야 진행됩니다. repo-hygiene이 새로 들어갑니다. squash 병합 때문에git branch --merged가 쓸모없다는 점을 정면으로 다뤄, 내용 기준(git diff --quiet develop...<branch>)으로 반영이 끝난 브랜치를 찾습니다. 태그·릴리즈 불일치, 커밋되지 않은 기준 파일, installer 잔여물도 함께 점검하며 삭제는 사용자가 지목한 것만 합니다.- 기준 파일 섹션이 없는 프로젝트는
hotfix-flow가 배포하는 질문과 기본 목록으로 폴백합니다. 업데이트를 다시 실행하는 것 외에 설치본이 할 일은 없습니다.
v0.18.0 🌈
Changes
🚀 Enhancements
- 카탈로그 rubric 17종에 인터페이스 경로 표를 채웁니다
🧰 Chores
- rubric 카탈로그 안내 문구의 섹션 개수를 교정
Summary
- 카탈로그의 17개 유형 초안 전부가
## Interface Paths표를 갖게 됐습니다. 지금까지 이 표는_template.md에만 있어서, 유형을 채택한 프로젝트는 경로 바닥이 꺼진 rubric을 받았습니다. 이제 유형을 채택하면 변경 경로로 등급 하한을 계산하는 기능이 함께 켜집니다. - 각 표의 행은 그 유형의
## Public Interface에서 나옵니다. 약속 자체가 적혀 있는 파일(schema, manifest, install script, route 정의, token 파일)에minor바닥을 두고, 그 약속 아래에서 작업이 오가는 경로(구현, 본문, 콘텐츠)는patch로 뒀습니다. 판정 순서의 1번 질문과 부딪히지 않게 하기 위해서입니다. - glob은 그 유형이 관례적으로 쓰는 배치라서 채택하는 저장소와 다를 수 있습니다.
version-rubric이 채택할 때 실제 트리와 대조하고 걸리는 행이 없으면 지우도록 절차와rubrics/INDEX.md안내를 고쳤습니다. version-rubric에Add interface paths동작이 생겨, 표 없이 쓰던 기존 rubric에 표만 덧붙일 수 있습니다. 기본 rubric은 사람 개입 축이라 경로를 지목하지 않으므로 표 없이 그대로 나가고, 원하면 작성 후 붙여줍니다.rubrics/INDEX.md가 "유형이 실제로 바꾸는 것"을 세 가지라고 말하면서 표에는 네 행을 두고 있던 것과,rubrics/_template.md의 노력 배분 나열에서## Interface Paths가 빠져 있던 것을 맞췄습니다.- 이미 쓰고 있는
.jig/versioning.md는 설치와 업데이트가 건드리지 않으므로, 기존 설치본의 판정은 이번 릴리즈로 달라지지 않습니다.
v0.17.1 🌈
Changes
📚 Documentation
- README 스킬 표에 등급 판정 단계를 반영
- README 소개의 강점 순서를 재배열
Summary
README.md와README.ko.md의 스킬 표에서develop-task-flow의 역할에 등급 판정을 넣었습니다. 이 스킬이 병합 시점에Release-Grade를 정하는 단계까지 갖는 것을 표만 보고도 알 수 있습니다.- 소개 항목을 등급 판정, push 차단, 설치본 수렴 순으로 다시 배열했습니다.
v0.17.0에서 등급 판정이 두 하한을 기계적으로 계산하게 되면서 주장 강도가 가장 높아진 항목을 앞에 둡니다. - 가치 문단의 나열 순서도 항목과 같은 순서로 맞춰, 문단과 목록이 서로 다른 우선순위를 말하지 않게 했습니다.
- 문서만 바뀌었고 배포되는 스킬 payload는 그대로입니다. 설치된 프로젝트가 이번 업데이트로 해야 할 일은 없습니다.