Skip to main content
Glama

Un motor de agentes para crear agentes de IA potentes y seguros, impulsado por Starknet. Disponible como paquete NPM y como backend listo para usar.

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. Cree un archivo .env copiando .env.example :

cp .env.example .env

Luego, completa los valores necesarios en tu 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 Model API Keys (mandatory) --- # Add the API keys for the specific AI providers you use in config/models/default.models.json # The agent will automatically load the correct key based on the provider name. # Example for OpenAI: OPENAI_API_KEY="YOUR_OPENAI_API_KEY" # (e.g., sk-...) # Example for Anthropic: ANTHROPIC_API_KEY="YOUR_ANTHROPIC_API_KEY" # (e.g., sk-ant-...) # Example for Google Gemini: GEMINI_API_KEY="YOUR_GEMINI_API_KEY" # Example for DeepSeek: DEEPSEEK_API_KEY="YOUR_DEEPSEEK_API_KEY" # Note: You do not need an API key if using a local Ollama model. # --- General Agent Configuration (mandatory) --- SERVER_API_KEY="YOUR_SERVER_API_KEY" # A secret key for your agent server API SERVER_PORT="3001" # --- PostgreSQL Database Configuration (mandatory) --- POSTGRES_USER="admin" POSTGRES_PASSWORD="admin" POSTGRES_ROOT_DB="postgres" # Database used to create/manage the application database POSTGRES_HOST="localhost" POSTGRES_PORT="5454" # --- LangSmith Tracing (Optional) --- # Set LANGSMITH_TRACING=true to enable tracing LANGSMITH_TRACING=false LANGSMITH_ENDPOINT="https://api.smith.langchain.com" LANGSMITH_API_KEY="YOUR_LANGSMITH_API_KEY" # (Only needed if LANGSMITH_TRACING=true) LANGSMITH_PROJECT="Snak" # (Optional project name for LangSmith) # --- Node Environment --- NODE_ENV="development" # "development" or "production"
  1. Configurar modelos de IA (opcional): El archivo config/models/default.models.json define los modelos de IA predeterminados que se utilizan para diferentes tareas ( fast , smart , cheap ). Puede personalizar este archivo o crear nuevas configuraciones de modelo (p. ej., my_models.json ) y especificarlas al ejecutar el agente. Consulte config/models/example.models.json para ver la estructura.

    El agente utiliza el campo provider en la configuración del modelo para determinar qué clave API cargar desde el archivo .env (por ejemplo, si provider es openai , carga OPENAI_API_KEY ).

  2. Cree su archivo de configuración del agente (por ejemplo, default.agent.json o my_agent.json ) en el directorio config/agents/ :

{ "name": "Your Agent name", "group": "Your Agent group", "description": "Your AI Agent Description", "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,", "chatId": "Your Agent Chat-id for isolating memory", "maxIterations": "The number of iterations your agent will execute before stopping", "mode": "The mode of your agent, can be interactive, autonomous or hybrid", "memory": { "enabled": "true or false to enable or disable memory", "shortTermMemorySize": "The number of messages your agent will remember" }, "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

Related MCP server: AgentCraft MCP Server

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" --models="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" --models="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 @snakagent # using pnpm pnpm add @snakagent
  1. Crea tu instancia de agente

import { SnakAgent } from 'starknet-agent-kit'; const agent = new SnakAgent({ 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: 'interactive', 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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/KasarLabs/snak'

If you have feedback or need assistance with the MCP directory API, please join our Discord server