Product
Introducing Harness Builder
What is Harness Builder?
Harness Builder is the workflow engine at the heart of Skylence. It lets you define multi-step AI agent workflows using the .sky language — a lightweight format built around four Unicode delimiters that mark meta, node config, prompt, and doc blocks.
Instead of wiring together LLM calls, tool uses, and branching logic in Python or TypeScript, you describe the what and Skylence handles the how.
Why we built it
Every team we talked to had the same problem: they could get a prototype working in a weekend, but turning it into something reliable enough to run in production took months. Error handling, retries, cost controls, observability — all of that had to be built from scratch.
Harness Builder makes those things first-class. Budget limits, isolation modes, and output styles are configuration, not code.
| Hobby Studio Agency Enterprise | |
|---|---|
| Workflows | 3 25 Unlimited Unlimited |
| Node executions / mo | 500 10,000 100,000 Unlimited |
| Budget controls | |
| Worktree isolation | |
| GitHub triggers | |
| Custom models | |
| Team seats | 1 3 10 Unlimited |
| Priority support | 48h email 24h email Slack instant |
How it works
A .sky workflow file has four block types:
- meta — name, description, trigger config, secrets, output style
- node config — model selection, effort level, dependencies, budget
- prompt — the actual instructions sent to the model
- doc — optional inline documentation
Nodes can depend on each other. The runtime resolves the dependency graph and executes in parallel where possible.
Define
Describe the workflow in a .sky file
⊕meta⊕
name = "triage-issue"
description = "Triage an incoming GitHub issue"
trigger.github.events = ["issues.opened"]
secrets = ["GITHUB_TOKEN"]
⊕⊕ Configure
Set model, budget, and isolation per node
§plan§
model = "opus"
effort = "high"
max_budget_usd = 0.5
isolation = "worktree"
§§ Run
Trigger it from the CLI
sky run triage-issue --var issue.number=42 What’s next
Harness Builder is available now in early access. Sign up at skylence.be to get started.
import { Harness } from '@skylence/harness';
const harness = new Harness({
workflow: 'triage-issue.sky',
budgetUsd: 0.5,
});
const result = await harness.run({
issue: { number: 42 },
});
console.log(result.summary); | Node type | Purpose | Status |
|---|---|---|
| http | Fetch data over HTTP | Stable |
| llm | Call a model with a prompt | Stable |
| worktree | Isolated filesystem run | Beta |