{"product_id":"6-extension-points-của-claude-code-skills-mcp-hooks-subagents-agent-teams-va-plugins-giải-thich-từ-a-dến-z","title":"6 Extension Points Của Claude Code: Skills, MCP, Hooks, Subagents, Agent Teams Và Plugins Giải Thích Từ A Đến Z","description":"\n\u003ch2\u003eTừ Terminal Chatbot Đến Platform: Hành Trình Một Năm Của Claude Code\u003c\/h2\u003e\n\n\u003cp\u003eKhi Claude Code ra mắt tháng 2\/2025, nó là một terminal chatbot — bạn gõ, nó trả lời, và đôi khi chạy code. Nhanh chóng, nhưng limited.\u003c\/p\u003e\n\n\u003cp\u003eMột năm sau, theo Muneeb Ahmad trong bài viết tháng 3\/2026, Claude Code đã trở thành một \u003cem\u003eextensible platform\u003c\/em\u003e với 6 extension points riêng biệt. Mỗi extension point giải quyết một vấn đề cụ thể, và hiểu tất cả 6 là chìa khóa để khai thác tối đa Claude Code.\u003c\/p\u003e\n\n\u003cp\u003eTimeline ra mắt các extensions:\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eNov 2024: MCP (Model Context Protocol)\u003c\/li\u003e\n\u003cli\u003eJul 2025: Subagents\u003c\/li\u003e\n\u003cli\u003eSep 2025: Hooks\u003c\/li\u003e\n\u003cli\u003eOct 2025: Plugins và Skills\u003c\/li\u003e\n\u003cli\u003eFeb 2026: Agent Teams (cùng với Opus 4.6)\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch2\u003eExtension 1: Skills — Reusable Workflows Dạng Macro\u003c\/h2\u003e\n\n\u003cp\u003e\u003cstrong\u003eVấn đề giải quyết:\u003c\/strong\u003e Bạn có một chuỗi instructions phức tạp dùng đi dùng lại. Thay vì copy-paste mỗi lần, encode một lần và call bằng slash command.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eCơ chế hoạt động:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eFiles Markdown trong \u003ccode\u003e~\/.claude\/skills\/\u003c\/code\u003e hoặc \u003ccode\u003e.claude\/skills\/\u003c\/code\u003e\n\u003c\/li\u003e\n\u003cli\u003eYAML frontmatter định nghĩa name và description\u003c\/li\u003e\n\u003cli\u003eArgument placeholders cho dynamic content\u003c\/li\u003e\n\u003cli\u003eIsolated subagent contexts cho phép chạy độc lập\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eVí dụ skill đơn giản:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cpre\u003e\u003ccode\u003e---\nname: echo\ndescription: Mirrors back user input verbatim\n---\nEcho the following input exactly as provided, with no changes: {{input}}\n\u003c\/code\u003e\u003c\/pre\u003e\n\n\u003cp\u003eGọi bằng: \u003ccode\u003e\/echo Hello world\u003c\/code\u003e → Claude trả về \"Hello world\" không thay đổi.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eKhi nào dùng:\u003c\/strong\u003e Bất cứ khi nào bạn dùng cùng một prompt hơn 3 lần. Code review templates, documentation formats, testing patterns — tất cả đều là candidates cho skills.\u003c\/p\u003e\n\n\u003ch2\u003eExtension 2: MCP — Cầu Nối Với Thế Giới Bên Ngoài\u003c\/h2\u003e\n\n\u003cp\u003e\u003cstrong\u003eVấn đề giải quyết:\u003c\/strong\u003e Claude bị nhốt trong context window — không biết bug reports trên Jira của bạn, không đọc được database, không gọi được API. MCP phá vỡ giới hạn này.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eMCP là gì về kỹ thuật:\u003c\/strong\u003e Model Context Protocol — một open standard cho phép Claude kết nối với external systems thông qua \"tool servers.\" Quan trọng: MCP là vendor-agnostic — OpenAI, Google, và Microsoft cũng đã adopt.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eCách hoạt động:\u003c\/strong\u003e\u003c\/p\u003e\n\u003col\u003e\n\u003cli\u003eBạn cài đặt MCP server cho service cần (Jira, GitHub, PostgreSQL, v.v.)\u003c\/li\u003e\n\u003cli\u003eConfigure trong Claude Code settings\u003c\/li\u003e\n\u003cli\u003eKhi prompt, Claude tự detect khi nào cần gọi MCP tool\u003c\/li\u003e\n\u003cli\u003eClaude gọi tool, nhận kết quả, tích hợp vào response\u003c\/li\u003e\n\u003c\/ol\u003e\n\n\u003cp\u003e\u003cstrong\u003eVí dụ flow tự nhiên:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eBạn: \"Get recent bug reports from Jira and suggest fixes\"\u003c\/p\u003e\n\u003cp\u003eClaude: [tự động invoke Jira MCP] → nhận bug list → analyze → suggest fixes\u003c\/p\u003e\n\u003c\/blockquote\u003e\n\n\u003cp\u003eKhông cần bạn copy-paste bug reports. Claude lấy trực tiếp.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eEcosystem MCP:\u003c\/strong\u003e Hàng nghìn MCP servers đang available: databases (PostgreSQL, SQLite, MongoDB), project tools (Jira, Linear, Notion), cloud (AWS, GCP, Azure), coding (GitHub, GitLab), productivity (Slack, Gmail, Calendar).\u003c\/p\u003e\n\n\u003cp\u003eTìm hiểu cách setup MCP chi tiết trong bài \u003ca href=\"\/products\/mcp-model-context-protocol-h%C6%B0%E1%BB%9Bng-d%E1%BA%ABn-k%E1%BA%BFt-n%E1%BB%91i-c%C3%B4ng-c%E1%BB%A5\"\u003eMCP: Kết nối Claude với mọi công cụ\u003c\/a\u003e.\u003c\/p\u003e\n\n\u003ch2\u003eExtension 3: Subagents — Delegation Thông Minh\u003c\/h2\u003e\n\n\u003cp\u003e\u003cstrong\u003eVấn đề giải quyết:\u003c\/strong\u003e Khi task phức tạp, main conversation bị \"ô nhiễm\" bởi intermediate work — search results, debugging logs, exploration. Subagents giải quyết bằng cách delegate specialized tasks ra ngoài.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eSubagent là gì:\u003c\/strong\u003e Instance Claude Code riêng biệt với:\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eContext window độc lập\u003c\/li\u003e\n\u003cli\u003eSystem prompt riêng\u003c\/li\u003e\n\u003cli\u003eTool permissions riêng\u003c\/li\u003e\n\u003cli\u003eChạy parallel (nhiều subagents cùng lúc)\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eĐiểm khác biệt quan trọng:\u003c\/strong\u003e \"Subagents report back to the parent. They can't talk to each other.\" Đây không phải limitation — đây là thiết kế ngăn chặn infinite recursion. Subagents không thể spawn subagents khác.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eUse case điển hình:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eMain agent: \"Refactor authentication module\" → spawn subagent 1 để analyze current code, subagent 2 để research best practices, subagent 3 để check test coverage\u003c\/li\u003e\n\u003cli\u003eBa subagents chạy parallel\u003c\/li\u003e\n\u003cli\u003eMain agent nhận kết quả từ cả ba → synthesis → implement\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch2\u003eExtension 4: Agent Teams — Collaboration Đa Agent (Experimental)\u003c\/h2\u003e\n\n\u003cp\u003e\u003cstrong\u003eRa mắt:\u003c\/strong\u003e Tháng 2\/2026, cùng với Opus 4.6.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eKhác biệt với Subagents:\u003c\/strong\u003e Trong khi subagents report về main, Agent Teams là các instances ngang hàng — chúng \u003cem\u003egiao tiếp trực tiếp với nhau\u003c\/em\u003e.\u003c\/p\u003e\n\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eTính năng\u003c\/th\u003e\n\u003cth\u003eSubagents\u003c\/th\u003e\n\u003cth\u003eAgent Teams\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eGiao tiếp\u003c\/td\u003e\n\u003ctd\u003eReport to parent\u003c\/td\u003e\n\u003ctd\u003eDirect peer-to-peer\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eShared task list\u003c\/td\u003e\n\u003ctd\u003eKhông\u003c\/td\u003e\n\u003ctd\u003eCó\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSelf-assignment\u003c\/td\u003e\n\u003ctd\u003eKhông\u003c\/td\u003e\n\u003ctd\u003eCó\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eExecution\u003c\/td\u003e\n\u003ctd\u003eSeparate instances\u003c\/td\u003e\n\u003ctd\u003eSeparate tmux panes\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eToken cost\u003c\/td\u003e\n\u003ctd\u003eHigher than single\u003c\/td\u003e\n\u003ctd\u003eSignificantly higher\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\n\u003cp\u003e\u003cstrong\u003eDemo ấn tượng nhất của Anthropic:\u003c\/strong\u003e 16 agents xây dựng C compiler 100,000 dòng code bằng Rust trong 2 tuần — chi phí ~$20,000 tokens. Con số này nghe lớn, nhưng nếu hiring một team để làm điều tương tự, cost sẽ cao hơn nhiều lần.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eKhi nào dùng Agent Teams (vs Subagents):\u003c\/strong\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eKhi agents cần cross-check công việc của nhau\u003c\/li\u003e\n\u003cli\u003eKhi task có nhiều \"lanes\" parallel có thể làm đồng thời\u003c\/li\u003e\n\u003cli\u003eKhi cần peer review giữa các agents\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCảnh báo thực tế:\u003c\/strong\u003e Token consumption cao hơn đáng kể. Dùng Agent Teams khi giá trị thực sự justify, không phải \"cho vui.\"\u003c\/p\u003e\n\n\u003ch2\u003eExtension 5: Hooks — Guardrails Tự Động\u003c\/h2\u003e\n\n\u003cp\u003e\u003cstrong\u003eVấn đề giải quyết:\u003c\/strong\u003e AI đôi khi làm điều bạn không muốn — delete file, push code chưa tested, hoặc call API production khi bạn đang develop. Hooks là safety net tự động.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eHooks là gì:\u003c\/strong\u003e Scripts tự động kích hoạt tại các lifecycle events, không cần prompt.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eĐiểm quan trọng nhất từ Muneeb:\u003c\/strong\u003e \"You never manually invoke hooks. They fire automatically on matching events.\" — Đây là khác biệt cơ bản với skills.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eLifecycle events có thể hook:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003ccode\u003epre-tool\u003c\/code\u003e: Trước khi Claude dùng bất kỳ tool nào\u003c\/li\u003e\n\u003cli\u003e\n\u003ccode\u003epost-tool\u003c\/code\u003e: Sau khi tool hoàn thành\u003c\/li\u003e\n\u003cli\u003e\n\u003ccode\u003epre-bash\u003c\/code\u003e: Trước khi chạy bash command\u003c\/li\u003e\n\u003cli\u003e\n\u003ccode\u003esession-start\u003c\/code\u003e: Khi session bắt đầu\u003c\/li\u003e\n\u003cli\u003e\n\u003ccode\u003esession-end\u003c\/code\u003e: Khi session kết thúc\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eVí dụ hooks thực tế:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eAuto-linting:\u003c\/strong\u003e Post-tool hook chạy ESLint sau mỗi lần Claude sửa code\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eDangerous command blocker:\u003c\/strong\u003e Pre-bash hook block \u003ccode\u003erm -rf\u003c\/code\u003e, \u003ccode\u003eDROP TABLE\u003c\/code\u003e, force push\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSlack notifications:\u003c\/strong\u003e Session-end hook gửi summary lên Slack\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTest runner:\u003c\/strong\u003e Post-tool hook tự chạy test suite sau code changes\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCấu hình trong settings.json:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cpre\u003e\u003ccode\u003e{\n  \"hooks\": {\n    \"pre-bash\": {\n      \"script\": \"~\/.claude\/hooks\/block-dangerous.sh\",\n      \"on\": [\"rm -rf\", \"DROP TABLE\", \"force push\"]\n    },\n    \"post-tool\": {\n      \"script\": \"~\/.claude\/hooks\/run-linter.sh\",\n      \"on\": [\"write_file\"]\n    }\n  }\n}\n\u003c\/code\u003e\u003c\/pre\u003e\n\n\u003cp\u003eHooks là extension point quan trọng nhất cho enterprise deployments — đây là cách đảm bảo compliance mà không cần tin tưởng hoàn toàn vào AI judgment.\u003c\/p\u003e\n\n\u003ch2\u003eExtension 6: Plugins — Đóng Gói Và Phân Phối\u003c\/h2\u003e\n\n\u003cp\u003e\u003cstrong\u003eVấn đề giải quyết:\u003c\/strong\u003e Bạn đã xây dựng skills + hooks + MCP config cho team. Làm sao chia sẻ? Plugins là answer.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003ePlugin là gì:\u003c\/strong\u003e Bundle đóng gói tất cả — skills, agents, hooks, MCP configs — thành một installable unit duy nhất.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eTính năng plugin:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eSkills namespace: \u003ccode\u003e\/pluginName:skillName\u003c\/code\u003e\n\u003c\/li\u003e\n\u003cli\u003eBuilt-in versioning\u003c\/li\u003e\n\u003cli\u003eCommunity marketplace\u003c\/li\u003e\n\u003cli\u003eAuto-activation khi session start\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eInstallation priority:\u003c\/strong\u003e enterprise \u0026gt; user \u0026gt; project \u0026gt; plugin. Nghĩa là enterprise policies luôn override, và project configs override plugin defaults.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eVí dụ plugin structure:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cpre\u003e\u003ccode\u003emy-team-toolkit\/\n├── plugin.yaml          # Metadata, version, description\n├── skills\/\n│   ├── code-review.md\n│   ├── deploy-check.md\n│   └── security-scan.md\n├── hooks\/\n│   └── pre-bash-safety.sh\n└── mcp\/\n    └── internal-db-config.json\n\u003c\/code\u003e\u003c\/pre\u003e\n\n\u003cp\u003eInstall: \u003ccode\u003eclaude plugin install github.com\/my-org\/my-team-toolkit\u003c\/code\u003e\u003c\/p\u003e\n\n\u003ch2\u003eAdoption Strategy: Triển Khai Từng Bước\u003c\/h2\u003e\n\n\u003cp\u003eAhmad khuyến nghị một chiến lược phân tầng rõ ràng:\u003c\/p\u003e\n\n\u003col\u003e\n\u003cli\u003e\n\u003cstrong\u003eBắt đầu với Skills + MCP\u003c\/strong\u003e — Covers ~80% của real workflows. Low overhead, high value ngay lập tức.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eThêm Hooks\u003c\/strong\u003e khi bạn muốn automation và compliance guardrails.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eIntroduce Subagents\u003c\/strong\u003e khi single conversation context trở nên unwieldy với complex tasks.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eDeploy Agent Teams\u003c\/strong\u003e chỉ khi cần parallel, coordinated work quy mô lớn.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePackage thành Plugins\u003c\/strong\u003e khi bạn muốn distribute cho team hoặc cộng đồng.\u003c\/li\u003e\n\u003c\/ol\u003e\n\n\u003ch2\u003eCore Insight: Sức Mạnh Từ Sự Kết Hợp\u003c\/h2\u003e\n\n\u003cp\u003eAhmad kết thúc với insight quan trọng nhất:\u003c\/p\u003e\n\n\u003cblockquote\u003e\n\u003cp\u003e\"Claude Code's real strength is not any single extension point; it's how they layer together. Skills define actions, MCP supplies data, Subagents and Agent Teams handle delegation, Hooks enforce rules, and Plugins distribute the complete system.\"\u003c\/p\u003e\n\u003c\/blockquote\u003e\n\n\u003cp\u003eĐây là kiến trúc của một \u003cem\u003eplatform\u003c\/em\u003e, không phải một tool. Mỗi extension point có vai trò rõ ràng, và khi kết hợp đúng, bạn có thể xây dựng workflows tự động hóa phức tạp mà không cần viết một dòng \"infrastructure code\" nào.\u003c\/p\u003e\n\n\u003cp\u003eXem thêm về cách tổ chức skills thành plugin marketplaces tại bài \u003ca href=\"\/products\/claude-code-skills-plugin-marketplace-scott-spence\"\u003eOrganising Claude Code Skills Into Plugin Marketplaces\u003c\/a\u003e.\u003c\/p\u003e\n\n\u003cp\u003eVà tìm hiểu về multi-agent workflows nâng cao trong \u003ca href=\"\/products\/agent-workflows-chaining-routing-parallelization\"\u003eAgent Workflows — Chaining, Routing, Parallelization\u003c\/a\u003e.\u003c\/p\u003e\n\n\u003chr\u003e\n\u003ch2\u003eNguồn tham khảo\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMuneeb Ahmad, \"Claude Code Extensions Explained: Skills, MCP, Hooks, Subagents, Agent Teams, Plugins,\" Medium, 05\/03\/2026. \u003ca href=\"https:\/\/muneebsa.medium.com\/claude-code-extensions-explained-skills-mcp-hooks-subagents-agent-teams-plugins-9294907e84ff\" target=\"_blank\"\u003eĐọc bài gốc\u003c\/a\u003e\n\u003c\/li\u003e\n\u003cli\u003eAnthropic, Claude Code Documentation, 2026. \u003ca href=\"https:\/\/code.claude.com\/docs\" target=\"_blank\"\u003eTài liệu chính thức\u003c\/a\u003e\n\u003c\/li\u003e\n\u003cli\u003eMCP Protocol, \"Model Context Protocol Specification.\" \u003ca href=\"https:\/\/modelcontextprotocol.io\" target=\"_blank\"\u003eSpec chính thức\u003c\/a\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n","brand":"Minh Tuấn","offers":[{"title":"Default Title","offer_id":47725823361236,"sku":null,"price":0.0,"currency_code":"VND","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0821\/0264\/9044\/files\/6-extension-points-c_a-claude-code-skills-mcp-hooks-subagents-agent-teams-va-plugins-gi_i-thich-t_-a-d_n-z.jpg?v=1774579698","url":"https:\/\/claude.vn\/products\/6-extension-points-c%e1%bb%a7a-claude-code-skills-mcp-hooks-subagents-agent-teams-va-plugins-gi%e1%ba%a3i-thich-t%e1%bb%ab-a-d%e1%ba%bfn-z","provider":"CLAUDE.VN","version":"1.0","type":"link"}