CLI for Sealevel — the Solana-specialized coding LLM. Chat, generate Anchor programs, review code, decode errors.
Project description
Sealevel CLI
Command-line interface for Sealevel — the Solana-specialized coding AI.
Interactive session with slash commands for chatting, generating Anchor programs, reviewing code, migrating to modern patterns, decoding errors, and explaining transactions.
Install
pip install sealevel
Quick Start
# Set your API key (get one at https://sealevel.tech/dashboard)
slm config --api-key slm_xxxxxxxxxxxx
# Start interactive session
slm
Inside the session, type to chat or use / commands:
❯ How do I derive a PDA in Anchor?
◆ SEALEVEL
[streaming response with markdown rendering]
❯ /review src/lib.rs
◆ REVIEWING src/lib.rs
[security + deprecated pattern analysis]
❯ /explain-error 0x1771
[error decode + fix suggestion]
❯ /gen "escrow with atomic token swap"
[generates full Anchor program]
Modes
slm # Interactive session (default)
slm -p "prompt" # One-shot mode — print response and exit
slm -c # Continue most recent session
slm config --show # View configuration
Pipe mode
slm -p "What is a PDA?"
cat src/lib.rs | slm -p "review this code"
echo "0x1771" | slm -p "explain this Solana error"
Session Commands
Type / to see all commands with live filtering. Type /help for the full list.
Chat & Code
| Command | Description |
|---|---|
| (plain text) | Chat with Sealevel |
/review <file> |
Review code for security issues |
/migrate <file> [--write] |
Migrate to modern Anchor 0.30+ |
/gen "description" [-o file] |
Generate an Anchor program |
/tests <file> |
Generate TypeScript tests |
Explain
| Command | Description |
|---|---|
/explain-tx <signature> |
Explain a Solana transaction |
/explain-error <code> |
Decode an error code |
Session
| Command | Description |
|---|---|
/sessions |
List past sessions |
/resume <id> |
Resume a past session |
/rename <name> |
Rename current session |
/compact [N] |
Trim history to last N turns |
/export [file] |
Export session as markdown |
/history |
Show conversation history |
/clear |
Clear conversation |
System
| Command | Description |
|---|---|
/status |
Show API health and config |
/usage |
Show token usage and limits |
/copy |
Copy last response to clipboard |
/rotate-key |
Rotate API key |
/config [--show] |
View or set configuration |
/help |
Show all commands |
/exit |
Exit session |
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
/ |
Open command dropdown (live filter as you type) |
Tab |
Accept suggestion |
Ctrl+R |
Search input history |
Ctrl+L |
Clear screen |
Ctrl+J |
Newline (multiline input) |
Esc Esc |
Undo last turn |
Ctrl+C |
Cancel current operation |
Ctrl+D |
Exit |
Configuration
slm config --api-key slm_xxxx # Set API key
slm config --api-url https://... # Custom endpoint
slm config --mode quality # 'quality' or 'fast'
slm config --show # Show current config
Config stored at ~/.sealevel/config.toml. API key stored in OS keyring (macOS Keychain / Windows Credential Locker / GNOME Keyring).
Override config dir: SEALEVEL_CONFIG_DIR=/path/to/dir
Uninstall
pip uninstall sealevel
rm -rf ~/.sealevel
License
MIT
Links
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 sealevel-0.2.0.tar.gz.
File metadata
- Download URL: sealevel-0.2.0.tar.gz
- Upload date:
- Size: 67.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32d7b9e42b16243e7d87de26f5cc906783ef806673253d62c771f691589c53fa
|
|
| MD5 |
baf5afa879c4c95701357a7d08f7403e
|
|
| BLAKE2b-256 |
2aee476908b5e33e98b92c2ad22e778e946fac9b3a59fc0e9df6d1803eda3e42
|
Provenance
The following attestation bundles were made for sealevel-0.2.0.tar.gz:
Publisher:
cli-publish.yml on e-man07/slm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sealevel-0.2.0.tar.gz -
Subject digest:
32d7b9e42b16243e7d87de26f5cc906783ef806673253d62c771f691589c53fa - Sigstore transparency entry: 1383543655
- Sigstore integration time:
-
Permalink:
e-man07/slm@8c6c59a9a34d0b279ba435cbb3a4802d4e7d3997 -
Branch / Tag:
refs/tags/cli-v0.2.0 - Owner: https://github.com/e-man07
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cli-publish.yml@8c6c59a9a34d0b279ba435cbb3a4802d4e7d3997 -
Trigger Event:
push
-
Statement type:
File details
Details for the file sealevel-0.2.0-py3-none-any.whl.
File metadata
- Download URL: sealevel-0.2.0-py3-none-any.whl
- Upload date:
- Size: 44.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f6b208c045b26dbe8f003cbf9a100699c452397b59ffcf1bbee6afcf8ac9b3f
|
|
| MD5 |
7ea0152aeddf13e670e13718b82dbff3
|
|
| BLAKE2b-256 |
636f3956aebb508b7355e7f39ab531adf46397b2a92c7bbea6c5cc7028431a56
|
Provenance
The following attestation bundles were made for sealevel-0.2.0-py3-none-any.whl:
Publisher:
cli-publish.yml on e-man07/slm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sealevel-0.2.0-py3-none-any.whl -
Subject digest:
2f6b208c045b26dbe8f003cbf9a100699c452397b59ffcf1bbee6afcf8ac9b3f - Sigstore transparency entry: 1383543676
- Sigstore integration time:
-
Permalink:
e-man07/slm@8c6c59a9a34d0b279ba435cbb3a4802d4e7d3997 -
Branch / Tag:
refs/tags/cli-v0.2.0 - Owner: https://github.com/e-man07
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cli-publish.yml@8c6c59a9a34d0b279ba435cbb3a4802d4e7d3997 -
Trigger Event:
push
-
Statement type: