Atlas CLI (Python)
The Python implementation of the Atlas CLI. Zero third-party dependencies — pure standard library, Python ≥ 3.8.
Install
pipx install mindvest-atlas # recommended (isolated)
# or
pip install --user mindvest-atlas
atlas login
Or run from a clone without installing:
cd python
python -m atlas_cli --help
Usage
See the top-level README for the full command reference. Quick tour:
atlas login
atlas tools
atlas stock-quote --symbol SPY
atlas options-chain --symbol SPY --expiration 2026-06-20
atlas historical-contract --symbol NVDA --expiry 2026-07-13 --strike 205 --side call --from 2026-07-06 --to 2026-07-10
atlas alerts --symbol SPY --name greek_exposure --save-charts ./charts
atlas flow stream --symbol NVDA
Layout
atlas_cli/
cli.py # arg parsing + command dispatch + entry point (`run`)
config.py # constants, endpoints, paths
pkce.py oauth.py loopback.py store.py # auth: PKCE, OAuth, callback server, 0600 store
client.py catalog.py stream.py _http.py # API client (+ auto-refresh), catalog, SSE
ui.py args.py help.py format.py stream_loop.py
commands/ # login, logout, whoami, tools, call, alerts, flow
tests/ # unittest suites (offline)
Test
python -m unittest discover -s tests
Runs PKCE/arg/SSE/storage unit tests plus integration tests that drive the real OAuth client and loopback server against in-process mock servers — no network required.
Plays (signals) — atlas signals <command>
atlas signals groups # groups you post to, and the ones you follow
atlas signals plays --board community --days 1 # the plays themselves
atlas signals performance --group <id> [--mine] # closed trades + win rate, like a workflow's
atlas signals delete --group <id> # refuses while people are subscribed, and says how many
atlas signals delete --group <id> --stop-subscribers # stops their billing, tells them, then deletes
atlas signals take --id <play> --contracts 1 # place a play in YOUR account
atlas signals post --symbol SPY --call --strike 765 --expiry 2026-09-14 \
--entry 765 --target 765.5 --stop 764 --group <id> # post a play
atlas signals post --symbol SPY --call --strike 765 --expiry 2026-09-14 --entry 765 \
--link oco --with-put --with-strike 760 --with-entry 759 # a LINKED pair: one cancels the other
atlas signals <show|discover|follow|schema>
Alerts — list and clear them out
atlas alerts list [--all] [--symbol SPY] # your alerts WITH their ids ( --all includes the off ones)
atlas alerts delete --id <id> --id <id2> # switch them off and hide them
atlas alerts delete --id <id> --purge # delete the rows for good
--purge refuses any alert a live workflow or task is still bound to and names
what holds it: that binding is only an id, so removing the row would leave the
setup pointing at nothing and quietly never firing.
atlas alerts on its own is still the live feed.
Every tool, as a command
docs/TOOLS.md lists all of them, generated from the live
registry. Anything the server registers is callable as atlas <slug> --flag value the moment it exists — the catalog is fetched, not shipped
(atlas tools --refresh re-reads it).
Release files for mindvest-atlas 0.79.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mindvest_atlas-0.79.0.tar.gz | 193.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mindvest_atlas-0.79.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 407.2 kB
Release files / mindvest_atlas-0.79.0.tar.gz
| Download URL | mindvest_atlas-0.79.0.tar.gz |
|---|---|
| Size | 193.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c303b74089c99c3024bffbd4519e56c5f6c051de4ea5a228cf604bffa2760178
|
|
BLAKE2b-256 checksum How to use checksums |
db3f28d369a87c356fe5078c1849f945b5917c6ad44965ef1745da5035f5fce7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 19, 2026.
Transparency logRelease files / mindvest_atlas-0.79.0-py3-none-any.whl
| Download URL | mindvest_atlas-0.79.0-py3-none-any.whl |
|---|---|
| Size | 213.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d339654394f80998232598b3fbea406ac0314e62805a9bf613258f1f0016c283
|
|
BLAKE2b-256 checksum How to use checksums |
e82d41098c8fcb0a7f3e6c6c3c6c49ecd088d7ab02fc70a9f13fcb589120ccd9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 19, 2026.
Transparency log