# Skills ## List `client.promptly.skills.list(SkillListParamsquery, RequestOptionsoptions?): SkillListResponse` **get** `/api/promptly/skills` Retrieve all skills for the organization ### Parameters - `query: SkillListParams` - `organizationId: string` ### Returns - `SkillListResponse = Array` - `id: string` - `content: string` Markdown instructions that guide task execution - `name: string` - `category?: string` - `createdAt?: string` - `description?: string` - `frontmatter?: Frontmatter` Skill metadata - `author?: string` - `requiredSources?: Array` Source slugs this skill depends on - `tags?: Array` - `iconUrl?: string` - `isPublic?: boolean` Whether the skill is shared publicly - `isUserInvocable?: boolean` Whether users can manually attach this skill - `organizationId?: string` - `slug?: string` URL-friendly identifier - `updatedAt?: string` - `version?: number` ### Example ```typescript import _0ct from '0ct'; const client = new _0ct({ apiKey: process.env['0CT_API_KEY'], // This is the default and can be omitted }); const skills = await client.promptly.skills.list({ organizationId: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', }); console.log(skills); ``` ## Create `client.promptly.skills.create(SkillCreateParamsbody, RequestOptionsoptions?): Skill` **post** `/api/promptly/skills` Create a new reusable instruction set ### Parameters - `body: SkillCreateParams` - `content: string` - `name: string` - `organizationId: string` - `category?: string` - `description?: string` - `frontmatter?: unknown` - `iconUrl?: string` - `isPublic?: boolean` - `slug?: string` ### Returns - `Skill` - `id: string` - `content: string` Markdown instructions that guide task execution - `name: string` - `category?: string` - `createdAt?: string` - `description?: string` - `frontmatter?: Frontmatter` Skill metadata - `author?: string` - `requiredSources?: Array` Source slugs this skill depends on - `tags?: Array` - `iconUrl?: string` - `isPublic?: boolean` Whether the skill is shared publicly - `isUserInvocable?: boolean` Whether users can manually attach this skill - `organizationId?: string` - `slug?: string` URL-friendly identifier - `updatedAt?: string` - `version?: number` ### Example ```typescript import _0ct from '0ct'; const client = new _0ct({ apiKey: process.env['0CT_API_KEY'], // This is the default and can be omitted }); const skill = await client.promptly.skills.create({ content: 'content', name: 'name', organizationId: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', }); console.log(skill.id); ``` ## Retrieve `client.promptly.skills.retrieve(stringskillID, RequestOptionsoptions?): Skill` **get** `/api/promptly/skills/{skillId}` Get a skill ### Parameters - `skillID: string` ### Returns - `Skill` - `id: string` - `content: string` Markdown instructions that guide task execution - `name: string` - `category?: string` - `createdAt?: string` - `description?: string` - `frontmatter?: Frontmatter` Skill metadata - `author?: string` - `requiredSources?: Array` Source slugs this skill depends on - `tags?: Array` - `iconUrl?: string` - `isPublic?: boolean` Whether the skill is shared publicly - `isUserInvocable?: boolean` Whether users can manually attach this skill - `organizationId?: string` - `slug?: string` URL-friendly identifier - `updatedAt?: string` - `version?: number` ### Example ```typescript import _0ct from '0ct'; const client = new _0ct({ apiKey: process.env['0CT_API_KEY'], // This is the default and can be omitted }); const skill = await client.promptly.skills.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e'); console.log(skill.id); ``` ## Update `client.promptly.skills.update(stringskillID, SkillUpdateParamsbody, RequestOptionsoptions?): Skill` **patch** `/api/promptly/skills/{skillId}` Update a skill ### Parameters - `skillID: string` - `body: SkillUpdateParams` - `category?: string` - `content?: string` - `description?: string` - `frontmatter?: unknown` - `isPublic?: boolean` - `name?: string` ### Returns - `Skill` - `id: string` - `content: string` Markdown instructions that guide task execution - `name: string` - `category?: string` - `createdAt?: string` - `description?: string` - `frontmatter?: Frontmatter` Skill metadata - `author?: string` - `requiredSources?: Array` Source slugs this skill depends on - `tags?: Array` - `iconUrl?: string` - `isPublic?: boolean` Whether the skill is shared publicly - `isUserInvocable?: boolean` Whether users can manually attach this skill - `organizationId?: string` - `slug?: string` URL-friendly identifier - `updatedAt?: string` - `version?: number` ### Example ```typescript import _0ct from '0ct'; const client = new _0ct({ apiKey: process.env['0CT_API_KEY'], // This is the default and can be omitted }); const skill = await client.promptly.skills.update('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e'); console.log(skill.id); ``` ## Delete `client.promptly.skills.delete(stringskillID, RequestOptionsoptions?): void` **delete** `/api/promptly/skills/{skillId}` Delete a skill ### Parameters - `skillID: string` ### Example ```typescript import _0ct from '0ct'; const client = new _0ct({ apiKey: process.env['0CT_API_KEY'], // This is the default and can be omitted }); await client.promptly.skills.delete('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e'); ``` ## Domain Types ### Skill - `Skill` - `id: string` - `content: string` Markdown instructions that guide task execution - `name: string` - `category?: string` - `createdAt?: string` - `description?: string` - `frontmatter?: Frontmatter` Skill metadata - `author?: string` - `requiredSources?: Array` Source slugs this skill depends on - `tags?: Array` - `iconUrl?: string` - `isPublic?: boolean` Whether the skill is shared publicly - `isUserInvocable?: boolean` Whether users can manually attach this skill - `organizationId?: string` - `slug?: string` URL-friendly identifier - `updatedAt?: string` - `version?: number`