Snak

by KasarLabs
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Allows agents to send notifications and alerts to Discord channels, particularly for autonomous monitoring mode.

  • Support for Google Gemini AI models to power agents that interact with and monitor the Starknet blockchain.

  • Provides a ready-to-use NestJS server with web interface for agent interaction and monitoring.

Un kit de herramientas para crear agentes de IA que puedan interactuar con la blockchain de Starknet. Disponible como paquete NPM y como servidor NestJS listo para usar con interfaz web. Compatible con múltiples proveedores de IA, como Anthropic, OpenAI, Google Gemini y Ollama.

Inicio rápido

Prerrequisitos

  • Cartera Starknet (recomendada: Argent X )
  • Clave API del proveedor de IA (Anthropic/OpenAI/Google Gemini/Ollama)
  • Node.js y pnpm instalados

Instalación

git clone https://github.com/kasarlabs/snak.git cd snak pnpm install

Configuración

  1. Crea un archivo .env :
# Starknet configuration (mandatory) STARKNET_PUBLIC_ADDRESS="YOUR_STARKNET_PUBLIC_ADDRESS" STARKNET_PRIVATE_KEY="YOUR_STARKNET_PRIVATE_KEY" STARKNET_RPC_URL="YOUR_STARKNET_RPC_URL" # AI Provider configuration (mandatory) AI_PROVIDER_API_KEY="YOUR_AI_PROVIDER_API_KEY" AI_MODEL="YOUR_AI_MODEL" AI_PROVIDER="YOUR_AI_PROVIDER" # NestJS server configuration SERVER_API_KEY="YOUR_SERVER_API_KEY" SERVER_PORT="YOUR_SERVER_PORT" #Node Configuration # optional by default : production NODE_ENV="YOUR_NODE_ENV" # Agent additional configuration POSTGRES_USER="YOUR_POSTGRES_USER" POSTGRES_PASSWORD="YOUR_POSTGRES_PASSWORD" POSTGRES_ROOT_DB="YOUR_POSTGRES_ROOT_DB" POSTGRES_HOST="YOUR_POSTGRES_HOST" POSTGRES_PORT="YOUR_POSTGRES_PORT"
  1. Crea tu agent.config.json
{ "name": "Your Agent name", "bio": "Your AI Agent Bio", "lore": ["Some lore of your AI Agent 1", "Some lore of your AI Agent 1"], "objectives": [ "first objective that your AI Agent need to follow", "second objective that your AI Agent need to follow" ], "knowledge": [ "first knowledge of your AI Agent", "second knowledge of your AI Agent" ], "interval": "Your agent interval beetween each transaction of the Agent in ms,", "chat_id": "Your Agent Chat-id for isolating memory", "autonomous": "Your agent is autonomous or not", "plugins": ["Your first plugin", "Your second plugin"], "mcpServers": { "nxp_server_example": { "command": "npx", "args": ["-y", "@npm_package_example/npx_server_example"], "env": { "API_KEY": "YOUR_API_KEY" } }, "local_server_example": { "command": "node", "args": ["node /path/to/local_server/dist/index.js"] } } }

Puede crear simplemente su propia configuración de agente utilizando nuestra herramienta en snakagent

Uso

Modo de aviso

Ejecute el mensaje:

# start with the default.agent.json pnpm run start # start with your custom configuration pnpm run start --agent="name_of_your_config.json"

Modo servidor

Ejecutar el servidor:

# start with the default.agent.json pnpm run start:server # start with your custom configuration pnpm run start:server --agent="name_of_your_config.json"

Modos disponibles

|Modo interactivo|Modo Autónomo| |---|---|---| |Modo de aviso|✅|✅| |Modo servidor|✅|❌|

Implementa Snak en tu proyecto

  1. Instalar el paquete snak
#using npm npm install @starknet-agent-kit # using pnpm pnpm add @starknet-agent-kit
  1. Crea tu instancia de agente
import { StarknetAgent } from 'starknet-agent-kit'; const agent = new StarknetAgent({ provider: new RpcProvider({ nodeUrl: process.env.STARKNET_RPC_URL }), accountPrivateKey: process.env.STARKNET_PRIVATE_KEY, accountPublicKey: process.env.STARKNET_PUBLIC_ADDRESS, aiModel: process.env.AI_MODEL, aiProvider: process.env.AI_PROVIDER, aiProviderApiKey: process.env.AI_PROVIDER_API_KEY, signature: 'key', agentMode: 'auto', agentconfig: y, }); const response = await agent.execute("What's my ETH balance?");

Comportamiento

Para obtener más información sobre las acciones, puede consultar esta sección de documentación . La interfaz completa del Kit ofrece un catálogo fácil de navegar con todos los complementos disponibles y sus acciones, lo que simplifica su descubrimiento y uso.

Para agregar acciones a su agente, puede seguir fácilmente la guía paso a paso aquí

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Licencia

Licencia MIT: consulte el archivo LICENCIA para obtener más detalles.


Para obtener documentación detallada, visite docs.kasar.io

-
security - not tested
A
license - permissive license
-
quality - not tested

Cree agentes de IA potentes y seguros impulsados por Starknet.

  1. Prerequisites
    1. Installation
      1. Configuration
        1. Usage
          1. Prompt Mode
          2. Server Mode
          3. Implement Snak in your project
        2. Actions
          1. Contributing
            1. License
              ID: fk0cmc0rul