Documentation Index
Fetch the complete documentation index at: https://docs.versuno.ai/llms.txt
Use this file to discover all available pages before exploring further.
versuno push [file] [-m <description>]
Finds all modified asset files (via content hash comparison), then for each:
- Existing asset (has an
id in frontmatter) — creates a new version on the API and updates version and updated_at in the frontmatter.
- New file (no
id) — creates a brand-new asset, inferring the assetType from the directory name, and writes back id, type, title, version, created_at, and updated_at into the frontmatter.
Arguments
| Argument | Required | Description |
|---|
file | Positional | Specific file to push. Omit to push all modified files. |
Options
| Flag | Description |
|---|
-m <text> | Version commit description (stored with the version). |
--type <type> | Asset type override (context, prompt, persona, system-prompt, skill). Defaults to the directory-inferred type. |
--title <text> | Asset title override. Defaults to the filename without extension. |
--dry-run | Print what would be pushed without making any API calls. |
--format json | Output a JSON array of push results instead of human-readable output. |
Asset type inference
When pushing a new file (no id), the type is inferred from its parent directory:
| Directory | Inferred type |
|---|
contexts/ | context |
prompts/ | prompt |
personas/ | persona |
system-prompts/ | system-prompt |
skills/ | skill |
projects/<slug>/<type>/ | from <type> subfolder |
Examples
# Push all modified files
versuno push
# Push a specific file with a description
versuno push prompts/my-prompt.md -m "Improved tone"
# Preview what would be pushed
versuno push --dry-run
# Push a new file with an explicit type and title
versuno push notes/raw-draft.md --type prompt --title "Draft Intro Prompt"
# JSON output
versuno push -m "Update" --format json
See also