Skip to main content

Uninstalling RepoWise

repowise uninstall has three tiers of reversibility so you can pick the exact scope of cleanup you need.

Tiers

repowise uninstall --tier stop        # halt the listener only
repowise uninstall --tier logout # stop + clear credentials
repowise uninstall # stop + logout + full cleanup
TierListenerCredentialsMCP configsMarker blocks~/.repowise
stophaltskeepkeepkeepkeep
logouthaltsdeletekeepkeepkeep
uninstallhaltsdeleteremove RepoWise entriesstripdelete

What full uninstall does

  1. Stops + removes the listener service (launchd / systemd / Task Scheduler depending on platform).
  2. Clears credentials~/.repowise/credentials.json deleted.
  3. Strips marker blocks — the <!-- repowise-start --> … <!-- repowise-end --> section is removed from every known AI-tool context file: CLAUDE.md, AGENTS.md, .cursorrules, .cursor/rules/repowise.mdc, .clinerules, .windsurfrules, .github/copilot-instructions.md, GEMINI.md. Files become empty after strip → deleted; files with user content outside markers are preserved.
  4. Removes MCP config entries — only the repowise-{repoId} entry is deleted from each config; foreign MCP servers stay. The nine config locations cover the eight supported AI tools.
  5. Deletes ~/.repowise/ — caches, downloaded graphs, listener endpoint file, logs.

What it doesn't do

  • Consent rows on the server stay. The record of your prior consent (mcp-log on, context-upload opt-ins, etc.) persists for audit retention (§10.6 of the AST foundation design). Reinstalling RepoWise re-uses the existing consent record rather than prompting again.
  • Graphs in S3 are not deleted. The repowise-graphs/{tenantId} bucket tree persists until your tenant is fully dissolved through the billing portal — that's a separate flow from the local uninstall.

Confirmation prompt

Before acting, uninstall prints the exact paths it will touch:

$ repowise uninstall
RepoWise uninstall — will remove:
~/.repowise/ (delete)
./CLAUDE.md (strip markers)
./.mcp.json (remove repowise-r1 entry)
./.cursor/mcp.json (remove repowise-r1 entry)
launchd service ai.repowise.listener (unload + rm)

Preserved:
./AGENTS.md (no RepoWise markers found)

Continue? [y/N]

Pass --yes to skip the prompt in CI.

Error handling

  • Each cleanup module runs independently. One failure (e.g., the service isn't installed) never blocks the others — you'll see ! skipped: listener service (not installed) in the output.
  • The final line summarizes: Done — 7 removed, 1 skipped.