Files
VERSE ebde9ba68f refactor(commands): separate commands and its core into two folders (#32)
- I think it would be better if one for commands only, one for the spec
handling core logic so people won't be confused by the core logic inside
the commands folder (cleaner I guess)
- Regen docs
2026-07-05 11:27:30 +07:00

89 lines
5.7 KiB
Go

package ops
import (
"github.com/versenilvis/iris/spec"
)
func init() {
spec.Register(&spec.Spec{
Name: "op",
Description: "Official 1Password CLI",
Subcommands: []spec.Subcommand{
{Name: "account", Description: "Manage your locally configured 1Password accounts"},
{Name: "add", Description: "Add an account to sign in to for the first time"},
{Name: "get", Description: "Get details about your account"},
{Name: "list", Description: "List users and accounts set up on this device"},
{Name: "forget", Description: "Remove a 1Password account from this device"},
{Name: "connect", Description: "Manage Connect instances and Connect tokens in your 1Password account"},
{Name: "group", Description: "Manage group access to Secrets Automation"},
{Name: "revoke", Description: "Revoke a group's access to manage Secrets Automation"},
{Name: "server", Description: "Manage Connect servers"},
{Name: "create", Description: "Set up a Connect server"},
{Name: "token", Description: "Manage Connect tokens"},
{Name: "vault", Description: "Manage connect server vault access"},
{Name: "document", Description: "Perform CRUD operations on Document items in your vaults"},
{Name: "edit", Description: "Edit a document item"},
{Name: "delete", Description: "Delete or archive a document item"},
{Name: "events-api", Description: "Manage Events API integrations in your 1Password account"},
{Name: "user", Description: "Manage users in groups"},
{Name: "item", Description: "Perform CRUD operations on the 1Password items in your vaults"},
{Name: "share", Description: "Share an item"},
{Name: "provision", Description: "Provision a user in the authenticated account"},
{Name: "confirm", Description: "Confirm a user"},
{Name: "suspend", Description: "Suspend a user"},
{Name: "reactivate", Description: "Reactivate a suspended user"},
{Name: "grant", Description: "Grant a group permissions to a vault"},
{Name: "completion", Description: "Generate shell completion information"},
{Name: "inject", Description: "Inject secrets into a config file"},
{Name: "read", Description: "Read a secret using the secrets reference syntax"},
{Name: "run", Description: "Pass secrets as environment variables to a process"},
{Name: "signin", Description: "Sign in to a 1Password account"},
{Name: "signout", Description: "Sign out of a 1Password account"},
{Name: "update", Description: "Check for and download updates"},
{Name: "whoami", Description: "Get information about a signed-in account"},
},
Options: []spec.Option{
{Name: "--address", Description: "The sign-in address for your account"},
{Name: "--email", Description: "The email address associated with your account"},
{Name: "--raw", Description: "Only return the session token"},
{Name: "--shorthand", Description: "Set the short account name"},
{Name: "--all", Description: "Forget all authenticated accounts"},
{Name: "--all-servers", Description: "Grant access to all current and future servers in the authenticated account"},
{Name: "--group", Description: "The group to receive access"},
{Name: "--expires-in", Description: "Set how long the Connect token is valid for in (s)econds, (m)inutes, or (h)ours"},
{Name: "--server", Description: "Issue a token for this server"},
{Name: "--name", Description: "Change the token's name"},
{Name: "--file-name", Description: "Set the file's name"},
{Name: "--tags", Description: "Set the tags to the specified (comma-separated) values"},
{Name: "--title", Description: "Set the document item's title"},
{Name: "--include-archive", Description: "Save the document to the file path instead of stdout"},
{Name: "--archive", Description: "Move the document to the Archive"},
{Name: "--role", Description: "Specify the user's role as a member or manager. Default: member"},
{Name: "--description", Description: "Set the group's description"},
{Name: "--user", Description: "List groups that a user belongs to"},
{Name: "-f", Description: "Do not prompt for confirmation"},
{Name: "--category", Description: "Set the item's category"},
{Name: "--dry-run", Description: "Perform a dry run of the command and output a preview of the resulting item"},
{Name: "--generate-password", Description: "Give the item a randomly generated password"},
{Name: "--template", Description: "Specify the filepath to read an item template from"},
{Name: "--url", Description: "Set the URL associated with the item"},
{Name: "--fields", Description: "Output the primary one-time password for this item"},
{Name: "--share-link", Description: "Get a shareable link for the item"},
{Name: "--categories", Description: "Only list items in these categories (comma-separated)"},
{Name: "--emails", Description: "Email addresses to share with"},
{Name: "--expiry", Description: "Look for the item in this vault"},
{Name: "--language", Description: "Confirm a user"},
{Name: "--fingerprint", Description: "Get the user's public key fingerprint"},
{Name: "--me", Description: "Get the authenticated user's details"},
{Name: "--deauthorize-devices-after", Description: "Deauthorize the user's devices after a time (rounded down to seconds)"},
{Name: "--no-input", Description: "Do not prompt for input on interactive terminal"},
{Name: "--permissions", Description: "The permissions to grant to the group"},
{Name: "--allow-admins-to-manage", Description: "Set whether admins can manage the vault. Default: false"},
{Name: "--icon", Description: "Change the vault's icon"},
{Name: "--travel-mode", Description: "Read from stdin"},
{Name: "--file-mode", Description: "Do not prompt for confirmation"},
{Name: "-n", Description: "Do not print a new line after the secret"},
},
})
}