Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions plugins/directus/install-guidance.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"plugin": "directus",
"binary": "directus",
"check": "directus --version",
"install_steps": [
"npm install -g directus",
"Verify: directus --version",
"Create .env with DIRECTUS_URL and DIRECTUS_TOKEN",
"supercli plugins install ./plugins/directus --on-conflict replace --json"
],
"note": "Requires Node.js 18+. Configure via DIRECTUS_URL and DIRECTUS_TOKEN environment variables or .env file in the project directory."
}
5 changes: 5 additions & 0 deletions plugins/directus/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"description": "CLI for the Directus headless CMS. Manage projects, collections, items, users, roles, files, webhooks, and schema migrations with JSON output support.",
"tags": ["directus", "cms", "headless-cms", "api", "content-management", "cli", "database"],
"has_learn": false
}
140 changes: 140 additions & 0 deletions plugins/directus/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
{
"name": "directus",
"version": "0.1.0",
"description": "directus — CLI for the Directus headless CMS. Manage projects, collections, items, users, roles, files, webhooks, and schema migrations. Extensible with flows and custom endpoints. Ideal for content management automation, CI/CD pipelines, and AI agent integration with JSON output support.",
"source": "https://github.com/directus/directus",
"checks": [
{ "type": "binary", "name": "directus" }
],
"install_guidance": {
"plugin": "directus",
"binary": "directus",
"check": "directus --version",
"install_steps": [
"npm install -g directus",
"Verify: directus --version",
"supercli plugins install ./plugins/directus --on-conflict replace --json"
],
"note": "Requires Node.js 18+. Configure via DIRECTUS_URL and DIRECTUS_TOKEN environment variables or .env file."
},
"commands": [
{
"namespace": "directus",
"resource": "self",
"action": "version",
"description": "Print directus CLI version",
"adapter": "process",
"adapterConfig": {
"command": "directus",
"baseArgs": ["--version"],
"missingDependencyHelp": "Install directus: npm install -g directus"
},
"args": []
},
{
"namespace": "directus",
"resource": "project",
"action": "list",
"description": "List Directus projects",
"adapter": "process",
"adapterConfig": {
"command": "directus",
"baseArgs": ["projects", "list"],
"timeout_ms": 15000,
"missingDependencyHelp": "Install directus: npm install -g directus"
},
"args": []
},
{
"namespace": "directus",
"resource": "collection",
"action": "list",
"description": "List all collections in the project",
"adapter": "process",
"adapterConfig": {
"command": "directus",
"baseArgs": ["collection", "list"],
"timeout_ms": 15000,
"missingDependencyHelp": "Install directus: npm install -g directus"
},
"args": []
},
{
"namespace": "directus",
"resource": "user",
"action": "list",
"description": "List users in the project",
"adapter": "process",
"adapterConfig": {
"command": "directus",
"baseArgs": ["user", "list"],
"timeout_ms": 15000,
"missingDependencyHelp": "Install directus: npm install -g directus"
},
"args": []
},
{
"namespace": "directus",
"resource": "schema",
"action": "snapshot",
"description": "Export schema snapshot for version control",
"adapter": "process",
"adapterConfig": {
"command": "directus",
"baseArgs": ["schema", "snapshot"],
"positionalArgs": ["output"],
"timeout_ms": 30000,
"missingDependencyHelp": "Install directus: npm install -g directus"
},
"args": [
{ "name": "output", "type": "string", "required": true, "description": "Output file path (e.g., schema.yaml)" },
{ "name": "--yes", "type": "boolean", "required": false, "description": "Skip confirmation" }
]
},
{
"namespace": "directus",
"resource": "schema",
"action": "apply",
"description": "Apply schema snapshot to the project",
"adapter": "process",
"adapterConfig": {
"command": "directus",
"baseArgs": ["schema", "apply"],
"positionalArgs": ["input"],
"timeout_ms": 60000,
"missingDependencyHelp": "Install directus: npm install -g directus"
},
"args": [
{ "name": "input", "type": "string", "required": true, "description": "Schema file path to apply" },
{ "name": "--yes", "type": "boolean", "required": false, "description": "Skip confirmation" }
]
},
{
"namespace": "directus",
"resource": "role",
"action": "list",
"description": "List user roles",
"adapter": "process",
"adapterConfig": {
"command": "directus",
"baseArgs": ["roles", "list"],
"timeout_ms": 15000,
"missingDependencyHelp": "Install directus: npm install -g directus"
},
"args": []
},
{
"namespace": "directus",
"resource": "_",
"action": "_",
"description": "Passthrough to directus CLI for any command",
"adapter": "process",
"adapterConfig": {
"command": "directus",
"passthrough": true,
"missingDependencyHelp": "Install directus: npm install -g directus"
},
"args": []
}
]
}
12 changes: 12 additions & 0 deletions plugins/kamal/install-guidance.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"plugin": "kamal",
"binary": "kamal",
"check": "kamal version",
"install_steps": [
"gem install kamal",
"Verify: kamal version",
"Initialize: kamal init (creates config/deploy.yml)",
"supercli plugins install ./plugins/kamal --on-conflict replace --json"
],
"note": "Requires Ruby 3.0+, Docker on the deployment target, and SSH access to servers. Uses Traefik for ingress routing."
}
5 changes: 5 additions & 0 deletions plugins/kamal/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"description": "Deploy web apps anywhere from raw Docker images. Zero-downtime deployments with rolling updates, asset bridging, logging, and SSH-based access. From 37signals (Basecamp).",
"tags": ["kamal", "deployment", "docker", "devops", "self-hosted", "ssh", "rails"],
"has_learn": false
}
144 changes: 144 additions & 0 deletions plugins/kamal/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
{
"name": "kamal",
"version": "0.1.0",
"description": "kamal — deploy web apps anywhere from raw Docker images. Zero-downtime deployments with rolling updates, asset bridging, logging, and SSH-based access. Uses Traefik for routing and runs on any Linux host. From 37signals (Basecamp). Ideal for self-hosted deployments without Kubernetes.",
"source": "https://github.com/basecamp/kamal",
"checks": [
{ "type": "binary", "name": "kamal" }
],
"install_guidance": {
"plugin": "kamal",
"binary": "kamal",
"check": "kamal version",
"install_steps": [
"gem install kamal",
"Verify: kamal version",
"Configure: kamal init (creates config/deploy.yml)",
"supercli plugins install ./plugins/kamal --on-conflict replace --json"
],
"note": "Requires Ruby 3.0+, Docker on the deployment target, and SSH access to servers. Uses Traefik for ingress routing. See https://kamal-deploy.org for docs."
},
"commands": [
{
"namespace": "kamal",
"resource": "self",
"action": "version",
"description": "Print kamal version",
"adapter": "process",
"adapterConfig": {
"command": "kamal",
"baseArgs": ["version"],
"missingDependencyHelp": "Install kamal: gem install kamal"
},
"args": []
},
{
"namespace": "kamal",
"resource": "deploy",
"action": "run",
"description": "Deploy the application with zero-downtime rolling update",
"adapter": "process",
"adapterConfig": {
"command": "kamal",
"baseArgs": ["deploy"],
"passthrough": true,
"timeout_ms": 120000,
"missingDependencyHelp": "Install kamal: gem install kamal"
},
"args": [
{ "name": "--version", "type": "string", "required": false, "description": "Specific version tag to deploy" },
{ "name": "--skip-push", "type": "boolean", "required": false, "description": "Skip Docker image push" }
]
},
{
"namespace": "kamal",
"resource": "rollback",
"action": "run",
"description": "Rollback to a previous deployment version",
"adapter": "process",
"adapterConfig": {
"command": "kamal",
"baseArgs": ["rollback"],
"positionalArgs": ["version"],
"timeout_ms": 120000,
"missingDependencyHelp": "Install kamal: gem install kamal"
},
"args": [
{ "name": "version", "type": "string", "required": true, "description": "Version tag to rollback to" }
]
},
{
"namespace": "kamal",
"resource": "app",
"action": "logs",
"description": "Show application logs from servers",
"adapter": "process",
"adapterConfig": {
"command": "kamal",
"baseArgs": ["app", "logs"],
"passthrough": true,
"timeout_ms": 30000,
"missingDependencyHelp": "Install kamal: gem install kamal"
},
"args": [
{ "name": "--since", "type": "string", "required": false, "description": "Show logs since timestamp (e.g., '5m', '2h')" },
{ "name": "--lines", "type": "number", "required": false, "description": "Number of lines to show" }
]
},
{
"namespace": "kamal",
"resource": "app",
"action": "details",
"description": "Show application details and status",
"adapter": "process",
"adapterConfig": {
"command": "kamal",
"baseArgs": ["app", "details"],
"timeout_ms": 15000,
"missingDependencyHelp": "Install kamal: gem install kamal"
},
"args": []
},
{
"namespace": "kamal",
"resource": "server",
"action": "bootstrap",
"description": "Bootstrap servers with Docker and dependencies",
"adapter": "process",
"adapterConfig": {
"command": "kamal",
"baseArgs": ["server", "bootstrap"],
"timeout_ms": 120000,
"missingDependencyHelp": "Install kamal: gem install kamal"
},
"args": []
},
{
"namespace": "kamal",
"resource": "config",
"action": "show",
"description": "Show the Kamal configuration",
"adapter": "process",
"adapterConfig": {
"command": "kamal",
"baseArgs": ["config"],
"timeout_ms": 10000,
"missingDependencyHelp": "Install kamal: gem install kamal"
},
"args": []
},
{
"namespace": "kamal",
"resource": "_",
"action": "_",
"description": "Passthrough to kamal CLI for any command",
"adapter": "process",
"adapterConfig": {
"command": "kamal",
"passthrough": true,
"missingDependencyHelp": "Install kamal: gem install kamal"
},
"args": []
}
]
}
12 changes: 12 additions & 0 deletions plugins/vercel/install-guidance.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"plugin": "vercel",
"binary": "vercel",
"check": "vercel --version",
"install_steps": [
"npm install -g vercel",
"Verify: vercel --version",
"Authenticate: vercel login",
"supercli plugins install ./plugins/vercel --on-conflict replace --json"
],
"note": "Requires Node.js 18+. Run 'vercel login' to authenticate. Deploy with 'vercel deploy' or just 'vercel' in a project directory."
}
5 changes: 5 additions & 0 deletions plugins/vercel/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"description": "Vercel CLI for deployment, environment management, logs, domains, and project configuration. Deploy frontends, serverless functions, and full-stack apps with zero configuration.",
"tags": ["vercel", "deployment", "hosting", "frontend", "serverless", "cli", "devops"],
"has_learn": false
}
Loading
Loading