|
|
@@ -196,17 +196,23 @@ export namespace Skill {
|
|
|
return list.filter((skill) => PermissionNext.evaluate("skill", skill.name, agent.permission).action !== "deny")
|
|
|
}
|
|
|
|
|
|
- export function fmt(list: Info[]) {
|
|
|
- return [
|
|
|
- "<available_skills>",
|
|
|
- ...list.flatMap((skill) => [
|
|
|
- ` <skill>`,
|
|
|
- ` <name>${skill.name}</name>`,
|
|
|
- ` <description>${skill.description}</description>`,
|
|
|
- ` <location>${pathToFileURL(skill.location).href}</location>`,
|
|
|
- ` </skill>`,
|
|
|
- ]),
|
|
|
- "</available_skills>",
|
|
|
- ].join("\n")
|
|
|
+ export function fmt(list: Info[], opts: { verbose: boolean }) {
|
|
|
+ if (list.length === 0) {
|
|
|
+ return "No skills are currently available."
|
|
|
+ }
|
|
|
+ if (opts.verbose) {
|
|
|
+ return [
|
|
|
+ "<available_skills>",
|
|
|
+ ...list.flatMap((skill) => [
|
|
|
+ ` <skill>`,
|
|
|
+ ` <name>${skill.name}</name>`,
|
|
|
+ ` <description>${skill.description}</description>`,
|
|
|
+ ` <location>${pathToFileURL(skill.location).href}</location>`,
|
|
|
+ ` </skill>`,
|
|
|
+ ]),
|
|
|
+ "</available_skills>",
|
|
|
+ ].join("\n")
|
|
|
+ }
|
|
|
+ return ["## Available Skills", ...list.flatMap((skill) => `- **${skill.name}**: ${skill.description}`)].join("\n")
|
|
|
}
|
|
|
}
|