Token导航 LogoToken导航TokenDH.com
开发执行命令github未标认证来源可访问许可证需确认审计异常

rich-terminal-output丰富的终端输出

Agent Skill

rich-terminal-output 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

2,117

周安装

90

GitHub Stars

4

下载量

742
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:rich-terminal-output(丰富的终端输出)
来源仓库:https://github.com/autumnsgrove/groveengine
仓库路径:skills/rich-terminal-output
安装命令:
npx skills add https://github.com/autumnsgrove/groveengine --skill rich-terminal-output
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/autumnsgrove/groveengine --skill rich-terminal-output

简介

rich-terminal-output 用于增强终端输出的可视化效果,支持彩色文本、表格与进度条。

  • 适合在命令行工具中提升日志、报告或交互界面的可读性。
  • 通过 npx skills add 命令从 GitHub 仓库安装,需结合 GroveEngine 框架使用。
  • 输出仅用于展示,不应替代实际错误处理或状态判断逻辑。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Rich Terminal Output Skill

When to Activate

Activate this skill when:

  • Building CLI applications
  • Displaying structured data (tables)
  • Showing progress for long operations
  • Creating error/status panels
  • Pretty-printing objects for debugging
  • Enhancing logging output

Installation

uv add rich

# Quick test
python -c "from rich import print; print('[bold green]Rich working![/]')"

Core Concepts

Console Object

from rich.console import Console

console = Console()

# Basic output
console.print("Hello, World!")

# Styled output
console.print("[bold red]Error:[/] Something went wrong")
console.print("[green]Success![/] Operation completed")

Markup Syntax

"[bold]Bold[/]"
"[italic]Italic[/]"
"[red]Red text[/]"
"[blue on white]Blue on white background[/]"
"[bold red]Combined styles[/]"
"[link=https://example.com]Click here[/]"

Drop-in Print Replacement

from rich import print

print("[bold cyan]Styled text[/]")
print({"key": "value"})  # Auto-pretty-prints

Tables

from rich.console import Console
from rich.table import Table

console = Console()

table = Table(title="User List")

table.add_column("ID", style="cyan", justify="right")
table.add_column("Name", style="magenta")
table.add_column("Email", style="green")
table.add_column("Status", justify="center")

table.add_row("1", "Alice", "alice@example.com", "✓ Active")
table.add_row("2", "Bob", "bob@example.com", "✓ Active")
table.add_row("3", "Charlie", "charlie@example.com", "✗ Inactive")

console.print(table)

Panels

from rich.console import Console
from rich.panel import Panel

console = Console()

# Simple panel
console.print(Panel("Operation completed!"))

# Styled panel
console.print(Panel(
    "[green]All tests passed![/]\n\n"
    "Total: 42 tests\n"
    "Time: 3.2s",
    title="Test Results",
    border_style="green"
))

# Error panel
console.print(Panel(
    "[red]Connection refused[/]\n\n"
    "Host: localhost:5432",
    title="[bold red]Error[/]",
    border_style="red"
))

Progress Bars

Simple Progress

from rich.progress import track
import time

for item in track(range(100), description="Processing..."):
    time.sleep(0.01)

Multiple Tasks

from rich.progress import Progress

with Progress() as progress:
    task1 = progress.add_task("[red]Downloading...", total=100)
    task2 = progress.add_task("[green]Processing...", total=100)

    while not progress.finished:
        progress.update(task1, advance=0.9)
        progress.update(task2, advance=0.6)
        time.sleep(0.02)

Syntax Highlighting

from rich.console import Console
from rich.syntax import Syntax

console = Console()

code = '''
def hello():
    print("Hello, World!")
'''

syntax = Syntax(code, "python", theme="monokai", line_numbers=True)
console.print(syntax)

Tree Displays

from rich.console import Console
from rich.tree import Tree

console = Console()

tree = Tree("[bold blue]MyProject/[/]")
src = tree.add("[bold]src/[/]")
src.add("main.py")
src.add("config.py")

tests = tree.add("[bold]tests/[/]")
tests.add("test_main.py")

console.print(tree)

Logging Integration

import logging
from rich.logging import RichHandler

logging.basicConfig(
    level=logging.INFO,
    format="%(message)s",
    handlers=[RichHandler(rich_tracebacks=True)]
)

logger = logging.getLogger("myapp")
logger.info("Application started")
logger.error("Connection failed")

Pretty Tracebacks

from rich.traceback import install

# Call once at startup
install(show_locals=True)

# All exceptions now have beautiful tracebacks

Common Pitfalls

Reuse Console Instance

# ❌ Bad
def show(msg):
    Console().print(msg)  # Creates new instance each time

# ✅ Good
console = Console()
def show(msg):
    console.print(msg)

Escape User Input

from rich.markup import escape

username = "user[admin]"

# ❌ Bad - brackets break markup
console.print(f"[blue]{username}[/]")

# ✅ Good
console.print(f"[blue]{escape(username)}[/]")

Handle Non-TTY

import sys

console = Console(force_terminal=sys.stdout.isatty())

CLI Application Pattern

import click
from rich.console import Console
from rich.panel import Panel

console = Console()

@click.command()
@click.argument('filename')
def process(filename):
    console.print(f"[bold]Processing:[/] {filename}")

    with console.status("[bold green]Working..."):
        result = do_work(filename)

    if result.success:
        console.print(Panel(
            f"[green]Processed {result.count} items[/]",
            title="Success"
        ))
    else:
        console.print(f"[red]Error:[/] {result.error}")

When NOT to Use Rich

  • Non-interactive scripts (output piped)
  • Server-side logging
  • Performance-critical loops
  • Minimal dependency requirements

Related Resources

See AgentUsage/rich_formatting.md for complete documentation including:

  • Advanced table customization
  • Spinner and status displays
  • Console recording
  • Integration patterns

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

35.43%
按下载量换算263

Claude

28.94%
按下载量换算215

Cursor

20.45%
按下载量换算152

Gemini CLI

9.15%
按下载量换算68

安全审计

Gen Agent Trust Hub

未通过

Socket

通过

Snyk

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/autumnsgrove/groveengine --skill rich-terminal-output 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills