স্কিপ করে মূল কন্টেন্ট এ যান

Skill ম্যানেজমেন্ট API

@grant CAT.agent.skills

Skill ম্যানেজমেন্ট API একটি স্ক্রিপ্টকে Skill এক্সটেনশন প্যাকেজ জিজ্ঞাসা, ইনস্টল, অপসারণ এবং কল করতে দেয়।

Skill উন্নয়ন এবং প্যাকেজিংয়ের জন্য, Skill উন্নয়ন গাইড দেখুন। অফিসিয়াল Skill উদাহরণ: scriptscat/skills

list — ইনস্টল করা Skill তালিকা করুন

const skills = await CAT.agent.skills.list();

SkillSummary[] ফিরিয়ে দেয়:

ফিল্ডধরনবর্ণনা
namestringSkill নাম
descriptionstringSkill বর্ণনা
toolNamesstring[]এতে থাকা SkillScript টুলের নাম
referenceNamesstring[]এতে থাকা রেফারেন্স-উপাদান ফাইলের নাম
hasConfigbooleanএটি কনফিগারেশন ফিল্ড ঘোষণা করে কিনা
enabledbooleanএটি সক্রিয় কিনা (ডিফল্ট true)
installtimenumberইনস্টল টাইমস্ট্যাম্প
updatetimenumberশেষ-আপডেট টাইমস্ট্যাম্প

নোট: version এবং installUrl (ম্যানেজমেন্ট পেজের আপডেট-পরীক্ষা ফিচার দ্বারা ব্যবহৃত) এই স্ক্রিপ্ট API-এর মাধ্যমে ফিরিয়ে দেওয়া হয় না — এগুলি শুধুমাত্র আপডেট-পরীক্ষা লজিক এবং ম্যানেজমেন্ট পেজ UI-তে অভ্যন্তরীণভাবে ব্যবহৃত হয়।

get — Skill বিবরণ পান

const skill = await CAT.agent.skills.get(name);

সম্পূর্ণ SkillRecord ফিরিয়ে দেয়, বা এটি না থাকলে null

SkillRecord আকৃতি:

SkillSummary-এর সমস্ত ফিল্ড উত্তরাধিকার করে, প্লাস:

ফিল্ডধরনবর্ণনা
promptstringSKILL.cat.md-এর Markdown বডি (AI-কে দেওয়া prompt)
configRecord<string, SkillConfigField>কনফিগারেশন ফিল্ড সংজ্ঞা (স্কিমা)

SkillConfigField আকৃতি:

ফিল্ডধরনবর্ণনা
titlestringপ্রদর্শন শিরোনাম
type"text" | "number" | "select" | "switch"ফিল্ডের ধরন
secretbooleanএটি সংবেদনশীল কিনা (UI-তে মাস্ক করা হয়)
requiredbooleanএটি প্রয়োজনীয় কিনা
defaultunknownডিফল্ট মান
valuesstring[]বিকল্প তালিকা (শুধুমাত্র select ধরন)

install — একটি Skill ইনস্টল করুন

const record = await CAT.agent.skills.install(skillMd, scripts?, references?);

প্যারামিটার:

প্যারামিটারধরনবর্ণনা
skillMdstringSKILL.cat.md ফাইলের বিষয়বস্তু (প্রয়োজনীয়)
scriptsArray<{ name, code }>SkillScript ফাইলের তালিকা
referencesArray<{ name, content }>রেফারেন্স-উপাদান ফাইলের তালিকা

একই নামের একটি Skill ইতিমধ্যে থাকলে, এটি আপডেট করে।

const record = await CAT.agent.skills.install(
`---
name: my-search
description: Custom search tool
---

Use the search tool when the user needs to search.`,
[{ name: "search.js", code: skillScriptCode }],
[{ name: "api-docs.md", content: "# API Docs\n..." }]
);

remove — একটি Skill আনইনস্টল করুন

const success = await CAT.agent.skills.remove(name);

সফলভাবে অপসারিত হলে true ফিরিয়ে দেয়, Skill না থাকলে false

call — সরাসরি একটি SkillScript কল করুন

const result = await CAT.agent.skills.call(skillName, scriptName, params?);

নির্দিষ্ট Skill-এ একটি SkillScript সরাসরি নির্বাহ করে, কোনো AI কথোপকথনের মধ্য দিয়ে না গিয়ে।

প্যারামিটার:

প্যারামিটারধরনবর্ণনা
skillNamestringSkill নাম (প্রয়োজনীয়)
scriptNamestringSkillScript নাম (প্রয়োজনীয়)
paramsRecord<string, unknown>পাস করার প্যারামিটার (@param ঘোষণার সাথে মিলে)
// একটি Skill-এর ভিতরে সার্চ স্ক্রিপ্ট সরাসরি কল করুন
const results = await CAT.agent.skills.call(
"my-search",
"search",
{ query: "ScriptCat", limit: 5 }
);

SkillScript নির্বাহের একটি টাইমআউট আছে (ডিফল্ট ৩০০ সেকেন্ড, @timeout-এর মাধ্যমে কাস্টমাইজযোগ্য)।