|
|
@@ -38,25 +38,25 @@ while [ $# -gt 0 ]; do
|
|
|
-t) TYPE_EFFECT=1; shift ;;
|
|
|
-s) SILENT=1; shift ;;
|
|
|
--help|-h) show_usage ;;
|
|
|
- -*) echo "未知选项: $1" >&2; exit 1 ;;
|
|
|
+ -*) echo "Unknown option: $1" >&2; exit 1 ;;
|
|
|
*) break ;;
|
|
|
esac
|
|
|
done
|
|
|
|
|
|
# 内置摸鱼内容(模拟一段 AI 工作汇报,可被文件参数覆盖)
|
|
|
BUILTIN_CONTENT=$(cat <<'EOF'
|
|
|
-[13:00] 收到需求:搭建 CI/CD 部署链路
|
|
|
-[13:05] 🤖 分析项目结构,识别 Gogs 仓库与子模块布局
|
|
|
-[13:12] 🧠 评估方案:服务器资源紧张,改用本地校验+SSH 部署
|
|
|
-[13:20] ✍️ 编写 validate.sh / build.sh / deploy.sh 脚本
|
|
|
-[13:35] ⚙️ 本地构建部署包,交叉编译后端 + 前端 dist
|
|
|
-[13:48] 🔍 修复迁移目录缺失导致的无限重启问题
|
|
|
-[14:00] 📝 编写 aaPanel 部署手册,固化端口与域名
|
|
|
-[14:15] ✅ 本地冒烟测试通过:MySQL 8.0 迁移链路正常
|
|
|
-[14:30] 🚀 部署 admin 后端到测试机,服务 active
|
|
|
-[14:40] 🌐 前端自动化部署完成,HTTP 200
|
|
|
-[14:50] 📊 汇总进度,更新 backlog 留档
|
|
|
-[15:00] 💬 下一步:部署 backend-app,建立 client/worker 站点
|
|
|
+[13:00] Received request: set up CI/CD deployment pipeline
|
|
|
+[13:05] 🤖 Analyzing project structure, identifying Gogs repos and submodules
|
|
|
+[13:12] 🧠 Evaluating options: server resources tight, switch to local validation + SSH deploy
|
|
|
+[13:20] ✍️ Writing validate.sh / build.sh / deploy.sh scripts
|
|
|
+[13:35] ⚙️ Building deploy package locally, cross-compiling backend + frontend dist
|
|
|
+[13:48] 🔍 Fixing infinite restart caused by missing migrations directory
|
|
|
+[14:00] 📝 Writing aaPanel deployment guide, finalizing ports and domains
|
|
|
+[14:15] ✅ Local smoke test passed: MySQL 8.0 migration chain OK
|
|
|
+[14:30] 🚀 Deployed admin backend to test server, service active
|
|
|
+[14:40] 🌐 Frontend auto-deploy done, HTTP 200
|
|
|
+[14:50] 📊 Summarizing progress, updating backlog
|
|
|
+[15:00] 💬 Next: deploy backend-app, set up client/worker sites
|
|
|
EOF
|
|
|
)
|
|
|
|
|
|
@@ -65,12 +65,12 @@ CONTENT="${1:-}"
|
|
|
if [ -n "$CONTENT" ] && [ -f "$CONTENT" ]; then
|
|
|
mapfile -t LINES < "$CONTENT"
|
|
|
elif [ -n "$CONTENT" ] && [ "$CONTENT" != "-" ]; then
|
|
|
- echo "文件不存在: $CONTENT,改用内置内容。" >&2
|
|
|
+ echo "File not found: $CONTENT, falling back to built-in content." >&2
|
|
|
mapfile -t LINES <<< "$BUILTIN_CONTENT"
|
|
|
else
|
|
|
mapfile -t LINES <<< "$BUILTIN_CONTENT"
|
|
|
fi
|
|
|
-[ "${#LINES[@]}" -eq 0 ] && { echo "内容为空,摸不了鱼。" >&2; exit 1; }
|
|
|
+[ "${#LINES[@]}" -eq 0 ] && { echo "Content empty, nothing to slack on." >&2; exit 1; }
|
|
|
|
|
|
# 随机延时
|
|
|
rand_delay() {
|
|
|
@@ -80,16 +80,16 @@ rand_delay() {
|
|
|
|
|
|
# 假 AI 状态行(随机挑一个)
|
|
|
STATUS=(
|
|
|
- "🤖 分析会话上下文..."
|
|
|
- "🧠 正在思考..."
|
|
|
- "📊 汇总关键决策点..."
|
|
|
- "✍️ 生成执行摘要..."
|
|
|
- "🔍 检索知识图谱..."
|
|
|
- "⚙️ 优化实现方案..."
|
|
|
- "📝 撰写技术文档..."
|
|
|
- "✅ 校验代码质量..."
|
|
|
- "🔄 同步进度汇报..."
|
|
|
- "💬 生成下一步建议..."
|
|
|
+ "🤖 Analyzing session context..."
|
|
|
+ "🧠 Thinking..."
|
|
|
+ "📊 Summarizing key decisions..."
|
|
|
+ "✍️ Generating execution summary..."
|
|
|
+ "🔍 Searching knowledge graph..."
|
|
|
+ "⚙️ Optimizing implementation..."
|
|
|
+ "📝 Writing technical docs..."
|
|
|
+ "✅ Checking code quality..."
|
|
|
+ "🔄 Syncing progress report..."
|
|
|
+ "💬 Generating next steps..."
|
|
|
)
|
|
|
|
|
|
run_once() {
|
|
|
@@ -115,8 +115,8 @@ run_once() {
|
|
|
n=0
|
|
|
while [ "$LOOP_TIMES" -eq 0 ] || [ "$n" -lt "$LOOP_TIMES" ]; do
|
|
|
n=$((n+1))
|
|
|
- [ "$SILENT" = "0" ] && echo "—— 第 $n 遍摸鱼中 ——"
|
|
|
+ [ "$SILENT" = "0" ] && echo "—— Round $n of slacking ——"
|
|
|
run_once
|
|
|
done
|
|
|
-[ "$SILENT" = "0" ] && echo "🎣 摸鱼结束。看起来一直很忙,实际上啥也没干。"
|
|
|
+[ "$SILENT" = "0" ] && echo "🎣 Slacking done. Looks busy, actually did nothing."
|
|
|
exit 0
|