360 Secure SkillHub
360 安全技能中心

Context Visualization

调用 session_status 获取实际上下文用量,并用自带 Python 脚本按约 4 字符/token 估算系统提示、工具、工作区文件、消息与剩余空间的占比,以等宽字符条形图输出,另附 memory/ 目录的磁盘记忆清单。

furukama
furukama
热度 64.79
最近更新 2026-05-11 17:26:03
分类:数据依赖:代码执行 / 读写文件应用场景:报告撰写 / 数据处理

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add context-viz
Metadata
name
context-viz
description
Visualize the current context window usage — token estimates per component (system prompt, tools, workspace files, messages, free space). Use when the user asks about context size, token usage, context breakdown, "how full is the context", or wants to see what's consuming their context window.

Context Visualization

Estimate and display a breakdown of the current context window usage.

How It Works

Run the bundled script to estimate token counts for workspace files:

python3 scripts/estimate_tokens.py /path/to/workspace

The script counts characters in known workspace files and estimates tokens (~4 chars/token).

Then call session_status to get the actual context usage from OpenClaw.

Generating the Visualization

  1. Run session_status to get: model, context used/total, compactions
  2. Run scripts/estimate_tokens.py <workspace_path> to estimate file token sizes
  3. Estimate message tokens: context_used - system_overhead - file_tokens
  4. Present the breakdown using the format below

Output Format

Use a monospace block with bar chart. Adapt the bar lengths proportionally.

📊 Context Usage
<model> • <used>k/<total>k tokens (<pct>%)

Component                    Tokens    %     
─────────────────────────────────────────────
⚙️  System prompt + tools    ~Xk      X%    ░░
📋  AGENTS.md                ~Xk      X%    ░
👻  SOUL.md                  ~Xk      X%    
👤  USER.md                  ~Xk      X%    
🔧  TOOLS.md                 ~Xk      X%    ░
💓  HEARTBEAT.md             ~Xk      X%    
🧠  MEMORY.md                ~Xk      X%    ░
🪪  IDENTITY.md              ~Xk      X%    
💬  Messages                 ~Xk      X%    ░░░░░░░░░░░░
📭  Free space               ~Xk      X%    ░░░░░
─────────────────────────────────────────────

Use ░ blocks: 1 block per ~2% of total context. Round to nearest block.

Memory Inventory (not in context)

Below the context chart, add a Memory on Disk section showing what's stored in memory/ — grouped by category. These files are NOT loaded into context but represent the agent's total knowledge base.

💾 Memory on Disk (not in context)
Category                     Files  Tokens   Size
──────────────────────────────────────────────────
📰  chinese-ai-digests        12    ~23k     92KB
📁  other                     11    ~12k     46KB
📅  daily-notes                9    ~5k      17KB
🗃️  zettelkasten               8    ~4k      15KB
💼  linkedin                   2    ~1k       5KB
──────────────────────────────────────────────────
     Total:                   42    ~44k    177KB

The script auto-categorizes files by directory or filename pattern.

Notes

  • Token estimates use ~4 chars/token (rough average for English/mixed content)
  • System prompt + tools overhead is estimated at ~8-10k tokens for a typical OpenClaw setup
  • Message tokens are the remainder after subtracting files + system overhead
  • Memory files are informational only — they show what the agent has accumulated
  • For Discord/WhatsApp: skip markdown tables, use the block format above