Skip to content

theaibuilders/nosana_elizaos

Repository files navigation

Nosana x ElizaOS Agent Challenge

Build your own personal AI agent using ElizaOS and deploy it on the Nosana decentralized compute network. Win a share of $3,000 USDC in prizes.


The Challenge

Inspired by OpenClaw — the self-hosted personal AI movement — this challenge is about giving AI back to the individual. Build an agent that runs on your own infrastructure, handles your own tasks, and keeps your own data.

Theme: Personal AI Agents — Build an AI agent that acts as a personal assistant, automate your life, or solve a real problem for yourself or your community. The use case is entirely up to you.

Framework: ElizaOS (v1.7.2)
Compute: Nosana decentralized GPU network
Model: DeepSeek-R1-Distill-Qwen-7B (hosted endpoint provided by Nosana)


Prizes — $3,000 USDC Total

Place Prize
🥇 1st $1,000 USDC
🥈 2nd $750 USDC
🥉 3rd $450 USDC
4th $200 USDC
5th–10th $100 USDC each

Schedule

Activity Date
Teaser March 19, 2026
Official Announcement & Start March 25, 2026
Live Workshop (David & Denis) March 26, 2026 — 19:00 CET · Register
Eliza x Nosana Live Session March 31 / April 1, 2026 · Register
Builders Challenge Singapore Workshop April 2, 2026 · Register
Germany Buidl Station (Live Workshop) April 2–3, 2026 · Register
Challenge Ends April 14, 2026
Winner Announcement April 23, 2026

What to Build

There are no strict requirements on use case — build whatever is most useful to you. Some ideas to get started:

  • 🗂️ Personal assistant — calendar, tasks, email drafting, reminders
  • 🔍 Research agent — web search, summarization, knowledge synthesis
  • 📱 Social media manager — Twitter/X, Telegram, Discord automation
  • 💰 DeFi/crypto agent — portfolio monitoring, on-chain alerts, trading insights
  • 🏠 Home automation — smart home control, IoT integration
  • 🛠️ DevOps helper — monitor services, automate deployments
  • 🎨 Content creator — blog posts, social copy, creative writing

Tip: ElizaOS has a rich plugin ecosystem. Explore existing plugins and templates before building from scratch — you might find 80% of what you need already exists.


Getting Started

Prerequisites

  • Node.js 18+ (Node.js 23+ recommended)
  • pnpm (npm install -g pnpm)
  • Ollama (for local embeddings)
  • Docker (for deployment)
  • Git

Quick Start

# Fork this repo, then clone your fork
git clone https://github.com/YOUR-USERNAME/agent-challenge
cd agent-challenge
git checkout elizaos-challenge

# Install dependencies
pnpm install

# Pull the embedding model for Ollama
ollama pull nomic-embed-text

# Start Ollama (in a separate terminal)
ollama serve

# Start your agent in development mode
pnpm dev

Open http://localhost:3000 to see the ElizaOS built-in client.


Configuration

Environment Variables

Create a .env file in the project root with the following configuration:

# Model name
MODEL_NAME=DeepSeek-R1-Distill-Qwen-7B

# OpenAI plugin settings (using Nosana endpoint)
OPENAI_API_KEY=nosana
OPENAI_BASE_URL=https://<your-nosana-endpoint>.node.k8s.prd.nos.ci/v1
OPENAI_SMALL_MODEL=DeepSeek-R1-Distill-Qwen-7B
OPENAI_LARGE_MODEL=DeepSeek-R1-Distill-Qwen-7B

# Use local Ollama for embeddings (Nosana doesn't support embeddings)
OPENAI_EMBEDDING_URL=http://localhost:11434/v1
OPENAI_EMBEDDING_MODEL=nomic-embed-text
OPENAI_EMBEDDING_DIMENSIONS=768

# Server port
SERVER_PORT=3000

Note: The Nosana endpoint URL will be shared in the Nosana Discord when the challenge starts.

Why Local Embeddings?

The Nosana LLM endpoint provides text generation capabilities but does not support embedding generation. This template uses Ollama running locally with the nomic-embed-text model (768 dimensions) for embedding generation. This hybrid approach allows you to:

  • Use Nosana's decentralized compute for LLM inference
  • Generate embeddings locally for memory and knowledge features

Customize Your Agent

1. Define your agent's character

Edit characters/agent.character.json to define your agent's personality, knowledge, and behavior:

{
  "name": "MyAgent",
  "username": "myagent",
  "plugins": [
    "@elizaos/plugin-bootstrap",
    "@elizaos/plugin-openai"
  ],
  "settings": {
    "model": "DeepSeek-R1-Distill-Qwen-7B",
    "modelProvider": "openai",
    "secrets": {
      "OPENAI_API_KEY": "nosana",
      "OPENAI_BASE_URL": "https://<your-nosana-endpoint>.node.k8s.prd.nos.ci/v1"
    }
  },
  "system": "Your agent's core instructions and behavior",
  "bio": ["Your agent's backstory and capabilities"]
}

2. Add plugins

Extend your agent by adding plugins to package.json and your character file:

Plugin Use Case
@elizaos/plugin-bootstrap Required base plugin
@elizaos/plugin-openai OpenAI-compatible LLM (required for Nosana endpoint)
@elizaos/plugin-web-search Web search capability
@elizaos/plugin-telegram Telegram bot client
@elizaos/plugin-discord Discord bot client
@elizaos/plugin-twitter Twitter/X integration
@elizaos/plugin-browser Browser/web automation
@elizaos/plugin-sql Database access

Install a plugin:

pnpm add @elizaos/plugin-web-search

Add it to your character file:

{
  "plugins": ["@elizaos/plugin-bootstrap", "@elizaos/plugin-openai", "@elizaos/plugin-web-search"]
}

3. Build custom actions (optional)

Add your own custom logic in src/index.ts. The file exports a plugin that can contain custom actions, providers, and evaluators.

4. Persistent storage

SQLite is configured by default — sufficient for development and small-scale agents. For a production-grade personal agent, consider:

  • A mounted volume on Nosana
  • External database (PostgreSQL, PlanetScale, etc.)
  • Decentralized storage (Arweave, IPFS)

Deploy to Nosana

Step 1: Build and push your Docker image

# Build
docker build -t yourusername/nosana-eliza-agent:latest .

# Test locally
docker run -p 3000:3000 --env-file .env yourusername/nosana-eliza-agent:latest

# Push to Docker Hub
docker login
docker push yourusername/nosana-eliza-agent:latest

Step 2: Update the job definition

Edit nos_job_def/nosana_eliza_job_definition.json and replace yourusername/nosana-eliza-agent:latest with your image.

Step 3: Deploy via Nosana Dashboard

  1. Open Nosana Dashboard
  2. Click Expand to open the job definition editor
  3. Paste the contents of nos_job_def/nosana_eliza_job_definition.json
  4. Select your preferred compute market
  5. Click Deploy

Step 4: Deploy via Nosana CLI

npm install -g @nosana/cli

nosana job post \
  --file ./nos_job_def/nosana_eliza_job_definition.json \
  --market nvidia-3090 \
  --timeout 30

Submission

  1. Fork this repo and build your agent on the elizaos-challenge branch
  2. Deploy it to Nosana and get your public URL
  3. Submit via the official submission form before April 14, 2026

Your submission must include:

  • Link to your public GitHub fork
  • Your Nosana deployment URL (running agent)
  • A short description of your agent and what it does (≤300 words)
  • A video demo (≤3 minutes) showing the agent in action

Judging Criteria

Criterion Weight
Technical implementation (ElizaOS + Nosana integration) 30%
Usefulness / real-world applicability 30%
Creativity and originality 20%
Code quality and documentation 20%

Judges: DevRel Lead & Ecosystem Specialist, Nosana


Project Structure

├── characters/
│   └── agent.character.json   # Your agent's character definition
├── src/
│   └── index.ts               # Custom plugin entry point (optional)
├── nos_job_def/
│   └── nosana_eliza_job_definition.json  # Nosana deployment config
├── Dockerfile                 # Container configuration
├── .env                       # Environment variables (create from example)
└── package.json

Troubleshooting

Common Issues

"The model gpt-4o does not exist"

  • Ensure OPENAI_SMALL_MODEL and OPENAI_LARGE_MODEL are set in your .env file to match the Nosana model name.

Embedding errors

  • Make sure Ollama is running (ollama serve)
  • Verify nomic-embed-text model is installed (ollama pull nomic-embed-text)
  • Check that OPENAI_EMBEDDING_URL points to http://localhost:11434/v1

Embedding dimension mismatch

  • Set OPENAI_EMBEDDING_DIMENSIONS=768 in your .env file (nomic-embed-text uses 768 dimensions)

Resources

ElizaOS

Nosana

DeepSeek


Support & Community

  • Discord — Join Nosana Discord for support, the Nosana endpoint URL, and to connect with other builders
  • Twitter/X — Follow @nosana_ai and @elizaos for updates
  • GitHub — Open an issue in this repo if you find problems with the template

License

This template is open source and available under the MIT License.


Built with ElizaOS · Deployed on Nosana · Powered by DeepSeek-R1-Distill-Qwen-7B

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors