Standalone tmux terminal observer for solstone
Project description
solstone-tmux
Standalone tmux terminal observer for solstone. Experiences your tmux sessions along with you, accumulating observations to a local cache and syncing them to your journal.
Install
Packages are not yet on PyPI. Install from source:
git clone https://github.com/solpbc/solstone-tmux.git
cd solstone-tmux
pipx install .
Setup
1. Register an observer with your journal
sol observer create solstone-tmux
This prints the journal URL and API key. You'll need both for the next step.
2. Write the config
Create ~/.local/share/solstone-tmux/config/config.json:
{
"server_url": "http://localhost:8000",
"key": "<api-key-from-sol-observer-create>",
"stream": "<hostname>.tmux",
"capture_interval": 5,
"segment_interval": 300
}
Set stream to <your-hostname>.tmux (e.g., fedora.tmux, archon.tmux). This matches the stream naming convention used by the built-in observers.
Alternatively, solstone-tmux setup runs an interactive wizard that prompts for your journal URL and auto-registers.
3. Install the systemd service
solstone-tmux install-service
This writes the unit file to ~/.config/systemd/user/solstone-tmux.service, enables it, and starts it.
4. Verify
systemctl --user status solstone-tmux
solstone-tmux status
sol observer list # should show the observer as "connected"
Manual run
solstone-tmux run # foreground, ctrl-c to stop
solstone-tmux run -v # verbose/debug logging
How it works
- Polls all active tmux sessions every 5 seconds for content changes
- Accumulates observations in 5-minute segments under
~/.local/share/solstone-tmux/captures/ - Background sync service uploads completed segments to your journal
- Works offline — syncs when your journal is reachable
- Recovers incomplete segments on startup after crashes
Commands
| Command | What it does |
|---|---|
solstone-tmux run |
Start capture + sync (default if no subcommand) |
solstone-tmux setup |
Interactive config wizard |
solstone-tmux install-service |
Install and start systemd user service |
solstone-tmux status |
Show observer state, sync state, cache size |
License
AGPL-3.0-only. Copyright (c) 2026 sol pbc.
Project details
Release history Release notifications | RSS feed
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 solstone_tmux-0.1.0.tar.gz.
File metadata
- Download URL: solstone_tmux-0.1.0.tar.gz
- Upload date:
- Size: 45.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cd1b80e7097e7ff4452e3169f6071ecb53c6acdfe47e942f1feb229f623f8985
|
|
| MD5 |
e1e39b689b42f5d6f02e16dd7566b8a4
|
|
| BLAKE2b-256 |
9a2fbe90f90a47ba1ee9d69231f01cfa8c24978338078180bacdf9eed53b609f
|
File details
Details for the file solstone_tmux-0.1.0-py3-none-any.whl.
File metadata
- Download URL: solstone_tmux-0.1.0-py3-none-any.whl
- Upload date:
- Size: 36.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b0b692389978e2032534253f4929c9c718a5f42e0c340a81b171cf2fb8751421
|
|
| MD5 |
fe40dfb6a0dc784c44c9ecbe536af6ad
|
|
| BLAKE2b-256 |
b918fd921031a60bd65115b3898f2ae46fe955cd4cb373524c1cd3e048410678
|