From cb887719235277f572c40b5bf90f23efc48e612d Mon Sep 17 00:00:00 2001 From: Godopu Date: Fri, 24 Jul 2026 23:21:12 +0900 Subject: [PATCH] fix(resume): auto-create session entry in update_yaml_resumed.sh when missing --- .../scripts/update_yaml_resumed.sh | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/.agents/skills/multi-agent-mux-resume/scripts/update_yaml_resumed.sh b/.agents/skills/multi-agent-mux-resume/scripts/update_yaml_resumed.sh index e6382eb..4986848 100755 --- a/.agents/skills/multi-agent-mux-resume/scripts/update_yaml_resumed.sh +++ b/.agents/skills/multi-agent-mux-resume/scripts/update_yaml_resumed.sh @@ -84,8 +84,22 @@ for s in d.get('herdr_sessions', []): break if target is None: - print(f"ERROR: session not in YAML: {name}", flush=True) - raise SystemExit(1) + ws_root = os.environ.get('WORKSPACE_ROOT', '') + server_name = os.environ.get('HERDR_SERVER_NAME', 'multi-agent-mux') + target = { + 'name': name, + 'status': 'running', + 'role': 'creator', + 'herdr_session_created_at': now, + 'herdr_session_epoch': int(os.environ.get('NOW_EPOCH', '0') or '0'), + 'herdr_server': server_name, + 'delegate_job_id': None, + 'pane': {'index': 0, 'pid': int(pane_pid) if pane_pid.isdigit() else 0, 'cmd': agent, 'cwd': ws_root}, + 'start_command': f'HERDR_SERVER_NAME={server_name} herdr agent attach {name}', + 'attach_command': f'HERDR_SERVER_NAME={server_name} herdr agent attach {name}', + 'kill_command': f'HERDR_SERVER_NAME={server_name} herdr kill-session -t {name}', + } + d.setdefault('herdr_sessions', []).append(target) target['status'] = 'running' target.pop('terminated_at', None)