By nurikk
Telegram channel for Claude Code — messaging bridge with built-in access control. Manage pairing, allowlists, and policy via /telegram:access.
npx claudepluginhub nurikk/claude-plugins --plugin telegramManage Telegram channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the Telegram channel.
Set up the Telegram channel — save the bot token and review access policy. Use when the user pastes a Telegram bot token, asks to configure Telegram, asks "how do I set this up" or "who can reach me," or wants to check channel status.
A collection of Claude Code plugins.
/plugin marketplace add nurikk/claude-plugins
Note: The GitHub repo is
nurikk/claude-plugins, but the marketplace identifier isnurikk-plugins(used when installing plugins).
| Plugin | Description | Install |
|---|---|---|
| python-quality | Python formatting, linting & type checking with ruff and ty | /plugin install python-quality@nurikk-plugins |
Automatically runs Python quality checks after file changes.
When Claude writes or edits a .py file, this plugin automatically runs:
| Tool | Command | Purpose |
|---|---|---|
| ruff format | uvx ruff format | Auto-formats code (PEP 8 style) |
| ruff check | uvx ruff check --fix | Lints and auto-fixes safe issues |
| ty | uvx ty check | Type checks using Astral's fast type checker |
jq - JSON processor (pre-installed on most systems)Install uv:
# macOS
brew install uv
# Linux/macOS (curl)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
/plugin marketplace add nurikk/claude-plugins
/plugin install python-quality@nurikk-plugins
Or add directly to your ~/.claude/settings.json:
{
"enabledPlugins": {
"python-quality@nurikk-plugins": true
}
}
The plugin auto-formats Python files using ruff, which handles:
Safe lint fixes are applied automatically:
Type errors are reported but don't block the operation. You'll see output like:
error[invalid-return-type]: Return type does not match returned value
--> example.py:3:25
|
3 | def greet(name: str) -> int:
| --- Expected `int` because of return type
4 | return "hello"
| ^^^^^^^ expected `int`, found `str`
/hooksEnsure uvx is in your PATH:
which uvx
Both tools are run via uvx (uv's tool runner), so they don't need to be pre-installed.
claude-plugins/
├── .claude-plugin/
│ └── marketplace.json # Marketplace catalog
├── plugins/
│ └── python-quality/ # Python quality plugin
│ ├── .claude-plugin/
│ │ └── plugin.json
│ ├── hooks/
│ │ └── hooks.json
│ └── scripts/
│ └── python-quality.sh
├── README.md
└── LICENSE
MIT
Persistent memory system for Claude Code - seamlessly preserve context across sessions
Admin access level
Server config contains admin-level keywords
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.
Streamline people operations — recruiting, onboarding, performance reviews, compensation analysis, and policy guidance. Maintain compliance and keep your team running smoothly.
Memory compression system for Claude Code - persist context across sessions
Permanent coding companion for Claude Code — survives any update. MCP-based terminal pet with ASCII art, stats, reactions, and personality.