-
Notifications
You must be signed in to change notification settings - Fork 44
Expand file tree
/
Copy pathMakefile
More file actions
70 lines (47 loc) · 1.85 KB
/
Makefile
File metadata and controls
70 lines (47 loc) · 1.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
.PHONY: start start-awake awake stop status last cycles monitor pause resume install uninstall team help
# === Quick Start ===
start: ## Start the auto-loop in foreground
./auto-loop.sh
start-awake: ## Start loop and prevent macOS sleep while running
caffeinate -d -i -s $(MAKE) start
awake: ## Prevent macOS sleep while current loop PID is running
@test -f .auto-loop.pid || (echo "No .auto-loop.pid found. Run 'make start' first."; exit 1)
@pid=$$(cat .auto-loop.pid); \
echo "Keeping Mac awake while PID $$pid is running..."; \
caffeinate -d -i -s -w $$pid
stop: ## Stop the loop gracefully
./stop-loop.sh
# === Monitoring ===
status: ## Show loop status + latest consensus
./monitor.sh --status
last: ## Show last cycle's full output
./monitor.sh --last
cycles: ## Show cycle history summary
./monitor.sh --cycles
monitor: ## Tail live logs (Ctrl+C to exit)
./monitor.sh
# === Daemon (launchd) ===
install: ## Install launchd daemon (auto-start + crash recovery)
./install-daemon.sh
uninstall: ## Remove launchd daemon
./install-daemon.sh --uninstall
pause: ## Pause daemon (no auto-restart)
./stop-loop.sh --pause-daemon
resume: ## Resume paused daemon
./stop-loop.sh --resume-daemon
# === Interactive ===
team: ## Start interactive Claude session with /team skill
cd "$(CURDIR)" && claude
# === Maintenance ===
clean-logs: ## Remove all cycle logs
rm -f logs/cycle-*.log logs/auto-loop.log.old
@echo "Cycle logs cleaned."
reset-consensus: ## Reset consensus to initial Day 0 state (CAUTION)
@echo "This will reset all company progress. Ctrl+C to cancel."
@sleep 3
git checkout -- memories/consensus.md
@echo "Consensus reset to initial state."
# === Help ===
help: ## Show this help
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[36m%-18s\033[0m %s\n", $$1, $$2}'
.DEFAULT_GOAL := help