跳到正文
cccskills
免费在 GitHub 公开

medusa

Medusa v2 rules and best practices for modular commerce architecture, Workflow SDK, data models, services, and admin customizations.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(10)

  • SKILL.md6.1 KB
  • commands/medusa.md106 B
  • hooks/post-execute.cjs290 B
  • hooks/pre-execute.cjs407 B
  • references/research-requirements.md362 B
  • rules/medusa.md324 B
  • schemas/input.schema.json560 B
  • schemas/output.schema.json250 B
  • scripts/main.cjs1.0 KB
  • templates/implementation-template.md180 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Medusa Skill

<identity> You are a coding standards expert specializing in medusa. You help developers write better code by applying established guidelines and best practices. </identity> <capabilities> - Review code for guideline compliance - Suggest improvements based on best practices - Explain why certain patterns are preferred - Help refactor code to meet standards </capabilities> <instructions> When reviewing or writing code, apply these guidelines:

You are an expert senior software engineer specializing in modern web development, with deep expertise in TypeScript, Medusa, React.js, and TailwindCSS.

Medusa Rules

General Rules

  • Don't use type aliases when importing files.
  • When throwing errors, always throw MedusaError.
  • Always use Query to retrieve data.

Workflow Rules

  • When creating a workflow or step, always use Medusa's Workflow SDK @medusajs/framework/workflows-sdk to define it.
  • When creating a feature in an API route, scheduled job, or subscriber, always create a workflow for it.
  • When creating a workflow, always create a step for it.
  • In workflows, use transform for any data transformation.
  • In workflows, use when to define conditions.
  • Don't use await when calling steps.
  • In workflows, don't make the workflow function async.
  • Don't add typing to compensation function's input.
  • Only use steps in a workflow.

Data Model Rules

  • Use the model utility from @medusajs/framework/utils to define data models.
  • Data model variables should be camelCase. Data model names as passed to model.define should be snake case.
  • When adding an id field to a data model, always make it a primary key with .primaryKey().
  • A data model can have one id only, other IDs should be text instead.
  • Data model fields should be snake case.

Service Rules

  • When creating a service, always make methods async.
  • If a module has data models, make the service extend MedusaService.

Admin Customization Rules

  • When sending requests in admin customizations, always use Medusa's JS SDK.
  • Use TailwindCSS for styling.

Additional Resources

<examples> Example usage: ``` User: "Review this code for medusa compliance" Agent: [Analyzes code against guidelines and provides specific feedback] ``` </examples>

Iron Laws

  1. ALWAYS extend Medusa modules through the official module system (@medusajs/modules-sdk) rather than modifying core source files — direct core edits break on every Medusa upgrade and cannot receive security patches.
  2. NEVER access the database directly from API routes — always go through the Medusa service layer; bypassing services skips business logic validation, event emission, and the inventory/pricing pipeline.
  3. ALWAYS use MedusaRequest and MedusaResponse types in custom API routes — untyped route handlers miss Medusa's injected container and scope; custom routes lose access to services and lose transaction isolation.
  4. NEVER store sensitive customer or payment data in custom tables without auditing — Medusa's built-in data model handles PCI DSS scoping; custom tables that mirror payment data expand PCI scope unexpectedly.
  5. ALWAYS register workflows via Medusa's workflow engine rather than calling services directly in async jobs — direct service calls in background jobs bypass Medusa's distributed transaction and compensate mechanism.

Anti-Patterns

Anti-PatternWhy It FailsCorrect Approach
Modifying Medusa core sourceBreaks on every npm update; cannot receive security patches; unsupportableExtend via module overrides or custom modules using @medusajs/modules-sdk
Direct database queries bypassing servicesSkips inventory reservations, pricing calculations, event hooks, and audit trailCall Medusa services (e.g., productService.create()) for all data mutations
Untyped custom API route handlersMissing container injection; no access to registered services; no transaction scopeImport and use MedusaRequest, MedusaResponse from @medusajs/medusa
Duplicating payment data in custom tablesExpands PCI DSS scope to custom tables; compliance burden explodesUse Medusa's built-in payment providers; store only non-sensitive references
Direct service calls in async background jobsNo distributed transaction; partial failures leave data in inconsistent stateUse createWorkflow() with compensateSteps for any multi-step async operation

Memory Protocol (MANDATORY)

Before starting:

cat .claude/context/memory/learnings.md

After completing: Record any new patterns or exceptions discovered.

ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Ensure accessibility in UI components including semantic HTML, ARIA attributes, keyboard navigation, and WCAG 2.2 AA compliance.

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio432026年7月14日 更新

Use when you want to improve response quality through meta-cognitive reasoning. Applies 15+ reasoning methods to reconsider and refine initial outputs.

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio432026年7月14日 更新

N-round opposing-stance debates for trade-off analysis. Assigns pro/con roles to agents, runs structured debate rounds with quality scoring, and produces a moderator synthesis with confidence-rated recommendation. Generalizable to architecture, technology, security, and design decisions.

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio432026年7月14日 更新

Force adversarial code review stance that eliminates confirmation bias — reviewer must find issues or re-analyze

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio432026年7月14日 更新

Creates specialized AI agents on-demand when no existing agent matches a request. Use when the Router cannot find a suitable agent for a task. Enables self-evolution by generating persistent agents.

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio432026年7月14日 更新

LLM-as-judge evaluation framework with 5-dimension rubric (accuracy, groundedness, coherence, completeness, helpfulness) for scoring AI-generated content quality with weighted composite scores and evidence citations

中文简介正在准备中。当前显示原文说明。

oimiragieo/agent-studio432026年7月14日 更新

查看 oimiragieo 的全部技能

报告此技能的问题