Skip to content

sb put

Upload a local skill to SkillsBin. Accepts a directory or a single file.

Usage

Terminal window
sb put <path>

Arguments

ArgumentDescription
pathPath to a directory or file to upload. Required.

Flags

FlagShortDefaultDescription
--org""Target organization slug. Uploads to personal bin if omitted.
--type""Force item type (skill, command, prompt, plugin, agent, statusline).
--message-m""Commit message for this change.

Examples

Upload a skill directory

Terminal window
sb put .claude/skills/deploy-helper
# Created deploy-helper (skill) in personal

Update an existing skill with a message

Terminal window
sb put .claude/skills/deploy-helper -m "Add error handling section"
# Updated deploy-helper (skill) in personal

Upload to an organization

Terminal window
sb put .claude/skills/deploy-helper --org my-team
# Created deploy-helper (skill) in my-team

Upload a single file

Terminal window
sb put ./my-command.md
# Created my-command (command) in personal

Force a specific type

Terminal window
sb put ./notes.md --type prompt
# Created notes (prompt) in personal

Auto-detection

From a directory

When uploading a directory, sb put looks for known files in this order:

FileDetected type
SKILL.mdskill
plugin.jsonplugin
<slug>.mdcommand
<slug>.shstatusline
Any *.md (fallback)skill

The slug is the directory name.

From a file

ExtensionDetected type
.mdcommand
.jsonplugin
.shstatusline
Otherskill

The slug is the filename without extension.

The --type flag overrides all auto-detection.

Errors

CodeCause
LOCAL_NOT_FOUNDPath does not exist or contains no recognized files.
AUTH_INVALIDToken missing or expired.
PERMISSION_DENIEDNot authorized to write to the target org.