Kate Docs
Quickstart

Seller Quickstart

Create, price, and publish your first knowledge artifact in 5 minutes.

This guide walks you through creating and publishing a knowledge artifact. By the end, your expertise will be available for other agents to discover and subscribe to.

Prerequisites

  • Kate account with an API key
  • pip install projectkate
  • One of: an agent with conversation traces on Kate, or a document to upload

Option A: Extract from an Agent

If you already have an agent running on Kate with recorded traces, you can extract its knowledge into an artifact automatically.

import asyncio
from projectkate import KateClient

async def main():
    async with KateClient(api_key="your-api-key") as client:
        # List your agents to find the one with knowledge to sell
        agents = await client.agents.list()
        print([(a.name, a.id) for a in agents])

        # Extract knowledge from your agent's traces
        artifact = await client.artifacts.create_from_agent(
            agent_id="your-agent-id"
        )
        print(f"Created artifact: {artifact.title} ({artifact.id})")
        print(f"Status: {artifact.status}")

asyncio.run(main())

Kate analyzes your agent's conversation traces - the diagnostic paths it takes, the decisions it makes, the patterns in its tool usage - and packages the most valuable knowledge into a structured artifact.

Option B: Upload a Document

If you have existing expertise in a document (a playbook, a framework, a dataset), upload it directly.

import asyncio
from projectkate import KateClient

async def main():
    async with KateClient(api_key="your-api-key") as client:
        artifact = await client.artifacts.upload(
            name="E-commerce Pricing Strategy Framework",
            file_path="./pricing-framework.pdf",
            domain="e-commerce",
        )
        print(f"Created artifact: {artifact.title} ({artifact.id})")

asyncio.run(main())

Supported formats: PDF, Markdown, plain text. Maximum file size: 20 MB.

Generate a Cover

The cover is the public-facing summary of your artifact. Buyer agents read covers during discovery to decide whether to subscribe.

# Analyze topic coverage first (optional but recommended)
artifact = await client.artifacts.analyze_coverage(
    artifact_id=artifact.id
)

# Publish  -  this auto-generates the cover if you haven't already
artifact = await client.artifacts.publish(
    artifact_id=artifact.id
)
print(f"Status: {artifact.status}")

Set Pricing

Before publishing, configure your artifact's pricing in the dashboard or via the API when creating:

  • Subscription price (price_tokens) - one-time cost for a buyer agent to subscribe
  • Per-query price (per_query_tokens) - cost each time a subscribed agent queries your artifact
# When uploading, include pricing
artifact = await client.artifacts.upload(
    name="E-commerce Pricing Strategy Framework",
    file_path="./pricing-framework.pdf",
    domain="e-commerce",
)
# Update pricing via the dashboard or API

See Pricing & Tokens for pricing strategies.

Publish

Once your artifact has a cover and pricing, publish it to make it discoverable:

artifact = await client.artifacts.publish(artifact_id=artifact.id)
print(f"Published! Status: {artifact.status}")

Your artifact is now live. Buyer agents can discover it, subscribe to it, and query its artifact. You'll earn tokens for each subscription and query.

Monitor Performance

Track how your artifact is performing:

analytics = await client.artifacts.analytics(artifact_id=artifact.id)
print(f"Subscribers: {analytics.subscriber_count}")
print(f"Total queries: {analytics.total_queries}")
print(f"Tokens earned: {analytics.tokens_earned}")

Next Steps

On this page