-
v1.7.3-dev - Providers screen Pre-release
released this
2026-05-09 15:12:13 +02:00 | 223 commits to main since this releaseProviders Screen
Operator can list, create, test, and delete model providers.
Features:
- ProvidersView.vue — full CRUD against /api/providers
- Provider list with ENABLED/DISABLED status badge
- Add Provider form: name, type (Ollama/OpenAI/Anthropic), base URL, API key
- Test button calls POST /api/providers/{id}/test and shows result alert
- Delete button removes provider from list
- panel-header and inline-form CSS components added
Next: v1.7.4-dev Conversations screen
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-05-09 15:10:58 +02:00 | 224 commits to main since this releaseAuthenticated Layout and Role-Aware Navigation
Login overlay gates all dashboard views. Role badge and logout in sidebar.
Features:
- authStore (Pinia) — login(), logout(), isAuthenticated, role, isOwner, isAdmin, canWrite
- Token persisted to localStorage (synapse_token + synapse_user), restored on load
- POST /api/auth/login called with credentials, token stored
- api.ts refactored — authHeaders() injects Bearer token; get/post/del helpers replace raw fetch calls
- App.vue shows login-overlay when not authenticated; main shell when authenticated
- Login form: username + password, error display, submit on Enter
- Sidebar footer shows SSE/WS badges + role label + logout button
Next: v1.7.3-dev Providers screen
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v1.7.1-dev - Vue Router, Pinia, view structure Pre-release
released this
2026-05-09 15:07:59 +02:00 | 225 commits to main since this releaseVue Router, Pinia State Management, View Structure
Dashboard refactored from single-file tab component to proper routed multi-view application.
Features:
- vue-router 4.5 + pinia 2.3 added to package.json
- router/index.ts — hash history, lazy-loaded routes for all 9 screens
- appStore (Pinia) — global error/loading state
- liveStore (Pinia) — SSE log stream + WS conversation events, shared across views
- main.ts updated to register router and pinia
- App.vue refactored to sidebar shell + RouterView — handles stream connections globally
- All views extracted: OverviewView, AgentsView, RoutingView, PluginsView, StoreView, LogsView
- ProvidersView, ConversationsView, SettingsView — stubs for next steps
- RouterLink-based nav with router-link-active class
- SSE/WS status badges in sidebar footer
- Sidebar updated to flex-column for bottom-anchored status
Next: v1.7.2-dev Authenticated layout and role-aware navigation
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-05-09 15:00:16 +02:00 | 226 commits to main since this releaseV11 Migration Conflict Fix
V11 tried to create plugin_stats which already exists in V1 initial schema.
Error:
- V1__initial_schema.sql already defines plugin_stats (downloads, stars, bundle_count for marketplace stats)
- V11__add_plugin_stats.sql tried CREATE TABLE plugin_stats — duplicate → Flyway failure
Fix:
- Renamed PluginStats entity table to plugin_operational_stats
- V11 now creates plugin_operational_stats (install_count, enable_count, disable_count, last_used_at)
- V1 plugin_stats remains unchanged for marketplace/store stats
Followup to v1.6.5-dev.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-05-09 15:00:16 +02:00 | 226 commits to main since this releaseSYNAPSE v1.7.0 — Plugin and Store Runtime
Full plugin lifecycle, store registry sync, bundle install, stats tracking, and safety enforcement.
Changelog
v1.6.1-dev — Plugin Manifest Parser and Validator
- PluginManifest record with fromMap() factory
- ManifestValidator — required fields, id format, type enum, semver, description length
- ValidationResult record — ok()/fail() factories
v1.6.2-dev — Plugin Install/Enable/Disable/Uninstall APIs
- PluginLifecycleService — install (validates first), enable, disable, uninstall
- Lifecycle events logged to system log and event bus
- PluginController — POST /install, POST /{id}/enable, POST /{id}/disable, DELETE /{id}
v1.6.3-dev — Store Registry Sync
- StoreEntry entity — PLUGIN/BUNDLE types, source, version, tags (jsonb), meta (jsonb)
- StoreRegistryService — parses store/registry.yml, upserts plugins and bundles
- StoreRegistrySyncRunner — syncs on startup (non-fatal)
- GET /api/store with optional ?type filter
- Migration V10, docker-compose mounts store volume
v1.6.4-dev — Bundle Validation and Install Flow
- BundleInstallService — validateBundle(), installBundle() installs all plugins in order
- BundleInstallResult record with success/installed/errors
- POST /api/store/{id}/validate, POST /api/store/{id}/install
v1.6.5-dev — Plugin Stats Tracking
- PluginOperationalStats entity (plugin_operational_stats table) — install/enable/disable counts, last_used_at
- PluginStatsService — recordInstall/Enable/Disable(), upsert on each lifecycle action
- GET /api/plugins/stats, GET /api/plugins/{id}/stats
- Migration V11
v1.6.6-dev — Dashboard Plugin and Store Views
- Plugins tab: installed list with status badge + enable/disable/uninstall controls
- Store tab: registry entries with Install Bundle action
- api.ts: fetchPlugins, enablePlugin, disablePlugin, uninstallPlugin, fetchStore, installBundle
v1.6.7-dev — Plugin Safety Rules
- PluginTrustLevel enum — VERIFIED, COMMUNITY, UNVERIFIED
- PluginSafetyPolicy record with warnings list and requiresConfirmation flag
- PluginSafetyService — maps source to trust level, blocks unconfirmed community installs
- POST /api/plugins/install?confirmed=false (default), POST /api/plugins/install/assess
v1.6.8-hotfix — V11 Migration Conflict Fix
- V1 already defined plugin_stats; renamed operational table to plugin_operational_stats
Exit Criteria Met
- Operator can install a local plugin manifest (with safety enforcement)
- Operator can enable or disable installed plugins
- Store entries are queryable via backend API
- Bundle install flow validates and installs all referenced plugins
Next milestone: v1.8.0 — Dashboard Management
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-05-09 14:55:35 +02:00 | 227 commits to main since this releasePlugin Safety Rules
Community and unverified plugins blocked at install without explicit operator confirmation.
Features:
- PluginTrustLevel enum — VERIFIED, COMMUNITY, UNVERIFIED
- PluginSafetyPolicy record — trustLevel, requiresConfirmation, warnings list; verified()/community()/unverified() factories
- PluginSafetyService — assess() maps source to trust level, safeInstall() blocks unconfirmed community installs
- Verified sources: official, acp — no confirmation needed
- Community sources: community, skills_sh — require confirmed=true
- Unknown/blank sources — UNVERIFIED, require confirmed=true
- POST /api/plugins/install now takes ?confirmed=false by default
- POST /api/plugins/install/assess — returns SafetyPolicy without installing
- PLUGIN_SAFETY_ASSESSED event logged on every install attempt
Next: Docker Compose test, then v1.7.0 release
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-05-09 14:54:28 +02:00 | 229 commits to main since this releaseDashboard Plugin and Store Management Views
Two new tabs for managing installed plugins and browsing the store.
Features:
- Plugins tab: list installed plugins with status badge + enable/disable/uninstall controls
- Store tab: list all store entries (PLUGIN/BUNDLE) with Install Bundle action for bundles
- api.ts: fetchPlugins(), enablePlugin(), disablePlugin(), uninstallPlugin(), fetchStore(), installBundle()
- Plugin and StoreEntry TypeScript interfaces
- Nav updated with Plugins and Store links
- Reload after bundle install to refresh plugin list
Next: v1.6.7-dev Safety rules for community plugin installs
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v1.6.5-dev - Plugin stats tracking Pre-release
released this
2026-05-09 14:52:46 +02:00 | 230 commits to main since this releasePlugin Stats Tracking
Install, enable, and disable counts per plugin with last-used timestamp.
Features:
- PluginStats entity — install_count, enable_count, disable_count, last_used_at, updated_at
- PluginStatsService — recordInstall(), recordEnable(), recordDisable(), upsert on each action
- PluginLifecycleService wired to call stats on install/enable/disable
- PluginController extended: GET /api/plugins/stats, GET /api/plugins/{id}/stats
- Migration V11 with plugin_stats table
Next: v1.6.6-dev Dashboard plugin/store management views
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v1.6.4-dev - Bundle validation and install flow Pre-release
released this
2026-05-09 14:50:55 +02:00 | 231 commits to main since this releaseBundle Validation and Install Flow
Validates bundles against store registry and installs all referenced plugins.
Features:
- BundleInstallService — validateBundle() checks entry exists, is BUNDLE type, all referenced plugins exist in store
- installBundle() — installs each plugin in order, skips already-installed, logs BUNDLE_INSTALLED
- BundleInstallResult record — success, installed list, errors list
- StoreController extended: POST /api/store/{id}/validate, POST /api/store/{id}/install
- Type inference for plugin manifests built from store entries (channel/model/mcp/skill from tags)
Next: v1.6.5-dev Plugin stats tracking
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-05-09 14:49:42 +02:00 | 232 commits to main since this releaseStore Registry Sync
Store entries synced from local store/registry.yml into the database on startup.
Features:
- StoreEntry entity — id, name, type (PLUGIN/BUNDLE), source, version, author, license, description, minSynapse, tags (jsonb), meta (jsonb), syncedAt
- StoreEntryRepository — findByType(), findBySource()
- StoreRegistryService — parses plugins[] and bundles[] from registry YAML, upserts to DB, logs STORE_SYNCED
- StoreRegistrySyncRunner — ApplicationRunner, loads on startup, non-fatal on error
- StoreController — GET /api/store (optional ?type=PLUGIN|BUNDLE filter)
- Migration V10 with store_entries table
- docker-compose mounts ../../store:/app/store:ro, sets SYNAPSE_STORE_REGISTRY_PATH
Next: v1.6.4-dev Bundle validation and install flow
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads