(params: { skillId: string; workspaceId: string })
| 63 | * not exist or belongs to a different workspace. |
| 64 | */ |
| 65 | export async function getSkillById(params: { skillId: string; workspaceId: string }) { |
| 66 | const builtin = getBuiltinSkillById(params.skillId) |
| 67 | if (builtin) return builtinSkillRow(params.workspaceId, builtin) |
| 68 | |
| 69 | const rows = await db |
| 70 | .select() |
| 71 | .from(skill) |
| 72 | .where(and(eq(skill.id, params.skillId), eq(skill.workspaceId, params.workspaceId))) |
| 73 | .limit(1) |
| 74 | return rows[0] ?? null |
| 75 | } |
| 76 | |
| 77 | /** |
| 78 | * Delete a skill by ID within a workspace. |
no test coverage detected