Go reference implementation of the Weblisk agent server and orchestrator.
Weblisk Server provides a multi-agent orchestration platform built on the Weblisk protocol. An orchestrator coordinates specialised agents — SEO analysis, entity context, observation/feedback, and business strategy — communicating over HTTP JSON with Ed25519 signature verification and token-based auth.
This is a sample reference implementation for Go. Additional implementations for other platforms will follow.
main.go — Entry point (orchestrator vs agent dispatch)
internal/
protocol/
types.go — All protocol types + path constants
identity.go — Ed25519 crypto, tokens, signing
helpers.go — Shared HTTP + utility helpers
orchestrator/
orchestrator.go — Central coordination server
agent/
base.go — Agent base framework (protocol endpoints)
agents/
seo.go — SEO rule engine agent
context.go — Entity knowledge store agent
observer.go — Measurement and feedback agent
strategy.go — Business strategy conductor agent
provider/
provider.go — LLM provider abstraction (OpenAI, Anthropic, Ollama, Cloudflare)
memory/
store.go — Persistent .weblisk/ storage
workspace/
workspace.go — Workspace file scanning with path traversal protection
# Build
make build
# Start orchestrator (default port 9800)
./weblisk-server
# Start agents (each in a separate terminal)
./weblisk-server agent seo
./weblisk-server agent context
./weblisk-server agent observer
./weblisk-server agent strategyweblisk-server Start the orchestrator (port 9800)
weblisk-server agent <name> Start a named agent
weblisk-server version Print version
weblisk-server help Show usage
Agents:
seo SEO rule engine (default port 9710)
context Entity knowledge store (default port 9700)
observer Measurement and feedback (default port 9720)
strategy Business strategy (default port 9730)
Flags:
--port PORT Override default port
--orch URL Orchestrator URL (default: http://localhost:9800)
--root DIR Workspace root (default: current directory)
All endpoints are under the /v1 prefix:
| Path | Method | Description |
|---|---|---|
/v1/describe |
GET | Agent manifest |
/v1/execute |
POST | Execute a task |
/v1/health |
GET | Health status |
/v1/message |
POST | Inter-agent messaging |
/v1/services |
POST | Service directory broadcast |
/v1/register |
POST | Agent registration (orchestrator) |
/v1/task |
POST | Task routing (orchestrator) |
/v1/channel |
POST | Channel grant |
/v1/audit |
GET | Audit log (orchestrator) |
/v1/strategy |
GET/POST | Strategy management |
/v1/observations |
GET/POST | Observation storage |
/v1/context |
GET/POST | Entity context |
See weblisk-blueprints for the core protocol specification.
Configure via environment variables:
| Variable | Description |
|---|---|
WL_AI_PROVIDER |
openai, anthropic, ollama, cloudflare, or custom |
WL_AI_KEY |
API key |
WL_AI_MODEL |
Model name (defaults per provider) |
WL_AI_BASE_URL |
Custom base URL (required for cloudflare/custom) |
# Run tests
make test
# Lint (go vet)
make lint
# Test coverage
make coverage
# Cross-compile for all platforms
make cross# Single platform
make build
# All platforms (linux, darwin, windows × amd64, arm64)
make cross
# Binaries output to dist/