nexus

module
v0.0.0-...-c7587b1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 7, 2026 License: MIT

README

Nexus

CI codecov Go Version License

Nexus is a multi-channel AI agent gateway written in Go. It connects messaging platforms to LLM providers with tool execution, semantic memory, and MCP (Model Context Protocol) support.

Why Nexus?

  • Unified Interface - One codebase to manage AI conversations across all your messaging platforms
  • Provider Agnostic - Swap between Claude, GPT-4, Gemini without changing your bot logic
  • MCP Native - First-class support for Model Context Protocol servers
  • Semantic Memory - Vector-based memory with OpenAI/Ollama embeddings
  • Production Ready - Built for scale with CockroachDB, Kubernetes-native, and comprehensive observability

Features

Messaging Channels
Channel Status Features
Telegram Stable Long polling, webhooks, inline keyboards, media handling
Discord Stable Slash commands, threads, rich embeds, guild management
Slack Stable Socket Mode, Block Kit, app mentions, thread replies
Microsoft Teams Beta Microsoft Graph integration (polling + optional webhooks)
Mattermost Beta WebSocket events, channels + DMs, threads
Nextcloud Talk Beta Webhook receiver, room messaging
Matrix Beta Room messaging, E2E encryption support
WhatsApp Alpha Business API integration
Signal Alpha Signal Protocol messaging
Zalo Alpha Bot API integration (polling + optional webhooks)
BlueBubbles (iMessage) Alpha Webhook receiver, attachments (BlueBubbles server)
iMessage (local) Alpha macOS-only, local Messages DB access
LLM Providers
  • Anthropic - Claude Sonnet 4, Claude Opus 4, with tool use
  • OpenAI - GPT-4o, GPT-4 Turbo, with function calling
  • Google - Gemini Pro, Gemini Ultra
  • OpenRouter - Access to 100+ models through unified API
  • Azure OpenAI - Azure-hosted OpenAI deployments
  • Amazon Bedrock - Anthropic/Meta/Mistral models via Bedrock
  • Ollama (local) - Run local models without API keys
  • Copilot Proxy - Route requests through a GitHub Copilot proxy
Tool Capabilities
  • Web Search - SearXNG-powered web search with content extraction
  • Browser Automation - Playwright-based web browsing and scraping
  • Memory Search - Semantic search across conversation history
  • Document RAG - Upload and search documents with document_upload/document_search
  • Link Understanding - Extract, summarize, and inject link context
  • Code Sandbox - Docker-based execution (default) with optional Firecracker microVM backend (Linux-only)
  • Voice Transcription - OpenAI Whisper for audio message processing
Edge Clients
  • nexus-edge daemon - Local tool execution for devices (camera, screen, shell, browser relay)
  • macOS companion - LaunchAgent-based edge service with rich SwiftUI menu bar UI (see docs/macos-client.md)
MCP Integration

Full Model Context Protocol support:

  • Stdio & HTTP transports - Connect to any MCP server
  • Tool aggregation - Expose MCP tools to LLM providers
  • Resource access - Read MCP resources into context
  • Prompt templates - Use MCP prompts in conversations
  • Sampling - Handle MCP sampling requests
Memory & Context
  • Vector Memory - SQLite-vec, LanceDB, or pgvector backends
  • Embedding Providers - OpenAI, Ollama (local)
  • Vector Memory Tools - vector_memory_search and vector_memory_write with scoped recall and auto-indexing
  • Conversation Summarization - Automatic context compaction
  • Context Augmentation - Optional RAG + link summaries injected into system prompts
  • Tool Policies - Fine-grained allow/deny rules per tool
  • Multi-Agent - Supervisor, router, and handoff orchestration patterns
Infrastructure
  • gRPC Streaming - Real-time bidirectional communication
  • CockroachDB - Distributed SQL for horizontal scaling
  • Full Persistence - Conversation history with vector embeddings
  • OAuth + API Keys - Flexible authentication for users and services
  • Web Dashboard - htmx-powered UI for session management

Architecture

┌─────────────────────────────────────────────────────────────────────────────┐
│                              Messaging Clients                               │
│  ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐        │
│  │Telegram│ │Discord │ │ Slack  │ │ Matrix │ │WhatsApp│ │ gRPC   │        │
│  └───┬────┘ └───┬────┘ └───┬────┘ └───┬────┘ └───┬────┘ └───┬────┘        │
└──────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────────┘
       └──────────┴──────────┴────┬─────┴──────────┴──────────┘
                                  ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│                           Gateway Server                                     │
│  ┌─────────────────────────────────────────────────────────────────────┐   │
│  │  Channel Registry → Message Router → Rate Limiter → Session Resolver│   │
│  └─────────────────────────────────────────────────────────────────────┘   │
│                                    │                                        │
│                                    ▼                                        │
│  ┌─────────────────────────────────────────────────────────────────────┐   │
│  │                        Agent Runtime                                 │   │
│  │  • Context packing & summarization                                   │   │
│  │  • Tool policy enforcement                                           │   │
│  │  • Concurrent tool execution                                         │   │
│  │  • Streaming response handling                                       │   │
│  └─────────────────────────────────────────────────────────────────────┘   │
│           │                        │                        │              │
│           ▼                        ▼                        ▼              │
│  ┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐        │
│  │  LLM Providers  │    │  Tool Executor  │    │   MCP Manager   │        │
│  │  ├─ Anthropic   │    │  ├─ WebSearch   │    │  ├─ Stdio       │        │
│  │  ├─ OpenAI      │    │  ├─ Browser     │    │  ├─ HTTP        │        │
│  │  ├─ Google      │    │  └─ MemSearch   │    │  └─ Tools/Res   │        │
│  │  └─ OpenRouter  │    └─────────────────┘    └─────────────────┘        │
│  └─────────────────┘                                                       │
└─────────────────────────────────────────────────────────────────────────────┘
                                     │
                                     ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│                              Data Layer                                      │
│  ┌──────────────────┐  ┌──────────────────┐  ┌──────────────────┐          │
│  │   CockroachDB    │  │   SQLite-vec     │  │  Object Storage  │          │
│  │  • Sessions      │  │  • Embeddings    │  │  • Attachments   │          │
│  │  • Messages      │  │  • Memory index  │  │  • Screenshots   │          │
│  │  • Users/Keys    │  │                  │  │                  │          │
│  └──────────────────┘  └──────────────────┘  └──────────────────┘          │
└─────────────────────────────────────────────────────────────────────────────┘

Quick Start

Prerequisites
  • Go 1.24+
  • Docker (for CockroachDB and optional services)
  • A bot token for at least one messaging platform
  • Windows users: run via WSL2 (see docs/platforms/windows.md)
Installation
git clone https://github.com/haasonsaas/nexus.git
cd nexus

go mod download
go build -o bin/nexus ./cmd/nexus
Database Setup
# Start CockroachDB (single node for development)
docker run -d --name cockroach \
  -p 26257:26257 -p 8080:8080 \
  cockroachdb/cockroach:v23.2.0 start-single-node --insecure

# Create database and run migrations
docker exec cockroach cockroach sql --insecure -e "CREATE DATABASE nexus;"
./bin/nexus migrate up
Configuration
cp nexus.example.yaml nexus.yaml

Minimal configuration:

server:
  host: 0.0.0.0
  grpc_port: 50051
  http_port: 8080

database:
  url: postgres://root@localhost:26257/nexus?sslmode=disable

llm:
  default_provider: anthropic
  providers:
    anthropic:
      api_key: ${ANTHROPIC_API_KEY}
      default_model: claude-sonnet-4-20250514

channels:
  telegram:
    enabled: true
    bot_token: ${TELEGRAM_BOT_TOKEN}
Running
./bin/nexus serve

Configuration Reference

LLM Providers
llm:
  default_provider: anthropic
  providers:
    anthropic:
      api_key: ${ANTHROPIC_API_KEY}
      default_model: claude-sonnet-4-20250514

    openai:
      api_key: ${OPENAI_API_KEY}
      default_model: gpt-4o

    azure:
      api_key: ${AZURE_OPENAI_API_KEY}
      base_url: https://your-resource.openai.azure.com
      api_version: ${AZURE_OPENAI_API_VERSION}
      default_model: gpt-4o-deployment

    bedrock:
      default_model: anthropic.claude-3-sonnet-20240229-v1:0

    openrouter:
      api_key: ${OPENROUTER_API_KEY}
      default_model: anthropic/claude-3.5-sonnet

    copilot-proxy:
      base_url: http://localhost:3000/v1
      default_model: gpt-5.2

    # Optional local Ollama provider
    # ollama:
    #   base_url: http://localhost:11434
    #   default_model: llama3
memory:
  enabled: true
  backend: sqlite-vec
  dimension: 1536  # Must match embedding model

  sqlite_vec:
    path: ./data/memory.db

  embeddings:
    provider: openai  # or: ollama
    api_key: ${OPENAI_API_KEY}
    model: text-embedding-3-small

    # For Ollama:
    # provider: ollama
    # ollama_url: http://localhost:11434
    # model: nomic-embed-text

  indexing:
    auto_index_messages: true
    min_content_length: 10
    batch_size: 100

  search:
    default_limit: 10
    default_threshold: 0.7
    default_scope: session  # or: user, global
MCP Servers
mcp:
  enabled: true
  servers:
    - id: filesystem
      name: Filesystem Access
      transport: stdio
      command: npx
      args: ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/dir"]
      auto_start: true

    - id: github
      name: GitHub
      transport: stdio
      command: npx
      args: ["-y", "@modelcontextprotocol/server-github"]
      env:
        GITHUB_TOKEN: ${GITHUB_TOKEN}
Tool Policies
tools:
  policies:
    default: allow  # or: deny
    rules:
      - tool: browser
        action: deny
        channels: [telegram]  # Deny browser in Telegram
      - tool: websearch
        action: allow
RAG (Document Indexing)
rag:
  enabled: true
  store:
    backend: pgvector
    use_database_url: true
    dimension: 1536
  embeddings:
    provider: openai
    api_key: ${OPENAI_API_KEY}
    model: text-embedding-3-small
  context_injection:
    enabled: true
    max_chunks: 5
    max_tokens: 2000
tools:
  links:
    enabled: true
    max_links: 5
    max_output_chars: 2000
    timeout_seconds: 30
    models:
      - type: cli
        command: link-understand
        args: ["--url", "{{LinkUrl}}"]
Session Behavior
session:
  default_agent_id: main
  slack_scope: thread    # thread or channel
  discord_scope: thread  # thread or channel

  # Automatic summarization
  summarization:
    enabled: true
    threshold_messages: 50
    threshold_tokens: 8000
    max_summary_length: 500
Workspace Files

Nexus can read context from workspace files:

workspace:
  enabled: true
  path: ./workspace
  agents_file: AGENTS.md    # Agent definitions
  soul_file: SOUL.md        # Personality/system prompt
  user_file: USER.md        # User preferences
  identity_file: IDENTITY.md
  tools_file: TOOLS.md      # Tool-specific instructions
  memory_file: MEMORY.md    # Persistent notes

CLI Commands

# Server
nexus serve                    # Start the gateway
nexus serve --config custom.yaml

# Setup & Diagnostics
nexus doctor --config nexus.yaml           # Validate config
nexus doctor --repair --config nexus.yaml  # Fix issues
nexus doctor --probe --config nexus.yaml   # Test channel connectivity
nexus setup --workspace ./mybot            # Bootstrap workspace files

# Onboarding
nexus onboard --config nexus.yaml          # Guided setup wizard
nexus profile init prod --provider anthropic --use
nexus auth set --provider anthropic --api-key $KEY

# Database
nexus migrate up       # Run migrations
nexus migrate down     # Rollback
nexus migrate status   # Show status

# Channels & Agents
nexus channels list    # List configured channels
nexus channels status  # Connection status
nexus agents list      # List agents

# Debug
nexus prompt --config nexus.yaml --session-id test --channel slack

Development

Project Structure
nexus/
├── cmd/nexus/              # CLI entry point
├── internal/
│   ├── agent/              # LLM orchestration & runtime
│   │   ├── context/        # Context packing & summarization
│   │   └── providers/      # Anthropic, OpenAI, Google, OpenRouter
│   ├── channels/           # Channel adapters
│   │   ├── telegram/       # Telegram (stable)
│   │   ├── discord/        # Discord (stable)
│   │   ├── slack/          # Slack (stable)
│   │   ├── matrix/         # Matrix (beta)
│   │   ├── whatsapp/       # WhatsApp (alpha)
│   │   ├── signal/         # Signal (alpha)
│   │   └── imessage/       # iMessage (alpha)
│   ├── mcp/                # MCP client & manager
│   ├── memory/             # Vector memory
│   │   ├── backend/        # SQLite-vec, LanceDB, pgvector
│   │   └── embeddings/     # OpenAI, Ollama providers
│   ├── media/              # Media processing
│   │   └── transcribe/     # Whisper voice transcription
│   ├── multiagent/         # Multi-agent orchestration
│   ├── tools/              # Tool implementations
│   │   ├── browser/        # Playwright automation
│   │   ├── websearch/      # SearXNG integration
│   │   ├── memorysearch/   # Semantic memory search
│   │   ├── sandbox/        # Code execution (Docker default; optional Firecracker backend)
│   │   └── policy/         # Tool access control
│   ├── web/                # Web UI dashboard
│   ├── sessions/           # Session & message persistence
│   ├── gateway/            # gRPC server
│   └── config/             # Configuration loading
├── pkg/
│   ├── models/             # Shared types
│   ├── proto/              # gRPC definitions
│   └── pluginsdk/          # Plugin development SDK
├── deployments/
│   ├── kubernetes/         # K8s manifests
│   └── docker/             # Docker Compose
└── examples/
    └── plugins/echo/       # Example plugin

Plugins and manifests: see docs/plugins.md.

Testing
go test ./...                          # Unit tests
go test -cover ./...                   # With coverage

# Integration tests
NEXUS_DOCKER_TESTS=1 go test ./...     # Requires Docker
NEXUS_BROWSER_TESTS=1 go test ./...    # Requires Playwright
Building
# Development
go build -o bin/nexus ./cmd/nexus

# Production with version info
go build -ldflags "-X main.version=$(git describe --tags)" -o bin/nexus ./cmd/nexus

# Cross-compile
GOOS=linux GOARCH=amd64 go build -o bin/nexus-linux-amd64 ./cmd/nexus

Deployment

Docker Compose
cd deployments/docker
docker-compose up -d
Kubernetes
kubectl apply -k deployments/kubernetes/

See docs/deployment.md for complete instructions.

Systemd
sudo cp bin/nexus /usr/local/bin/
sudo cp deployments/systemd/nexus.service /etc/systemd/system/
sudo systemctl enable --now nexus

API Reference

gRPC
service NexusGateway {
  rpc Stream(stream ClientMessage) returns (stream ServerMessage);
  rpc CreateSession(CreateSessionRequest) returns (Session);
  rpc GetSession(GetSessionRequest) returns (Session);
  rpc ListSessions(ListSessionsRequest) returns (ListSessionsResponse);
}
REST
GET  /health          # Health check
GET  /metrics         # Prometheus metrics
POST /api/v1/send     # Send message
GET  /api/v1/sessions # List sessions

Monitoring

Prometheus metrics at /metrics:

  • nexus_requests_total - RPC requests by method/status
  • nexus_request_duration_seconds - Latency histogram
  • nexus_llm_tokens_total - Token usage by provider
  • nexus_tool_executions_total - Tool execution counts
  • nexus_active_sessions - Active session gauge
  • nexus_channel_messages_total - Messages by channel
  • nexus_memory_searches_total - Memory search operations

Roadmap

Completed
  • Sandbox code execution - Docker backend (default) with optional Firecracker microVM backend (Linux-only)
  • LanceDB vector backend - Fast, embedded vector storage
  • pgvector backend - PostgreSQL-native vectors for CockroachDB/Postgres
  • Voice message transcription - OpenAI Whisper integration
  • Multi-agent orchestration - Supervisor, router, and handoff patterns
  • Web UI for session management - htmx + Go templates dashboard
  • Plugin marketplace - Ed25519-verified plugin installation with CLI
  • Scheduled tasks - Cron-based agent triggers with distributed locking
  • RAG pipelines - Document parsing, chunking, and semantic retrieval
  • Agent templates - YAML+Markdown format with variable substitution
  • Conversation branching - Fork, merge, and compare conversation paths
  • Analytics dashboard - Usage metrics and conversation insights
Planned
  • Mobile app - React Native client for iOS/Android
  • Streaming responses - Real-time token streaming to messaging channels
  • Custom tools SDK - Plugin development kit for external tools
  • Workflow builder - Visual agent workflow designer

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

See CONTRIBUTING.md for guidelines.

License

MIT License - see LICENSE for details.

Acknowledgments

Directories

Path Synopsis
cmd
nexus command
Package main provides the CLI entry point for the Nexus multi-channel AI gateway.
Package main provides the CLI entry point for the Nexus multi-channel AI gateway.
nexus-edge command
Package main provides the nexus-edge daemon.
Package main provides the nexus-edge daemon.
internal
agent
Package agent provides the core runtime and abstractions for LLM-powered agent workflows.
Package agent provides the core runtime and abstractions for LLM-powered agent workflows.
agent/context
Package context provides context management for agent conversations.
Package context provides context management for agent conversations.
agent/providers
Package providers implements LLM provider integrations for the Nexus agent framework.
Package providers implements LLM provider integrations for the Nexus agent framework.
agent/tape
Package tape provides recording and replay capabilities for agent conversations.
Package tape provides recording and replay capabilities for agent conversations.
agents
Package agents provides shared agent functionality including context window management.
Package agents provides shared agent functionality including context window management.
agents/heartbeat
Package heartbeat provides heartbeat functionality with active hours support.
Package heartbeat provides heartbeat functionality with active hours support.
artifacts
Package artifacts provides storage and management for tool-produced artifacts.
Package artifacts provides storage and management for tool-produced artifacts.
attention
Package attention provides a unified attention layer that aggregates items from multiple channels (email, Teams, ServiceNow, etc.) into a single feed.
Package attention provides a unified attention layer that aggregates items from multiple channels (email, Teams, ServiceNow, etc.) into a single feed.
audit
Package audit provides structured audit logging for agent actions, tool invocations, and permission decisions.
Package audit provides structured audit logging for agent actions, tool invocations, and permission decisions.
auth
Package auth provides authentication services including edge daemon authentication.
Package auth provides authentication services including edge daemon authentication.
backoff
Package backoff provides exponential backoff utilities with jitter for retry logic.
Package backoff provides exponential backoff utilities with jitter for retry logic.
channels
Package channels provides channel activity tracking.
Package channels provides channel activity tracking.
channels/chunk
Package chunk provides utilities for splitting outbound text into platform-sized chunks without breaking on newlines or inside code fences.
Package chunk provides utilities for splitting outbound text into platform-sized chunks without breaking on newlines or inside code fences.
channels/context
Package context provides delivery context and formatting utilities for channel adapters.
Package context provides delivery context and formatting utilities for channel adapters.
channels/email
Package email provides a Microsoft Graph Email channel adapter for Nexus.
Package email provides a Microsoft Graph Email channel adapter for Nexus.
channels/personal
Package personal provides shared types and interfaces for personal messaging channels.
Package personal provides shared types and interfaces for personal messaging channels.
channels/signal
Package signal provides a Signal channel adapter using signal-cli.
Package signal provides a Signal channel adapter using signal-cli.
channels/teams
Package teams provides a Microsoft Teams channel adapter for Nexus.
Package teams provides a Microsoft Teams channel adapter for Nexus.
channels/utils
Package utils provides shared utilities for channel adapters.
Package utils provides shared utilities for channel adapters.
channels/whatsapp
Package whatsapp provides a WhatsApp channel adapter using whatsmeow.
Package whatsapp provides a WhatsApp channel adapter using whatsmeow.
clipboard
Package clipboard provides cross-platform clipboard utilities.
Package clipboard provides cross-platform clipboard utilities.
commands
Package commands provides the health command for system status checks.
Package commands provides the health command for system status checks.
compaction
Package compaction provides context compaction utilities for managing conversation history within token budgets.
Package compaction provides context compaction utilities for managing conversation history within token budgets.
context
Package context provides context window management for LLM conversations.
Package context provides context window management for LLM conversations.
daemon
Package daemon provides service configuration auditing for nexus gateway services.
Package daemon provides service configuration auditing for nexus gateway services.
debounce
Package debounce provides utilities for batching and debouncing messages.
Package debounce provides utilities for batching and debouncing messages.
edge
Package edge provides the edge daemon management system for Nexus.
Package edge provides the edge daemon management system for Nexus.
edge/nodetools
Package nodetools provides edge-executable tools for node capabilities.
Package nodetools provides edge-executable tools for node capabilities.
exec
Package exec provides executable safety validation utilities.
Package exec provides executable safety validation utilities.
format
Package format provides formatting utilities.
Package format provides formatting utilities.
gateway
Package gateway provides the main Nexus gateway server.
Package gateway provides the main Nexus gateway server.
hooks
Package hooks provides an event-driven hook system for agent events.
Package hooks provides an event-driven hook system for agent events.
identity
Package identity provides cross-channel identity linking functionality.
Package identity provides cross-channel identity linking functionality.
infra
Package infra provides exec approval infrastructure for command execution control.
Package infra provides exec approval infrastructure for command execution control.
links
Package links provides link understanding capabilities for extracting and processing URLs from messages.
Package links provides link understanding capabilities for extracting and processing URLs from messages.
markdown
Package markdown provides utilities for processing markdown content, including table conversion for channels that don't support markdown tables.
Package markdown provides utilities for processing markdown content, including table conversion for channels that don't support markdown tables.
marketplace
Package marketplace provides plugin marketplace functionality for Nexus.
Package marketplace provides plugin marketplace functionality for Nexus.
mcp
Package mcp provides a Model Context Protocol (MCP) client implementation.
Package mcp provides a Model Context Protocol (MCP) client implementation.
media
Package media provides utilities for handling media files including MIME type detection, extension mapping, and size limits.
Package media provides utilities for handling media files including MIME type detection, extension mapping, and size limits.
media/transcribe
Package transcribe provides audio transcription capabilities using various providers.
Package transcribe provides audio transcription capabilities using various providers.
memory
Package memory provides vector-based semantic memory search.
Package memory provides vector-based semantic memory search.
memory/backend
Package backend provides storage backend interfaces and implementations for the vector memory system.
Package backend provides storage backend interfaces and implementations for the vector memory system.
memory/backend/lancedb
Package lancedb provides a vector storage backend using LanceDB.
Package lancedb provides a vector storage backend using LanceDB.
memory/backend/pgvector
Package pgvector provides a vector storage backend using PostgreSQL with pgvector extension.
Package pgvector provides a vector storage backend using PostgreSQL with pgvector extension.
memory/backend/sqlitevec
Package sqlitevec provides a vector storage backend using SQLite with the vec0 extension.
Package sqlitevec provides a vector storage backend using SQLite with the vec0 extension.
memory/embeddings
Package embeddings provides interfaces and implementations for embedding providers.
Package embeddings provides interfaces and implementations for embedding providers.
memory/embeddings/ollama
Package ollama provides an embedding provider using Ollama's local models.
Package ollama provides an embedding provider using Ollama's local models.
memory/embeddings/openai
Package openai provides an embedding provider using OpenAI's embedding models.
Package openai provides an embedding provider using OpenAI's embedding models.
models
Package models provides a catalog of LLM models and their capabilities.
Package models provides a catalog of LLM models and their capabilities.
multiagent
Package multiagent provides subagent registry for tracking child agent runs.
Package multiagent provides subagent registry for tracking child agent runs.
net/ssrf
Package ssrf provides utilities for validating URLs and IP addresses to prevent Server-Side Request Forgery (SSRF) attacks.
Package ssrf provides utilities for validating URLs and IP addresses to prevent Server-Side Request Forgery (SSRF) attacks.
nodes
Package nodes provides the node management subsystem for Nexus.
Package nodes provides the node management subsystem for Nexus.
observability
Package observability provides diagnostic event types and emission.
Package observability provides diagnostic event types and emission.
outbound
Package outbound provides utilities for formatting outbound delivery results.
Package outbound provides utilities for formatting outbound delivery results.
pairing
Package pairing provides secure device pairing with one-time codes for authenticating new users on messaging channels.
Package pairing provides secure device pairing with one-time codes for authenticating new users on messaging channels.
plugins
Package plugins provides a plugin system with lifecycle hooks.
Package plugins provides a plugin system with lifecycle hooks.
policy
Package policy provides send policy and group activation handling.
Package policy provides send policy and group activation handling.
process
Package process provides command queue management for serializing command executions across multiple lanes.
Package process provides command queue management for serializing command executions across multiple lanes.
providers/bedrock
Package bedrock provides AWS Bedrock model discovery and management utilities.
Package bedrock provides AWS Bedrock model discovery and management utilities.
providers/venice
Package venice provides a Venice AI API provider for the nexus agent system.
Package venice provides a Venice AI API provider for the nexus agent system.
provisioning
Package provisioning provides utilities for managing Nexus configuration.
Package provisioning provides utilities for managing Nexus configuration.
rag/chunker
Package chunker provides text chunking interfaces and implementations for the RAG (Retrieval-Augmented Generation) system.
Package chunker provides text chunking interfaces and implementations for the RAG (Retrieval-Augmented Generation) system.
rag/context
Package context provides utilities for injecting RAG-retrieved documents into agent conversation context.
Package context provides utilities for injecting RAG-retrieved documents into agent conversation context.
rag/index
Package index provides the index manager for the RAG system.
Package index provides the index manager for the RAG system.
rag/parser
Package parser provides document parsing interfaces and implementations for the RAG (Retrieval-Augmented Generation) system.
Package parser provides document parsing interfaces and implementations for the RAG (Retrieval-Augmented Generation) system.
rag/parser/markdown
Package markdown provides a parser for Markdown documents with frontmatter support.
Package markdown provides a parser for Markdown documents with frontmatter support.
rag/parser/text
Package text provides a parser for plain text documents.
Package text provides a parser for plain text documents.
rag/store
Package store provides document storage interfaces and implementations for the RAG (Retrieval-Augmented Generation) system.
Package store provides document storage interfaces and implementations for the RAG (Retrieval-Augmented Generation) system.
rag/store/pgvector
Package pgvector provides a document store implementation using PostgreSQL with pgvector extension.
Package pgvector provides a document store implementation using PostgreSQL with pgvector extension.
ratelimit
Package ratelimit provides rate limiting for API requests, channels, and users.
Package ratelimit provides rate limiting for API requests, channels, and users.
reply
Package reply provides utilities for detecting and handling reply tokens.
Package reply provides utilities for detecting and handling reply tokens.
retry
Package retry provides utilities for retrying operations with configurable backoff strategies.
Package retry provides utilities for retrying operations with configurable backoff strategies.
security
Package security provides security audit capabilities for runtime configuration and filesystem permission validation.
Package security provides security audit capabilities for runtime configuration and filesystem permission validation.
sessions
Package sessions provides session storage and management.
Package sessions provides session storage and management.
shell
Package shell provides bash process management for tracking shell sessions.
Package shell provides bash process management for tracking shell sessions.
skills
Package skills provides a skill system for extending agent capabilities with specialized knowledge, workflows, and tools.
Package skills provides a skill system for extending agent capabilities with specialized knowledge, workflows, and tools.
status
Package status provides rich status message building following the clawdbot pattern.
Package status provides rich status message building following the clawdbot pattern.
tasks
Package tasks implements scheduled task execution for Nexus agents.
Package tasks implements scheduled task execution for Nexus agents.
templates
Package templates provides agent templates for quickly creating new agents with predefined configurations, prompts, and tool setups.
Package templates provides agent templates for quickly creating new agents with predefined configurations, prompts, and tool setups.
testharness
Package testharness provides compatibility test utilities including golden file snapshot testing and behavioral test fixtures.
Package testharness provides compatibility test utilities including golden file snapshot testing and behavioral test fixtures.
tools/naming
Package naming provides canonical tool naming and collision detection.
Package naming provides canonical tool naming and collision detection.
tools/policy
Package policy provides tool authorization and access control.
Package policy provides tool authorization and access control.
tools/rag
Package rag provides RAG (Retrieval-Augmented Generation) tools for agents.
Package rag provides RAG (Retrieval-Augmented Generation) tools for agents.
tools/reminders
Package reminders provides tools for setting and managing reminders.
Package reminders provides tools for setting and managing reminders.
tools/sandbox/firecracker
Package firecracker provides a Firecracker microVM-based sandbox backend for secure code execution.
Package firecracker provides a Firecracker microVM-based sandbox backend for secure code execution.
tools/sandbox/firecracker/guest-agent command
Package main implements the guest agent that runs inside Firecracker microVMs.
Package main implements the guest agent that runs inside Firecracker microVMs.
tools/security
Package security provides security utilities for analyzing and validating tool inputs.
Package security provides security utilities for analyzing and validating tool inputs.
tools/servicenow
Package servicenow provides tools for interacting with ServiceNow.
Package servicenow provides tools for interacting with ServiceNow.
tools/subagent
Package subagent provides tools for spawning and managing sub-agents.
Package subagent provides tools for spawning and managing sub-agents.
tools/system
Package system provides system-level tools for health, usage, and diagnostics.
Package system provides system-level tools for health, usage, and diagnostics.
tts
Package tts provides text-to-speech functionality with multiple provider support.
Package tts provides text-to-speech functionality with multiple provider support.
typing
Package typing provides a typing indicator controller for managing typing state during async reply processing.
Package typing provides a typing indicator controller for managing typing state during async reply processing.
usage
Package usage provides formatting utilities for usage data.
Package usage provides formatting utilities for usage data.
voice
Package voice provides telephony integration for voice calls.
Package voice provides telephony integration for voice calls.
web
Package web provides the HTTP dashboard UI for Nexus.
Package web provides the HTTP dashboard UI for Nexus.
pkg
models
Package models provides domain types for the Nexus agent system.
Package models provides domain types for the Nexus agent system.
pluginsdk
Package pluginsdk provides the plugin SDK for Nexus plugins.
Package pluginsdk provides the plugin SDK for Nexus plugins.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL