SDF Custom Skill XML Definitions and Validation

Define SDF custom skills with agentskill XML, SKILL.md content, project-specific folders, and deployment validation.

·3 min read·28 views·NetSuite 2026.2·View Oracle Docs

SDF custom skills pair an agentskill XML definition with a content folder containing SKILL.md. During SuiteCloud project deployment, validation checks the folder, required file, matching XML and front-matter metadata, and skill instructions. Folder locations differ between SuiteApp projects and account customization projects, so the skillfolder reference must follow the project type.

How Is an SDF Custom Skill Structured?

An SDF custom skill has two related components:

  • An agentskill XML definition.
  • A skill content folder containing SKILL.md.

The XML definition connects to the content through the <skillfolder> element. The referenced folder and its files must exist in the SuiteCloud project when the project is validated and deployed.

For related local setup, review SuiteCloud CLI installation for NetSuite 2026.2.

Which XML Items Define a Custom Skill?

XML ItemDescription
scriptid attributeIdentifies the agentskill SDF custom object.
<name>Specifies the skill name. It must exactly match the name value in the SKILL.md front matter, including capitalization.
<description>Specifies the skill description. It must exactly match the description value in the SKILL.md front matter, including capitalization.
<skillfolder>Specifies the File Cabinet folder containing SKILL.md.
<isinactive>Indicates whether the skill is inactive. Use F for an active skill.
<ispublic>Indicates whether the skill is public and available for other users to invoke. Only users with the Administrator role can set this value to T.

The exact-match requirement applies to both the <name> and <description> values. Capitalization must match the corresponding SKILL.md front-matter values.

Where Does Skill Content Belong?

The skill content location and <skillfolder> reference depend on the SuiteCloud project type.

Project TypeSkill Content Location<skillfolder> Reference
SuiteApp projectThe SuiteApp directory[/SuiteApps/<application_id>/<skill_folder>/]
Account customization project (ACP)The Skills directory at the File Cabinet root[/Skills/<skill_folder>/]

The skill content folder must include a file named SKILL.md. That file must contain a nonempty Markdown instruction body for the skill.

What Does Deployment Validate?

During SuiteCloud project deployment, the skill is validated for the following:

  • The <skillfolder> reference identifies an existing folder in the project.
  • The folder contains SKILL.md.
  • The XML <name> and <description> values exactly match the corresponding SKILL.md front-matter values.
  • The SKILL.md file contains the skill instructions.

A folder reference, the required Markdown file, and the matching front-matter values must therefore be present together in the project at validation and deployment time. For broader workflow guidance, see SuiteCloud Developer Assistant best practices.

What Does an Active Skill Definition Look Like?

This SuiteApp example defines an active custom skill:

xml
1<agentskill scriptid="customskill_simple_test_skill">
2 <name>simple-test-skill</name>
3 <description>Tiny deterministic test skill for confirming skill discovery and invocation.</description>
4 <skillfolder>[/SuiteApps/com.netsuite.sdfskills/simple-test-skill/]</skillfolder>
5 <isinactive>F</isinactive>
6 <ispublic>F</ispublic>
7</agentskill>

In this example, <isinactive>F</isinactive> marks the skill as active, while <ispublic>F</ispublic> does not mark it as public.

Who This Affects

  • SuiteCloud developers working with custom skills: The project must include both the agentskill XML definition and the referenced skill content folder with SKILL.md.
  • Administrators: Only users with the Administrator role can set <ispublic> to T.
  • SuiteApp teams: Skill content belongs in the SuiteApp directory and uses the SuiteApp-style folder reference.
  • ACP teams: Skill content belongs in the File Cabinet root Skills directory and uses the ACP-style folder reference.

Key Takeaways

  • Each SDF custom skill consists of an agentskill XML definition and a skill content folder containing SKILL.md.
  • XML name and description values must exactly match the corresponding SKILL.md front matter, including capitalization.
  • SuiteApp projects and ACPs use different skill content locations and <skillfolder> references.
  • Deployment validates the referenced folder, the required SKILL.md file, matching metadata, and skill instructions.
  • Only users with the Administrator role can set a skill’s <ispublic> value to T.

Frequently Asked Questions (4)

Which XML elements must exactly match the SKILL.md front-matter values during deployment?
The <name> and <description> elements in the agentskill XML must exactly match the corresponding name and description values in the SKILL.md front matter, including capitalization. The scriptid attribute identifies the agentskill object but does not replace the exact-match requirement for name and description.
How should the <skillfolder> reference be formatted for SuiteApp projects versus account customization projects (ACP)?
For SuiteApp projects, the <skillfolder> should use the SuiteApp-style path: [/SuiteApps/<application_id>/<skill_folder>/]. For ACPs, the <skillfolder> should reference the File Cabinet root Skills directory: [/Skills/<skill_folder>/]. The referenced folder must exist in the project at validation and deployment time.
What does SuiteCloud project deployment validate for an SDF custom skill?
Deployment validates that the <skillfolder> reference identifies an existing folder in the project, that the folder contains a SKILL.md file, that the XML <name> and <description> exactly match the SKILL.md front-matter values, and that the SKILL.md file contains the skill instructions. All of these elements must be present together in the project at validation and deployment time.
Who can set a skill’s <ispublic> value to T?
Only users with the Administrator role can set <ispublic> to T to make a skill public. Non-administrative users cannot set this value to T.

Weekly Update History (1)

SuiteCloud Development Frameworkadded

Added Skills as XML Definitions, which describes how to define and deploy a custom skill using SuiteCloud Development Framework (SDF).

View Oracle Docs
Source: Custom Skill Definition Oracle NetSuite Help Center. This article was generated from official Oracle documentation and enriched with additional context and best practices.

Was this article helpful?

More in SuiteCloud Development Framework

View all SuiteCloud Development Framework articles →

Also from NetSuite 2026.2

View all NetSuite 2026.2 changes →