Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
<key>CFBundleExecutable</key><string>PlusCodex</string>
<key>CFBundleIconFile</key><string>PlusCodex.icns</string>
<key>CFBundlePackageType</key><string>APPL</string>
<key>CFBundleShortVersionString</key><string>1.2.0-beta.1</string>
<key>CFBundleVersion</key><string>22</string>
<key>CFBundleShortVersionString</key><string>1.2.0</string>
<key>CFBundleVersion</key><string>23</string>
<key>LSMinimumSystemVersion</key><string>14.0</string>
<key>LSUIElement</key><true/>
<key>NSHighResolutionCapable</key><true/>
Expand Down
57 changes: 57 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,60 @@
# PlusCodex v1.2.0

Gemini 연동과 AI별 메뉴바 표시 커스텀을 추가했습니다.

PlusCodex의 **v1.0.0~v1.9.9는 베타 버전**입니다. 이번 버전도 베타이며, 기존 앱의 업데이트 경로를 유지하기 위해 GitHub Latest로 제공합니다.

## 주요 변경사항

### Gemini 및 Antigravity

- Gemini 5시간·주간·Argon 사용량과 초기화 시간 표시
- Antigravity 작업 상태 및 완료·실패·확인 대기 알림 연동
- 현재 채팅 읽음 감지 및 읽은 작업의 알림 정리
- Antigravity 또는 Gemini CLI 로그인 상태 확인
- Gemini 활성화 시 손쉬운 사용 권한 안내, 허용 확인 후 자동 활성화
- 권한 요청 재시도와 설정 복귀 후 상태 갱신 개선

### 메뉴바 및 설정

- AI별 메뉴바 표시 형식과 실시간 미리보기 추가
- `{auto}%`, `{5h}% | {1w}%`, `{auto}% | {auto_time}` 등 자유로운 조합 지원
- Gemini의 `{argon}%`, `{argon_time}` 토큰 지원
- 기본값은 5시간 한도 우선, 없으면 주간 한도 선택
- 사용량의 사용한 양·남은 양 구분은 기존 설정에 적용
- 켜진 AI만 표시하고 아이콘·이름·도움말 정렬 개선
- 작은 호버 도움말에서 지원 토큰 확인·복사 및 빠른 선택 지원
- 입력창 복사·붙여넣기·실행 취소·다시 실행 개선

### 알림 및 안정성

- AI 알림 로고에 흰 배경 적용, Codex 로고는 검정으로 표시
- 설치·업데이트 후 필요한 권한 안내 개선
- 로컬 개발 빌드의 인증서 서명 선택을 일관되게 유지하도록 개선
- PR 빌드, 36개 회귀 테스트 및 필수 CI 검사 추가
- 메뉴바 클릭 관련 비동기 회귀 테스트의 대기 조건 개선

## 설치 및 업데이트

- 기존 앱: 앱의 업데이트 확인 기능 이용
- 수동 설치: [PlusCodex-1.2.0.dmg](https://github.com/hyxx-su/PlusCodex/releases/download/v1.2.0/PlusCodex-1.2.0.dmg)
- 지원 환경: Apple Silicon Mac, macOS 14 이상
- 기존 설정과 저장된 깨우기 채팅 유지
- Gemini를 켜려면 macOS 손쉬운 사용 권한 필요. 권한은 사용자가 직접 허용
- 현재 채팅 감지 보조 기능은 채팅 주소와 UI 메타데이터를 확인하며 대화 본문을 읽거나 저장하지 않음

## 알려진 제한 사항

- AI 앱의 설치·로그인 상태, 제공되는 한도 및 외부 앱 버전에 따라 사용 가능한 값이 달라짐
- 알림 전달은 macOS 알림 권한·집중 모드·알림 스타일의 영향을 받음
- 알림 로고 표시 방식은 macOS 버전에 따라 달라질 수 있음
- 모든 플랜의 실제 계정, 다른 Mac의 설치·업데이트, 장시간 잠자기 복귀 동작은 별도 실사용 확인 필요
- 이 배포본은 Apple Development 서명이며 **Developer ID 서명·Apple 공증은 적용되지 않음**
- Sparkle 업데이트 서명은 업데이트 파일과 피드의 무결성을 검증하며 Apple 공증을 대체하지 않음
- PlusCodex는 OpenAI 또는 Google의 공식 앱이 아님

---

# PlusCodex v1.2.0-beta.1

이번 베타에서는 **작업 상태와 알림 동작을 개선하고, 사용량 표시와 패치노트 화면을 정리했습니다.**
Expand Down
38 changes: 38 additions & 0 deletions Resources/PatchNotes.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,42 @@
[
{
"version": "v1.2.0",
"publishedAt": "2026-10-20T05:40:00Z",
"url": "https://github.com/hyxx-su/PlusCodex/releases/tag/v1.2.0",
"body": "# PlusCodex v1.2.0\n\n- Gemini 사용량 및 Antigravity 작업 상태 연동\n- Gemini 작업 알림과 현재 채팅 읽음 감지\n- AI별 메뉴바 표시 형식과 초기화 시간 커스텀\n- 토큰 도움말과 빠른 선택, 입력창 편집 단축키 개선\n- 손쉬운 사용 권한 안내와 허용 후 활성화 흐름 개선\n\nPlusCodex v1.0.0~v1.9.9는 베타 버전입니다.",
"summary": {
"ko": "• Gemini 사용량·작업 알림 연동\n• AI별 메뉴바 표시 커스텀",
"en": "• Gemini usage and task alerts\n• Custom menu-bar formats"
},
"highlights": {
"ko": [
"Gemini 5시간·주간·Argon 사용량 및 초기화 시간 표시",
"Antigravity 작업 상태와 완료·실패·확인 대기 알림 연동",
"현재 채팅 읽음 감지와 읽은 작업의 알림 정리",
"Gemini 활성화 시 손쉬운 사용 권한 안내 및 허용 후 자동 활성화",
"AI별 메뉴바 표시 형식과 실시간 미리보기 추가",
"자동 선택·5시간·주간·Argon 및 초기화 시간 토큰 지원",
"사용 중인 AI만 표시하고 아이콘·이름·도움말 정렬 개선",
"작은 호버 도움말에서 토큰 복사 및 빠른 선택 지원",
"입력창 복사·붙여넣기 및 실행 취소·다시 실행 개선",
"AI 알림 로고의 흰 배경과 검정 Codex 로고 적용",
"PR 빌드·36개 회귀 테스트 및 필수 CI 검사 추가"
],
"en": [
"Gemini five-hour, weekly and Argon usage with reset times",
"Antigravity task status and completion, failure and attention alerts",
"Current-chat read detection and read-task notification cleanup",
"Accessibility permission guidance and Gemini activation after approval",
"Per-AI menu-bar formats with live previews",
"Auto, five-hour, weekly, Argon and reset-time tokens",
"Enabled providers only, with aligned icons, names and help controls",
"Compact hover help with token copying and Quick Select",
"Copy, paste, undo and redo improvements in format fields",
"White-backed notification logos and a black Codex logo",
"PR builds, 36 regression checks and a required CI gate"
]
}
},
{
"version": "v1.2.0-beta.1",
"publishedAt": "2026-10-14T12:24:13Z",
Expand Down
10 changes: 9 additions & 1 deletion Sources/PatchNotesView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,15 @@ struct PatchNote: Decodable {
guard let url = bundle.url(forResource: "PatchNotes", withExtension: "json"),
let data = try? Data(contentsOf: url),
let notes = try? JSONDecoder().decode([PatchNote].self, from: data) else { return [] }
return notes.sorted { $0.version.compare($1.version, options: .numeric) == .orderedDescending }
// Compare the base first; a release precedes its own beta in descending order.
return notes.sorted {
let lhs = $0.version.split(separator: "-", maxSplits: 1)
let rhs = $1.version.split(separator: "-", maxSplits: 1)
let baseOrder = String(lhs[0]).compare(String(rhs[0]), options: .numeric)
if baseOrder != .orderedSame { return baseOrder == .orderedDescending }
if lhs.count != rhs.count { return lhs.count < rhs.count }
return $0.version.compare($1.version, options: .numeric) == .orderedDescending
}
}
}

Expand Down
Loading