diff --git a/skills/kugetsu/scripts/kugetsu b/skills/kugetsu/scripts/kugetsu index b51f3af..c381026 100755 --- a/skills/kugetsu/scripts/kugetsu +++ b/skills/kugetsu/scripts/kugetsu @@ -1602,19 +1602,21 @@ cmd_destroy() { if [ "$target" = "base" ]; then if [ "$force" = true ]; then local base_session_id=$(get_base_session_id) + local pm_agent_session_id=$(get_pm_agent_session_id) rm -f "$SESSIONS_DIR/base.json" - local pm_agent=$(get_pm_agent_session_id) - if [ -n "$pm_agent" ] && [ "$pm_agent" != "null" ]; then - rm -f "$SESSIONS_DIR/pm-agent.json" - echo '{"base": null, "pm_agent": null, "issues": {}}' > "$INDEX_FILE" - else - echo '{"base": null, "pm_agent": null, "issues": {}}' > "$INDEX_FILE" - fi + rm -f "$SESSIONS_DIR/pm-agent.json" + rm -f "$SESSIONS_DIR/issue-"*.json 2>/dev/null || true + echo '{"base": null, "pm_agent": null, "issues": {}}' > "$INDEX_FILE" + if [ -n "$base_session_id" ] && [ "$base_session_id" != "null" ]; then - echo "Deleting opencode session: $base_session_id" - opencode session delete "$base_session_id" 2>/dev/null || echo "Warning: Could not delete session from opencode (may already be deleted)" + echo "Deleting base session: $base_session_id" + opencode session delete "$base_session_id" 2>/dev/null || echo "Warning: Could not delete base session" fi - echo "Base session destroyed" + if [ -n "$pm_agent_session_id" ] && [ "$pm_agent_session_id" != "null" ]; then + echo "Deleting PM agent session: $pm_agent_session_id" + opencode session delete "$pm_agent_session_id" 2>/dev/null || echo "Warning: Could not delete PM agent session" + fi + echo "Base and PM agent sessions destroyed" else echo "Error: destroying base session requires --base -y" >&2 exit 1