mirror of
https://github.com/Studio-Saelix/sencho.git
synced 2026-07-26 11:49:16 +00:00
8096799e49
Reframe docs, OpenAPI registries copy, and License trial/expiry helpers so Community is the full AGPLv3 product and Admiral leads with current assurance (Hardened Build, Recovery Vault, support, governance). Mesh, Secrets, and Host Console stay limited-availability without Admiral sales framing.
167 lines
11 KiB
Plaintext
167 lines
11 KiB
Plaintext
---
|
|
title: Licensing & Billing
|
|
sidebarTitle: Licensing
|
|
description: How Sencho licensing works, including trials, activation, and subscription management.
|
|
---
|
|
|
|
Sencho is [AGPLv3](https://github.com/studio-saelix/sencho/blob/main/LICENSE) open source. **Community** is the complete self-hosted Compose-first control plane, free forever with unlimited nodes. **Admiral** is Studio Saelix business assurance (priority support, managed continuity, governance depth, and Hardened Build) delivered as a paid plan.
|
|
|
|
<Tip>
|
|
*Our tier names are inspired by the meaning of Sencho (船長), because you're the captain of your container fleet.*
|
|
</Tip>
|
|
|
|
## Plans
|
|
|
|
| Tier | Annual (per mo, billed yearly) | Monthly | Seats |
|
|
|------|--------------------------------|---------|-------|
|
|
| **Community** | Free | Free | Unlimited |
|
|
| **Admiral** | $8.25 | $12 | Unlimited |
|
|
|
|
See [the pricing page](https://sencho.io/pricing) for current pricing.
|
|
|
|
### Feature breakdown
|
|
|
|
**Community** is the complete AGPLv3 self-hosted control plane. It includes:
|
|
|
|
- Unlimited nodes, the Monaco compose editor, the full stack file explorer (browse, view, edit, upload, download, rename, chmod, delete; admin role for writes), and the App Store with 199+ one-click templates
|
|
- Real-time container stats, global logs, the interactive network topology graph (Hub, Grouped, and Free layouts), node labels, and stack labels
|
|
- Git sources for compose stacks
|
|
- Multi-node management in both Proxy and Pilot Agent modes
|
|
- Blueprints: fleet-wide compose templates with drift detection (Observe, Suggest, and Enforce), reconciliation, and pin-to-node placement
|
|
- Fleet Federation: cordon and uncordon nodes and pin blueprints to specific hosts
|
|
- Fleet View with search, sort, filter, and node-card drill-down
|
|
- Manual and scheduled fleet snapshots (create, browse, restore, delete) and Remote OTA node updates (per-node and **Update all**)
|
|
- Actions tab (stop stacks fleet-wide by label, assign a label to stacks across nodes, prune Docker resources fleet-wide; admin role required), plus fleet-wide bulk Sencho restart
|
|
- Bulk actions on a label (deploy, stop, or restart every stack tagged with it)
|
|
- Atomic deployments with automatic rollback, and one-click rollback to the previous deployment
|
|
- Auto-update policies for stack images and auto-heal policies for failed containers
|
|
- Scheduled operations across the full action catalog (lifecycle, updates, scans, snapshots, prune)
|
|
- Webhooks (incoming, to trigger deploys from CI/CD) and notification routing (per-stack and per-category rules to Discord, Slack, or any webhook)
|
|
- Custom S3-compatible backup target (bring your own AWS S3, Cloudflare R2, MinIO, Backblaze B2, or Wasabi bucket)
|
|
- Vulnerability scanning: install, update, uninstall, and auto-update the managed Trivy binary, on-demand scans for vulnerabilities, secrets, and misconfigurations, scan comparison, CVE suppressions, and single-scan SBOM export (SPDX, CycloneDX)
|
|
- Private registry credentials for Docker Hub, GitHub Container Registry (GHCR), and custom or self-hosted registries (admin role required)
|
|
- A 14-day recent-activity audit log with Stream and Table views and filtering
|
|
- Alert rules with Discord, Slack, and webhook targets
|
|
- API tokens for CI/CD pipelines and scripts (admin role required)
|
|
- Unlimited accounts with the Admin and Viewer roles
|
|
- Two-factor authentication (TOTP plus backup codes)
|
|
- Single sign-on with Custom OIDC (Authelia, Keycloak, Authentik, Zitadel, Pocket ID, or any spec-compliant OIDC provider) and preset providers for Google, GitHub, and Okta
|
|
|
|
**Admiral** is the official business assurance plan from Studio Saelix. It includes everything in Community, plus:
|
|
|
|
- **Hardened Build:** an Admiral image channel with published supply-chain assurance artifacts
|
|
- **Managed continuity:** Recovery Vault (a managed, off-site snapshot allowance)
|
|
- **Assurance and support:** priority email support and Studio Saelix-backed continuity for production fleets
|
|
- **Governance:** advanced RBAC roles (Deployer, Node Admin, Auditor), scoped permissions per stack or node, and audit log export (CSV, JSON), anomaly detection, and configurable retention beyond the recent window
|
|
- **Directory integration:** LDAP / Active Directory authentication
|
|
- **Current plan availability:** some product surfaces (including AWS ECR credentials and Fleet Sync policy replication) still require an Admiral plan today. That access rule is temporary availability, not the reason Admiral exists. Other operator surfaces may be limited-availability on a given instance and are documented on their own feature pages when enabled.
|
|
|
|
**Planned assurance services** (not available today; no delivery date committed): Release Safety Channel, Production Assurance Reports, and Fleet Beacon.
|
|
|
|
## Free trial
|
|
|
|
Sencho offers a **14-day Admiral trial** so you can evaluate Admiral assurance (priority support path, Recovery Vault, Hardened Build, governance depth including advanced RBAC, LDAP / Active Directory, and audit export) with your real infrastructure before committing. The trial is offered on the monthly and annual Admiral plans.
|
|
|
|
To start a trial:
|
|
|
|
1. Visit the [pricing page](https://sencho.io/pricing).
|
|
2. Switch to the **Annual** or **Monthly** billing tab.
|
|
3. Click **Start 14-day trial** on the **Admiral** card.
|
|
4. Complete the checkout. A valid card is required for verification; you are not charged until the trial ends.
|
|
5. Your license key is emailed to you within a few minutes.
|
|
6. Activate the key in the Sencho dashboard as described in [Activating your license](#activating-your-license).
|
|
|
|
When your trial ends, the card you provided is automatically charged and your plan continues as a paid Admiral subscription. To avoid being charged, cancel from the **Manage subscription** button in **Settings → Admiral Account** (or from your receipt email) any time before day 14.
|
|
|
|
<Tip>
|
|
Fresh installs land on the **Community** tier until you activate a license key. All Community features (unlimited nodes, compose editor, global logs, alerts, Custom OIDC, and more) are available immediately.
|
|
</Tip>
|
|
|
|
## Activating your license
|
|
|
|
Open **Settings → Admiral Account** in the Sencho dashboard. When the license is not active, the **Activate** section sits below the Plan card:
|
|
|
|
<Frame>
|
|
<img src="/images/licensing/license-activate-section.png" alt="The Activate section of the License page on a Community-tier instance, with a License key input field and an Activate button on the right" />
|
|
</Frame>
|
|
|
|
1. Paste your key into the **License key** field.
|
|
2. Click **Activate**.
|
|
|
|
Sencho validates the key and activates your plan. If activation fails, the toast surfaces the verbatim error; common causes are an invalid key, a typo, or an activation limit reached on a previous instance.
|
|
|
|
## The Plan section
|
|
|
|
When a license is active, **Settings → Admiral Account** opens on the **Plan** section. The page masthead at the top exposes three stat pills, and the section below lists the metadata for the active license.
|
|
|
|
<Frame>
|
|
<img src="/images/licensing/license-admiral-active.png" alt="License page showing an active Sencho Admiral license, with the Plan section listing the Customer, Product, and masked License key fields and a Deactivate button" />
|
|
</Frame>
|
|
|
|
The masthead pills are:
|
|
|
|
| Pill | Meaning |
|
|
|------|---------|
|
|
| **SCOPE** | Reads `operator` when you are signed in as an admin. |
|
|
| **PLAN** | The current tier: `community` or `admiral`. Trial licenses show `admiral`. |
|
|
| **RENEWS** / **TRIAL** / **STATUS** | `RENEWS: <date>` for active subscriptions, `TRIAL: Xd left` for trials, and `STATUS: expired` for expired licenses. |
|
|
|
|
The **Plan** card lists:
|
|
|
|
- **Tier name** (e.g. `Sencho Admiral`) with a short status line, such as "Active license on this control plane", "Trial: X days remaining", or "Your license has expired."
|
|
- **Customer**: the customer name on the purchase.
|
|
- **Product**: the purchased product (e.g. `Sencho Admiral`).
|
|
- **License key**: the last four characters of your key, displayed as `****-****-****-XXXX`. The full key is never re-displayed after activation.
|
|
|
|
## Managing your subscription
|
|
|
|
When the license is an active subscription, the Plan section action row exposes **Manage subscription** alongside **Deactivate**. **Manage subscription** opens the billing portal in a new tab, where you can update your payment method, view invoices, cancel, or switch plans.
|
|
|
|
The same portal is reachable from the profile menu in the top-right corner of the app:
|
|
|
|
<Frame>
|
|
<img src="/images/licensing/profile-menu.png" alt="Profile dropdown popover showing an identity header with the admin role and Admiral tier badges, a navigation strip with Settings, Documentation, and Feedback entries, an Appearance theme picker, and a Log Out button" />
|
|
</Frame>
|
|
|
|
Click your initials in the top-right corner to open the popover. For active subscription licenses, a **Billing** row appears between **Settings** and **Documentation** that opens the same portal as **Manage subscription**.
|
|
|
|
## License validation
|
|
|
|
Active licenses are re-validated every **72 hours**. If your instance goes offline, there is a **30-day grace period** before it degrades to the Community tier.
|
|
|
|
## License states
|
|
|
|
The License page renders differently depending on the license status:
|
|
|
|
| Status | Plan section | Activate section | Pricing section |
|
|
|--------|--------------|------------------|-----------------|
|
|
| **Community** | `Sencho Community` with "Community plan. Full AGPLv3 self-hosted control plane." | Visible | Visible |
|
|
| **Trial** | `Sencho Admiral (Trial)` with a countdown chip | Visible (so a paid key can replace the trial) | Hidden |
|
|
| **Active subscription** | Tier name with Customer, Product, License key, plus `Manage subscription` and `Deactivate` | Hidden | Hidden |
|
|
| **Expired** | `Sencho Community` with "Your Admiral license has expired. Renew to restore Admiral assurance (priority support, Recovery Vault, Hardened Build, and governance)." and a destructive **Status: Expired** field | Visible | Visible |
|
|
| **Disabled** | `Sencho Community` with "Your license has been disabled. Contact support for assistance." | Visible | Visible |
|
|
|
|
The **Pricing** section, when visible, holds a single **See pricing** button that opens [the pricing page](https://sencho.io/pricing) in a new tab so you can pick a tier and billing cadence.
|
|
|
|
<Frame>
|
|
<img src="/images/licensing/license-community.png" alt="License page on a Community-tier instance, with the masthead showing SCOPE operator and PLAN community, then the Plan section reading 'Sencho Community · Community plan. Full AGPLv3 self-hosted control plane.', the Activate section with the License key input, and the Pricing section with the See pricing button" />
|
|
</Frame>
|
|
|
|
## Multi-node license enforcement
|
|
|
|
If you manage multiple servers through Sencho's [multi-node feature](/features/multi-node), you only need a license on your **control instance**. All remote nodes automatically inherit the control instance's license tier for proxied requests. No per-node activation is required.
|
|
|
|
For details on how this works, see [License enforcement across nodes](/features/multi-node#license-enforcement-across-nodes).
|
|
|
|
## Deactivating a license
|
|
|
|
To transfer your license to a different instance:
|
|
|
|
1. Go to **Settings → Admiral Account**.
|
|
2. Click **Deactivate** in the Plan section.
|
|
3. On your new instance, paste the same license key into **License key** and click **Activate**.
|
|
|
|
Deactivation reverts the current instance to the Community tier immediately.
|
|
|
|
Having trouble with your license? See the [Troubleshooting](/operations/troubleshooting#license-tier-shows-the-wrong-name) page for solutions to common licensing issues.
|