Curate and display Character AI web browser history
Project description
Caicurator
Caicurator finds all the CharacterAI indices from your web browser history and then displays every bot you had ever talked to in a convenient web menu.
[!IMPORTANT] This project only works with Chromium-based browsers (like Chrome) and Gecko-based browsers (like Firefox).
Screenshot
https://github.com/user-attachments/assets/818ec3e3-1602-4237-97d2-4663e912adac
Usage
Run caicurator to see this error message:
2026-01-24 20:40:00.067 | ERROR | caicurator.cli:main:19 - Configuration not found. '/home/myxi/.config/caicurator/config.ini' doesn't exist.
Create a config.ini at the path that the error message says. Please head over to Configuration for more information.
Installation
From PyPi
pip install caicurator
[!TIP] You can also use
uvlike so:uv tool install caicurator
From Source
[!IMPORTANT] Installation of Git is required.
pip install git+https://github.com/eeriemyxi/caicurator.git
Configuration
Caicurator uses a config.ini file to store all the configurations.
[!TIP] Read about INI file to learn more about the format.
[common]
LOG_PATH = <default>
[auth]
TOKEN = ...
[browser]
CHROMIUM_HISTORY_FILES = ["~/.config/vivaldi/Default/History"]
GECKO_HISTORY_FILES = ["~/.zen/3g4fsk4q.Default (release)/places.sqlite"]
[fetch]
PATH = <default>
BATCH_SIZE = 4
SLEEP_RANGE = 1, 5
HTML_GEN_INTERVAL = 2
[html]
PATH = <default>
SORTING = newest
<default> means the default value will be used. Using this means the relevant content will be under the configuration directory, e.g., .../chars, .../index.html, and .../logs.
common.LOG_PATH is the path to the log file.
auth.TOKEN is the token that you get from CharacterAI. You can find the token in the dev tools of your browser.
browser.CHROMIUM_HISTORY_FILESis a list of paths to theHistoryfile of your Chromium-based browsers (e.g., Vivaldi, Chrome).browser.GECKO_HISTORY_FILESis a list of paths to theplaces.sqlitefile of your Gecko-based browsers (e.g., Firefox, Zen).
fetch.PATHis the path to the directory that contains all the character indices.fetch.BATCH_SIZEis the number of async requests that will be sent to the server.fetch.SLEEP_RANGEis the range of seconds that will be randomly chosen to sleep between each batch.fetch.HTML_GEN_INTERVALis the interval of generating the HTML page; e.g.,2means generating the HTML page every 2 batches.
html.PATHis the path to the HTML file.html.SORTINGis the sorting method. It can benewestoroldest.
Command-line Arguments
> caicurator --help
Usage: caicurator [OPTIONS] COMMAND [ARGS]...
Curate and display Character AI web browser history
Options:
-L, --log-level [trace|debug|info|success|warning|error|critical]
-v, -V, --version Show the version and exit.
--help Show this message and exit.
Commands:
chars manage characters index (update)
html manage the HTML page (open, update)
info show helpful information
🔗 Homepage: https://github.com/eeriemyxi/caicurator
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file caicurator-0.2.0.tar.gz.
File metadata
- Download URL: caicurator-0.2.0.tar.gz
- Upload date:
- Size: 543.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c6dcc52f3e43a935fa6143443bd0120f9b7ce59ba07add99007664f6eed2720c
|
|
| MD5 |
cc31e79f555e26b578dcde14aa0cb267
|
|
| BLAKE2b-256 |
b7cae966dbc143ce459438bf8348c1ea1ffa3fe9138f7343d5b080565c4533e3
|
Provenance
The following attestation bundles were made for caicurator-0.2.0.tar.gz:
Publisher:
publish-to-pypi.yml on eeriemyxi/caicurator
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
caicurator-0.2.0.tar.gz -
Subject digest:
c6dcc52f3e43a935fa6143443bd0120f9b7ce59ba07add99007664f6eed2720c - Sigstore transparency entry: 850030337
- Sigstore integration time:
-
Permalink:
eeriemyxi/caicurator@fddfb861fd736365fbd914d1ccbc1753bbbd47f4 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/eeriemyxi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-to-pypi.yml@fddfb861fd736365fbd914d1ccbc1753bbbd47f4 -
Trigger Event:
push
-
Statement type:
File details
Details for the file caicurator-0.2.0-py3-none-any.whl.
File metadata
- Download URL: caicurator-0.2.0-py3-none-any.whl
- Upload date:
- Size: 11.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65dc0b9dcbce661374f0d3973ba6fd8089e63d553a69bc87ad4360abffcfdcac
|
|
| MD5 |
2521526790bce57a42e352313a1a2cba
|
|
| BLAKE2b-256 |
96e1a43afa3b4d6f348aab937526fe30d13ec557695a580e4f703d819500db90
|
Provenance
The following attestation bundles were made for caicurator-0.2.0-py3-none-any.whl:
Publisher:
publish-to-pypi.yml on eeriemyxi/caicurator
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
caicurator-0.2.0-py3-none-any.whl -
Subject digest:
65dc0b9dcbce661374f0d3973ba6fd8089e63d553a69bc87ad4360abffcfdcac - Sigstore transparency entry: 850030338
- Sigstore integration time:
-
Permalink:
eeriemyxi/caicurator@fddfb861fd736365fbd914d1ccbc1753bbbd47f4 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/eeriemyxi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-to-pypi.yml@fddfb861fd736365fbd914d1ccbc1753bbbd47f4 -
Trigger Event:
push
-
Statement type: