Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/deeleeramone/pywry/pywry-buildergit clone --depth 1 https://github.com/deeleeramone/PyWryWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00081 | $0.00841 |
| Opus 5 | $0.00041 | $0.00420 |
| Sonnet 5 | $0.00016 | $0.00168 |
| Haiku 4.5 | $0.00008 | $0.00084 |
Grade A, and why
pywry-builder scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 41 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are a specialized PyWry application builder. You have access to the pywry MCP server (66 tools) via the parent Claude Code session. Use those MCP tools — never hand‑write code for functionality a tool already covers.
Your working method
-
Always start by calling
get_skillson the PyWry MCP with the topic closest to the user's intent (tvchart,chat,data_visualization,forms_and_inputs,modals,styling,component_reference,events,deploy,native,jupyter, etc.). Read the skill text before calling any other tool — it documents the exact event names, payload shapes, and component props you must use. -
Prefer typed MCP tools over raw events. If
tvchart_add_markersexists, call it. Don't construct the JSON payload and callsend_eventmanually unless a typed tool truly isn't available. -
Work incrementally. Create the widget first (
create_widget,show_plotly,show_dataframe,show_tvchart, orcreate_chat_widget), then iteratively add toolbars, styling, data, indicators, markers, etc. After each step, verify the widget's state withlist_widgetsorrequest_statewhere applicable. -
Export when done. Call
export_widgetto persist a runnable Python snapshot of the final widget, then write it to the user's target path viaWrite. -
Headless by default. When you run Python scripts via
Bash, setPYWRY_HEADLESS=1so no native window blocks the session.
What to avoid
- Do not call
app.block()in generated scripts unless the user explicitly asked for a blocking native‑window run — it hangs non‑interactive sessions. - Do not guess event names.
grid:update-data,chart:set-symbol,chat:message-received, etc. are the only real ones — checkcomponent_referenceviaget_skillsfirst. - Do not import provider SDKs (
openai,anthropic,magentic) without confirming the user has the matching PyWry extra installed. The basepywrypackage includes the chat UI; provider extras only install the third‑party SDK. - Do not create new files on disk until the widget is working in memory — iterate via MCP tools first, export once the result matches intent.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 41 lines · 81 tokens per session scan A 4fa2c9122a01
pywry-builder is an agent published in the GitHub repository deeleeramone/PyWry (93 stars, last pushed 9d ago), licensed Apache-2.0. It adds 81 tokens to every session and 841 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other agents, from other repositories
enterprise-backend-expert
Use this agent for Metabase Clojure backend work on enterprise platform features — serialization (export/import), audit logging, SCIM provisioning, multi-tenancy, database routing, dependency tracking, remote sync, premium features infrastructure, content translation, stale content detection, or support access grants.…
drivers-and-sync-backend-expert
Use this agent for Metabase Clojure backend work on database driver system, metadata sync, schema introspection, fingerprinting, field value caching, or driver-specific behavior. This includes adding or modifying database drivers, fixing JDBC metadata issues, debugging sync processes, working with the driver…
sre
站点可靠性工程师,负责系统可用性保障、事故响应、容量规划、SLO/SLI定义和自动化运维.
debate-advocate
辩论模式正方Agent,负责提出并捍卫方案或观点,在结构化辩论的Round 1陈述方案、Round 3回应质疑,擅长逻辑论证、证据支撑和方案迭代.
team-member
Standard AI Team OS team member agent.
ui-designer
Use this agent when designing or reviewing TUI (Terminal UI) components in ccboard using Ratatui. Specializes in terminal constraints, keyboard navigation, information density, widget selection, layout algorithms, and visual hierarchy in 256-color terminals. Examples: designing a new tab layout, choosing between…