Official agent skill

gh-aw Console Rendering Tags

by github in github/gh-aw

Guide to the console struct tag system in gh-aw: headers, titles, number and cost formats, omitempty, and how structs, slices and maps render in the terminal.

OfficialMITAuto-check passedDevelopment

Install gh-aw Console Rendering Tags

skills CLI
$ npx skills add github/gh-aw --skill console-rendering -a claude-code

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

GitHub CLI
$ gh skill install github/gh-aw console-rendering --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/github/gh-aw.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/console-rendering .claude/skills/console-rendering && 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
console-rendering
GitHub stars
5.3k
Token cost
~736 tokens
SKILL.md length
174 words
Files
1
Skills in repo
52
Repo updated
First seen
Licence
MIT

At a glance

Guide to the console struct tag system in gh-aw: headers, titles, number and cost formats, omitempty, and how structs, slices and maps render in the terminal.

  • Adding console tags to a Go struct for terminal output in gh-aw
  • SKILL.md covers Struct Tag Support, Example Usage, Format Tag Examples and Rendering Behavior
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Rendering a slice of structs as a table

What it does

This guide explains how to control styled terminal output in gh-aw by tagging Go struct fields with console. The header option sets a field's display name for both structs and tables, title names the section for nested structs, slices or maps, format selects number (human-readable values like 1k or 1.2M) or cost (currency with a dollar prefix), omitempty skips zero values, and a dash always skips the field.

Rendering follows the data shape: a struct becomes aligned key-value pairs, a slice of structs becomes a table with one column per header, and a map becomes markdown-style headers with key-value pairs. time.Time fields print as a date and time string and count as empty under omitempty when zero, and unexported fields are skipped safely by checking CanInterface before reading them. Worked examples show an overview struct, a metrics struct with number formatting and a billing struct with cost formatting.

When your agent uses it

  • Adding console tags to a Go struct for terminal output in gh-aw
  • Rendering a slice of structs as a table
  • Formatting token counts or costs in CLI output

Example prompts

  • “Add console tags to this RunSummary struct so it prints as aligned key-value pairs.”
  • “Show the job list as a table with Name, Status and Conclusion columns.”
  • “Format TokenUsage as a human-readable number and Cost as currency.”

Requirements

  • The gh-aw Go codebase

What it can do on your machine

Read from SKILL.md and the folder at commit eb63040. 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 (its code samples are go).

    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

gh-aw Console Rendering Tags loads about 736 tokens when it runs. Until then it costs about 20 tokens; SKILL.md has 174 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~20
When it runs · the whole SKILL.md, loaded when a task matches
~736

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 github/gh-aw at commit eb63040, republished under its MIT licence (© github). 174 words, ~736 tokens.

Download SKILL.mdSave it as .claude/skills/console-rendering/SKILL.md (or your agent's skills folder).
name
console-rendering
description
Use Go struct tags to render styled terminal output in gh-aw.

Console Rendering System Usage

Use this guide for the struct tag-based console rendering system.

Struct Tag Support

Use the console struct tag to control rendering behavior:

  • header:"Name" - Sets the display name for fields (used in both structs and tables)
  • title:"Section Title" - Sets the title for nested structs, slices, or maps
  • format:"type" - Sets the formatting type for the field value
    • format:number - Formats integers as human-readable numbers (e.g., "1k", "1.2M")
    • format:cost - Formats floats as currency with $ prefix (e.g., "$1.234")
  • omitempty - Skips the field if it has a zero value
  • "-" - Always skips the field

Example Usage

go
type Overview struct {
    RunID    int64  `console:"header:Run ID"`
    Workflow string `console:"header:Workflow"`
    Status   string `console:"header:Status"`
    Duration string `console:"header:Duration,omitempty"`
}

data := Overview{
    RunID:    12345,
    Workflow: "test-workflow",
    Status:   "completed",
    Duration: "5m30s",
}

// Simple rendering
fmt.Print(console.RenderStruct(data))

// Output:
//   Run ID  : 12345
//   Workflow: test-workflow
//   Status  : completed
//   Duration: 5m30s

Format Tag Examples

Number Formatting
go
type Metrics struct {
    TokenUsage int `console:"header:Token Usage,format:number"`
    Errors     int `console:"header:Errors"`
}

data := Metrics{
    TokenUsage: 250000,
    Errors:     5,
}

// Renders as:
//   Token Usage: 250k
//   Errors     : 5
Cost Formatting
go
type Billing struct {
    Cost float64 `console:"header:Estimated Cost,format:cost"`
}

data := Billing{
    Cost: 1.234,
}

// Renders as:
//   Estimated Cost: $1.234

Rendering Behavior

Structs

Structs are rendered as key-value pairs with proper alignment.

Slices

Slices of structs are automatically rendered as tables:

go
type Job struct {
    Name       string `console:"header:Name"`
    Status     string `console:"header:Status"`
    Conclusion string `console:"header:Conclusion,omitempty"`
}

jobs := []Job{
    {Name: "build", Status: "completed", Conclusion: "success"},
    {Name: "test", Status: "in_progress", Conclusion: ""},
}

fmt.Print(console.RenderStruct(jobs))

Renders as:

Name  | Status      | Conclusion
----- | ----------- | ----------
build | completed   | success
test  | in_progress | -
Maps

Maps are rendered as markdown-style headers with key-value pairs.

Special Type Handling
time.Time

time.Time fields are automatically formatted as "2006-01-02 15:04:05". Zero time values are considered empty when used with omitempty.

Unexported Fields

The rendering system safely handles unexported struct fields by checking CanInterface() before attempting to access field values.

© github, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .github/skills/console-rendering of github/gh-aw.

Open the folder on GitHubat commit eb63040

Compare with similar skills

gh-aw Console Rendering Tags 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.

gh-aw Console Rendering Tags compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
gh-aw Console Rendering Tags this skillgithub/gh-aw5.3k—~736Automated safety check: PassMIT
Finishing a Development Branchobra/superpowers296k5 repos~1.9kAutomated safety check: PassMIT
Typescript Advanced Typesrolling-scopes/rsschool-app10k24 repos~4.2kAutomated safety check: PassMPL-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Code Review ChecklistshareAI-lab/learn-claude-code78k5 repos~1.1kAutomated safety check: PassMIT
Greplooponyx-dot-app/onyx32k4 repos~3.3kAutomated safety check: PassMIT

Similar skills

  • Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.

    296k GitHub starsUsed in 5 repos~1.9k tokens
    DevelopmentAuto-check passed
  • Typescript Advanced Types

    rolling-scopes/rsschool-app

    Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.

    10k GitHub starsUsed in 24 repos~4.2k tokens
    DevelopmentAuto-check passed
  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Code Review Checklist

    shareAI-lab/learn-claude-code

    Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.

    78k GitHub starsUsed in 5 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed
  • Guidelines

    akash-network/node

    Behavioral guidelines to reduce common LLM coding mistakes. An agent skill from akash-network/node.

    1.1k GitHub starsUsed in 22 repos~577 tokens
    DevelopmentAuto-check passed

More from github/gh-aw

All 52 skills in this repo
  • Official

    Drives a real browser from the command line with playwright-cli to open pages, interact, mock requests, save state and work with Playwright tests.

    5.3k GitHub starsUsed in 23 repos~2.8k tokens
    Auto-check passed
  • Official

    Designs and verifies a deterministic grader that measures whether a GitHub Agentic Workflow run reached its real-world or repository outcome.

    5.3k GitHub stars~6.8k tokensUpdated today
    Auto-check passed
  • Official

    Scaffolds, edits, reloads and debugs a canvas extension that the GitHub Copilot CLI can open in its side panel.

    5.3k GitHub stars~3.7k tokensUpdated today
    Auto-check passed
  • Official

    Drives an open pull request to merge-ready from inside a GitHub Copilot cloud agent, resolving review threads and local checks concurrently, without merging or retriggering CI.

    5.3k GitHub stars~3.8k tokensUpdated today
    Auto-check: warnings
  • Official

    Bumps gh-aw's pinned gh-aw-firewall version, rebuilds generated artifacts, and flags upstream spec or schema changes that need follow-up work.

    5.3k GitHub stars~899 tokensUpdated today
    Auto-check passed
  • Official

    Guides an agent through collecting, planning, addressing and answering pull request review feedback, accepting only comments from Copilot, GitHub Actions and team members.

    5.3k GitHub stars~1.5k tokensUpdated today
    Auto-check passed

Categories

Questions about gh-aw Console Rendering Tags

What does gh-aw Console Rendering Tags do?

Guide to the console struct tag system in gh-aw: headers, titles, number and cost formats, omitempty, and how structs, slices and maps render in the terminal. This guide explains how to control styled terminal output in gh-aw by tagging Go struct fields with console.2M) or cost (currency with a dollar prefix), omitempty skips zero values, and a dash always skips the field.

When should I use gh-aw Console Rendering Tags?

gh-aw Console Rendering Tags fits situations like: adding console tags to a Go struct for terminal output in gh-aw; rendering a slice of structs as a table; formatting token counts or costs in CLI output.

How do I install gh-aw Console Rendering Tags in Claude Code?

Run `npx skills add github/gh-aw --skill console-rendering -a claude-code`. Or copy the skill folder (.github/skills/console-rendering in github/gh-aw) into .claude/skills/console-rendering in your project. Claude Code loads it when a task matches its description.

How do I install gh-aw Console Rendering Tags in Codex?

Run `npx skills add github/gh-aw --skill console-rendering -a codex`. Or copy the skill folder (.github/skills/console-rendering in github/gh-aw) into .agents/skills/console-rendering in your project. Codex loads it when a task matches its description.

Can I use gh-aw Console Rendering Tags 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 github/gh-aw --skill console-rendering -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/console-rendering, .gemini/skills/console-rendering, .github/skills/console-rendering and .opencode/skills/console-rendering in your project.

What does gh-aw Console Rendering Tags need to run?

SKILL.md names no scripts, command-line tools or credentials: gh-aw Console Rendering Tags is instructions for the agent only. Our summary lists: The gh-aw Go codebase.

Does gh-aw Console Rendering Tags 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 gh-aw Console Rendering Tags 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 gh-aw Console Rendering Tags use?

gh-aw Console Rendering Tags is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does gh-aw Console Rendering Tags use?

About 736 tokens (SKILL.md is roughly 2.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to gh-aw Console Rendering Tags?

Skills that share tags, products or a category with gh-aw Console Rendering Tags: Finishing a Development Branch (obra/superpowers, 296k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars), PR Babysitter (openinterpreter/openinterpreter, 69k stars) and Code Review Checklist (shareAI-lab/learn-claude-code, 78k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains gh-aw Console Rendering Tags?

github (a GitHub organization, an official publisher) maintains it in github/gh-aw, which has 5,350 GitHub stars. The repository holds 52 skills in this directory. The repository was last updated on October 7, 2026.

Source: github/gh-aw on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.