zylon-ai/private-gpt · error · HTTPException

Skill with id {skill_id} is readonly and cannot create versi

Error message

Skill with id {skill_id} is readonly and cannot create versions

What it means

Error "Skill with id {skill_id} is readonly and cannot create versions" thrown in zylon-ai/private-gpt.

Source

Thrown at private_gpt/server/skills/skill_router.py:484

    request: Request,
    skill_id: str,
    collection: Annotated[
        str,
        Form(min_length=1, max_length=255, examples=["acme-prod"]),
    ],
    anthropic_beta: Annotated[list[str] | None, Header(alias="anthropic-beta")] = None,
) -> SkillVersionResponse:
    """Create and return a new version for the requested skill."""
    del anthropic_beta
    service: SkillService = request.state.injector.get(SkillService)
    skill = await service.get_skill(skill_id=skill_id, collection=collection)
    if not skill:
        raise HTTPException(
            status_code=404,
            detail=f"Skill with id {skill_id} not found in collection {collection}",
        )
    if skill.readonly:
        raise HTTPException(
            status_code=403,
            detail=f"Skill with id {skill_id} is readonly and cannot create versions",
        )

    form = await request.form()
    uploads = await uploads_from_request_form(list(form.multi_items()))
    files = await stored_files_from_uploads(uploads)

    version = await service.create_version(
        skill_id=skill_id,
        collection=collection,
        files=files,
    )
    if not version:
        raise HTTPException(
            status_code=404,
            detail=f"Skill with id {skill_id} not found in collection {collection}",
        )

View on GitHub (pinned to 4a030776a3)

Solutions

  1. Do not attempt to create versions of readonly skills; create versions only for user-created skills.
  2. Fork or duplicate the skill as a user-owned skill, then create versions on the copy.
  3. Check the skill's readonly flag before calling the create-version endpoint.

When it happens

Trigger: Raised when attempting to create a new version of a skill marked as readonly.

Common situations: Versioning a bundled/system skill; copy its content into a new custom skill and version that instead.


AI-assisted analysis of zylon-ai/private-gpt@4a030776a3 (2026-08-15). Data as JSON: /api/errors/0d5634e9c6540315. Report an issue: GitHub.