Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

solstone_tmux-0.1.0.tar.gz (45.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

solstone_tmux-0.1.0-py3-none-any.whl (36.4 kB view details)

Uploaded Python 3

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

Hashes for solstone_tmux-0.1.0.tar.gz
Algorithm Hash digest
SHA256 cd1b80e7097e7ff4452e3169f6071ecb53c6acdfe47e942f1feb229f623f8985
MD5 e1e39b689b42f5d6f02e16dd7566b8a4
BLAKE2b-256 9a2fbe90f90a47ba1ee9d69231f01cfa8c24978338078180bacdf9eed53b609f

See more details on using hashes here.

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

Hashes for solstone_tmux-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b0b692389978e2032534253f4929c9c718a5f42e0c340a81b171cf2fb8751421
MD5 fe40dfb6a0dc784c44c9ecbe536af6ad
BLAKE2b-256 b918fd921031a60bd65115b3898f2ae46fe955cd4cb373524c1cd3e048410678

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page