⚡ Open source · Early access

The language of
intelligent agents

A purpose-built DSL for defining, orchestrating, and shipping AI agent workflows. Readable syntax, multi-model support, runs anywhere.

Try the Editor → View on GitHub
triage.ll
# Define an agent that triages GitHub issues
agent IssueTriager {
  model:  "claude-sonnet-4"
  budget: 50 # max LLM calls before forcing a decision

  skills: [github, notify]

  on issue_opened(issue: Issue) {
    let analysis = analyze(issue.body)

    match analysis.priority {
      "critical" → github.label(issue, "P0")
                  → notify.slack("#oncall", issue)
      "high"     → github.label(issue, "P1")
      _          → github.label(issue, "needs-triage")
    }
  }
}

Why llanguage

Built for the agent era

Everything you need to build reliable, observable AI agent workflows without the boilerplate.

🧠

Purpose-built syntax

A DSL designed specifically for agent orchestration — not a library bolted onto an existing language. Reads like intent, not plumbing.

🔌

Plugin ecosystem

Connect to any API, MCP server, or service with a simple plugin definition. GitHub, Slack, AWS, and more — built-in and community-contributed.

🤖

Multi-model support

Target any LLM provider — Anthropic, OpenAI, local models — and switch without rewriting your agent logic.

💡

Visual editor

Write, validate, and run agents in your browser. Live parse errors, spec conformance checking, and instant feedback.

🛡️

Budget guardrails

Set hard limits on LLM calls, token spend, and tool invocations per agent run — so a runaway loop never surprises your bill.

🚀

Deploy anywhere

A single compiled binary. Run on your laptop, in CI, as a Lambda, or inside a Docker container — no runtime dependencies.

From idea to running agent in minutes

1

Define your agent

Write a .ll file. Declare your model, skills, and workflow logic in a clean, readable syntax.

2

Validate & test

Run ll validate for instant spec conformance. Use the visual editor for live feedback.

3

Run it

Execute with ll run agent.ll. Pass inputs via --input key=value flags or compose agents with imports.

4

Ship it

Embed the ll binary in any CI/CD pipeline, container, or serverless function.

Extend LL with Plugins

LL ships with a growing library of community plugins — each one built by the plugin-builder agent itself, documented, and published automatically.

🐙

GitHub

Search repos, read files, open issues and pull requests, and react to webhooks — all from LL agents.

official
💬

Slack

Post messages, create channels, and listen for Slack events inside any LL workflow.

official
🔌

Your Plugin Here

The plugin-builder.ll agent researches gaps, designs a plugin spec, writes the implementation, updates the registry, and opens a PR — hands-free.

community

Browse the full registry → plugins/registry.json  ·  Build your own with examples/plugin-builder.ll

Ready to build?

Start with the visual editor — no install required. Or clone the repo and run your first agent in five minutes.

Open the Editor → Star on GitHub ⭐