SkillAtlasSkill 详情

051-design-two-steps-methods

Help this project grow: Become a sponsor

审核状态:已审核Quality 80Security 70

复制安装命令

用 Codex 或 Claude 安装复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它先审查 Skill 页面再帮你安装。

复制前请先查看来源、License 和安全提示。

项目 README

来源文件:README.md

抓取于 2026年8月29日

Plinth for Java

jabrena%2Fcursor-rules-java | Trendshift

CI Builds

Languages: Español · 中文

Help this project grow: Become a sponsor

Goal

An opinionated AI-native workflow for evolving modern Java Enterprise SDLC practices through reusable Skills, Agents, Commands & MCP servers.

What is a Plinth?

A plinth represents the solid foundation or platform used to support statues or artworks in art and sculpture. It served as a structural and symbolic foundation for columns, statues, and entire temple podiums. Romans inherited the idea from Greek architecture but expanded its use to emphasize monumentality, hierarchy, and imperial power.

Project at a glance

  • 13 Commands
  • 9 Agents
  • 125 Skills

Latest Updates

Explore the latest published content on https://jabrena.github.io/plinth/ and follow its evolution through new skills, improvements, and fixes in the CHANGELOG.

Start in 60 seconds

Install every skill for your preferred agent:

npx skills add jabrena/plinth --skill '*' --agent cursor -y
npx skills add jabrena/plinth --skill '*' --agent claude-code -y
npx skills add jabrena/plinth --skill '*' --agent codex -y
npx skills add jabrena/plinth --skill '*' --agent github-copilot -y

Install every command for your prefered agent:

install @004-commands-installation cursor
install @004-commands-installation claude-code
install @004-commands-installation codex
install @004-commands-installation github-copilot

Install every agent for your prefered agent:

install @005-agents-installation cursor
install @005-agents-installation claude-code
install @005-agents-installation codex
install @005-agents-installation github-copilot

See it in action

You can use the project in 2 ways:

  • Use the AI-Native development workflow
  • Refactor your code with Skills

Using AI-Native development workflow

Prepare the repository with /onboarding, then identify an issue in your Kanban dashboard from Atlasian Jira, Github Issues or Azure DevOps and apply the following workflow:

/onboarding
  |
  v
Issue
  |
  v
/update-issue --> /explore-problem --> /create-acceptance-criteria
  |
  v
/create-spec --> /explore-design
  |
  v
/implement-spec --> /close-spec

/onboarding establishes root AGENTS.md and one unambiguous OpenSpec project before issue selection. It preserves existing prerequisites; when OpenSpec is missing, you select its result path with documentation/openspec as the default.

Analysis & Design

Turn an idea into an actionable change with user stories, GitHub Issues or Jira, ADRs, diagrams, AI plan mode, and OpenSpec.

Functional Specification:

CommandExplanation
/onboardingEstablish root repository guidance and one unambiguous OpenSpec project before issue work.
/update-issueUpdate an existing GitHub or Jira issue with a structured user story, acceptance criteria, and resource content.
/explore-problemEvaluate an issue from five perspectives and post a Functional Specification comment on the issue.
/create-acceptance-criteriaDerive Gherkin acceptance criteria from a Functional Specification and post them as a separate issue comment.

Technical Specification:

CommandExplanation
/create-adr (Optional)Record an architectural decision, its alternatives, rationale, and consequences.
/create-diagram (Optional)Create a focused architecture or design diagram from approved artifacts.
/create-spec (OpenSpec)Create or update one or more validated OpenSpec changes.
/explore-designCompare technical approaches and obtain an approved design direction.
Build

Implement and improve Java applications with Maven, design, coding, testing, security, documentation, Spring Boot, Quarkus, Micronaut, OpenAPI, and WireMock guidance.

CommandExplanation
/implement-specDeliver an approved plan or validated OpenSpec task list through framework-aware delegation.
/close-specArchive an OpenSpec change by name using the OpenSpec CLI.

Operate

Measure and improve production behavior through observability, profiling, benchmarking, and performance testing.

CommandExplanation
/profileCoordinate Java profiling from baseline detection through verified optimization.
/benchmarkSelect and coordinate JMeter, Gatling, or JMH performance workflows.

Compliance (Alpha)

Review Java systems, AI models, and how GenAI tools are used across applications and delivery pipelines for regulation-aware engineering controls, evidence, and qualified owner handoffs spanning AI, data, security, product, platform, market, and governance. These skills support engineering awareness and do not provide legal advice.

RegulationSkill
EU AI Act801-regulations-eu-ai-act
DORA802-regulations-dora
GDPR803-regulations-gdpr
NIS2804-regulations-eu-nis2
Cyber Resilience Act805-regulations-eu-cyber-resilience-act
Data Act806-regulations-eu-data-act
Digital Services Act807-regulations-eu-digital-services-act
Digital Markets Act808-regulations-eu-digital-markets-act
MiFID II810-regulations-eu-mifid-ii
Market Abuse Regulation811-regulations-eu-market-abuse-regulation
Product Liability Directive812-regulations-eu-product-liability-directive

Note: This set of skills could be a good complement for the future OWASP EU Compliance MCP.

Refactor your code with Skill

Ask your agent:

Use @110-java-maven-best-practices to review this Maven project located in examples/@maven/maven-demo
Explain the findings, apply the approved improvements, and validate the build.

The skill guides the agent through a structured Maven review while keeping you in control of proposed changes.

5-Minute Onboarding

Learn to use this project following the quick guide Getting Started in 5 minutes.

Explore the complete Commands, Agents, Skills, and MCP Servers inventories.

Project Components

The project generates a set of deliverables at the end of any iteration.

InventoryInstallationGetting Started
1. Commands@004-commands-installation Install Commands in projectCommands
2. Agents@005-agents-installation Install Agents in Cursor/ClaudeAgents
3. Skillsnpx skills add jabrena/plinth --skill '*' --agent cursor -ySkills

Compatibility

This project is compatible with any tool that supports Commands, Agents, Skills, MCP Servers and AGENTS.md.

Skill Validations

Every push runs the following validation checks in the Skill Scanners as part of the CI Pipeline to keep documentation and generated skills correct, consistent, and secure:

NamePurpose
1. MarkdownValidatorProtects the documentation layer by catching Markdown parsing drift and remote link failures before skill-specific checks run.
2. skill-checkConfirms every generated skill follows the expected packaging contract, complementing scanners that focus on behavior or security risk.
3. cisco-ai-skill-scanner by CiscoAdds behavior-oriented security coverage by looking for risky skill flows that structural validation cannot see.
4. SkillSpector by NVIDIAProvides an independent static quality and security review, useful for comparing findings against the other scanners.
5. Snyk Agent Scan by SNYKFocuses on agent-skill supply-chain and prompt-risk signals, adding another security perspective alongside Cisco and SkillSpector.

Limitations

Lack of determinism

From the outset, be aware that results from interactions with these Skills and agents are not deterministic because of how the models behave, but you can mitigate that with clear goals and validation checkpoints.

Not all models behave in the same way

Some interactive skills require Premium models for interactive use; otherwise they follow a fixed sequence of steps.

Limits of interactions with models

Models can generate code, but they cannot execute it against your local data. To bridge that gap, some Skills include scripts you run locally.

Software engineers must remain in the loop

This project supports software engineering work; it does not replace engineering judgment. A software engineer must review, guide, and validate AI-generated decisions, code, and outcomes before they are used.

Access to corporate data

Use caution when a problem involves corporate databases or other sensitive organizational data. Before granting an AI-assisted workflow access, assess authorization, privacy, data leakage, retention, and unintended modification risks. Apply least-privilege access, human review, validation, and monitoring. See OWASP GenAI Data Security Risks & Mitigations 2026, and the new set of skills about EU regulation.

Contribute

See CONTRIBUTING.md for ways to support and improve the project.

Architecture Decision Records (ADR)

  • Review the ADR index for the complete list.

Java JEPs from Java 8 onward

Java uses JEPs (JDK Enhancement Proposals) to describe new language and platform features. This repository tracks which JEPs could improve the Skills and guidance here.

Further resources

Talks, articles, reference links, skill portals, and related projects live in Project references.

Developed by humans with support from Cursor and Codex, with ❤️ from Madrid

开发与工程

高风险

  • 来源需自行核对维护者身份。
  • 未检测到明显脚本安装指令。
  • 未检测到明显外部权限要求。
  • 存在潜在风险命令,请谨慎安装。
  • 扫描发现:1 条。

Codex — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jabrena/plinth.git
  3. 将 "skills/051-design-two-steps-methods" 文件夹复制到 Codex 的 skills 目录中。
  4. 重启 Codex 让新的 skill 生效。

Codex — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Codex 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Codex 让新的 skill 生效。

Claude Code — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jabrena/plinth.git
  3. 将 "skills/051-design-two-steps-methods" 文件夹复制到 Claude Code 的 skills 目录中。
  4. 重启 Claude Code 让新的 skill 生效。

Claude Code — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Claude Code 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Claude Code 让新的 skill 生效。

Cursor — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jabrena/plinth.git
  3. 将 "skills/051-design-two-steps-methods" 文件夹复制到 Cursor 的 skills 目录中。
  4. 重启 Cursor 让新的 skill 生效。

Cursor — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Cursor 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Cursor 让新的 skill 生效。

GitHub Copilot — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jabrena/plinth.git
  3. 将 "skills/051-design-two-steps-methods" 文件夹复制到 GitHub Copilot 的 skills 目录中。
  4. 重启 GitHub Copilot 让新的 skill 生效。

GitHub Copilot — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 GitHub Copilot 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 GitHub Copilot 让新的 skill 生效。

Windsurf — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/jabrena/plinth.git
  3. 将 "skills/051-design-two-steps-methods" 文件夹复制到 Windsurf 的 skills 目录中。
  4. 重启 Windsurf 让新的 skill 生效。

Windsurf — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Windsurf 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Windsurf 让新的 skill 生效。
查看 SKILL.md 原文
name: 051-design-two-steps-methods
description: Use when a complex or risky code change should be split into Kent Beck's two-step method by first making the change easy through behavior-preserving preparatory refactoring, then making the intended behavior change once the design supports it. This should trigger for requests such as Apply two-step change; Make this risky change safer; Refactor before changing behavior; Separate preparation from behavior change. Part of Plinth Toolkit
license: Apache-2.0
metadata:
  author: Juan Antonio Breña Moral
  version: 0.18.0

Two-Step Change Method

Guide Java developers through complex or risky changes by keeping design preparation separate from behavior modification. This is an interactive SKILL.

What is covered in this Skill?

  • Clarifying the intended behavior change before editing
  • Identifying design obstacles that make the change difficult or risky
  • Step 1: behavior-preserving preparatory refactoring that makes the change easy
  • Validation that Step 1 preserves existing behavior
  • Step 2: the smallest intended behavior change after the design supports it
  • Verification that Step 2 delivers the intended behavior
  • Handoff to focused Java, framework, persistence, messaging, API, or testing skills while preserving the two-step sequence

Constraints

Separate behavior-preserving preparation from behavior-changing work, and validate after each step.

  • MUST: State the intended behavior change before proposing preparatory refactoring
  • MUST: Keep Step 1 behavior-preserving; do not mix broad refactoring with the intended behavior change
  • MUST: Verify existing behavior after Step 1 using the project-appropriate tests, build, characterization tests, or manual checks
  • MUST: Make Step 2 only after the design has been prepared and validated
  • MUST: Verify the intended behavior after Step 2 with focused tests and relevant build checks
  • MUST: Record assumptions and risks when preparation cannot be fully separated from behavior change

When to use this skill

  • Apply two-step change
  • Make this risky change safer
  • Refactor before changing behavior
  • Separate preparation from behavior change
  • Make the change easy, then make the easy change

Workflow

  1. Define the intended change

Read references/051-design-two-steps-methods.md, inspect the relevant code and tests, and state the exact behavior or capability that must change. Identify why the current design makes the change complex, risky, or hard to verify.

  1. Plan preparatory refactoring

Choose the smallest behavior-preserving refactoring that reduces the obstacle: extract method or class, clarify names, isolate dependencies, add seams for testing, move responsibilities, improve types, or add characterization tests before touching behavior.

  1. Make the change easy

Apply Step 1 as focused preparatory refactoring only. Keep commits, notes, or task boundaries clear enough that reviewers can see no intended behavior change is included.

  1. Validate preserved behavior

Run the relevant existing tests, build checks, characterization tests, or manual verification. If behavior changes unexpectedly, fix or revert the preparation before proceeding.

  1. Make the easy behavior change

Apply the smallest intended behavior change now that the design supports it. Use focused Java, framework, persistence, messaging, API, or testing skills when detailed implementation guidance is needed.

  1. Verify and report the outcome

Verify the intended behavior with targeted tests and relevant project validation. Report what was preparation, what changed behavior, what was verified after each step, and any remaining risks.

Reference

For detailed guidance, examples, and constraints, see references/051-design-two-steps-methods.md.

发现问题?提交给管理员复核

评分:

评论 (0)

暂无评论,成为第一个评论者吧!