ATOM Marketplace User Guide
Complete guide to using the ATOM marketplace for sharing agents, skills, canvases, and domains.
---
Table of Contents
- Overview
- Getting Started
- Browsing the Marketplace
- Publishing to Marketplace
- Installing from Marketplace
- Private Marketplace
- Pricing and Billing
- Code Examples
- Troubleshooting
---
Overview
The ATOM marketplace enables you to:
- **Discover** pre-built agents, skills, canvases, and domains
- **Share** your creations with the community
- **Install** ready-to-use components
- **Rate** and review marketplace items
- **Federate** across ATOM instances
Marketplace Types
| Marketplace | Description | Example Items |
|---|---|---|
| **Agent Marketplace** | Mature AI agents with pre-learned capabilities | Customer support agent, Sales assistant |
| **Skill Marketplace** | Reusable AI skills and functions | Data extraction, Document summarization |
| **Canvas Marketplace** | UI canvas templates and visual components | Dashboard layout, Workflow builder |
| **Domain Marketplace** | Specialist domain expertise templates | Finance specialist, Legal analyst |
Skills vs Capabilities
**Important Distinction:**
| Aspect | Skills | Capabilities |
|---|---|---|
| **Definition** | Basic composable units (building blocks) | Higher-level competencies that combine multiple skills |
| **Type** | Individual tools/commands | Unstructured complex tasks (not long-horizon) |
| **Examples** | Text summarization, Data extraction, API call | Data analysis, Code execution, Integrations, Reasoning |
| **Governance** | Safety-based governance (LOW_RISK/HIGH_RISK levels) | Domain-based governance (graduation thresholds) |
| **Tracking** | SkillExecution records | Capability matrix and graduation service |
| **Domains** | None (basic units) | 4 domains: DATA_ANALYSIS, CODE_EXECUTION, INTEGRATIONS, REASONING |
**How They Work Together:**
Skills (Basic Units) → Combined into → Capabilities (Higher-Level Competencies)
↓ ↓
Individual tools like: "Data Analysis" capability includes:
- Text summarization - Data visualization
- Sentiment analysis - Chart generation
- Data extraction - Report generation
Domain: DATA_ANALYSIS
Risk factor: 0.3
Threshold: 70% success rate**Key Differences:**
- **Skills** are the fundamental building blocks - individual functions you can install and use
- **Capabilities** are higher-level competencies that agents develop by combining multiple skills
- **Skills** have safety-based governance (LOW_RISK/HIGH_RISK) and require admin approval for dangerous operations
- **Capabilities** have domain-based governance with graduation thresholds for agent maturity progression
- **Skills** are installed from the marketplace; **Capabilities** are developed by agents through training and experience
**Example:**
To become a "Data Analysis Specialist," an agent needs:
- **Skills installed**: Data extraction, Chart rendering, Report generation (from marketplace)
- **Capabilities developed**: DATA_ANALYSIS domain proficiency (through training and success rate)
---
Getting Started
Accessing the Marketplace
- **Navigate to Marketplace**
- Log in to your ATOM workspace
- Click **"Marketplace"** in the left sidebar
- Choose a marketplace type (Agent, Skill, Canvas, Domain)
- **Marketplace Dashboard**
- Featured items
- Popular categories
- Recent submissions
- Your installations
Permissions
- **Browse**: Available to all users
- **Install**: Requires appropriate plan limits
- **Publish**: Requires account with publishing permissions
- **Rate**: Requires installation of the item
---
Browsing the Marketplace
Search and Filter
**Basic Search:**
Search bar: "customer support"**Advanced Filters:**
- **Category**: Browse by category (e.g., "automation", "integration", "analytics")
- **Type**: Filter by type (e.g., "api", "workflow", "template")
- **Price**: Free vs. Paid items
- **Rating**: Minimum rating (4+ stars, 3+ stars, etc.)
- **Sort By**: Rating, installs, updated, name
**Example Filter Combinations:**
Category: "integration"
Type: "api"
Price: "free"
Rating: "4+ stars"
Sort By: "rating"Viewing Item Details
Click any item to view:
- **Overview**
- Name and description
- Publisher information
- Version history
- Installation count
- **Details**
- Long description
- Screenshots/demo
- Input/output schemas
- Dependencies
- Resource requirements
- **Ratings and Reviews**
- Average rating
- Total reviews
- User reviews with comments
- Rating distribution
- **Installation**
- Install button
- Version selector
- Compatibility check
- Resource impact
Categories
**Agent Marketplace:**
- Customer Service
- Sales & Marketing
- Finance & Accounting
- Development & IT
- HR & Operations
- Analytics & Reporting
**Skill Marketplace:**
- Data Processing
- Integration
- Automation
- Analysis
- Communication
- File Management
**Canvas Marketplace:**
- Dashboards
- Workflow Builders
- Data Visualizations
- Forms & Input
- Reports & Exports
**Domain Marketplace:**
- Finance
- Legal
- Healthcare
- E-commerce
- Manufacturing
- Education
---
Publishing to Marketplace
Preparation Checklist
Before publishing, ensure:
- [ ] Item is fully functional and tested
- [ ] Documentation is complete
- [ ] No hardcoded credentials or sensitive data
- [ ] Compatible with current platform version
- [ ] Meets quality standards
- [ ] Proper licensing information
Publishing an Agent
**Requirements:**
- Agent maturity: **Autonomous** or **Supervised**
- Minimum performance metrics:
- Success rate: ≥70%
- Zero-intervention ratio: ≥60%
- Constitutional compliance: ≥80%
- Graduation exam passed (if applicable)
**Steps:**
- **Navigate to Your Agents**
- **Configure Publishing Details**
- **Select Version**
- Choose which version to publish
- Include agent memory (optional)
- Include learned experiences (optional)
- Strip sensitive data automatically
- **Add Documentation**
- Long description (Markdown supported)
- Usage instructions
- Screenshots or demo video
- Changelog
- **Submit for Review**
- Review submission
- Agree to publisher terms
- Submit
**Approval Process:**
- Automated validation (5-10 minutes)
- Manual review (1-2 business days)
- Approval notification via email
- Item appears in marketplace
Publishing a Skill
**Requirements:**
- Skill code is functional
- Input/output schemas defined
- Error handling implemented
- Documentation complete
**Steps:**
- **Navigate to Your Skills**
- **Configure Skill Details**
- **Define Schemas**
**Input Schema:**
```json
{
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "Text to extract data from"
},
"fields": {
"type": "array",
"items": {"type": "string"},
"description": "Fields to extract"
}
},
"required": ["text", "fields"]
}
```
**Output Schema:**
```json
{
"type": "object",
"properties": {
"extracted_data": {
"type": "object",
"description": "Extracted key-value pairs"
},
"confidence": {
"type": "number",
"description": "Confidence score (0-1)"
}
}
}
```
- **Upload Code**
- Paste skill code
- Specify language (Python, JavaScript)
- Add dependencies
- **Add Examples**
- **Submit for Review**
Publishing a Canvas
**Requirements:**
- Canvas is functional
- Components are properly connected
- Layout is responsive
- Documentation included
**Steps:**
- **Navigate to Your Canvases**
- **Configure Canvas Details**
- **Export Canvas Configuration**
- Components included
- Layout preserved
- Dependencies listed
- Data sources specified (placeholders)
- **Add Screenshots**
- Upload canvas screenshot
- Add demo video (optional)
- Document component interactions
- **Submit for Review**
Publishing a Domain
**Requirements:**
- Domain is fully configured
- Knowledge base is populated
- Skills are integrated
- Documentation complete
**Steps:**
- **Navigate to Your Domains**
- **Configure Domain Details**
- **Export Domain Configuration**
- Knowledge base (anonymized)
- Integrated skills
- Agent templates
- Best practices
- **Submit for Review**
---
Installing from Marketplace
Installation Prerequisites
- **Plan Limits**: Check your plan allows additional items
- **Resource Requirements**: Ensure sufficient resources
- **Compatibility**: Verify platform version compatibility
- **Dependencies**: Check required integrations/skills
Installing an Agent
**Steps:**
- **Browse Agent Marketplace**
- **Select Agent**
- Read description
- Check ratings and reviews
- View resource requirements
- Verify compatibility
- **Click "Install"**
- Choose version (latest or specific)
- Review permissions
- Confirm installation
- **Configure Installed Agent**
- **Agent Ready**
- Agent appears in your Agents list
- Can be used immediately
- Can be further trained
**Example:**
Installing: Customer Support Agent v2.1
Publisher: Acme Corp
Rating: ⭐⭐⭐⭐⭐ (4.8/5 from 120 reviews)
Resource Impact: Medium
Estimated Cost: $0/month (included in plan)
✓ Compatible with your plan
✓ No additional integrations required
✓ Sufficient resources available
[Install Agent]Installing a Skill
**Steps:**
- **Browse Skill Marketplace**
- **Select Skill**
- Review description
- Check input/output schemas
- View examples
- Verify dependencies
- **Click "Install"**
- Review skill code
- Check dependencies
- Confirm installation
- **Skill Available**
- Skill appears in Canvas skill palette
- Can be used in workflows
- Can be customized
**Example:**
Installing: Data Extractor v1.3
Publisher: DataTools Inc
Rating: ⭐⭐⭐⭐ (4.2/5 from 45 reviews)
Type: API
Dependencies: None
Input Schema: {text: string, fields: array}
Output Schema: {extracted_data: object, confidence: number}
Example:
Input: {"text": "Contact: john@example.com", "fields": ["email"]}
Output: {"extracted_data": {"email": "john@example.com"}, "confidence": 0.95}
[Install Skill]Installing a Canvas
**Steps:**
- **Browse Canvas Marketplace**
- **Select Canvas**
- View screenshots
- Check components
- Review documentation
- Verify data sources
- **Click "Install"**
- Review canvas configuration
- Map data sources
- Confirm installation
- **Canvas Ready**
- Canvas appears in your Canvas list
- Can be customized
- Can be shared with team
**Example:**
Installing: Sales Dashboard v1.0
Publisher: DashboardTemplates
Rating: ⭐⭐⭐⭐⭐ (4.9/5 from 89 reviews)
Components: 12
Data Sources: Salesforce, Stripe
⚠️ Requires: Salesforce integration
⚠️ Requires: Stripe integration
[Configure Data Sources] [Install Canvas]Installing a Domain
**Steps:**
- **Browse Domain Marketplace**
- **Select Domain**
- Read description
- Check features
- View documentation
- Verify pricing
- **Click "Install"**
- Review pricing
- Check compatibility
- Confirm installation
- **Configure Domain**
- Import knowledge base
- Configure agents
- Set up skills
- **Domain Ready**
- Domain available for agents
- Can be customized
- Subscription activated
**Example:**
Installing: Finance Specialist v3.0
Publisher: FinanceAI
Rating: ⭐⭐⭐⭐ (4.5/5 from 56 reviews)
Price: $9.99/month
Subscription: Monthly (cancel anytime)
Features:
✓ Financial analysis
✓ Report generation
✓ Forecasting
✓ Compliance checking
[Subscribe & Install]Managing Installations
**View Your Installations:**
Marketplace → "My Installations"**Update Installed Items:**
- Check for updates
- View changelog
- Update to latest version
**Uninstall Items:**
- Remove from workspace
- Data retention options
- Reinstall capability
---
Private Marketplace
Overview
Private marketplace allows organizations to:
- Share items within organization only
- Control access and approvals
- Maintain internal asset library
- Separate from public marketplace
Setting Up Private Marketplace
**Enable Private Marketplace:**
Settings → Marketplace → "Enable Private Marketplace"**Configuration:**
Private Marketplace Name: "Acme Corp Internal"
Visibility: Organization only
Approval Required: Yes/No
Allow Publishing: All users / Admins onlyPublishing to Private Marketplace
**Steps:**
- **Navigate to Item**
- Agent/Skill/Canvas/Domain
- Click "Publish"
- **Choose Private Marketplace**
- **Configure Details**
- Name and description
- Category and tags
- Access control (if applicable)
- **Submit**
- Instant approval (if enabled)
- Or submit for review
Accessing Private Marketplace
**View Private Marketplace:**
Marketplace → "Private" tab**Filter by:**
- Publisher
- Department
- Date published
- Installation count
Private Marketplace Features
**Access Control:**
- Restrict by user role
- Restrict by department
- Require approval for access
**Versioning:**
- Multiple versions
- Version approvals
- Rollback capability
**Analytics:**
- Installation tracking
- Usage metrics
- Feedback collection
---
Pricing and Billing
Marketplace Pricing Models
**Free Items:**
- No cost to install
- Included in plan limits
- Full functionality
**Paid Items:**
- One-time purchase or subscription
- Billed through ATOM account
- Can cancel subscriptions anytime
Plan Limits
| Plan | Max Agents | Max Skills | Max Canvases | Max Domains |
|---|---|---|---|---|
| Free | 3 | 10 | 5 | 1 |
| Solo | 10 | 50 | 20 | 5 |
| Team | 25 | 200 | 100 | 10 |
| Enterprise | Unlimited | Unlimited | Unlimited | Unlimited |
Resource Usage
**Agent Resources:**
- CPU: Low/Medium/High
- Memory: 100MB - 2GB
- Storage: Included in plan
**Skill Resources:**
- Execution time: Included
- API calls: Count toward quota
- Storage: Minimal
**Canvas Resources:**
- Components: No limit
- Data sources: Per integration limits
- Storage: Included in plan
**Domain Resources:**
- Knowledge base: Per plan storage
- Agents: Count toward plan limit
- Skills: Count toward plan limit
Billing
**Free Items:**
- No additional charges
- Count toward plan limits
**Paid Items:**
- Billed monthly
- Itemized on invoice
- Can cancel anytime
**Example Invoice:**
ATOM SaaS - Monthly Invoice
----------------------------
Plan: Team ($79/month)
Marketplace Items:
- Finance Specialist Domain: $9.99
- Sales Dashboard Canvas: $4.99
Total: $93.98---
Rating and Reviews
Rating Items
**Rate After Installation:**
- Use the item for reasonable period
- Click "Rate" button
- Select star rating (1-5)
- Write review (optional)
- Submit
**Rating Guidelines:**
- **5 stars**: Excellent, exceeds expectations
- **4 stars**: Good, meets expectations
- **3 stars**: Average, some issues
- **2 stars**: Poor, significant issues
- **1 star**: Unusable, critical issues
Writing Reviews
**What to Include:**
- What you like
- What could be improved
- Use case context
- Tips for other users
**Example Review:**
⭐⭐⭐⭐⭐
"Excellent customer support agent! Handles inquiries across email
and chat seamlessly. Reduced response time by 80%. Highly recommend
for small businesses."
Use case: Customer support for e-commerce store
Team size: 5 agents
Integration: Gmail, SlackReview Moderation
**Community Guidelines:**
- Be respectful and constructive
- Avoid spam and self-promotion
- Report inappropriate reviews
- Edit your own reviews
---
Code Examples
API Usage Examples
Browse Marketplace via API
**Python Example:**
import requests
# Browse skills marketplace
response = requests.get("https://api.atomagentos.com/api/public/v1/marketplace/skills")
data = response.json()
for skill in data['skills']:
print(f"{skill['name']}: {skill['description']}")
print(f"Rating: {skill['average_rating']}/5")
print(f"Installs: {skill['install_count']}")
print()**JavaScript Example:**
// Browse agents marketplace
async function browseAgents(category = null) {
const params = new URLSearchParams({
limit: 20,
sort_by: 'rating',
sort_order: 'desc'
});
if (category) {
params.append('category', category);
}
const response = await fetch(
`https://api.atomagentos.com/api/public/v1/marketplace/agents?${params}`
);
const data = await response.json();
return data.agents;
}
// Usage
const agents = await browseAgents('customer-service');
agents.forEach(agent => {
console.log(`${agent.name}: ${agent.average_rating}/5`);
});**Go Example:**
package main
import (
"encoding/json"
"fmt"
"net/http"
)
type Skill struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Rating float64 `json:"average_rating"`
}
func main() {
resp, err := http.Get("https://api.atomagentos.com/api/public/v1/marketplace/skills")
if err != nil {
panic(err)
}
defer resp.Body.Close()
var data struct {
Skills []Skill `json:"skills"`
}
json.NewDecoder(resp.Body).Decode(&data)
for _, skill := range data.Skills {
fmt.Printf("%s: %.1f/5\n", skill.Name, skill.Rating)
}
}**cURL Example:**
# Browse skills with filters
curl -X GET "https://api.atomagentos.com/api/public/v1/marketplace/skills?category=data-processing&type=api&sort_by=rating&sort_order=desc" \
-H "Accept: application/json"
# Get specific skill details
curl -X GET "https://api.atomagentos.com/api/public/v1/marketplace/skills/SKILL_ID" \
-H "Accept: application/json"
# Rate a skill
curl -X POST "https://api.atomagentos.com/api/public/v1/marketplace/skills/SKILL_ID/rate" \
-H "X-API-Key: atom_pub_YOUR_KEY_HERE" \
-H "Content-Type: application/json" \
-d '{"rating": 5, "review": "Excellent skill!"}'Install via API
**Python Example:**
import requests
# Install a skill
api_key = "atom_pub_YOUR_KEY_HERE"
headers = {"X-API-Key": api_key}
response = requests.post(
f"https://api.atomagentos.com/api/public/v1/marketplace/skills/SKILL_ID/install",
headers=headers
)
if response.status_code == 200:
print("Skill installed successfully!")
else:
print(f"Installation failed: {response.json()['error']}")**JavaScript Example:**
// Install an agent
async function installAgent(agentId) {
const response = await fetch(
`https://api.atomagentos.com/api/public/v1/marketplace/agents/${agentId}/install`,
{
method: 'POST',
headers: {
'X-API-Key': 'atom_pub_YOUR_KEY_HERE',
'Content-Type': 'application/json'
}
}
);
if (response.ok) {
const data = await response.json();
console.log('Agent installed:', data.name);
return data;
} else {
throw new Error('Installation failed');
}
}
// Usage
installAgent('AGENT_ID')
.then(agent => console.log('Success:', agent))
.catch(err => console.error('Error:', err));Publish via API
**Python Example:**
import requests
import json
api_key = "atom_pub_YOUR_KEY_HERE"
headers = {"X-API-Key": api_key, "Content-Type": "application/json"}
# Prepare skill data
skill_data = {
"name": "Data Extractor Pro",
"description": "Advanced data extraction from unstructured text",
"long_description": "# Data Extractor Pro\n\nExtracts structured data from text using NLP.",
"type": "api",
"category": "data-processing",
"tags": ["extraction", "nlp", "parsing"],
"price": 0.0,
"license": "MIT",
"input_schema": {
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "Text to extract from"
},
"fields": {
"type": "array",
"items": {"type": "string"},
"description": "Fields to extract"
}
},
"required": ["text", "fields"]
},
"output_schema": {
"type": "object",
"properties": {
"extracted_data": {
"type": "object",
"description": "Extracted key-value pairs"
},
"confidence": {
"type": "number",
"description": "Confidence score (0-1)"
}
}
},
"code": """
def execute(input):
text = input['text']
fields = input['fields']
# Extraction logic here
return {
'extracted_data': {},
'confidence': 0.95
}
"""
}
# Submit skill
response = requests.post(
"https://api.atomagentos.com/api/public/v1/marketplace/submit",
headers=headers,
json=skill_data
)
if response.status_code == 201:
print("Skill submitted for review!")
print(f"Submission ID: {response.json()['id']}")
else:
print(f"Submission failed: {response.json()['error']}")---
CLI Examples
Using ATOM CLI
**Install ATOM CLI:**
# macOS/Linux
curl -fsSL https://get.atomagentos.com/install.sh | bash
# Windows (PowerShell)
irm https://get.atomagentos.com/install.ps1 | iex**Browse Marketplace:**
# List all skills
atom marketplace list skills
# Search skills
atom marketplace search skills --query "data extraction"
# Get skill details
atom marketplace get skill SKILL_ID
# List categories
atom marketplace categories**Install Items:**
# Install a skill
atom marketplace install skill SKILL_ID
# Install specific version
atom marketplace install skill SKILL_ID --version 2.1.0
# Install an agent
atom marketplace install agent AGENT_ID
# Install multiple items
atom marketplace install skill SKILL_1 skill SKILL_2 skill SKILL_3**Publish Items:**
# Publish a skill from file
atom marketplace publish skill --file skill.json
# Publish an agent
atom marketplace publish agent --agent-id my_agent --price 0.0
# Update published item
atom marketplace update skill SKILL_ID --file skill_v2.json
# Check submission status
atom marketplace status SUBMISSION_ID**Rate Items:**
# Rate a skill
atom marketplace rate skill SKILL_ID --rating 5 --review "Excellent!"
# List your ratings
atom marketplace ratings
# Get item ratings
atom marketplace ratings skill SKILL_ID**Manage Installations:**
# List installed items
atom marketplace installed
# Check for updates
atom marketplace updates
# Update an item
atom marketplace update skill SKILL_ID
# Uninstall an item
atom marketplace uninstall skill SKILL_ID---
Example Configurations
Skill Configuration Example
**Simple API Skill:**
{
"name": "Text Summarizer",
"description": "Summarizes long text into concise summaries",
"type": "api",
"category": "text-processing",
"tags": ["summarization", "nlp", "text"],
"price": 0.0,
"license": "MIT",
"input_schema": {
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "Text to summarize"
},
"max_length": {
"type": "integer",
"description": "Maximum summary length",
"default": 100
}
},
"required": ["text"]
},
"output_schema": {
"type": "object",
"properties": {
"summary": {
"type": "string",
"description": "Generated summary"
},
"original_length": {
"type": "integer",
"description": "Original text length"
},
"summary_length": {
"type": "integer",
"description": "Summary length"
}
}
},
"code": "def execute(input):\n text = input['text']\n max_length = input.get('max_length', 100)\n # Summarization logic\n summary = text[:max_length] + '...'\n return {\n 'summary': summary,\n 'original_length': len(text),\n 'summary_length': len(summary)\n }"
}**Integration Skill Example:**
{
"name": "Slack Notifier",
"description": "Send notifications to Slack channels",
"type": "integration",
"category": "communication",
"tags": ["slack", "notifications", "messaging"],
"price": 0.0,
"license": "Apache-2.0",
"dependencies": [
{"name": "slack_sdk", "version": ">=3.0.0"}
],
"input_schema": {
"type": "object",
"properties": {
"channel": {
"type": "string",
"description": "Slack channel ID or name"
},
"message": {
"type": "string",
"description": "Message to send"
},
"webhook_url": {
"type": "string",
"description": "Slack webhook URL"
}
},
"required": ["channel", "message", "webhook_url"]
},
"output_schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "True if message sent successfully"
},
"timestamp": {
"type": "string",
"description": "ISO timestamp of message"
}
}
},
"code": "import requests\n\ndef execute(input):\n webhook_url = input['webhook_url']\n payload = {\n 'channel': input['channel'],\n 'text': input['message']\n }\n response = requests.post(webhook_url, json=payload)\n return {\n 'success': response.status_code == 200,\n 'timestamp': response.headers.get('Date', '')\n }"
}Agent Template Example
**Customer Support Agent:**
{
"name": "Customer Support Agent",
"description": "Handles customer inquiries across email and chat",
"category": "customer-service",
"tags": ["support", "customer-service", "helpdesk"],
"version": "2.1.0",
"maturity_level": "supervised",
"capabilities": [
"respond_to_inquiries",
"escalate_issues",
"lookup_orders",
"process_returns"
],
"skills": [
"text_understanding",
"sentiment_analysis",
"knowledge_base_search"
],
"integrations": [
"gmail",
"slack",
"salesforce"
],
"memory": {
"include": true,
"anonymize": true,
"retention_days": 90
},
"performance_metrics": {
"success_rate": 0.85,
"zero_intervention_ratio": 0.72,
"constitutional_compliance": 0.92
},
"configuration": {
"max_response_time": 300,
"escalation_threshold": 0.7,
"learning_enabled": true
}
}Canvas Template Example
**Dashboard Canvas:**
{
"name": "Sales Dashboard",
"description": "Comprehensive sales analytics dashboard",
"category": "dashboards",
"tags": ["sales", "analytics", "dashboard"],
"version": "1.0.0",
"layout": {
"type": "grid",
"columns": 3,
"rows": 4
},
"components": [
{
"id": "revenue_chart",
"type": "chart",
"position": {"row": 0, "col": 0, "rowspan": 2, "colspan": 2},
"data_source": "salesforce",
"query": "SELECT date, revenue FROM sales ORDER BY date DESC LIMIT 30",
"chart_type": "line"
},
{
"id": "kpi_cards",
"type": "kpi",
"position": {"row": 0, "col": 2, "rowspan": 1, "colspan": 1},
"metrics": [
{"label": "Total Revenue", "value": "${revenue_total}"},
{"label": "New Customers", "value": "${customers_count}"},
{"label": "Conversion Rate", "value": "${conversion_rate}%"}
]
},
{
"id": "recent_orders",
"type": "table",
"position": {"row": 2, "col": 0, "rowspan": 2, "colspan": 3},
"data_source": "salesforce",
"query": "SELECT order_id, customer, amount, status FROM orders ORDER BY created_at DESC LIMIT 10"
}
],
"data_sources": [
{
"name": "salesforce",
"type": "salesforce",
"placeholder": true
}
]
}---
Screenshot Placeholders
Marketplace Browse Screen
┌─────────────────────────────────────────────────────────────┐
│ ATOM Marketplace [Search...] │
├─────────────────────────────────────────────────────────────┤
│ │
│ [Agents] [Skills] [Canvases] [Domains] [Private] │
│ │
│ Filters: [Category ▼] [Type ▼] [Price ▼] [Rating ▼] │
│ │
│ ┌───────────────────────────────────────────────────────┐ │
│ │ Featured: Customer Support Agent │ │
│ │ ⭐⭐⭐⭐⭐ 4.8/5 | 1.2k installs | Free │ │
│ │ Handles customer inquiries across email and chat... │ │
│ │ [View Details] [Install] │ │
│ └───────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Data │ │ Email │ │ Slack │ │
│ │ Extractor │ │ Sender │ │ Notifier │ │
│ │ ⭐ 4.2 │ │ ⭐ 4.5 │ │ ⭐ 4.7 │ │
│ │ [Install] │ │ [Install] │ │ [Install] │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘Item Details Screen
┌─────────────────────────────────────────────────────────────┐
│ Data Extractor v1.3 [Rate] [Share] │
├─────────────────────────────────────────────────────────────┤
│ │
│ ⭐⭐⭐⭐ 4.2/5 | 45 reviews | 856 installs │
│ │
│ Extract structured data from unstructured text using NLP │
│ │
│ [Install Skill] [Try Demo] [View Code] │
│ │
│ Overview │
│ ───────────────────────────────────────────────────────── │
│ Type: API │
│ Category: Data Processing │
│ Publisher: DataTools Inc │
│ Version: 1.3 (Updated 2 days ago) │
│ Dependencies: None │
│ │
│ Input/Output Example │
│ ───────────────────────────────────────────────────────── │
│ Input: │
│ { │
│ "text": "Contact: john@example.com, phone: 555-1234", │
│ "fields": ["email", "phone"] │
│ } │
│ │
│ Output: │
│ { │
│ "extracted_data": { │
│ "email": "john@example.com", │
│ "phone": "555-1234" │
│ }, │
│ "confidence": 0.95 │
│ } │
│ │
│ Reviews (45) │
│ ───────────────────────────────────────────────────────── │
│ ⭐⭐⭐⭐⭐ "Excellent! Saved me hours of manual work." │
│ - Jane D., 2 days ago │
│ │
│ ⭐⭐⭐⭐ "Great accuracy, easy to use." │
│ - Mike S., 1 week ago │
│ │
└─────────────────────────────────────────────────────────────┘Installation Screen
┌─────────────────────────────────────────────────────────────┐
│ Install Customer Support Agent │
├─────────────────────────────────────────────────────────────┤
│ │
│ Review Installation Details │
│ ───────────────────────────────────────────────────────── │
│ │
│ Agent: Customer Support Agent v2.1 │
│ Publisher: Acme Corp │
│ Rating: ⭐⭐⭐⭐⭐ (4.8/5 from 120 reviews) │
│ │
│ Resource Impact: Medium │
│ - CPU: ~20% per active conversation │
│ - Memory: ~500MB │
│ - Storage: Included in plan │
│ │
│ Capabilities: │
│ ✓ Respond to customer inquiries │
│ ✓ Escalate complex issues │
│ ✓ Lookup order information │
│ ✓ Process returns and refunds │
│ │
│ Integrations Required: │
│ ✓ Gmail (already connected) │
│ ✓ Slack (needs connection) │
│ ⚠ Salesforce (optional) │
│ │
│ Plan Check: │
│ ✓ Free plan allows 3 agents (1 used, 2 available) │
│ ✓ Sufficient resources available │
│ │
│ Configuration: │
│ Name: [Customer Support Agent_________________] │
│ Initial Maturity: [Intern ▼] │
│ │
│ [Cancel] [Install Agent] │
│ │
└─────────────────────────────────────────────────────────────┘Publishing Screen
┌─────────────────────────────────────────────────────────────┐
│ Publish to Marketplace: Data Extractor │
├─────────────────────────────────────────────────────────────┤
│ │
│ 1. Basic Information │
│ ───────────────────────────────────────────────────────── │
│ Name: [Data Extractor_______________________] │
│ Description: [Extract structured data from text____] │
│ Category: [Data Processing ▼] │
│ Tags: [extraction, nlp, parsing__________] │
│ │
│ 2. Pricing │
│ ───────────────────────────────────────────────────────── │
│ Price: [Free ☑] [Paid $______] │
│ License: [MIT ▼] │
│ │
│ 3. Documentation │
│ ───────────────────────────────────────────────────────── │
│ Long Description: │
│ ┌────────────────────────────────────────────────────┐ │
│ │ # Data Extractor │ │
│ │ │ │
│ │ Extracts structured data from unstructured text │ │
│ │ using advanced NLP techniques. │ │
│ │ │ │
│ │ ## Features │ │
│ │ - Email extraction │ │
│ │ - Phone number extraction │ │
│ │ - Custom field extraction │ │
│ └────────────────────────────────────────────────────┘ │
│ │
│ 4. Preview │
│ ───────────────────────────────────────────────────────── │
│ Input Schema: ✓ Defined │
│ Output Schema: ✓ Defined │
│ Code: ✓ Valid Python │
│ Examples: ✓ Added │
│ │
│ [Save Draft] [Cancel] [Submit for Review]│
│ │
└─────────────────────────────────────────────────────────────┘---
Integration Examples
Webhook Integration
**Receive Marketplace Updates:**
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/webhook/marketplace', methods=['POST'])
def marketplace_webhook():
data = request.json
event_type = data.get('event_type')
item_id = data.get('item_id')
item_name = data.get('item_name')
if event_type == 'item.installed':
print(f"New installation of {item_name}!")
# Send notification, update metrics, etc.
elif event_type == 'item.rated':
rating = data.get('rating')
print(f"{item_name} received {rating} stars!")
# Process rating
elif event_type == 'item.updated':
version = data.get('version')
print(f"{item_name} updated to v{version}")
# Handle update
return jsonify({'status': 'received'}), 200
if __name__ == '__main__':
app.run(port=5000)Marketplace Analytics
**Track Installation Performance:**
import requests
import matplotlib.pyplot as plt
api_key = "atom_pub_YOUR_KEY_HERE"
headers = {"X-API-Key": api_key}
# Get your published items
response = requests.get(
"https://api.atomagentos.com/api/public/v1/marketplace/my-items",
headers=headers
)
items = response.json()['items']
# Analyze performance
for item in items:
name = item['name']
installs = item['install_count']
rating = item['average_rating']
reviews = item['review_count']
print(f"{name}:")
print(f" Installs: {installs}")
print(f" Rating: {rating}/5 ({reviews} reviews)")
print()
# Optional: Create visualization
plt.bar(name, installs)
plt.show()---
Troubleshooting
Installation Issues
**"Installation Failed" Error:**
- Check plan limits
- Verify compatibility
- Ensure sufficient resources
- Check required integrations
**"Already Installed" Message:**
- Check your installations
- Update existing version
- Uninstall before reinstalling
**"Insufficient Resources" Warning:**
- Upgrade plan
- Remove unused items
- Contact support
Publishing Issues
**"Submission Rejected" Message:**
- Review rejection reason
- Fix identified issues
- Resubmit
**"Pending Approval" Status:**
- Wait for review (1-2 business days)
- Check email for updates
- Contact support if delayed
**"Validation Failed" Error:**
- Check item requirements
- Fix validation errors
- Ensure documentation complete
Performance Issues
**Item Slow to Load:**
- Check internet connection
- Clear browser cache
- Try again later
- Report if persistent
**Item Not Working:**
- Check compatibility
- Review documentation
- Update to latest version
- Contact publisher
Billing Issues
**Unexpected Charges:**
- Review invoice details
- Check subscription items
- Cancel unwanted subscriptions
- Contact billing support
**Plan Upgrade Needed:**
- Review plan limits
- Compare plans
- Upgrade plan
- Install item after upgrade
Getting Help
**Support Resources:**
- **Documentation**: docs.atomagentos.com
- **Community**: community.atomagentos.com
- **Support**: support@atomagentos.com
- **Status**: status.atomagentos.com
**Contact Support:**
- Describe the issue
- Include steps to reproduce
- Attach screenshots (if applicable)
- Provide item name and version
---
Best Practices
For Publishers
**Quality:**
- Test thoroughly before publishing
- Include comprehensive documentation
- Provide clear examples
- Respond to reviews and feedback
**Updates:**
- Maintain items regularly
- Document changes in changelog
- Test updates before publishing
- Communicate with users
**Pricing:**
- Price competitively
- Offer free trials for complex items
- Provide value for cost
- Consider subscription vs. one-time
For Users
**Evaluation:**
- Read reviews before installing
- Check ratings and installation count
- Review documentation
- Test with free items first
**Installation:**
- Start with free items
- Install items gradually
- Monitor resource usage
- Uninstall unused items
**Feedback:**
- Rate items after use
- Provide constructive reviews
- Report issues to publishers
- Suggest improvements
---
Team Collaboration
ATOM provides comprehensive team collaboration features that enable multiple users to work together seamlessly within a shared workspace.
Team Members
**Roles and Permissions:**
| Role | Permissions | Description |
|---|---|---|
| **Owner** | Full access, billing management, team management | Primary account holder with complete control |
| **Admin** | Manage team, install items, configure settings | Can invite/remove members and manage resources |
| **Member** | Use agents, skills, canvases | Standard user access |
| **Viewer** | Read-only access | Can view but not execute or modify |
Inviting Team Members
**Send Invitation:**
- **Navigate to Team Settings**
- **Click "Invite Member"**
- Enter email address
- Select role (Admin, Member, Viewer)
- Add optional message
- Click "Send Invitation"
- **Invitation Email Sent**
- Recipient receives email with signup link
- Link pre-fills their information
- They create account and join team automatically
**Example Invitation:**
To: sarah@company.com
Subject: You're invited to join ACME Corp on ATOM
You've been invited to join ACME Corp's workspace on ATOM.
Click below to accept and get started:
[Accept Invitation]
You'll have Member access with full permissions to use agents,
skills, and collaborate with your team.Managing Invitations
**View Pending Invitations:**
- Go to **Settings → Team → Invitations**
- See all pending invitations with:
- Email address
- Role assigned
- Date sent
- Status (pending, accepted, expired)
- Expiration date (7 days from sending)
**Resend Invitation:**
If an invitation expires or the recipient didn't receive it:
- Find invitation in **Settings → Team → Invitations**
- Click **"Resend"** button
- Confirmation message: "Invitation resent to sarah@company.com"
- New expiration date: 7 days from resend
**Cancel Invitation:**
- Find invitation in pending list
- Click **"Cancel"**
- Confirm cancellation
- Invitation link becomes invalid
Team Member Management
**View Team Members:**
Settings → Team → MembersShows all active members with:
- Name and email
- Role
- Date joined
- Last active
- Status (active, inactive)
**Change Member Role:**
- Click member's row
- Select new role from dropdown
- Click "Save Changes"
- Member receives notification of role change
**Remove Team Member:**
- Click "Remove" next to member
- Confirm removal
- Member loses access immediately
- Their work is preserved (agents, episodes, etc.)
Team Features
**Shared Resources:**
- **Agents**: All team members can use shared agents
- **Skills**: Installed skills available to entire team
- **Canvases**: Collaborative canvas building and sharing
- **Episodes**: Shared episodic memory and learning
- **Integrations**: OAuth connections managed at team level
**Real-Time Collaboration:**
- See active team members
- Collaborate on canvases simultaneously
- Share agent executions and results
- Comment and discuss within the platform
**Activity Tracking:**
- Team activity feed shows recent actions
- See who executed which agent
- Track skill installations and usage
- Monitor resource consumption by team
Team Settings
**Workspace Configuration:**
Settings → Team → SettingsAvailable settings:
- **Workspace Name**: Your team/organization name
- **Default Role**: Role for new invited members
- **Notification Preferences**: Email notifications settings
- **Resource Limits**: Per-member quotas (if applicable)
Team Best Practices
**Onboarding New Members:**
- Send invitation with clear role expectations
- Share relevant documentation
- Provide training on key features
- Assign a buddy for first-week questions
**Managing Large Teams:**
- Use roles appropriately (limit Admins)
- Set up team guidelines and policies
- Regularly review member access
- Monitor resource usage and costs
**Security:**
- Remove former employees promptly
- Review active sessions regularly
- Use appropriate role assignments
- Enable two-factor authentication (coming soon)
**Collaboration Tips:**
- Share successful agent configurations
- Document team-specific workflows
- Use consistent naming conventions
- Hold regular knowledge-sharing sessions
Troubleshooting Team Issues
**Invitation Not Received:**
- Check spam folder
- Verify email address is correct
- Resend invitation from settings
- Contact support if issues persist
**Member Can't Access Resources:**
- Verify their role has appropriate permissions
- Check if they're using correct account
- Ensure they've accepted invitation
- Try removing and re-inviting if needed
**Need to Remove Inactive Members:**
- Review last active date in member list
- Remove members who haven't logged in 90+ days
- This frees up seats for your plan limit
**Exceeded Team Seat Limit:**
- Review plan limits in billing
- Remove inactive members
- Upgrade plan if needed
- Contact sales for enterprise teams
---
FAQ
**Q: Can I publish items for free?**
A: Yes! You can publish items for free or set a price.
**Q: Do I own items I install?**
A: You have a license to use installed items. See specific item license for details.
**Q: Can I customize installed items?**
A: Yes, installed items can be customized. Updates from publisher may override customizations.
**Q: How do I get support for an item?**
A: Contact the publisher for item-specific issues. Contact ATOM support for platform issues.
**Q: Can I share installed items with my team?**
A: Yes, items are shared across your organization/workspace.
**Q: What happens if I cancel a paid subscription?**
A: You can use the item until the end of the billing period, then it becomes unavailable.
**Q: Can I get a refund?**
A: Contact support for refund requests. Refunds evaluated case-by-case.
**Q: How are items reviewed?**
A: Items undergo automated validation and manual review for quality, security, and compliance.
---
Glossary
- **Agent**: AI assistant with learned capabilities and maturity levels (student, intern, supervised, autonomous)
- **Skill**: Basic composable unit - an individual tool or function that can be installed from the marketplace. Skills have safety levels (LOW_RISK, HIGH_RISK) and require admin approval for dangerous operations. Examples: Text summarization, Data extraction, API calls.
- **Capability**: Higher-level competency that combines multiple skills. Capabilities are organized into 4 domains (DATA_ANALYSIS, CODE_EXECUTION, INTEGRATIONS, REASONING) with domain-specific graduation thresholds and risk factors. Agents develop capabilities through training and experience.
- **Canvas**: Visual workflow builder
- **Domain**: Specialized knowledge area or capability domain (DATA_ANALYSIS, CODE_EXECUTION, INTEGRATIONS, REASONING)
- **Installation**: Adding a marketplace item to your workspace
- **Publishing**: Submitting an item to the marketplace
- **Rating**: User feedback score (1-5 stars)
- **Review**: Written feedback about an item
- **Subscription**: Recurring payment for paid items
- **Tenant**: Your organization/workspace in ATOM
---
Next Steps
- **Browse Marketplace**: Explore available items
- **Install First Item**: Get started with a free item
- **Publish Your Creation**: Share with the community
- **Join Community**: Connect with other users
---