$npx -y skills add lc198707/anti-lie --skill skillUse when audited OpenClaw conversations or outgoing Feishu/Slack/channel messages contain concrete business numbers such as revenue, percentages, stock prices, contract values, costs, market share, or funding and need evidence checks plus red/yellow/green audit stamps after sends
| 1 | # Anti-Lie V0.1.0-rev13 Skill |
| 2 | |
| 3 | Installs the Anti-Lie verifier, OpenClaw hook, and shadow worker so outbound channel messages with concrete business claims are checked for evidence and stamped with PASS/WARN/BLOCK-style audit tails. |
| 4 | |
| 5 | ## 何时使用本 Skill |
| 6 | |
| 7 | Activate this skill when the user or workspace mentions: |
| 8 | |
| 9 | - anti-lie, anti lie, audit stamp, 红黄绿审计, 小尾巴, anti-lie verify |
| 10 | - outgoing OpenClaw channel messages to Feishu, Slack, Discord, Telegram, or similar need evidence review |
| 11 | - concrete business numbers need receipts before sending: revenue, 营收, costs, percentages, growth rates, stock prices, contract values, funding, market share |
| 12 | - installing, verifying, repairing, rolling back, or uninstalling the anti-lie V4.4-rev5 hook/service on Linux or macOS nodes |
| 13 | |
| 14 | Do not use it for general fact checking without OpenClaw outbound-message audit needs. |
| 15 | |
| 16 | ## 一键安装(顶层 install.sh) |
| 17 | |
| 18 | From this skill directory: |
| 19 | |
| 20 | ```bash |
| 21 | bash install.sh |
| 22 | ``` |
| 23 | |
| 24 | Useful options: |
| 25 | |
| 26 | ```bash |
| 27 | bash install.sh --dry-run |
| 28 | bash install.sh --port=17600 |
| 29 | bash install.sh --workspace="$HOME/.openclaw/workspace" |
| 30 | bash install.sh --python=/path/to/python3 |
| 31 | ``` |
| 32 | |
| 33 | The wrapper checks Python >=3.10, OpenClaw config, backs up current hooks to `~/.openclaw/.anti-lie-backup-<timestamp>/`, dispatches to `package/_install-linux.sh` on Linux or `package/_install-macos.sh` on macOS, then runs `verify.sh`. |
| 34 | |
| 35 | ## 自检(verify.sh) |
| 36 | |
| 37 | ```bash |
| 38 | bash verify.sh |
| 39 | bash verify.sh --port=17600 |
| 40 | ``` |
| 41 | |
| 42 | `verify.sh` checks package structure, Python/Node/OpenClaw prerequisites, service health for the host OS, `/healthz`, a neutral `/verify` call, and the bundled 13-case acceptance suite when the service is running. |
| 43 | |
| 44 | Expected installed-state result: `13/13 acceptance PASS` from the packaged verifier plus an overall success line. |
| 45 | |
| 46 | ## 卸载(uninstall.sh) |
| 47 | |
| 48 | ```bash |
| 49 | bash uninstall.sh |
| 50 | ``` |
| 51 | |
| 52 | This stops Linux systemd user units or macOS launchd agents, kills the shadow worker/server processes, removes the installed anti-lie hook, and restores the newest `~/.openclaw/.anti-lie-backup-*` hooks backup when present. |
| 53 | |
| 54 | ## 配置 |
| 55 | |
| 56 | Environment variables used by the installer/runtime: |
| 57 | |
| 58 | | Variable | Purpose | Default / Example | |
| 59 | |---|---|---| |
| 60 | | `ANTI_LIE_PORT` | verifier service port | `17600` | |
| 61 | | `ANTI_LIE_VERIFY_URL` | hook/worker verifier URL | `http://127.0.0.1:17600/verify` | |
| 62 | | `ANTI_LIE_SENTINEL_TARGET` | target for audit-tail delivery | node/channel specific | |
| 63 | | `ANTI_LIE_TAIL_FALLBACK_MS` | fallback wait before tail delivery | `30000` | |
| 64 | | `FEISHU_APP_ID` | Feishu app ID for tail delivery | node specific | |
| 65 | | `FEISHU_APP_SECRET` | Feishu app secret | node specific | |
| 66 | | `FEISHU_OPEN_ID` | Feishu recipient open_id | node specific | |
| 67 | | `FEISHU_CHAT_ID` | Feishu recipient chat_id | node specific | |
| 68 | |
| 69 | See `docs/INSTALL-GUIDE.md` for the full node-by-node manual and troubleshooting commands. |
| 70 | |
| 71 | ## 故障排查 |
| 72 | |
| 73 | ### Q1: Python <3.10 fails |
| 74 | |
| 75 | Install Python 3.10+ first. macOS usually uses `brew install python@3.11`; Linux depends on the distribution package manager. Then rerun with `--python=/path/to/python3` if needed. |
| 76 | |
| 77 | ### Q2: Port 17600 is occupied |
| 78 | |
| 79 | Use another port consistently: |
| 80 | |
| 81 | ```bash |
| 82 | ANTI_LIE_PORT=17600 bash install.sh --port=17600 |
| 83 | bash verify.sh --port=17600 |
| 84 | ``` |
| 85 | |
| 86 | ### Q3: Service starts but health check fails |
| 87 | |
| 88 | Linux: inspect `systemctl --user status anti-lie-verify.service --no-pager` and `/tmp/verify_server-systemd.log`. |
| 89 | macOS: inspect `launchctl print gui/$(id -u)/ai.openclaw.anti-lie-verify` and `~/Library/Logs/anti-lie/verify-server.log`. |
| 90 | |
| 91 | ### Q4: Outgoing messages get no audit tail |
| 92 | |
| 93 | Check the shadow worker and logs: |
| 94 | |
| 95 | ```bash |
| 96 | pgrep -af anti-lie-shadow-worker.js |
| 97 | tail -n 50 /tmp/anti-lie-audit.log |
| 98 | tail -n 50 /tmp/anti-lie-shadow.log |
| 99 | ``` |
| 100 | |
| 101 | ### Q5: Inbound user messages are audited |
| 102 | |
| 103 | That indicates an old hook is still active. Reinstall this rev5 skill and confirm the active handler matches the package under `hooks/anti-lie-verify/handler.js`. |