writing-skills
writing-skills
Use when creating new skills, editing existing skills, or verifying skills work before deployment
control-plane-apiUse PyCaret's FastAPI Control Plane backend: CLI, configuration, auth, workspaces, experiments, runs/trials, data sources, deployments, storage, LLM advisories, schedules, webhooks, and API tests.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill when the task is about the PyCaret Control Plane backend:
pycaret-server, FastAPI route behavior, TestClient/API usage, bootstrap and
auth, workspaces/projects/experiments, run and trial lifecycles, data sources
and catalog connections, artifact storage, pipeline promotion, registry and
deployment serving, monitoring/drift/schedules/webhooks, backup/restore, or
LLM advisory endpoints.
The behavior in this skill is distilled for PyCaret 4.0 / pycaret-server
0.1.0a0. It is intended to be usable without reopening the source checkout.
engine-workflows.web-ui.platform-operations.repo-development.pycaret-server
commands, PYCARET_* settings, and isolated TestClient fixtures.dispatch_run, Run/Trial/Job
semantics, plan behavior, artifact storage, promotion, and serving.LLMRouter, the six advisory endpoints, and the no-side-effect rule.These scripts create temporary SQLite databases and artifact directories. They
never touch the caller's default pycaret.db or ./artifacts unless you modify
them.
python scripts/server_smoke.py --help
python scripts/server_smoke.py --json
python scripts/run_lifecycle_smoke.py --help
python scripts/run_lifecycle_smoke.py --plan setup --timeout-s 60 --json
python scripts/run_lifecycle_smoke.py --plan create --model-id lr --timeout-s 180 --json
If running from a source checkout with uv, prefix the command in the usual
way, for example:
uv run --package pycaret-server python scripts/run_lifecycle_smoke.py --plan setup
pycaret-server version
pycaret-server init --data-dir ./data
pycaret-server migrate
pycaret-server serve --host 127.0.0.1 --port 8020
pycaret-server doctor
pycaret-server worker --queues default,gpu --worker-id worker-1
Important HTTP entry points:
GET /, GET /healthz, GET /docs, GET /openapi.json.GET /api/v1/setup/status, POST /api/v1/setup/bootstrap.Authorization: Bearer <access_token> or programmatic
key in X-PyCaret-Key.POST /api/v1/experiments/{experiment_id}/runs with a
RunCreate body. Poll GET /api/v1/runs/{run_id} or block with
POST /api/v1/runs/{run_id}/wait?timeout_s=....GET /api/v1/runs/{run_id}/events or WebSocket
/api/v1/runs/{run_id}/events/ws?token=<access_token>.POST /api/v1/deployments/{endpoint_slug}/predict
with {"rows": [{...}]}.LLMConsultation audit row
and return suggested_config_json, suggested_action, reasoning_summary,
and risk_flags; they must not directly execute runs, deploy, delete, or
mutate production state.PYCARET_SECRETS_KEY as persistent state. If it changes, encrypted LLM
keys, connection passwords, webhooks, and other secrets may become unreadable.