Skip to content

Repository files navigation

Modern Code Guidelines

简体中文

A shared skill package for Codex, Cursor, Claude Code, Kiro, Google Antigravity, Gemini CLI, GitHub Copilot, Cline, OpenCode, Devin, JetBrains Junie, and OpenHands, containing forty-two independently triggered language and framework skills:

  • Codex: .codex-plugin/plugin.json
  • Cursor: .cursor-plugin/plugin.json
  • Claude Code: .claude-plugin/plugin.json

Canonical sources and distribution entry points:

  • skills/: the canonical Agent Skills source directory.
  • AGENTS.md: always-on project guidance when this repository is opened directly.
  • GEMINI.md: Gemini CLI context for a direct checkout; it imports AGENTS.md.
  • npx skills: installs only the canonical skills/ directory into selected host paths.
  • Plugin manifests: Codex, Cursor, and Claude Code.

Marketplace catalogs are provided for direct repository or local installation:

  • Codex: .agents/plugins/marketplace.json
  • Cursor: .cursor-plugin/marketplace.json
  • Claude Code: .claude-plugin/marketplace.json

This project is distributed directly from its repository and is not submitted to the official plugin stores.

Installation

The repository is hosted at zcyc/modern-code-guidelines. The marketplace name is modern-code-guidelines for all three hosts.

Codex

Run these commands in a terminal. The first command adds the repository marketplace; the second installs the plugin:

codex plugin marketplace add zcyc/modern-code-guidelines
codex plugin add modern-code-guidelines@modern-code-guidelines

For a local checkout, replace zcyc/modern-code-guidelines with its absolute path.

Cursor

Add the repository marketplace from a terminal, then install the plugin from Cursor's /plugins interface:

cursor-agent plugin marketplace add https://github.com/zcyc/modern-code-guidelines

Open /plugins, select the modern-code-guidelines marketplace, and install modern-code-guidelines.

Claude Code

Run these commands inside a Claude Code session:

/plugin marketplace add zcyc/modern-code-guidelines
/plugin install modern-code-guidelines@modern-code-guidelines

For a local checkout, use its absolute path with /plugin marketplace add.

Updating

Refresh the marketplace before reinstalling or updating the plugin:

# Codex
codex plugin marketplace upgrade modern-code-guidelines
codex plugin remove modern-code-guidelines@modern-code-guidelines
codex plugin add modern-code-guidelines@modern-code-guidelines

# Claude Code
claude plugin marketplace update modern-code-guidelines
claude plugin update modern-code-guidelines@modern-code-guidelines

For Cursor, run cursor-agent plugin marketplace update modern-code-guidelines, then reopen Cursor and reinstall from /plugins if the cached version does not change.

Native Agent Skills (npx skills)

# Run from the target project's root.
# Interactive installation:
npx skills add zcyc/modern-code-guidelines

# Install all skills into one host.
npx skills add zcyc/modern-code-guidelines \
  --skill '*' \
  --agent gemini-cli \
  --yes

# Supported values for --agent:
# codex cursor claude-code gemini-cli antigravity kiro-cli
# github-copilot cline opencode devin junie openhands

# Install all skills into this project's supported hosts.
npx skills add zcyc/modern-code-guidelines \
  --skill '*' \
  --agent codex cursor claude-code gemini-cli antigravity kiro-cli \
  --agent github-copilot cline opencode devin junie openhands \
  --yes

# Verify and update.
npx skills ls -a gemini-cli
npx skills update

# Use --copy when symlinks are unavailable.
npx skills add zcyc/modern-code-guidelines --skill '*' --agent gemini-cli --copy

Skills

Language skills (17):

  • use-modern-java
  • use-modern-javascript
  • use-modern-typescript
  • use-modern-python
  • use-modern-csharp
  • use-modern-go
  • use-modern-rust
  • use-modern-scala
  • use-modern-cpp
  • use-modern-swift
  • use-modern-kotlin
  • use-modern-dart
  • use-modern-php
  • use-modern-ruby
  • use-modern-c
  • use-modern-sql
  • use-modern-shell

Framework skills (25):

  • use-modern-react
  • use-modern-nextjs
  • use-modern-vue
  • use-modern-angular
  • use-modern-spring-boot
  • use-modern-aspnet-core
  • use-modern-django
  • use-modern-fastapi
  • use-modern-express
  • use-modern-flask
  • use-modern-flutter
  • use-modern-uikit
  • use-modern-appkit
  • use-modern-swiftui
  • use-modern-swiftdata
  • use-modern-ktor
  • use-modern-nestjs
  • use-modern-nuxt
  • use-modern-expo
  • use-modern-react-native
  • use-modern-sveltekit
  • use-modern-astro
  • use-modern-jetpack-compose
  • use-modern-laravel
  • use-modern-rails

Language skills read the project's explicit language/compiler/runtime target. Framework skills additionally resolve the framework, build tool, deployment target, and project architecture before applying version-sensitive guidance. Version-specific references stay beside each skill.

Apple skills are layered: use use-modern-swift for the language, then add only the frameworks present in the target. Keep SwiftUI, UIKit, and AppKit separate because their lifecycle and platform rules differ; keep SwiftData separate because persistence and migration have different boundaries.

The JavaScript skill covers core ECMAScript and Node.js. TypeScript has its own skill for compiler/type-system behavior. Browser APIs, CSS, accessibility, and web performance remain the responsibility of modern-web-guidance.

Rule sources

Each skill resolves the project's declared target first, then reads its local rules. The references prioritize official language and framework specifications, release notes, compiler documentation, and runtime/standard-library/platform API documentation:

Language Version and language source Runtime/API source
Java Oracle Java Language Updates, Java Language Specification Java SE API
JavaScript ECMAScript 2026 Node.js APIs, Node.js releases
TypeScript TypeScript release notes, TypeScript 7, TSConfig reference The selected JavaScript host and its runtime/API documentation
Python Python What’s New, What’s New in Python 3.14, Language Reference Python Standard Library
C# C# version history, C# 15 preview, language versioning C# language reference, .NET API browser
Go Go specification, Effective Go, Go Code Review Comments, Go 1.27 release notes; supplementary Modern Go Guidelines Go standard library, Go release history
Rust Rust Edition Guide, Rust Style Guide Rust release notes, Rust standard library, Cargo Book
Scala Scala release lines, Scala 3 Reference Scala/JDK compatibility, sbt, Scalafmt, Scalafix
C++ C++ Core Guidelines, ISO/IEC 14882:2024, C++26 working papers cppreference C++ language, standard library
Swift Swift 6.3 release, Swift API Design Guidelines, Swift Evolution Swift Book, Swift concurrency, Swift 6 data-race safety migration, Swift Testing, XCTest
Kotlin What's new in Kotlin 2.0, What's new in Kotlin 2.4, Kotlin coding conventions Kotlin language documentation, Kotlin coroutines guide
Dart Dart 3.13 announcement, Effective Dart Dart language specification, Dart linter rules
PHP PHP 8.5 release, PHP language manual PHP standard library, PHP-FIG PSR
Ruby Ruby 4.0 release, Ruby documentation, RuboCop style cops Ruby core API
C ISO/IEC 9899:2024 (C23), C language reference, SEI CERT C C standard library reference
SQL ISO/IEC 9075:2023, SQLFluff rules PostgreSQL release notes, or the selected database vendor's SQL and transaction documentation
Shell POSIX Shell Command Language, Bash manual ShellCheck

Framework sources

Framework Release, version, and compatibility sources Architecture and API sources
React React versions, React 19.3 Rules of React, React Compiler, React Actions, <ViewTransition>, <Fragment> and Fragment refs, browser
Next.js Next.js 16, Next.js release blog App Router, Server and Client Components, use cache, Cache Components, Proxy
Vue Vue releases Vue introduction, Composition API FAQ, Vue with TypeScript, Composables
Angular Angular releases, Version compatibility Angular overview, Component anatomy, Signals, Zoneless, Standalone migration, resource
Spring Boot Spring Boot project Spring Boot reference, Spring Security reference, Spring application features, Observability, Reactive web
ASP.NET Core ASP.NET Core release notes ASP.NET Core docs, Minimal APIs, Middleware, Dependency injection, Error handling
Django Django 6.1 release, Django 6.0 release Django documentation, Async support, Tasks, Database optimization, Transactions, Security
FastAPI FastAPI release notes FastAPI documentation, Async, Dependencies, Events, Response models
Express Express 5 migration Express documentation, Error handling, Security best practices
Flask Flask changes Flask documentation, Application factories, Testing
Flutter Flutter what's new Architectural overview, App architecture, State management, Performance, Accessibility
Ktor Ktor releases Ktor server documentation, Plugins, Testing
UIKit UIKit updates, iOS and iPadOS release notes UIKit documentation, UIKit integration, Human Interface Guidelines
AppKit AppKit updates, macOS release notes AppKit documentation, AppKit integration, Human Interface Guidelines
SwiftUI SwiftUI updates SwiftUI documentation, Human Interface Guidelines, Model data, NavigationStack, task, ForEach
SwiftData SwiftData updates SwiftData documentation, ModelContainer, ModelContext, ModelActor, Core Data, Schema migration
NestJS Migration guide NestJS documentation, Modules, Providers, Pipes, Guards, Interceptors, Security
Nuxt Nuxt releases Nuxt 4 data fetching, Nuxt 4 rendering, Nuxt 3 data fetching, Server directory, Server components, Configuration
Expo Expo SDK versions, Upgrade the Expo SDK Workflow overview, Configuration, Development builds, Expo Router, EAS Update runtime versions, Using libraries
React Native Release overview, React Native 0.87 Architecture, New Architecture, Turbo Native Modules, FlatList optimization
SvelteKit SvelteKit releases Svelte runes, Load, Form actions, Hooks, $app/state, adapter-auto
Astro Astro 7 Islands, Content collections, On-demand rendering, Server islands, Actions, Middleware
Jetpack Compose Compose releases Compose architecture, Android architecture, State, State hoisting, Side-effects
Laravel Laravel releases Laravel documentation, Routing, Validation, Authorization, Eloquent relationships, Queues, Migrations
Rails Rails releases, Upgrading Rails Rails guides, Getting started, Active Record basics, Active Record querying, Active Job

The detailed rules and their source links live in each skill's local references/guidelines.md. Framework references use the framework's official documentation as the primary source. Secondary guidance can inform examples, but it does not override the project's declared target or the primary sources above.

Relationship to related projects

This project was inspired by modern-go-guidelines and modern-web-guidance. It complements both projects rather than replacing them:

  • modern-go-guidelines focuses on modern Go language and standard-library guidance.
  • modern-web-guidance focuses on browser and web-platform practices such as Web APIs, CSS, accessibility, and web performance.
  • modern-code-guidelines focuses on version-aware language, compiler, runtime, standard-library, database, and secure-coding guidance across the listed languages. Its Go rules use official Go documentation as the authority, with JetBrains go-modern-guidelines as supplementary reference; the official Go toolchain is used only for the most suitable formatting, testing, and correctness checks.

The JavaScript and TypeScript skills intentionally stop at core language, compiler, Node.js, and runtime concerns. Browser UI, CSS, accessibility, and web performance remain in modern-web-guidance, so the projects can be used together with clear boundaries.

Compatibility boundary

Codex, Cursor, and Claude Code discover the package through host-specific plugin manifests. When this repository is opened directly, Kiro, GitHub Copilot, Cline, OpenCode, Devin, JetBrains Junie, and OpenHands use AGENTS.md; Gemini CLI uses GEMINI.md. The npx skills commands install only the canonical skills/ directory into the selected host paths; they do not copy these root instruction files. Every entry point routes to the same skill rules.

About

Version-aware development guidelines for modern programming languages and popular frameworks, built for Codex, Cursor, and Claude Code.

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors