Skip to content
Back to skills

Python Sdk

ASecurity

"Operate the Argilla 2.x Python SDK for datasets, records, search,

  • 247 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 8, 2026
devopspythonfastapidockerkubernetesapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 7 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill python-sdk --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Python Sdk?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Python Sdk
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-python-sdk/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-python-sdk)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: python-sdk
description: "Operate the Argilla 2.x Python SDK for datasets, records, search,
  import/export, users, workspaces, webhooks, and SDK troubleshooting."
disable-model-invocation: true
metadata:
  disco-role: operating
license: Apache 2.0
---

# Argilla Python SDK

Use this sub-skill when a task asks you to use Argilla 2.x from Python: connect to an Argilla server, define dataset settings, log records, map incoming data to fields/questions/metadata/vectors, search/filter/export records, manage users/workspaces, or build a webhook listener.

Do not use this sub-skill for server deployment, Docker/Kubernetes, search-engine reindexing, OAuth/SSO service configuration, or legacy v1/Rubrix migration. Route those to the sibling `server-ops` or `legacy-migration` sub-skill.

## First-choice references

- Read [`references/api-reference.md`](references/api-reference.md) when you need verified Argilla 2.8.0dev0 SDK signatures, object relationships, collection accessors, or event names.
- Read [`references/workflows.md`](references/workflows.md) when you need end-to-end recipes for connecting, creating datasets, logging data, searching/filtering, import/export, users/workspaces, or webhooks.
- Read [`references/data-formats.md`](references/data-formats.md) when you must format field/question values, record mappings, flatten/export columns, markdown/media, images, chat data, custom fields, metadata, vectors, or external ids.
- Read [`references/troubleshooting.md`](references/troubleshooting.md) when SDK calls fail due to credentials, API URL, default client, schema collisions, record mappings, images/chat/custom fields, vectors/search, Hub tokens, private Spaces, or webhooks.

## Bundled helpers

- Run [`scripts/build_dataset_template.py --help`](scripts/build_dataset_template.py) when you need a safe offline generator that prints or writes a minimal Python dataset/settings/records template; the helper itself never contacts an Argilla server.
- Run [`scripts/webhook_listener_template.py --help`](scripts/webhook_listener_template.py) when you need a safe FastAPI webhook listener skeleton; it does not create, register, delete, or serve live webhooks unless the user explicitly passes live-server arguments.

## Operating rules

1. Treat the Python SDK as service-backed: `rg.Argilla(...)`, `create`, `update`, `delete`, `records.log`, `to_hub`, `from_hub`, and webhooks can contact a server or network service.
2. Prefer explicit clients. Create `client = rg.Argilla(api_url=..., api_key=...)` before constructing SDK resources if environment defaults are not guaranteed, and pass `client=client` to datasets and user/workspace/webhook resources where supported.
3. Keep dataset setting names unique across fields, questions, metadata properties, and vector fields. Use simple stable names, then map arbitrary source columns with `dataset.records.log(..., mapping=...)`.
4. Use `Record(id=...)` or mapping target `id` for the record external id. The SDK serializes this as `external_id` internally, but the public constructor/mapping target is `id`.
5. Use safe templates for webhooks. The `webhook_listener` decorator registers webhooks when it is executed, so do not place it at module import time unless the user intentionally wants registration.

Files in this skill

  • SKILL.md3.2 KB
  • references/api-reference.md12.8 KB
  • references/data-formats.md7.8 KB
  • references/troubleshooting.md8.6 KB
  • references/workflows.md11.5 KB
  • scripts/build_dataset_template.py8.6 KB
  • scripts/webhook_listener_template.py7.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…