ClaudeNightsWatch
Autonomous task execution system for Claude CLI that monitors your usage windows and executes predefined tasks automatically
Install / Use
/learn @aniketkarne/ClaudeNightsWatchQuality Score
Category
Development & EngineeringSupported Platforms
README
Claude Nights Watch 🌙
🚀 NEW: Now available as a Claude Code Plugin! 🎉
Autonomous task execution system for Claude CLI that monitors your usage windows and executes predefined tasks automatically. Built on top of the claude-auto-renew concept but instead of simple renewals, it executes complex tasks from a task.md file.
⚠️ Warning: This tool uses --dangerously-skip-permissions for autonomous execution. Use with caution!
🎯 Two Ways to Use Claude Nights Watch
Choose your preferred installation method:
🔥 Recommended: Claude Code Plugin (NEW!)
- Seamless Integration: Works directly within Claude Code
- 7 Slash Commands:
/nights-watch start/stop/status/logs/task/setup/restart - AI Agent Integration: Built-in Task Executor agent for autonomous guidance
- Smart Hooks: Automatic session integration and activity logging
- MCP Server: Programmatic control tools for Claude
- Enhanced UX: Better error handling and user experience
⚡ Original Daemon Method (Legacy)
- Standalone Operation: Works independently of Claude Code
- Script-based Control: Direct shell script execution
- Proven Reliability: Battle-tested daemon implementation
- Full Feature Set: All core functionality available
🎯 Overview
Claude Nights Watch extends the auto-renewal concept to create a fully autonomous task execution system. When your Claude usage window is about to expire, instead of just saying "hi", it reads your task.md file and executes the defined tasks autonomously.
Key Features
- 🤖 Autonomous Execution: Runs tasks without manual intervention
- 📋 Task-Based Workflow: Define tasks in a simple markdown file
- 🛡️ Safety Rules: Configure safety constraints in
rules.md - ⏰ Smart Timing: Uses ccusage for accurate timing or falls back to time-based checking
- 📅 Scheduled Start: Can be configured to start at a specific time
- 📊 Comprehensive Logging: Track all activities and executions
- 🔄 Based on Proven Code: Built on the reliable claude-auto-renew daemon
🚀 Quick Start
Prerequisites
- Claude CLI installed and configured
- (Optional) ccusage for accurate timing:
npm install -g ccusage
🔥 Plugin Installation (Recommended)
Option 1: As Claude Code Plugin
Standard Installation
# Method 1: From marketplace (when available)
claude plugins marketplace add https://github.com/aniketkarne/claude-plugins-marketplace
claude plugins add claude-nights-watch
# Method 2: Direct from GitHub
claude plugins add https://github.com/aniketkarne/ClaudeNightsWatch
# Method 3: From local directory (for development)
claude plugins add /path/to/ClaudeNightsWatch
One-Command Installation
Use the Claude Plugins CLI to skip the marketplace setup:
npx claude-plugins install @aniketkarne/claude-nights-watch-marketplace/claude-nights-watch
This automatically adds the marketplace and installs the plugin in a single step.
Plugin Usage
# Interactive setup
/nights-watch setup
# Start daemon
/nights-watch start
# Check status
/nights-watch status
# View logs in real-time
/nights-watch logs -f
# Stop daemon
/nights-watch stop
Plugin Features:
- 🎯 7 Slash Commands:
/nights-watch start/stop/status/logs/task/setup/restart - 🧠 AI Agent: Built-in Task Executor for autonomous guidance
- 🔗 MCP Server: 8 programmatic tools for Claude control
- 🎣 Smart Hooks: Automatic session integration
⚡ Original Daemon Installation (Legacy)
Option 2: Install as Standalone Daemon
-
Clone this repository:
git clone https://github.com/aniketkarne/ClaudeNightsWatch.git cd ClaudeNightsWatch -
Make scripts executable:
chmod +x *.sh -
Run the interactive setup:
./setup-nights-watch.sh
Daemon Usage
-
Create your task file (
task.md):# Daily Development Tasks 1. Run linting on all source files 2. Update dependencies to latest versions 3. Run the test suite 4. Generate coverage report 5. Create a summary of changes -
Create safety rules (
rules.md):# Safety Rules - Never delete files without backing up - Only work within the project directory - Always create feature branches for changes - Never commit sensitive information -
Start the daemon:
./claude-nights-watch-manager.sh start
Legacy Commands:
./claude-nights-watch-manager.sh start [--at TIME] # Start daemon
./claude-nights-watch-manager.sh stop # Stop daemon
./claude-nights-watch-manager.sh status # Check status
./claude-nights-watch-manager.sh logs [-f] # View logs
./claude-nights-watch-manager.sh task # View task/rules
./claude-nights-watch-manager.sh restart # Restart daemon
📝 Configuration
Task File (task.md)
The task file contains the instructions that Claude will execute. It should be clear, specific, and well-structured. See examples/task.example.md for a comprehensive example.
Rules File (rules.md)
The rules file defines safety constraints and best practices. It's prepended to every task execution to ensure safe autonomous operation. See examples/rules.example.md for recommended rules.
Environment Variables
CLAUDE_NIGHTS_WATCH_DIR: Set the directory containing task.md and rules.md (default: current directory)
🎮 Commands
🔥 Plugin Commands (NEW!)
When using as a Claude Code plugin, use slash commands:
# Start the daemon
/nights-watch start
# Start with scheduled time
/nights-watch start --at "09:00"
/nights-watch start --at "2025-01-28 14:30"
# Stop the daemon
/nights-watch stop
# Check status
/nights-watch status
# View logs
/nights-watch logs
/nights-watch logs -f # Follow mode
# View current task and rules
/nights-watch task
# Interactive setup
/nights-watch setup
# Restart daemon
/nights-watch restart
⚡ Original Daemon Commands (Legacy)
For standalone daemon usage:
# Start the daemon
./claude-nights-watch-manager.sh start
# Start with scheduled time
./claude-nights-watch-manager.sh start --at "09:00"
./claude-nights-watch-manager.sh start --at "2025-01-28 14:30"
# Stop the daemon
./claude-nights-watch-manager.sh stop
# Check status
./claude-nights-watch-manager.sh status
# View logs
./claude-nights-watch-manager.sh logs
./claude-nights-watch-manager.sh logs -f # Follow mode
# Use interactive log viewer
./view-logs.sh
# View current task and rules
./claude-nights-watch-manager.sh task
# Restart daemon
./claude-nights-watch-manager.sh restart
🧠 Plugin Features (NEW!)
Task Executor Agent
Built-in AI agent that helps with:
- Autonomous Task Planning: Designing effective autonomous workflows
- Safety Rule Creation: Building comprehensive safety constraints
- Daemon Management: Starting, stopping, and troubleshooting
- Log Analysis: Interpreting execution results and identifying issues
Usage:
User: "Help me create an autonomous code review workflow"
Agent: Provides expert guidance and can execute /nights-watch commands
User: "My daemon isn't working, help debug"
Agent: Analyzes logs and suggests solutions
MCP Server Integration
Provides 8 programmatic tools for Claude:
get_daemon_status- Query daemon statestart_daemon- Start with optional schedulestop_daemon- Stop the daemonget_logs- Retrieve log entriesread_task- Read task.md contentread_rules- Read rules.md contentwrite_task- Update task.mdwrite_rules- Update rules.md
Smart Hooks
Automatic integration with Claude Code sessions:
- SessionStart: Shows daemon status when starting Claude Code
- SessionEnd: Prompts to start daemon if tasks are configured
- PostToolUse: Logs file modifications for audit trail
These hooks run silently in the background, enhancing your workflow.
🔧 How It Works
- Monitoring: The daemon continuously monitors your Claude usage windows
- Timing: When approaching the 5-hour limit (within 2 minutes), it prepares for execution
- Task Preparation: Reads both
rules.mdandtask.md, combining them into a single prompt - Autonomous Execution: Executes the task using
claude --dangerously-skip-permissions - Logging: All activities are logged to
logs/claude-nights-watch-daemon.log
Timing Logic
- With ccusage: Gets accurate remaining time from the API
- Without ccusage: Falls back to timestamp-based checking
- Adaptive intervals:
- >30 minutes remaining: Check every 10 minutes
- 5-30 minutes remaining: Check every 2 minutes
- <5 minutes remaining: Check every 30 seconds
⚠️ Safety Considerations
IMPORTANT: This tool runs Claude with the --dangerously-skip-permissions flag, meaning it will execute tasks without asking for confirmation.
Best Practices:
- Always test tasks manually first before setting up autonomous execution
- Use comprehensive rules.md to prevent destructive actions
- Start with simple, safe tasks and gradually increase complexity
- Monitor logs regularly to ensure proper execution
- Keep backups of important data
Related Skills
node-connect
348.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
348.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
348.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
