agent-skills-ts-sdk 2.3.2 → 2.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,257 @@
1
+ # AgentSkills Specification Reference
2
+
3
+ This document contains the complete AgentSkills specification for reference during development and maintenance.
4
+
5
+ **Official Specification**: https://agentskills.io/specification
6
+ **Last Updated**: 2026-01-14
7
+ **Reference Implementation**: https://github.com/agentskills/agentskills/tree/main/skills-ref
8
+
9
+ ---
10
+
11
+ ## SKILL.md Format
12
+
13
+ A skill is a directory containing at minimum a `SKILL.md` file with YAML frontmatter:
14
+
15
+ ```yaml
16
+ ---
17
+ name: skill-name
18
+ description: A description of what this skill does and when to use it.
19
+ ---
20
+ # Skill Instructions
21
+
22
+ Markdown content here...
23
+ ```
24
+
25
+ ## Field Specifications
26
+
27
+ ### Required Fields
28
+
29
+ | Field | Type | Constraints |
30
+ | ------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
31
+ | `name` | string | Max 64 characters. Lowercase letters, numbers, and hyphens only. Must not start/end with hyphen or contain consecutive hyphens. Must match parent directory name. |
32
+ | `description` | string | Max 1024 characters. Non-empty. Should describe what the skill does and when to use it. |
33
+
34
+ ### Optional Fields
35
+
36
+ | Field | Type | Constraints |
37
+ | --------------- | ------ | ---------------------------------------------------------------------------------------------------- |
38
+ | `license` | string | License name or reference to bundled license file. |
39
+ | `compatibility` | string | 1-500 characters when provided. Environment requirements (product, system packages, network access). |
40
+ | `metadata` | object | Arbitrary string key-value mapping for additional properties. |
41
+ | `allowed-tools` | string | Space-delimited list of pre-approved tools (Experimental). |
42
+
43
+ ## Validation Rules
44
+
45
+ ### Name Field
46
+
47
+ **Format**: Lowercase letters, digits, and hyphens only
48
+ **Max Length**: 64 characters
49
+ **Unicode**: NFKC normalized before validation
50
+ **i18n**: Supports Unicode letters (Chinese, Russian, etc.)
51
+
52
+ **Rules**:
53
+
54
+ - Must be lowercase
55
+ - Cannot start or end with hyphen
56
+ - Cannot contain consecutive hyphens (`--`)
57
+ - Must only contain letters, digits, and hyphens
58
+
59
+ **Valid Examples**:
60
+
61
+ ```yaml
62
+ name: pdf-processing
63
+ name: data-analysis
64
+ name: code-review
65
+ name: 技能 # Chinese
66
+ name: мой-навык # Russian with hyphens
67
+ ```
68
+
69
+ **Invalid Examples**:
70
+
71
+ ```yaml
72
+ name: PDF-Processing # uppercase not allowed
73
+ name: -pdf # cannot start with hyphen
74
+ name: pdf--processing # consecutive hyphens not allowed
75
+ name: my_skill # underscores not allowed
76
+ ```
77
+
78
+ ### Description Field
79
+
80
+ **Max Length**: 1024 characters
81
+ **Must**: Be non-empty string
82
+
83
+ **Good Example**:
84
+
85
+ ```yaml
86
+ description: Extracts text and tables from PDF files, fills PDF forms, and merges multiple PDFs. Use when working with PDF documents or when the user mentions PDFs, forms, or document extraction.
87
+ ```
88
+
89
+ **Poor Example**:
90
+
91
+ ```yaml
92
+ description: Helps with PDFs. # Too vague
93
+ ```
94
+
95
+ ### Compatibility Field
96
+
97
+ **Length**: 1-500 characters when provided
98
+ **Optional**
99
+
100
+ ```yaml
101
+ compatibility: Designed for Claude Code (or similar products)
102
+ compatibility: Requires git, docker, jq, and access to the internet
103
+ ```
104
+
105
+ ### Metadata Field
106
+
107
+ **Type**: Object with string key-value pairs
108
+ **Optional**
109
+
110
+ ```yaml
111
+ metadata:
112
+ author: example-org
113
+ version: "1.0"
114
+ category: data-processing
115
+ ```
116
+
117
+ ### Allowed-Tools Field (Experimental)
118
+
119
+ **Type**: Space-delimited string
120
+ **Optional**
121
+
122
+ ```yaml
123
+ allowed-tools: Bash(git:*) Bash(jq:*) Read
124
+ ```
125
+
126
+ ## Progressive Disclosure
127
+
128
+ Skills use a three-tier loading strategy:
129
+
130
+ 1. **Metadata** (~50-100 tokens): `name` and `description` fields loaded at startup
131
+ 2. **Instructions** (~500-5000 tokens): Full `SKILL.md` body loaded when activated
132
+ 3. **Resources** (as needed): Files in `scripts/`, `references/`, `assets/`, or other skill-local directories loaded on demand
133
+
134
+ ## Directory Structure
135
+
136
+ ```
137
+ skill-name/
138
+ ├── SKILL.md # Required
139
+ ├── scripts/ # Optional: executable code
140
+ │ ├── extract.py
141
+ │ └── process.sh
142
+ ├── references/ # Optional: additional docs
143
+ │ └── REFERENCE.md
144
+ └── assets/ # Optional: static resources
145
+ ├── template.json
146
+ └── schema.yaml
147
+ ```
148
+
149
+ ## Frontmatter Parsing Rules
150
+
151
+ 1. File must start with `---`
152
+ 2. Frontmatter must be closed with second `---`
153
+ 3. YAML must be valid mapping (object)
154
+ 4. Required fields (`name`, `description`) must be present
155
+ 5. Required fields must be non-empty strings
156
+ 6. Names and descriptions are trimmed
157
+ 7. Metadata values are converted to strings
158
+ 8. Optional fields must match their specified types
159
+
160
+ ## Body Content
161
+
162
+ - Markdown content after frontmatter
163
+ - No format restrictions
164
+ - Recommended: Keep under 500 lines
165
+ - Support for relative file references
166
+
167
+ ## Reference Implementation Behavior
168
+
169
+ The Python reference implementation (`skills-ref`) provides canonical behavior:
170
+
171
+ ### Parser (`parser.py`)
172
+
173
+ - Finds `SKILL.md` (case-insensitive, prefers uppercase)
174
+ - Parses YAML frontmatter with `strictyaml`
175
+ - Validates required fields presence
176
+ - Trims and normalizes field values
177
+ - Converts metadata to string key-value pairs
178
+
179
+ ### Validator (`validator.py`)
180
+
181
+ - NFKC Unicode normalization
182
+ - Name format validation (lowercase, hyphens, length)
183
+ - Description length validation
184
+ - Compatibility length validation
185
+ - Field presence validation
186
+ - Directory name matching (when applicable)
187
+
188
+ ### Models (`models.py`)
189
+
190
+ - `SkillProperties` dataclass with required/optional fields
191
+ - `to_dict()` method excludes None values
192
+ - `allowed-tools` stored with hyphen (not underscore)
193
+ - Empty metadata dict omitted from dict output
194
+
195
+ ## Testing Requirements
196
+
197
+ This implementation must pass equivalent tests to:
198
+
199
+ - `tests/test_parser.py` (29+ test cases)
200
+ - `tests/test_validator.py` (32+ test cases)
201
+
202
+ ### Test Categories
203
+
204
+ 1. **Frontmatter Parsing**
205
+ - Valid frontmatter
206
+ - Missing frontmatter
207
+ - Unclosed frontmatter
208
+ - Invalid YAML
209
+ - Non-dict frontmatter
210
+
211
+ 2. **Required Fields**
212
+ - Missing name
213
+ - Missing description
214
+ - Empty name
215
+ - Empty description
216
+
217
+ 3. **Name Validation**
218
+ - Uppercase rejection
219
+ - Length limits
220
+ - Leading/trailing hyphens
221
+ - Consecutive hyphens
222
+ - Invalid characters (underscores, etc.)
223
+ - i18n support (Chinese, Russian)
224
+ - Unicode normalization (NFKC)
225
+
226
+ 4. **Description Validation**
227
+ - Length limits (1024 chars)
228
+
229
+ 5. **Optional Fields**
230
+ - Compatibility length (500 chars)
231
+ - Metadata parsing
232
+ - Allowed-tools parsing
233
+ - License field
234
+
235
+ 6. **Field Restrictions**
236
+ - Unknown field rejection
237
+
238
+ ## Compliance Checklist
239
+
240
+ - [ ] Parse YAML frontmatter correctly
241
+ - [ ] Validate required fields (name, description)
242
+ - [ ] Validate name format (lowercase, hyphens, length)
243
+ - [ ] Validate description length (1024 chars)
244
+ - [ ] Validate compatibility length (500 chars)
245
+ - [ ] Support optional fields (license, metadata, allowed-tools)
246
+ - [ ] Perform NFKC Unicode normalization
247
+ - [ ] Support i18n characters in names
248
+ - [ ] Reject unknown frontmatter fields
249
+ - [ ] Extract body content (strip frontmatter)
250
+ - [ ] Trim and normalize field values
251
+ - [ ] Convert metadata to string key-value pairs
252
+ - [ ] Handle case-insensitive SKILL.md filename
253
+ - [ ] Provide clear error messages
254
+
255
+ ---
256
+
257
+ **Note**: This specification must be kept in sync with https://agentskills.io/specification. Check for updates periodically.
package/SUPPORT.md ADDED
@@ -0,0 +1,24 @@
1
+ # Support
2
+
3
+ ## Questions And Usage Help
4
+
5
+ Use GitHub Issues for reproducible bugs:
6
+
7
+ https://github.com/WebMCP-org/agent-skills-ts-sdk/issues
8
+
9
+ Include:
10
+
11
+ - Package version
12
+ - Node.js version
13
+ - Package manager and version
14
+ - Runtime or bundler environment
15
+ - Minimal reproduction or failing test when possible
16
+
17
+ ## Security Issues
18
+
19
+ Do not open public issues for suspected vulnerabilities. Follow `SECURITY.md`.
20
+
21
+ ## Privacy Issues
22
+
23
+ For privacy-sensitive reports, follow `SECURITY.md` and include the affected
24
+ version, runtime configuration, and the input shape that triggered the issue.
package/dist/index.d.ts CHANGED
@@ -78,9 +78,9 @@ interface SkillResource {
78
78
  */
79
79
  interface ResolvedSkill {
80
80
  /** Skill identifier from frontmatter. */
81
- name: SkillFrontmatter['name'];
81
+ name: SkillFrontmatter["name"];
82
82
  /** Skill description from frontmatter. */
83
- description: SkillFrontmatter['description'];
83
+ description: SkillFrontmatter["description"];
84
84
  /** Tier-2 instruction body from SKILL.md. */
85
85
  body: SkillBody;
86
86
  /** Tier-3 resources associated with this skill. */
@@ -201,7 +201,7 @@ interface SkillFrontmatter<TMetadata extends SkillMetadataMap = SkillMetadataMap
201
201
  /** Optional host/runtime compatibility notes. */
202
202
  compatibility?: string;
203
203
  /** Optional space-delimited allowed-tools declaration. */
204
- 'allowed-tools'?: SkillAllowedTools;
204
+ "allowed-tools"?: SkillAllowedTools;
205
205
  /** Optional string metadata map. */
206
206
  metadata?: TMetadata;
207
207
  }
@@ -258,17 +258,17 @@ interface SkillParseResult<TMetadata extends SkillMetadataMap = SkillMetadataMap
258
258
  */
259
259
  interface SkillProperties<TMetadata extends SkillMetadataMap = SkillMetadataMap> {
260
260
  /** Required skill identifier. */
261
- name: SkillFrontmatter<TMetadata>['name'];
261
+ name: SkillFrontmatter<TMetadata>["name"];
262
262
  /** Required skill description. */
263
- description: SkillFrontmatter<TMetadata>['description'];
263
+ description: SkillFrontmatter<TMetadata>["description"];
264
264
  /** Optional license declaration. */
265
- license?: SkillFrontmatter<TMetadata>['license'];
265
+ license?: SkillFrontmatter<TMetadata>["license"];
266
266
  /** Optional host/runtime compatibility notes. */
267
- compatibility?: SkillFrontmatter<TMetadata>['compatibility'];
267
+ compatibility?: SkillFrontmatter<TMetadata>["compatibility"];
268
268
  /** Optional space-delimited allowed-tools declaration. */
269
- allowedTools?: SkillFrontmatter<TMetadata>['allowed-tools'];
269
+ allowedTools?: SkillFrontmatter<TMetadata>["allowed-tools"];
270
270
  /** Optional string metadata map. */
271
- metadata?: SkillFrontmatter<TMetadata>['metadata'];
271
+ metadata?: SkillFrontmatter<TMetadata>["metadata"];
272
272
  }
273
273
  /**
274
274
  * Convert SkillProperties to dictionary, excluding null/undefined values.
@@ -348,17 +348,17 @@ interface SkillMetadata<TMetadata extends SkillMetadataMap = SkillMetadataMap> {
348
348
  /** Host-owned unique skill id. */
349
349
  id: SkillId;
350
350
  /** Skill identifier. */
351
- name: SkillProperties<TMetadata>['name'];
351
+ name: SkillProperties<TMetadata>["name"];
352
352
  /** Skill description. */
353
- description: SkillProperties<TMetadata>['description'];
353
+ description: SkillProperties<TMetadata>["description"];
354
354
  /** Optional license declaration. */
355
- license?: SkillProperties<TMetadata>['license'];
355
+ license?: SkillProperties<TMetadata>["license"];
356
356
  /** Optional host/runtime compatibility notes. */
357
- compatibility?: SkillProperties<TMetadata>['compatibility'];
357
+ compatibility?: SkillProperties<TMetadata>["compatibility"];
358
358
  /** Optional space-delimited allowed-tools declaration. */
359
- allowedTools?: SkillProperties<TMetadata>['allowedTools'];
359
+ allowedTools?: SkillProperties<TMetadata>["allowedTools"];
360
360
  /** Optional string metadata map. */
361
- metadata?: SkillProperties<TMetadata>['metadata'];
361
+ metadata?: SkillProperties<TMetadata>["metadata"];
362
362
  /** Estimated token size for metadata-only tier. */
363
363
  metadataTokens: SkillTokenCount;
364
364
  /** Estimated token size for full skill content. */
@@ -370,20 +370,21 @@ interface SkillMetadata<TMetadata extends SkillMetadataMap = SkillMetadataMap> {
370
370
  }
371
371
  //#endregion
372
372
  //#region src/disclosure.d.ts
373
+ declare const ERROR_CODE_INVALID_ARGUMENT = "INVALID_ARGUMENT";
373
374
  declare const ERROR_CODE_SKILL_NOT_FOUND = "SKILL_NOT_FOUND";
374
375
  declare const ERROR_CODE_RESOURCE_NOT_FOUND = "RESOURCE_NOT_FOUND";
375
376
  /**
376
377
  * Stable error codes for progressive disclosure read failures.
377
378
  */
378
- type SkillReadErrorCode = typeof ERROR_CODE_SKILL_NOT_FOUND | typeof ERROR_CODE_RESOURCE_NOT_FOUND;
379
+ type SkillReadErrorCode = typeof ERROR_CODE_INVALID_ARGUMENT | typeof ERROR_CODE_SKILL_NOT_FOUND | typeof ERROR_CODE_RESOURCE_NOT_FOUND;
379
380
  /**
380
381
  * Tool call arguments for skill progressive disclosure reads.
381
382
  */
382
383
  interface SkillReadArgs {
383
384
  /** Skill identifier from the current skill set. */
384
- name: ResolvedSkill['name'];
385
+ name: ResolvedSkill["name"];
385
386
  /** Optional resource identifier within the selected skill. */
386
- resource?: SkillResource['name'];
387
+ resource?: SkillResource["name"];
387
388
  }
388
389
  /**
389
390
  * Successful result from a skill read request.
@@ -392,7 +393,7 @@ interface SkillReadResult {
392
393
  /** Indicates that the read resolved successfully. */
393
394
  ok: true;
394
395
  /** Skill body or resource content returned by the read. */
395
- content: SkillBody | SkillResource['content'];
396
+ content: SkillBody;
396
397
  }
397
398
  /**
398
399
  * Machine-readable read failure for hosts and UIs.
@@ -422,9 +423,9 @@ interface ReadToolSchemaOptions {
422
423
  */
423
424
  interface ReadToolSchema {
424
425
  /** Tool name for the declaration payload. */
425
- name: NonNullable<ReadToolSchemaOptions['toolName']>;
426
+ name: NonNullable<ReadToolSchemaOptions["toolName"]>;
426
427
  /** Human-readable tool description. */
427
- description: NonNullable<ReadToolSchemaOptions['description']>;
428
+ description: NonNullable<ReadToolSchemaOptions["description"]>;
428
429
  /** JSON Schema object describing accepted arguments. */
429
430
  parametersJsonSchema: object;
430
431
  }
@@ -435,7 +436,7 @@ interface ReadToolSchema {
435
436
  * - `name` + `resource`: returns resource content (tier 3)
436
437
  *
437
438
  * @param skills - Fully resolved in-memory skills.
438
- * @param args - Read request arguments.
439
+ * @param args - Read request arguments from a tool call or trusted caller.
439
440
  * @returns Structured success or failure payload.
440
441
  */
441
442
  declare function handleSkillRead(skills: ReadonlyArray<ResolvedSkill>, args: SkillReadArgs): SkillReadResult | SkillReadError;
@@ -449,7 +450,7 @@ declare function handleSkillRead(skills: ReadonlyArray<ResolvedSkill>, args: Ski
449
450
  * @param options - Optional tool naming and description overrides.
450
451
  * @returns Tool declaration object with `parametersJsonSchema`.
451
452
  */
452
- declare function toReadToolSchema(skills: ReadonlyArray<Pick<ResolvedSkill, 'name'>>, options?: ReadToolSchemaOptions): ReadToolSchema;
453
+ declare function toReadToolSchema(skills: ReadonlyArray<Pick<ResolvedSkill, "name">>, options?: ReadToolSchemaOptions): ReadToolSchema;
453
454
  //#endregion
454
455
  //#region src/errors.d.ts
455
456
  /**
@@ -517,7 +518,7 @@ declare const INPUT_MODE_EMBEDDED = "embedded";
517
518
  * @see https://agentskills.io/specification
518
519
  * @see https://github.com/agentskills/agentskills/blob/main/skills-ref/src/skills_ref/parser.py
519
520
  */
520
- declare function findSkillMdFile<T extends Pick<SkillContentEntry, 'name'>>(files: Iterable<T>): T | null;
521
+ declare function findSkillMdFile<T extends Pick<SkillContentEntry, "name">>(files: Iterable<T>): T | null;
521
522
  /**
522
523
  * Options for `readSkillProperties`.
523
524
  */
@@ -587,14 +588,14 @@ type ParseFrontmatterInputMode = typeof INPUT_MODE_STRICT | typeof INPUT_MODE_EM
587
588
  */
588
589
  interface ResourceLink {
589
590
  /** Display identifier from markdown link text. */
590
- name: SkillResource['name'];
591
- /** Canonical resource path under scripts/, references/, or assets/. */
592
- path: SkillResource['path'];
591
+ name: SkillResource["name"];
592
+ /** Canonical resource path under an observed skill-local resource directory. */
593
+ path: SkillResource["path"];
593
594
  }
594
595
  /**
595
596
  * Extracts tier-3 resource links from skill body markdown.
596
597
  *
597
- * Only links to `scripts/*`, `references/*`, and `assets/*` are returned.
598
+ * Only links to observed skill-local resource directories are returned.
598
599
  * External URLs, anchors, and path traversal references are ignored.
599
600
  * Leading `./` is accepted and normalized away.
600
601
  *
@@ -723,7 +724,7 @@ declare const ALLOWED_FIELDS: Set<string>;
723
724
  */
724
725
  interface ValidateSkillPropertiesOptions {
725
726
  /** Expected skill name (for example, directory or slug match). */
726
- expectedName?: SkillProperties['name'];
727
+ expectedName?: SkillProperties["name"];
727
728
  }
728
729
  /**
729
730
  * Validate skill properties.
@@ -787,7 +788,7 @@ interface SkillValidationOptions {
787
788
  /** Optional location label included in error messages. */
788
789
  location?: string;
789
790
  /** Expected skill name (for example, directory or slug match). */
790
- expectedName?: ValidateSkillPropertiesOptions['expectedName'];
791
+ expectedName?: ValidateSkillPropertiesOptions["expectedName"];
791
792
  /** Whether the host path exists. */
792
793
  exists?: boolean;
793
794
  /** Whether the host path is a directory. */
@@ -822,7 +823,7 @@ declare function validateSkillEntries(entries: Iterable<SkillContentEntry> | nul
822
823
  * ```
823
824
  * @see https://agentskills.io/specification
824
825
  */
825
- type SkillPatchOperationType = 'replace' | 'insert' | 'delete';
826
+ type SkillPatchOperationType = "replace" | "insert" | "delete";
826
827
  /**
827
828
  * Replace operation that swaps matched text with new text.
828
829
  *
@@ -837,7 +838,7 @@ type SkillPatchOperationType = 'replace' | 'insert' | 'delete';
837
838
  * @see https://agentskills.io/specification
838
839
  */
839
840
  interface SkillPatchReplaceOperation {
840
- type: 'replace';
841
+ type: "replace";
841
842
  before: string;
842
843
  after: string;
843
844
  expectedMatches?: number;
@@ -857,10 +858,10 @@ interface SkillPatchReplaceOperation {
857
858
  * @see https://agentskills.io/specification
858
859
  */
859
860
  interface SkillPatchInsertOperation {
860
- type: 'insert';
861
+ type: "insert";
861
862
  anchor: string;
862
863
  text: string;
863
- position?: 'before' | 'after';
864
+ position?: "before" | "after";
864
865
  expectedMatches?: number;
865
866
  }
866
867
  /**
@@ -873,7 +874,7 @@ interface SkillPatchInsertOperation {
873
874
  * @see https://agentskills.io/specification
874
875
  */
875
876
  interface SkillPatchDeleteOperation {
876
- type: 'delete';
877
+ type: "delete";
877
878
  before: string;
878
879
  expectedMatches?: number;
879
880
  }
@@ -909,7 +910,7 @@ interface SkillPatch {
909
910
  * ```
910
911
  * @see https://agentskills.io/specification
911
912
  */
912
- type SkillPatchIssueCode = 'PATCH_NOT_OBJECT' | 'PATCH_INVALID_VERSION' | 'PATCH_MISSING_OPERATIONS' | 'OPERATION_INVALID' | 'OPERATION_TARGET_EMPTY' | 'OPERATION_INVALID_POSITION' | 'OPERATION_INVALID_EXPECTED_MATCHES' | 'OPERATION_TARGET_NOT_FOUND' | 'OPERATION_TARGET_AMBIGUOUS' | 'OPERATION_MATCH_COUNT_MISMATCH' | 'SKILL_INVALID';
913
+ type SkillPatchIssueCode = "PATCH_NOT_OBJECT" | "PATCH_INVALID_VERSION" | "PATCH_MISSING_OPERATIONS" | "OPERATION_INVALID" | "OPERATION_TARGET_EMPTY" | "OPERATION_INVALID_POSITION" | "OPERATION_INVALID_EXPECTED_MATCHES" | "OPERATION_TARGET_NOT_FOUND" | "OPERATION_TARGET_AMBIGUOUS" | "OPERATION_MATCH_COUNT_MISMATCH" | "SKILL_INVALID";
913
914
  /**
914
915
  * Structured issue detail for patch failures.
915
916
  *
@@ -995,7 +996,7 @@ interface SkillPatchCreateOptions {
995
996
  * ```
996
997
  * @see https://agentskills.io/specification
997
998
  */
998
- type SkillDiffSegmentType = 'equal' | 'insert' | 'delete';
999
+ type SkillDiffSegmentType = "equal" | "insert" | "delete";
999
1000
  /**
1000
1001
  * Consecutive lines sharing the same diff operation type.
1001
1002
  *
@@ -1093,7 +1094,7 @@ declare function createSkillPatch(base: SkillContent, updated: SkillContent, opt
1093
1094
  * @see https://agentskills.io/specification
1094
1095
  * @see https://github.com/agentskills/agentskills/blob/main/skills-ref/src/skills_ref/prompt.py
1095
1096
  */
1096
- interface SkillPromptEntry extends Pick<ResolvedSkill, 'name' | 'description' | 'location'> {}
1097
+ interface SkillPromptEntry extends Pick<ResolvedSkill, "name" | "description" | "location"> {}
1097
1098
  /**
1098
1099
  * SKILL.md source data for prompt generation.
1099
1100
  *
@@ -1104,14 +1105,14 @@ interface SkillPromptSource {
1104
1105
  /** Raw SKILL.md content to parse for prompt metadata. */
1105
1106
  content: SkillContent;
1106
1107
  /** Optional source location label for prompt output. */
1107
- location?: SkillPromptEntry['location'];
1108
+ location?: SkillPromptEntry["location"];
1108
1109
  }
1109
1110
  /**
1110
1111
  * Prompt entry for resource-aware progressive disclosure hosts.
1111
1112
  */
1112
1113
  interface DisclosurePromptEntry extends SkillPromptEntry {
1113
1114
  /** Optional tier-3 resource names exposed as prompt hints. */
1114
- resources?: Array<SkillResource['name']>;
1115
+ resources?: Array<SkillResource["name"]>;
1115
1116
  }
1116
1117
  /**
1117
1118
  * Options for disclosure protocol instruction text generation.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/models.ts","../src/disclosure.ts","../src/errors.ts","../src/parser.ts","../src/validator.ts","../src/patch.ts","../src/prompt.ts","../src/utils/token-estimator.ts","../src/utils/unicode.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/models.ts","../src/disclosure.ts","../src/errors.ts","../src/parser.ts","../src/validator.ts","../src/patch.ts","../src/prompt.ts","../src/utils/token-estimator.ts","../src/utils/unicode.ts"],"mappings":"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"}