Skip to content

Sync master updates into feature/photo-booth#52

Merged
simonCatBot merged 7 commits intosimonCatBot:feature/photo-boothfrom
kiritigowda:sync/master-to-photo-booth
May 4, 2026
Merged

Sync master updates into feature/photo-booth#52
simonCatBot merged 7 commits intosimonCatBot:feature/photo-boothfrom
kiritigowda:sync/master-to-photo-booth

Conversation

@kiritigowda
Copy link
Copy Markdown
Contributor

Summary

Conflict Resolution

7 files had merge conflicts, all resolved:

File Strategy
ConnectionPage.tsx Take master's full redesign
TabBar.tsx Keep Photo tab + master's accessibility (toolbar role, aria-pressed, dynamic labels)
page.tsx Remove stale ConnectionPanel overlay, use master's tab-toggle approach
TasksDashboard.tsx Use master's typed runBusy state (string | null)
README.md Take master's revamped structure
tests/e2e/* Update selectors to match redesigned UI
tests/unit/tabBar.test.ts Master's accessibility patterns + 10-tab count for photo-booth

Verification

  • npm run typecheck — passes
  • npm run lint — 0 errors (9 pre-existing warnings in photo-booth code)
  • npm run test — 160 files, 1,362 tests all passing

🤖 Generated with Claude Code

kiritigowda and others added 7 commits April 24, 2026 11:23
simonCatBot#46)

* AI - updates

* fix: resolve usability bugs, improve UX and accessibility across dashboard

Fix 6 bugs: connection panel backdrop click, tasks tab toggle-off,
shared copy status, settings save deception, token usage silent fallback,
footer version spacing.

Add 10 high-priority UX improvements: loading skeletons for system metrics
and token usage, error retry buttons, WAI-ARIA tablist keyboard navigation,
modal focus trapping and escape key support, empty state guidance for fleet
sidebar, gateway URL inline validation, semantic header with skip navigation,
connection-loss banners in chat, and send button disabled-state tooltips.

Add 14 medium-priority improvements: agent search/filter in sidebar,
tab state persistence to localStorage, semantic landmarks (main, nav, aside),
ARIA tab roles on connection page tabs, auto-retry status messaging,
DnD screen reader announcements, escape key for dropdown menus, and
menu semantics (role=menu/menuitem, aria-expanded, aria-haspopup).

Add 12 accessibility fixes: chat composer focus indicator, reduced motion
media query, aria-labels on all icon buttons, role=log on chat transcript,
footer landmark label, increased touch targets to 32px, and password
toggle aria-label.

Update all documentation (README, CLAUDE.md, ARCHITECTURE, CONTRIBUTING,
CHANGELOG, permissions-sandboxing) to reflect current codebase state.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: address review findings from post-implementation audit

- Make FleetSidebar filter/onFilterChange props optional (were required
  but unused, causing dead code in parent)
- Add scrollbar-hide CSS utility (was referenced but undefined)
- Validate tab IDs from localStorage against VALID_TAB_IDS set to
  prevent stale/invalid tab IDs from accumulating
- Update CHANGELOG.md with all new features and bug fixes from this
  session (search filter, tab persistence, accessibility improvements,
  loading skeletons, error retry, ARIA attributes, etc.)
- Update README.md and CLAUDE.md to mention agent search/filter

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* test: add unit tests for UI components (TabBar, FleetSidebar, modals, toggles, footer, header)

Add 133 new tests across 11 test files covering accessibility features,
keyboard navigation, ARIA attributes, search filtering, and component
rendering for all UI components modified in the usability improvements.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(e2e): update selectors for ARIA role changes in TabBar, ConnectionPage, and AvatarModeToggle

TabBar tabs changed from role="button" to role="tab", ConnectionPage
tabs added role="tab", AvatarModeToggle dropdown items changed from
role="button" to role="menuitem", and FleetSidebar empty state text
changed from "No agents available." to "No agents yet".

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…nCatBot#49)

* fix(graph): keep SystemGraphView mounted so history data survives tab toggles

Use CSS hidden instead of conditional rendering so the component stays
mounted and continues polling. Toggling the graph tab off and back on
now preserves all collected data points.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(tabs): default to agents, system, and graph on first load

Change connection tab from defaultActive: true to false so fresh loads
show exactly agents + system metrics + system graph view.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: comprehensive bug fixes, security hardening, and accessibility

- Fix blank screen when deselecting exclusive tabs (return defaults instead of [])
- Keep System/Tokens tabs mounted via CSS hidden to preserve state
- Add dismissable error banner with Escape key support
- Fix settings-store crash on corrupt/empty JSON (graceful fallback)
- Fix mergeROCclawPatch dropping gatewayAutoStart and avatarSources fields
- Fix adapter stop() hang during CONNECTING state (settle startPromise)
- Fix TasksDashboard drag-over highlighting (useRef → useState)
- Fix per-job runBusy tracking (boolean → string | null)
- Add error feedback to TasksDashboard handlers
- Remove unused useRef import from TasksDashboard
- Security: remove stack traces from API error responses
- Security: whitelist cron-add request body fields
- Security: fix info leak in gateway-info/metrics (hide bootstrap details)
- Add runtime="nodejs" to usage, gateway-info, gateway-metrics routes
- Fix usage route messageCount double-counting across models
- Accessibility: TabBar role="tablist" → role="toolbar" with aria-pressed
- Accessibility: TasksDashboard modals get role="dialog", aria-modal, Escape key
- Accessibility: connection overlay gets role="dialog", aria-modal, Escape key
- Update tests for new TabBar ARIA pattern, settings fallback, patch merge

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(e2e): update tab selectors for toolbar ARIA pattern

E2E tests used getByRole("tab") which no longer matches after
the TabBar was changed from role="tablist" to role="toolbar"
with toggle buttons. Updated to getByRole("button", { name }).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(settings): wire theme picker to actual theme system

The SettingsPanel theme picker was writing to a localStorage key
("rocclaw-ui-settings") that nothing read, while the working
theme system (ColorSchemeToggle) used a different key ("theme").

- SettingsPanel now applies theme changes immediately to the DOM
  using the same "theme" localStorage key as ColorSchemeToggle
- Added "system" theme support (follows OS preference)
- Compact mode applies immediately via CSS class toggle
- Removed Save button (UI settings now apply instantly)
- Added cross-component sync via "rocclaw-theme-change" event
  so footer toggle and settings panel stay in sync

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
)

* docs: revamp README to lead with value proposition and skills

- Replace architecture-heavy intro with user-facing 'Why rocCLAW?' section
- Add 'What You Can Do' workflow sections (Chat, Skills, Monitor, Autopilot, Configure, Remote, Security)
- Highlight ClawHub skills marketplace with featured skills table
- Move project structure, detailed tech stack, and architecture diagram to docs/
- Reframe personality files and permissions as benefits, not specs
- Tighten Quick Start, Installation, and Troubleshooting sections

* docs: second pass — tighten skills, fix tab count, reduce table bloat

- Fix tab count (8 → 9, Skills tab was added)
- Reorganize skills by category instead of flat table
- Add clawhub.ai links to skills section
- Reframe 'Why rocCLAW?' as an addition, not a fix
- Replace personality files table with compact inline list
- Compress permissions section into one paragraph + link
- Remove editorializing from Quick Start

* docs: add AMD disclaimer — not an official AMD product

* docs: add acknowledgments — Ollama, Kimi K2, GLM 5.1, Claude

* docs: add tested GPU configurations — Strix Halo, Strix Point, RDNA 3, fallback

* docs: add tested OS configurations — Ubuntu 24.04, 22.04, generic Linux

* docs: add hybrid local + cloud fleet section

- Frame rocCLAW as fleet orchestrator for cost-efficient hybrid deployments
- Local LLMs for routine work, cloud models for complex reasoning
- Per-agent skills as workload tiering mechanism
- Token dashboards for spend visibility

* docs: restructure README for flow and readability

- Move Quick Start above features (was buried after a wall of content)
- Elevate Skills and Hybrid Fleet to top-level sections with emoji headers
- Collapse Dashboard Overview to a single line (was a redundant table)
- Merge Monitoring into its own concise section (was buried mid-list)
- Fold Security into 'Stay in control' (was a separate wall)
- Move Installation + Setup Guides after features (Quick Start links to them)
- Fix footer ordering: links, then disclaimer, then acknowledgments
- Net: -67 lines, same content, better hierarchy

---------

Co-authored-by: Simon <simon@example.com>
…imonCatBot#50)

* feat(connection): redesign ConnectionPage into single-page smart UI with install guide

Replace the 4-tab layout (Local/Client/Cloud/Remote) with a unified
connection page featuring environment detection banners, a two-column
layout (getting started guide + connection form), and a collapsible
advanced setup section. Remove the separate ConnectionPanel overlay —
the footer Plug button now toggles the Connection tab directly.

Add comprehensive install guide (docs/INSTALL.md) for Ubuntu 24.04
covering prerequisites, setup, remote access, and troubleshooting.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(e2e): update all E2E tests for new ConnectionPage selectors

Update 6 E2E test files that referenced the old ConnectionPanel overlay
(gateway-connection-overlay), old label selectors (Upstream URL/token),
and the old "Save Settings" button. Tests now use the Connection tab
toggle, #gateway-url/#gateway-token CSS selectors, and "Connect" button.
Fix strict mode violations where "Disconnect" matched both banner and
form buttons by using .first() selector.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(connection): restore 4-tab layout and fix startup scrolling

Restore the Local/Client/Cloud/Remote tabs with their scenario-specific
instructions while keeping the improvements from the redesign: environment
detection banner, error/test result display, token chips (Stored /
Auto-detected), single Connect/Disconnect button, CommandBlock helper.

Fix scrolling in ConnectionSetupView (startup flow) by removing
overflow-hidden from the outer container so content can scroll naturally
when rendered in a full-page context.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(connection): remove Tailscale from UI, expand docs, match app layout

- Remove all Tailscale references from ConnectionPage tabs — Client,
  Cloud, and Remote tabs now show SSH-only instructions with autossh
  persistent tunnel guidance
- Expand docs/INSTALL.md Remote Access section with detailed SSH
  (tunnels, autossh, systemd, key auth) and Tailscale (install, serve,
  ACLs, troubleshooting) documentation plus a comparison table
- Restyle ConnectionSetupView to match the main dashboard layout:
  h-dvh fixed viewport, matching padding, panel wrapper with
  overflow-hidden, and a simplified footer with status dot, branding,
  and theme toggle
- Fix startup scroll by removing overflow-hidden from ConnectionPage
  outer container (parent provides the constraint)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Simon <simoninmatrix@gmail.com>
Bring 4 commits from master into feature/photo-booth:
- Redesign ConnectionPage into single-page smart UI with install guide (simonCatBot#50)
- docs: Revamp README — value proposition and skills first (simonCatBot#51)
- fix(graph): keep SystemGraphView data sticky across tab toggles (simonCatBot#49)
- fix: usability improvements, accessibility, and comprehensive UI tests (simonCatBot#46)

Conflict resolution strategy:
- ConnectionPage: take master's full redesign
- TabBar: keep Photo tab + master's accessibility improvements (toolbar role, aria-pressed)
- page.tsx: remove stale ConnectionPanel overlay, keep master's tab-toggle approach
- TasksDashboard: use master's typed runBusy state (string | null)
- README: take master's revamped structure
- Tests: update selectors to match new UI patterns, keep 10-tab count for photo-booth

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…onCatBot#53)

* docs(readme): pivot to hybrid local+cloud fleet as core value proposition

Restructure README to lead with the cost-saving hybrid fleet story:
- Hero tagline: "Run AI agents on your hardware. Use cloud only when you need it."
- New "Local + Cloud Hybrid Fleet" section elevated to top position
- New "Monitor Your Hardware" section connecting GPU metrics to the hybrid story
- Features rewired to reference local-vs-cloud routing throughout
- Skills section ties into workload routing (local ReAct, cloud Plan First)
- Added table of contents, architecture diagram, screenshot placeholders
- Trimmed skills catalog from 11-item list to category table
- Removed hardcoded test counts that drift
- Linked docs/INSTALL.md (was completely unlinked)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): add use-case personas and agent-vs-chatbot framing

Incorporate concepts from the OpenClaw use cases blog post:
- Open "Why rocCLAW?" with tools-vs-agents distinction
- Rewrite autopilot bullet with "works while you don't" angle,
  persistent memory, heartbeats, and sub-agent spawning
- Add "Who Uses This" section with 5 persona-driven use cases:
  solo consultants, side projects, growing teams, content creators,
  and developers — each tied back to local/cloud hybrid routing
- Weave agent memory and messaging integrations into hybrid fleet section

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): rephrase use cases, add bot fleet and skills images

- Rewrite "Why rocCLAW?" with concrete technical examples instead of
  blog-borrowed language (log monitoring, CI pipelines, health checks)
- Replace persona-based "Who Uses This" with technical "Use Cases"
  section: DevOps, software dev, data pipelines, sysadmin, research
- Each use case shows the local/cloud split with specific workloads
- Add bot family hero image representing the hybrid agent fleet
- Add before/after skills images in Skills section showing agent
  transformation from basic tools to rocket scientist

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): showcase 12 built-in skills, mention ClawHub for extras

- Rename "Skills & ClawHub" to "Built-in Skills" — focus on what
  ships with rocCLAW rather than the external marketplace
- List all 12 featured skills with descriptions (was 5-row summary)
- Add Git Workflows skill that was previously missing
- Mention ClawHub as one-click install for additional skills
- Update dashboard tab description and hybrid fleet cross-references

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): move bot fleet image to Why section, enlarge skills images

- Relocate bot family image from hero to "Why rocCLAW?" section header
- Increase skills before/after images from 300px to 420px

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): add bot field guide image to Use Cases section

Agent field guide visual shows each bot cataloged by role and
specialization, reinforcing the use-case-driven fleet approach.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): apply full review fixes and polish

- Swap Quick Start before Hybrid Fleet so users get running first
- Remove duplicate token tracking from Monitor section (kept in Fleet)
- Fold Agent Personality Files into Configure as collapsible details
- Add consistent emoji to all section headers
- Update architecture diagram label to "local GPU / cloud API"
- Add light/dark theme to Settings tab description
- Trim hybrid fleet repetition from What You Can Do bullets
- Fix GLM 5.1 link (glm4 → glm-5.1)
- Update all TOC anchors to match emoji-prefixed headings
- Update internal cross-reference links

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): remove Discord link, standardize requirements section

- Remove Discord link from footer (no Discord server exists)
- Rename "Tested Configurations" to "Requirements & Compatibility"
  with standard Prerequisites, Supported Platforms, and GPU tables
- Add Node.js, npm, and OpenClaw Gateway as explicit prerequisites
- Add macOS and Windows WSL2 as expected-to-work platforms
- Mark GPU monitoring as optional with clearer framing
- Simplify GPU table (remove architecture codes, CU details)
- Fix internal anchor link for GPU section

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): simplify GPU table — remove architecture details

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): add ROCm >= 7.2.1 as optional prerequisite for GPU monitoring

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): redesign footer with centered layout

Consolidate disclaimer, acknowledgments, and license into a clean
centered footer block. Remove the blockquote and bold label styling
in favor of subtle <sub> text with dot separators.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): move Use Cases section after Built-in Skills

Reorder so the flow is: features → hardware monitoring → skills →
use cases (showing how skills + hybrid fleet come together).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): final polish — simplify sections and extract compatibility

- Remove RDNA 3/3.5 specifics from Monitor section
- Move Supported Platforms and GPU Monitoring tables to docs/COMPATIBILITY.md
- Deduplicate Quick Start vs Installation (Quick Start now uses npm install)
- Simplify "Stay in control" bullet to one concise line
- Update footer: "Built by OpenClaw agents using Ollama and Claude"
- Remove empty Notes column from Prerequisites table

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): fix button label, tighten hybrid section, robust TOC anchors

- Fix "Save Settings" → "Connect" to match actual UI
- Remove motivational re-statement from Hybrid Fleet opener (already in Why section)
- Tighten cloud agents and token dashboard bullets
- Fix "warm" → "utilized" for GPU description clarity
- Improve architecture diagram alignment for narrow renderers
- Add explicit HTML anchor IDs to all sections for robust TOC navigation
- Remove emoji-prefix pattern from all internal cross-references
- Replace npm ci with npm install for pre-built package instructions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
@simonCatBot simonCatBot merged commit b19830d into simonCatBot:feature/photo-booth May 4, 2026
kiritigowda added a commit to kiritigowda/rocclaw that referenced this pull request May 5, 2026
* fix: usability improvements, accessibility, and comprehensive UI tests (simonCatBot#46)

* AI - updates

* fix: resolve usability bugs, improve UX and accessibility across dashboard

Fix 6 bugs: connection panel backdrop click, tasks tab toggle-off,
shared copy status, settings save deception, token usage silent fallback,
footer version spacing.

Add 10 high-priority UX improvements: loading skeletons for system metrics
and token usage, error retry buttons, WAI-ARIA tablist keyboard navigation,
modal focus trapping and escape key support, empty state guidance for fleet
sidebar, gateway URL inline validation, semantic header with skip navigation,
connection-loss banners in chat, and send button disabled-state tooltips.

Add 14 medium-priority improvements: agent search/filter in sidebar,
tab state persistence to localStorage, semantic landmarks (main, nav, aside),
ARIA tab roles on connection page tabs, auto-retry status messaging,
DnD screen reader announcements, escape key for dropdown menus, and
menu semantics (role=menu/menuitem, aria-expanded, aria-haspopup).

Add 12 accessibility fixes: chat composer focus indicator, reduced motion
media query, aria-labels on all icon buttons, role=log on chat transcript,
footer landmark label, increased touch targets to 32px, and password
toggle aria-label.

Update all documentation (README, CLAUDE.md, ARCHITECTURE, CONTRIBUTING,
CHANGELOG, permissions-sandboxing) to reflect current codebase state.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: address review findings from post-implementation audit

- Make FleetSidebar filter/onFilterChange props optional (were required
  but unused, causing dead code in parent)
- Add scrollbar-hide CSS utility (was referenced but undefined)
- Validate tab IDs from localStorage against VALID_TAB_IDS set to
  prevent stale/invalid tab IDs from accumulating
- Update CHANGELOG.md with all new features and bug fixes from this
  session (search filter, tab persistence, accessibility improvements,
  loading skeletons, error retry, ARIA attributes, etc.)
- Update README.md and CLAUDE.md to mention agent search/filter

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* test: add unit tests for UI components (TabBar, FleetSidebar, modals, toggles, footer, header)

Add 133 new tests across 11 test files covering accessibility features,
keyboard navigation, ARIA attributes, search filtering, and component
rendering for all UI components modified in the usability improvements.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(e2e): update selectors for ARIA role changes in TabBar, ConnectionPage, and AvatarModeToggle

TabBar tabs changed from role="button" to role="tab", ConnectionPage
tabs added role="tab", AvatarModeToggle dropdown items changed from
role="button" to role="menuitem", and FleetSidebar empty state text
changed from "No agents available." to "No agents yet".

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

* fix(graph): keep SystemGraphView data sticky across tab toggles (simonCatBot#49)

* fix(graph): keep SystemGraphView mounted so history data survives tab toggles

Use CSS hidden instead of conditional rendering so the component stays
mounted and continues polling. Toggling the graph tab off and back on
now preserves all collected data points.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(tabs): default to agents, system, and graph on first load

Change connection tab from defaultActive: true to false so fresh loads
show exactly agents + system metrics + system graph view.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: comprehensive bug fixes, security hardening, and accessibility

- Fix blank screen when deselecting exclusive tabs (return defaults instead of [])
- Keep System/Tokens tabs mounted via CSS hidden to preserve state
- Add dismissable error banner with Escape key support
- Fix settings-store crash on corrupt/empty JSON (graceful fallback)
- Fix mergeROCclawPatch dropping gatewayAutoStart and avatarSources fields
- Fix adapter stop() hang during CONNECTING state (settle startPromise)
- Fix TasksDashboard drag-over highlighting (useRef → useState)
- Fix per-job runBusy tracking (boolean → string | null)
- Add error feedback to TasksDashboard handlers
- Remove unused useRef import from TasksDashboard
- Security: remove stack traces from API error responses
- Security: whitelist cron-add request body fields
- Security: fix info leak in gateway-info/metrics (hide bootstrap details)
- Add runtime="nodejs" to usage, gateway-info, gateway-metrics routes
- Fix usage route messageCount double-counting across models
- Accessibility: TabBar role="tablist" → role="toolbar" with aria-pressed
- Accessibility: TasksDashboard modals get role="dialog", aria-modal, Escape key
- Accessibility: connection overlay gets role="dialog", aria-modal, Escape key
- Update tests for new TabBar ARIA pattern, settings fallback, patch merge

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(e2e): update tab selectors for toolbar ARIA pattern

E2E tests used getByRole("tab") which no longer matches after
the TabBar was changed from role="tablist" to role="toolbar"
with toggle buttons. Updated to getByRole("button", { name }).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(settings): wire theme picker to actual theme system

The SettingsPanel theme picker was writing to a localStorage key
("rocclaw-ui-settings") that nothing read, while the working
theme system (ColorSchemeToggle) used a different key ("theme").

- SettingsPanel now applies theme changes immediately to the DOM
  using the same "theme" localStorage key as ColorSchemeToggle
- Added "system" theme support (follows OS preference)
- Compact mode applies immediately via CSS class toggle
- Removed Save button (UI settings now apply instantly)
- Added cross-component sync via "rocclaw-theme-change" event
  so footer toggle and settings panel stay in sync

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

* docs: Revamp README — value proposition and skills first (simonCatBot#51)

* docs: revamp README to lead with value proposition and skills

- Replace architecture-heavy intro with user-facing 'Why rocCLAW?' section
- Add 'What You Can Do' workflow sections (Chat, Skills, Monitor, Autopilot, Configure, Remote, Security)
- Highlight ClawHub skills marketplace with featured skills table
- Move project structure, detailed tech stack, and architecture diagram to docs/
- Reframe personality files and permissions as benefits, not specs
- Tighten Quick Start, Installation, and Troubleshooting sections

* docs: second pass — tighten skills, fix tab count, reduce table bloat

- Fix tab count (8 → 9, Skills tab was added)
- Reorganize skills by category instead of flat table
- Add clawhub.ai links to skills section
- Reframe 'Why rocCLAW?' as an addition, not a fix
- Replace personality files table with compact inline list
- Compress permissions section into one paragraph + link
- Remove editorializing from Quick Start

* docs: add AMD disclaimer — not an official AMD product

* docs: add acknowledgments — Ollama, Kimi K2, GLM 5.1, Claude

* docs: add tested GPU configurations — Strix Halo, Strix Point, RDNA 3, fallback

* docs: add tested OS configurations — Ubuntu 24.04, 22.04, generic Linux

* docs: add hybrid local + cloud fleet section

- Frame rocCLAW as fleet orchestrator for cost-efficient hybrid deployments
- Local LLMs for routine work, cloud models for complex reasoning
- Per-agent skills as workload tiering mechanism
- Token dashboards for spend visibility

* docs: restructure README for flow and readability

- Move Quick Start above features (was buried after a wall of content)
- Elevate Skills and Hybrid Fleet to top-level sections with emoji headers
- Collapse Dashboard Overview to a single line (was a redundant table)
- Merge Monitoring into its own concise section (was buried mid-list)
- Fold Security into 'Stay in control' (was a separate wall)
- Move Installation + Setup Guides after features (Quick Start links to them)
- Fix footer ordering: links, then disclaimer, then acknowledgments
- Net: -67 lines, same content, better hierarchy

---------

Co-authored-by: Simon <simon@example.com>

* Redesign ConnectionPage into single-page smart UI with install guide (simonCatBot#50)

* feat(connection): redesign ConnectionPage into single-page smart UI with install guide

Replace the 4-tab layout (Local/Client/Cloud/Remote) with a unified
connection page featuring environment detection banners, a two-column
layout (getting started guide + connection form), and a collapsible
advanced setup section. Remove the separate ConnectionPanel overlay —
the footer Plug button now toggles the Connection tab directly.

Add comprehensive install guide (docs/INSTALL.md) for Ubuntu 24.04
covering prerequisites, setup, remote access, and troubleshooting.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(e2e): update all E2E tests for new ConnectionPage selectors

Update 6 E2E test files that referenced the old ConnectionPanel overlay
(gateway-connection-overlay), old label selectors (Upstream URL/token),
and the old "Save Settings" button. Tests now use the Connection tab
toggle, #gateway-url/#gateway-token CSS selectors, and "Connect" button.
Fix strict mode violations where "Disconnect" matched both banner and
form buttons by using .first() selector.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(connection): restore 4-tab layout and fix startup scrolling

Restore the Local/Client/Cloud/Remote tabs with their scenario-specific
instructions while keeping the improvements from the redesign: environment
detection banner, error/test result display, token chips (Stored /
Auto-detected), single Connect/Disconnect button, CommandBlock helper.

Fix scrolling in ConnectionSetupView (startup flow) by removing
overflow-hidden from the outer container so content can scroll naturally
when rendered in a full-page context.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(connection): remove Tailscale from UI, expand docs, match app layout

- Remove all Tailscale references from ConnectionPage tabs — Client,
  Cloud, and Remote tabs now show SSH-only instructions with autossh
  persistent tunnel guidance
- Expand docs/INSTALL.md Remote Access section with detailed SSH
  (tunnels, autossh, systemd, key auth) and Tailscale (install, serve,
  ACLs, troubleshooting) documentation plus a comparison table
- Restyle ConnectionSetupView to match the main dashboard layout:
  h-dvh fixed viewport, matching padding, panel wrapper with
  overflow-hidden, and a simplified footer with status dot, branding,
  and theme toggle
- Fix startup scroll by removing overflow-hidden from ConnectionPage
  outer container (parent provides the constraint)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Simon <simoninmatrix@gmail.com>

* docs: Rewrite README with hybrid fleet focus and built-in skills (simonCatBot#53)

* docs(readme): pivot to hybrid local+cloud fleet as core value proposition

Restructure README to lead with the cost-saving hybrid fleet story:
- Hero tagline: "Run AI agents on your hardware. Use cloud only when you need it."
- New "Local + Cloud Hybrid Fleet" section elevated to top position
- New "Monitor Your Hardware" section connecting GPU metrics to the hybrid story
- Features rewired to reference local-vs-cloud routing throughout
- Skills section ties into workload routing (local ReAct, cloud Plan First)
- Added table of contents, architecture diagram, screenshot placeholders
- Trimmed skills catalog from 11-item list to category table
- Removed hardcoded test counts that drift
- Linked docs/INSTALL.md (was completely unlinked)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): add use-case personas and agent-vs-chatbot framing

Incorporate concepts from the OpenClaw use cases blog post:
- Open "Why rocCLAW?" with tools-vs-agents distinction
- Rewrite autopilot bullet with "works while you don't" angle,
  persistent memory, heartbeats, and sub-agent spawning
- Add "Who Uses This" section with 5 persona-driven use cases:
  solo consultants, side projects, growing teams, content creators,
  and developers — each tied back to local/cloud hybrid routing
- Weave agent memory and messaging integrations into hybrid fleet section

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): rephrase use cases, add bot fleet and skills images

- Rewrite "Why rocCLAW?" with concrete technical examples instead of
  blog-borrowed language (log monitoring, CI pipelines, health checks)
- Replace persona-based "Who Uses This" with technical "Use Cases"
  section: DevOps, software dev, data pipelines, sysadmin, research
- Each use case shows the local/cloud split with specific workloads
- Add bot family hero image representing the hybrid agent fleet
- Add before/after skills images in Skills section showing agent
  transformation from basic tools to rocket scientist

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): showcase 12 built-in skills, mention ClawHub for extras

- Rename "Skills & ClawHub" to "Built-in Skills" — focus on what
  ships with rocCLAW rather than the external marketplace
- List all 12 featured skills with descriptions (was 5-row summary)
- Add Git Workflows skill that was previously missing
- Mention ClawHub as one-click install for additional skills
- Update dashboard tab description and hybrid fleet cross-references

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): move bot fleet image to Why section, enlarge skills images

- Relocate bot family image from hero to "Why rocCLAW?" section header
- Increase skills before/after images from 300px to 420px

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): add bot field guide image to Use Cases section

Agent field guide visual shows each bot cataloged by role and
specialization, reinforcing the use-case-driven fleet approach.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): apply full review fixes and polish

- Swap Quick Start before Hybrid Fleet so users get running first
- Remove duplicate token tracking from Monitor section (kept in Fleet)
- Fold Agent Personality Files into Configure as collapsible details
- Add consistent emoji to all section headers
- Update architecture diagram label to "local GPU / cloud API"
- Add light/dark theme to Settings tab description
- Trim hybrid fleet repetition from What You Can Do bullets
- Fix GLM 5.1 link (glm4 → glm-5.1)
- Update all TOC anchors to match emoji-prefixed headings
- Update internal cross-reference links

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): remove Discord link, standardize requirements section

- Remove Discord link from footer (no Discord server exists)
- Rename "Tested Configurations" to "Requirements & Compatibility"
  with standard Prerequisites, Supported Platforms, and GPU tables
- Add Node.js, npm, and OpenClaw Gateway as explicit prerequisites
- Add macOS and Windows WSL2 as expected-to-work platforms
- Mark GPU monitoring as optional with clearer framing
- Simplify GPU table (remove architecture codes, CU details)
- Fix internal anchor link for GPU section

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): simplify GPU table — remove architecture details

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): add ROCm >= 7.2.1 as optional prerequisite for GPU monitoring

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): redesign footer with centered layout

Consolidate disclaimer, acknowledgments, and license into a clean
centered footer block. Remove the blockquote and bold label styling
in favor of subtle <sub> text with dot separators.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): move Use Cases section after Built-in Skills

Reorder so the flow is: features → hardware monitoring → skills →
use cases (showing how skills + hybrid fleet come together).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): final polish — simplify sections and extract compatibility

- Remove RDNA 3/3.5 specifics from Monitor section
- Move Supported Platforms and GPU Monitoring tables to docs/COMPATIBILITY.md
- Deduplicate Quick Start vs Installation (Quick Start now uses npm install)
- Simplify "Stay in control" bullet to one concise line
- Update footer: "Built by OpenClaw agents using Ollama and Claude"
- Remove empty Notes column from Prerequisites table

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs(readme): fix button label, tighten hybrid section, robust TOC anchors

- Fix "Save Settings" → "Connect" to match actual UI
- Remove motivational re-statement from Hybrid Fleet opener (already in Why section)
- Tighten cloud agents and token dashboard bullets
- Fix "warm" → "utilized" for GPU description clarity
- Improve architecture diagram alignment for narrow renderers
- Add explicit HTML anchor IDs to all sections for robust TOC navigation
- Remove emoji-prefix pattern from all internal cross-references
- Replace npm ci with npm install for pre-built package instructions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Simon <simoninmatrix@gmail.com>
Co-authored-by: Simon <simon@example.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants