3.16.3 自动化示例
下面给出三个典型自动化场景,展示 CLI 在 CI、定时任务、日志分析中的用法。示例需要按你的仓库、设备和模型配置调整后再用于正式环境。
CI 中跑代码审查
在 GitHub Actions 工作流中使用 @dmoss/agent 审查 PR 差异:
# .github/workflows/review.yml
name: AI Code Review
on:
pull_request:
branches: [main]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: '22'
- name: Install @dmoss/agent
run: npm install -g @dmoss/agent
- name: Review diff
env:
DMOSS_API_KEY: ${{ secrets.DMOSS_API_KEY }}
DMOSS_MODEL: claude-sonnet-4-20250514
DMOSS_BASE_URL: https://api.anthropic.com
run: |
git diff origin/main HEAD | dmoss-agent --pipe \
"review the diff, focus on bugs and missing tests"
dmoss-agent 会分析 diff、指出潜在 bug、建议补充测试。输出在 Action 日志中可见。
定时巡检板端
用 rdkstudio 在 crontab 中定时检查生产板端的健康状况:
# /etc/cron.d/rdk-checkin
0 * * * * rdkstudio exec "df -h /; free -h; uptime" --device prod-x5-01 \
| tee -a /var/log/rdk-checkin.log
每小时执行一次,把磁盘、内存、运行时间信息追加到日志。定期检查日志即可发现异常趋势。
更进一步,用 @dmoss/agent 让 AI 自动分析巡检结果:
# 每天午夜触发一次完整诊断
0 0 * * * bash /opt/rdk/daily-health.sh
#!/bin/bash
# /opt/rdk/daily-health.sh
set -e
DIAGNOSIS=$(rdkstudio exec "cat /proc/meminfo; df -h; dmesg | tail -100" --device prod-x5-01)
echo "$DIAGNOSIS" | dmoss-agent --pipe \
"分析以下板端状态输出,给出健康评分和建议" \
> /var/log/rdk-daily-report.log