devteam-reset
npx machina-cli add skill michael-harris/devteam/devteam-reset --openclawFiles (1)
SKILL.md
6.1 KB
DevTeam Reset Command
Command: /devteam:reset [options]
Reset state, clear stuck sessions, and recover from errors.
Usage
# Abort current session and reset state
/devteam:reset
# Abort with specific reason
/devteam:reset --reason "Changing approach"
# Clear all session history (keep plans)
/devteam:reset --clear-history
# Full reset (clear everything except config)
/devteam:reset --full
# Reset specific session
/devteam:reset --session session-20260129-103045-abc123
# Dry run (show what would be reset)
/devteam:reset --dry-run
Options
| Option | Description |
|---|---|
--reason <text> | Reason for reset (logged) |
--clear-history | Clear all session history |
--full | Full reset (sessions, history, temp files) |
--session <id> | Reset specific session |
--dry-run | Show what would be reset without doing it |
--force | Skip confirmation prompts |
Your Process
Basic Reset (Abort Current Session)
source "${CLAUDE_PLUGIN_ROOT}/scripts/state.sh"
source "${CLAUDE_PLUGIN_ROOT}/scripts/events.sh"
# Check for running session
if is_session_running; then
SESSION_ID=$(get_current_session_id)
# Log the abort
log_event "session_aborted" "system" "User initiated reset" \
"{\"reason\": \"$REASON\"}"
# End session
end_session "aborted" "${REASON:-User reset}"
echo "Session $SESSION_ID aborted."
else
echo "No active session to reset."
fi
# Reset circuit breaker state
sqlite3 "$DB_FILE" "
UPDATE sessions
SET circuit_breaker_state = 'closed',
consecutive_failures = 0
WHERE status = 'running';
"
Clear History
if [[ "$CLEAR_HISTORY" == "true" ]]; then
# Confirm
if [[ "$FORCE" != "true" ]]; then
read -p "Clear all session history? This cannot be undone. [y/N] " confirm
if [[ "$confirm" != "y" && "$confirm" != "Y" ]]; then
echo "Cancelled."
exit 0
fi
fi
# Clear history tables
sqlite3 "$DB_FILE" "
DELETE FROM events;
DELETE FROM agent_runs;
DELETE FROM gate_results;
DELETE FROM escalations;
DELETE FROM interviews;
DELETE FROM interview_questions;
DELETE FROM research_sessions;
DELETE FROM research_findings;
DELETE FROM sessions WHERE status != 'running';
"
echo "Session history cleared."
fi
Full Reset
if [[ "$FULL_RESET" == "true" ]]; then
# Confirm
if [[ "$FORCE" != "true" ]]; then
read -p "Full reset? This will clear all sessions and history. Plans will be preserved. [y/N] " confirm
if [[ "$confirm" != "y" && "$confirm" != "Y" ]]; then
echo "Cancelled."
exit 0
fi
fi
# Backup database first
BACKUP_FILE="${DB_FILE}.backup-$(date +%Y%m%d-%H%M%S)"
cp "$DB_FILE" "$BACKUP_FILE"
echo "Backup created: $BACKUP_FILE"
# Clear all session-related data
sqlite3 "$DB_FILE" "
DELETE FROM events;
DELETE FROM agent_runs;
DELETE FROM gate_results;
DELETE FROM escalations;
DELETE FROM interviews;
DELETE FROM interview_questions;
DELETE FROM research_sessions;
DELETE FROM research_findings;
DELETE FROM bugs;
DELETE FROM session_state;
DELETE FROM sessions;
"
# Clean up temp files
rm -f .devteam/autonomous-mode
rm -f .devteam/current-task.txt
rm -f .devteam/escalation-trigger
echo "Full reset complete. Database backup: $BACKUP_FILE"
fi
Output
Normal Reset
DevTeam Reset
Current Session: session-20260129-103045-a1b2c3
Status: running (iteration 5)
Command: /devteam:implement --sprint 1
Resetting...
Session aborted
Circuit breaker reset
Temp files cleared
Reset complete. Ready for new session.
Dry Run
DevTeam Reset (Dry Run)
The following actions would be taken:
[SESSION] Abort session-20260129-103045-a1b2c3
- Status: running -> aborted
- Iterations completed: 5
- Cost incurred: $2.34
[STATE] Reset circuit breaker
- Current failures: 3 -> 0
- State: half-open -> closed
[FILES] Remove temp files
- .devteam/autonomous-mode
- .devteam/current-task.txt
No changes made. Remove --dry-run to execute.
Clear History
DevTeam Reset (Clear History)
WARNING: This will permanently delete:
Sessions: 47 records
Events: 2,341 records
Agent Runs: 892 records
Gate Results: 1,203 records
Escalations: 124 records
Plans and configuration will be preserved.
Clear all session history? This cannot be undone. [y/N] y
Sessions cleared
Events cleared
Agent runs cleared
Gate results cleared
Escalations cleared
History cleared. Lifetime statistics reset.
Recovery Scenarios
Stuck Session
If a session appears stuck:
# Check what's happening
/devteam:status
# If truly stuck, reset
/devteam:reset --reason "Session stuck on iteration 8"
Circuit Breaker Tripped
# Check status
/devteam:status
# Shows: Circuit Breaker: OPEN (5 consecutive failures)
# Reset to retry
/devteam:reset
# Then retry with different approach
/devteam:implement --sprint 1 --model sonnet
Database Corruption
# If database is corrupted
/devteam:reset --full
# Or reinitialize
rm .devteam/devteam.db
bash scripts/db-init.sh
Implementation Notes
Preserves
.devteam/config.yaml- Project configuration.devteam/agent-capabilities.yaml- Agent registry.devteam/plans/- Plan filesdocs/planning/- PRDs and planning docs
Clears
- Running session state
- Circuit breaker
- Temp files (autonomous-mode, current-task.txt)
- Session history (with --clear-history)
- Events, agent runs, gate results (with --clear-history or --full)
See Also
/devteam:status- Check current state before reset/devteam:implement- Start new implementation after reset
Source
git clone https://github.com/michael-harris/devteam/blob/main/skills/devteam-reset/SKILL.mdView on GitHub Overview
DevTeam Reset provides a focused command to abort the current session, reset the runtime state, and recover from errors. It supports options to clear history, perform a full reset, or reset a specific session. This helps restore stability when sessions hang or errors occur.
How This Skill Works
The command coordinates Bash scripts to abort an active session, reset circuit breaker state, and update the session store. Depending on options, it can clear history tables, back up the database, and remove temporary files. A dry-run mode lets you preview what would be reset before changes are made.
When to Use It
- Abort the current session due to a hang or unresponsive state.
- Clear or reset specific sessions that are misbehaving.
- Clear all session history while preserving plans.
- Perform a full reset to remove all session data and temp artifacts.
- Preview the reset impact with a dry-run before taking action.
Quick Start
- Step 1: Assess scope and decide if you need a dry-run.
- Step 2: Run the appropriate command (e.g., /devteam:reset or /devteam:reset --full).
- Step 3: If needed, recheck system state and confirm normal operation.
Best Practices
- Always run a dry-run first to preview what will be reset.
- Back up the database before performing a full reset.
- Use --force to skip interactive prompts only when you truly intend to reset.
- Verify active sessions and ensure no critical work is lost before reset.
- Document the reason for reset in logs for auditability.
Example Use Cases
- Abort the current session and reset state
- Reset with a specific reason
- Clear all session history but keep plans
- Perform a full reset and preserve plans
- Dry-run to preview what would be reset
Frequently Asked Questions
Add this skill to your agents