.PHONY: install uninstall restart status logs test-once UNIT_DIR := $(HOME)/.config/systemd/user STATE_DIR := $(HOME)/.local/state/gitea-bot install: @test -f $(HOME)/.gitea-mochi-token || (echo "missing $(HOME)/.gitea-mochi-token"; exit 1) @test -x /home/fam/.local/bin/claude || (echo "missing claude bin"; exit 1) mkdir -p $(UNIT_DIR) $(STATE_DIR) install -m 644 gitea-bot.service $(UNIT_DIR)/gitea-bot.service systemctl --user daemon-reload systemctl --user enable --now gitea-bot @sleep 1 systemctl --user status gitea-bot --no-pager -l | head -25 uninstall: -systemctl --user disable --now gitea-bot rm -f $(UNIT_DIR)/gitea-bot.service systemctl --user daemon-reload restart: systemctl --user restart gitea-bot systemctl --user status gitea-bot --no-pager -l | head -10 status: systemctl --user status gitea-bot --no-pager -l | head -25 logs: tail -n 200 -f $(STATE_DIR)/bot.log test-once: @# 单次轮询:reset state.db 让所有未处理 issue 都被 dispatch(慎用) MOCHI_TOKEN=$$(cat $(HOME)/.gitea-mochi-token) python3 -c \ "import bot; bot.poll_once(bot.init_state(bot.CONFIG['state_dir']/'state.db'), open('$(HOME)/.gitea-mochi-token').read().strip())"