Skip to content

Add generative-ui skill — dynamic UI generation + canvas templates#6

Open
dylanfeltus wants to merge 5 commits intomainfrom
feat/canvas-dashboard
Open

Add generative-ui skill — dynamic UI generation + canvas templates#6
dylanfeltus wants to merge 5 commits intomainfrom
feat/canvas-dashboard

Conversation

@dylanfeltus
Copy link
Owner

@dylanfeltus dylanfeltus commented Feb 27, 2026

Comprehensive skill for creating live HTML/CSS/JS interfaces on OpenClaw canvas displays (TVs, tablets, monitors).

What changed: Merged canvas-dashboard into generative-ui — one skill now covers both static templates and programmatic generation.

Includes:

  • Quick Start Templates — 3 production-ready HTML files (status board, metrics dashboard, ambient display) for < 5 min deployment
  • Component Library — 8 reusable UI components (stat cards, timelines, progress rings, tables, etc.)
  • Design System — Dark theme, CSS variables, responsive typography, TV-distance optimized
  • A2UI Protocol Integration — Real-time updates via OpenClaw's v0.8 JSONL protocol
  • Data-Driven Generation — Step-by-step workflow for generating UIs from arbitrary data
  • TV Display Infrastructure — Mac mini/iPad/Raspberry Pi setup guides
  • 6 example files — 3 static templates + 3 dynamic generation examples

Use cases: Ambient office displays, live status boards, data walls, real-time feeds, project trackers, system monitors.

Deployment: Push to any canvas-connected display surface via OpenClaw Gateway.

New skill that teaches agents to create and push live HTML/CSS/JS dashboards
to OpenClaw canvas nodes (TVs, tablets, monitors, Mac displays).

Includes:
- Comprehensive SKILL.md with infrastructure patterns, templates, best practices
- 3 example dashboards: ambient clock, status board, Stratus Labs ambient display
- README with usage docs

Enables ambient office displays, live status boards, and agent-generated UI
pushed to any canvas-connected display surface via the OpenClaw Gateway.
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 211989b494

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".


## Screenshots

<!-- TODO: Add screenshots of dashboards on actual displays -->

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Remove TODO without issue context

This introduces a bare TODO comment with no linked issue or rationale, which violates the review rule in /workspace/skills/AGENTS.md (No TODO comments without context or linked issues). Untracked TODOs tend to become stale and make ownership/prioritization unclear for future maintainers, so this should either be removed or tied to a specific issue/reference.

Useful? React with 👍 / 👎.

- 8 reusable components (stat card, status row, progress ring, data table, notification toast, timeline, sparkline, progress bar)
- A2UI v0.8 protocol integration with JSONL examples
- 3 live update patterns (full-page, surgical eval, A2UI surface)
- TV/ambient display infrastructure guide
- Data-driven generation workflow
- 3 production-ready examples (live feed, project tracker, data wall)
- CSS design system with custom properties
- TV-distance readability guidelines
@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@dylanfeltus dylanfeltus changed the title Add canvas-dashboard skill — generative UI for display surfaces Add generative-ui skill — dynamic UI generation + canvas templates Feb 28, 2026
Shell script that generates a real dashboard from live system data:
- CPU, memory, disk usage via macOS APIs
- Recent git commits across ~/Code/ repos
- Ambient dark theme, TV-optimized
- Self-contained HTML, no dependencies
- Cron-friendly for ambient office displays
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3c96293086

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

while IFS= read -r line; do
HASH=$(echo "$line" | cut -c1-7)
MSG=$(echo "$line" | cut -c9-)
GIT_COMMITS="$GIT_COMMITS<div class=\"commit\"><span class=\"commit-repo\">$REPO_NAME</span><span class=\"commit-hash\">$HASH</span><span class=\"commit-msg\">$MSG</span></div>"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Escape git metadata before injecting into dashboard HTML

The generated commit rows interpolate $REPO_NAME and $MSG directly into HTML, so any commit subject containing HTML metacharacters (or malicious markup from a cloned external repo) is rendered as active markup instead of text. In the file:// dashboard this can break layout or execute attacker-controlled script in the display browser context, so these values should be HTML-escaped before concatenation.

Useful? React with 👍 / 👎.

Comment on lines +98 to +101
- **Building your first dashboard?** → [Data-Driven Generation Workflow](#data-driven-generation-workflow)
- **Need UI components?** → [Component Library](#component-library)
- **Want real-time updates?** → [A2UI Protocol Integration](#a2ui-protocol-integration)
- **Setting up a TV display?** → [TV/Ambient Display Infrastructure](#tvambient-display-infrastructure)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Fix quick-start links to target existing section anchors

These links currently use local #... anchors that do not exist in README.md, so the “Read the Skill” jump links do not navigate users to the intended documentation sections. Because this is the primary onboarding path, readers cannot quickly reach the referenced guidance unless they manually search, so these should point to ./SKILL.md#... anchors.

Useful? React with 👍 / 👎.


❌ **Not needed for:**
- Static content that never changes
- Single-template scenarios (use canvas-dashboard skill)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Replace stale guidance to use removed canvas-dashboard skill

This line instructs users to use canvas-dashboard for single-template scenarios, but that skill is no longer present in this repository after the merge, so following the recommendation leads to a dead end. The guidance should reference the corresponding templates in generative-ui instead to keep the decision matrix actionable.

Useful? React with 👍 / 👎.

Full-featured ambient dashboard with:
- Real-time CPU/memory/disk/load gauge rings
- Service health status panel
- Agent activity feed timeline
- Live clock with greeting
- Process sparkline chart
- Simulated metric drift animation

Built during night build session exploring generative UI.
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7a51abe5c5

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

if [ -n "$COMMITS" ]; then
while IFS= read -r line; do
HASH=$(echo "$line" | cut -c1-7)
MSG=$(echo "$line" | cut -c9-)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Parse git oneline output by delimiter, not fixed columns

git log --oneline does not guarantee a 7-character hash prefix in every environment (e.g., when core.abbrev is set higher), but this parser hard-codes cut -c1-7 and cut -c9-. In those cases, the commit subject is corrupted by leftover hash characters (for example, git -c core.abbrev=12 log --oneline -1 yields a 12-char hash, so cut -c9- starts in the hash), which makes the “Recent Commits” panel inaccurate.

Useful? React with 👍 / 👎.

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.

1 participant