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
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Changelog

All notable changes to this project are documented here.

## 0.2.0 - 2026-08-07

- Support the current `ChatGPT.app` desktop process and bundled Codex CLI.
- Prevent stale session and permission files from blocking lamp updates.
- Handle context compaction, active Stop hooks, session cleanup, and asynchronous hook ordering.
- Replace blocking process-table scans with lightweight app detection.
- Add night mode with automatic state restoration.
- Add bounded log rotation and safer live diagnostics.
- Install the macOS menu bar app in `~/Applications` and start it at login.

## 0.1.0 - 2026-05-06

- Initial Codex hook integration and persistent BLE daemon for Moonside Halo lamps.
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@ Please include:
Before opening a PR:

```bash
python3 -B -m unittest discover -s tests
python3 -m pytest -q
python3 -B -m py_compile codex_moonside/*.py install_hooks.py
```
9 changes: 6 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

Make a Moonside Halo lamp show local Codex status using Codex lifecycle hooks and BLE.

[![Tests](https://github.com/ulanenko/codex-moonside-lamp/actions/workflows/tests.yml/badge.svg)](https://github.com/ulanenko/codex-moonside-lamp/actions/workflows/tests.yml)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)

```text
Codex hook event
-> codex-moonside-hook
Expand All @@ -22,7 +25,7 @@ The hook exits quickly and never talks to BLE. The daemon owns the persistent BL

## Status

Alpha, tested locally.
Version 0.2.0 (alpha), tested locally.

Tested setup:

Expand Down Expand Up @@ -75,7 +78,7 @@ When the clock is inside the configured window, idle or ambient states are repla
## Install

```bash
git clone <repo-url>
git clone https://github.com/ulanenko/codex-moonside-lamp.git
cd codex-moonside-lamp
scripts/setup-local
source .venv/bin/activate
Expand Down Expand Up @@ -241,7 +244,7 @@ scripts/install-macos-service

## macOS Menu Bar App

This branch includes an experimental menu bar wrapper for macOS. It does not replace the Python daemon or talk to BLE directly. It reads the existing config, state, and log files, then calls the same local scripts and CLI commands you would run from Terminal.
The macOS menu bar app is a local wrapper around the Python daemon. It does not talk to BLE directly. It reads the existing config, state, and log files, then calls the same local scripts and CLI commands you would run from Terminal.

Build, install, launch, and start the local unsigned app at login:

Expand Down
4 changes: 2 additions & 2 deletions SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ This project is local-only:
Do not put prompts, command output, secrets, or source file contents into state
files or logs. The default hook intentionally stores only event/state metadata.

Report security issues privately to the repository owner once the project is
published.
Report security issues privately through a
[GitHub security advisory](https://github.com/ulanenko/codex-moonside-lamp/security/advisories/new).
2 changes: 1 addition & 1 deletion codex_moonside/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
"""Codex lifecycle hook integration for Moonside lamps."""

__version__ = "0.1.0"
__version__ = "0.2.0"
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "codex-moonside-lamp"
version = "0.1.0"
version = "0.2.0"
description = "Codex lifecycle hook status indicator for Moonside Halo lamps over BLE."
readme = "README.md"
requires-python = ">=3.10"
Expand Down
Loading