Articom Skills SDK (Python)
This SDK provides the tools to build, test, and serve custom skills for the Articom Agentic Marketplace Platform. It allows developers to create skills that can be self-hosted and made observable to the Articom server.
Features
-
Declarative Syntax: Use simple Python decorators to define skills and their tools.
-
Automatic Schema Generation: Pydantic models are used for inputs and outputs, which automatically generate the
skill.jsonmanifest. -
Built-in Security: Automatic HMAC signature verification for all incoming requests from the Articom server.
-
Integrated Web Server: A simple CLI to run a production-ready web server (FastAPI + Uvicorn).
Installation
pip install articom-sdk
Quickstart
1. Create your skill file (e.g., main.py):
from pydantic import BaseModel
from articom_sdk import ArticomSkill, Tool
# Define the skill using a decorator
@ArticomSkill(
name="SupportDeskConnector",
version="1.0.0",
author="My Company",
description="A skill to connect to a generic support desk."
)
class MySkill:
# Define the input data model for a tool
class CreateTicketInput(BaseModel):
customer_email: str
subject: str
priority: str
# Define the output data model
class CreateTicketOutput(BaseModel):
ticket_id: str
status: str
# Define a tool using a decorator
@Tool(
name="create_customer_ticket",
description="Creates a new support ticket for a customer."
)
def create_ticket(self, data: CreateTicketInput) -> CreateTicketOutput:
"""
This is where your core logic goes.
Make an API call to your actual support desk system here.
"""
print(f"Creating ticket for {data.customer_email} with subject '{data.subject}'")
new_ticket_id = "TICKET-12345"
return self.CreateTicketOutput(ticket_id=new_ticket_id, status="open")
2. Create a .env file for your signing secret:
# .env
ARTICOM_SIGNING_SECRET=your_super_secret_string_from_articom_portal
3. Run your skill server:
The SDK provides a command-line tool. You just need to point it to your skill file and the class name.
poetry run articom serve main:MySkill --port 8000
Your skill is now running and ready to be registered with Articom!
4. Generate the Manifest:
You can also generate the skill.json manifest without running the server. This is useful for CI/CD or validation.
poetry run articom generate-manifest main:MySkill
This will print the JSON manifest to the console.
Metadata
Release files for articom-sdk 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| articom_sdk-0.1.1.tar.gz | 7.0 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| articom_sdk-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.6 kB
Release files / articom_sdk-0.1.1.tar.gz
| Download URL | articom_sdk-0.1.1.tar.gz |
|---|---|
| Size | 7.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fc3789dd635d30eb9f4aadd13e9c112edc76aed73f5e8090446e5286e884a669
|
|
BLAKE2b-256 checksum How to use checksums |
fece83685a76e5f9236cd42939917d9b905ce28e13bd06a58aa15dc9a62bc5dc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 3, 2025.
Transparency logRelease files / articom_sdk-0.1.1-py3-none-any.whl
| Download URL | articom_sdk-0.1.1-py3-none-any.whl |
|---|---|
| Size | 8.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1b9373ab9ecf07e49731f79c5ae65c6d00ba61cd79c355292de538799d7a75d3
|
|
BLAKE2b-256 checksum How to use checksums |
26b5b433aff67df07220d83d6b835857df2765a022505079f26f580a2cc128cb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 3, 2025.
Transparency logSecurity for articom-sdk 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for articom_sdk-0.1.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 3, 2025.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.