All notable changes to sinbo will be documented here.
sinbo-lsp— LSP server for inline snippet completions in any editor- VS Code extension with
sinbo:trigger - Variable fallback values with
SINBO:name:fallback:syntax .vsixincluded in GitHub releases- CI builds
sinbo-lspbinaries for all platforms
rename <old> <new>command to rename snippets--peek/-pflag onlistto preview first 30 characters of snippet content-ashort flag for--argsongetcopy <snippet>/c <snippet>command to copy a snippet- add
human_panic
- Shell completions for bash, zsh, fish, and powershell (
sinbo completions <shell>) - Dynamic snippet name completion on TAB for
get,remove,edit,encrypt,decrypt,export - Hidden
list-namescommand for shell completion scripts - Unit tests for
var.rs,storage.rs,encryption.rs, andmain.rs
- Variable substitution system with
SINBO:name:placeholder syntax --args key=valueflag ongetfor placeholder substitutionexportcommand — export snippets to.sinbo.jsonfilesimportcommand — import snippets from.sinbo.jsonfiles- Conflict resolution prompt on import/export name collision
- Description field to snippet metadata
- Suppressed false-positive
RUSTSEC-2026-0097advisory forrand 0.8.5(unsoundness does not affect sinbo's usage)
- Added
cargo auditcheck to the pipeline
sinbo encrypt <name>— encrypt an existing plaintext snippetsinbo decrypt <name>— permanently decrypt an encrypted snippet
- Bumped Argon2id memory cost from 19MB to 32MB and time cost from 2 to 3
- Snippet encryption —
sinbo add <name> --encryptprompts for a password and stores the snippet as an encrypted.encfile.sinbo getdetects encrypted snippets automatically and prompts for the password. - Encrypted snippets are listed normally with a
Lockedindicator.sinbo list --showdisplays[encrypted]instead of the content. sinbo searchskips the content of encrypted snippets — only the name is matched.sinbo removenow correctly deletes.encfiles alongside metadata.
storage::exists()now checks for both.codeand.encfiles — previously encrypted snippets were invisible to duplicate checks.sinbo editon an encrypted snippet now returns a clear error instead of silently operating on empty content.- Editor undo corruption: if the editor is closed without saving, or the resulting content is identical to what was written initially (e.g. full undo in vim), sinbo now detects the unchanged state and aborts instead of saving empty or garbage content.
storage::save_meta()extracted as a public method for use by encrypted add.storage::Snippetnow carries anencrypted: boolfield.
sinbo search <query>command — fuzzy search across snippet names and content- Results are ranked by relevance score, with matching content lines shown inline
--tags/-tflag onsearchto scope results to a specific tag
sinbo add— add snippets via editor, stdin, or filesinbo get— print or copy a snippet to clipboardsinbo list— list all snippets, with tag filtering and--showfor inline contentsinbo edit— edit an existing snippet in$EDITOR, with optional tag updatesinbo remove— delete a snippet--extflag for syntax-highlighted temp files in editor- Tag support across add, edit, and list
- Plain-file storage under system config directory
- Cross-platform: Linux, macOS, Windows