Something went wrong. Try again.
This repository has no description
Something went wrong. Try again.
TypeScript
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455import { z } from "zod";import { skillPermissionChoices, skillPermissionRevision, type SkillPermissionSnapshot,} from "./skill-permissions";import { skillSelection, type SkillListing, type SkillPackageFile,} from "./skills";
export const skillIdentity = skillSelection.omit({ enabled: true });export type SkillIdentity = z.infer<typeof skillIdentity>;export const skillManagementRequest = z.discriminatedUnion("action", [ z.strictObject({ action: z.literal("inspect"), skill: skillIdentity }), z.strictObject({ action: z.literal("permissions"), skill: skillIdentity }), z.strictObject({ action: z.literal("set-permissions"), skill: skillIdentity, revision: skillPermissionRevision, choices: skillPermissionChoices, }), z.strictObject({ action: z.literal("file"), skill: skillIdentity, path: z.string().min(1).max(240), }), z.strictObject({ action: z.literal("remove"), skill: skillIdentity }),]);export type SkillManagementRequest = z.infer<typeof skillManagementRequest>;export interface SkillInspection { skill: SkillListing; instructions: string; license?: string; compatibility?: string; metadata?: Record<string, string>; allowedTools: string | null; files: { path: string; encoding: "text" | "base64"; bytes: number; kind: "instructions" | "reference" | "script" | "asset" | "file"; mimeType?: string; }[];}export type SkillManagementResult = | { action: "inspect"; inspection: SkillInspection } | { action: "file"; file: SkillPackageFile } | { action: "remove" } | { action: "permissions" | "set-permissions"; permissions: SkillPermissionSnapshot; };