Skip to main content

aXism

aXism

Agent Interactive Session Manager. Browse, open, and clean up the chat sessions your coding agents keep on disk, across every project on your machine.

CI PyPI GitHub Release License: MIT Python 3.12+ Buy Me A Coffee

aXism, a tool by aXistem, is a terminal app plus a command-line tool. It finds every session from Claude Code, Cursor, and Hermes, groups them by project, and lets you open, stop, rename, move, or delete them without digging through hidden folders. It runs on Linux and macOS.

Why use it

  • See everything in one place. Every project and session, with title, size, last update, and whether it is running right now.
  • Clean up safely. Deleting a session removes all of its files (transcripts, caches, job records) and nothing else. Credentials, settings, skills, plugins, and project memory are never touched. Every delete asks first.
  • Keep sessions with their project. Renamed or moved a project folder? Move its sessions to the new path so your agent finds them again.
  • Jump back in. Open any session in its own agent with one key.

Install

Needs Python 3.12 or newer.

uv tool install axism
# or
pipx install axism

Make sure ~/.local/bin is on your PATH, then check it works with axism --version.

To upgrade, run uv tool upgrade axism or pipx upgrade axism. If the version does not change, the tool was installed from a pinned file instead of PyPI; reinstall with uv tool install --force axism.

First steps

axism            # open the app
axism list       # print every session, grouped by project
axism providers  # show which agents are enabled and where aXism looks for them

The app has three panes: projects, sessions, and details. Use Tab or the arrow keys to switch panes, ↑/↓ to pick an item, and press ? to see every key.

Using the app

Key Action
Tab / ← → Switch pane
Space / a / c Mark one, mark all, clear all marks
o Open the session in its agent
s Stop a running session
n Rename a session
m Move to another project path
d Delete
/ / . Filter / sort sessions
, Settings
? or h All keys (refresh, themes, version info, and more)
q Quit

Terminals narrower than 70 columns hide the details pane so projects and sessions both fit. Keys act on the pane you are in. For example, d in the projects pane deletes whole projects, while d in the sessions pane deletes sessions. If items are marked, the action applies to all of them. If an agent cannot do something, aXism tells you instead of doing half the job.

Moving. Press m, then pick an existing project or type a folder path. Within the same agent, aXism moves the session files and updates their recorded paths. It creates the destination folder if needed, but it never moves your source code. Stop running sessions before moving them. Moving a session into another agent's project copies the conversation text and keeps the original.

Settings. Press , to choose which agents to include (Space), set the default agent for CLI commands (Enter saves and makes the highlighted one the default), and point an agent at a custom config folder. Settings are saved in ~/.config/axism/settings.json (or under $AXISM_CONFIG_DIR).

Command line

Everything the app does is also available as a command, which is handy for scripts. Run axism <command> --help for all options.

Command What it does
list [--project PATH] [--json] List sessions
show ID Show a session's details and files
resume ID Open a session in its agent
stop ID Stop a running session
rename ID "Title" Rename a session
move ID... --to PATH Move sessions (add --project to move whole projects)
export ID --to-provider AGENT --to PATH Copy a session into another agent
delete ID... Delete sessions
delete-project PATH Delete a project and its sessions (give a slug as delete-project -- -home-alice-src-demo)
purge-project PATH Run Claude Code's own project purge

A few things worth knowing:

  • Session IDs can be shortened to any unique prefix.
  • delete, delete-project, purge-project, and stop only show a preview until you add --yes. delete and delete-project exit 1 after that bare preview, 0 after an explicit --dry-run or a --yes run that completed, 1 as well when a --yes run reported an aborted, refused or failed step, and 2 whenever the plan is blocked (not found, or a live session without --force). move and export take --dry-run to preview; move refuses sessions that are running unless you pass --force.
  • list covers every enabled agent. Other commands use the default agent (Claude Code unless you change it), so add --provider cursor or --provider hermes to work on those sessions.
axism list --project /home/alice/src/demo
axism delete 3f2a9c1e --dry-run
axism delete 3f2a9c1e --yes
axism move --project /home/alice/src/demo --to /home/alice/src/demo-v2
axism --provider hermes show <session-id>

Supported agents

Agent Id Default location Override with
Claude Code claude_code ~/.claude $CLAUDE_CONFIG_DIR
Cursor cursor ~/.cursor $CURSOR_DATA_DIR
Hermes hermes ~/.hermes $HERMES_HOME

You can also set a folder per agent in Settings, or pass --config-dir on the command line.

All three agents support open, stop, rename, and delete. Differences:

  • Stop on Claude Code applies to background jobs (via claude stop). On Cursor and Hermes it ends the agent process.
  • Move works for Claude Code and Cursor. Hermes sessions can be copied to another agent but not moved.
  • Project memory merge is Claude Code only: moving a project into another one also merges its memory/ folder.
  • Project purge (purge-project) is Claude Code only.
  • Hermes changes go through the hermes command, and only regular chat sessions are listed. Profiles, kanban boards, project workspaces, messaging, and cron sessions are left alone.
  • Cursor desktop Composer history is not managed.

What is never deleted

Deleting a session never removes credentials (auth.json, .credentials.json, .env), agent config (settings.json, config.yaml, cli-config.json), skills, plugins, daemon keys, project memory/, or an agent's whole database (such as Hermes state.db).

Deleting a project removes every session in it along with the agent's folder for that project. For Claude Code that includes the project's memory/ unless you pass --keep-memory; in the app, the project delete dialog states what happens to memory/ and k toggles keeping it (off by default).

Development

From a clone of this repository:

uv sync --extra dev
uv run pytest
./scripts/install.sh   # install your local checkout as the axism command

See AGENTS.md for contributor rules and the release process, and CHANGELOG.md for what changed in each version.

License

MIT © aXistem

Metadata

Release files for axism 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for axism 0.1.2
File Size Uploaded Provenance Actions
axism-0.1.2.tar.gz 2.3 MB With provenance Details for axism-0.1.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for axism 0.1.2
File Interpreter ABI Platform Actions
axism-0.1.2-py3-none-any.whl Python 3 none any Details for axism-0.1.2-py3-none-any.whl

Total release size: 2.4 MB

Release files / axism-0.1.2.tar.gz

Download URL axism-0.1.2.tar.gz
Size 2.3 MB
Tags Source
SHA-256 checksum
How to use checksums
40a15376f7cd46ea9b95cfb45c9229dc1df429fb20345623ae8202ba27d29ed4
BLAKE2b-256 checksum
How to use checksums
f50174d4a38da69af4ddfb7cb0205aac78e30f5653d66c1c662c6aec109e6808
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / axism-0.1.2-py3-none-any.whl

Download URL axism-0.1.2-py3-none-any.whl
Size 104.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ba8a16331e3cbcc0235184ee3c433add1160d43211efb3cff81e5087eccbc3c6
BLAKE2b-256 checksum
How to use checksums
c0121219d4492f0989fd6cf03aece00ee844778679e5ec6f4349d464024ebb08
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Security for axism 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for axism-0.1.2.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page