Releases: Greem4/ClaudeWeek
Release list
ClaudeWeek 0.2.3
Что нового
Исправлено
- Ряд недели больше не приходит к 100 % дважды. При сбросе среди ночи
последние сутки окна — огрызок в пару часов, целиком лежащий вне рабочих
часов: плана он не набирает нисколько и приходил к той же сотне, что и
предыдущие сутки. Две нижние строки показывали одно и то же. Теперь такой
огрызок своей строки не получает — день сброса остаётся в ряду первой
половиной, — а расход, случившийся в нём, доливается в последнюю строку:
показать его больше негде, а расходиться с итогом недели в футере ряд не
должен. Там, где у последних суток рабочие часы есть, всё как было. - Сброс счёта больше не стирает суточные полосы. Отсечка убирает прежний
расход из локального счёта — но не из недельного итога: его считает сервер,
который об отсечке не знает. Форма недели строилась по одним лишь записям
после сброса, и пока их не набиралось, панель показывала— / 43 %во всех
сутках при непустой неделе: сверху 15 %, а по дням пусто. Теперь до-отсечный
расход помнится отдельно и раскладывается по дням тем же ровным темпом,
которым считается план, — от начала недели до момента сброса. Ряд идёт вдоль
плановой линии и приходит к общему проценту в сутках сброса; горкой в один
день этот расход не сваливается, иначе в тех сутках загорался бы перерасход,
которого не было. На локальную оценку это не влияет — там отсечка работает
по-прежнему, иначе чужой расход снова считался бы своим. - Переключение аккаунта не проигрывается анимацией. Полосы уезжали в ноль
и приползали на новые места, будто это те же цифры изменились, — хотя после
переключения панель показывает уже другую неделю. Строки привязаны к
аккаунту и при смене рисуются сразу на своих местах.
Коммиты с v0.2.2
- Поднял версию до 0.2.3 и закрыл журнал
- fix(week): одна сотня в ряду и расход до сброса счёта на месте (#21)
Прошлые версии — в журнале изменений.
Установка
Скачайте ClaudeWeek-0.2.3-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Контрольная сумма
0c94e027b0c75e8b99fedf422670cb66f29c8e173d6b52ef36f84928cee24258 ClaudeWeek-0.2.3-arm64.dmg
ClaudeWeek 0.2.2
Что нового
Исправлено
- Обновление больше не оставляет приложение мёртвым. 0.2.1 из релиза
падала при первой же отрисовке панели: знак Claude в переключателе аккаунтов
читался черезBundle.module, а генерируемый SwiftPM аксессор ищет ресурсный
бандл в корне.app(кудаmake-app.shего не кладёт — в бандле macOS всё
живёт подContents/) и по абсолютному пути в.buildмашины сборщика. У
собиравшего этот путь есть, поэтому локальная сборка работала; в образе из
релиза он вёл в/Users/runner/work/…, и приложение обрывалось
fatalError'ом через секунду после запуска. Обновление при этом вставало
успешно — в строке меню просто оставалась прежняя версия, и назавтра всё
повторялось. Теперь ресурсы лежат вContents/Resourcesи читаются через
Bundle.main, а пропавшая картинка заменяется вопросительным знаком, как и
задумано, вместо падения.make-app.shсверяет, что каждый ресурс лёг туда,
откуда его возьмётBundle.main, и не собирает бандл, еслиBundle.module
вернётся в код приложения: прежняя проверка убеждалась только в том, что
ресурсный бандл есть в.build, — он был на месте всё то время, пока
приложение падало.
Коммиты с v0.2.1
- Поднял версию до 0.2.2 и закрыл журнал
- мини фикс баг (#20)
Прошлые версии — в журнале изменений.
Установка
Скачайте ClaudeWeek-0.2.2-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Контрольная сумма
e0a6fb23ccaece0692f5ed08c40e518ca27e35b96d14d67967c1c52fd5b78bff ClaudeWeek-0.2.2-arm64.dmg
ClaudeWeek 0.2.1
Что нового
Добавлено
- Два аккаунта Claude в одной панели. Claude Code различает аккаунты
конфиг-домом, и второй дом (~/.claude-bплюсCLAUDE_CONFIG_DIR) держит
свой токен, не выбивая первый. Как только каталог появляется, в заголовке
панели встают два знака Claude: выбранный горит фирменным оранжевым, второй
гаснет до серого, а кто из них кто — говорит подсказка с живым адресом
аккаунта изclaude auth status. Выбор переживает перезапуск. У каждого
аккаунта свой лимит, снимок, подобранный бюджет, отсечка счёта и журнал
уведомлений — файлы второго лежат рядом с приставкойsecondary-. Общими их
сделать было нельзя: обновление одного стирало бы снимок другого.
Каталога второго дома нет — нет и переключателя, всё работает как раньше. - Раздел «Аккаунты» на вкладке «Доступ»: оба дома, путь каждого и кто в
него вошёл. «Дом не заведён», «не вошли» и адрес — три разных положения, и
склеивать их в одно «нет данных» нельзя: делать в них надо разное. - Флаг
--account=primary|secondaryвыбирает аккаунт, в том числе
для--json.
Исправлено
- Вкладка «Доступ» показывала «не вошли» у аккаунта, в котором вы работаете.
Состояние дома выяснялось вызовомclaude auth statusс
CLAUDE_CONFIG_DIR, а эта переменная, выставленная даже в тот же самый путь
~/.claude, заставляет Claude Code отвечатьloggedIn: false: ячейку
учётных данных выбирает не путь, а факт установки переменной. Теперь она
ставится только для нестандартного дома, а унаследованная из окружения
снимается — приложение могли запустить из оболочки, где она уже выставлена. - Второй аккаунт показывал «в этот аккаунт ещё не вошли», хотя вход был.
Токен второго дома искали перебором записей Keychain со сверкой
organizationUuidвнутри каждой — а Claude Code 2.1.251 это поле из записи
убрал: там остался одинclaudeAiOauthс токенами и тарифом. Сверять стало
не с чем, и подходящей записи не находилось никогда. Мешал и фильтр имён: он
брал только записи, кончающиеся на-credentials, а запись второго дома
называетсяClaude Code-credentials-034e8c6f. Теперь имя записи выводится из
пути конфиг-дома — так же, как его собирает сам Claude Code, — и формулу
сторожит тест с живым вектором. Промах формулы (сменится схема именования в
CLI) даст «нет доступа», а не чужой токен: имя зависит от дома, а не от
аккаунта. - Метка аккаунта, по которой замечают вход другим аккаунтом, снова
собирается. Она складывалась изorganizationUuidзаписи Keychain и вместе
с ним пропала — отсечка счёта перестала бы замечать смену аккаунта у обоих.
Организацию теперь называетclaude auth statusдля этого дома. Форма метки
прежняя, так что накопленный счёт на месте:2a420a73·proвstate.json
осталось тем же значением. - Незнакомое значение
activeAccountбольше не стоит всего конфига.
Разбор поля бросал исключение, а оно обрывало чтение файла целиком — человек
молча терял все свои настройки разом. Повод не выдуманный: сборка с Codex
писала в этот ключclaude, и такие файлы лежат на дисках. Теперь
незнакомый аккаунт стоит только самого себя и сводится к первому.
Коммиты с v0.2.0
Прошлые версии — в журнале изменений.
Установка
Скачайте ClaudeWeek-0.2.1-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Контрольная сумма
0269c087bc0adcc7886de585302b7190e43a47c8e43494f46b1f3092c62eb5ff ClaudeWeek-0.2.1-arm64.dmg
ClaudeWeek 0.2.0
Что нового
Добавлено
- Подпись сброса недельного лимита в заголовке панели показывает число
месяца. Было «сброс ПТ 16:00» — теперь «сброс 14 ПТ 16:00». День недели
один на всё окно и сам по себе не путал, с каким днём сравнивать, но число
рядом читается без счёта в уме. - Настройка «Дневной план» (вкладка «Общие» → «Расширенные настройки»):
выключает семь суточных полос с планом и парой чисел «факт / план», оставляя
одну полосу на всю неделю — тот же вид, что у пятичасовой сессии, голый
процент без сравнения с графиком. Выключена по умолчанию: панель из коробки
— пятичасовая сессия и итог недели, без разбора по дням; включается тем,
кому разбор нужен. Заливка этой полосы (и заодно полосы пятичасовой сессии —
раньше у неё заливка на красный порог не реагировала вовсе) краснеет на
критическом пороге: рядом с ней нет плановой зоны, с которой красный
сливался бы на дейтеранопии, — та причина, по которой суточные полосы
заливку красным не красят, здесь не применима.
Изменено
- Окно настроек тянется мышью по высоте, а ширина зафиксирована. Форма
.groupedв macOS сама не даёт своим строкам стать шире примерно
семисот точек, и лишняя ширина уходила не в настройки, а в пустые поля по
бокам. Длинные вкладки прокручиваются — растянуть окно вниз можно, чтобы
увидеть их целиком. Шрифт подсказок под настройками увеличен, а сами они
теперь идут во всю ширину окна, а не только в узкую колонку значений формы. - Вкладка «Общие» перестроена. Пояснения под «Языком» и «Источником
данных» убраны; вариант источника «Официальный, с падением на локальный»
назван короче — «Всегда онлайн». Внизу вкладки — раскрывающийся пункт
«Расширенные настройки» (свёрнут по умолчанию, целиком нажимается вся
строка заголовка, а не системный треугольник размером с букву): в нём
«Дневной план» и «Показывать» (переехали со вкладки «Панель», так как без
дневного плана они ни на что не влияют), «Начало недели», «Таймзона» и
«Рабочий день». Заводской рабочий день сменился с «Вечерний 11–24» на
«Рабочий день 10–18». - Вкладка «Строка меню»: пороги цвета («Недельный лимит» и «Пятичасовая
сессия») убраны под такую же раскрывающуюся секцию «Расширенные настройки». - Вкладка «Панель» лишилась секции «Суточные полосы» целиком — «Дневной
план» и «Показывать» теперь на вкладке «Общие». - Вкладка «Уведомления»: три абзаца пояснений убраны, пороги обоих
лимитов — под раскрывающейся секцией «Расширенные настройки». - Вкладка «Доступ» сокращена в разы: секции «Можно и без токена» и «Если
macOS снова спросила доступ» удалены целиком, абзацы про метку аккаунта и
про токен сжаты до одной фразы каждый. Из интерфейса ушло только
повторение — тот же текст остаётся в docs/USAGE.md.
Исправлено
- Строка пятичасовой сессии в панели не краснела на критическом пороге (по
умолчанию 95 %): значок ⚠ и цифра процента загорались красным только при
полном исчерпании лимита (100 %), хотя строка меню и заголовок недельного
лимита красятся раньше, уже на критическом пороге. Теперь оба элемента
строки сессии следуют тому же порогу. Заливка самой полосы по-прежнему не
становится красной — это сделано намеренно, ради различимости при
дальтонизме, — тревога, как и раньше, живёт в значке и цифре. - Сводка футера («осталось 42 % · сброс через 3 дн 18 ч») была на кегль мельче
строки «сброс …» под пятичасовой сессией — разница читалась как случайная.
Теперь обе строки одного кегля.
Коммиты с v0.1.14
- Поднял версию до 0.2.0 и закрыл журнал
- Новая фича в4 (#17)
Прошлые версии — в журнале изменений.
Установка
Скачайте ClaudeWeek-0.2.0-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Контрольная сумма
a55477b9efdc9710b449729d8627708a020e2ac10827258ddfab64aa981b409e ClaudeWeek-0.2.0-arm64.dmg
ClaudeWeek 0.1.14
Что нового
Добавлено
- Счёт начинается заново при входе другим аккаунтом. Недельный процент
приходит от сервера и сменяется сам, а разбивка по суткам считается по
транскриптам в~/.claude/projects— они пишутся в одни и те же файлы при
любом аккаунте, и различить их по содержимому нечем. Теперь программа
замечает смену по метке организации из Keychain и ставит счёту отсечку:
расход прежнего аккаунта в новый лимит больше не идёт. - Кнопка «Начать счёт заново» и строка «Сейчас в ключе» на вкладке
«Доступ»: видно, чей аккаунт в токене сейчас, и есть чем сбросить счёт
вручную — например, когда официальный источник молчит и смену аккаунта
заметить неоткуда. - Баннер о новой версии. Раньше о вышедшем релизе говорила только строка
внизу панели — её видел лишь тот, кто панель открывал. Теперь приходит
уведомление, по одному на версию, а не каждые сутки до установки. Кнопки в
нём нет намеренно: установка перезаписывает приложение и перезапускает его,
и делать это одним щелчком посреди чужой работы неправильно — ставится
обновление по-прежнему на вкладке «О программе». Выключается отдельным
тумблером «Сообщать о новой версии»: он не гаснет вместе с разговорами о
лимитах. Сказанным версия считается только после удачной отправки — иначе
отказ системы (нет разрешения, сбой центра уведомлений) съедал бы новость
навсегда.
Коммиты с v0.1.13
- Поднял версию до 0.1.14 и закрыл журнал
- фиксы (#16)
Прошлые версии — в журнале изменений.
Установка
Скачайте ClaudeWeek-0.1.14-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Контрольная сумма
a75ce1d455de9627b498e25bb75425521878e061d25f78b0814edc3fe7f98e87 ClaudeWeek-0.1.14-arm64.dmg
ClaudeWeek 0.1.13
Что нового
Добавлено
- Настройка «Начало недели»: ряд суток на панели идёт либо с понедельника
(по умолчанию), либо с дня сброса, как раньше. При понедельнике у ряда своя
шкала: понедельник открывается нулём, пятница приходит к 100 % в момент
сброса. 100 % здесь — не весь недельный лимит, а то, что осталось к утру
понедельника: по нему раскладывается план, от него же считается факт.
Суббота с воскресеньем, прошедшие сразу после сброса, уходят под черту в
конец ряда и остаются в недельных процентах — они и правда съели свою долю
лимита. Итог недели в футере тоже недельный. Границы окна и момент сброса
настройка не трогает.
Изменено
- Заводская таймзона — системная, а не
Europe/Saratov. Зона, в которой
писалась программа, попадала на чужую машину дефолтом, и сутки на панели
переключались там не в местную полночь. У кого зона уже выбрана руками,
ничего не меняется. - Полей «День / час / минута сброса» в настройках больше нет. Момент сброса
приходит от сервера (resets_at), а офлайн проецируется от последнего, им
же названного, — поля не влияли ни на что и читались как сломанные: их
крутили, ждали, что неделя сдвинется, и не понимали, почему ничего не
меняется. Вместо них под «Началом недели» показан настоящий момент сброса в
выбранной зоне. Вconfig.jsonключи остались: по ним строится окно, если
сервер не отвечал ещё ни разу и кеш пуст.
Исправлено
- В строке состояния на вкладке «О программе» больше нет «у вас»: просто
«последняя версия — 0.1.12, проверено в 13:17». - Разовый сбой GitHub API больше не отменяет выпуск. Список файлов PR
спрашивается с тремя попытками: 17 августа GitHub был в частичной аварии и
ответил на этот запросHTTP 503ровно в момент слияния — шаг упал, и версия
0.1.12 не вышла, хотя посчитана была бы верно. Пустой ответ теперь считается
отказом, а не «PR без кода»: молча пропущенный релиз заметен куда позже
честного падения.
Коммиты с v0.1.12
- Поднял версию до 0.1.13 и закрыл журнал
- Фикс баг (#15)
- Добавил повтор запроса к API в релизном workflow
Прошлые версии — в журнале изменений.
Установка
Скачайте ClaudeWeek-0.1.13-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Контрольная сумма
ebb8c451064f72626a0d51bf6687eeaf221b3b5cabab90a8a4586e354b0a2ae8 ClaudeWeek-0.1.13-arm64.dmg
ClaudeWeek 0.1.12
Что нового
Исправлено
- Панель на двух мониторах больше не уезжает к чужому краю. Строка меню в
полноэкранном режиме прячется, уводя окно значка на 30 точек вверх — за
верхнюю кромку своего экрана, а если сверху вплотную стоит второй монитор, то
и на его территорию. Панель считалась от границ соседа и повисала у его
нижнего края, оторванная от строки меню на пол-экрана. Теперь экран
определяется по верхней кромке, до которой значку ближе всего, и спрятанная
строка меню этого не сбивает.
Коммиты с v0.1.11
- Поднял версию до 0.1.12 и закрыл журнал
- Мини фикс в4 (#14)
Прошлые версии — в журнале изменений.
Установка
Скачайте ClaudeWeek-0.1.12-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Контрольная сумма
05268667805e9feb7ec40bbf43c4b3fb829d3a90a2a6ab845445be9c23c286f6 ClaudeWeek-0.1.12-arm64.dmg
ClaudeWeek 0.1.11
Что нового
Добавлено
- Английский интерфейс. Язык следует за системным — русский на русской macOS,
английский на любой другой, — а на вкладке «Общие» выбирается явно: «Как в
системе», «Русский» или «English». Переключается на ходу, без перезапуска:
язык лежит в конфиге, и панель с настройками перерисовываются по нему тем же
движением, что и на любую другую правку. Переведено всё, что видит человек:
панель и её разбивка по моделям, меню строки меню, шесть вкладок настроек,
баннеры уведомлений, окна обновления и ошибки, доходящие до панели. Дни
недели, длительности и единицы токенов идут за языком со своими правилами
склонения — «2 дня 4 часа» и «2 days 4 hours». Лог-файл остаётся русским: его
читают при разборе поломки, и одну ошибку не должно быть видно двумя разными
строками. --lang=system|ru|en— язык на один запуск, не трогая настройку. Тем же
ключом снимаются английские картинки:--screenshotрисует то, что выбрано.- Ссылка «журнал изменений» рядом с номером версии на вкладке «О программе» —
открывает этот файл на GitHub. Раньше прочитать, что изменилось, можно было
только при доступном обновлении: кнопка «Что нового» появляется вместе с ним
и ведёт на страницу выпуска. scripts/changelog.sh— закрыть версию в журнале (release) и достать её
раздел (section). Им же пользуются оба релизных workflow, так что
посмотреть заранее, что уедет в заметки, можно той же командой.
Изменено
- Журнал ведётся по-русски, как и вся остальная документация проекта, и
разделы в нём русские: «Добавлено», «Изменено», «Исправлено», «Заметки». - Заметки к релизу начинаются с раздела журнала, а список коммитов уехал под
спойлер ниже: страницу выпуска открывают, чтобы узнать, что изменилось для
человека, а не какие подписи были у коммитов. Из тех же строк собирается окно
обновления в самой программе — теперь оно показывает первые пункты «что
нового», а не начало инструкции по установке. - Раздел «Не выпущено» закрывает
release-on-merge.ymlтем же шагом, которым
поднимает версию: заголовок превращается в номер с датой, сверху заводится
новый пустой, ссылки сравнения дописываются. Пока это была ручная
обязанность, она не пережила первого же выпуска — записи 0.1.10 уехали в
релиз, так и оставшись под «не выпущено»; заодно эта версия закрыта задним
числом. - Разряд версии считает до 99 и переносится в старший: 0.1.99 → 0.2.0,
0.99.0 → 1.0.0. Раньше счёт шёл дальше — 0.1.100.
Исправлено
- Разряд «версию подняли в самом PR» определяется по свободному тегу, а не по
тому, попал лиVersion.swiftв список изменённых файлов. PR с локализацией
правил в этом файле соседние строки, workflow счёл версию поднятой, оставил
выпущенную 0.1.10 и остановился на занятом теге — сборка не вышла.
Прошлые версии — в журнале изменений.
Установка
Скачайте ClaudeWeek-0.1.11-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Контрольная сумма
dee26e0b5243bb8aa98d1007c664d54d7a53e5260b9ee69298c1cfb41c7bf0d9 ClaudeWeek-0.1.11-arm64.dmg
ClaudeWeek 0.1.10
Установка
Скачайте ClaudeWeek-0.1.10-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Что изменилось
- Поднял версию до 0.1.10
- Новый логотип (#11)
Контрольная сумма
43b9d32baf66e2be7915026718d16d8f1b1671a90a6efeb6f4342f2b6eb55ff7 ClaudeWeek-0.1.10-arm64.dmg
ClaudeWeek 0.1.9
Установка
Скачайте ClaudeWeek-0.1.9-arm64.dmg, перетащите приложение
в Applications и снимите карантин:
xattr -dr com.apple.quarantine /Applications/ClaudeWeek.appСборка подписана ad-hoc, без Apple Developer ID, поэтому Gatekeeper
просит подтверждения. Кому это не нравится — собирайте из исходников:
./scripts/install.sh.
Требуется macOS 14+ на Apple Silicon (M1 и новее). Готового образа
под Intel нет — там сборка из исходников тем же install.sh.
Что изменилось
- Поднял версию до 0.1.9
- Уведомления (#10)
Контрольная сумма
2e0fff7deb46cc89c3c3211bf8ac4f3ce4e6d20026dbff9ac77ef5f0ded195a7 ClaudeWeek-0.1.9-arm64.dmg