# Plugin của Claude Code trong 7 phút

[Software Engineer Meets AI](https://homus.dev/speakers/software-engineer-meets-ai) · [Software Engineer Meets AI](https://homus.dev/orgs/software-engineer-meets-ai)

> Plugin của Claude Code là gì, cách cài, xem nội dung, gỡ, khi nào nên dùng thay standalone, cách nhờ Claude Code tạo plugin và rủi ro bảo mật.

Topics: Plugins, Dev Tools, Security

Canonical: https://homus.dev/talks/claude-code-plugins-explained-in-7-minutes

## 1. Plugin là gì và chứa được những gì

Video mở đầu bằng lời hứa: trong khoảng bảy phút, người xem sẽ biết mọi thứ cần biết về plugin của Claude Code, gồm cả cách cài một plugin có sẵn lẫn cách tự tạo một plugin của riêng mình.

Câu hỏi đầu tiên là plugin là gì. Định nghĩa trên màn hình rất ngắn: plugin là những extension đóng gói các chức năng có thể dùng lại (reusable functionality). Thay vì mỗi người tự cấu hình lại từ đầu, bạn gói những thứ đã chạy tốt vào một chỗ rồi mang đi dùng tiếp.

Trong Claude Code, một plugin duy nhất có thể chứa cùng lúc nhiều loại thành phần: skill, sub-agent, MCP server, hook và LSP server (language server, thứ giúp Claude hiểu code theo symbol và thấy lỗi kiểu sau khi sửa). Nói cách khác, plugin là cái hộp, còn bên trong hộp có thể là bất cứ tổ hợp nào của năm loại trên.

![Sơ đồ Claude Code Plugins: định nghĩa và năm thành phần Skills, Subagents, MCP's, Hooks, LSP Servers](https://homus.dev/photos/_lBG5h3AY50-0023.jpg)

Bảng vẽ tay mở đầu video: dòng định nghĩa "Claude Code Plugins are extensions that package reusable functionality", và câu hỏi "What does it include?" với năm nhánh tỏa ra từ Claude Code Plugins là Skills, Subagents, MCP's, Hooks và LSP Servers.

Kênh vừa đăng các video riêng về skill và sub-agent, link nằm trong phần mô tả nếu bạn muốn đi sâu vào hai phần đó. Với các thành phần còn lại (MCP, hook, LSP), người làm video mời khán giả để lại bình luận nếu muốn kênh làm thêm video riêng.

## 2. Trong thực tế, plugin chỉ là một folder

Khi bỏ hết lớp khái niệm, một plugin trong thực tế chỉ là một folder. Video lấy ví dụ một plugin tên `enterprise-plugin` để cho thấy cấu trúc đầy đủ: mỗi loại thành phần nằm trong một folder riêng.

![Cây thư mục của enterprise-plugin với .claude-plugin, commands, agents, skills, hooks, .mcp.json, .lsp.json](https://homus.dev/photos/_lBG5h3AY50-0043.jpg)

Cây thư mục mẫu của `enterprise-plugin/`: `.claude-plugin/plugin.json` là plugin manifest, `commands/` và `agents/` là vị trí mặc định cho command và agent, `skills/` chứa các Agent Skill (mỗi skill một folder có `SKILL.md`), cùng `output-styles/`, `hooks/`, `settings.json`, `.mcp.json`, `.lsp.json`, `scripts/`, `LICENSE` và `CHANGELOG.md`.

Đi qua từng phần trên màn hình:

- `commands/`: nơi để các command, ví dụ `status.md` và `logs.md`.

- `agents/`: các sub-agent, ví dụ `security-reviewer.md`, `performance-tester.md`, `compliance-checker.md`.

- `skills/`: các skill như `code-reviewer/` hay `pdf-processor/`, mỗi cái có `SKILL.md` và có thể kèm folder `scripts/`.

- `hooks/`: cấu hình hook, gồm `hooks.json` chính và một file hook bổ sung về bảo mật.

- `.mcp.json` cho định nghĩa MCP server, `.lsp.json` cho cấu hình LSP server.

- Và một vài file cấu hình khác như `plugin.json` và `settings.json`, sẽ được xem kỹ ở phần sau của video.

Tuy vậy, người làm video nói thẳng: thật lòng thì hiểu thuộc lòng cấu trúc của một plugin không quan trọng đến thế. Lý do là bạn luôn có thể nhờ chính Claude Code tạo plugin cho mình, và nhờ nó sửa lại plugin bạn đã tạo. Cấu trúc ở đây chủ yếu để bạn biết bên trong có gì khi mở folder ra.

## 3. Cài plugin đầu tiên từ trang plugin chính thức

Đến lúc cài plugin đầu tiên. Điểm xuất phát là trang plugin chính thức của Anthropic. Trên trang này có plugin cho cả Claude Code lẫn Claude Cowork; trong video, người làm video lọc theo Claude Code.

![Trang Browse plugins với các thẻ Frontend Design, Superpowers, Context7, Code Review, Code Simplifier, GitHub](https://homus.dev/photos/_lBG5h3AY50-0123.jpg)

Trang "Browse plugins": mỗi thẻ có tên, mô tả và số lượt cài, ví dụ Frontend Design (413,623 installs), Superpowers, Context7, Code Review, Code Simplifier, GitHub, Feature Dev, Playwright, Ralph Loop. Một số thẻ có dấu "Anthropic verified", số khác thì không.

Trên trang có hai loại plugin: loại có dấu xác minh của Anthropic (Anthropic verified) và loại không có. Phần bảo mật sẽ được nói ở cuối video, nhưng nếu chỉ mang về một điều từ video này, thì đó là: luôn cài plugin đã được xác minh, hoặc plugin do tác giả mà bạn tin tưởng viết. Ví dụ được nhắc là plugin GitHub chính thức: nó không có dấu Anthropic verified trên thẻ, nhưng tác giả là GitHub, một nguồn đáng tin.

Giả sử bạn muốn cài plugin Frontend Design. Bấm vào thẻ của nó sẽ mở trang chi tiết, nơi có thêm thông tin về plugin và cách dùng. Cột bên phải ghi rõ: Anthropic Verified, cài vào Claude Code, do Anthropic làm, 413,623 lượt cài.

Để tải plugin này về Claude Code, bạn vào mục cài đặt cho Claude Code và copy câu lệnh có sẵn. Sau đó mở Claude Code (ở đây là terminal trong VS Code) và dán lệnh vào. Lệnh sẽ chạy là `claude plugin install` kèm tên plugin:

```
claude plugin install frontend-design@claude-plugins-official
```

Chạy xong là xong. Terminal báo đang cài plugin `frontend-design@claude-plugins-official`, rồi in dòng xác nhận cài thành công với scope là user.

![Terminal: claude plugin install frontend-design@claude-plugins-official, Successfully installed plugin](https://homus.dev/photos/_lBG5h3AY50-0203.jpg)

Lệnh cài trong terminal và kết quả: "Successfully installed plugin: frontend-design@claude-plugins-official (scope: user)", tức plugin được cài ở cấp người dùng, dùng được ở mọi project của máy này.

## 4. Lệnh /plugin và dùng thử frontend-design

Sau khi cài, người làm video mở một session mới trong Claude Code và chạy slash command `/plugin`. Lệnh này giúp bạn quản lý và xem các plugin đã cài.

![Giao diện /plugin, tab Installed, frontend-design Plugin từ claude-plugins-official đang enabled](https://homus.dev/photos/_lBG5h3AY50-0223.jpg)

Giao diện `/plugin` có các tab Plugins, Discover, Installed, Marketplaces, Errors. Ở tab Installed, nhóm User có `frontend-design` (nguồn `claude-plugins-official`, trạng thái enabled) bên cạnh vài plugin khác; nhóm Local liệt kê các MCP như context7, github, playwright; nhóm Built-in có claude-in-chrome.

Trong danh sách plugin đã cài có frontend-design, ghi rõ là đến từ `claude-plugins-official` và đang được bật (enabled).

Giờ là lúc xem nó chạy thế nào. Muốn dùng plugin này, bạn gõ slash command `/frontend-design` rồi thêm task phía sau. Task trong video là một trang pricing:

```
/frontend-design a pricing page with 3 tiers, toggle for monthly/annual billing, and a feature comparison table
```

![Claude Code v2.1.87 với lệnh /frontend-design a pricing page with 3 tiers](https://homus.dev/photos/_lBG5h3AY50-0243.jpg)

Session Claude Code mới (Claude Code v2.1.87, Sonnet 4.6) sau `/clear`, với lệnh `/frontend-design` và mô tả trang pricing có ba gói, nút chuyển giữa thanh toán theo tháng và theo năm, và bảng so sánh tính năng.

Nhưng như đã nói ở đầu, một plugin có thể chứa nhiều thứ: skill, MCP, sub-agent và hơn nữa. Vì vậy ngay sau khi dùng thử, câu hỏi tự nhiên là: plugin mình vừa cài thật ra gồm những gì?

## 5. Plugin chứa gì bên trong, và cách gỡ plugin

Có hai cách để biết một plugin chứa những gì.

**Cách thứ nhất: hỏi thẳng Claude Code.** Ví dụ bạn gõ "tell me what this plugin contains" và chỉ định plugin frontend-design. Câu trả lời cho thấy plugin này chỉ chứa một skill, không có sub-agent, MCP hay hook nào khác.

**Cách thứ hai: mở repository GitHub của plugin.** Với frontend-design, đó là repo của Anthropic. Trong repo bạn cũng thấy nó chỉ có một skill. Bấm vào skill đó là đọc được toàn bộ nội dung mà skill cung cấp: phần Design Thinking (mục đích, tone, ràng buộc, điểm khác biệt), rồi Frontend Aesthetics Guidelines về typography, màu sắc và theme, chuyển động (motion).

Hai cách người làm video dùng để biết bên trong một plugin: hỏi chính Claude Code, hoặc mở repository của plugin trên GitHub. Với frontend-design, cả hai đều cho cùng kết quả: chỉ có một skill.

Cũng có cách để gỡ (uninstall) plugin. Bạn lại dùng lệnh `/plugin`, chọn plugin trong danh sách đã cài, và ở đó có lựa chọn uninstall. Cùng chỗ đó cũng có lựa chọn update để cập nhật plugin. Trong video, anh chọn gỡ frontend-design.

Để thay đổi có hiệu lực, bạn có hai lựa chọn: mở một session mới trong Claude Code, hoặc chạy lệnh `/reload-plugins` ngay trong session đang mở.

![Thông báo sau /plugin: Run /reload-plugins to apply](https://homus.dev/photos/_lBG5h3AY50-0343.jpg)

Sau khi thao tác trong `/plugin`, Claude Code nhắc chạy `/reload-plugins` để áp dụng thay đổi mà không phải mở session mới.

## 6. Có thật sự cần plugin không: standalone so với plugin

Sau khi đã hiểu plugin là gì, người làm video nhấn mạnh một điều quan trọng: plugin không phải là giải pháp đúng cho mọi trường hợp.

(Ở đây anh chen một đoạn ngắn tự giới thiệu, vì quên làm ở đầu video: anh giúp developer biến AI thành workflow thật, và nhờ khán giả subscribe, like để kênh tiếp tục làm nội dung. Rồi quay lại chủ đề.)

Trong Claude Code có hai cách tiếp cận: cách standalone, và cách dùng plugin như vừa thấy.

![Bảng But, Do you really need the plugin? so sánh Standalone và Plugins](https://homus.dev/photos/_lBG5h3AY50-0423.jpg)

Bảng "But, Do you really need the plugin?": Standalone (folder `.claude/`) gọi skill bằng tên ngắn như `/hello`, hợp với workflow cá nhân, tuỳ chỉnh riêng cho một project và thử nghiệm nhanh. Plugins (folder có `.claude-plugin/plugin.json`) gọi skill kèm tên plugin như `/plugin-name:hello`, hợp để chia sẻ với đồng đội, phát hành cho cộng đồng, có version và dùng lại qua nhiều project.

**Standalone** cho phép bạn tạo sub-agent, skill, MCP và các thứ khác cho riêng một project cụ thể. Kể cả khi bạn chia sẻ project đó với một đồng đội, cách này vẫn dùng tốt, vì đồng đội đó làm cùng project và nhận luôn cấu hình trong folder `.claude/`. Bạn không cần đến sự cồng kềnh (overkill) của plugin.

**Plugin** là lựa chọn đúng khi bạn muốn chia sẻ những cấu hình này với đồng đội không làm trên project đó. Ngoài ra, chỉ có plugin mới cho phép bạn chia sẻ cấu hình của mình với cộng đồng.

## 7. Marketplace khác plugin thế nào

Trước khi tạo plugin đầu tiên, cần hiểu sự khác nhau giữa marketplace và plugin. Marketplace là một catalog, tức một danh mục chứa nhiều plugin. Quan hệ giữa hai thứ giống hệt quan hệ giữa App Store và một app đơn lẻ: marketplace là cửa hàng, plugin là từng app trong cửa hàng.

![Sơ đồ Marketplace Vs Plugin: Marketplace -> Appstore, Plugins -> Apps; Marketplace chứa Debugging, Design, Research Plugin](https://homus.dev/photos/_lBG5h3AY50-0443.jpg)

Marketplace tương ứng với App Store, Plugins tương ứng với từng app. Bên dưới, một Marketplace toả ra ba plugin: Debugging Plugin, Design Plugin và Research Plugin.

Ví dụ trên sơ đồ: trong cùng một marketplace, bạn có thể có một plugin debugging, một plugin design và cả một plugin research. Đây cũng là lý do tên plugin khi cài có dạng `tên-plugin@tên-marketplace`, như `frontend-design@claude-plugins-official` ở phần trước: phần sau dấu @ là marketplace chứa nó.

Video có một đoạn ngắn giới thiệu khoá học Claude Code trả phí của chính kênh, kèm lời nói rằng học viên đánh giá tốt.

## 8. Nhờ Claude Code tạo plugin đầu tiên cho team

Giờ đến phần tạo plugin. Lời khuyên của người làm video: hãy dùng Claude Code để tạo plugin cho bạn, đừng tự dựng tay từng file.

Bối cảnh demo là một project có sẵn nhiều cấu hình standalone trong folder `.claude/`. Anh muốn gom một phần trong đó thành plugin:

- hai agent: quality assurance và tool implementer;

- command fix issue;

- skill SEO optimization.

Trong trường hợp đó, bạn chỉ cần nói với Claude Code là tạo một plugin để chia sẻ với team, gồm những thứ sau, rồi liệt kê: quality assurance, tool implementer, fix issue và SEO optimization. Câu lệnh gõ trên màn hình bắt đầu như sau, phần danh sách bốn mục được nói tiếp ngay sau:

```
Create a plugin that i will share with my team, include the following
```

Claude Code đọc các file agent, command và skill liên quan, xem cấu trúc của skill SEO, rồi tạo ra plugin tên `alldevneeds-devkit`, chứa đúng các agent, command và skill đã nêu.

![Kết quả Claude Code: alldevneeds-devkit với plugin.json, README.md, agents, commands, skills và hướng dẫn chia sẻ](https://homus.dev/photos/_lBG5h3AY50-0623.jpg)

Kết quả Claude Code in ra: `alldevneeds-devkit/` gồm 11 file, với `plugin.json` (manifest), `README.md` (hướng dẫn cài), `agents/` có tool-implementer (build React tool components) và quality-assurance (code review, a11y, E2E tests), `commands/fix-issue.md` (`/fix-issue <number>`) và `skills/seo-optimization/`. Bên dưới là gợi ý chia sẻ cho team: nén zip, hoặc đưa lên một git repo rồi clone.

Đây là cấu trúc plugin: có một file `plugin.json` (sẽ xem ngay sau đây), có README, có folder agents, commands và skills. Phần cuối kết quả, Claude Code còn gợi ý hai cách chia sẻ với team (nén zip, hoặc đưa vào một git repo rồi clone) và cách cài vào một project khác bằng cách copy folder plugin vào `.claude/plugins/` của project đó rồi khai báo trong `.claude/settings.json`.

Mở `plugin.json` ra xem. Trong đó có tên plugin, version, description, và danh sách agent, command, skill mà plugin này chứa.

![Nội dung plugin.json: name alldevneeds-devkit, version 1.0.0, description, agents, commands, skills](https://homus.dev/photos/_lBG5h3AY50-0643.jpg)

`plugin.json` của alldevneeds-devkit: `"name"`, `"version": "1.0.0"`, một dòng `"description"` mô tả bộ công cụ (QA agent, tool implementer agent, GitHub issue fixer...), rồi ba mảng trỏ tới file: `agents` (quality-assurance.md, tool-implementer.md), `commands` (fix-issue.md) và `skills` (seo-optimization/SKILL.md).

Theo người làm video, file này khá dễ hiểu. Nếu có thắc mắc gì về nó, bạn cứ hỏi trực tiếp Claude Code.

## 9. Plugin và bảo mật

Phần cuối nói về bảo mật. Người làm video mở một bài viết trên blog của SentinelOne, theo anh là một ví dụ rất rõ về cách plugin có thể bị dùng với mục đích xấu.

![Bài blog SentinelOne: When Your AI Coding Plugin Starts Picking Your Dependencies](https://homus.dev/photos/_lBG5h3AY50-0701.jpg)

Bài blog SentinelOne ngày 6/1/2026, "When Your AI Coding Plugin Starts Picking Your Dependencies: Marketplace Skills and Dependency Hijack in Claude Code". Đoạn được tô sáng nói rằng các công cụ như Claude Code có thể đọc project, lập kế hoạch thay đổi nhiều bước, cài dependency và sửa file với rất ít giám sát của con người.

Kịch bản rất đơn giản: bạn cài một plugin, plugin đó thay đổi permission của bạn, và từ lúc đó kẻ tấn công có toàn bộ quyền để làm bất cứ điều gì hắn muốn thay mặt bạn. Bài viết giải thích thêm: plugin từ marketplace bên thứ ba trông như công cụ tăng năng suất vô hại, nhưng các skill thường chạy với quyền rất cao mà gần như không minh bạch về việc chúng quyết định gì và lấy code từ đâu. Đó không phải prompt injection hay social engineering, mà là tự động hoá đã bị xâm nhập.

Anh cũng dẫn thêm một bài blog khác xác nhận đúng những gì vừa thấy.

Chuỗi rủi ro người làm video mô tả, và cách giảm rủi ro mà anh nhắc lại ở cuối video.

Vì vậy, để giảm thiểu rủi ro, bạn nên luôn cài plugin từ nguồn chính thức và chọn plugin đã được Anthropic xác minh. Đây chính là điều anh dặn ở phần cài đặt: nếu chỉ nhớ một thứ từ video, hãy nhớ điều này.

Kết video, anh nói plugin của Claude Code rất hay, nhưng nếu muốn làm chủ Claude Code thì bạn cần hiểu sub-agent hoạt động thế nào, và giới thiệu video về sub-agent của kênh để xem tiếp.

## Nguồn và liên kết

- Tên gốc: Claude Code Plugins Explained In 7 Minutes
- Sự kiện: [YouTube](https://homus.dev/events/youtube)
- Video gốc: [https://www.youtube.com/watch?v=_lBG5h3AY50](https://www.youtube.com/watch?v=_lBG5h3AY50)

- Kênh YouTube Software Engineer Meets AI (Software Engineer Meets AI): [youtube.com/channel/UCKk_IEA0wbkibod2u7NctCQ](https://www.youtube.com/channel/UCKk_IEA0wbkibod2u7NctCQ)

- Trang plugin chính thức của Anthropic, nơi duyệt và lấy lệnh cài plugin: [claude.com/plugins](https://claude.com/plugins)

- Tài liệu Claude Code về plugin (cấu trúc, cài đặt, tạo plugin): [code.claude.com/docs/en/plugins](https://code.claude.com/docs/en/plugins)

- Tài liệu Claude Code về plugin marketplace: [code.claude.com/docs/en/plugin-marketplaces](https://code.claude.com/docs/en/plugin-marketplaces)

- Marketplace chính thức claude-plugins-official trên GitHub: [github.com/anthropics/claude-plugins-official](https://github.com/anthropics/claude-plugins-official)

- Plugin frontend-design trong repo đó (chỉ gồm một skill): [github.com/anthropics/claude-plugins-official/tree/main/plugins/frontend-design](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/frontend-design)

- Skill frontend-design trong repo skills của Anthropic (SKILL.md với Design Thinking và Frontend Aesthetics Guidelines): [github.com/anthropics/skills/tree/main/skills/frontend-design](https://github.com/anthropics/skills/tree/main/skills/frontend-design)

- Bài blog SentinelOne về marketplace skill và dependency hijack trong Claude Code: [sentinelone.com/blog/marketplace-skills-and-dependency-hijack-in-claude-code](https://www.sentinelone.com/blog/marketplace-skills-and-dependency-hijack-in-claude-code/)

Nguồn: https://homus.dev/talks/claude-code-plugins-explained-in-7-minutes · cập nhật 2026-10-09
