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.
ec750f4981bdb7e49d6f9890f6fd01721f5f76cf
Fix compilation: - Add missing role constants (UserRoleUser/Admin, TeamRoleAdmin) - Add missing ExtTier constants (browser, starlark, sidecar) - Recreate PolicyStore interface + implementations (platform_policies table) - Recreate handler helpers (getUserID, parsePagination, isDuplicateErr) - Recreate Starlark type conversion helpers (jsonToStarlark, starlarkValueToGo) - Add ParseSchemaVersion + RunSchemaMigrations stubs - Fix sandbox/runner.go orphaned braces from deleted block - Fix pages/loaders.go broken adminLoader (remove model roles code) - Remove stale imports across 6 files - Replace deleted AuthOrSession middleware with AuthOrRedirect (TODO v0.2.0) Fix tests: - Recreate test_helpers_test.go (testHarness, makeToken, seedInsertReturningID, decode) - Remove broken test files: route_test.go, workflow_test.go, profile_test.go - Remove stale sandbox/provider_module_test.go (imports deleted package) - Remove stale notification memory test (references deleted feature) - Fix events/bus_test.go expectations (chat routes removed) Result: go build ./... clean, go test ./... all 8 packages pass. 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