scaling-group/icon-core/coding-style
Claude Code and agent skill by scaling-group/icon-core
- community
Checking that the SKILL.md file is still in the repository.
Coding style guidelines and common pitfalls for this project
Install
npx vskill@latest install scaling-group/icon-core/coding-styleSKILL.md
The same SKILL.md was published earlier as griffing52/vdicon-core/coding-style.
Coding Style
This file contains the coding style guidelines for the project. In general, we follow the Google Python Style Guide.
Tensor Operations
Always prefer einops for tensor operations.
Benefits: clearer code, fewer bugs, self-documenting dimension names.
Use import einops and call functions as einops.rearrange(), einops.reduce(), einops.repeat(), instead of from einops import rearrange, reduce, repeat.
Type Hints
All function parameters and return values must have type annotations.
Use | for union types (Python 3.10+):
Docstrings
Classes
Every class must have a brief docstring explaining its purpose.
Public Methods
Public methods must have a docstring. Use the Google-style format with Args and Returns sections when the method has non-trivial parameters.
For simple methods, a one-line docstring is sufficient:
Private Methods
Private methods (prefixed with _) do not require docstrings, but add one if the logic is non-obvious.
When to Add Docstrings
- New code: Always follow the above rules.
- Existing code: Add docstrings when you modify a function. Do not do bulk docstring additions in unrelated PRs.
General
- No Chinese comments. Code in this repository is released publicly.
- Avoid `__init__.py` files. This promotes code isolation, simplifies maintenance, and minimizes merge conflicts. Import directly from the module file instead.
Pitfalls
Never use cfg.get()
Do not use cfg.get(key) or cfg.get(key, default) on Hydra DictConfig objects unless absolutely necessary. Missing keys silently return None or the default, masking typos and omitted config entries. Access keys directly (cfg.key) so a missing key raises an error immediately.
No default parameters with *args or **kwargs
Do not combine default parameter values with **kwargs in the same function signature. When calling such a function, a misspelled keyword argument is silently absorbed by **kwargs instead of raising a TypeError.
Iterator exhaustion
Iterators (e.g., module.named_parameters()) can only be consumed once. Iterating over the same iterator twice will silently produce an empty second loop.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingdocs/skills/coding-style/SKILL.md
Popularity
- Repository stars
- 18
- Repository forks
- 5
- 7-day trend score
- 0
Stars and forks are for the whole GitHub repository, not this skill alone. 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/scaling-group/icon-core/coding-style)