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 skills/crypdick/pynchy/pynchy-plugin-authoringnpx skills add crypdick/pynchy --skill pynchy-plugin-authoringgit clone --depth 1 https://github.com/crypdick/pynchyWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/crypdick/pynchy/pynchy-plugin-authoring)<a href="https://agentmods.dev/skills/crypdick/pynchy/pynchy-plugin-authoring"><img src="https://agentmods.dev/badge/skills/crypdick/pynchy/pynchy-plugin-authoring.svg" alt="Measured on agentmods" height="20"></a>What 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.00064 | $0.01005 |
| Opus 5 | $0.00032 | $0.00502 |
| Sonnet 5 | $0.00013 | $0.00201 |
| Haiku 4.5 | $0.00006 | $0.00101 |
Grade A, and why
Pynchy Plugin Authoring 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 5d 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 — 114 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Pynchy Plugin Authoring
When To Use
Use this skill when the user asks to:
- Create a new
pynchyplugin - Add a new hook to an existing plugin
- Register/enable plugins in
config.toml - Validate plugin discovery and runtime behavior
Core Rules
- Keep plugin responsibilities narrow. One plugin can implement multiple hooks, but avoid unrelated concerns in one package.
- In the plugin repository
pyproject.toml(notpynchy/pyproject.toml), define entry points under[project.entry-points."pynchy"]. - For host runtime/channel code, treat plugin code as high trust and avoid risky side effects in import-time code.
- For plugin docs, cross-link to
pynchy/docs/plugins/*instead of duplicating long explanations. - Refer to the quickstart guide for the recommended plugin directory structure.
- Plugin config models belong in the plugin. Define Pydantic config models inside the plugin's own source file, not in
pynchy/src/pynchy/config/models.py. The coreconfig/models.pyis for pynchy core settings only.
File Scope Conventions
When this skill mentions config files, use this mapping:
- Host app config:
config.toml([plugins.<name>]entries enable repos) - Host app package metadata:
pyproject.toml - Plugin package metadata:
<plugin-repo>/pyproject.toml(entry points live here) - Plugin source:
<plugin-repo>/src/<plugin_module>/...
Authoring Workflow
Copy this checklist and complete it in order:
Plugin Authoring Checklist
- [ ] Choose plugin scope and hook categories
- [ ] Create plugin directory structure (or update existing plugin)
- [ ] Implement hook methods and runtime logic
- [ ] Add/update tests
- [ ] Configure local pynchy [plugins.<name>] entry
- [ ] Run tests and smoke checks
- [ ] Update docs if behavior is user-visible
Hook Map
pynchy_create_channel: Host-side channel instancepynchy_speech_synthesizer: Shared speech output providerpynchy_service_handler: Typed host actions (IPC dispatch)pynchy_computer_use_backend: Computer-use providerpynchy_action_specs: Semantic action contractspynchy_skill_paths: Skill directories mounted into containerpynchy_agent_core_info: Agent core implementation metadatapynchy_agent_hook_specs: Trusted agent lifecycle hook modulespynchy_container_runtime: Host container runtime providerpynchy_tunnel: Host tunnel providerpynchy_connection_runtime: Long-lived authenticated connection runtimepynchy_observer: Host event observerpynchy_webhook_routes: Authenticated webhook routespynchy_mcp_server_spec: MCP server templatepynchy_workspace_spec: Managed workspace definitionspynchy_job_specs: Config-backed jobs
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.
- 5d ago First seen · 114 lines · 64 tokens per session scan A f2292d5d1718
Pynchy Plugin Authoring is a skill published in the GitHub repository crypdick/pynchy (10 stars, last pushed 2d ago), licensed MIT. It adds 64 tokens to every session and 1,005 once invoked, about $0.0003 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-31.
Other skills, from other repositories
migrate-from-openclaw
Migrate from OpenClaw to NanoClaw v2. Detects an existing OpenClaw installation, extracts identity, channel credentials, scheduled tasks, and other config, then guides interactive migration. Triggers on "migrate from openclaw", "openclaw migration", "import from openclaw".
add-dial-tool
Give chosen NanoClaw agents a real phone number as a container tool — the dial CLI baked into the agent image plus OneCLI credential injection for api.getdial.ai, scoped per agent, so the agents you pick can send SMS, place AI voice calls, and receive verification codes from inside the sandbox. Independent of the Dial…
add-signal
Add Signal channel integration via signal-cli device-link. Native adapter — no Chat SDK bridge.
add-telegram
Add Telegram channel integration via Chat SDK.
migrate-slack-agents
Migrate a classic single-bot Slack install to one provisioned Slack app per existing agent group while preserving agent identities, workspaces, memory, and wiring behavior — or record the operator's choice to stay on classic, which remains supported. Use when /update-nanoclaw surfaces the Slack agents requirement, or…
slack-agent-flow
Let an existing Slack agent create new agents that arrive as their own Slack bots — provisioned app, operator DM, and a shared three-way room, hot-started without a host restart.