diff --git a/packages/app/src/composer/model.ts b/packages/app/src/composer/model.ts index 7f5f0c485f11..b215f164c3d3 100644 --- a/packages/app/src/composer/model.ts +++ b/packages/app/src/composer/model.ts @@ -242,7 +242,7 @@ export function createComposerModel(adapter: ComposerAdapter, options?: { queue? })), ]) const slashSkills = createMemo(() => - skills().filter((skill) => skill.slash === true && !slashCommands().some((item) => item.trigger === skill.id)), + skills().filter((skill) => skill.slash !== false && !slashCommands().some((item) => item.trigger === skill.id)), ) const commands = createMemo(() => [ ...slashCommands().map((item) => ({ diff --git a/packages/app/src/composer/submit.test.ts b/packages/app/src/composer/submit.test.ts index 598acc83150f..726938d7e3c5 100644 --- a/packages/app/src/composer/submit.test.ts +++ b/packages/app/src/composer/submit.test.ts @@ -310,7 +310,7 @@ describe("Composer submission", () => { { text: "/show-me\nexplain caching", slash: true, expected: ["show-me"] }, { text: "/show-me\texplain caching", slash: true, expected: ["show-me"] }, { text: "/show-me", slash: false, expected: [] }, - { text: "/show-me", slash: undefined, expected: [] }, + { text: "/show-me", expected: ["show-me"] }, { text: "/show-me-extra", slash: true, expected: [] }, { text: "Explain /show-me", slash: true, expected: [] }, ])("resolves raw slash skill input $text with slash=$slash", async ({ text, slash, expected }) => { diff --git a/packages/app/src/composer/submit.ts b/packages/app/src/composer/submit.ts index b1c7e4735194..508224d9e94b 100644 --- a/packages/app/src/composer/submit.ts +++ b/packages/app/src/composer/submit.ts @@ -298,7 +298,7 @@ export function withSlashSkill(prompt: Prompt, skills: ReturnType item.slash === true && item.id === name) + const skill = skills?.find((item) => item.slash !== false && item.id === name) if (!skill || prompt.some((part) => part.type === "skill" && part.id === skill.id)) return prompt const content = `/${skill.id}` return [