Thanks for considering a contribution! This is a small, focused tool — bug reports, dev-setup polish, and integration recipes for other AI coding CLIs are especially welcome.
Open an issue at https://github.com/idonecc/Coding-Done-Alert/issues. Include:
- macOS version (
sw_vers) - Hammerspoon version (menu bar icon → About)
- zellij version (
zellij --version) - Relevant excerpt from
/tmp/coding_done_alert.log - What you expected vs. what happened
Open an issue with the enhancement label. Particularly interested in:
- Hooks for new AI coding tools (Cursor, Aider, OpenAI Codex CLI variants, etc.)
- Alternatives to Hammerspoon for users who don't want a menu-bar daemon
- Configurable click actions beyond
zellij focus-pane-id
- Fork and create a topic branch:
feat/cursor-hookorfix/applause-sample-rate. - Match the existing code style:
- Python: stdlib only, no third-party deps in
hooks/notify.py. - Lua: keep
hammerspoon/coding_done_alert.luaself-contained — no extra requires.
- Python: stdlib only, no third-party deps in
- Update
docs/ARCHITECTURE.mdif you change the runtime data flow. - Update
CHANGELOG.mdunder## [Unreleased]. - Test on macOS 11+ (we target broad Hammerspoon compatibility, not just 26+).
- Open the PR with a one-line summary and a "Test plan" checklist.
git clone https://github.com/idonecc/Coding-Done-Alert.git
cd Coding-Done-Alert
# Install in-place (links to the source tree if you want to iterate)
bash install.sh
# Edit hammerspoon/coding_done_alert.lua, then reload:
hs -c 'hs.reload()'
# Edit hooks/notify.py, then trigger via:
echo '{"last_assistant_message":"test"}' \
| ZELLIJ_SESSION_NAME=$ZELLIJ_SESSION_NAME ZELLIJ_PANE_ID=$ZELLIJ_PANE_ID \
python3 hooks/notify.py
# Inspect logs:
tail -f /tmp/coding_done_alert.logBy contributing you agree your work is licensed under the MIT License (see LICENSE).
欢迎贡献。本工具体积小、聚焦明确,特别欢迎:bug 报告、安装/部署体验改善、其他 AI 编码 CLI 的接入示例。
到 https://github.com/idonecc/Coding-Done-Alert/issues 开 issue,附上:
- macOS 版本(
sw_vers) - Hammerspoon 版本(菜单栏图标 → About)
- zellij 版本(
zellij --version) /tmp/coding_done_alert.log相关片段- 期望行为 vs. 实际行为
加 enhancement label 的 issue。特别关注的方向:
- 新的 AI 编码工具接入(Cursor、Aider、OpenAI Codex CLI 各种变体等)
- 替代 Hammerspoon 的方案(针对不想常驻菜单栏的用户)
zellij focus-pane-id之外可配置的点击动作
- Fork 并建 topic 分支:
feat/cursor-hook或fix/applause-sample-rate - 沿用现有代码风格:
- Python:只用标准库,
hooks/notify.py不引第三方依赖 - Lua:保持
hammerspoon/coding_done_alert.lua自包含,不加额外 require
- Python:只用标准库,
- 改了运行时数据流就同步更新
docs/ARCHITECTURE.md - 在
CHANGELOG.md的## [Unreleased]段加一条 - 在 macOS 11+ 上测过(目标是宽 Hammerspoon 兼容,不只是 26+)
- PR 描述写一行摘要 + Test plan 清单
git clone https://github.com/idonecc/Coding-Done-Alert.git
cd Coding-Done-Alert
# 一键就地安装
bash install.sh
# 改 hammerspoon/coding_done_alert.lua 后重新加载:
hs -c 'hs.reload()'
# 改 hooks/notify.py 后手动触发:
echo '{"last_assistant_message":"test"}' \
| ZELLIJ_SESSION_NAME=$ZELLIJ_SESSION_NAME ZELLIJ_PANE_ID=$ZELLIJ_PANE_ID \
python3 hooks/notify.py
# 看日志:
tail -f /tmp/coding_done_alert.log提交贡献即表示你同意以 MIT License(LICENSE)授权你的代码。