Request
- Base URL: https://us.posthog.com
- URL: https://us.posthog.com/api/projects/{project_id}/llm_skills/name/{skill_name}/
- Auth: HTTP bearer
Path parameters
Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.
Request body
Full skill body (SKILL.md instruction content) to publish as a new version. Mutually exclusive with edits.
Updated description for the new version.
License name or reference.
Environment requirements.
Tools the skill asks to use. Tool names cannot contain whitespace. A harness that reads the skill from a file (zip export, git marketplace, a content=full bundle) treats the list as pre-approved. A harness that loads the skill over MCP, including the default content=stub bundle, ignores the list until the user approves that grant.
Arbitrary key-value metadata.
Replace the skill's owners with these user UUIDs (each a member of this project). Omit to leave owners unchanged; pass an empty list to clear them. Owners are keyed on the logical skill, so setting them is independent of the version being published — a body edit alone never changes ownership.
Latest version you are editing from. Used for optimistic concurrency checks. Required when publishing content changes; optional for an owner-only update (when omitted, owners are replaced without a concurrency check).
Optional note describing what changed in this version. Shown in the version history.
Response
Unique skill name. Lowercase letters, numbers, and hyphens only. Max 64 characters.
What this skill does and when to use it.
Total length of the full body in characters, independent of any body_offset/body_length paging. Compare against the length of the returned body to detect a truncated response.
When body_length paging stops before the end of the body, the character offset to request next (pass as body_offset). Null when the returned body reaches the end.
The SKILL.md instruction content (markdown).
License name or reference to a bundled license file.
Environment requirements (intended product, system packages, network access, etc.).
Tools the skill asks to use. Tool names cannot contain whitespace. A harness that reads the skill from a file (zip export, git marketplace, a content=full bundle) treats the list as pre-approved. A harness that loads the skill over MCP, including the default content=stub bundle, ignores the list until the user approves that grant.
Arbitrary key-value metadata.
Server-owned classification — set by the producing system (the Signals harness stamps "scout"), not writable via the API. Empty for an ordinary skill. Groups skills into their own surface (e.g. the Scouts tab) independently of the skill name.
Optional note describing what changed in this version. Set when the version is published.
Changes
No recorded changes to this operation across all 1 revision of this API.