π€ Autonomous AI Agents β’ πΈ Real-Time Settlements β’ π ISO 20022 Integration
π Live Demo β’ π Explorer β’ π Docs β’ π¬ Discord
Demonstrating autonomous agent payments, ISO 20022 settlements, and cross-chain resource access in production.
Artemis is a decentralized agentic commerce framework built on SynapticChain that enables autonomous AI agents to:
- Discover & transact with resources using machine-readable pricing (pacs.008 invoices)
- Settle payments on-chain using the cTZS token (testnet stablecoin)
- Access protected resources via payment-gated APIs
- Register & earn as service providers in the agent marketplace
| Feature | Traditional APIs | Artemis |
|---|---|---|
| Authentication | API keys, OAuth | π Cryptographic signatures |
| Payment | Credit cards, subscriptions | β‘ Instant on-chain settlements |
| Pricing | Human-readable docs | π Machine-readable ISO 20022 |
| Trust | Centralized platforms | π Decentralized blockchain |
| Agent Support | Limited/manual | π€ Native autonomous operation |
|
|
|
|
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β π Next.js Dashboard β
β (synradix.xyz - Vercel) β
β ββββββββββββββββββββ ββββββββββββββββββββ β
β β Artemis Dashboardβ βEcosystem Dashboardβ β
β β - Network stats β β - Agent registry β β
β β - Settlements β β - Industry flows β β
β β - Contracts β β - Live metrics β β
β ββββββββββββββββββββ ββββββββββββββββββββ β
ββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββ
β REST API + SSE
βΌ
βββββββββββββββββββββββββββββββββββ
β βοΈ Artemis Gateway (Python) β
β - FastAPI + CORS β
β - Metrics aggregation β
β - Demo orchestration β
βββββββββββ¬ββββββββββββββββββββββββ
β
ββββββββββββ΄βββββββββββ
β β
βΌ βΌ
ββββββββββββββββ ββββββββββββββββββββ
β βοΈ SynapticChainβ β π Resource Serverβ
β RPC Node β β (payment-gated) β
β - Settlementsβ β - pacs.008 β
β - Contracts β β - Weather API β
ββββββββββββββββ ββββββββββββββββββββ
# Required
β Node.js 18+ and npm
β Python 3.11+
β Git# 1. Clone the repository
git clone https://github.com/Synaptics-Lab/Artemis.git
cd Artemis
# 2. Install frontend dependencies
npm install
# 3. Setup Python environment
cd gateway
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
cd ..
# 4. Configure environment
cp .env.example .env
# Edit .env with your API keys|
Terminal 1: Gateway cd gateway
python main.pyβ
Gateway running on |
Terminal 2: Dashboard npm run devβ
Dashboard running on |
- Open Dashboard: Navigate to
http://localhost:3000 - Mint Agent Key: Click "Mint Sandbox Key" in the dashboard
- Run Demo: Click "RUN AGENT" to see an autonomous agent transaction
- Explore API: Try
curl http://localhost:8080/api/config
- Agents mint credentials via
/api/sandbox/key - Discover resources through
/api/invoice(pacs.008 pricing) - Submit signed payment proofs to unlock gated content
- All settlements recorded on-chain
- pacs.008 - Customer credit transfers (agent β merchant invoices)
- Machine-readable pricing with settlement token addresses
- Merchant balance snapshots for proof-of-payment verification
- Artemis Dashboard: Network status, contract monitoring, transaction ledger
- Ecosystem Dashboard: Agent registry, industry-specific flows, settlement metrics
| Contract | Address | Purpose |
|---|---|---|
| cTZS Token | syn1m89njq75czpm5vasxc0qsznyr69ylulne40fqt |
Testnet stablecoin |
| AgentRegistry | syn1jzazxgra9lnku60ysj6qqgyjaph9a7r5uwcrcn |
Agent identity |
| AgenticEscrow | syn1s6aag66yxdzpl5qtts06yexmddqn8cz40tgr9x |
Payment framework |
artemis-agentic-commerce/
βββ π¨ app/ # Next.js 16 app router
β βββ api/ # API route proxies to gateway
β βββ ecosystem/ # Ecosystem dashboard page
β βββ page.tsx # Main Artemis dashboard
βββ π§© components/
β βββ artemis-dashboard.tsx # Main dashboard component
β βββ ecosystem-dashboard.tsx # Ecosystem metrics view
β βββ ui/ # Radix UI primitives
βββ βοΈ gateway/
β βββ main.py # FastAPI gateway server
β βββ runner.py # Demo orchestration
β βββ vrf.py # VRF proof endpoints
βββ π resource-server/
β βββ server.py # Mock payment-gated API
βββ π οΈ cli/
β βββ artemis_cli/ # Python CLI package
β βββ pyproject.toml
βββ π lib/
β βββ api.ts # Frontend API client
β βββ gateway-config.ts # Shared gateway config
βββ π public/ # Static assets
| Endpoint | Method | Description |
|---|---|---|
/api/config |
GET | Network configuration & contract addresses |
/api/status |
GET | Network status (checkpoint height, TPS, nodes) |
/api/contracts/status |
GET | Contract operational status |
/api/ledger |
GET | Recent transactions (paginated) |
/api/sandbox/key |
POST | Mint sandbox agent credentials |
/api/sandbox/agents |
GET | List registered agents |
/api/run-demo |
GET | Run agent demo with SSE stream |
/api/ecosystem/metrics |
GET | Live ecosystem metrics (JSONL stream) |
/api/invoice |
GET | Fetch pacs.008 invoice from resource server |
- POST
/api/weather- Payment-gated weather data- Requires
X-Payment-Signature,X-Agent-Signature,X-Agent-Pubkeyheaders - Validates payment proof against merchant balance
- Returns JSON weather data or 402 Payment Required
- Requires
vercel --prodRequired env vars:
|
docker build -t artemis .
docker run -p 3000:3000 artemisExposed ports:
|
sudo cp *.service /etc/systemd/system/
sudo systemctl enable artemis-gateway
sudo systemctl start artemis-gatewayServices:
|
# Frontend
npm test
# Gateway
cd gateway
pytest
# CLI
cd cli
pytest# Frontend
npm run build
# CLI
cd cli
pip install build
python -m build| Variable | Default | Description |
|---|---|---|
SYNAPTIC_RPC |
http://100.73.33.37:8545 |
SynapticChain RPC endpoint |
RESOURCE_SERVER_URL |
http://127.0.0.1:8765 |
Resource server URL |
EXPLORER_BASE |
https://explorer.synapticchain.xyz |
Block explorer URL |
PORT |
8080 |
Gateway listening port |
HOST |
0.0.0.0 |
Gateway bind address |
| Variable | Default | Description |
|---|---|---|
GATEWAY_URL |
https://api.synapticchain.xyz |
Gateway API URL |
SYNAPTIC_API_KEY |
- | API key for gateway access |
NEXT_PUBLIC_API_BASE_URL |
- | Public API base URL override |
# Gateway health
curl https://api.synapticchain.xyz/health
# Network status
curl https://api.synapticchain.xyz/api/statusThe gateway exposes real-time metrics at:
/api/ecosystem/metrics- JSONL stream of agent activity/api/ecosystem/state- Current agent registry state
- β
Never commit
.envfiles or API keys to git - β Use environment variables for all secrets
- β Rotate API keys regularly
- β Use HTTPS in production
- β Enable rate limiting on public endpoints
Gateway 520 Errors (SSE Streaming)
Issue: Cloudflare tunnels may have issues with Server-Sent Events (SSE).
Solutions:
- Expose gateway on a public IP with nginx
- Use polling instead of SSE for
/api/run-demo - Use a different tunnel provider (ngrok, localtunnel)
Contract Address Mismatch
Issue: Contract addresses don't match between gateway and RPC.
Solution: Update contracts/production/addresses.json and restart gateway.
Agent Settlement Failures
Issue: Payment proofs not validating.
Checklist:
- β Agent has sufficient cTZS balance
- β Invoice hasn't expired (
expires_at) - β Merchant balance snapshot matches current state
- β Signature correctly signs
merchant:amount:invoice_id
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'feat: Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see LICENSE for details.
| Resource | Link |
|---|---|
| π Live Dashboard | synradix.xyz |
| π Explorer | explorer.synapticchain.xyz |
| π Documentation | docs.synapticchain.xyz |
| π¬ Discord | discord.gg/synapticchain |
| π GitHub | github.com/Synaptics-Lab |
For questions or support:
- π Open an issue on GitHub Issues
- π¬ Join our Discord
- π§ Email: dev@synapticchain.xyz