/reset-code
What to reset: diffs, otto, code, deps, or all (default: all)
$ npx -y skills add brsbl/ottonomous --skill reset-code --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/reset-code
Context preview
The summary Claude sees to decide when to auto-load this skill.
What to reset: diffs, otto, code, deps, or all (default: all)
SKILL.md
reset-code.SKILL.mdname: reset-code
description: Full project reset for ottonomous. Removes all generated code and workflow data, restoring to fresh plugin state. Preserves plugin files and git history. Destructive - requires confirmation.
model: opus
arguments:
- name: targets
description: "What to reset: diffs, otto, code, deps, or all (default: all)"
required: falseReset project to freshly installed plugin state. Can selectively reset parts or do a full reset.
Available Targets
| Target | Removes | Description | |--------|---------|-------------| | `diffs` | `.claude/skill-diffs/` | Skill diff previews | | `otto` | `.otto/` | All workflow data | | `code` | `src/`, `dist/`, `public/`, configs | Generated app code | | `deps` | `node_modules/`, lockfiles | Dependencies | | `all` | Everything except allowlist | Full reset (default) |
Usage Examples
- `/reset-code` - Full reset (prompts for confirmation)
- `/reset-code diffs` - Clear only skill diff previews
- `/reset-code otto` - Clear workflow data (same as `/reset`)
- `/reset-code code` - Clear generated code, keep deps
- `/reset-code deps` - Clear node_modules only
Preserved Files (allowlist)
Only these survive a full reset:
- `.claude/` - Settings
- `.claude-plugin/` - Marketplace metadata
- `skills/` - Plugin skills
- `.git/` - Version control
- `README.md`, `LICENSE`, `.gitignore`, `.gitmodules`
Removed Files (full reset)
Everything else, including:
- `.otto/` - Workflow data
- `src/`, `dist/`, `public/` - App code
- `node_modules/` - Dependencies
- `package.json`, lockfiles
- Framework dirs (`.next/`, `.nuxt/`, etc.)
- Build configs (`vite.config.*`, `tsconfig*.json`)
Workflow
1. Parse Arguments
Map targets to paths:
diffs -> .claude/skill-diffs/
otto -> .otto/
code -> src/, dist/, public/, *.config.*, tsconfig*.json, package.json
deps -> node_modules/, package-lock.json, yarn.lock, pnpm-lock.yaml
all -> everything except allowlist
2. Preview Removal
**For selective targets**, show targeted paths:
du -sh <target_paths> 2>/dev/null
**For full reset (`all`)**, list everything to remove:
to_remove=()
for item in ./* ./.*; do
[[ ! -e "$item" ]] && continue
name="${item##*/}"
case "$name" in
.|..|.claude|.claude-plugin|skills|.git|README.md|LICENSE|.gitignore|.gitmodules) ;;
*) to_remove+=("$item") ;;
esac
done
if [[ ${#to_remove[@]} -gt 0 ]]; then
du -sh "${to_remove[@]}" 2>/dev/null | sort -hr
fi3. Confirm
Use `AskUserQuestion`: > "This will delete [target description]. Continue?" > Options: "Yes, reset" / "Cancel"
4. Remove
**For selective targets**:
rm -rf <target_paths>
**For full reset (`all`)**:
find . -maxdepth 1 \
! -name '.' \
! -name '.claude' \
! -name '.claude-plugin' \
! -name 'skills' \
! -name '.git' \
! -name 'README.md' \
! -name 'LICENSE' \
! -name '.gitignore' \
! -name '.gitmodules' \
-exec rm -rf {} +6. Report
Reset complete. Cleared: [targets]
Run /otto to start a new build.
Read more
name: reset-code
description: Full project reset for ottonomous. Removes all generated code and workflow data, restoring to fresh plugin state. Preserves plugin files and git history. Destructive - requires confirmation.
model: opus
arguments:
- name: targets
description: "What to reset: diffs, otto, code, deps, or all (default: all)"
required: falseReset project to freshly installed plugin state. Can selectively reset parts or do a full reset.
Available Targets
| Target | Removes | Description | |--------|---------|-------------| | `diffs` | `.claude/skill-diffs/` | Skill diff previews | | `otto` | `.otto/` | All workflow data | | `code` | `src/`, `dist/`, `public/`, configs | Generated app code | | `deps` | `node_modules/`, lockfiles | Dependencies | | `all` | Everything except allowlist | Full reset (default) |
Usage Examples
- `/reset-code` - Full reset (prompts for confirmation)
- `/reset-code diffs` - Clear only skill diff previews
- `/reset-code otto` - Clear workflow data (same as `/reset`)
- `/reset-code code` - Clear generated code, keep deps
- `/reset-code deps` - Clear node_modules only
Preserved Files (allowlist)
Only these survive a full reset:
- `.claude/` - Settings
- `.claude-plugin/` - Marketplace metadata
- `skills/` - Plugin skills
- `.git/` - Version control
- `README.md`, `LICENSE`, `.gitignore`, `.gitmodules`
Removed Files (full reset)
Everything else, including:
- `.otto/` - Workflow data
- `src/`, `dist/`, `public/` - App code
- `node_modules/` - Dependencies
- `package.json`, lockfiles
- Framework dirs (`.next/`, `.nuxt/`, etc.)
- Build configs (`vite.config.*`, `tsconfig*.json`)
Workflow
1. Parse Arguments
Map targets to paths:
diffs -> .claude/skill-diffs/ otto -> .otto/ code -> src/, dist/, public/, *.config.*, tsconfig*.json, package.json deps -> node_modules/, package-lock.json, yarn.lock, pnpm-lock.yaml all -> everything except allowlist
2. Preview Removal
**For selective targets**, show targeted paths:
du -sh <target_paths> 2>/dev/null
**For full reset (`all`)**, list everything to remove:
to_remove=()
for item in ./* ./.*; do
[[ ! -e "$item" ]] && continue
name="${item##*/}"
case "$name" in
.|..|.claude|.claude-plugin|skills|.git|README.md|LICENSE|.gitignore|.gitmodules) ;;
*) to_remove+=("$item") ;;
esac
done
if [[ ${#to_remove[@]} -gt 0 ]]; then
du -sh "${to_remove[@]}" 2>/dev/null | sort -hr
fi3. Confirm
Use `AskUserQuestion`: > "This will delete [target description]. Continue?" > Options: "Yes, reset" / "Cancel"
4. Remove
**For selective targets**:
rm -rf <target_paths>
**For full reset (`all`)**:
find . -maxdepth 1 \
! -name '.' \
! -name '.claude' \
! -name '.claude-plugin' \
! -name 'skills' \
! -name '.git' \
! -name 'README.md' \
! -name 'LICENSE' \
! -name '.gitignore' \
! -name '.gitmodules' \
-exec rm -rf {} +6. Report
Reset complete. Cleared: [targets] Run /otto to start a new build.
Skills for every stage of product development — spec writing, task prioritization, implementation, testing, code review, and summaries — that work in both Claude Code and OpenAI Codex.
Repo: brsbl/ottonomous
Other skills on ottonomous.
- /skill-diff
Shows side-by-side diffs of skill changes. Generates HTML comparison of before/after for changed SKILL.md files. Use when reviewing skill changes.
Open skill - /next
Pick or implement the next task or session. Use when continuing work, picking the next task, or implementing tasks from a task list.
Open skill - /otto
Autonomous product development. Takes an idea and builds it end-to-end with subagents. Write a product spec, generate tasks from spec, implement each task while testing/reviewing changes, with final verification. Use when you want to build something from scratch.
Open skill - /reset
Subdirectories to clear: tasks, specs, sessions, or all (default: all). Docs are preserved.
Open skill - /review
Reviews code changes for bugs with P0-P2 prioritized feedback. Uses parallel subagents for thorough analysis, then creates fix plans. Use when reviewing code, finding bugs, checking quality, or before merging. Use review fix to implement fixes.
Open skill - /spec
Writes product specifications through collaborative interview with web research. Use when planning, gathering requirements, designing new features, or creating a spec/PRD.
Open skill

