doey-add-team — マルチエージェントチーム doey-add-team, community, マルチエージェントチーム, ide skills, CLIツール, チーム管理, AIエージェント, doey-add-team AI agent skill, doey-add-team for Claude Code

v1.0.0

このスキルについて

tmuxベースのマルチエージェントチームの効率的な管理が必要なTaskmasterとSubtaskmasterエージェントに適しています。 doey-add-teamスキルはTmuxマルチエージェントチームを作成するためのCLIツールです

機能

Tmuxマルチエージェントチームの作成
CLIツール管理
効率的なチーム管理

# Core Topics

FRIKKern FRIKKern
[3]
[1]
Updated: 4/4/2026

Killer-Skills Review

Decision support comes first. Repository text comes second.

Reference-Only Page Review Score: 8/11

This page remains useful for operators, but Killer-Skills treats it as reference material instead of a primary organic landing page.

Original recommendation layer Concrete use-case guidance Explicit limitations and caution
Review Score
8/11
Quality Score
42
Canonical Locale
en
Detected Body Locale
en

tmuxベースのマルチエージェントチームの効率的な管理が必要なTaskmasterとSubtaskmasterエージェントに適しています。 doey-add-teamスキルはTmuxマルチエージェントチームを作成するためのCLIツールです

このスキルを使用する理由

エージェントに、.team.mdファイルからチームをspawnする機能を提供し、tmuxを使用したワークフローの自動化とコラボレーションを可能にし、カスタムペインの定義とエージェントロールをサポートします。

おすすめ

tmuxベースのマルチエージェントチームの効率的な管理が必要なTaskmasterとSubtaskmasterエージェントに適しています。

実現可能なユースケース for doey-add-team

ワークフロー自動化のためのtmuxとカスタムエージェントの使用
.team.md構成からのチームセットアップの自動化
効率的なチーム管理によるコラボレーションの強化

! セキュリティと制限

  • tmux環境が必要
  • TaskmasterとSubtaskmasterエージェントのみ対応
  • チームspawn確認プロンプトなし

Why this page is reference-only

  • - Current locale does not satisfy the locale-governance contract.
  • - The underlying skill quality score is below the review floor.

Source Boundary

The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.

After The Review

Decide The Next Action Before You Keep Reading Repository Material

Killer-Skills should not stop at opening repository instructions. It should help you decide whether to install this skill, when to cross-check against trusted collections, and when to move into workflow rollout.

Labs Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is doey-add-team?

tmuxベースのマルチエージェントチームの効率的な管理が必要なTaskmasterとSubtaskmasterエージェントに適しています。 doey-add-teamスキルはTmuxマルチエージェントチームを作成するためのCLIツールです

How do I install doey-add-team?

Run the command: npx killer-skills add FRIKKern/doey/doey-add-team. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for doey-add-team?

Key use cases include: ワークフロー自動化のためのtmuxとカスタムエージェントの使用, .team.md構成からのチームセットアップの自動化, 効率的なチーム管理によるコラボレーションの強化.

Which IDEs are compatible with doey-add-team?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for doey-add-team?

tmux環境が必要. TaskmasterとSubtaskmasterエージェントのみ対応. チームspawn確認プロンプトなし.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add FRIKKern/doey/doey-add-team. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use doey-add-team immediately in the current project.

! Reference-Only Mode

This page remains useful for installation and reference, but Killer-Skills no longer treats it as a primary indexable landing page. Read the review above before relying on the upstream repository instructions.

Upstream Repository Material

The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.

Upstream Source

doey-add-team

doey-add-teamスキルを使用してTmuxマルチエージェントチームを作成し、効率的なCLIツール管理を実現します

SKILL.md
Readonly
Upstream Repository Material
The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.
Supporting Evidence

Context

  • Session config: !cat /tmp/doey/*/session.env 2>/dev/null | head -20 || true
  • Current windows: !tmux list-windows -F '#{window_index} #{window_name}' 2>/dev/null || true
  • Available team defs: !ls -1 .team.md *.team.md .doey/*.team.md ~/.config/doey/teams/*.team.md 2>/dev/null || echo "(none found in common locations)"

Prompt

Spawn a team from a .team.md file. No confirmation. Taskmaster/Subtaskmaster only.

.team.md Format

markdown
1--- 2name: team-name 3description: What this team does 4--- 5## Panes 6| Pane | Role | Agent | Name | Model | 7|------|------|-------|------|-------| 8| 0 | manager | doey-manager | Team Lead | opus | 9| 1 | reviewer | - | Reviewer | opus | 10 11## Workflows 12| Trigger | From | To | Subject | 13|---------|------|----|---------| 14| stop | reviewer | manager | review_complete |

Step 1: Load session, try CLI first

bash
1RUNTIME_DIR=$(tmux show-environment DOEY_RUNTIME 2>/dev/null | cut -d= -f2-) 2source "${RUNTIME_DIR}/session.env" 3TEAM_NAME="${1:?Usage: /doey-add-team <name>}" 4 5if command -v doey >/dev/null 2>&1 && doey add-team "$TEAM_NAME" 2>/dev/null; then 6 echo "Team spawned via doey CLI"; exit 0 7fi

Step 2: Find and parse .team.md

bash
1TEAM_DEF="" 2for _search_dir in "$PROJECT_DIR" "$PROJECT_DIR/.doey" "${HOME}/.config/doey/teams" "$(dirname "$(command -v doey 2>/dev/null || echo /dev/null)")/../../share/doey/teams"; do 3 for _candidate in "${_search_dir}/${TEAM_NAME}.team.md" "${_search_dir}/${TEAM_NAME}"; do 4 [ -f "$_candidate" ] && { TEAM_DEF="$_candidate"; break 2; } 5 done 6done 7[ -z "$TEAM_DEF" ] && { echo "ERROR: '${TEAM_NAME}' not found"; exit 1; }
bash
1TEAMDEF_FILE="${RUNTIME_DIR}/teamdef_${TEAM_NAME}.env" 2TEAM_DESC=$(sed -n '/^---$/,/^---$/{ /^description:/{ s/^description:[[:space:]]*//; p; }; }' "$TEAM_DEF") 3 4PANE_COUNT=0 5PANE_DEFS="" 6_in_panes=false 7while IFS= read -r line; do 8 case "$line" in 9 "## Panes"*) _in_panes=true; continue ;; 10 "## "*) _in_panes=false; continue ;; 11 esac 12 [ "$_in_panes" = "false" ] && continue 13 echo "$line" | grep -q '^|[[:space:]]*Pane' && continue 14 echo "$line" | grep -q '^|[[:space:]]*-' && continue 15 echo "$line" | grep -q '^|' || continue 16 _pane=$(echo "$line" | cut -d'|' -f2 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') 17 _role=$(echo "$line" | cut -d'|' -f3 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') 18 _agent=$(echo "$line" | cut -d'|' -f4 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') 19 _name=$(echo "$line" | cut -d'|' -f5 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') 20 _model=$(echo "$line" | cut -d'|' -f6 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') 21 [ -z "$_pane" ] && continue 22 [ "$_agent" = "-" ] && _agent="" 23 PANE_DEFS="${PANE_DEFS}${_pane}|${_role}|${_agent}|${_name}|${_model} 24" 25 PANE_COUNT=$(( PANE_COUNT + 1 )) 26done < "$TEAM_DEF" 27 28[ "$PANE_COUNT" -eq 0 ] && { echo "ERROR: No pane definitions found in $TEAM_DEF"; exit 1; } 29echo "Parsed ${PANE_COUNT} panes from team definition" 30 31# Parse workflows 32WORKFLOWS="" 33_in_workflows=false 34while IFS= read -r line; do 35 case "$line" in 36 "## Workflows"*) _in_workflows=true; continue ;; 37 "## "*) _in_workflows=false; continue ;; 38 esac 39 [ "$_in_workflows" = "false" ] && continue 40 echo "$line" | grep -q '^|[[:space:]]*Trigger' && continue 41 echo "$line" | grep -q '^|[[:space:]]*-' && continue 42 echo "$line" | grep -q '^|' || continue 43 _trigger=$(echo "$line" | cut -d'|' -f2 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') 44 _from=$(echo "$line" | cut -d'|' -f3 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') 45 _to=$(echo "$line" | cut -d'|' -f4 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') 46 _subject=$(echo "$line" | cut -d'|' -f5 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') 47 [ -z "$_trigger" ] && continue 48 WORKFLOWS="${WORKFLOWS}${_trigger}|${_from}|${_to}|${_subject} 49" 50done < "$TEAM_DEF" 51 52# Write teamdef env 53cat > "${TEAMDEF_FILE}.tmp" << TDEF_EOF 54TEAM_DEF_NAME=${TEAM_NAME} 55TEAM_DEF_DESC=${TEAM_DESC} 56TEAM_DEF_FILE=${TEAM_DEF} 57TEAM_DEF_PANE_COUNT=${PANE_COUNT} 58TEAM_DEF_PANES=$(echo "$PANE_DEFS" | head -c -1 | tr '\n' ';') 59TEAM_DEF_WORKFLOWS=$(echo "$WORKFLOWS" | head -c -1 | tr '\n' ';') 60TDEF_EOF 61mv "${TEAMDEF_FILE}.tmp" "$TEAMDEF_FILE" 62echo "Teamdef written to $TEAMDEF_FILE"

Step 3: Create tmux window and split panes

bash
1tmux new-window -t "$SESSION_NAME" -n "$TEAM_NAME" -c "$PROJECT_DIR" 2sleep 0.5 3NEW_WIN=$(tmux display-message -t "$SESSION_NAME" -p '#{window_index}') 4 5for _s in $(seq 1 $((PANE_COUNT - 1))); do 6 tmux split-window -t "${SESSION_NAME}:${NEW_WIN}" -c "$PROJECT_DIR" 7done 8tmux select-layout -t "${SESSION_NAME}:${NEW_WIN}" tiled 9sleep 0.5 10 11MANAGER_PANE_IDX="" 12WORKER_PANES_LIST="" 13while IFS='|' read -r _pane _role _agent _name _model; do 14 [ -z "$_pane" ] && continue 15 tmux select-pane -t "${SESSION_NAME}:${NEW_WIN}.${_pane}" -T "T${NEW_WIN} ${_name}" 16 case "$_role" in 17 manager) MANAGER_PANE_IDX="$_pane" ;; 18 *) [ -n "$WORKER_PANES_LIST" ] && WORKER_PANES_LIST="${WORKER_PANES_LIST},${_pane}" || WORKER_PANES_LIST="${_pane}" ;; 19 esac 20done << PANE_INPUT 21$(echo "$PANE_DEFS") 22PANE_INPUT 23WORKER_COUNT=$(echo "$WORKER_PANES_LIST" | tr ',' '\n' | grep -c .)

Step 4: Write team env, update TEAM_WINDOWS

bash
1TEAM_FILE="${RUNTIME_DIR}/team_${NEW_WIN}.env" 2cat > "${TEAM_FILE}.tmp" << TEAM_EOF 3SESSION_NAME=${SESSION_NAME} 4PROJECT_DIR=${PROJECT_DIR} 5PROJECT_NAME=${PROJECT_NAME} 6WINDOW_INDEX=${NEW_WIN} 7GRID=custom 8TOTAL_PANES=${PANE_COUNT} 9MANAGER_PANE=${MANAGER_PANE_IDX} 10WORKER_PANES=${WORKER_PANES_LIST} 11WORKER_COUNT=${WORKER_COUNT} 12WORKTREE_DIR= 13WORKTREE_BRANCH= 14TEAM_DEF=${TEAM_NAME} 15TEAM_NAME=${TEAM_NAME} 16TEAM_DESC=${TEAM_DESC} 17TEAM_EOF 18mv "${TEAM_FILE}.tmp" "$TEAM_FILE" 19 20CURRENT_WINDOWS=$(grep '^TEAM_WINDOWS=' "${RUNTIME_DIR}/session.env" 2>/dev/null | cut -d= -f2 | tr -d '"') 21[ -n "$CURRENT_WINDOWS" ] && NEW_WINDOWS="${CURRENT_WINDOWS},${NEW_WIN}" || NEW_WINDOWS="${NEW_WIN}" 22TMPENV=$(mktemp "${RUNTIME_DIR}/session.env.tmp_XXXXXX") 23if grep -q '^TEAM_WINDOWS=' "${RUNTIME_DIR}/session.env"; then 24 sed "s/^TEAM_WINDOWS=.*/TEAM_WINDOWS=${NEW_WINDOWS}/" "${RUNTIME_DIR}/session.env" > "$TMPENV" 25else 26 cat "${RUNTIME_DIR}/session.env" > "$TMPENV" 27 echo "TEAM_WINDOWS=${NEW_WINDOWS}" >> "$TMPENV" 28fi 29mv "$TMPENV" "${RUNTIME_DIR}/session.env"

Step 5: Launch Claude instances (3s stagger)

bash
1while IFS='|' read -r _pane _role _agent _name _model; do 2 [ -z "$_pane" ] && continue 3 _model_flag="" 4 [ -n "$_model" ] && _model_flag="--model $_model" 5 _agent_flag="" 6 [ -n "$_agent" ] && _agent_flag="--agent \"$_agent\"" 7 _cmd="claude --dangerously-skip-permissions ${_model_flag} --name \"T${NEW_WIN} ${_name}\" ${_agent_flag}" 8 tmux send-keys -t "${SESSION_NAME}:${NEW_WIN}.${_pane}" "$_cmd" Enter 9 sleep 3 10done << LAUNCH_INPUT 11$(echo "$PANE_DEFS") 12LAUNCH_INPUT 13echo "All ${PANE_COUNT} Claude instances launched" 14 15bash -c " 16 eval \"\$(sed -n '/^_env_val()/,/^}/p' '${PROJECT_DIR}/shell/doey.sh')\" 17 eval \"\$(sed -n '/^_layout_checksum()/,/^}/p' '${PROJECT_DIR}/shell/doey.sh')\" 18 eval \"\$(sed -n '/^rebalance_grid_layout()/,/^}/p' '${PROJECT_DIR}/shell/doey.sh')\" 19 rebalance_grid_layout '${SESSION_NAME}' '${NEW_WIN}' '${RUNTIME_DIR}' 20"

Step 6: Brief the manager with team context

bash
1if [ -n "$MANAGER_PANE_IDX" ]; then 2 sleep 8 3 MGR_PANE="${SESSION_NAME}:${NEW_WIN}.${MANAGER_PANE_IDX}" 4 BRIEFING=$(mktemp "${RUNTIME_DIR}/task_XXXXXX.txt") 5 cat > "$BRIEFING" << BRIEF_EOF 6You are leading team "${TEAM_NAME}": ${TEAM_DESC} 7 8Your panes (from ${TEAM_DEF}): 9$(echo "$PANE_DEFS" | while IFS='|' read -r _p _r _a _n _m; do [ -n "$_p" ] && echo "- Pane $_p: $_n (role: $_r, agent: ${_a:-none}, model: $_m)"; done) 10 11Workflows: 12$(echo "$WORKFLOWS" | while IFS='|' read -r _t _f _to _s; do [ -n "$_t" ] && echo "- On $_t from $_f -> notify $_to (subject: $_s)"; done) 13 14Coordinate your team. Dispatch initial tasks to workers based on the team definition. 15BRIEF_EOF 16 17 tmux copy-mode -q -t "$MGR_PANE" 2>/dev/null 18 tmux send-keys -t "$MGR_PANE" Escape 19 tmux load-buffer "$BRIEFING" && tmux paste-buffer -t "$MGR_PANE" 20 sleep 1 21 tmux send-keys -t "$MGR_PANE" Escape 22 tmux send-keys -t "$MGR_PANE" Enter 23 rm "$BRIEFING" 24 echo "Manager briefed" 25fi

Step 7: Verify boot and report

bash
1sleep 5 2NOT_READY=0; DOWN_PANES="" 3while IFS='|' read -r _pane _role _agent _name _model; do 4 [ -z "$_pane" ] && continue 5 CHILD_PID=$(pgrep -P "$(tmux display-message -t "${SESSION_NAME}:${NEW_WIN}.${_pane}" -p '#{pane_pid}')" 2>/dev/null) 6 OUTPUT=$(tmux capture-pane -t "${SESSION_NAME}:${NEW_WIN}.${_pane}" -p 2>/dev/null) 7 if [ -z "$CHILD_PID" ] || ! echo "$OUTPUT" | grep -q "bypass permissions"; then 8 NOT_READY=$((NOT_READY + 1)); DOWN_PANES="$DOWN_PANES ${NEW_WIN}.$_pane" 9 fi 10done << VERIFY_INPUT 11$(echo "$PANE_DEFS") 12VERIFY_INPUT 13if [ "$NOT_READY" -eq 0 ]; then echo "All panes booted"; else echo "WARNING: ${NOT_READY} not ready:${DOWN_PANES}"; fi

Output: team name, window, layout, boot status. Teardown: /doey-kill-window ${NEW_WIN}. Bash 3.2. 3s stagger. Search: root → .doey/~/.config/doey/teams/ → share. Missing ## Workflows = skip. Agent - = no flag.

関連スキル

Looking for an alternative to doey-add-team or another community skill for your workflow? Explore these related open-source skills.

すべて表示

openclaw-release-maintainer

Logo of openclaw
openclaw

Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

333.8k
0
AI

widget-generator

Logo of f
f

カスタマイズ可能なウィジェットプラグインをprompts.chatのフィードシステム用に生成する

149.6k
0
AI

flags

Logo of vercel
vercel

React フレームワーク

138.4k
0
ブラウザ

pr-review

Logo of pytorch
pytorch

Pythonにおけるテンソルと動的ニューラルネットワーク(強力なGPUアクセラレーション)

98.6k
0
開発者