Skip to content

v0.17.0

Choose a tag to compare

@alternayte alternayte released this 02 Nov 07:01
· 57 commits to main since this release

The control plane for AI agent skills. Publish, sync, scan, and track SKILL.md files across your team's agents.

Install

# macOS (Homebrew)
brew install --cask skael-dev/skael/skael

# Linux
curl -fsSL https://skael.dev/install.sh | sh

# Docker
docker pull ghcr.io/skael-dev/skael:0.17.0

# Windows: download the .zip for your architecture below

Self-host the platform

Bring your own Postgres — DATABASE_URL is the only required env var:

docker run -p 8080:8080 \
  -e DATABASE_URL="postgres://user:pass@host:5432/skael?sslmode=disable" \
  ghcr.io/skael-dev/skael:0.17.0

Migrations run automatically on startup. Or use docker compose up -d to bundle Postgres.

The optional evaluation worker is published beside it, as ghcr.io/skael-dev/skael-worker:0.17.0. It needs a Docker socket and an LLM key, so it runs separately from the server. On a new instance, sign up at http://localhost:8080 to create the owner account and a personal API key. An upgraded instance has no working passwords after this release. Before you open the dashboard, run docker exec <container> /skael-server reset-password --email <owner email>, or skael-server reset-password --email <owner email> on a bare-metal install. The command prints a temporary password for the owner.

What's in this release

People now sign in through auth-all. This adds single sign-on and two-factor authentication, and it breaks every password and session once.

Before you upgrade

  • Every person signs in again, and every password stops working. Run skael-server reset-password --email <owner email> first. The owner then issues temporary passwords from Settings > Team.
  • To use SSO on an existing account, sign in with a password first. Then link the provider in Settings > Security.
  • The migration stops if two users differ only by email case or spacing. Rename or remove one of them, then restart.
  • API keys, service accounts, hooks, workers and CI keep working. No key changes, and no hook setup needs a re-run.
  • The account routes changed. /api/auth/login, signup, logout, me and change-password are gone. Use /api/auth/sign-in/email, sign-up/email, sign-out, session and password/change.

New sign-in options

  • SSO through any OpenID Connect provider, Google or GitHub. Set PUBLIC_URL and the provider variables. An existing user signs in with a password, then links the provider.
  • DISABLE_SIGNUP=true no longer stops OIDC. The identity provider is the gate. Use SIGNUP_ALLOWED_DOMAINS to limit every path to your domains.
  • Two-factor authentication. Each person turns it on in Settings > Security.
  • Self-service password reset. Set the SMTP_* variables.

For operators

  • The owner can disable a user. Disable ends the user's sessions and stops their keys at once.
  • audit_log records account and access changes. Sign-ins go to the server log only.
  • Clients now send Authorization: Bearer. The server still accepts X-API-Key, so installed hooks keep working.

Other changes

  • The Linux install command works again. curl -fsSL https://skael.dev/install.sh | sh returned 404, because skael.dev did not serve the script. It does now.
  • The docs describe only the current version. Upgrade steps for this release are here, not in the docs.

Every commit in this release: v0.16.0...v0.17.0