This repository has been archived on 2026-04-03 . You can view files and clone it. You cannot open issues or pull requests or push a commit.
22c70034c63d6f5c5afd47d9a40a8200eaa0f9b9
Shell navigation: - sw.shell.Topbar — composable nav bar (title + slot + bell + user menu) - Topbar CSS in sw-shell.css, wired into SDK via dynamic import Schedules surface (packages/schedules/): - Wraps kernel /api/v1/schedules CRUD + run + logs - Table view with cron badge, human-readable preview, enable toggle - Create/edit dialog with live cron-to-english preview Manifest icons: - icon field in manifest.json (emoji string) - Surfaces API returns icon from package manifest - UserMenu renders per-surface icons UserMenu cleanup: - Removed dead Chat/Notes/Projects hardcoded links - Menu now driven by /api/v1/surfaces API (installed surfaces only) - Core surfaces filtered via CORE_IDS set Bug fixes: - isAdmin() in can.js now checks surface.admin.access RBAC grant instead of deprecated user.role column (v0.2.0 regression) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Switchboard Core
A self-hosted extension platform. Identity, teams, permissions, workflows, and a package system. Everything else ships as installable extensions.
What This Is
Switchboard Core is the kernel. It provides the primitives that extensions build on: users, teams, groups, scoped credentials, a Starlark sandbox, workflow orchestration, notifications, and a package installer. It does not include AI chat, providers, personas, or any domain-specific features — those are all extension packages.
Stack
- Backend: Go / Gin
- Frontend: Preact + htm (no build step)
- Database: PostgreSQL (production) + SQLite (dev/test/edge)
- Sandbox: Starlark with capability-gated modules
- Deployment: Single Docker image, Kubernetes
Quick Start
git clone <repo-url> && cd switchboard-core
cp server/.env.example server/.env # edit DB credentials
cd server && go run .
# → http://localhost:8080
Kernel Features
- Auth: Builtin password, mTLS (client cert), OIDC (Keycloak et al.)
- Teams & Groups: Horizontal isolation + vertical permissions
- Packages: Unified registry for surfaces, extensions, libraries, workflows
- Starlark Sandbox: Capability-gated server-side scripting for extensions
- Workflows: Staged processes with forms, review, and webhooks
- Connections: Scoped credential storage (global/team/personal), AES-256-GCM encrypted
- Notifications: In-app with per-type preferences
- Audit Log: All admin operations logged
- Object Storage: PVC or S3-compatible
- Multi-Replica HA: PG-backed WS tickets and rate limit counters
Documentation
- Architecture — kernel components and design reasoning
- Roadmap — current status and planned milestones
- Changelog — version history
Project Status
v0.1.0 (in progress) — kernel extracted from chat-switchboard v0.38.5. ~44K lines of chat/AI code removed, 27 kernel tables, 20 store interfaces. See ROADMAP.md for details.
License
Proprietary. All rights reserved.
Description