***

title: removeSkill
slug: /reference/typescript/agents/agent-base/remove-skill
description: Remove a skill from the agent by instance ID.
max-toc-depth: 3
---------------------

For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

[ref-agentbase]: /docs/server-sdks/reference/typescript/agents/agent-base

Remove a previously added skill by its instance ID.

<Note>
  This is an `async` method that returns `Promise<boolean>`.
</Note>

## **Parameters**

<ParamField path="instanceId" type="string" required={true} toc={true}>
  The unique instance ID of the skill to remove.
</ParamField>

## **Returns**

`Promise<boolean>` -- `true` if the skill was found and removed, `false` otherwise.

## **Example**

```typescript {10}
import { AgentBase, MathSkill } from '@signalwire/sdk';

const agent = new AgentBase({ name: 'assistant', route: '/assistant' });
const mathSkill = new MathSkill();
await agent.addSkill(mathSkill);

// Later, remove it by instance ID
const skills = agent.listSkills();
if (skills.length > 0) {
  await agent.removeSkill(skills[0].instanceId);
}
```