README
¶
sei
A small terminal UI for copying skills from your personal library into coding agents' project or global folders, and removing them when you're done.
Is this for you?
- Have a personal skill collection.
- Want only relevant skills installed for each task.
- Tired of copying and removing skills across projects or agents.
Happy leaving everything installed? Probably no need for sei. It manages configured folders; it cannot tell you everything an agent discovers or control what it has already loaded.
Install
Available for Linux and macOS, on amd64 and arm64.
Install script
curl -fsSL https://github.com/primaprashant/sei/releases/latest/download/install.sh | bash
The script verifies the archive checksum and installs to ~/.local/bin, without
sudo or Go. Follow its printed PATH instructions if sei is not found.
Go
With Go 1.27.1 or later:
go install github.com/primaprashant/sei@latest
Make sure your Go binary directory (GOBIN, or GOPATH/bin, usually ~/go/bin)
is on your PATH.
Release archive
Download a matching .tar.gz from GitHub Releases,
extract it, and put the sei binary in a directory on your PATH.
Choose darwin for macOS or linux for Linux, and arm64 for Apple Silicon/ARM64
or amd64 for Intel/AMD 64-bit processors. No Go installation is needed.
Upgrade and uninstall
To upgrade, repeat your installation method: rerun the script or go install,
or replace the binary with one from a newer release archive.
The script only replaces installations it recognizes; keep its adjacent
.sei-install-receipt file and use the same install directory.
To uninstall, quit sei and remove its binary from your install directory, along
with .sei-install-receipt if you used the script. Your configuration, stats history,
library, and copied skills remain.
Setup
- Keep your skill folders in a separate library, such as
~/skill-library. - Run
seifrom your project directory. - First-run setup asks for your library and agent destinations. Choose your paths and save to start browsing. Use F1 in setup for full paths, field guidance, and validation details.
Setup offers Claude Code, Codex, OpenCode, Pi, Cursor, Antigravity CLI, Crush, GitHub Copilot CLI, and Cline CLI presets, plus custom agents. All names and paths are editable.
sei setup # Change your configuration
sei --project ~/work/my-project # Use a different project directory
The launch directory is the default project directory; sei does not search for a Git root. Setup saves configuration but does not create your library or agent destinations.
Configuration
Setup writes the configuration for you. To edit it manually, use:
- Linux:
$XDG_CONFIG_HOME/sei/config.json, or~/.config/sei/config.json. - macOS:
~/Library/Application Support/sei/config.json.
{
"library": "~/skill-library",
"agents": [
{"name": "Claude Code", "global": "~/.claude/skills", "local": ".claude/skills"},
{"name": "Codex", "global": "~/.agents/skills", "local": ".agents/skills"}
]
}
library is your source collection. Each agent's global folder serves all
projects; its local folder is relative to the current project.
Library and global paths must be absolute or start with ~/. Local paths must
stay inside the project, and library and destination roots must be separate.
If an agent’s project and global paths resolve to the same folder (for example,
when launching from home with the defaults), setup still saves. The browser dims
that project panel and disables its copy/remove operations; use the global panel.
Launching from another project or using --project gives project paths their
usual meaning. Nested overlaps and overlaps between different agents remain blocked.
Configure 1–9 agents; their order determines the keyboard slots below.
Restart sei after editing the file. Use sei --config /path/to/config.json
to choose a different config, or sei --help for all options.
Stats
sei stats
sei --config /path/to/config.json stats
See your total skill actions, copies, removals, active days, actions this
calendar month, and your five most-copied skills both all time and over the
last 30 days. The recent window includes today and the previous 29 local
calendar dates. Use q or Ctrl+C to quit; reopen the screen to update it.
Controls
The library is on the left, project folders at the top right, and global folders below them. Use a terminal of at least 80×24.
The active panel has a violet border and highlighted selection. Project and global
folders are grouped separately; the footer shows the focused path and current
operation. Colors adapt to light/dark terminal backgrounds. Set NO_COLOR=1 for
monochrome output; focus and selection remain marked with * and >.
A slot is an agent's position in your configuration: the first agent is slot 1, the second is slot 2, and so on.
| Key | Action |
|---|---|
| Up / Down | Move selection, or scroll help. |
| Tab / Shift+Tab | Focus the next / previous panel (library, project, then global). |
0 |
Focus the library. |
1–9 |
Focus an agent's project folder. |
g, then 1–9 |
Focus an agent's global folder. |
x |
Permanently remove the selected skill from a destination. |
r |
Refresh folder listings. |
? |
Show help, full names, paths, and errors. |
| Esc | Close help or cancel a pending g. |
q / Ctrl+C |
Quit after any active copy or removal finishes. |
With a skill selected in the library, use these keys to copy it:
| Agent slot | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
|---|---|---|---|---|---|---|---|---|---|
| Project | a |
b |
c |
d |
e |
f |
h |
i |
o |
| Global | A |
B |
C |
D |
E |
F |
H |
I |
O |
For example, a copies to the first agent's project folder; A copies to its
global folder. Selection stays in the library so you can keep adding skills.
How changes work
- Your source library stays unchanged.
- Adding replaces the entire same-named destination, including local edits.
- Replacement and removal are immediate, with no confirmation or undo.
- Changes persist after quitting. Failed operations can leave missing or partial output; inspect the reported destination before retrying.
Documentation
¶
There is no documentation for this package.