org.v-it.skill

solpbc.org

Documentation

Record containing an agent skill published over ATProto. Follows the Agent Skills open standard (agentskills.io).

main record

Record containing an agent skill published over ATProto. Follows the Agent Skills open standard (agentskills.io).

Record Key tid Timestamp-based ID

Properties

compatibility string Optional

Environment requirements (e.g. 'Requires Python 3.8+').

maxLength: 2000 bytesmaxGraphemes: 500 graphemes
createdAt string datetime Required

Client-declared creation timestamp.

description string Required

What this skill does and when to use it. Agents use this for automatic activation matching.

maxLength: 10000 bytesmaxGraphemes: 1024 graphemes
langs array of string language Optional

Human languages of the skill content.

maxLength: 3 items
license string Optional

SPDX license identifier (e.g. MIT, CC-BY-4.0).

maxLength: 256 bytesmaxGraphemes: 64 graphemes
name string Required

Skill name. Becomes the /slash-command. Lowercase letters, numbers, hyphens only. No leading hyphen, no consecutive hyphens.

maxLength: 256 bytesmaxGraphemes: 64 graphemes
resources array of ref lex:org.v-it.skill#resource Optional

Supporting files bundled with the skill (templates, scripts, reference docs). Stored as blobs.

maxLength: 16 items
tags array of string Optional

Discovery tags for categorization and search.

maxLength: 8 items
text string Required

The complete SKILL.md file content — frontmatter and body, verbatim. This is the source of truth. On learn, this is written directly as SKILL.md with no reconstruction. The other fields (name, description, version, license, compatibility) are copies extracted for discovery and indexing.

maxLength: 50000 bytesmaxGraphemes: 15000 graphemes
version string Optional

Semantic version string (e.g. 1.0.0). Author-declared.

maxLength: 64 bytesmaxGraphemes: 32 graphemes
View raw schema
{
  "key": "tid",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "name",
      "description",
      "text",
      "createdAt"
    ],
    "properties": {
      "name": {
        "type": "string",
        "maxLength": 256,
        "description": "Skill name. Becomes the /slash-command. Lowercase letters, numbers, hyphens only. No leading hyphen, no consecutive hyphens.",
        "maxGraphemes": 64
      },
      "tags": {
        "type": "array",
        "items": {
          "type": "string",
          "maxLength": 640,
          "maxGraphemes": 64
        },
        "maxLength": 8,
        "description": "Discovery tags for categorization and search."
      },
      "text": {
        "type": "string",
        "maxLength": 50000,
        "description": "The complete SKILL.md file content — frontmatter and body, verbatim. This is the source of truth. On learn, this is written directly as SKILL.md with no reconstruction. The other fields (name, description, version, license, compatibility) are copies extracted for discovery and indexing.",
        "maxGraphemes": 15000
      },
      "langs": {
        "type": "array",
        "items": {
          "type": "string",
          "format": "language"
        },
        "maxLength": 3,
        "description": "Human languages of the skill content."
      },
      "recap": {
        "ref": "lex:org.v-it.skill#recapRef",
        "type": "ref",
        "description": "Reference to the skill this was derived/forked from."
      },
      "facets": {
        "type": "array",
        "items": {
          "ref": "lex:app.bsky.richtext.facet",
          "type": "ref"
        },
        "description": "Rich text annotations in the description."
      },
      "labels": {
        "refs": [
          "lex:com.atproto.label.defs#selfLabels"
        ],
        "type": "union",
        "description": "Self-label values. Content warnings."
      },
      "license": {
        "type": "string",
        "maxLength": 256,
        "description": "SPDX license identifier (e.g. MIT, CC-BY-4.0).",
        "maxGraphemes": 64
      },
      "version": {
        "type": "string",
        "maxLength": 64,
        "description": "Semantic version string (e.g. 1.0.0). Author-declared.",
        "maxGraphemes": 32
      },
      "createdAt": {
        "type": "string",
        "format": "datetime",
        "description": "Client-declared creation timestamp."
      },
      "resources": {
        "type": "array",
        "items": {
          "ref": "lex:org.v-it.skill#resource",
          "type": "ref"
        },
        "maxLength": 16,
        "description": "Supporting files bundled with the skill (templates, scripts, reference docs). Stored as blobs."
      },
      "description": {
        "type": "string",
        "maxLength": 10000,
        "description": "What this skill does and when to use it. Agents use this for automatic activation matching.",
        "maxGraphemes": 1024
      },
      "compatibility": {
        "type": "string",
        "maxLength": 2000,
        "description": "Environment requirements (e.g. 'Requires Python 3.8+').",
        "maxGraphemes": 500
      }
    }
  },
  "description": "Record containing an agent skill published over ATProto. Follows the Agent Skills open standard (agentskills.io)."
}
recapRef object

Reference to a parent skill this was derived from.

Properties

cid string Required

CID of the parent skill record for content-addressable integrity.

uri string at-uri Required

AT URI of the parent skill record.

View raw schema
{
  "type": "object",
  "required": [
    "uri",
    "cid"
  ],
  "properties": {
    "cid": {
      "type": "string",
      "description": "CID of the parent skill record for content-addressable integrity."
    },
    "uri": {
      "type": "string",
      "format": "at-uri",
      "description": "AT URI of the parent skill record."
    }
  },
  "description": "Reference to a parent skill this was derived from."
}
resource object

A supporting file bundled with the skill. Binary content stored as blob.

Properties

blob blob Required

File content. Uploaded via com.atproto.repo.uploadBlob.

maxSize: 1.0 MB
description string Optional

What this resource contains. Helps agents with progressive disclosure.

maxLength: 1000 bytesmaxGraphemes: 256 graphemes
mimeType string Optional

MIME type hint (e.g. 'text/markdown', 'application/x-shellscript').

maxLength: 128 bytes
path string Required

Relative file path within the skill directory (e.g. 'scripts/validate.sh', 'reference.md').

maxLength: 512 bytesmaxGraphemes: 128 graphemes
View raw schema
{
  "type": "object",
  "required": [
    "path",
    "blob"
  ],
  "properties": {
    "blob": {
      "type": "blob",
      "accept": [
        "*/*"
      ],
      "maxSize": 1000000,
      "description": "File content. Uploaded via com.atproto.repo.uploadBlob."
    },
    "path": {
      "type": "string",
      "maxLength": 512,
      "description": "Relative file path within the skill directory (e.g. 'scripts/validate.sh', 'reference.md').",
      "maxGraphemes": 128
    },
    "mimeType": {
      "type": "string",
      "maxLength": 128,
      "description": "MIME type hint (e.g. 'text/markdown', 'application/x-shellscript')."
    },
    "description": {
      "type": "string",
      "maxLength": 1000,
      "description": "What this resource contains. Helps agents with progressive disclosure.",
      "maxGraphemes": 256
    }
  },
  "description": "A supporting file bundled with the skill. Binary content stored as blob."
}

Lexicon Garden

@