PostHog · Capability
PostHog API — llm_skills
PostHog API — llm_skills. 11 operations. Lead operation: llm_skills. Self-contained Naftiko capability covering one Posthog business surface.
What You Can Do
GET
Llmskillslist
— llmskillslist
/v1/api/environments/{project-id}/llm-skills
POST
Llmskillscreate
— llmskillscreate
/v1/api/environments/{project-id}/llm-skills
GET
Llmskillsnameretrieve
— llmskillsnameretrieve
/v1/api/environments/{project-id}/llm-skills/name/{skill-name}
PATCH
Llmskillsnamepartialupdate
— llmskillsnamepartialupdate
/v1/api/environments/{project-id}/llm-skills/name/{skill-name}
POST
Llmskillsnamearchivecreate
— llmskillsnamearchivecreate
/v1/api/environments/{project-id}/llm-skills/name/{skill-name}/archive
POST
Llmskillsnameduplicatecreate
— llmskillsnameduplicatecreate
/v1/api/environments/{project-id}/llm-skills/name/{skill-name}/duplicate
POST
Llmskillsnamefilesrenamecreate
— llmskillsnamefilesrenamecreate
/v1/api/environments/{project-id}/llm-skills/name/{skill-name}/files-rename
POST
Llmskillsnamefilescreate
— llmskillsnamefilescreate
/v1/api/environments/{project-id}/llm-skills/name/{skill-name}/files
GET
Llmskillsnamefilesretrieve
— llmskillsnamefilesretrieve
/v1/api/environments/{project-id}/llm-skills/name/{skill-name}/files/{file-path}
DELETE
Llmskillsnamefilesdestroy
— llmskillsnamefilesdestroy
/v1/api/environments/{project-id}/llm-skills/name/{skill-name}/files/{file-path}
GET
Llmskillsresolvenameretrieve
— llmskillsresolvenameretrieve
/v1/api/environments/{project-id}/llm-skills/resolve/name/{skill-name}
MCP Tools
llmskillslist
llmskillslist
read-only
idempotent
llmskillscreate
llmskillscreate
llmskillsnameretrieve
llmskillsnameretrieve
read-only
idempotent
llmskillsnamepartialupdate
llmskillsnamepartialupdate
idempotent
llmskillsnamearchivecreate
llmskillsnamearchivecreate
llmskillsnameduplicatecreate
llmskillsnameduplicatecreate
llmskillsnamefilesrenamecreate
llmskillsnamefilesrenamecreate
llmskillsnamefilescreate
llmskillsnamefilescreate
llmskillsnamefilesretrieve
llmskillsnamefilesretrieve
read-only
idempotent
llmskillsnamefilesdestroy
llmskillsnamefilesdestroy
idempotent
llmskillsresolvenameretrieve
llmskillsresolvenameretrieve
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: PostHog API — llm_skills
description: 'PostHog API — llm_skills. 11 operations. Lead operation: llm_skills. Self-contained Naftiko capability covering
one Posthog business surface.'
tags:
- Posthog
- llm_skills
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
POSTHOG_API_KEY: POSTHOG_API_KEY
capability:
consumes:
- type: http
namespace: posthog-llm-skills
baseUri: ''
description: PostHog API — llm_skills business capability. Self-contained, no shared references.
resources:
- name: api-environments-project_id-llm_skills
path: /api/environments/{project_id}/llm_skills/
operations:
- name: llmskillslist
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: created_by_id
in: query
type: integer
description: Filter skills by the ID of the user who created them.
- name: limit
in: query
type: integer
description: Number of results to return per page.
- name: offset
in: query
type: integer
description: The initial index from which to return the results.
- name: search
in: query
type: string
description: Optional substring filter applied to skill names and descriptions.
- name: llmskillscreate
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-environments-project_id-llm_skills-name-skill_name
path: /api/environments/{project_id}/llm_skills/name/{skill_name}/
operations:
- name: llmskillsnameretrieve
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: skill_name
in: path
type: string
required: true
- name: version
in: query
type: integer
description: Specific skill version to fetch. If omitted, the latest version is returned.
- name: llmskillsnamepartialupdate
method: PATCH
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: skill_name
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: api-environments-project_id-llm_skills-name-skill_name-archive
path: /api/environments/{project_id}/llm_skills/name/{skill_name}/archive/
operations:
- name: llmskillsnamearchivecreate
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: skill_name
in: path
type: string
required: true
- name: api-environments-project_id-llm_skills-name-skill_name-duplicate
path: /api/environments/{project_id}/llm_skills/name/{skill_name}/duplicate/
operations:
- name: llmskillsnameduplicatecreate
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: skill_name
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-environments-project_id-llm_skills-name-skill_name-files-rename
path: /api/environments/{project_id}/llm_skills/name/{skill_name}/files-rename/
operations:
- name: llmskillsnamefilesrenamecreate
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: skill_name
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-environments-project_id-llm_skills-name-skill_name-files
path: /api/environments/{project_id}/llm_skills/name/{skill_name}/files/
operations:
- name: llmskillsnamefilescreate
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: skill_name
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-environments-project_id-llm_skills-name-skill_name-files-file_path
path: /api/environments/{project_id}/llm_skills/name/{skill_name}/files/{file_path}/
operations:
- name: llmskillsnamefilesretrieve
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: file_path
in: path
type: string
required: true
- name: skill_name
in: path
type: string
required: true
- name: version
in: query
type: integer
description: Specific skill version to fetch. If omitted, the latest version is returned.
- name: llmskillsnamefilesdestroy
method: DELETE
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: base_version
in: query
type: integer
description: Latest version you are editing from. If provided, the request fails with 409 when another write has
landed in the meantime.
- name: file_path
in: path
type: string
required: true
- name: skill_name
in: path
type: string
required: true
- name: api-environments-project_id-llm_skills-resolve-name-skill_name
path: /api/environments/{project_id}/llm_skills/resolve/name/{skill_name}/
operations:
- name: llmskillsresolvenameretrieve
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: before_version
in: query
type: integer
description: Return versions older than this version number. Mutually exclusive with offset.
- name: limit
in: query
type: integer
description: Maximum number of versions to return per page (1-100).
- name: offset
in: query
type: integer
description: Zero-based offset into version history for pagination. Mutually exclusive with before_version.
- name: skill_name
in: path
type: string
required: true
- name: version
in: query
type: integer
description: Specific skill version to fetch. If omitted, the latest version is returned.
- name: version_id
in: query
type: string
description: Exact skill version UUID to resolve.
authentication:
type: bearer
token: '{{env.POSTHOG_API_KEY}}'
exposes:
- type: rest
namespace: posthog-llm-skills-rest
port: 8080
description: REST adapter for PostHog API — llm_skills. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/api/environments/{project-id}/llm-skills
name: api-environments-project-id-llm-skills
description: REST surface for api-environments-project_id-llm_skills.
operations:
- method: GET
name: llmskillslist
description: llmskillslist
call: posthog-llm-skills.llmskillslist
with:
created_by_id: rest.created_by_id
limit: rest.limit
offset: rest.offset
search: rest.search
outputParameters:
- type: object
mapping: $.
- method: POST
name: llmskillscreate
description: llmskillscreate
call: posthog-llm-skills.llmskillscreate
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-skills/name/{skill-name}
name: api-environments-project-id-llm-skills-name-skill-name
description: REST surface for api-environments-project_id-llm_skills-name-skill_name.
operations:
- method: GET
name: llmskillsnameretrieve
description: llmskillsnameretrieve
call: posthog-llm-skills.llmskillsnameretrieve
with:
skill_name: rest.skill_name
version: rest.version
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: llmskillsnamepartialupdate
description: llmskillsnamepartialupdate
call: posthog-llm-skills.llmskillsnamepartialupdate
with:
skill_name: rest.skill_name
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-skills/name/{skill-name}/archive
name: api-environments-project-id-llm-skills-name-skill-name-archive
description: REST surface for api-environments-project_id-llm_skills-name-skill_name-archive.
operations:
- method: POST
name: llmskillsnamearchivecreate
description: llmskillsnamearchivecreate
call: posthog-llm-skills.llmskillsnamearchivecreate
with:
skill_name: rest.skill_name
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-skills/name/{skill-name}/duplicate
name: api-environments-project-id-llm-skills-name-skill-name-duplicate
description: REST surface for api-environments-project_id-llm_skills-name-skill_name-duplicate.
operations:
- method: POST
name: llmskillsnameduplicatecreate
description: llmskillsnameduplicatecreate
call: posthog-llm-skills.llmskillsnameduplicatecreate
with:
skill_name: rest.skill_name
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-skills/name/{skill-name}/files-rename
name: api-environments-project-id-llm-skills-name-skill-name-files-rename
description: REST surface for api-environments-project_id-llm_skills-name-skill_name-files-rename.
operations:
- method: POST
name: llmskillsnamefilesrenamecreate
description: llmskillsnamefilesrenamecreate
call: posthog-llm-skills.llmskillsnamefilesrenamecreate
with:
skill_name: rest.skill_name
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-skills/name/{skill-name}/files
name: api-environments-project-id-llm-skills-name-skill-name-files
description: REST surface for api-environments-project_id-llm_skills-name-skill_name-files.
operations:
- method: POST
name: llmskillsnamefilescreate
description: llmskillsnamefilescreate
call: posthog-llm-skills.llmskillsnamefilescreate
with:
skill_name: rest.skill_name
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-skills/name/{skill-name}/files/{file-path}
name: api-environments-project-id-llm-skills-name-skill-name-files-file-path
description: REST surface for api-environments-project_id-llm_skills-name-skill_name-files-file_path.
operations:
- method: GET
name: llmskillsnamefilesretrieve
description: llmskillsnamefilesretrieve
call: posthog-llm-skills.llmskillsnamefilesretrieve
with:
file_path: rest.file_path
skill_name: rest.skill_name
version: rest.version
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: llmskillsnamefilesdestroy
description: llmskillsnamefilesdestroy
call: posthog-llm-skills.llmskillsnamefilesdestroy
with:
base_version: rest.base_version
file_path: rest.file_path
skill_name: rest.skill_name
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-skills/resolve/name/{skill-name}
name: api-environments-project-id-llm-skills-resolve-name-skill-name
description: REST surface for api-environments-project_id-llm_skills-resolve-name-skill_name.
operations:
- method: GET
name: llmskillsresolvenameretrieve
description: llmskillsresolvenameretrieve
call: posthog-llm-skills.llmskillsresolvenameretrieve
with:
before_version: rest.before_version
limit: rest.limit
offset: rest.offset
skill_name: rest.skill_name
version: rest.version
version_id: rest.version_id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: posthog-llm-skills-mcp
port: 9090
transport: http
description: MCP adapter for PostHog API — llm_skills. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: llmskillslist
description: llmskillslist
hints:
readOnly: true
destructive: false
idempotent: true
call: posthog-llm-skills.llmskillslist
with:
created_by_id: tools.created_by_id
limit: tools.limit
offset: tools.offset
search: tools.search
outputParameters:
- type: object
mapping: $.
- name: llmskillscreate
description: llmskillscreate
hints:
readOnly: false
destructive: false
idempotent: false
call: posthog-llm-skills.llmskillscreate
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: llmskillsnameretrieve
description: llmskillsnameretrieve
hints:
readOnly: true
destructive: false
idempotent: true
call: posthog-llm-skills.llmskillsnameretrieve
with:
skill_name: tools.skill_name
version: tools.version
outputParameters:
- type: object
mapping: $.
- name: llmskillsnamepartialupdate
description: llmskillsnamepartialupdate
hints:
readOnly: false
destructive: false
idempotent: true
call: posthog-llm-skills.llmskillsnamepartialupdate
with:
skill_name: tools.skill_name
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: llmskillsnamearchivecreate
description: llmskillsnamearchivecreate
hints:
readOnly: false
destructive: false
idempotent: false
call: posthog-llm-skills.llmskillsnamearchivecreate
with:
skill_name: tools.skill_name
outputParameters:
- type: object
mapping: $.
- name: llmskillsnameduplicatecreate
description: llmskillsnameduplicatecreate
hints:
readOnly: false
destructive: false
idempotent: false
call: posthog-llm-skills.llmskillsnameduplicatecreate
with:
skill_name: tools.skill_name
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: llmskillsnamefilesrenamecreate
description: llmskillsnamefilesrenamecreate
hints:
readOnly: false
destructive: false
idempotent: false
call: posthog-llm-skills.llmskillsnamefilesrenamecreate
with:
skill_name: tools.skill_name
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: llmskillsnamefilescreate
description: llmskillsnamefilescreate
hints:
readOnly: false
destructive: false
idempotent: false
call: posthog-llm-skills.llmskillsnamefilescreate
with:
skill_name: tools.skill_name
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: llmskillsnamefilesretrieve
description: llmskillsnamefilesretrieve
hints:
readOnly: true
destructive: false
idempotent: true
call: posthog-llm-skills.llmskillsnamefilesretrieve
with:
file_path: tools.file_path
skill_name: tools.skill_name
version: tools.version
outputParameters:
- type: object
mapping: $.
- name: llmskillsnamefilesdestroy
description: llmskillsnamefilesdestroy
hints:
readOnly: false
destructive: true
idempotent: true
call: posthog-llm-skills.llmskillsnamefilesdestroy
with:
base_version: tools.base_version
file_path: tools.file_path
skill_name: tools.skill_name
outputParameters:
- type: object
mapping: $.
- name: llmskillsresolvenameretrieve
description: llmskillsresolvenameretrieve
hints:
readOnly: true
destructive: false
idempotent: true
call: posthog-llm-skills.llmskillsresolvenameretrieve
with:
before_version: tools.before_version
limit: tools.limit
offset: tools.offset
skill_name: tools.skill_name
version: tools.version
version_id: tools.version_id
outputParameters:
- type: object
mapping: $.