ssmtui-1.0.9 is not a library.
ssmtui
A terminal UI for AWS Systems Manager Parameter Store built with ratatui and the AWS Rust SDK.
ssmtui lets you browse, filter, view, edit, create, refresh, and copy parameter values directly from your terminal.
Installation
cargo install ssmtuiorcargo install ssmtui --locked
Screenshots
Features
- Browse Parameter Store names in a left panel
- Lazy-load values in the right panel (background worker pool)
- Refresh all parameters and values with threaded fetching
- Search/filter parameters by name with
/ - Ripgrep-style search across parameter values with
g(auto-loads all values first) - Edit selected value in external editor (
$EDITOR->vim->vi) - Create new parameter entries from popup (
a) - Copy/yank selected value to local clipboard (
y) - Shows selected parameter metadata in header
Requirements
- Rust (stable)
- AWS credentials configured via standard AWS chain
- Network access to AWS SSM APIs
- Optional for clipboard:
- macOS:
pbcopy - Linux:
wl-copyorxcliporxsel
- macOS:
AWS Configuration
This app uses the standard AWS SDK config chain.
Useful env vars:
AWS_PROFILEAWS_REGIONorAWS_DEFAULT_REGION
If region is not set, SDK default chain behavior is used.
Run
Keybindings
Main screen
/search/filter mode (matches parameter names)ggrep mode (matches parameter values, like ripgrep over the store's content; triggers a full refresh first if any values aren't loaded yet)j/Downmove selection downk/Upmove selection upRrefresh all parameters and valuesyyank/copy selected value to clipboardeedit selected value in external editor and update SSM on changeaopen create-parameter popupCtrl+Cquit
Create popup
Tabswitch field (name/value)Ctrl+Ssave/createEsccancel
Value field (vim-like)
Insert mode:
- type to insert
EnternewlineEscto Normal mode
Normal mode:
h/j/k/lmove cursor0/$line start/endiinsert before cursorainsert after cursorxdelete charEntersubmit createEsccancel popup
Project Structure
src/main.rsruntime loop + key handlingsrc/app.rsapp state and core behaviorssrc/aws_ssm.rsAWS SSM integrationsrc/ui.rsall ratatui renderingsrc/editor_tools.rsexternal editor + clipboard helperssrc/text_edit.rscursor/text editing helperssrc/models.rsshared data types
Notes
- On startup failure to load from SSM, the app now starts with an empty list (no demo defaults).
- SecureString values are fetched with decryption first, with non-decryption fallback.