openclaw-watcher 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/CHANGELOG.md +2 -85
  2. package/README.md +11 -16
  3. package/dist/ai/cli-client.js +1 -1
  4. package/dist/ai/cli-client.js.map +1 -1
  5. package/dist/setup/git-initializer.js +1 -1
  6. package/package.json +15 -2
  7. package/.claude/settings.local.json +0 -7
  8. package/.dockerignore +0 -21
  9. package/.env.example +0 -31
  10. package/.eslintrc.json +0 -26
  11. package/.prettierrc.json +0 -9
  12. package/Dockerfile +0 -47
  13. package/build.sh +0 -33
  14. package/docker-compose.yml +0 -43
  15. package/nodemon.json +0 -9
  16. package/scripts/setup.sh +0 -105
  17. package/src/ai/ai-orchestrator.ts +0 -95
  18. package/src/ai/cli-client.ts +0 -296
  19. package/src/cli.ts +0 -40
  20. package/src/commands/config.ts +0 -57
  21. package/src/commands/init.ts +0 -239
  22. package/src/commands/start.ts +0 -75
  23. package/src/commands/status.ts +0 -79
  24. package/src/config/default.ts +0 -25
  25. package/src/healthcheck/gateway-monitor.ts +0 -137
  26. package/src/healthcheck/health-checker.ts +0 -71
  27. package/src/index.ts +0 -48
  28. package/src/recovery/auto-fixer.ts +0 -184
  29. package/src/recovery/change-recorder.ts +0 -46
  30. package/src/setup/config-initializer.ts +0 -63
  31. package/src/setup/config-loader.ts +0 -25
  32. package/src/setup/git-initializer.ts +0 -203
  33. package/src/setup/safe-config-generator.ts +0 -100
  34. package/src/types/index.ts +0 -67
  35. package/src/utils/executor.ts +0 -75
  36. package/src/utils/git-manager.ts +0 -121
  37. package/src/utils/github-cli.ts +0 -37
  38. package/src/utils/logger.ts +0 -39
  39. package/src/utils/paths.ts +0 -25
  40. package/tsconfig.json +0 -29
  41. /package/{prompts → dist/prompts}/fix-openclaw.md +0 -0
package/CHANGELOG.md CHANGED
@@ -5,89 +5,6 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
- ## [2.0.0] - 2026-02-01
8
+ ## [0.0.2] - 2026-02-01
9
9
 
10
- ### 🚀 Major Architecture Upgrade
11
-
12
- **核心改变**:AI 直接修复问题,而不是返回诊断建议
13
-
14
- ### Breaking Changes
15
-
16
- - ❌ 移除 API 调用方式(Claude API、Kimi API)
17
- - ✅ 改用 CLI 工具(Claude Code CLI、Kimi Code CLI)
18
- - ❌ 移除配置项:`CLAUDE_API_KEY`、`KIMI_API_KEY`
19
- - ✅ 新增配置项:`AI_TIMEOUT`(默认 5 分钟)
20
-
21
- ### Added
22
-
23
- #### AI 直接修复能力
24
- - 🤖 AI 使用完整工具集(Read、Edit、Write、Bash)直接修复问题
25
- - ⚡ 迭代式修复:AI 会持续尝试直到问题解决
26
- - ✅ AI 自主验证:修复后自动验证是否成功
27
- - 📊 标准化摘要:AI 输出规范化的修复报告
28
-
29
- #### 统一 System Prompt
30
- - 📝 Claude Code 和 Kimi Code 共用同一个 System Prompt
31
- - 🎯 保证两个 AI 的行为一致性
32
- - 🔧 可自定义修复策略和指导方针
33
-
34
- #### 增强的变更追踪
35
- - 📝 AI 修复后自动提交到 Git
36
- - 📊 JSON 日志记录完整的修复过程
37
- - 🔍 包含:问题、原因、修复措施、修改文件、执行命令
38
-
39
- ### Changed
40
-
41
- #### 工作流程优化
42
- ```
43
- 旧: 健康检查 → AI 返回诊断 → 程序解析 → 程序执行 → 可能失败
44
- 新: 健康检查 → AI 直接修复 → AI 验证 → AI 总结 → 程序记录 → 完成
45
- ```
46
-
47
- #### 架构调整
48
- - `ai/claude-client.ts` → `ai/cli-client.ts`(统一 CLI 客户端)
49
- - `ai/kimi-client.ts` → 删除(合并到 cli-client.ts)
50
- - `recovery/auto-fixer.ts` → 简化为只记录 AI 已完成的修复
51
- - `recovery/config-manager.ts` → 已弃用(AI 直接修改配置)
52
-
53
- ### Improved
54
-
55
- - 🎯 修复成功率提升:AI 可以迭代尝试多次
56
- - ⚡ 修复速度提升:不需要往返通信
57
- - 🔒 安全性提升:Git 完整记录所有变更
58
- - 📊 可观察性提升:标准化的修复摘要
59
-
60
- ### Documentation
61
-
62
- - ✨ 更新 README.md:强调 AI 直接修复能力
63
- - 📖 更新 QUICKSTART.md:简化配置步骤
64
- - 🎓 新增 `prompts/fix-openclaw.md`:AI System Prompt
65
- - 🔧 更新所有示例和文档
66
-
67
- ---
68
-
69
- ## [1.0.0] - 2026-02-01
70
-
71
- ### Added(已废弃,见 v2.0.0)
72
-
73
- - 🎉 Initial release(原始版本)
74
- - ✨ 基于诊断 + 程序执行的修复方案(已废弃)
75
- - 🤖 Claude CLI / Kimi API 集成(API 方式已废弃)
76
-
77
- ### Configuration
78
-
79
- - Environment-based configuration
80
- - Support for custom OpenClaw paths
81
- - Configurable AI provider selection
82
- - Adjustable health check parameters
83
- - Git tracking toggle
84
- - Backup system toggle
85
-
86
- ### Documentation
87
-
88
- - Comprehensive README with examples
89
- - Architecture diagrams
90
- - Configuration guide
91
- - Security considerations
92
- - Troubleshooting guide
93
- - Development setup instructions
10
+ ### 🚀 Project Born
package/README.md CHANGED
@@ -64,10 +64,6 @@ npx openclaw-watcher status
64
64
 
65
65
  ## 📖 Full Documentation
66
66
 
67
- - **[CLI Guide](./CLI_GUIDE.md)** - Complete CLI command reference
68
- - **[Architecture](./ARCHITECTURE.md)** - System design and architecture
69
- - **[Quick Start (Chinese)](./QUICKSTART.md)** - 中文快速开始指南
70
-
71
67
  ## 🎯 How It Works
72
68
 
73
69
  ```
@@ -77,12 +73,12 @@ npx openclaw-watcher status
77
73
  │ Fails 3x (configurable)
78
74
 
79
75
  ┌─────────────────┐
80
- AI Triggered │ Claude/Kimi Code CLI
76
+ Triggered │ Claude/Kimi Code CLI
81
77
  └────────┬────────┘
82
78
 
83
79
 
84
80
  ┌─────────────────┐
85
- AI Diagnosis │ Read configs, logs, status
81
+ Diagnosis │ Read configs, logs, status
86
82
  └────────┬────────┘
87
83
 
88
84
 
@@ -92,7 +88,7 @@ npx openclaw-watcher status
92
88
 
93
89
 
94
90
  ┌─────────────────┐
95
- AI Verifies │ Restart, check status
91
+ AI Verifies │ Restart, check status
96
92
  └────────┬────────┘
97
93
 
98
94
 
@@ -275,14 +271,14 @@ Watcher manages the entire `~/.openclaw` directory as a Git repository — not j
275
271
 
276
272
  The auto-generated `.gitignore` excludes sensitive and temporary files:
277
273
 
278
- | Pattern | Reason |
279
- |---------|--------|
280
- | `openclaw.json` | Contains API keys and tokens |
281
- | `agents/*/agent/auth-profiles.json` | Agent authentication credentials |
282
- | `agents/*/sessions/` | Session history (large + privacy) |
283
- | `memory/*.sqlite` | Vector index databases (large) |
284
- | `cache/` | Temporary cache files |
285
- | `*.log` | Log files |
274
+ | Pattern | Reason |
275
+ | ----------------------------------- | --------------------------------- |
276
+ | `openclaw.json` | Contains API keys and tokens |
277
+ | `agents/*/agent/auth-profiles.json` | Agent authentication credentials |
278
+ | `agents/*/sessions/` | Session history (large + privacy) |
279
+ | `memory/*.sqlite` | Vector index databases (large) |
280
+ | `cache/` | Temporary cache files |
281
+ | `*.log` | Log files |
286
282
 
287
283
  ### GitHub Sync (Optional)
288
284
 
@@ -299,7 +295,6 @@ npx openclaw-watcher init
299
295
 
300
296
  - During `init`: creates a private GitHub repo and pushes the initial commit
301
297
  - During monitoring: auto-pushes to GitHub after each repair commit (best-effort — push failures never block recovery)
302
- - Repo name is auto-generated: `openclaw-config-<hostname>`
303
298
 
304
299
  If `gh` is not installed or not authenticated during init, the setup warns and continues — you can always configure GitHub sync later.
305
300
 
@@ -16,7 +16,7 @@ export class CLIClient {
16
16
  this.timeout = timeout;
17
17
  }
18
18
  async initialize() {
19
- const promptPath = path.join(__dirname, '../../prompts/fix-openclaw.md');
19
+ const promptPath = path.join(__dirname, '../prompts/fix-openclaw.md');
20
20
  try {
21
21
  this.systemPrompt = await fs.readFile(promptPath, 'utf-8');
22
22
  logger.info('System prompt loaded', { provider: this.provider });
@@ -1 +1 @@
1
- {"version":3,"file":"cli-client.js","sourceRoot":"","sources":["../../src/ai/cli-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-client.js","sourceRoot":"","sources":["../../src/ai/cli-client.ts"],"names":[],"mappings":"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"}
@@ -102,7 +102,7 @@ This repository is managed by **OpenClaw Watcher** — it tracks the entire \`~/
102
102
 
103
103
  ## 🔧 Managed by
104
104
 
105
- [OpenClaw Watcher](https://github.com/your-org/openclaw-watcher) - AI-powered health monitoring and auto-repair
105
+ [OpenClaw Watcher](https://github.com/cjraft/openclaw-watcher) - AI-powered health monitoring and auto-repair
106
106
  `;
107
107
  await fs.writeFile(readmePath, content, 'utf-8');
108
108
  logger.info('README.md created');
package/package.json CHANGED
@@ -1,15 +1,20 @@
1
1
  {
2
2
  "name": "openclaw-watcher",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "description": "AI-powered automated health monitoring and self-healing CLI for OpenClaw Gateway",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
+ "files": [
8
+ "dist",
9
+ "README.md",
10
+ "CHANGELOG.md"
11
+ ],
7
12
  "bin": {
8
13
  "openclaw-watcher": "dist/cli.js"
9
14
  },
10
15
  "scripts": {
11
16
  "dev": "nodemon --exec tsx src/index.ts",
12
- "build": "tsc && tsc-alias",
17
+ "build": "tsc && tsc-alias && cp -r src/prompts dist/",
13
18
  "start": "node dist/index.js",
14
19
  "lint": "eslint . --ext .ts",
15
20
  "format": "prettier --write \"src/**/*.ts\"",
@@ -25,6 +30,14 @@
25
30
  ],
26
31
  "author": "",
27
32
  "license": "MIT",
33
+ "repository": {
34
+ "type": "git",
35
+ "url": "https://github.com/cjraft/openclaw-watcher.git"
36
+ },
37
+ "homepage": "https://github.com/cjraft/openclaw-watcher#readme",
38
+ "bugs": {
39
+ "url": "https://github.com/cjraft/openclaw-watcher/issues"
40
+ },
28
41
  "dependencies": {
29
42
  "axios": "^1.7.9",
30
43
  "boxen": "^7.1.1",
@@ -1,7 +0,0 @@
1
- {
2
- "permissions": {
3
- "allow": [
4
- "Bash(pnpm tsc:*)"
5
- ]
6
- }
7
- }
package/.dockerignore DELETED
@@ -1,21 +0,0 @@
1
- node_modules
2
- dist
3
- logs
4
- *.log
5
- .env
6
- .env.local
7
- .git
8
- .gitignore
9
- README.md
10
- CHANGELOG.md
11
- USAGE_GUIDE.md
12
- *.md
13
- .vscode
14
- .idea
15
- coverage
16
- .nyc_output
17
- tmp
18
- temp
19
- *.tmp
20
- config-backups
21
- .DS_Store
package/.env.example DELETED
@@ -1,31 +0,0 @@
1
- # OpenClaw Configuration
2
- OPENCLAW_GATEWAY_URL=http://localhost:10002
3
- OPENCLAW_HEALTH_ENDPOINT=/health
4
- OPENCLAW_CONFIG_PATH=~/.openclaw
5
-
6
- # Health Check Configuration
7
- HEALTH_CHECK_INTERVAL=30000
8
- HEALTH_CHECK_TIMEOUT=10000
9
- MAX_RETRY_ATTEMPTS=3
10
- FAILURE_THRESHOLD=3
11
-
12
- # AI Configuration
13
- # Choose 'claude' or 'kimi' - both use CLI tools (claude code / kimi code)
14
- AI_PROVIDER=claude
15
- # No API keys needed - uses CLI tools directly
16
-
17
- # Recovery Protection
18
- MAX_RECOVERY_RETRIES=3
19
- RECOVERY_COOLDOWN_MS=300000
20
-
21
- # Change Tracking
22
- USE_GIT_TRACKING=true
23
- GIT_COMMIT_MESSAGE_PREFIX=[AutoFix]
24
- BACKUP_CONFIG_BEFORE_CHANGE=true
25
-
26
- # Watcher Home Directory (config + logs)
27
- # WATCHER_HOME=~/.openclaw-watcher
28
-
29
- # Logging
30
- LOG_LEVEL=info
31
- # LOG_FILE_PATH defaults to $WATCHER_HOME/logs/healthcheck.log
package/.eslintrc.json DELETED
@@ -1,26 +0,0 @@
1
- {
2
- "parser": "@typescript-eslint/parser",
3
- "extends": [
4
- "eslint:recommended",
5
- "plugin:@typescript-eslint/recommended"
6
- ],
7
- "plugins": ["@typescript-eslint"],
8
- "parserOptions": {
9
- "ecmaVersion": 2022,
10
- "sourceType": "module",
11
- "project": "./tsconfig.json"
12
- },
13
- "env": {
14
- "node": true,
15
- "es2022": true
16
- },
17
- "rules": {
18
- "@typescript-eslint/no-explicit-any": "warn",
19
- "@typescript-eslint/explicit-function-return-type": "off",
20
- "@typescript-eslint/no-unused-vars": [
21
- "error",
22
- { "argsIgnorePattern": "^_" }
23
- ],
24
- "no-console": "warn"
25
- }
26
- }
package/.prettierrc.json DELETED
@@ -1,9 +0,0 @@
1
- {
2
- "semi": true,
3
- "trailingComma": "es5",
4
- "singleQuote": true,
5
- "printWidth": 100,
6
- "tabWidth": 2,
7
- "useTabs": false,
8
- "endOfLine": "lf"
9
- }
package/Dockerfile DELETED
@@ -1,47 +0,0 @@
1
- FROM node:22-alpine AS builder
2
-
3
- # Install pnpm
4
- RUN npm install -g pnpm
5
-
6
- WORKDIR /app
7
-
8
- # Copy package files
9
- COPY package.json pnpm-lock.yaml* ./
10
-
11
- # Install dependencies
12
- RUN pnpm install --frozen-lockfile
13
-
14
- # Copy source code
15
- COPY . .
16
-
17
- # Build
18
- RUN pnpm run build
19
-
20
- # Production image
21
- FROM node:22-alpine
22
-
23
- # Install pnpm
24
- RUN npm install -g pnpm
25
-
26
- WORKDIR /app
27
-
28
- # Copy package files
29
- COPY package.json pnpm-lock.yaml* ./
30
-
31
- # Install production dependencies only
32
- RUN pnpm install --prod --frozen-lockfile
33
-
34
- # Copy built files
35
- COPY --from=builder /app/dist ./dist
36
-
37
- # Create logs directory
38
- RUN mkdir -p /app/logs
39
-
40
- # Set environment
41
- ENV NODE_ENV=production
42
-
43
- # Expose port (if needed for metrics)
44
- # EXPOSE 9090
45
-
46
- # Run the service
47
- CMD ["node", "dist/index.js"]
package/build.sh DELETED
@@ -1,33 +0,0 @@
1
- #!/bin/bash
2
-
3
- set -e
4
-
5
- echo "🔨 Building OpenClaw Watcher..."
6
-
7
- # Clean previous build
8
- echo "Cleaning previous build..."
9
- rm -rf dist
10
-
11
- # Install dependencies
12
- echo "Installing dependencies..."
13
- pnpm install
14
-
15
- # Type check
16
- echo "Running type check..."
17
- pnpm run type-check
18
-
19
- # Build
20
- echo "Building..."
21
- pnpm run build
22
-
23
- # Make CLI executable
24
- echo "Setting executable permissions..."
25
- chmod +x dist/cli.js
26
-
27
- echo "✅ Build completed successfully!"
28
- echo ""
29
- echo "Usage:"
30
- echo " npx . init # Initialize configuration"
31
- echo " npx . start # Start monitoring"
32
- echo " npx . status # Check status"
33
- echo " npx . config # Manage configuration"
@@ -1,43 +0,0 @@
1
- version: '3.8'
2
-
3
- services:
4
- openclaw-healthcheck:
5
- build: .
6
- container_name: openclaw-healthcheck
7
- restart: unless-stopped
8
- env_file:
9
- - .env
10
- environment:
11
- - NODE_ENV=production
12
- - TZ=Asia/Shanghai
13
- volumes:
14
- # Mount logs directory
15
- - ./logs:/app/logs
16
- # Mount OpenClaw config directory (adjust path as needed)
17
- - ${OPENCLAW_CONFIG_PATH}:/opt/openclaw/config
18
- # Mount git credentials if using git tracking
19
- - ~/.gitconfig:/root/.gitconfig:ro
20
- networks:
21
- - openclaw-network
22
- # If you need to connect to local OpenClaw gateway
23
- extra_hosts:
24
- - "host.docker.internal:host-gateway"
25
- # Resource limits (optional)
26
- deploy:
27
- resources:
28
- limits:
29
- cpus: '1'
30
- memory: 512M
31
- reservations:
32
- cpus: '0.5'
33
- memory: 256M
34
- # Logging
35
- logging:
36
- driver: "json-file"
37
- options:
38
- max-size: "10m"
39
- max-file: "3"
40
-
41
- networks:
42
- openclaw-network:
43
- driver: bridge
package/nodemon.json DELETED
@@ -1,9 +0,0 @@
1
- {
2
- "watch": ["src"],
3
- "ext": "ts,json",
4
- "ignore": ["src/**/*.test.ts", "node_modules"],
5
- "exec": "tsx src/index.ts",
6
- "env": {
7
- "NODE_ENV": "development"
8
- }
9
- }
package/scripts/setup.sh DELETED
@@ -1,105 +0,0 @@
1
- #!/bin/bash
2
-
3
- set -e
4
-
5
- echo "🚀 Setting up OpenClaw HealthCheck..."
6
-
7
- # Check Node.js version
8
- echo "Checking Node.js version..."
9
- NODE_VERSION=$(node -v | cut -d'v' -f2 | cut -d'.' -f1)
10
- if [ "$NODE_VERSION" -lt 22 ]; then
11
- echo "❌ Node.js version 22 or higher is required"
12
- echo "Current version: $(node -v)"
13
- exit 1
14
- fi
15
- echo "✅ Node.js version: $(node -v)"
16
-
17
- # Check pnpm
18
- echo "Checking pnpm..."
19
- if ! command -v pnpm &> /dev/null; then
20
- echo "📦 Installing pnpm..."
21
- npm install -g pnpm
22
- fi
23
- echo "✅ pnpm version: $(pnpm -v)"
24
-
25
- # Install dependencies
26
- echo "📦 Installing dependencies..."
27
- pnpm install
28
-
29
- # Setup environment
30
- if [ ! -f .env ]; then
31
- echo "📝 Creating .env file..."
32
- cp .env.example .env
33
- echo "⚠️ Please edit .env file with your configuration"
34
- else
35
- echo "✅ .env file already exists"
36
- fi
37
-
38
- # Create necessary directories
39
- echo "📁 Creating directories..."
40
- mkdir -p logs config-backups
41
-
42
- # Set executable permissions
43
- echo "🔐 Setting permissions..."
44
- chmod +x build.sh
45
- chmod +x scripts/*.sh 2>/dev/null || true
46
-
47
- # Check OpenClaw
48
- echo "Checking OpenClaw installation..."
49
- if command -v openclaw &> /dev/null; then
50
- echo "✅ OpenClaw found: $(which openclaw)"
51
- OPENCLAW_VERSION=$(openclaw version 2>/dev/null || echo "unknown")
52
- echo " Version: $OPENCLAW_VERSION"
53
- else
54
- echo "⚠️ OpenClaw not found in PATH"
55
- echo " Please ensure OpenClaw is installed and accessible"
56
- fi
57
-
58
- # Check AI providers
59
- echo "Checking AI providers..."
60
- CLAUDE_FOUND=false
61
- KIMI_FOUND=false
62
-
63
- if command -v claude &> /dev/null; then
64
- echo "✅ Claude Code CLI found: $(which claude)"
65
- CLAUDE_FOUND=true
66
- else
67
- echo "⚠️ Claude Code CLI not found"
68
- fi
69
-
70
- if command -v kimi &> /dev/null; then
71
- echo "✅ Kimi Code CLI found: $(which kimi)"
72
- KIMI_FOUND=true
73
- else
74
- echo "⚠️ Kimi Code CLI not found"
75
- fi
76
-
77
- if [ "$CLAUDE_FOUND" = false ] && [ "$KIMI_FOUND" = false ]; then
78
- echo ""
79
- echo "❌ ERROR: No AI CLI tool found!"
80
- echo " You must install at least one:"
81
- echo " - Claude Code CLI: https://github.com/anthropics/claude-code"
82
- echo " - Kimi Code CLI: https://platform.moonshot.cn/docs/code"
83
- echo ""
84
- exit 1
85
- fi
86
-
87
- echo ""
88
- echo "✅ Setup completed!"
89
- echo ""
90
- echo "Next steps:"
91
- echo "1. Edit .env file with your configuration:"
92
- echo " vim .env"
93
- echo ""
94
- echo "2. Update these important settings:"
95
- echo " - OPENCLAW_GATEWAY_URL"
96
- echo " - OPENCLAW_CONFIG_PATH"
97
- echo " - AI_PROVIDER and API keys"
98
- echo ""
99
- echo "3. Run in development mode:"
100
- echo " pnpm run dev"
101
- echo ""
102
- echo "4. Or build and run in production:"
103
- echo " ./build.sh"
104
- echo " pnpm start"
105
- echo ""