Loom is a Go framework for building autonomous LLM agent threads with natural language agent creation,
pattern-guided learning, and multi-agent orchestration. It includes:
- Natural language agent creation via the weaver meta-agent
- Multi-agent orchestration with 6 workflow patterns
- 90+ reusable patterns across 16 domains
- 8 LLM provider integrations (Anthropic, Bedrock, OpenAI, etc.)
- Multi-modal support (vision, document parsing)
- Built-in judge evaluation system with DSPy integration
- Self-improving agents with pattern proposal capabilities
- Real-time streaming and complete observability
README
Loom
A Go framework for building autonomous LLM agent threads with natural language agent creation, pattern-guided learning, autonomous agent improvement, and multi-agent orchestration.
Version: v1.0.1
> Note: Loom is in active development. Expect frequent updates, new features, and improvements. The API is stabilizing but may have minor changes as we refine the framework based on user feedback.
Quality Metrics (verified 2026-01-08):
2252+ test functions across 244 test files
73 packages with test coverage
0 race conditions (all tests run with -race detector)
Critical packages: patterns 81.7%, communication 77.9%, fabric 79.2%
What is Loom?
Loom lets you create AI agent threads by describing what you need in plain English. No coding required for basic use - just tell Loom what you want:
# Connect to the weaver agent
loom --thread weaver
# Then describe what you need:
# "Analyze PostgreSQL slow queries and suggest indexes"
# The weaver:
# 1. Analyzes your requirements
# 2. Selects appropriate patterns and tools
# 3. Generates complete YAML configuration
# 4. Activates the agent thread
Loom is also a complete Go framework for building agent threads programmatically, with pattern-guided learning, real-time streaming, and observability.
Why Loom?
Feature
What It Does
Natural Language Creation
Describe what you need to the weaver, get a working agent in ~30 seconds
Judge Evaluation System
Multi-judge evaluation with 6 aggregation strategies and streaming support
Vision analysis (analyze_image) and document parsing (parse_document) (works in progress!)
Unlike prompt-engineering approaches, Loom uses pattern-guided learning where domain knowledge is encoded as reusable YAML patterns. This makes agent threads more reliable, testable, and maintainable. Users of loom can write their own patterns in plain english to make loom agents into specialized domain experts.
Getting Started
Prerequisites
Go 1.25+
One of: Anthropic API key, AWS Bedrock access, Ollama installed, OpenAI API key, etc.
Automated Installation (Recommended)
Fastest way to get started - The automated installer handles everything:
macOS / Linux
# Clone and run quickstart
git clone https://github.com/teradata-labs/loom
cd loom
./quickstart.sh
Windows
# Clone and run quickstart (PowerShell)
git clone https://github.com/teradata-labs/loom
cd loom
.\quickstart.ps1
# If you get "Running scripts is disabled on this system":
powershell -ExecutionPolicy Bypass -File .\quickstart.ps1
# Install latest tagged release
go install github.com/teradata-labs/loom/cmd/loom@latest
go install github.com/teradata-labs/loom/cmd/looms@latest
# Or install from specific version
go install github.com/teradata-labs/loom/cmd/loom@v1.0.1
go install github.com/teradata-labs/loom/cmd/looms@v1.0.1
# Note: You'll need to manually install patterns for the weaver to work
just install-patterns
Windows Package Managers (Coming Soon- Under Review by scoop, winget, and chocolatey)
Once published, Windows users will be able to install via package managers:
Package manifests are available in packaging/windows/. See docs/installation/WINDOWS.md for manual installation.
macOS Package Manager (Coming Soon)
# Homebrew (once tap is published)
brew tap teradata-labs/loom
brew install loom loom-server
# Or install directly from URL
brew install https://raw.githubusercontent.com/teradata-labs/loom/main/packaging/macos/homebrew/loom-server.rb
Current Status: Formulas are ready in packaging/macos/homebrew/. Use automated installer or manual build for now.
Quick Start
# 1. Set your LLM provider credentials
export ANTHROPIC_API_KEY="your-key" # or configure Bedrock/Ollama/OpenAI
# 2. Start the Loom server
looms serve # gRPC on :60051, HTTP/REST on :5006
# 3. Access Swagger UI for API docs
open http://localhost:5006/swagger-ui
# 4. Or use the TUI client
loom --thread weaver
# Then type: "Create a code review assistant that checks for security issues"
# 5. Connect to your newly created thread
loom --thread code-review-assistant
API Access:
gRPC: localhost:60051 (native protocol)
HTTP/REST: http://localhost:5006 (REST API + SSE streaming)
Swagger UI: http://localhost:5006/swagger-ui (interactive API docs)
OpenAPI Spec: http://localhost:5006/openapi.json
Core Components
Weaver (Meta-Agent)
The weaver transforms natural language into fully-configured agents:
# Connect to the weaver agent
loom --thread weaver
# Then describe what you need:
# "Analyze PostgreSQL performance and suggest optimizations"
# "Create a workflow for monitoring API endpoints"
# "Add error handling and retry logic to my existing agent"
The weaver:
Analyzes requirements to determine domain and capabilities
Selects optimal patterns from the library
Generates complete YAML configuration
Validates the configuration
Activates the agent thread
Multi-Agent Orchestration
6 workflow patterns for coordinating agent teams (defined in proto/loom/v1/orchestration.proto):
Pattern
Description
Use Case
Pipeline
Sequential execution, output flows to next stage
ETL, multi-step analysis
Parallel
Independent tasks execute concurrently
Batch processing
Fork-Join
Parallel execution with merged results
Aggregation, consensus
Debate
Agents argue different perspectives
Decision making, validation
Conditional
Route based on agent decisions
Branching workflows
Swarm
Dynamic agent collaboration
Complex problem solving
Additional collaboration patterns in pkg/collaboration/:
Teacher-Student
Pair Programming
Judge Evaluation System
Multi-judge evaluation with configurable aggregation strategies:
Loom includes a feature-rich terminal UI (loom) based on charmbracelet's excellent TUI framework, bubbletea with Crush-inspired visual design and aesthetics:
Visual Design
Crush-style theming: Orange/green color scheme with proper visual hierarchy
Multi-agent support: Unlimited agents with distinct colors (6 predefined + golden ratio color generation)
Message separators: Visual dividers between messages for clarity
Responsive layout: Adapts to terminal size with proper padding