Commit graph

6 commits

Author SHA1 Message Date
Nexus Dev
1a0d611cb1 refactor(nexus): consolidate Settings into single-column scroll page (phase 13)
Rewrites InstanceGeneralSettings.tsx into the consolidated /instance/
settings/general destination per spec §8.1 — a single-column scroll
that stacks eight section cards (Workspace, Local AI, Cloud Providers,
Skills, Routines, Telegram, About, Danger Zone).

App.tsx nested settings sub-routes collapse:
 - /instance/settings/heartbeats → redirect to /general
 - /instance/settings/experimental → redirect to /general
The /instance/settings/plugins tree is left intact: it is a
plugin-system surface with its own pages, not a settings sub-page.

Deletes InstanceSidebar.tsx (already unmounted by Phase 8),
InstanceSettings.tsx (scheduler heartbeats dashboard, folded out per
spec), and InstanceExperimentalSettings.tsx (experimental toggles are
now part of the Workspace section).

Also fixes ToastInput shape (title/tone instead of message/type) in
CloudProvidersSection and TelegramSection, and drops the unavailable
cronExpression access in RoutinesSection since the RoutineListItem
trigger Pick does not include it.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 13:28:40 +00:00
Nexus Dev
6aeadeeb11 feat(nexus): add Telegram, About, and DangerZone settings cards (phase 13)
TelegramSection wraps /telegram/token (masked password Input) and
/telegram/status so the bot token can be set or replaced inline.
Values are never logged.

AboutSection renders app name, version, fork lineage, and MIT license
with an outbound link.

DangerZoneSection marks the reset-workspace and delete-all-
conversations actions from spec §8.1 as disabled placeholders — their
server endpoints are not yet wired, and fabricating fake ones would
break the "preserve existing functionality" rule.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 13:25:26 +00:00
Nexus Dev
c417ce37f9 feat(nexus): add Skills and Routines settings cards (phase 13)
SkillsSection surfaces installed skill and skill-group counts and
links out to the existing Skill Aggregator (CompanySkills page) at
/<prefix>/skills. The full browse/install/assign UI stays put; the
section is a compact summary + entry point per plan recommendation.

RoutinesSection renders the top five routines as a compact read-only
list (title, cron label, status) and links out to /<prefix>/routines
for the full interactive editor. Single responsibility per page,
matches the plan's recommendation (a) for Routines fold-in.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 13:23:20 +00:00
Nexus Dev
f41690ff30 feat(nexus): add LocalAI and CloudProviders settings cards (phase 13)
LocalAISection surfaces the Hermes adapter tier, Whisper/Piper voice
availability, and the global voice toggle wired through nexus-settings.

CloudProvidersSection lists Anthropic and OpenAI API key slots; keys
are set via the existing /api-keys/store endpoint and rendered as a
password-type Input so values are masked on display and never logged.
Presence is derived from the workspace secret vault.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 13:20:14 +00:00
Nexus Dev
8953fb13ab feat(nexus): add WorkspaceSection settings card (phase 13)
First of eight section cards for the consolidated Settings page. Folds
in theme toggle, re-run onboarding trigger, keyboard shortcuts, log
censoring, feedback sharing preference, and the two experimental
toggles (isolated workspaces, dev-server auto-restart) that previously
lived at /instance/settings/experimental.

Preserves all existing form validation, save handlers, and error
toasting from InstanceGeneralSettings and InstanceExperimentalSettings.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 13:17:40 +00:00
Nexus Dev
7aa98d385f feat(nexus): add SettingsSection shell primitive (phase 13)
Shared section card shell for the Nexus Settings page per spec §8.2:
1px charcoal border, 8px radius, transparent fill, uppercase silver
title with hairline rule. Used by all 8 section cards that replace the
nested Paperclip instance-settings tree.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 13:16:32 +00:00