001tmf/blatant-why/by-display
Claude Code and agent skill by 001tmf/blatant-why
- community
Checking that the SKILL.md file is still in the repository.
Install
npx vskill@latest install 001tmf/blatant-why/by-displaySKILL.md
BY Display Patterns
Standard display formats for all campaign output. They use Unicode box-drawing characters and markdown that render natively in Claude Code's terminal. Never use ANSI escape codes in response text — they render as literal characters.
Every other BY skill (research, screening, scoring, campaign-manager, ...) calls into these templates when it is time to talk to the user. This file is the canonical source; the literal templates live in `references/output-format-spec.md` so other skills can copy them verbatim.
When to Use This Skill
Use this skill when you are:
- ✅ Rendering campaign status for
/by:status,/by:watch, or phase transitions - ✅ Formatting screening reports (liabilities, developability, structure scores)
- ✅ Showing ranked results for
/by:resultsor any final campaign output - ✅ Displaying errors or quota warnings that need user attention
- ✅ Presenting a checkpoint or safety gate that requires explicit user approval
- ✅ Streaming progress during long-running design/fold jobs
- ✅ Closing a phase — every major phase ends with a "Next Up" block
Do NOT use this skill when:
- ❌ You need to compute scores — that is
by-scoring; this skill only renders them - ❌ You need to run a screening battery — that is
by-screening - ❌ You need to decide what to do next — that is
by-campaign-manager/by-design-workflow - ❌ You need raw machine-readable JSON output for another tool — emit JSON directly, not the human-facing templates here
- ❌ You want to invent a new visual style — extend the templates here instead of forking them
Inputs
This skill is consumed by other skills. Inputs are the data objects to be rendered:
Required (one of):
- Campaign checkpoint object —
{ campaign_id, target, phases: [{name, status, time, details}, ...], current_phase }. Source:by-campaign-manager(campaign_state.json). - Ranked design list —
[{ design_id, composite, ipSAE, ipTM, pLDDT, liabilities, verdict }, ...]. Source:by-scoring/by-screening. - Screening report object —
{ design_id, liabilities: {...}, developability: {...}, structure: {...}, verdict }. Source:by-screening. - Progress event —
{ phase, status (◆/✓/✗), message, elapsed }. Source: any long-running skill. - Error object —
{ title, details, suggested_next }.
Optional:
- Score scale overrides — non-default thresholds for the
EXCELLENT/STRONG/...labels on score bars (seereferences/output-format-spec.md§Score Bars). - Provider context —
{ provider, tool, protocol, scaffold, budget }shown in design-launch banners.
Outputs
Markdown strings printed to the terminal. No files written by this skill itself.
| Output | When | Template ID | |
|---|---|---|---|
| Campaign status banner | /by:status, phase transitions | banner.campaign-status | |
| Progress-during-design line | /by:watch, mid-pipeline | progress.design | |
| Ranked results table | /by:results, campaign close | table.ranked-results | |
| Screening battery report | /by:screen, per-design report | report.screening | |
| Score bar | Any 0-1 metric display | bar.score | |
| Error box | Quota / failure / warning | box.error | |
| Checkpoint box | Lab gate, approval gate | box.checkpoint | |
| Next-Up block | End of every major phase | block.next-up | |
| Long-running job submission | SSH / Tamarind dispatch | block.job-submitted | |
| Batch progress | Multi-job tracking | block.batch-progress | |
| Pipeline summary table | Campaign complete | table.pipeline-summary | |
| Inline progress (✓/◆/✗) | Between phases | inline.progress |
For the literal Unicode/ASCII templates, see `references/output-format-spec.md`.
Clarification Questions
⚠️ CRITICAL: ASK THIS FIRST — confirm there is something to render before invoking this skill.
- What are you trying to render? (ASK THIS FIRST) — A campaign status, a ranked results table, a screening report, an error, or a checkpoint? Each maps to a different template. Without this, do not generate any output.
- Which data object do you have? — Pass the campaign checkpoint, the ranked design list, or the screening report object. The skill cannot make up values; if a field is missing, leave it blank or mark
—(em-dash). - What is the audience? — User-facing terminal output (this skill) vs. machine-readable JSON for another tool (do NOT use this skill).
- Is this an end-of-phase rendering? — If yes, append the Next-Up block. If mid-phase, use the inline
◆/✓progress format instead. - Are there units to clarify? — pLDDT is 0-100 (divide by 100 for the score bar); ipSAE and ipTM are 0-1 (use directly). RMSD is in Å, lower is better.
- Is a safety gate involved? — If lab submission or any irreversible action is next, use the checkpoint box and require explicit user approval. Never auto-proceed past a checkpoint.
- Provider context available? — Local GPU / HPC / Tamarind affects what shows in the design-launch banner. If unknown, fall back to "compute provider: see
.by/config.json".
Standard Workflow
🚨 MANDATORY: COPY TEMPLATES FROM `references/output-format-spec.md` VERBATIM — DO NOT IMPROVISE LAYOUT 🚨
- Identify the render type. Match the data object to one of the templates above.
- Load the template from
references/output-format-spec.md. - Fill the slots with values from the input object. Use
—(em-dash) for missing values; never invent numbers. - Pick the right status symbol from the table below.
- Render the score bars at 10-block resolution. Round the filled count to the nearest integer; for ambiguous cases below 0.9, prefer the conservative (lower) count.
- Append the Next-Up block if this is the end of a major phase.
Anti-patterns:
- ❌ Writing ANSI escape codes (
\033[...) in response text → they render literally in Claude Code chat - ❌ Varying the banner width — always 53
━characters - ❌ Using
GSD ►or any prefix other thanBY ► - ❌ Reprinting the full phase table on every progress update — use inline
◆/✓lines, print the summary table ONCE at the end - ❌ Showing raw JSON from MCP tools — always parse and present clean summaries
- ❌ Exposing API keys, tokens, or secrets in any rendered output
Status Symbols
Use ONLY these symbols. Random emoji break skimmability.
Campaign Status Banner
Use for /by:status and phase transitions.
A drop-in CLI renderer is provided at scripts/render_campaign_status.py:
Progress During Design
Use for /by:watch and mid-pipeline updates.
Progress bar: 10 blocks total. █ (U+2588) for filled, ░ (U+2591) for empty. Fill proportionally to percent complete.
Ranked Results Table
Use for /by:results and final campaign output.
Screening Battery Display
Use for /by:screen and per-design screening reports.
Score Bar Format
For any metric on a 0-1 scale (or 0-100 normalized to 0-1):
Where bar = 10 blocks, filled proportionally: ████████░░ for 0.80.
Scale: each █ represents 10%. Round to nearest block. Examples:
- 0.85 =
████████░░(8.5 rounds to 9, but display 8 for conservatism below 0.9) - 0.92 =
█████████░ - 0.50 =
█████░░░░░ - 0.12 =
█░░░░░░░░░
For pLDDT (0-100 scale), divide by 100 first: pLDDT 91.2 = 0.912 = █████████░.
Canonical thresholds and labels for ipSAE / ipTM / pLDDT / RMSD live in `references/output-format-spec.md` §Score Bars.
Error Display
Use for warnings, quota exhaustion, and failures.
Checkpoint / Safety Gate
Use for lab submission gates and user approval points.
Next Up Block
Always show at the end of major phase completions.
Long-Running Job Display
Use for SSH remote jobs, HPC dispatch, and Tamarind cloud jobs that take minutes to hours.
Fire-and-Forget Pattern
For jobs submitted to remote compute:
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingtemplates/.claude/skills/by-display/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/001tmf/blatant-why/by-display)