usectl-cli
mcp
Fail
Health Warn
- No license — Repository has no license file
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 5 GitHub stars
Code Fail
- rm -rf — Recursive force deletion command in install.sh
Permissions Pass
- Permissions — No dangerous permissions requested
Purpose
This tool is the official CLI for the usectl.com platform, allowing developers to manage projects, trigger deployments, configure custom domains, and monitor logs directly from the terminal.
Security Assessment
The tool requires user authentication and makes external network requests to the usectl API to manage resources. However, the automated rule-based scan failed due to a recursive force deletion command (`rm -rf`) found inside the `install.sh` script. Blindly piping web scripts to bash (`curl ... | bash`) is inherently risky, especially with aggressive deletion commands present. Overall risk is rated as Medium.
Quality Assessment
The project is actively maintained, with its last push occurring today. However, it suffers from extremely low community visibility (only 5 GitHub stars) and lacks a defined open-source license. The absence of a license means there are no clear legal terms granting users permission to use, modify, or distribute the code. Additionally, it claims to be written in Go but requires Go 1.25+, a version that does not currently exist, raising minor concerns about documentation accuracy.
Verdict
Use with caution: while it is an active official tool, the lack of a license, low community adoption, and the unsafe installation script warrant a thorough manual review before use.
This tool is the official CLI for the usectl.com platform, allowing developers to manage projects, trigger deployments, configure custom domains, and monitor logs directly from the terminal.
Security Assessment
The tool requires user authentication and makes external network requests to the usectl API to manage resources. However, the automated rule-based scan failed due to a recursive force deletion command (`rm -rf`) found inside the `install.sh` script. Blindly piping web scripts to bash (`curl ... | bash`) is inherently risky, especially with aggressive deletion commands present. Overall risk is rated as Medium.
Quality Assessment
The project is actively maintained, with its last push occurring today. However, it suffers from extremely low community visibility (only 5 GitHub stars) and lacks a defined open-source license. The absence of a license means there are no clear legal terms granting users permission to use, modify, or distribute the code. Additionally, it claims to be written in Go but requires Go 1.25+, a version that does not currently exist, raising minor concerns about documentation accuracy.
Verdict
Use with caution: while it is an active official tool, the lack of a license, low community adoption, and the unsafe installation script warrant a thorough manual review before use.
usectl-cli is the official command-line interface (CLI) for the usectl.com platform. It allows developers to manage projects, trigger deployments, configure custom domains, handle organizations, and monitor runtime/build logs directly from their terminal.
README.md
usectl
Command-line interface for the usectl.com platform.
Manage projects, deployments, organizations, domains, and more from the terminal.
Installation
Homebrew (macOS & Linux)
brew install --cask syst3mctl/usectl-cli/usectl
Snap Store (Ubuntu & Linux)
snap install usectl
AUR (Arch Linux)
yay -S usectl
Quick Install Script
curl -fsSL https://manager.usectl.com/install.sh | bash
Build from Source
Requires Go 1.25+:
git clone https://github.com/syst3mctl/usectl-cli.git
cd usectl-cli
go build -o usectl .
sudo mv usectl /usr/local/bin/
Quick Start
# Log in
usectl login
# Connect GitHub
usectl github login
# Create a project
usectl projects create --name my-app \
--repo https://github.com/user/repo \
--domain my-app --port 3000
# Deploy
usectl projects deploy <id>
# View logs
usectl projects logs <id>
Commands
Authentication
| Command | Description |
|---|---|
usectl login |
Log in with email & password |
usectl register |
Create a new account |
usectl profile |
View your profile |
Projects
| Command | Description |
|---|---|
usectl projects list |
List all projects |
usectl projects get <id> |
Show project details |
usectl projects create |
Create a new project |
usectl projects update <id> |
Update project settings |
usectl projects delete <id> |
Delete a project |
usectl projects deploy <id> |
Trigger a deployment |
usectl projects logs <id> |
View runtime logs |
usectl projects build-logs <project-id> <deployment-id> |
View build logs |
usectl projects status <id> |
Check container status |
usectl projects stats <id> |
View resource usage (CPU, memory, network) |
usectl projects stop <id> |
Stop a project (scale to 0) |
usectl projects start <id> |
Start a project (scale to 1) |
Aliases: projects → project, p · list → ls
Create Flags
--name Project name (required)
--repo Git repository URL (required)
--domain Subdomain (required)
--branch Git branch (default: main)
--type Project type: static or service (default: service)
--port Container port (default: 80)
--db Provision a PostgreSQL database
--s3 Provision S3 storage (MinIO)
--addon Add addon: database, s3, redis, nats (repeatable)
--installation-id GitHub App installation ID
Organizations
| Command | Description |
|---|---|
usectl orgs list |
List your organizations |
usectl orgs get <id> |
Get organization details |
usectl orgs create --name "Name" |
Create an organization |
usectl orgs update <id> |
Update name or description |
usectl orgs delete <id> |
Delete an organization |
usectl orgs projects <id> |
List organization projects |
Members:
| Command | Description |
|---|---|
usectl orgs members list <org-id> |
List members |
usectl orgs members set-role <org-id> <user-id> --role <role> |
Change role |
usectl orgs members remove <org-id> <user-id> |
Remove member |
Invitations:
| Command | Description |
|---|---|
usectl orgs invite list <org-id> |
List pending invitations |
usectl orgs invite create <org-id> --email <email> |
Invite a user |
usectl orgs invite info <token> |
View invitation details |
usectl orgs invite accept <token> |
Accept an invitation |
usectl orgs invite revoke <org-id> <invitation-id> |
Revoke invitation |
Roles: owner, admin, member, viewer
Domains
| Command | Description |
|---|---|
usectl domains list |
List all domains |
usectl domains get <id> |
Show domain details |
usectl domains create <domain> |
Register a custom domain |
usectl domains attach <domain-id> --project <project-id> |
Attach to project |
usectl domains delete <id> |
Delete a domain |
GitHub Integration
| Command | Description |
|---|---|
usectl github login |
Connect GitHub via OAuth |
usectl github installations |
List GitHub App installations |
usectl github repos <installation-id> |
List accessible repos |
usectl github branches <installation-id> <owner/repo> |
List branches |
Admin (requires admin role)
| Command | Description |
|---|---|
usectl admin users list |
List all users |
usectl admin users enable <id> |
Enable a user |
usectl admin users disable <id> |
Disable a user |
usectl admin users set-role <id> <role> |
Set role (user or admin) |
usectl admin users delete <id> |
Delete a user |
MCP (Model Context Protocol)
| Command | Description |
|---|---|
usectl mcp config |
Print Claude Desktop MCP configuration JSON |
Global Flags
--api-url Override the API base URL (default: from config or https://usectl.com)
--json Output in JSON format (for scripting and AI agents)
--version Show version
Configuration
Config is stored at ~/.usectl/config.json:
{
"token": "your-jwt-token",
"api_url": "https://usectl.com"
}
Created automatically on usectl login.
License
MIT
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found