Xây dựng agent tùy chỉnh trong khoảng 10 phút sau khi đã kết nối AWS: thêm skill runbook, tạo agent, gắn kết nối, thiết lập phê duyệt và kiểm thử.
Agent tùy chỉnh là một agent có tên do bạn tạo trong workspace, bên cạnh trợ lý tích hợp sẵn CloudThinker, với hướng dẫn và kết nối riêng, và bạn trò chuyện với agent qua @mention của nó. Khi đã kết nối AWS, trong khoảng 10 phút bạn sẽ xây dựng một agent, @ec2-triage, điều tra tình trạng CPU cao trên các instance EC2 theo runbook của nhóm bạn và hỏi bạn trước khi thay đổi bất cứ thứ gì.
Bạn cần chuẩn bị
Vai trò Admin của workspace để làm bước 1 như mô tả (nút + trong Skills). Developer có thể làm mọi bước còn lại. Nếu bạn là Developer, hãy tạo cùng skill đó bằng cách gõ /create-skill trong chat và cung cấp tên, mô tả và hướng dẫn bên dưới. Xem skill tùy chỉnh.
Kết nối AWS đang hiển thị Connected. Nếu chưa có, hãy thiết lập trước: 10 phút này không bao gồm bước đó. Role của kết nối cần mô tả được instance và đọc số liệu CloudWatch; policy ReadOnlyAccess mà script thiết lập gắn vào đáp ứng cả hai (xem quyền yêu cầu). Bất kỳ kết nối nào khác cũng dùng được: chỉ cần thay tên trong các ví dụ.
Gói của bạn còn trống một slot agent tùy chỉnh (Free có 1). Xem Customize. Trên gói Free, chọn Light làm Model Tier của agent ở bước 2: Free chỉ chạy Light. Trò chuyện với agent tùy chỉnh trong web chat được tính là chat trực tiếp, nên bài kiểm thử ở bước 5 chạy được trên Free.
1
Thêm runbook dưới dạng skill
Skill là một tập hướng dẫn mà agent tuân theo khi tác vụ phù hợp. Mở More → Workspace settings → Skills, nhấn nút + cạnh Search skills (hoặc New Skill nếu danh sách trống), rồi chọn Write skill instructions. Điền:
Skill name:ec2-high-cpu-runbook
Description:Steps to investigate an EC2 instance with high CPU
Instructions:
# EC2 high CPU runbookUse this when someone reports a slow EC2 instance or high CPU.1. Check CPUUtilization for the last hour. Above 90% for 15 minutes or more counts as sustained.2. If the instance is a burstable type (t2, t3, t4g), check its credit specification. In standard mode, check CPUCreditBalance: a balance near zero means the instance is throttled.3. Check NetworkIn and DiskReadOps for a traffic spike that started at the same time.4. Recommend one fix, in this order of preference: wait out a short spike, move a burstable instance in standard mode to unlimited mode, then resize. Recommend only; don't apply it. Unlimited mode and resizing both change cost.5. Never reboot an instance tagged env=prod without a person approving it.
Skill định hướng những gì agent làm; skill không chặn bất cứ thứ gì. Quy tắc 5 chỉ là hướng dẫn. Thứ thực sự chặn thao tác ghi là chế độ Manual bạn đặt ở bước 4, cùng với các Rule phê duyệt.Nhấn Create. Skill mới được bật sẵn và khả dụng trong Chat, nơi bạn kiểm thử ở bước 5.Skill áp dụng cho mọi agent trong workspace, không chỉ agent @ec2-triage bạn tạo tiếp theo, nên CloudThinker cũng tuân theo runbook này khi một cuộc chat hỏi về CPU cao. Xem Customize.Trạng thái thành công:ec2-high-cpu-runbook xuất hiện trong danh sách skill với công tắc bật và Chat được chọn trong Available in.
2
Tạo agent
Mở More → Workspace settings → Agents, nhấn Create agent và chọn Build with form. Ở bước Identity, điền cả bốn trường (trường nào cũng bắt buộc):
Trường
Giá trị
Giới hạn
Name
EC2 Triage
255 ký tự
@mention
ec2-triage (đặt một lần, không thể đổi sau)
63 ký tự
Role
AWS Compute Specialist
255 ký tự
Goal
Find why an EC2 instance is slow and recommend the safest fix
2.048 ký tự
Role và Goal được đặt ở đầu prompt của agent, trước phần Instructions bạn thêm tiếp theo, nên agent đọc chúng ở mọi yêu cầu. Hãy giữ chúng ngắn gọn và cụ thể.
Nhấn Next. Hộp thoại chuyển sang bước Configuration. Tại đây, giữ Model Tier ở Pro (trên Free, chọn Light), để Language ở Match the user (agent trả lời bằng ngôn ngữ trong tin nhắn của bạn), đặt Learning Mode thành Offer và dán Instructions sau:
You investigate EC2 performance problems in our AWS account.Always start read-only: describe the instance, then check CloudWatch metrics for the last hour.Report findings as a short table: metric, value, what it means.Never stop, reboot, or resize an instance without saying why first.Use the ec2-high-cpu-runbook skill for high CPU or slow instance questions.
Nêu tên skill trong phần hướng dẫn giúp agent chọn đúng skill. Cách này không ngăn các agent khác dùng skill đó.Offer hỏi bạn trong chat trước khi lưu một quy trình lặp lại thành skill. Tùy chọn mặc định Auto lưu mà không hỏi. Nếu agent đề nghị lưu một quy trình thành skill trong lúc kiểm thử, hãy trả lời không. Xem Learning Mode. Nhấn Next.Trạng thái thành công: hộp thoại chuyển sang bước Connect.
3
Gắn kết nối cho agent
Ở bước Connect, mở tab Builtin và nhấn Add cạnh kết nối AWS của bạn. Builtin liệt kê các kết nối đang hiển thị Connected trong More → Workspace settings → Connections; MCP liệt kê các MCP server bạn đã thêm. Nhấn Create Agent.
Agent chỉ tiếp cận được các kết nối bạn gắn, nên chỉ gắn những gì công việc của agent cần. Bạn có thể thêm sau trong tab Connections của agent.Trạng thái thành công:EC2 Triage xuất hiện trong Custom tại More → Workspace settings → Agents, hiển thị 1 kết nối.
Agents: mỗi agent tùy chỉnh có tên, @mention, vai trò, mục tiêu và model tier
4
Buộc agent hỏi trước mọi thay đổi
Approvals quyết định thao tác ghi (bất kỳ lệnh gọi nào thay đổi thứ gì đó) được chạy, chờ người duyệt hay bị từ chối. Thao tác đọc luôn chạy. Trong bài kiểm thử này, hãy để mọi thao tác ghi chờ bạn.
Workspace mới mặc định ở Auto, nơi đánh giá của AI có thể cho thao tác ghi an toàn chạy mà không hỏi. Allow Rule cũng có thể làm vậy khi CloudThinker bật Rule enforcement cho workspace của bạn, vốn tắt theo mặc định. Hãy chuyển chat này sang Manual trước khi kiểm thử.
Bắt đầu một chat mới. Điều khiển phê duyệt nằm bên phải ô nhập prompt, cạnh bộ chọn model, và hiển thị chế độ hiện tại của chat, Manual hoặc Auto. Chat mới bắt đầu theo chế độ của workspace. Mở điều khiển này, hoặc gõ / và chọn Approval, rồi chọn Manual.Trạng thái thành công: điều khiển phê duyệt hiển thị Manual. Thiết lập này chỉ áp dụng cho chat này; chế độ của workspace không đổi. Developer cũng có thể làm bước này.Chat mới lại bắt đầu theo chế độ của workspace. Automation dùng chế độ riêng: theo mặc định Rule quyết định trước, AI đánh giá phần còn lại, còn thao tác ghi vẫn cần người duyệt sẽ bị từ chối thay vì chờ. Rule chỉ quyết định khi CloudThinker bật Rule enforcement cho workspace của bạn; trước đó Rule chỉ ghi lại phán quyết mà Rule sẽ đưa ra, và chỉ riêng chế độ Approval quyết định. Xem Rule ở chế độ preview. Xem Approvals. Để các thay đổi trên prod luôn chờ người duyệt, hãy thêm một RuleAsk first.
5
Kiểm thử agent
Trong cùng chat đó, mention agent. Gửi một trong các prompt sau.Nếu bạn có ID instance, hãy thay ID ví dụ:
@ec2-triage Instance i-0abc1234def567890 feels slow. Investigate it.
Nếu không có:
@ec2-triage List my running EC2 instances, pick the one with the highest CPU, and investigate it.
Agent mô tả instance, đọc số liệu CloudWatch của instance, rồi trả lời bằng một bảng số liệu và một cách khắc phục được đề xuất, theo thứ tự runbook của bạn quy định. Câu trả lời tốt có dạng như sau (giá trị của bạn sẽ khác):
Số liệu
Giá trị
Ý nghĩa
CPUUtilization
Trên 90% trong 40 phút gần nhất
CPU cao kéo dài
CPUCreditBalance
Gần bằng 0
Instance burstable đang bị giới hạn hiệu năng
Tiếp theo là một đề xuất, chẳng hạn chuyển instance sang unlimited mode, kèm lý do và không áp dụng thay đổi nào.Nếu agent muốn thay đổi instance, chat hiển thị thẻ phê duyệt với Approve và Decline. Nhấn Decline nếu bạn chỉ muốn chẩn đoán. Với ReadOnlyAccess, agent không thể thay đổi gì ngay cả khi bạn phê duyệt: thẻ cho thấy cơ chế phê duyệt hoạt động, nhưng bản thân thao tác ghi sẽ thất bại trong AWS.Nếu CPU hóa ra bình thường, bạn sẽ nhận được một bảng thể hiện điều đó và một đề xuất chờ thêm hoặc tìm ở chỗ khác. Kết quả đó vẫn tính là thành công.Với Pro, lượt chạy trừ vào credit thưởng, rồi đến credit premium: credit miễn phí hằng ngày chỉ dành cho chat Light. Trên Free với agent Light, lượt chạy trừ vào credit hằng ngày. Xem mức sử dụng.Trạng thái thành công: câu trả lời của agent hiển thị một dòng tóm tắt hoạt động đã thu gọn có chứa “read 1 skill”. Nhấn vào để mở rộng các bước và tìm bước Load Skill. Câu trả lời tuân theo các bước trong runbook mà bạn không cần nhắc lại, và không có gì thay đổi trong AWS khi chưa có phê duyệt của bạn.
Nếu đây chỉ là thử nghiệm, hãy xóa agent trong More → Workspace settings → Agents (slot được giải phóng ngay; Free có một slot) và xóa skill trong More → Workspace settings → Skills. Cho đến khi bạn xóa skill, mọi agent, kể cả CloudThinker, đều tuân theo skill này cho các câu hỏi về CPU cao.
Workspace của bạn đã đạt giới hạn agent tùy chỉnh. Di chuột lên nút: tooltip hiển thị Custom agent limit reached. kèm liên kết Upgrade plan. Xóa một agent không dùng trong More → Workspace settings → Agents, hoặc xem các gói.
@mention bị từ chối
@mention phải bắt đầu bằng chữ thường và chỉ dùng chữ thường, số, dấu chấm, dấu gạch dưới và dấu gạch ngang, tối đa 63 ký tự. @mention cũng không được trùng với tên đang được dùng hoặc tên CloudThinker giữ riêng.
@mention không tự động gợi ý
Kiểm tra EC2 Triage có xuất hiện trong Custom tại More → Workspace settings → Agents không. Nếu bạn tạo agent ở tab khác, hãy làm mới trang chat rồi gõ lại @.
Thay đổi đã chạy mà không có thẻ phê duyệt
Kiểm tra điều khiển phê duyệt của chat có hiển thị Manual không. Ở chế độ Manual, mọi thao tác ghi đều hỏi người duyệt, kể cả thao tác đã có Allow Rule bao phủ, nên thiếu thẻ thường có nghĩa là chat đang ở Auto. Allow Rule chỉ quyết định khi CloudThinker bật Rule enforcement cho workspace của bạn; hiện nay, Manual là cách giữ lại mọi thao tác ghi. Thao tác đọc (describe, list, số liệu) không bao giờ hiển thị thẻ. Xem Approvals.
Agent báo không thể truy cập AWS
Mở agent trong More → Workspace settings → Agents, vào tab Connections và kiểm tra kết nối AWS đã được gắn. Sau đó kiểm tra bản thân kết nối hiển thị Connected trên trang Connections.
Câu trả lời bỏ qua runbook
Mở More → Workspace settings → Skills và kiểm tra công tắc của skill đang bật và Chat được chọn. Sau đó làm cho yêu cầu khớp với mô tả của skill, ví dụ nói “high CPU”. Agent chỉ áp dụng skill khi skill phù hợp với tác vụ.
Tôi không thấy nút + hoặc New Skill
Nút + và New Skill cần vai trò Admin của workspace. Với vai trò Developer, hãy gõ /create-skill trong chat để tạo skill runbook, hoặc nhờ admin của workspace thêm giúp.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"CloudThinker","colors":{"primary":"#0c93c0","light":"#2897c1","dark":"#0c93c0"},"logo":{"light":"https://mintcdn.com/cloudthinker/-4m9DUjwzDxHfABz/logo/light.svg?fit=max\u0026auto=format\u0026n=-4m9DUjwzDxHfABz\u0026q=85\u0026s=a56a571509d1cd246f5b0e68db015e5f","dark":"https://mintcdn.com/cloudthinker/-4m9DUjwzDxHfABz/logo/dark.svg?fit=max\u0026auto=format\u0026n=-4m9DUjwzDxHfABz\u0026q=85\u0026s=4252f33496bbaa527e5408338963a31e"},"favicon":"https://mintcdn.com/cloudthinker/PoYnb4baZ54aMMQW/favicon.ico?fit=max\u0026auto=format\u0026n=PoYnb4baZ54aMMQW\u0026q=85\u0026s=6570e99ed2a763d9632c8f933fe9c164","background":{"color":{"light":"#eef0f3","dark":"#000000"}},"navbar":{"links":[{"href":"https://discord.com/invite/sRBWRWtaNR","label":"Community"},{"href":"https://cloudthinker.io/blogs","label":"Blog"},{"href":"https://cloudthinker.io/contact","label":"Contact us"}],"primary":{"type":"button","label":"Open app","href":"https://app.cloudthinker.io"}},"footer":{"socials":{"x":"https://x.com/cloudthinkerio?s=21","linkedin":"https://www.linkedin.com/company/cloud-thinker","github":"https://github.com/cloudthinker-ai","discord":"https://discord.com/invite/sRBWRWtaNR","youtube":"https://www.youtube.com/@cloudthinkerai"}},"seo":{"indexing":"navigable"},"fonts":{"family":"Poppins"},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"metadata":{"timestamp":false},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","href":""},{"language":"vi","href":"vi"},{"language":"ja","href":"ja"},{"language":"ko","href":"ko"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"cloudthinker","hasAudioNarration":false,"actualSubdomain":"cloudthinker","customDomains":["docs.cloudthinker.io"],"gitSource":{"type":"github","owner":"nhat-tranvan","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae15a4fd86e510dddaf7235","collectionId":"4bee09ef-014a-46f1-a560-f2d4cfb62382","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae15a4fd86e510dddaf7235"},"feedback":{"thumbs":true,"edits":true,"issues":true,"agentFeedback":true},"entitlements":{},"buildId":"6ae15a4fd86e510dddaf7235","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"vi","tag":"Nền tảng","count":131},{"language":"vi","tag":"Kết nối","count":101},{"language":"default","tag":"Platform","count":67},{"language":"en","tag":"Platform","count":63},{"language":"ja","tag":"プラットフォーム","count":63},{"language":"ko","tag":"플랫폼","count":63},{"language":"vi","tag":"Sản phẩm","count":55},{"language":"default","tag":"Connections","count":52},{"language":"en","tag":"Connections","count":49},{"language":"ja","tag":"接続","count":48},{"language":"ko","tag":"연결","count":48},{"language":"vi","tag":"Tài nguyên","count":39},{"language":"vi","tag":"Học","count":30},{"language":"en","tag":"Products","count":29},{"language":"ja","tag":"プロダクト","count":29},{"language":"ko","tag":"제품","count":29},{"language":"default","tag":"Products","count":26},{"language":"default","tag":"Resources","count":26},{"language":"vi","tag":"Bắt đầu","count":26},{"language":"vi","tag":"Observability \u0026 Monitoring","count":24},{"language":"vi","tag":"Resolve","count":20},{"language":"default","tag":"Learn","count":18},{"language":"default","tag":"Agentic Infrastructure Operations - Engineer Edition","count":18},{"language":"vi","tag":"Agentic Infrastructure Operations - Engineer Edition","count":18},{"language":"vi","tag":"Databases","count":16},{"language":"en","tag":"Get started","count":15},{"language":"ja","tag":"はじめに","count":15},{"language":"ko","tag":"시작하기","count":15},{"language":"en","tag":"Resources","count":13},{"language":"ja","tag":"リソース","count":13},{"language":"ko","tag":"리소스","count":13},{"language":"en","tag":"Monitoring","count":12},{"language":"en","tag":"Learn","count":12},{"language":"en","tag":"Agentic Infrastructure Operations - Leadership Edition","count":12},{"language":"ja","tag":"Observability \u0026 Monitoring","count":12},{"language":"ja","tag":"学ぶ","count":12},{"language":"ja","tag":"Agentic Infrastructure Operations - Leadership Edition","count":12},{"language":"ko","tag":"Observability \u0026 Monitoring","count":12},{"language":"ko","tag":"배우기","count":12},{"language":"ko","tag":"Agentic Infrastructure Operations - Leadership Edition","count":12},{"language":"default","tag":"Get started","count":11},{"language":"en","tag":"Resolve","count":11},{"language":"ja","tag":"Resolve","count":11},{"language":"ko","tag":"Resolve","count":11},{"language":"default","tag":"Resolve","count":9},{"language":"en","tag":"Enterprise","count":9},{"language":"ja","tag":"Databases","count":8},{"language":"ko","tag":"Databases","count":8},{"language":"default","tag":"Review","count":6},{"language":"default","tag":"Set up","count":6}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":".ct-landing a,a.ct-featured{text-decoration:none!important}a.ct-featured{display:block;margin:1.25rem 0 1rem;padding:1.75rem 1.75rem 1.5rem;border:1px solid rgba(12,147,192,.45)!important;border-radius:16px;background:radial-gradient(120% 160% at 0 0,rgba(12,147,192,.14),transparent 55%),#fff;box-shadow:0 12px 32px -16px rgba(12,147,192,.45);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}a.ct-featured:hover{border-color:#0c93c0!important;transform:translateY(-1px);box-shadow:0 16px 40px -16px rgba(12,147,192,.6)}.dark a.ct-featured{border-color:rgba(40,151,193,.45)!important;background:radial-gradient(120% 160% at 0 0,rgba(40,151,193,.16),transparent 55%),#05070a;box-shadow:0 12px 32px -16px rgba(40,151,193,.35)}.dark a.ct-featured:hover{border-color:#2897c1!important}.ct-featured-head{display:flex;align-items:center;gap:.75rem;margin-bottom:.875rem}.ct-featured-icon{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:999px;background:rgba(12,147,192,.12);color:#0a7aa0}.dark .ct-featured-icon{background:rgba(40,151,193,.14);color:#5bb8e0}.ct-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#0a7aa0}.dark .ct-eyebrow{color:#5bb8e0}.ct-hero h1,.ct-title{font-weight:600;color:#0b1a2b}.ct-title{font-size:1.375rem;line-height:1.3}.dark .ct-card .ct-card-head span,.dark .ct-card h3,.dark .ct-hero h1,.dark .ct-section>h2,.dark .ct-step h3,.dark .ct-title{color:#f5f5f7}.ct-body{margin:.5rem 0 0!important;font-weight:400!important;font-size:1rem;max-width:46rem;color:#5b6577;line-height:1.6}.dark .ct-body,.dark .ct-hero .ct-promise,.dark .ct-hero p.ct-lead,.dark .ct-section>p.ct-section-lead{color:#a1a1a6}.ct-cta{display:inline-block;margin-top:1rem;font-weight:600;color:#0a7aa0}.dark .ct-cta{color:#5bb8e0}.ct-illustration{margin:1.5rem 0}.ct-illustration img{max-width:720px;margin:0 auto}.ct-iso-scene{margin:1.5rem 0 2rem;border:1px solid rgba(12,147,192,.18);border-radius:16px;background:#fff;overflow:hidden}.dark .ct-iso-scene{border-color:rgba(40,151,193,.22);background:#000}.ct-illustration img,.ct-iso-scene .ct-iso-svg{display:block;width:100%;height:auto}.ct-landing{max-width:1120px;margin:0 auto;padding:3rem 1.5rem 5rem}.ct-landing a{border-bottom-width:0}.ct-kicker{font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#0c93c0}.dark .ct-card .ct-tagline,.dark .ct-hero .ct-promise strong,.dark .ct-kicker{color:#2897c1}.ct-hero{text-align:center;padding:1.5rem 0 1rem}.ct-hero h1{margin:.75rem 0 0;font-size:clamp(2.25rem,5vw,3.75rem);line-height:1.05;letter-spacing:-.03em;-webkit-text-fill-color:currentColor;background:0 0}.ct-hero .ct-promise{margin:1rem auto 0;font-size:clamp(1.125rem,2.2vw,1.5rem);color:#5b6577}.ct-hero .ct-promise strong,.ct-section>h2{color:#0c93c0;font-weight:600}.ct-hero p.ct-lead{max-width:44rem;margin:1rem auto 0;font-size:1.0625rem;line-height:1.65;color:#5b6577}.ct-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.75rem}.ct-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.25rem;border-radius:999px;font-weight:600;font-size:.95rem;transition:transform .15s ease,background .15s ease}.ct-btn:hover{transform:translateY(-1px)}.ct-btn-primary{background:#0c93c0;color:#fff!important}.ct-btn-primary:hover{background:#0a7aa0}.ct-btn-ghost{border:1px solid rgba(12,147,192,.35)!important;color:#0b1a2b!important}.dark .ct-btn-ghost{color:#f5f5f7!important;border-color:rgba(40,151,193,.4)!important}.ct-landing .ct-iso-scene{margin-top:2.5rem}.ct-section{margin-top:4.5rem}.ct-section>h2{margin:.4rem 0 0;font-size:1.75rem;letter-spacing:-.02em;color:#0b1a2b;-webkit-text-fill-color:currentColor;background:0 0}.ct-section>p.ct-section-lead{margin:.5rem 0 0;color:#5b6577;max-width:46rem}.ct-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.ct-step{display:block;padding:1.25rem;border-radius:14px;border:1px solid rgba(12,147,192,.18)!important;background:#fff;transition:border-color .15s ease,transform .15s ease}.dark .ct-step{background:#05070a;border-color:rgba(40,151,193,.22)!important}.ct-step:hover{border-color:#0c93c0!important;transform:translateY(-1px)}.ct-step-num{display:inline-flex;width:1.75rem;height:1.75rem;border-radius:999px;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:#fff;background:#0c93c0}.ct-card h3,.ct-step h3{margin:.75rem 0 .25rem;font-size:1.05rem}.ct-card p,.ct-step p{margin:0;font-size:.925rem;line-height:1.55;color:#5b6577}.dark .ct-card p,.dark .ct-landing td,.dark .ct-step p{color:#a1a1a6}.ct-grid{display:grid;gap:1rem;margin-top:1.5rem}.ct-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ct-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.ct-card{display:flex;flex-direction:column;padding:1.25rem;border-radius:14px;border:1px solid rgba(12,147,192,.18);background:#fff}.dark .ct-card{background:#05070a;border-color:rgba(40,151,193,.22)}.ct-card .ct-card-head{display:flex;align-items:center;gap:.6rem}.ct-card .ct-card-head span,.ct-card h3,.ct-step h3{font-weight:600;color:#0b1a2b}.ct-card .ct-tagline{margin-top:.75rem;font-size:1.05rem;font-weight:600;line-height:1.35;color:#0c93c0}.ct-card .ct-links{margin-top:auto;padding-top:1rem;display:flex;gap:1rem;font-size:.9rem;font-weight:600}.ct-card .ct-links a{color:#0c93c0!important}.dark .ct-card .ct-links a,.dark .ct-card-head .ct-arrow,.dark .ct-landing td a{color:#2897c1!important}a.ct-card{transition:border-color .15s ease,transform .15s ease}a.ct-card:hover{border-color:#0c93c0!important;transform:translateY(-1px)}.ct-strip{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem}.ct-strip a{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .95rem;border-radius:999px;border:1px solid rgba(12,147,192,.25)!important;font-size:.9rem;font-weight:500;color:#0b1a2b!important}.dark .ct-strip a{color:#f5f5f7!important;border-color:rgba(40,151,193,.3)!important}.ct-strip a:hover{border-color:#0c93c0!important}@media (max-width:900px){.ct-grid-3,.ct-grid-5,.ct-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.ct-landing{padding:2rem 1rem 4rem}.ct-grid-3,.ct-grid-5,.ct-steps{grid-template-columns:minmax(0,1fr)}}.ct-landing table{width:100%;margin-top:1.25rem;border-collapse:collapse;font-size:.925rem}.ct-landing th{text-align:left;font-weight:600;padding:.7rem .9rem;border-bottom:1px solid rgba(12,147,192,.3)}.ct-landing td{vertical-align:top;padding:.8rem .9rem;border-bottom:1px solid rgba(12,147,192,.12);color:#5b6577;line-height:1.55}.ct-landing td:first-child{font-weight:600;color:#0b1a2b;width:22%}.dark .ct-landing td:first-child{color:#f5f5f7}.ct-landing td a{color:#0c93c0!important;font-weight:600}.ct-product{padding:1.1rem 1.2rem}.ct-product .ct-tagline{margin-top:.55rem;font-size:1rem}.ct-product p{margin-top:.3rem}.ct-card-head .ct-arrow{margin-left:auto;font-weight:500!important;color:#0c93c0!important;transition:transform .15s ease}a.ct-product:hover .ct-arrow{transform:translateX(3px)}html:not(.dark) .ct-card,html:not(.dark) .ct-iso-scene,html:not(.dark) .ct-step{background:#f6f7f9}html:not(.dark) .ct-iso-scene{border-color:rgba(12,147,192,.12)}html:not(.dark) #content-area,html:not(.dark) .prose,html:not(.dark) body{color:#2b3240}html:not(.dark) .prose :where(h1, h2, h3, h4, strong){color:#1c2230}html:not(.dark) .ct-card .ct-card-head span,html:not(.dark) .ct-card h3,html:not(.dark) .ct-hero h1,html:not(.dark) .ct-section>h2,html:not(.dark) .ct-step h3{color:#1c2230}"}],"page":{"pagePath":"vi/guide/agents/quickstart","slug":"/vi/guide/agents/quickstart","pageMetadata":{"title":"Bắt đầu nhanh với agent tùy chỉnh","description":"Xây dựng agent tùy chỉnh trong khoảng 10 phút sau khi đã kết nối AWS: thêm skill runbook, tạo agent, gắn kết nối, thiết lập phê duyệt và kiểm thử.","icon":"rocket","href":"/vi/guide/agents/quickstart"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Xây dựng agent tùy chỉnh trong khoảng 10 phút sau khi đã kết nối AWS: thêm skill runbook, tạo agent, gắn kết nối, thiết lập phê duyệt và kiểm thử.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Card,CardGroup,CodeBlock,Frame,Heading,Info,OptimizedImage,Step,Steps,Table,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Card)_missingMdxReference(`Card`,true);if(!CardGroup)_missingMdxReference(`CardGroup`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Agent tùy chỉnh là một agent có tên do bạn tạo trong workspace, bên cạnh trợ lý tích hợp sẵn `,_jsx(_components.a,{href:`/vi/guide/agents/overview`,children:`CloudThinker`}),`, với hướng dẫn và kết nối riêng, và bạn trò chuyện với agent qua `,_jsx(_components.code,{children:`@mention`}),` của nó. Khi đã kết nối AWS, trong khoảng 10 phút bạn sẽ xây dựng một agent, `,_jsx(_components.code,{children:`@ec2-triage`}),`, điều tra tình trạng CPU cao trên các instance EC2 theo runbook của nhóm bạn và hỏi bạn trước khi thay đổi bất cứ thứ gì.`]}),`\n`,_jsxs(Info,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Bạn cần chuẩn bị`})}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Vai trò `,_jsx(_components.strong,{children:`Admin`}),` của workspace để làm bước 1 như mô tả (nút `,_jsx(_components.strong,{children:`+`}),` trong Skills). Developer có thể làm mọi bước còn lại. Nếu bạn là Developer, hãy tạo cùng skill đó bằng cách gõ `,_jsx(_components.code,{children:`/create-skill`}),` trong chat và cung cấp tên, mô tả và hướng dẫn bên dưới. Xem `,_jsx(_components.a,{href:`/vi/guide/skills/custom-skills#t%E1%BA%A1o-skill`,children:`skill tùy chỉnh`}),`.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/vi/guide/connections/aws`,children:`Kết nối AWS`}),` đang hiển thị `,_jsx(_components.strong,{children:`Connected`}),`. Nếu chưa có, hãy thiết lập trước: 10 phút này không bao gồm bước đó. Role của kết nối cần mô tả được instance và đọc số liệu CloudWatch; policy `,_jsx(_components.code,{children:`ReadOnlyAccess`}),` mà script thiết lập gắn vào đáp ứng cả hai (xem `,_jsx(_components.a,{href:`/vi/guide/connections/aws#quy%E1%BB%81n-y%C3%AAu-c%E1%BA%A7u`,children:`quyền yêu cầu`}),`). Bất kỳ kết nối nào khác cũng dùng được: chỉ cần thay tên trong các ví dụ.`]}),`\n`,_jsxs(_components.li,{children:[`Gói của bạn còn trống một slot agent tùy chỉnh (Free có 1). Xem `,_jsx(_components.a,{href:`/vi/guide/agents/customize#t%C3%B3m-t%E1%BA%AFt-v%E1%BB%81-agent-t%C3%B9y-ch%E1%BB%89nh`,children:`Customize`}),`. Trên gói Free, chọn `,_jsx(_components.strong,{children:`Light`}),` làm `,_jsx(_components.strong,{children:`Model Tier`}),` của agent ở bước 2: Free chỉ chạy Light. Trò chuyện với agent tùy chỉnh trong web chat được tính là chat trực tiếp, nên bài kiểm thử ở bước 5 chạy được trên Free.`]}),`\n`]})]}),`\n`,_jsxs(Steps,{children:[_jsxs(Step,{title:`Thêm runbook dưới dạng skill`,children:[_jsxs(_components.p,{children:[`Skill là một tập hướng dẫn mà agent tuân theo khi tác vụ phù hợp. Mở `,_jsx(_components.strong,{children:`More → Workspace settings → Skills`}),`, nhấn nút `,_jsx(_components.strong,{children:`+`}),` cạnh `,_jsx(_components.strong,{children:`Search skills`}),` (hoặc `,_jsx(_components.strong,{children:`New Skill`}),` nếu danh sách trống), rồi chọn `,_jsx(_components.strong,{children:`Write skill instructions`}),`. Điền:`]}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Skill name:`}),` `,_jsx(_components.code,{children:`ec2-high-cpu-runbook`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Description:`}),` `,_jsx(_components.code,{children:`Steps to investigate an EC2 instance with high CPU`})]}),`\n`,_jsx(_components.li,{children:_jsx(_components.strong,{children:`Instructions:`})}),`\n`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`9`,language:`markdown`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`markdown`,children:_jsxs(_components.code,{language:`markdown`,numberOfLines:`9`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-light-font-weight\":`bold`,\"--shiki-dark\":`#569CD6`,\"--shiki-dark-font-weight\":`bold`},children:`# EC2 high CPU runbook`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`Use this when someone reports a slow EC2 instance or high CPU.`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`1.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Check CPUUtilization for the last hour. Above 90% for 15 minutes or more counts as sustained.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`2.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` If the instance is a burstable type (t2, t3, t4g), check its credit specification. In standard mode, check CPUCreditBalance: a balance near zero means the instance is throttled.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`3.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Check NetworkIn and DiskReadOps for a traffic spike that started at the same time.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`4.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Recommend one fix, in this order of preference: wait out a short spike, move a burstable instance in standard mode to unlimited mode, then resize. Recommend only; don't apply it. Unlimited mode and resizing both change cost.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`5.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Never reboot an instance tagged env=prod without a person approving it.`})]}),`\n`]})})}),_jsxs(_components.p,{children:[`Skill định hướng những gì agent làm; skill không chặn bất cứ thứ gì. Quy tắc 5 chỉ là hướng dẫn. Thứ thực sự chặn thao tác ghi là chế độ `,_jsx(_components.strong,{children:`Manual`}),` bạn đặt ở bước 4, cùng với các `,_jsx(_components.a,{href:`/vi/guide/approvals/rules`,children:`Rule`}),` phê duyệt.`]}),_jsxs(_components.p,{children:[`Nhấn `,_jsx(_components.strong,{children:`Create`}),`. Skill mới được bật sẵn và khả dụng trong `,_jsx(_components.strong,{children:`Chat`}),`, nơi bạn kiểm thử ở bước 5.`]}),_jsxs(_components.p,{children:[`Skill áp dụng cho mọi agent trong workspace, không chỉ agent `,_jsx(_components.code,{children:`@ec2-triage`}),` bạn tạo tiếp theo, nên CloudThinker cũng tuân theo runbook này khi một cuộc chat hỏi về CPU cao. Xem `,_jsx(_components.a,{href:`/vi/guide/agents/customize#c%C3%A1ch-ho%E1%BA%A1t-%C4%91%E1%BB%99ng`,children:`Customize`}),`.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Trạng thái thành công:`}),` `,_jsx(_components.code,{children:`ec2-high-cpu-runbook`}),` xuất hiện trong danh sách skill với công tắc bật và `,_jsx(_components.strong,{children:`Chat`}),` được chọn trong `,_jsx(_components.strong,{children:`Available in`}),`.`]})]}),_jsxs(Step,{title:`Tạo agent`,children:[_jsxs(_components.p,{children:[`Mở `,_jsx(_components.strong,{children:`More → Workspace settings → Agents`}),`, nhấn `,_jsx(_components.strong,{children:`Create agent`}),` và chọn `,_jsx(_components.strong,{children:`Build with form`}),`. Ở bước `,_jsx(_components.strong,{children:`Identity`}),`, điền cả bốn trường (trường nào cũng bắt buộc):`]}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Trường`}),_jsx(_components.th,{children:`Giá trị`}),_jsx(_components.th,{children:`Giới hạn`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Name`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`EC2 Triage`})}),_jsx(_components.td,{children:`255 ký tự`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`@mention`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`ec2-triage`}),` (đặt một lần, không thể đổi sau)`]}),_jsx(_components.td,{children:`63 ký tự`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Role`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`AWS Compute Specialist`})}),_jsx(_components.td,{children:`255 ký tự`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Goal`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`Find why an EC2 instance is slow and recommend the safest fix`})}),_jsx(_components.td,{children:`2.048 ký tự`})]})]})]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Role`}),` và `,_jsx(_components.strong,{children:`Goal`}),` được đặt ở đầu prompt của agent, trước phần `,_jsx(_components.strong,{children:`Instructions`}),` bạn thêm tiếp theo, nên agent đọc chúng ở mọi yêu cầu. Hãy giữ chúng ngắn gọn và cụ thể.`]}),_jsx(Frame,{children:_jsx(OptimizedImage,{src:`https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-1.png?fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=4ebff25696c53485fb958b013d81461e`,alt:`Hộp thoại Create Custom Agent, bước Identity, với các trường Avatar, Name, @mention, Role và Goal`,style:{maxWidth:`400px`},\"data-og-width\":`1064`,width:`1064`,\"data-og-height\":`1408`,height:`1408`,\"data-path\":`images/agents/create-custom-agent-dialog-1.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-1.png?w=280\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=c8ad16bd19c2d6ea6cd5a111130ec78e 280w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-1.png?w=560\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=a98319104cd50ddc6316fca5fa96cc9a 560w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-1.png?w=840\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=a64694cd60e84fb0775a0c02e7c11d3c 840w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-1.png?w=1100\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=8c568ea8012b900c7297da99d5801679 1100w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-1.png?w=1650\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=1d333033ad5ff7b3a3fec0d15f6a50c5 1650w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-1.png?w=2500\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=53c5eaa61f8e46fd4b12f6d206257e2c 2500w`})}),_jsxs(_components.p,{children:[`Nhấn `,_jsx(_components.strong,{children:`Next`}),`. Hộp thoại chuyển sang bước `,_jsx(_components.strong,{children:`Configuration`}),`. Tại đây, giữ `,_jsx(_components.strong,{children:`Model Tier`}),` ở `,_jsx(_components.strong,{children:`Pro`}),` (trên Free, chọn `,_jsx(_components.strong,{children:`Light`}),`), để `,_jsx(_components.strong,{children:`Language`}),` ở `,_jsx(_components.strong,{children:`Match the user`}),` (agent trả lời bằng ngôn ngữ trong tin nhắn của bạn), đặt `,_jsx(_components.strong,{children:`Learning Mode`}),` thành `,_jsx(_components.strong,{children:`Offer`}),` và dán `,_jsx(_components.strong,{children:`Instructions`}),` sau:`]}),_jsx(Frame,{children:_jsx(OptimizedImage,{src:`https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-2.png?fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=552c149b155a128882a008db96f0ae99`,alt:`Hộp thoại Create Custom Agent, bước Configuration, với Model Tier, Instructions, Language và Learning Mode`,style:{maxWidth:`400px`},\"data-og-width\":`1002`,width:`1002`,\"data-og-height\":`1462`,height:`1462`,\"data-path\":`images/agents/create-custom-agent-dialog-2.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-2.png?w=280\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=feee64444a3970c822ef6d9fb68945e6 280w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-2.png?w=560\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=53afc113fcfe0cc80764270720b32ba1 560w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-2.png?w=840\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=edaff9c9588a4f342eb5366325a0145b 840w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-2.png?w=1100\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=3f52f9fe346e439641d8bdb8a1771827 1100w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-2.png?w=1650\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=3c967964d115b4d06a4e453f2ed58bef 1650w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-2.png?w=2500\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=cd98f761966299c41327b1857b78b833 2500w`})}),_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`You investigate EC2 performance problems in our AWS account.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Always start read-only: describe the instance, then check CloudWatch metrics for the last hour.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Report findings as a short table: metric, value, what it means.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Never stop, reboot, or resize an instance without saying why first.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Use the ec2-high-cpu-runbook skill for high CPU or slow instance questions.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Nêu tên skill trong phần hướng dẫn giúp agent chọn đúng skill. Cách này không ngăn các agent khác dùng skill đó.`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Offer`}),` hỏi bạn trong chat trước khi lưu một quy trình lặp lại thành skill. Tùy chọn mặc định `,_jsx(_components.strong,{children:`Auto`}),` lưu mà không hỏi. Nếu agent đề nghị lưu một quy trình thành skill trong lúc kiểm thử, hãy trả lời không. Xem `,_jsx(_components.a,{href:`/vi/guide/agents/customize#learning-mode`,children:`Learning Mode`}),`. Nhấn `,_jsx(_components.strong,{children:`Next`}),`.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Trạng thái thành công:`}),` hộp thoại chuyển sang bước `,_jsx(_components.strong,{children:`Connect`}),`.`]})]}),_jsxs(Step,{title:`Gắn kết nối cho agent`,children:[_jsxs(_components.p,{children:[`Ở bước `,_jsx(_components.strong,{children:`Connect`}),`, mở tab `,_jsx(_components.strong,{children:`Builtin`}),` và nhấn `,_jsx(_components.strong,{children:`Add`}),` cạnh kết nối AWS của bạn. `,_jsx(_components.strong,{children:`Builtin`}),` liệt kê các kết nối đang hiển thị `,_jsx(_components.strong,{children:`Connected`}),` trong `,_jsx(_components.strong,{children:`More → Workspace settings → Connections`}),`; `,_jsx(_components.strong,{children:`MCP`}),` liệt kê các `,_jsx(_components.a,{href:`/vi/guide/connections/mcp`,children:`MCP server`}),` bạn đã thêm. Nhấn `,_jsx(_components.strong,{children:`Create Agent`}),`.`]}),_jsx(Frame,{children:_jsx(OptimizedImage,{src:`https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-3.png?fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=826b24cfbf405f20e6aebe0dab61fe1a`,alt:`Hộp thoại Create Custom Agent, bước Connect, với tab Builtin và MCP cùng danh sách kết nối để gắn`,style:{maxWidth:`500px`},\"data-og-width\":`1010`,width:`1010`,\"data-og-height\":`932`,height:`932`,\"data-path\":`images/agents/create-custom-agent-dialog-3.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-3.png?w=280\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=87259f236942e20040a8accf94aa76a9 280w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-3.png?w=560\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=704b4af8da0f988e58e1434d2aec9e41 560w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-3.png?w=840\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=075b3bc49d2dc67a079de8e3d57e777d 840w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-3.png?w=1100\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=9c5a1414bd652cff75c12823f8631db5 1100w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-3.png?w=1650\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=277422598258858c128a2017290698a2 1650w, https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/agents/create-custom-agent-dialog-3.png?w=2500\u0026fit=max\u0026auto=format\u0026n=aLd-ttc-SCW-aFky\u0026q=85\u0026s=e6af94845614a213440ce42a984e9713 2500w`})}),_jsxs(_components.p,{children:[`Agent chỉ tiếp cận được các kết nối bạn gắn, nên chỉ gắn những gì công việc của agent cần. Bạn có thể thêm sau trong tab `,_jsx(_components.strong,{children:`Connections`}),` của agent.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Trạng thái thành công:`}),` `,_jsx(_components.code,{children:`EC2 Triage`}),` xuất hiện trong `,_jsx(_components.strong,{children:`Custom`}),` tại `,_jsx(_components.strong,{children:`More → Workspace settings → Agents`}),`, hiển thị 1 kết nối.`]}),_jsx(Frame,{caption:`Agents: mỗi agent tùy chỉnh có tên, @mention, vai trò, mục tiêu và model tier`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/cloudthinker/7N5Axt6gSxkmeWiW/images/v2/agents-custom.webp?fit=max\u0026auto=format\u0026n=7N5Axt6gSxkmeWiW\u0026q=85\u0026s=070961fefebc70a2021c4a53cd3369bb`,alt:`Trang Settings, Agents liệt kê các agent tùy chỉnh với tên, @mention, vai trò, mục tiêu và model tier`,\"data-og-width\":`2176`,width:`2176`,\"data-og-height\":`1800`,height:`1800`,\"data-path\":`images/v2/agents-custom.webp`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/cloudthinker/7N5Axt6gSxkmeWiW/images/v2/agents-custom.webp?w=280\u0026fit=max\u0026auto=format\u0026n=7N5Axt6gSxkmeWiW\u0026q=85\u0026s=dd2ba5285f494235b4fc8b8ccece50da 280w, https://mintcdn.com/cloudthinker/7N5Axt6gSxkmeWiW/images/v2/agents-custom.webp?w=560\u0026fit=max\u0026auto=format\u0026n=7N5Axt6gSxkmeWiW\u0026q=85\u0026s=58ee863281b14277f3c94cf5f465a1b2 560w, https://mintcdn.com/cloudthinker/7N5Axt6gSxkmeWiW/images/v2/agents-custom.webp?w=840\u0026fit=max\u0026auto=format\u0026n=7N5Axt6gSxkmeWiW\u0026q=85\u0026s=944b57070fd29d4c1366cfbfe1b04a45 840w, https://mintcdn.com/cloudthinker/7N5Axt6gSxkmeWiW/images/v2/agents-custom.webp?w=1100\u0026fit=max\u0026auto=format\u0026n=7N5Axt6gSxkmeWiW\u0026q=85\u0026s=fb74baa9ead80b557b4c5922cfa7cded 1100w, https://mintcdn.com/cloudthinker/7N5Axt6gSxkmeWiW/images/v2/agents-custom.webp?w=1650\u0026fit=max\u0026auto=format\u0026n=7N5Axt6gSxkmeWiW\u0026q=85\u0026s=73b26adbe7bc3d79182173d66c8aa268 1650w, https://mintcdn.com/cloudthinker/7N5Axt6gSxkmeWiW/images/v2/agents-custom.webp?w=2500\u0026fit=max\u0026auto=format\u0026n=7N5Axt6gSxkmeWiW\u0026q=85\u0026s=1e5452ccfd92fcb377204d14d6e0391b 2500w`})})]}),_jsxs(Step,{title:`Buộc agent hỏi trước mọi thay đổi`,children:[_jsx(_components.p,{children:`Approvals quyết định thao tác ghi (bất kỳ lệnh gọi nào thay đổi thứ gì đó) được chạy, chờ người duyệt hay bị từ chối. Thao tác đọc luôn chạy. Trong bài kiểm thử này, hãy để mọi thao tác ghi chờ bạn.`}),_jsx(Warning,{children:_jsxs(_components.p,{children:[`Workspace mới mặc định ở `,_jsx(_components.strong,{children:`Auto`}),`, nơi đánh giá của AI có thể cho thao tác ghi an toàn chạy mà không hỏi. Allow Rule cũng có thể làm vậy khi CloudThinker bật Rule enforcement cho workspace của bạn, vốn tắt theo mặc định. Hãy chuyển chat này sang `,_jsx(_components.strong,{children:`Manual`}),` trước khi kiểm thử.`]})}),_jsxs(_components.p,{children:[`Bắt đầu một chat mới. Điều khiển phê duyệt nằm bên phải ô nhập prompt, cạnh bộ chọn model, và hiển thị chế độ hiện tại của chat, `,_jsx(_components.strong,{children:`Manual`}),` hoặc `,_jsx(_components.strong,{children:`Auto`}),`. Chat mới bắt đầu theo chế độ của workspace. Mở điều khiển này, hoặc gõ `,_jsx(_components.code,{children:`/`}),` và chọn `,_jsx(_components.strong,{children:`Approval`}),`, rồi chọn `,_jsx(_components.strong,{children:`Manual`}),`.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Trạng thái thành công:`}),` điều khiển phê duyệt hiển thị `,_jsx(_components.strong,{children:`Manual`}),`. Thiết lập này chỉ áp dụng cho chat này; chế độ của workspace không đổi. Developer cũng có thể làm bước này.`]}),_jsxs(_components.p,{children:[`Chat mới lại bắt đầu theo chế độ của workspace. Automation dùng chế độ riêng: theo mặc định Rule quyết định trước, AI đánh giá phần còn lại, còn thao tác ghi vẫn cần người duyệt sẽ bị từ chối thay vì chờ. Rule chỉ quyết định khi CloudThinker bật Rule enforcement cho workspace của bạn; trước đó Rule chỉ ghi lại phán quyết mà Rule sẽ đưa ra, và chỉ riêng chế độ Approval quyết định. Xem `,_jsx(_components.a,{href:`/vi/guide/approvals/rules#kh%E1%BA%AFc-ph%E1%BB%A5c-s%E1%BB%B1-c%E1%BB%91`,children:`Rule ở chế độ preview`}),`. Xem `,_jsx(_components.a,{href:`/vi/guide/approvals/overview#c%E1%BA%A5u-h%C3%ACnh-m%E1%BA%B7c-%C4%91%E1%BB%8Bnh`,children:`Approvals`}),`. Để các thay đổi trên prod luôn chờ người duyệt, hãy thêm một `,_jsx(_components.a,{href:`/vi/guide/approvals/rules`,children:`Rule`}),` `,_jsx(_components.strong,{children:`Ask first`}),`.`]})]}),_jsxs(Step,{title:`Kiểm thử agent`,children:[_jsx(_components.p,{children:`Trong cùng chat đó, mention agent. Gửi một trong các prompt sau.`}),_jsx(_components.p,{children:`Nếu bạn có ID instance, hãy thay ID ví dụ:`}),_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`@ec2-triage Instance i-0abc1234def567890 feels slow. Investigate it.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Nếu không có:`}),_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`@ec2-triage List my running EC2 instances, pick the one with the highest CPU, and investigate it.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Agent mô tả instance, đọc số liệu CloudWatch của instance, rồi trả lời bằng một bảng số liệu và một cách khắc phục được đề xuất, theo thứ tự runbook của bạn quy định. Câu trả lời tốt có dạng như sau (giá trị của bạn sẽ khác):`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Số liệu`}),_jsx(_components.th,{children:`Giá trị`}),_jsx(_components.th,{children:`Ý nghĩa`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`CPUUtilization`}),_jsx(_components.td,{children:`Trên 90% trong 40 phút gần nhất`}),_jsx(_components.td,{children:`CPU cao kéo dài`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`CPUCreditBalance`}),_jsx(_components.td,{children:`Gần bằng 0`}),_jsx(_components.td,{children:`Instance burstable đang bị giới hạn hiệu năng`})]})]})]}),_jsx(_components.p,{children:`Tiếp theo là một đề xuất, chẳng hạn chuyển instance sang unlimited mode, kèm lý do và không áp dụng thay đổi nào.`}),_jsxs(_components.p,{children:[`Nếu agent muốn thay đổi instance, chat hiển thị thẻ phê duyệt với `,_jsx(_components.strong,{children:`Approve`}),` và `,_jsx(_components.strong,{children:`Decline`}),`. Nhấn `,_jsx(_components.strong,{children:`Decline`}),` nếu bạn chỉ muốn chẩn đoán. Với `,_jsx(_components.code,{children:`ReadOnlyAccess`}),`, agent không thể thay đổi gì ngay cả khi bạn phê duyệt: thẻ cho thấy cơ chế phê duyệt hoạt động, nhưng bản thân thao tác ghi sẽ thất bại trong AWS.`]}),_jsx(_components.p,{children:`Nếu CPU hóa ra bình thường, bạn sẽ nhận được một bảng thể hiện điều đó và một đề xuất chờ thêm hoặc tìm ở chỗ khác. Kết quả đó vẫn tính là thành công.`}),_jsxs(_components.p,{children:[`Với Pro, lượt chạy trừ vào credit thưởng, rồi đến credit premium: credit miễn phí hằng ngày chỉ dành cho chat Light. Trên Free với agent Light, lượt chạy trừ vào credit hằng ngày. Xem `,_jsx(_components.a,{href:`/vi/guide/billing/usage#%C4%91i%E1%BB%81u-g%C3%AC-khi%E1%BA%BFn-m%E1%BB%99t-l%C6%B0%E1%BB%A3t-ch%E1%BA%A1y-t%E1%BB%91n-nhi%E1%BB%81u-h%C6%A1n`,children:`mức sử dụng`}),`.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Trạng thái thành công:`}),` câu trả lời của agent hiển thị một dòng tóm tắt hoạt động đã thu gọn có chứa “read 1 skill”. Nhấn vào để mở rộng các bước và tìm bước `,_jsx(_components.strong,{children:`Load Skill`}),`. Câu trả lời tuân theo các bước trong runbook mà bạn không cần nhắc lại, và không có gì thay đổi trong AWS khi chưa có phê duyệt của bạn.`]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`dọn-dẹp`,children:`Dọn dẹp`}),`\n`,_jsxs(_components.p,{children:[`Nếu đây chỉ là thử nghiệm, hãy xóa agent trong `,_jsx(_components.strong,{children:`More → Workspace settings → Agents`}),` (slot được giải phóng ngay; Free có một slot) và xóa skill trong `,_jsx(_components.strong,{children:`More → Workspace settings → Skills`}),`. Cho đến khi bạn xóa skill, mọi agent, kể cả CloudThinker, đều tuân theo skill này cho các câu hỏi về CPU cao.`]}),`\n`,_jsx(Heading,{level:`2`,id:`khắc-phục-sự-cố`,children:`Khắc phục sự cố`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Nút Create agent bị mờ`,id:`nut-create-agent-bi-mo`,children:_jsxs(_components.p,{children:[`Workspace của bạn đã đạt giới hạn agent tùy chỉnh. Di chuột lên nút: tooltip hiển thị `,_jsx(_components.strong,{children:`Custom agent limit reached.`}),` kèm liên kết `,_jsx(_components.strong,{children:`Upgrade plan`}),`. Xóa một agent không dùng trong `,_jsx(_components.strong,{children:`More → Workspace settings → Agents`}),`, hoặc xem `,_jsx(_components.a,{href:`/vi/guide/billing/pricing`,children:`các gói`}),`.`]})}),_jsx(Accordion,{title:`@mention bị từ chối`,id:`mention-bi-tu-choi`,children:_jsx(_components.p,{children:`@mention phải bắt đầu bằng chữ thường và chỉ dùng chữ thường, số, dấu chấm, dấu gạch dưới và dấu gạch ngang, tối đa 63 ký tự. @mention cũng không được trùng với tên đang được dùng hoặc tên CloudThinker giữ riêng.`})}),_jsx(Accordion,{title:`@mention không tự động gợi ý`,id:`mention-khong-tu-dong-goi-y`,children:_jsxs(_components.p,{children:[`Kiểm tra `,_jsx(_components.code,{children:`EC2 Triage`}),` có xuất hiện trong `,_jsx(_components.strong,{children:`Custom`}),` tại `,_jsx(_components.strong,{children:`More → Workspace settings → Agents`}),` không. Nếu bạn tạo agent ở tab khác, hãy làm mới trang chat rồi gõ lại `,_jsx(_components.code,{children:`@`}),`.`]})}),_jsx(Accordion,{title:`Thay đổi đã chạy mà không có thẻ phê duyệt`,id:`thay-doi-da-chay-ma-khong-co-the-phe-duyet`,children:_jsxs(_components.p,{children:[`Kiểm tra điều khiển phê duyệt của chat có hiển thị `,_jsx(_components.strong,{children:`Manual`}),` không. Ở chế độ Manual, mọi thao tác ghi đều hỏi người duyệt, kể cả thao tác đã có Allow Rule bao phủ, nên thiếu thẻ thường có nghĩa là chat đang ở `,_jsx(_components.strong,{children:`Auto`}),`. Allow Rule chỉ quyết định khi CloudThinker bật `,_jsx(_components.a,{href:`/vi/guide/approvals/rules#kh%E1%BA%AFc-ph%E1%BB%A5c-s%E1%BB%B1-c%E1%BB%91`,children:`Rule enforcement`}),` cho workspace của bạn; hiện nay, `,_jsx(_components.strong,{children:`Manual`}),` là cách giữ lại mọi thao tác ghi. Thao tác đọc (describe, list, số liệu) không bao giờ hiển thị thẻ. Xem `,_jsx(_components.a,{href:`/vi/guide/approvals/overview`,children:`Approvals`}),`.`]})}),_jsx(Accordion,{title:`Agent báo không thể truy cập AWS`,id:`agent-bao-khong-the-truy-cap-aws`,children:_jsxs(_components.p,{children:[`Mở agent trong `,_jsx(_components.strong,{children:`More → Workspace settings → Agents`}),`, vào tab `,_jsx(_components.strong,{children:`Connections`}),` và kiểm tra kết nối AWS đã được gắn. Sau đó kiểm tra bản thân kết nối hiển thị `,_jsx(_components.strong,{children:`Connected`}),` trên trang `,_jsx(_components.a,{href:`/vi/guide/connections/overview`,children:`Connections`}),`.`]})}),_jsx(Accordion,{title:`Câu trả lời bỏ qua runbook`,id:`cau-tra-loi-bo-qua-runbook`,children:_jsxs(_components.p,{children:[`Mở `,_jsx(_components.strong,{children:`More → Workspace settings → Skills`}),` và kiểm tra công tắc của skill đang bật và `,_jsx(_components.strong,{children:`Chat`}),` được chọn. Sau đó làm cho yêu cầu khớp với mô tả của skill, ví dụ nói “high CPU”. Agent chỉ áp dụng skill khi skill phù hợp với tác vụ.`]})}),_jsx(Accordion,{title:`Tôi không thấy nút + hoặc New Skill`,id:`toi-khong-thay-nut-hoac-new-skill`,children:_jsxs(_components.p,{children:[`Nút `,_jsx(_components.strong,{children:`+`}),` và `,_jsx(_components.strong,{children:`New Skill`}),` cần vai trò `,_jsx(_components.strong,{children:`Admin`}),` của workspace. Với vai trò Developer, hãy gõ `,_jsx(_components.code,{children:`/create-skill`}),` trong chat để tạo skill runbook, hoặc nhờ admin của workspace thêm giúp.`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`bước-tiếp-theo`,children:`Bước tiếp theo`}),`\n`,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:`Skill tùy chỉnh`,icon:`wand-magic-sparkles`,href:`/vi/guide/skills/custom-skills`,children:_jsx(_components.p,{children:`Gắn skill vào Review và Incident, chỉnh sửa bằng AI hoặc tải lên một gói`})}),_jsx(Card,{title:`Approval Rules`,icon:`list-check`,href:`/vi/guide/approvals/rules`,children:_jsx(_components.p,{children:`Chỉ định từng thao tác ghi agent được tự chạy và từng thao tác phải chờ người duyệt`})}),_jsx(Card,{title:`Automations`,icon:`calendar-check`,href:`/vi/guide/automation/automations`,children:_jsx(_components.p,{children:`Chạy agent theo lịch, webhook hoặc sự kiện repository`})}),_jsx(Card,{title:`Customize`,icon:`sliders`,href:`/vi/guide/agents/customize`,children:_jsx(_components.p,{children:`Xem mọi cài đặt bạn có thể thay đổi và vị trí của chúng`})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Bắt đầu nhanh với agent tùy chỉnh","description":"Xây dựng agent tùy chỉnh trong khoảng 10 phút sau khi đã kết nối AWS: thêm skill runbook, tạo agent, gắn kết nối, thiết lập phê duyệt và kiểm thử.","icon":"rocket","href":"/vi/guide/agents/quickstart"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Dọn dẹp","slug":"dọn-dẹp","depth":2,"children":[]},{"title":"Khắc phục sự cố","slug":"khắc-phục-sự-cố","depth":2,"children":[]},{"title":"Bước tiếp theo","slug":"bước-tiếp-theo","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"cloudthinker","siteName":"CloudThinker","title":"Bắt đầu nhanh với agent tùy chỉnh - CloudThinker","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/guide/agents/quickstart","matchLevel":1},"vi":{"href":"/vi/guide/agents/quickstart","matchLevel":0},"ja":{"href":"/guide/agents/quickstart","matchLevel":1},"ko":{"href":"/guide/agents/quickstart","matchLevel":1}}},"lastModified":"2026-10-28T02:14:50.767Z","originalFileLocation":"vi/guide/agents/quickstart.mdx","locale":"vi"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Xây dựng agent tùy chỉnh trong khoảng 10 phút sau khi đã kết nối AWS: thêm skill runbook, tạo agent, gắn kết nối, thiết lập phê duyệt và kiểm thử.\">\u003cmeta data-mint-head name=\"application-name\" content=\"CloudThinker\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Bắt đầu nhanh với agent tùy chỉnh - CloudThinker\">\u003cmeta data-mint-head property=\"og:description\" content=\"Xây dựng agent tùy chỉnh trong khoảng 10 phút sau khi đã kết nối AWS: thêm skill runbook, tạo agent, gắn kết nối, thiết lập phê duyệt và kiểm thử.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"CloudThinker\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.cloudthinker.io/vi/guide/agents/quickstart\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://cloudthinker.mintlify.app/_mintlify/api/og/v2?division=Customize\u0026amp;title=B%E1%BA%AFt+%C4%91%E1%BA%A7u+nhanh+v%E1%BB%9Bi+agent+t%C3%B9y+ch%E1%BB%89nh\u0026amp;description=X%C3%A2y+d%E1%BB%B1ng+agent+t%C3%B9y+ch%E1%BB%89nh+trong+kho%E1%BA%A3ng+10+ph%C3%BAt+sau+khi+%C4%91%C3%A3+k%E1%BA%BFt+n%E1%BB%91i+AWS%3A+th%C3%AAm+skill+runbook%2C+t%E1%BA%A1o+agent%2C+g%E1%BA%AFn+k%E1%BA%BFt+n%E1%BB%91i%2C+thi%E1%BA%BFt+l%E1%BA%ADp+ph%C3%AA+duy%E1%BB%87t+v%C3%A0+ki%E1%BB%83m+th%E1%BB%AD.\u0026amp;theme=a662466b4ca99701c5f8fbf0\u0026amp;signature=b6b3b56dde3f58afee57ccb1bbf586c8d86a5ecfdfdb54c122131c93cf41e8fa\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Bắt đầu nhanh với agent tùy chỉnh - CloudThinker\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Xây dựng agent tùy chỉnh trong khoảng 10 phút sau khi đã kết nối AWS: thêm skill runbook, tạo agent, gắn kết nối, thiết lập phê duyệt và kiểm thử.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://cloudthinker.mintlify.app/_mintlify/api/og/v2?division=Customize\u0026amp;title=B%E1%BA%AFt+%C4%91%E1%BA%A7u+nhanh+v%E1%BB%9Bi+agent+t%C3%B9y+ch%E1%BB%89nh\u0026amp;description=X%C3%A2y+d%E1%BB%B1ng+agent+t%C3%B9y+ch%E1%BB%89nh+trong+kho%E1%BA%A3ng+10+ph%C3%BAt+sau+khi+%C4%91%C3%A3+k%E1%BA%BFt+n%E1%BB%91i+AWS%3A+th%C3%AAm+skill+runbook%2C+t%E1%BA%A1o+agent%2C+g%E1%BA%AFn+k%E1%BA%BFt+n%E1%BB%91i%2C+thi%E1%BA%BFt+l%E1%BA%ADp+ph%C3%AA+duy%E1%BB%87t+v%C3%A0+ki%E1%BB%83m+th%E1%BB%AD.\u0026amp;theme=a662466b4ca99701c5f8fbf0\u0026amp;signature=b6b3b56dde3f58afee57ccb1bbf586c8d86a5ecfdfdb54c122131c93cf41e8fa\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/cloudthinker/2UjfrgdSjUW0wAzv/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"CloudThinker\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0c93c0\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.cloudthinker.io/vi/guide/agents/quickstart\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/vi/guide/agents/quickstart.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"vi\" href=\"https://docs.cloudthinker.io/vi/guide/agents/quickstart\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.cloudthinker.io/guide/agents/quickstart\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.cloudthinker.io/guide/agents/quickstart\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.cloudthinker.io/guide/agents/quickstart\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.cloudthinker.io/guide/agents/quickstart\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.cloudthinker.io/#organization\",\"name\":\"CloudThinker\",\"url\":\"https://docs.cloudthinker.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/cloudthinker/-4m9DUjwzDxHfABz/logo/light.svg?fit=max\u0026auto=format\u0026n=-4m9DUjwzDxHfABz\u0026q=85\u0026s=a56a571509d1cd246f5b0e68db015e5f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.cloudthinker.io#website\",\"name\":\"CloudThinker\",\"url\":\"https://docs.cloudthinker.io\",\"publisher\":{\"@id\":\"https://docs.cloudthinker.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.cloudthinker.io/vi/guide/agents/quickstart#webpage\",\"url\":\"https://docs.cloudthinker.io/vi/guide/agents/quickstart\",\"name\":\"Bắt đầu nhanh với agent tùy chỉnh\",\"description\":\"Xây dựng agent tùy chỉnh trong khoảng 10 phút sau khi đã kết nối AWS: thêm skill runbook, tạo agent, gắn kết nối, thiết lập phê duyệt và kiểm thử.\",\"dateModified\":\"2026-10-28T02:14:50.767Z\",\"isPartOf\":{\"@id\":\"https://docs.cloudthinker.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.cloudthinker.io/vi/guide/agents/quickstart#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.cloudthinker.io/vi/guide/agents/quickstart#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Customize\",\"item\":\"https://docs.cloudthinker.io/vi/guide/teach-cloudthinker\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Bắt đầu nhanh với agent tùy chỉnh\",\"item\":\"https://docs.cloudthinker.io/vi/guide/agents/quickstart\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.cloudthinker.io/vi/guide/agents/quickstart#article\",\"headline\":\"Bắt đầu nhanh với agent tùy chỉnh\",\"name\":\"Bắt đầu nhanh với agent tùy chỉnh\",\"description\":\"Xây dựng agent tùy chỉnh trong khoảng 10 phút sau khi đã kết nối AWS: thêm skill runbook, tạo agent, gắn kết nối, thiết lập phê duyệt và kiểm thử.\",\"url\":\"https://docs.cloudthinker.io/vi/guide/agents/quickstart\",\"mainEntityOfPage\":{\"@id\":\"https://docs.cloudthinker.io/vi/guide/agents/quickstart#webpage\"},\"dateModified\":\"2026-10-28T02:14:50.767Z\",\"publisher\":{\"@id\":\"https://docs.cloudthinker.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.cloudthinker.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"CloudThinker\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"CloudThinker","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/guide/agents/quickstart"}]},{"language":"vi","tabs":[{"tab":"Bắt đầu","pages":[{"title":"Bắt đầu","href":"/vi"}]},{"tab":"Sản phẩm","pages":[{"title":"Sản phẩm","href":"/vi/guide/incident/overview"}]},{"tab":"Nền tảng","groups":[{"group":"Kết nối","pages":[{"title":"Connections","icon":"plug","href":"/vi/guide/connections/overview"},{"group":"Cloud Platforms","pages":[{"title":"Amazon Web Services","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/aws.svg","href":"/vi/guide/connections/aws"},{"title":"Google Cloud Platform","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/gcp.svg","href":"/vi/guide/connections/gcp"},{"title":"Microsoft Azure","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/azure.svg","href":"/vi/guide/connections/azure"},{"title":"Firebase","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/firebase.svg","href":"/vi/guide/connections/firebase"},{"title":"Cloudflare","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/cloudflare.svg","href":"/vi/guide/connections/cloudflare"},{"title":"Vercel","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/vercel.svg","href":"/vi/guide/connections/vercel"},{"title":"Netlify","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/netlify.svg","href":"/vi/guide/connections/netlify"},{"title":"Heroku","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/heroku.svg","href":"/vi/guide/connections/heroku"},{"title":"Render","icon":"server","href":"/vi/guide/connections/render"},{"title":"DigitalOcean","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/digitalocean.svg","href":"/vi/guide/connections/digitalocean"},{"title":"Fly.io","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/flyio.svg","href":"/vi/guide/connections/flyio"},{"title":"GreenNode","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/greennode.svg","href":"/vi/guide/connections/greennode"},{"title":"FPT Cloud","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/fptcloud.svg","href":"/vi/guide/connections/fptcloud"},{"title":"OpenStack","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/openstack.svg","href":"/vi/guide/connections/openstack"},{"title":"VMware vCenter","icon":"server","href":"/vi/guide/connections/vmware"}]},{"group":"Infrastructure \u0026 Access","pages":[{"title":"Kubernetes","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/kubernetes.svg","href":"/vi/guide/connections/kubernetes"},{"title":"Rancher","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/rancher.svg","href":"/vi/guide/connections/rancher"},{"title":"Pulumi","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/pulumi.svg","href":"/vi/guide/connections/pulumi"},{"title":"HCP Terraform","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/terraform.svg","href":"/vi/guide/connections/terraform"},{"title":"SSH","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/ssh.svg","href":"/vi/guide/connections/ssh"},{"title":"HashiCorp Vault","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/vault.svg","href":"/vi/guide/connections/vault"},{"title":"Keycloak","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/keycloak.svg","href":"/vi/guide/connections/keycloak"},{"title":"Backstage","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/backstage.svg","href":"/vi/guide/connections/backstage"},{"title":"Okta","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/okta.svg","href":"/vi/guide/connections/okta"}]},{"group":"Databases","pages":[{"title":"PostgreSQL","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/postgresql.svg","href":"/vi/guide/connections/postgresql"},{"title":"CockroachDB","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/cockroachdb.svg","href":"/vi/guide/connections/cockroachdb"},{"title":"MySQL","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/mysql.svg","href":"/vi/guide/connections/mysql"},{"title":"MongoDB","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/mongodb.svg","href":"/vi/guide/connections/mongodb"},{"title":"Redis","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/redis.svg","href":"/vi/guide/connections/redis"},{"title":"ClickHouse","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/clickhouse.svg","href":"/vi/guide/connections/clickhouse"},{"title":"Apache Cassandra","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/cassandra.svg","href":"/vi/guide/connections/cassandra"},{"title":"Snowflake","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/snowflake.svg","href":"/vi/guide/connections/snowflake"},{"title":"Databricks","icon":"layer-group","href":"/vi/guide/connections/databricks"},{"title":"Neon","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/neon.svg","href":"/vi/guide/connections/neon"},{"title":"Supabase","icon":"bolt","href":"/vi/guide/connections/supabase"},{"title":"Elasticsearch","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/elasticsearch.svg","href":"/vi/guide/connections/elasticsearch"},{"title":"OpenSearch","icon":"magnifying-glass-chart","href":"/vi/guide/connections/opensearch"},{"title":"InfluxDB","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/influxdb.svg","href":"/vi/guide/connections/influxdb"},{"title":"Microsoft SQL Server","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/mssql.svg","href":"/vi/guide/connections/mssql"},{"title":"Pinecone","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/pinecone.svg","href":"/vi/guide/connections/pinecone"}]},{"group":"Messaging \u0026 Streaming","pages":[{"title":"Apache Kafka","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/kafka.svg","href":"/vi/guide/connections/kafka"},{"title":"RabbitMQ","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/rabbitmq.svg","href":"/vi/guide/connections/rabbitmq"},{"title":"Flespi","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/flespi.svg","href":"/vi/guide/connections/flespi"}]},{"group":"Observability \u0026 Monitoring","pages":[{"title":"Grafana","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/grafana.svg","href":"/vi/guide/connections/grafana"},{"title":"Prometheus","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/prometheus.svg","href":"/vi/guide/connections/prometheus"},{"title":"PRTG Network Monitor","href":"/vi/guide/connections/prtg"},{"title":"Datadog","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/datadog.svg","href":"/vi/guide/connections/datadog"},{"title":"New Relic","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/newrelic.svg","href":"/vi/guide/connections/newrelic"},{"title":"Dynatrace","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/dynatrace.svg","href":"/vi/guide/connections/dynatrace"},{"title":"AppDynamics","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/appdynamics.svg","href":"/vi/guide/connections/appdynamics"},{"title":"Coralogix","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/coralogix.svg","href":"/vi/guide/connections/coralogix"},{"title":"SigNoz","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/signoz.svg","href":"/vi/guide/connections/signoz"},{"title":"Honeycomb","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/honeycomb.svg","href":"/vi/guide/connections/honeycomb"},{"title":"Splunk Observability","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/splunkobservability.svg","href":"/vi/guide/connections/splunkobservability"},{"title":"Sumo Logic","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/sumologic.svg","href":"/vi/guide/connections/sumologic"},{"title":"Graylog","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/graylog.svg","href":"/vi/guide/connections/graylog"},{"title":"Zabbix","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/zabbix.svg","href":"/vi/guide/connections/zabbix"},{"title":"Better Stack","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/betterstack.svg","href":"/vi/guide/connections/betterstack"},{"title":"Rollbar","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/rollbar.svg","href":"/vi/guide/connections/rollbar"},{"title":"Sentry","icon":"bug","href":"/vi/guide/connections/sentry"},{"title":"Langfuse","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/langfuse.svg","href":"/vi/guide/connections/langfuse"},{"title":"PostHog","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/posthog.svg","href":"/vi/guide/connections/posthog"},{"title":"Splunk Platform","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/splunkplatform.svg","href":"/vi/guide/connections/splunkplatform"},{"title":"Braintrust","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/braintrust.svg","href":"/vi/guide/connections/braintrust"},{"title":"LangSmith","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/langsmith.svg","href":"/vi/guide/connections/langsmith"},{"title":"UptimeRobot","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/uptimerobot.svg","href":"/vi/guide/connections/uptimerobot"},{"title":"Microsoft Clarity","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/clarity.svg","href":"/vi/guide/connections/clarity"}]},{"group":"CI/CD \u0026 Code Quality","pages":[{"title":"GitHub","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/github.svg","href":"/vi/guide/connections/github"},{"title":"GitLab","icon":"gitlab","href":"/vi/guide/connections/gitlab"},{"title":"Bitbucket","icon":"bitbucket","href":"/vi/guide/connections/bitbucket"},{"title":"Azure DevOps","icon":"microsoft","href":"/vi/guide/connections/azure-devops"},{"title":"Jenkins","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/jenkins.svg","href":"/vi/guide/connections/jenkins"},{"title":"CircleCI","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/circleci.svg","href":"/vi/guide/connections/circleci"},{"title":"Buildkite","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/buildkite.svg","href":"/vi/guide/connections/buildkite"},{"title":"Docker Hub","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/dockerhub.svg","href":"/vi/guide/connections/dockerhub"},{"title":"ArgoCD","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/argocd.svg","href":"/vi/guide/connections/argocd"},{"title":"AWX","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/awx.svg","href":"/vi/guide/connections/awx"},{"title":"SonarQube","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/sonarqube.svg","href":"/vi/guide/connections/sonarqube"},{"title":"GitGuardian","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/gitguardian.svg","href":"/vi/guide/connections/gitguardian"},{"title":"Harness","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/harness.svg","href":"/vi/guide/connections/harness"},{"title":"AWS CodeCommit","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/aws-codecommit.svg","href":"/vi/guide/connections/aws-codecommit"},{"title":"Semgrep","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/semgrep.svg","href":"/vi/guide/connections/semgrep"}]},{"group":"Incident \u0026 Ticketing","pages":[{"title":"PagerDuty","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/pagerduty.svg","href":"/vi/guide/connections/pagerduty"},{"title":"Rootly","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/rootly.svg","href":"/vi/guide/connections/rootly"},{"title":"ServiceNow","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/servicenow.svg","href":"/vi/guide/connections/servicenow"},{"title":"Atlassian","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/atlassian.svg","href":"/vi/guide/connections/atlassian"},{"title":"Jira Service Management","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/jsm.svg","href":"/vi/guide/connections/jsm"},{"title":"Backlog","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/backlog.svg","href":"/vi/guide/connections/backlog"},{"title":"monday.com","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/monday.svg","href":"/vi/guide/connections/monday"},{"title":"Linear","icon":"list-check","href":"/vi/guide/connections/linear"},{"title":"Notion","icon":"book-open","href":"/vi/guide/connections/notion"},{"title":"ClickUp","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/clickup.svg","href":"/vi/guide/connections/clickup"},{"title":"Asana","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/asana.svg","href":"/vi/guide/connections/asana"},{"title":"HubSpot","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/hubspot.svg","href":"/vi/guide/connections/hubspot"},{"title":"FireHydrant","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/firehydrant.svg","href":"/vi/guide/connections/firehydrant"}]},{"group":"Security \u0026 Compliance","pages":[{"title":"FortiGate","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/fortigate.svg","href":"/vi/guide/connections/fortigate"},{"title":"Prowler","icon":"shield-check","href":"/vi/guide/connections/prowler"},{"title":"Wazuh","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/wazuh.svg","href":"/vi/guide/connections/wazuh"},{"title":"Drata","icon":"clipboard-check","href":"/vi/guide/connections/drata"}]},{"group":"Custom MCP","pages":[{"title":"MCP","icon":"https://mintlify.s3.us-west-1.amazonaws.com/cloudthinker/images/icons/mcp.svg","href":"/vi/guide/connections/mcp"}]}]},{"group":"Customize","pages":[{"title":"Dạy CloudThinker","description":"Chọn giữa workspace memory, knowledge base, skill, Learnings và nguồn runbook khi muốn agent làm việc theo cách của nhóm bạn","icon":"graduation-cap","href":"/vi/guide/teach-cloudthinker"},{"title":"Bắt đầu nhanh với agent tùy chỉnh","icon":"rocket","href":"/vi/guide/agents/quickstart"},{"title":"Skill tùy chỉnh","description":"Tạo skill cho workspace, chọn nơi agent được dùng, và xác nhận skill thay đổi kết quả trong Chat, Review, Incident hoặc Assessment.","icon":"wand-magic-sparkles","href":"/vi/guide/skills/custom-skills"},{"title":"Định dạng skill","icon":"file-code","href":"/vi/guide/skills/skill-format"}]},{"group":"Approvals","pages":[{"title":"Approvals","icon":"shield-check","href":"/vi/guide/approvals/overview"},{"title":"Approval Rules","icon":"list-check","href":"/vi/guide/approvals/rules"},{"title":"Approval Mode","icon":"bolt","href":"/vi/guide/approvals/approval-mode"},{"title":"Người phê duyệt và Activity","icon":"users","href":"/vi/guide/approvals/approvers"}]},{"group":"Cài đặt workspace","pages":[{"title":"Workspace Settings","icon":"gear","href":"/vi/guide/workspace-settings"},{"title":"Thành viên workspace","icon":"users","href":"/vi/guide/workspace-users"},{"title":"Thương hiệu workspace","icon":"palette","href":"/vi/guide/workspace-branding"},{"title":"Skill","icon":"sparkles","href":"/vi/guide/skills/overview"},{"title":"Bộ nhớ workspace","icon":"brain-circuit","href":"/vi/guide/memory"},{"title":"Dreaming","icon":"moon","href":"/vi/guide/memory-dreaming"},{"title":"Customize","icon":"wand-magic-sparkles","href":"/vi/guide/agents/customize"},{"title":"Knowledge Base","icon":"book","href":"/vi/guide/knowledge"},{"title":"Credentials","icon":"vault","href":"/vi/guide/credentials"},{"title":"Thông báo","icon":"bell","href":"/vi/guide/notifications"}]},{"group":"Admin Settings","pages":[{"title":"Admin Settings","icon":"building","href":"/vi/guide/admin-settings"},{"title":"Tổ chức","icon":"building-columns","href":"/vi/guide/organization"},{"title":"Workspaces","icon":"building","href":"/vi/guide/workspaces"},{"title":"Quản lý gói đăng ký","icon":"file-invoice-dollar","href":"/vi/guide/billing/subscription"},{"title":"Bảng giá","icon":"credit-card","href":"/vi/guide/billing/pricing"},{"title":"Giới hạn credit","icon":"sliders","href":"/vi/guide/billing/credit-limits"},{"title":"Mức sử dụng và credit","icon":"coins","href":"/vi/guide/billing/usage"},{"title":"Capabilities","icon":"toggle-on","href":"/vi/guide/capabilities"},{"title":"Sandbox tự host (Workers)","sidebarTitle":"Sandbox tự host (Workers)","icon":"server","href":"/vi/guide/workers"}]},{"group":"Triển khai","pages":[{"title":"Các phương án triển khai","sidebarTitle":"Triển khai","icon":"server","href":"/vi/guide/deployment/overview"}]},{"group":"Artifacts và chia sẻ","pages":[{"title":"Artifacts","icon":"chart-mixed","href":"/vi/guide/artifacts/overview"},{"title":"Chia sẻ","icon":"share-nodes","href":"/vi/guide/sharing"}]}]},{"tab":"Doanh nghiệp","pages":[{"title":"Doanh nghiệp","href":"/vi/guide/security/overview"}]},{"tab":"Nhà phát triển","pages":[{"title":"Nhà phát triển","href":"/vi/guide/api/overview"}]},{"tab":"Tài nguyên","pages":[{"title":"Tài nguyên","href":"/vi/learn/aio/introduction"}]},{"tab":"Nhật ký thay đổi","pages":[{"title":"Nhật ký thay đổi","href":"/changelog"}]},{"tab":"Bảng giá","href":"https://cloudthinker.io/pricing"}]},{"language":"ja","pages":[{"title":"ja","href":"/guide/agents/quickstart"}]},{"language":"ko","pages":[{"title":"ko","href":"/guide/agents/quickstart"}]}]},"title":"Bắt đầu nhanh với agent tùy chỉnh - CloudThinker","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":["07c022d89b","a74be98ba7","a9bb46feb3"],"chunks":["Frame-BbYRHtLl.js","DynamicMarkdown-DN96a4Ur.js","zoom-image-lightbox-D7yRe3On.js","lightbox-handle-r17bVUz3.js","Markdown-CCeGv-zI.js","clsx-BGBGWFTt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-Cv_O2fky.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-2C5OB2eV.js"]}