Artifacts
Artifacts are files and outputs generated by skill executions. They’re automatically saved to your account for later access.
What is an Artifact?
When a skill execution produces files (documents, code, images, etc.), these are saved as artifacts. Each artifact includes:
- ID - Unique numeric identifier
- Title - Descriptive name (often derived from the skill or input)
- Skill Name - The skill that created it
- File Type - MIME type of the primary file
- Files - One or more generated files
- Metadata - Creation time, execution context, etc.
Artifact Types
| Type | Description | Examples |
|---|---|---|
text/markdown | Markdown documents | READMEs, documentation |
text/plain | Plain text files | Logs, notes |
application/json | JSON data | API responses, configs |
application/zip | Archives | Multi-file outputs |
image/* | Images | Diagrams, generated graphics |
Viewing Artifacts
Via Mobile App
- Go to the Artifacts tab
- Tap an artifact to view details
- Tap Download or Share
Via MCP
{
"tool": "list-artifacts",
"arguments": {
"limit": 20
}
}
Via REST API
# List all artifacts
GET /api/v1/artifacts
# Get specific artifact
GET /api/v1/artifacts/:id
# Download artifact
GET /api/v1/artifacts/:id/download
List Artifacts via MCP
Via MCP
{
"tool": "list-artifacts",
"arguments": {
"limit": 10
}
}
Downloading Artifacts
Via MCP
Get a download URL:
{
"tool": "download-artifact",
"arguments": {
"id": 123
}
}
Response:
{
"success": true,
"data": {
"id": 123,
"title": "README.md",
"downloadUrl": "/api/v1/artifacts/123/download"
}
Direct Download
curl -O https://clanker.net/api/v1/artifacts/123/download \
-H "x-auth-token: YOUR_AUTH_TOKEN"
Iterating on Artifacts
You can retrieve an artifact and use it as context for a new execution:
Via MCP
Retrieve artifact content first:
{
"tool": "get-artifact",
"arguments": {
"id": "123"
}
}
Then start a skill run via the REST API with that content in your input (skills are not executed over MCP):
curl -X POST https://clanker.net/api/v1/skills/readme-generator/run \
-H "x-api-key: ck_live_xxxxx" \
-H "Content-Type: application/json" \
-d '{ "input": "Here is my current README. Please add a section about installation." }'
Via REST API
# Get artifact details
GET /api/v1/artifacts/:id
# Start a new execution with the artifact content as context
POST /api/v1/skills/:slug/run
Content-Type: application/json
{
"input": "Here is my current README. Please add a section about installation."
}
Deleting Artifacts
Via MCP
{
"tool": "delete-artifact",
"arguments": {
"id": 123
}
}
Via REST API
DELETE /api/v1/artifacts/:id
Artifact Storage
Artifacts are stored securely in object storage:
- Retention: Artifacts are kept indefinitely
- Size limits: Individual files up to 100MB
- Access: Only accessible to the owning user
Multi-File Artifacts
Some skills generate multiple files. These are bundled into a single artifact with a manifest:
{
"id": 123,
"title": "Project Scaffold",
"files": [
{ "path": "README.md", "size": 2048 },
{ "path": "src/index.ts", "size": 1024 },
{ "path": "package.json", "size": 512 }
]
}
Access individual files:
GET /api/v1/artifacts/:id/file/src/index.ts
Best Practices
- Review before deleting - Artifacts can’t be recovered after deletion
- Use search - Semantic search is powerful for finding old artifacts
- Resume when possible - Iterating on artifacts is more efficient than starting fresh
- Download important files - Keep local backups of critical outputs