A skill your agent uses when a response needs mathematical notation (equations, filters, set-builder notation, statistics, calculus, linear algebra, logic, ratios, drops, counts) and the output goes…

Apache-2.0Auto-check passedDocuments & Office

Install Math Unicode

skills CLI
$ npx skills add hashgraph-online/awesome-codex-plugins --skill math-unicode -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install hashgraph-online/awesome-codex-plugins math-unicode --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/hashgraph-online/awesome-codex-plugins.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/vladimirrott/claude-math/skills/math-unicode .claude/skills/math-unicode && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
math-unicode
GitHub stars
1.2k
Token cost
~4.5k tokens
SKILL.md length
2,008 words
Files
2 (incl. references)
Skills in repo
736
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses when a response needs mathematical notation (equations, filters, set-builder notation, statistics, calculus, linear algebra, logic, ratios, drops, counts) and the output goes…

  • A response needs mathematical notation (equations
  • SKILL.md covers When this skill applies, Glyph cheatsheet, Font coverage and Style rules, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Set-builder notation

What it does

Math Unicode is an agent skill from hashgraph-online/awesome-codex-plugins. Use when a response needs mathematical notation (equations, filters, set-builder notation, statistics, calculus, linear algebra, logic, ratios, drops, counts) and the output goes to a terminal or TUI that cannot render LaTeX: Claude Code, Codex CLI, SSH and tmux sessions, CI logs. Load it before composing, including when the user explicitly mentions math-unicode. Emit Unicode glyphs inline, never raw LaTeX delimiters or commands. Do not use when the host renders math natively, such as ChatGPT or Codex on desktop…

Its SKILL.md is about 4.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/extended-glyphs.md`).

It sits in Documents & Office, covering LaTeX and Statistics. It works with LaTeX, OpenAI and tmux. The repository describes itself as: A curated list of awesome OpenAI Codex / ChatGPT plugins, skills, and resources. The 1 Codex Marketplace. See live plugins at: https://hol.org/plugins/best-codex-plugins. The licence is Apache-2.0.

When your agent uses it

  • A response needs mathematical notation (equations
  • Set-builder notation
  • Counts) and the output goes to a terminal
  • TUI that cannot render LaTeX: Claude Code

Example prompts

  • “/math-unicode”

What it can do on your machine

Read from SKILL.md and the folder at commit 16b4156. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Math Unicode loads about 4.5k tokens when it runs, and up to ~5.5k if it reads all its reference files. Until then it costs about 160 tokens; SKILL.md has 2,008 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~160
When it runs · the whole SKILL.md, loaded when a task matches
~4.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from hashgraph-online/awesome-codex-plugins at commit 16b4156, republished under its Apache-2.0 licence (© hashgraph-online). 2,008 words, ~4,545 tokens.

Download SKILL.mdSave it as .claude/skills/math-unicode/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
math-unicode
description
Use when a response needs mathematical notation (equations, filters, set-builder notation, statistics, calculus, linear algebra, logic, ratios, drops, counts) and the output goes to a terminal or TUI that cannot render LaTeX: Claude Code, Codex CLI, SSH and tmux sessions, CI logs. Load it before composing, including when the user explicitly mentions math-unicode. Emit Unicode glyphs inline, never raw LaTeX delimiters or commands. Do not use when the host renders math natively, such as ChatGPT or Codex on desktop and web, notebooks, or a KaTeX/MathJax target, and do not use when the user asked for LaTeX or a .tex file.
disable-model-invocation
false

math-unicode

When emitting mathematical notation in a terminal coding agent (Claude Code, Codex CLI, or similar), always use Unicode glyphs inline — never wrap math in $…$, \(...\), or $$...$$. These terminals do not render LaTeX; raw delimiters appear as plain dollar signs and reduce readability.

When this skill applies

Two conditions, both required: the response carries mathematical notation, and the surface it lands on does not render LaTeX.

Surfaces that do not render LaTeX (apply the skill):

  • Claude Code, Codex CLI, and other terminal or TUI coding agents
  • Anything read through SSH, tmux, a pager, or a CI log

Surfaces that render math natively (do not apply the skill):

  • ChatGPT and Codex on desktop and web, where math already renders
  • Notebooks, and any target consumed by KaTeX or MathJax

No host exposes a per-surface predicate to a skill today, so this boundary is a judgement the model makes from its own context. If you cannot tell, and the session is a terminal coding agent, apply the skill.

Triggers (use Unicode math):

  • Equations, formulas, derivations
  • Filter conditions, set-builder notation
  • Statistics: probabilities, expectations, distributions
  • Calculus, linear algebra, logic
  • Counts, ratios, fractions, drops where precision matters

Skip (do not transform):

  • The user explicitly asks for LaTeX or a .tex file
  • Math inside fenced code blocks (preserve source syntax)
  • Strings being passed to a system that consumes LaTeX (KaTeX MCP, etc.)

Glyph cheatsheet

Greek
lowercase   α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω
uppercase   Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω
variants    ϵ ϑ ϕ ϖ ϱ ς
Operators
arithmetic     + − × ÷ ± ∓ · ∗ ⋅ ∘ ⊕ ⊖ ⊗ ⊘ ⊙
big            ∑ ∏ ∐ ∫ ∬ ∭
roots          √ ∛ ∜
calculus       ∂ ∇ Δ ∆
constants      ∞ ∅
Relations
equality       =  ≠  ≈  ≅  ≡  ≜  ≝  ≐  ∝  ∼  ≃  ≢
order          <  >  ≤  ≥  ⊴  ⊵
set            ∈ ∉ ∋ ∌  ⊂ ⊃ ⊆ ⊇ ⊊ ⊋  ⊏ ⊐ ⊑ ⊒
set ops        ∪ ∩ ⊎ ⊔ ⊓        (set difference: A \ B)
Logic & arrows
logic          ∧ ∨ ¬ ⊕   ⊢ ⊥ ⊤
quantifiers    ∀ ∃ ∄ ∴ ∵
arrows         → ← ↔ ⇒ ⇐ ⇔ ↦ ↪ ↩ ↑ ↓ ⇑ ⇓ ⟶ ⟵ ⟷ ⊸
Number sets & brackets
sets           ℕ ℤ ℚ ℝ ℂ ℙ ℍ
brackets       ⟨ ⟩  ⌈ ⌉  ⌊ ⌋  ‖ ‖
Sub/superscript glyph blocks
superscript    ⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹  ⁺ ⁻ ⁼ ⁽ ⁾  ⁱ ⁿ ᵃ ᵇ ᶜ ᵈ ᵉ ᶠ ᵍ ʰ ʲ ᵏ ˡ ᵐ ᵒ ᵖ ʳ ˢ ᵗ ᵘ ᵛ ʷ ˣ ʸ ᶻ
sup (capital)  ᴬ ᴮ ᴰ ᴱ ᴳ ᴴ ᴵ ᴶ ᴷ ᴸ ᴹ ᴺ ᴼ ᴾ ᴿ ᵀ ᵁ ⱽ ᵂ
sup (Greek)    ᶿ                    (θ only; the rest are opt-in)
subscript      ₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉  ₊ ₋ ₌ ₍ ₎  ₐ ₑ ₕ ᵢ ⱼ ₖ ₗ ₘ ₙ ₒ ₚ ᵣ ₛ ₜ ᵤ ᵥ ₓ

Do not invent or approximate a missing glyph. A whitelist on its own is not a membership test; these are the exact gaps that make the bare ^x / _x fallbacks in Rules 3, 4 and 5 fire. Two separate causes, same outcome.

No Unicode code point exists at all:

subscript letters      b c d f g q w y z    → x_b, x_c, x_d
subscript capitals     all 26               → A_B, M_N  (Unicode has no
                                              subscript capital, 0/26)
superscript capitals   X Y Z                → A^X, M^Y, A^Z
superscript ∞          none                 → never ^∞ as a glyph; use ∫[a..∞]
Greek sub/superscript  μ ν σ and most rest  → I_ν, ∂_μ, x^ν (Rules 3, 4, 8)

A code point exists, but no monospace font in the measured set ships it, so treat it as absent:

superscript S          U+A7F1, Unicode 17.0 → A^S
superscript C F Q      U+A7F2..U+A7F4       → A^C, A^F, A^Q
superscript q          U+107A5, outside BMP → x^q
Greek subscripts       ᵦ ᵧ ᵨ ᵩ ᵪ            → x_β, I_ρ, x_γ
Greek superscripts     ᵝ ᵞ ᵟ ᵠ ᵡ            → x^β, x^φ

Two Greek exceptions worth knowing, because the older wording here got them wrong. ᶿ (superscript θ, U+1DBF) renders as widely as the Latin blocks below and is a normal part of the portable set, so write xᶿ, not x^θ. And ρ does have a subscript, ᵨ U+1D68; it is missing from most terminal fonts rather than from Unicode, which is why I_ρ stays the recommendation.

Measured coverage of the portable set: 17/26 lowercase subscripts, 0/26 subscript capitals, and 19/26 superscript capitals with a code point that some monospace font ships. The ∞ gap is why big-operator bounds use a bracketed range rather than stacked scripts: ∫₀^∞ would render one bound as a glyph and the other as a caret in the same operator. When unsure, the bare ^ / _ form is always acceptable; a wrong or missing glyph is not.

If your terminal font does carry the Greek scripts or the rarer capitals, see references/extended-glyphs.md for the opt-in set.

Font coverage

Unicode says a code point exists. Whether a terminal draws it is a property of the font. These counts come from reading the cmap table of twelve monospace fonts: the six most widely installed programming fonts (JetBrains Mono, Fira Code, Cascadia Code, Hack, Source Code Pro, IBM Plex Mono) and six system fonts (DejaVu Sans Mono, Liberation Mono, Ubuntu Mono, Ubuntu Sans Mono, Noto Mono, Cousine). scripts/measure-font-coverage.mjs regenerates them and the test suite asserts every number below against the result.

whatglyphsfonts
core operators and relations∑ ∏ ∫ √ ∂ ∞ ± × ÷ · ≈ ≠ ≤ ≥ ¬ − ² ³12/12
Greek lettersα β γ δ θ λ μ π σ φ ω Γ Δ Θ Λ Σ Φ Ω11-12/12
sub/superscript digits⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉9-12/12
arrows, single→ ← ↔ ↑ ↓9/12
set and logic symbols∈ ∉ ∪ ∩ ⊂ ⊆ ∧ ∨ ∀ ∃ ∅ ∇4-8/12
superscript letters, lowercaseᵃ ᵇ ᶜ ᵈ ᵉ ᶠ ᵍ ʰ ʲ ᵏ ˡ ᵐ ᵒ ᵖ ʳ ˢ ᵗ ᵘ ᵛ ʷ ˣ ʸ ᶻ4-5/12
superscript i and nⁱ ⁿ2-7/12
superscript thetaᶿ4/12
superscript signs and parens⁺ ⁻ ⁼ ⁽ ⁾3-4/12
subscript signs and parens₊ ₋ ₌ ₍ ₎3-4/12
superscript letters, capitalᴬ ᴮ ᴰ ᴱ ᴳ ᴴ ᴵ ᴶ ᴷ ᴸ ᴹ ᴺ ᴼ ᴾ ᴿ ᵀ ᵁ ⱽ ᵂ1-3/12
subscript letters, wider halfₐ ₑ ᵢ ₒ ᵣ ᵤ ᵥ ₓ3/12
subscript letters, thin halfₕ ₖ ₗ ₘ ₙ ₚ ₛ ₜ ⱼ1/12
number setsℕ ℤ ℚ ℝ ℂ ℙ ℍ3/12
arrows, double⇒ ⇐ ⇔ ⇑ ⇓4/12
multiline brackets⎡ ⎣ ⎤ ⎦ ⎧ ⎩ ⟨ ⟩4/12

Read that table as a ranking, not a verdict. A glyph the primary font lacks is usually supplied by fontconfig from another installed font, so it still draws, but at a different advance width, which is what breaks column alignment in aligned derivations and matrices. Only a glyph no installed font carries shows as tofu.

Two consequences worth acting on:

  • The operators, Greek letters and digit scripts survive everywhere. Prefer them, and they carry most of the load in ordinary output.
  • The letter sub/superscripts are DejaVu-class. JetBrains Mono, Fira Code, Hack and IBM Plex Mono ship none of them, so xᵢ and xᵀ arrive through fallback there. That is the reason Rules 3 and 4 keep x_i and x^T as first-class alternatives rather than last resorts.
  • ⱼ and ⱽ are the two thinnest glyphs in the portable blocks, carried by one font each. They sit in the ranges above rather than in Glyphs to avoid because their fallback, x_j and A^V, is already what Rules 3 and 4 say to write when in doubt.
Common LaTeX → Unicode
LaTeXUnicodeLaTeXUnicodeLaTeXUnicode
\alphaα\sum∑\in∈
\betaβ\prod∏\notin∉
\gammaγ\int∫\subset⊂
\deltaδ\partial∂\subseteq⊆
\epsilonε\nabla∇\cup∪
\thetaθ\infty∞\cap∩
\lambdaλ\emptyset∅\setminus\
\muμ\leq≤\wedge∧
\piπ\geq≥\vee∨
\sigmaσ\neq≠\neg¬
\phiφ\approx≈\Rightarrow⇒
\omegaω\equiv≡\Leftrightarrow⇔
\sqrt√\propto∝\forall∀
\pm±\cdot·\exists∃
\times×\to→\mathbb{R}ℝ

Style rules

Rule 1 — Inline math: Unicode, no delimiters

Bad: The filter $f(T; m) = \{(s,r) : n_{s,r} \geq m\}$ produces the cohort. Good: The filter f(T; m) = { (s,r) : n_{s,r} ≥ m } produces the cohort.

Rule 2 — Block math: own line(s), still no delimiters

Bad:

$$|Q| / |T| = 5238 / 31075 \approx 16.9\%$$

Good:

|Q| / |T|  =  5 238 / 31 075  ≈  16.9 %
Rule 3 — Subscripts
  • Single Unicode-renderable index: prefer the glyph (x₁, x₂, xᵢ, xⱼ, xₙ). ⱼ is the thinnest-supported glyph in this block, so x_j is equally fine.
  • Single index with no subscript glyph: use a bare underscore — I_ν, ∂_μ, and x_c / x_b / x_d, which have no subscript form at all. Check the gap list under Sub/superscript glyph blocks before reaching for a glyph.
  • Multi-character or grouped subscript: use _{...} syntax — the underscore reads unambiguously as a subscript and stays more legible than bracket-style indexing:
    • n_{s,r} ← (s,r) has no Unicode subscript form
    • x_max, σ_obs ← multi-letter
  • Never mix: don't write x_₁ or x_{1} when x₁ works.
Rule 4 — Superscripts (powers)
  • Simple / Unicode-mappable exponent: prefer the glyph — x², x³, xⁿ, eˣ, A⁻¹, and the transpose xᵀ / vᵀ.
  • Single exponent with no glyph: use a bare caret — x^ν, (z/2)^a, and A^X / A^Y / A^Z, which have no capital superscript code point, plus A^S, which has one (U+A7F1, Unicode 17.0) that no terminal font ships. Aᵀ is fine, and so is xᶿ; see the gap list under Sub/superscript glyph blocks.
  • Multi-character or expression exponent: use caret + parentheses, never ^{...} — x^(k+1), x^(i), e^(iπ). A bare x^{T} / x^{(i)} leaks LaTeX source; write xᵀ (single glyph) or x^(i) (parenthesized).
Show full SKILL.md (794 more words)Show less
Rule 5 — Big operators with selectors

Unicode operator + a bracketed inline selector — never _{...}^{...}. Use .. for a numeric/expression range, ∈ for set membership, → for a limit target, and an equation/condition when that is the natural selector:

∑[i=1..n] aᵢ            ∏[k ∈ K] pₖ            ∫[a..b] f(x) dx
∫[−∞..∞] e^(−x²) dx     ⋃[i=1..n] Aᵢ           lim[x→0] f(x)
∑[m₁+...+mₙ=N] c_m      ∫[C] f(z) dz           Res[z=z₀] f(z)

Write a contour integral as ∫[C]. The dedicated contour glyph is in no monospace font measured here, and the bracketed selector already says the path is C. See Glyphs to avoid.

Use ordinary letters for named functions: Γ, B, erf, det, tr, Re, Im, exp, log, sin, cos, argmin. Do not emit \operatorname. For a left-scripted named function, use available glyphs such as ₂F₁(a,b;c;z); when an index cannot be expressed as one glyph, use readable ASCII notation such as _{p}F_q rather than inventing a substitute.

Rule 6 — Fractions
  • Inline: a/b, (a + b) / (c + d)
  • Block (only when it aids clarity):
       a + b
   ─────────────
     c² + d²
Rule 7 — Matrices / vectors

ASCII art with corner glyphs:

A  =  ⎡ a  b ⎤        v  =  ( v₁ , v₂ , v₃ )ᵀ
      ⎣ c  d ⎦

Declare variable types in prose instead of faking bold or italic: “Here z and n are vectors, and Ω is a matrix.”

Rule 8 — Tensor indices

Tensor indices are indices, not powers. Keep non-mappable tensor indices in bare ASCII form and group only when the index has multiple characters:

R^ρ_{σμν}        ∂_μ        Γ^ρ_{νσ}
Rule 9 — Piecewise forms and aligned derivations

Use the box-drawing brace glyphs for a short piecewise definition; keep equals signs in the same column for a derivation. If those brace glyphs are absent in a reader's font, use a semicolon-separated sentence instead.

f(x) =
  ⎧ x²    if x ≥ 0
  ⎩ −x    if x < 0

aₙ = bₙ + cₙ
    = dₙ
Rule 10 — Sets and conditions

Prefer set-builder with | or ::

Q  =  { (s,r) ∈ T  :  n_{s,r} ≥ 18  ∧  p⁰_{s,r} < 0.9 }
Rule 11 — Numbers
  • Thousands: thin space ( , U+2009) — 5 238, 34 601 — not commas (locale ambiguous).
  • Decimal: dot — 16.9 %.
  • Percent: space before % — 16.9 % (typographic convention; readable).
  • Approximations: ≈, ∼. Order of magnitude: ~. Confidence: x = 5.2 ± 0.3.
Rule 12 — When Unicode hurts, fall back explicitly

If a glyph chain becomes denser than the LaTeX it replaces, switch to readable ASCII pseudo-LaTeX and annotate it. Example:

H(p) = − ∑[x ∈ X] p(x) · log p(x)        (∑ = sum over the support X)

The reader's comprehension is the only metric. Prefer common, well-supported glyphs. Do not use combining marks or obscure modifier letters just to force a super- or subscript; use readable bare ^x / _x notation instead. Choose whichever form is clearest, then stay consistent within a passage.

Rule 13 — Plain letters for variables; never style with math-alphanumeric codepoints

Write variable names and identifiers with ordinary letters (x, A, Var, RSS). Do not reach into the Unicode Mathematical Alphanumeric Symbols block (U+1D400 onward: bold, italic, script and styled double-struck letters) to style ordinary letters. Those code points garble on copy/paste, terminal search, and screen readers — the same failure Claude Code hit in issue #61558. They are also the least renderable characters in the block table: see Glyphs to avoid.

Exception: the standard blackboard-bold number sets are correct notation rather than styling, and they live in the Letterlike Symbols block, which terminal fonts do carry. Keep using ℕ ℤ ℚ ℝ ℂ ℙ ℍ.

The exception stops there. Double-struck F and double-struck E sit in the Mathematical Alphanumeric Symbols block this rule bans, and they measure worse than anything else the skill emitted before: one monospace font out of twelve. Write a general field as F and an expectation as E[X]. Everything the rule says about copy, search and screen readers applies to them too.

Quick reference — common forms

Mean / std        μ ± σ                        x̄ ± s
Probability       P(A | B)                     ℙ(A ∩ B) = ℙ(A) · ℙ(B | A)
Expectation       E[X] = ∫ x · f(x) dx
Variance          Var(X) = E[X²] − E[X]²
Gradient          ∇f = ( ∂f/∂x₁ , ... , ∂f/∂xₙ )
Norm              ‖x‖₂ = √(∑[i=1..n] xᵢ²)
Big-O             T(n) = O(n log n)
Limit             lim[n → ∞] aₙ = L
Sum bounds        ∑[i=1..n] i  =  n(n+1)/2
Quantile          q_α = inf{ x : F(x) ≥ α }

Golden corpus — difficult terminal-native forms

These examples are deliberately chosen to exercise non-mappable indices, constrained sums, tensors, special functions, contours, and multiline output. They are normalized terminal forms of standard formulas (including DLMF §10.32.E2, §15.6.E1, §19.19.E1, and §21.2.E1).

I_ν(z) = (z/2)^ν / (√π Γ(ν+½)) ∫[0..π] e^(±z cos θ)(sin θ)^(2ν) dθ

F(a,b;c;z) = 1 / (Γ(b)Γ(c−b)) ∫[0..1] t^(b−1)(1−t)^(c−b−1) / (1−zt)^a dt

T_N(b,z) = ∑[m₁+...+mₙ=N] ((b₁)_{m₁} ··· (bₙ)_{mₙ}) / (m₁! ··· mₙ!) · z₁^(m₁) ··· zₙ^(mₙ)

θ(z | Ω) = ∑[n ∈ ℤ^g] exp(2π i(½ n · Ω · n + n · z))
  Here z and n are vectors, and Ω is a matrix.

R^ρ_{σμν} = ∂_μ Γ^ρ_{νσ} − ∂_ν Γ^ρ_{μσ} + Γ^ρ_{μλ} Γ^λ_{νσ} − Γ^ρ_{νλ} Γ^λ_{μσ}

f^(n)(z₀) = n! / (2π i) ∫[C] f(z) / (z−z₀)^(n+1) dz

∂u/∂t + (u · ∇)u = −∇p + νΔu + f,  ∇·u = 0

p(x) = exp(−½ (x−μ)ᵀΣ⁻¹(x−μ)) / √((2π)ᵈ det Σ)

F(ω) = ∫[−∞..∞] f(t)e^(−iωt) dt

f(x) =
  ⎧ x²    if x ≥ 0
  ⎩ −x    if x < 0

Glyphs to avoid

Every glyph below has a code point and looks correct in a proportional editor. None of them is carried by more than one of the twelve monospace fonts measured in Font coverage, so in a terminal each one either draws from a fallback at the wrong width or shows as tofu. Write the replacement instead. Counts are fonts carrying the glyph / fonts measured.

avoidcode pointfontswrite instead
∮U+222E0/12∫[C] f(z) dz
ⅆU+21460/12d
ⅇU+21470/12e
∖U+22160/12A \ B
ℵU+21350/12aleph_0
ℶU+21360/12beth_0
⋘U+22D80/12<<
⋙U+22D90/12>>
⨁U+2A010/12⊕[i=1..n]
⨂U+2A020/12⊗[i=1..n]
〈U+30080/12⟨ (U+3008 is a full-width CJK bracket)
〉U+30090/12⟩
≪U+226A1/12<<
≫U+226B1/12>>
⊨U+22A81/12|=
⊻U+22BB1/12xor, or ⊕ in a boolean-ring context
⊼U+22BC1/12nand
⊽U+22BD1/12nor
⟸U+27F81/12⇐
⟹U+27F91/12⇒
⟺U+27FA1/12⇔
⨅U+2A051/12⊓[i=1..n]
⨆U+2A061/12⊔[i=1..n]
𝔼U+1D53C1/12E[X] (also banned by Rule 13)
𝔽U+1D53D1/12F (also banned by Rule 13)
𝔸U+1D5381/12A, or ℕ ℤ ℚ ℝ ℂ when a specific set is meant

Anti-patterns — never emit these in the terminal (Claude Code / Codex)

✗   $f(x) = \sum_{i=1}^{n} x_i$
✗   \( a^2 + b^2 = c^2 \)
✗   $$\int_0^\infty e^{-x^2} dx = \frac{\sqrt{\pi}}{2}$$
✗   \[ |Q|/|T| \approx 16.9\% \]
✗   ∑_{i=1}^{n}  or  ∫_a^b  or  x^{T}   (stacked bounds / brace exponent leak source even without $…$ — write ∑[i=1..n], ∫[a..b], xᵀ)
✗   Let 𝑉𝑎𝑟 = …   or   matrix 𝐀 = …   (math-alphanumeric styling; garbles on copy/search — write Var, A)

If asked to produce raw LaTeX (e.g. for a .tex file or a KaTeX-rendering tool downstream), do so — and call it out explicitly: "Raw LaTeX as requested; this will not render in the terminal."

© hashgraph-online, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in plugins/vladimirrott/claude-math/skills/math-unicode of hashgraph-online/awesome-codex-plugins.

  • SKILL.md
  • references/extended-glyphs.md

Open the folder on GitHubat commit 16b4156

Compare with similar skills

Math Unicode next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Math Unicode compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Math Unicode this skillhashgraph-online/awesome-codex-plugins1.2k—~4.5kAutomated safety check: PassApache-2.0
Proof CheckerAI4Scientist/nano-scientist1281 repos~11kAutomated safety check: NotesNone
Review RevisionM1n-n9/paper-lifecycle687—~2.3kAutomated safety check: PassNone
Tables And Figuresbrycewang-stanford/Auto-Empirical-Research-Skills4.5k—~1.7kAutomated safety check: PassCustom licence
01 Paper Reviewagentscope-ai/OpenJudge8671 repos~2.4kAutomated safety check: PassApache-2.0
Oleafly Review ManuscriptOleafly/Oleafly205—~2.3kAutomated safety check: PassMIT

Similar skills

  • Proof Checker

    AI4Scientist/nano-scientist

    Rigorous mathematical proof verification and fixing workflow.

    128 GitHub starsUsed in 1 repo~11k tokens
    Documents & OfficeAuto-check: notes
  • Review Revision

    M1n-n9/paper-lifecycle

    Review and revise academic papers with a senior-reviewer workflow.

    687 GitHub stars~2.3k tokensUpdated 3 mo ago
    Documents & OfficeAuto-check passed
  • Tables And Figures

    brycewang-stanford/Auto-Empirical-Research-Skills

    A skill your agent uses when generating a LaTeX results table, creating a figure for a paper, formatting descriptive statistics, preparing regression output for publication, or producing…

    4.5k GitHub stars~1.7k tokensUpdated 2 days ago
    Documents & OfficeAuto-check passed
  • 01 Paper Review

    agentscope-ai/OpenJudge

    Review academic papers for correctness, quality, and novelty using OpenJudge's multi-stage pipeline.

    867 GitHub starsUsed in 1 repo~2.4k tokens
    Research & ScienceAuto-check passed
  • Run a referee-grade review of the manuscript in the open project without changing a single manuscript file.

    205 GitHub stars~2.3k tokensUpdated today
    Research & ScienceAuto-check passed
  • Math Reasoning

    lingzhi227/agent-research-skills

    Formal mathematical reasoning for research papers — derive equations, write proofs, formalize problem settings, select statistical tests, and generate LaTeX math notation.

    383 GitHub stars~639 tokensUpdated 7 mo ago
    Data & AnalyticsAuto-check passed

More from hashgraph-online/awesome-codex-plugins

All 736 skills in this repo
  • Anime Reaction Gif

    hashgraph-online/awesome-codex-plugins

    Create original anime-style reaction stickers as looping GIFs and MP4 previews, using generated character pose sheets and timed key poses.

    1.2k GitHub stars~922 tokensUpdated yesterday
    Auto-check passed
  • Calibredb

    hashgraph-online/awesome-codex-plugins

    Manage and query Calibre libraries with the calibredb CLI (local paths or Calibre Content server URLs).

    1.2k GitHub stars~1k tokensUpdated yesterday
    Auto-check passed
  • Rust API Test Harness

    hashgraph-online/awesome-codex-plugins

    A skill your agent uses when adding, changing, testing, or debugging Rust HTTP APIs and services, especially when Codex needs black-box integration tests, random-port app startup, real database test…

    1.2k GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed
  • Art

    hashgraph-online/awesome-codex-plugins

    Make a studio's game look like something at build time — a cover from a real frame of the game (free), painted covers, backdrops, textures and character plates from image models through the…

    1.2k GitHub stars~2.4k tokensUpdated yesterday
    Auto-check passed
  • Calle

    hashgraph-online/awesome-codex-plugins

    Use CALL-E from Codex through the calle CLI. An agent skill from hashgraph-online/awesome-codex-plugins.

    1.2k GitHub stars~2.9k tokensUpdated yesterday
    Auto-check passed
  • Game Balance Economy

    hashgraph-online/awesome-codex-plugins

    Balance game difficulty, resources, rewards, probability, progression, economies, and dominant strategies.

    1.2k GitHub stars~618 tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Math Unicode

What does Math Unicode do?

A skill your agent uses when a response needs mathematical notation (equations, filters, set-builder notation, statistics, calculus, linear algebra, logic, ratios, drops, counts) and the output goes…. Math Unicode is an agent skill from hashgraph-online/awesome-codex-plugins. Use when a response needs mathematical notation (equations, filters, set-builder notation, statistics, calculus, linear algebra, logic, ratios, drops, counts) and the output goes to a terminal or TUI that cannot render LaTeX: Claude Code, Codex CLI, SSH and tmux sessions, CI logs.

When should I use Math Unicode?

Math Unicode fits situations like: A response needs mathematical notation (equations; set-builder notation; counts) and the output goes to a terminal; TUI that cannot render LaTeX: Claude Code.

How do I install Math Unicode in Claude Code?

Run `npx skills add hashgraph-online/awesome-codex-plugins --skill math-unicode -a claude-code`. Or copy the skill folder (plugins/vladimirrott/claude-math/skills/math-unicode in hashgraph-online/awesome-codex-plugins) into .claude/skills/math-unicode in your project. Claude Code loads it when a task matches its description.

How do I install Math Unicode in Codex?

Run `npx skills add hashgraph-online/awesome-codex-plugins --skill math-unicode -a codex`. Or copy the skill folder (plugins/vladimirrott/claude-math/skills/math-unicode in hashgraph-online/awesome-codex-plugins) into .agents/skills/math-unicode in your project. Codex loads it when a task matches its description.

Can I use Math Unicode in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add hashgraph-online/awesome-codex-plugins --skill math-unicode -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/math-unicode, .gemini/skills/math-unicode, .github/skills/math-unicode and .opencode/skills/math-unicode in your project.

What does Math Unicode need to run?

SKILL.md names no scripts, command-line tools or credentials: Math Unicode is instructions for the agent only.

Does Math Unicode access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Math Unicode safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Math Unicode use?

Math Unicode is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Math Unicode use?

About 4.5k tokens (SKILL.md is roughly 18k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 943 tokens, read only when the agent opens those files.

What are the alternatives to Math Unicode?

Skills that share tags, products or a category with Math Unicode: Proof Checker (AI4Scientist/nano-scientist, 128 stars), Review Revision (M1n-n9/paper-lifecycle, 687 stars), Tables And Figures (brycewang-stanford/Auto-Empirical-Research-Skills, 4.5k stars) and 01 Paper Review (agentscope-ai/OpenJudge, 867 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Math Unicode?

hashgraph-online (a GitHub organization) maintains it in hashgraph-online/awesome-codex-plugins, which has 1,232 GitHub stars. The repository holds 736 skills in this directory. The repository was last updated on October 6, 2026.

Source: hashgraph-online/awesome-codex-plugins on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.