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/iflytek/skillhub/code-conventionsnpx skills add iflytek/skillhub --skill code-conventionsgit clone --depth 1 https://github.com/iflytek/skillhubWhat 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.00032 | $0.01072 |
| Opus 5 | $0.00016 | $0.00536 |
| Sonnet 5 | $0.00006 | $0.00214 |
| Haiku 4.5 | $0.00003 | $0.00107 |
Grade A, and why
code-conventions 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 — 136 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Code Conventions Skill
Java / Backend Conventions
User Identity Type
User identity is always String throughout the codebase. This covers:
- Authentication and authorization
- API parameters and responses
- Permission checks
- Audit logs
- Resource owner, creator, reviewer, actor, submittedBy fields
Never introduce int, long, or bigint as user identifiers. The platform needs to support
external SSO/OIDC/SCIM identity sources whose UIDs are typically stable strings.
Exception Handling
- Use
LocalizedDomainExceptionfor user-facing error messages (supports i18n) - Use
DomainBadRequestExceptionfor invalid client input - Use
DomainNotFoundExceptionfor missing resources - Use
DomainForbiddenExceptionfor authorization failures - Exception classes live in
skillhub-domain/shared/exception/
Domain Services
- Return domain objects, not DTOs
- Contain business rules and state transitions
- Use domain events for cross-cutting side effects (publishing, notifications)
- Located in
domain/{submodule}/service/
Controllers
- Transport only: extract auth context, bind request params, wrap responses
- No business logic in controllers
- Located in
com.iflytek.skillhub.controller/
Query Repositories
- Handle read-model joins and presentation projection
- Return DTOs or presentation models
- Located in
com.iflytek.skillhub.repository/ - Named like
*QueryRepository(e.g.,GovernanceQueryRepository,MySkillQueryRepository)
App Services
- Workflow orchestration: coordinate domain services and query repositories
- Should express "what this endpoint does", not "how it assembles DTOs"
- Located in
com.iflytek.skillhub.service/
Logging
- Use SLF4J with structured logging
- Use MDC for request tracing
- Log at appropriate levels: INFO for business events, DEBUG for troubleshooting, ERROR for failures
TypeScript / Frontend Conventions
Type Safety
- Strict TypeScript mode. No
anytypes. - Use generated OpenAPI types from
web/src/api/generated/schema.d.tsfor all API interactions. - Additional types in
web/src/types/
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 · 136 lines · 32 tokens per session scan A ad8d44e46bb4
code-conventions is a skill published in the GitHub repository iflytek/skillhub (4,911 stars, last pushed 3d ago), licensed Apache-2.0. It adds 32 tokens to every session and 1,072 once invoked, about $0.0002 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 skills, from other repositories
openspec-explore
Enter explore mode - a thinking partner for exploring ideas, investigating problems, and clarifying requirements. Use when the user wants to think through something before or during a change.
openclaw-docs
Find authoritative guidance for installing, configuring, operating, securing, and troubleshooting OpenClaw, including channels, model providers, Gateway operations, tools, plugins, automation, nodes, multi-agent routing, and CLI errors. Use for any question or maintenance task involving an OpenClaw installation…
openspec-apply-change
Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.
openspec-archive-change
Archive a completed change in the experimental workflow. Use when the user wants to finalize and archive a change after implementation is complete.
openspec-propose
Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation.
anysearch
Real-time search engine supporting web search, vertical domain search, parallel batch search, and URL content extraction.