Skip to content

qc + web: OpenIcon and OpenEmoji everywhere, qc fonts (0.7.2, qc 0.6.1) - #297

Merged
ralyodio merged 1 commit into
masterfrom
feat/qc-openicon-openemoji
Oct 6, 2026
Merged

ralyodio merged 1 commit into
masterfrom
feat/qc-openicon-openemoji

Conversation

@ralyodio

@ralyodio ralyodio commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

Anthony: "use openfont and openemoji and openicon etc. just like hqtui does, use that for cli".

  • qc CLI: status lines use hqtui's icon() (OpenIcon: nerd-font glyphs, with Unicode/ASCII fallbacks chosen for the terminal) and OpenEmoji (:shortcodes:, people's emoji, agents shown as 🤖). Errors print with the error icon.
  • qc fonts install|status|remove: installs the OpenEmoji colour font as the terminal's emoji font, via hqtui's font installer.
  • Web: a new <OpenEmoji> component draws our artwork for the AI-agent badge, Settings → AI agents, the join page and profile emoji.

Tests: 710/710 (new style tests); next build passes.

🤖 Generated with Claude Code

- qc's line output uses hqtui's icon() (OpenIcon: nerd glyphs, Unicode or
  ASCII fallback) and OpenEmoji (:shortcodes:, people's emoji), like hqtui
  apps do; errors print with the error icon.
- qc fonts install|status|remove: the OpenEmoji colour font as the
  terminal's emoji font, via hqtui.
- Web: <OpenEmoji> draws our artwork for the agent badge, Settings > AI
  agents, the join page and profile emoji.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown

ThreatCrush Security Scan

13 finding(s)

MEDIUM: 9 | LOW: 4

Severity Rule Location
MEDIUM js-unescaped-html-sink src/app/blog/[slug]/page.jsx:38
MEDIUM js-unescaped-html-sink src/app/blog/[slug]/page.jsx:66
MEDIUM js-unescaped-html-sink src/app/faq/page.jsx:57
MEDIUM js-unescaped-html-sink src/app/layout.jsx:137
MEDIUM js-unescaped-html-sink src/app/layout.jsx:141
MEDIUM js-unescaped-html-sink src/app/page.jsx:47
MEDIUM redos-nested-quantifier src/lib/auth/dns-name.js:88
MEDIUM js-unescaped-html-sink src/lib/components/chat/MessageItem.jsx:85
MEDIUM js-unescaped-html-sink src/lib/components/chat/MessageItem.jsx:130
LOW secret-generic-credential src/app/api/auth/register-anon/route.test.js:32
LOW secret-jwt tests/debug-sms.js:10
LOW secret-generic-credential tests/private-key-import-export.test.js:252
LOW secret-generic-credential tests/private-key-import-export.test.js:264

Snippets are redacted; ThreatCrush never prints matched credential material.

@ralyodio
ralyodio merged commit 2bd6a00 into master Oct 6, 2026
11 checks passed
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