Marketplace.json Format
marketplace.json is a standardized JSON file that describes available skills in a repository. It enables the FastSkill registry to discover and display skills without scanning repository contents.
File Location
For sources to be discoverable in the registry,marketplace.json must be accessible at:
- Git sources:
{repository_url}/marketplace.json(via raw content API) - Zip URL sources:
{base_url}/marketplace.json
Schema
Fields
Root Object
| Field | Type | Required | Description |
|---|---|---|---|
version | string | Yes | Marketplace format version (currently “1.0”) |
skills | array | Yes | Array of skill definitions |
Skill Object
| Field | Type | Required | Description |
|---|---|---|---|
id | string | Yes | Unique identifier for the skill |
name | string | Yes | Display name of the skill |
description | string | Yes | Description of what the skill does |
version | string | Yes | Version identifier (semver, date, branch, etc.) |
author | string | No | Author name or organization |
tags | array | No | Array of tag strings for categorization |
capabilities | array | No | Array of capability strings |
download_url | string | No | URL to download the skill (ZIP file) |
Generating marketplace.json
Use thefastskill repository create command to generate marketplace.json from a directory of skills:
- Scans for
SKILL.mdfiles - Extracts metadata from YAML frontmatter
- Uses
skill-info.tomlversion if present - Generates the marketplace.json file
Example
Version Priority
When generatingmarketplace.json, the version is determined in this order:
- skill-info.toml
[metadata] version(highest priority) - SKILL.md frontmatter
versionfield - “unknown” if neither is found
Validation
The registry validatesmarketplace.json files:
- All required fields must be present
id,name, anddescriptionmust not be empty- Skills with invalid data are skipped
Caching
Marketplace.json files are cached for 5 minutes to reduce network requests. To force a refresh:- Wait 5 minutes for cache expiry
- Restart the server
- Clear cache manually (future feature)
Best Practices
- Keep it updated: Regenerate
marketplace.jsonwhen skills change - Use semantic versioning: Use clear version identifiers
- Include all metadata: Provide tags, capabilities, and author information
- Test accessibility: Verify the URL is accessible from your environment
- Version control: Commit
marketplace.jsonto your repository