[ PROMPT_NODE_25062 ]
实际案例
[ SKILL_DOCUMENTATION ]
# 实际插件设置案例
详细分析生产环境插件如何使用 `.claude/plugin-name.local.md` 模式。
## multi-agent-swarm 插件
### 设置文件结构
**.claude/multi-agent-swarm.local.md:**
markdown
---
agent_name: auth-implementation
task_number: 3.5
pr_number: 1234
coordinator_session: team-leader
enabled: true
dependencies: ["Task 3.4"]
additional_instructions: "使用 JWT 令牌,不要使用会话"
---
# 任务:实现身份验证
为 REST API 构建基于 JWT 的身份验证。
## 要求
- JWT 令牌生成和验证
- 刷新令牌流程
- 安全密码哈希
## 成功标准
- 已实现身份验证端点
- 测试通过(100% 覆盖率)
- 已创建 PR 且 CI 通过
- 文档已更新
## 协调
依赖于任务 3.4(用户模型)。
向 'team-leader' 会话报告状态。
### 如何使用
**文件:** `hooks/agent-stop-notification.sh`
**目的:** 当智能体空闲时向协调员发送通知
**实现:**
bash
#!/bin/bash
set -euo pipefail
SWARM_STATE_FILE=".claude/multi-agent-swarm.local.md"
# 如果没有活动的 swarm 则快速退出
if [[ ! -f "$SWARM_STATE_FILE" ]]; then
exit 0
fi
# 解析 frontmatter
FRONTMATTER=$(sed -n '/^---$/,/^---$/{ /^---$/d; p; }' "$SWARM_STATE_FILE")
# 提取配置
COORDINATOR_SESSION=$(echo "$FRONTMATTER" | grep '^coordinator_session:' | sed 's/coordinator_session: *//' | sed 's/^"(.*)"$/1/')
AGENT_NAME=$(echo "$FRONTMATTER" | grep '^agent_name:' | sed 's/agent_name: *//' | sed 's/^"(.*)"$/1/')
TASK_NUMBER=$(echo "$FRONTMATTER" | grep '^task_number:' | sed 's/task_number: *//' | sed 's/^"(.*)"$/1/')
PR_NUMBER=$(echo "$FRONTMATTER" | grep '^pr_number:' | sed 's/pr_number: *//' | sed 's/^"(.*)"$/1/')
ENABLED=$(echo "$FRONTMATTER" | grep '^enabled:' | sed 's/enabled: *//')
# 检查是否启用
if [[ "$ENABLED" != "true" ]]; then
exit 0
fi
# 向协调员发送通知
NOTIFICATION="🤖 智能体 ${AGENT_NAME} (任务 ${TASK_NUMBER}, PR #${PR_NUMBER}) 处于空闲状态。"
if tmux has-session -t "$COORDINATOR_SESSION" 2>/dev/null; then
tmux send-keys -t "$COORDINATOR_SESSION" "$NOTIFICATION" Enter
sleep 0.5
tmux send-keys -t "$COORDINATOR_SESSION" Enter
fi
exit 0
**关键模式:**
1. **快速退出** (第 7-9 行):如果文件不存在则立即返回
2. **字段提取** (第 11-17 行):解析每个 frontmatter 字段
3. **启用检查** (第 19-21 行):遵循启用标志
4. **基于设置的操作** (第 23 行起)