pynchy-plugin-authoringlisted
Install: claude install-skill crypdick/pynchy
# Pynchy Plugin Authoring
## When To Use
Use this skill when the user asks to:
- Create a new `pynchy` plugin
- Add a new hook to an existing plugin
- Register/enable plugins in `config.toml`
- Validate plugin discovery and runtime behavior
## Core Rules
1. Keep plugin responsibilities narrow. One plugin can implement multiple hooks, but avoid unrelated concerns in one package.
2. In the plugin repository `pyproject.toml` (not `pynchy/pyproject.toml`), define entry points under `[project.entry-points."pynchy"]`.
3. For host runtime/channel code, treat plugin code as high trust and avoid risky side effects in import-time code.
4. For plugin docs, cross-link to `pynchy/docs/plugins/*` instead of duplicating long explanations.
5. Refer to the [quickstart guide](https://pynchy.ricardodecal.com/plugins/quickstart/) for the recommended plugin directory structure.
6. **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 core `config/models.py` is 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 comple