Stringers
HarnessRouter/harnessrouter · HarnessRouter

An open-source project gets 4222 stars in three months: how the "harness version of OpenRouter" HarnessRouter got pushed up

What it is An open-source unified interface that lets your product call 30 agents such as Codex, Claude Code, and DeepSeek Harness through one API, with a hosted cloud sold on top.

Why it caught on It rode the rise of "harness engineering" as a buzzword, grabbed the instantly understandable positioning "harness version of OpenRouter", invented an "open protocol" as the news hook, then pushed up the stars with resources from a veteran YC team and AI-explainer accounts that kept promoting it.

CHow you can play it Don't build another unified harness API head-on; instead, ride its traffic by filling the parts around it that are still empty (UHP clients in other languages, adapters for a given harness, a lightweight local-only version), or apply its playbook (new buzzword + analogy positioning + a self-invented standard + big-account demo posts pushing stars) to your own direction.

Grade C: the position is already held by HarnessRouter and the earlier Rivet. Its stars mainly came from the YC background, old Product Hunt accounts, and sustained big-account promotion, which followers can't replicate; the buzzword has also been hot for over two months. Learning the whole star-getting method and copying it is not worth it. Circulating in small circles
Data (updated daily) · Repo created 2026-08-09 · 4,282 stars · 7 days +482
GitHub · stars
2k3k4k09-2510-1610-2410-3111-084.3k
Data 2026-09-25 → 2026-11-08 (45 days, 31 observations). Points before 10-28 come from deeply / archive backfill, not every day has one

HarnessRouter wraps 30 agent runtimes, including Codex, Claude Code, Hermes, and DeepSeek Harness, into one API. The repo was created in Aug 9, and by Nov 6 4222 it had 465 forks. Its star curve is almost exactly the posting schedule of a few X big-account posts. Anyone wanting their open-source project to gain stars can learn a complete playbook from it, but building another in the same spot has little chance.

A post with 137k views

On Oct 24, 2026, AI educator Avi Chawla posted on X with the opener "Insane Grok @bot upgrade!": Grok Bot can now hand tasks off to different agent harnesses. "Devs just open-sourced HarnessRouter," followed by a list of Codex, Hermes, Claude Code, DeepSeek Harness, "System One, powered by Jev," Pi, "and 20 more," with a repo link and "don't forget to star it ⭐" in parentheses. He also ran a demo: Grok Bot turned a customer support ticket CSV into an interactive dashboard, sent the analysis to DeepSeek Harness, handed the page build to Codex, and finally had Grok check the result itself in the browser.

The post got 1351 likes and about 137k views. On the GitHub repo page, 10-25 gained 72 stars and 10-26 gained 269, the biggest single-day gain of the project in 89 days.

What it is

In short: the product backend sends a task and specifies which harness to use, HarnessRouter starts an isolated runtime instance, and progress, files, outputs, and the results "done / timed out / failed" are returned uniformly. The interface is compatible with OpenAI Responses. It wrote this set of conventions up as an "open standard" called Unified Harness Protocol (UHP), with 64 conformance tests and badges.

The open-source version (Apache-2.0) can be self-deployed with one docker command, using your own model keys; the official site also sells a hosted cloud billed by the minute agents actually work. It is built by YC S23's veteran team Epsilla, which used to make a vector database and an agent platform, three people in San Francisco, and turned into HarnessRouter this year. In the commit history, apart from automation bots, the main contributor is essentially just the founder alone.

How the stars climbed

First look at the curve (daily star count from the GitHub repo page):

DatestarWhat happened around that day
8-090Repo created; 8-16/17 open-source version launched on Product Hunt (316 votes) and Show HN (10 points)
9-18—Akshay Pachaar published a long post, "Run Any Agent Harness Under One Interface"
10-163003Alibaba's Qoder announced it would adopt UHP
10-24 → 10-263274 → 3615Avi Chawla's post with 137k views
11-023823For two weeks it only added a dozen or twenty stars a day
11-03 → 11-063905 → 4222Akshay's "Harness Engineering 2.0 is here!" (about 111k views), 80–140 stars per day

The 3000 stars banked in the first 68 days came mostly from two YC Launches and two Product Hunt launches (both featured) from 7 to August, plus a wave of X promotion in mid-to-late September: after Akshay's long post, Dan McAteer's "This is genius" (about 30k views), an account under Mario Nawfal writing "SOMEONE JUST BUILT AN OPENROUTER FOR AI AGENT HARNESSES" (about 66k views), and Avi posting "System 1 vs System 2 harness" again (about 57k views). Hacker News barely helped; the Show HN only reached 10 points; the GitHub trending page only listed it once, at #16 on the Python daily chart 10-27.

Several details point to organized promotion rather than organic growth:

  • Akshay and Avi are two accounts from the same outfit (Daily Dose of Data Science), which regularly takes on open-source promotion. From 9-18 to 11-04 the two posted at least 6 times, citing the same long post, opening with "Devs just open-sourced…" and ending with a call to star. Whether they were paid can't be verified, but the format looks very much like paid or partnered promotion (inference).
  • The posts repeatedly include "System One, powered by Jev", and HarnessRouter even opened a dedicated SystemOneHarness repo (206 stars), which looks like co-marketing with that model company (inference).
  • The README itself is a conversion page: a star-count badge at the top, and below it an image reading "Help grow the HarnessRouter community. Star this repo →".

Still, the stars aren't all hollow. Its Docker Hub image has been pulled 71,874 times (11-06); external users have filed security issues in the tracker and requested CVEs, and someone listed it on Cloudron for one-click deployment. Checking the accounts of the latest 40 forks, registration years range from 2013 to 2026, which doesn't look like manufactured accounts.

Why it, and not the earlier one

Someone did the same thing half a year earlier. Rivet launched the Sandbox Agent SDK in 2026-01-28 with the slogan "One API for Any Coding Agent", unifying Claude Code, Codex, OpenCode, and Amp over HTTP/SSE. It also hit Show HN and was covered by InfoQ, and rivet-dev/agents now has 1627 stars.

HarnessRouter has three extra things going for it:

  1. 时机和一句话定位。 2026 年 8–9 月「harness engineering」突然成了热词:Greg Isenberg 9-13 发「AGENT HARNESSES ARE THE NEW GPT WRAPPERS」(2452 赞),levelsio 说这一期 YC「只有 harness 和硬件创业」,OpenRouter 推了 Ori Harness。HarnessRouter 正好占住了「harness 版 OpenRouter」这句话,谁都一听就懂。
  2. Inventing a standard. UHP has a spec, tests, and badges, so headlines like "after MCP, A2A, and AG-UI, yet another agent protocol" became possible; each adopter (such as Qoder) became another news item. With features alone, KOLs have nothing to write about; with a "standard", they do.
  3. Distribution resources. A veteran YC team, old Product Hunt accounts that get featured every time, and two months of continuous big-account promotion.

It also supports more harnesses (30, including those from Chinese vendors such as DeepSeek, Qwen Code, Kimi Code, and MiniMax) than Rivet's 4–5, but on features alone, Rivet's result already shows that features by themselves don't make a project take off.

Who's competing for this spot

ProjectScaleHow HarnessRouter differs
Rivet Sandbox Agent SDK1627 starHalf a year early, only unifying 4–5 coding agents, with no protocol and no hosted cloud
Agent Client Protocol(Zed)4587 starManages how the editor and the agent interact, not how the backend hands off a whole task
OpenRouter Ori Harnessbig techLocal CLI; it swaps the model, not the harness
AgentSky1264 likes on the launch postBuilds a harness × model comparison board, with no unified API
Claude Agent SDK, Codex SDKOfficialEach covers its own; HarnessRouter's whole pitch is not being locked to one vendor

The copycats are all tiny: a Chinese repackaged version (1 stars), UHP's Go implementation uhp-go (3 stars), ystyle/uhp newly created by 11-05, and a few small projects with "harness router" in the name. None of them head-on rebuild the same thing.

If it were you

Grade: C. You can learn a whole playbook for earning stars here, but building another one in the same spot isn't worth it.

  • Verdict: The "unify every agent harness" spot is already taken by two players (HarnessRouter through distribution, Rivet through being first). HarnessRouter's stars mainly come from its YC background, an old Product Hunt account, and sustained big-account promotion, none of which followers can get. The term "harness engineering" has also been hot for over two months, and a second "OpenRouter for harnesses" won't get anyone posting "Finally."
  • Who it suits: Developers who already have some reputation in the agent infrastructure circle, or who have something they can pitch as a "standard." Study its playbook and apply it to your own opportunity.
  • Who it doesn't suit: Solo developers who want to build a "unified harness API" to collect stars. You can copy the features, but you can't copy a post with 137k views.
  • How to build: Don't do the same thing head-on. Build the adjacent parts that are still empty. For example, UHP client libraries in other languages (TypeScript, Go, and Rust currently have implementations with only single-digit stars), an adapter that plugs a specific harness into UHP, or a lightweight pure-local library that needs no server. These projects can ride its traffic: write "UHP compatible" in your README, and getting listed in its official ecosystem is an exposure event. If you want to build your own opportunity, follow its playbook: pick a newly hot term, position yourself with an analogy like "X version of OpenRouter / LiteLLM," ship a spec with a conformance test, and make it runnable with one docker command.
  • How to get users: It shows that Hacker News and GitHub trending do little for projects like this. The main channel is AI explainer accounts on X. Posts need a visible demo (Avi's was "CSV turned into a kanban board"), and both the post and the README should directly ask for stars. Without a budget, first make your project a piece of the HarnessRouter ecosystem and let its official account repost it.
  • When to move: Build the adjacent project while UHP is still growing and the official side is still looking for "another adopter" news. Ideally ship before the end of 2026.
  • Signs you've read it wrong: (1) A new independent project builds the same unified harness API and gets 2000+ stars within three months without big-account promotion. That means the spot isn't full yet. (2) A major company like OpenRouter or Vercel launches server-side harness routing. Then HarnessRouter itself would stall, and the projects around it would go with it. (3) The reverse: UHP gets adopted by official players like OpenAI or Anthropic. Then projects in the UHP ecosystem would be worth far more than they are now.

Data and sources: GitHub repo page and API (stars, forks, contributors, issues, 11-06); Docker Hub pull count (11-06); harnessrouter.ai and the pricing page (11-06); YC Launch page and company page; Product Hunt and Hacker News launch pages; X posts from Avi Chawla (10-24), Akshay Pachaar (9-18, 11-03) and others, with view counts as seen by 11-06; websites and repos for Rivet, Agent Client Protocol, OpenRouter Ori, and AgentSky. Where a claim is marked as inference, it is inference.

GitHub repo ↗

Research notes: competitor table, acquisition evidence, full research report
Competitors
NameWhereLaunchedScaleHow it differs from this one
Rivet Sandbox Agent SDKOpen source2026-01-28rivet-dev/agents with 1627 stars, covered by a Show HN and InfoQHalf a year early with the same unified API, but supporting only 4–5 coding agents. No protocol standard, no conformance tests, and no billed hosted cloud. Positioned as coding agent automation rather than a product backend.
Agent Client Protocol (ACP, Zed)Open source2025-064587 starCovers interaction between the editor and the agent. UHP covers the application backend handing off a whole task and getting results back.
OpenRouter Ori HarnessBig-company features2026-08OpenRouter is bigA CLI wrapper that lets developers run any harness with 500+ models on their own machine. It swaps the model. HarnessRouter is a server-side API that swaps the harness.
AgentSkyWeb2026-08-241264 likes on the launch postOnly does harness × model comparison, overlapping with Harness Arena, and offers no unified backend
Claude Agent SDK / Codex SDK·app-serverBig-company features2025–2026OfficialOnly covers its own harness. HarnessRouter's whole pitch is not being locked to one vendor.
Agenta / Headless Coder SDK / FridayOpen source2026SmallOrchestration or SDK wrappers on top of Claude Code and Codex. No protocol, no cloud.
Where users come from
  • Confirmed Paid/partner X KOLs (Akshay Pachaar, Avi Chawla, Daily Dose of DS): Between 9-18 and 11-04 there are at least 6 posts, all citing the same long article with uniform copy, ending with "don't forget to star it ⭐". The one with 10-24 had 137k views, and the one with 11-03 had 111k views, both lining up in time with the star milestones.
  • Confirmed X promotion accounts and reposts (Mario Nawfal/RoundtableSpace, Dan McAteer, AI超元域, Japanese aggregator accounts): 9-22 RoundtableSpace 66k views; 9-20 Dan McAteer 30k views; 10-25 Chinese and Japanese posts
  • Confirmed YC Launch (twice): 7-24 cloud version Launch, August open-source version Launch (ycombinator.com/launches)
  • Confirmed Product Hunt: 7-24 HarnessRouter 239 votes, 8-16 Community Edition 316 votes, both featured, filed under the older Epsilla product name (producthunt library)
  • Confirmed Hacker News: 8-17 Show HN got only 10 points and 14 comments (hackernews library). Essentially no traction.
  • Confirmed Home-built protocol + third-party endorsement: 10-16 Alibaba's Qoder announced adoption of UHP, with the official account's post at 36k views. Avi framed it as "After MCP, A2A… another agent protocol."
  • Confirmed README star call-to-action: The top of the README has a star count badge and a banner reading "Help grow the HarnessRouter community. Star this repo →"
  • Inference Co-marketing with System One/Jev: KOL posts repeatedly mention "System One, powered by Jev." The official org opened a SystemOneHarness repo (206 stars).

Why HarnessRouter (HarnessRouter/harnessrouter) took off

Channel: GitHub | Research day 2026-11-06 | Data card: 89 days, 4222 stars, 465 forks, +7 over the last 450 days, single-day peak +269 (10-26)

One line

An "OpenRouter for agent harnesses" built by the YC S23 team behind Epsilla after a pivot. It wraps 30 ready-made agent runtimes, including Codex, Claude Code, Hermes, and DeepSeek Harness, into an OpenAI Responses-compatible API with unified sessions, streaming, files, cancellation, and failure semantics. The open self-hosted edition (Apache-2.0, one docker command) is the lead magnet, and the paid product is the hosted cloud, billed per active agent work minute. The stars came mainly from paid/partner X accounts (Akshay Pachaar, Avi Chawla) pushing repeatedly, plus a YC Launch, two Product Hunt launches, and the story of a self-made "open protocol, UHP."

1. What it is and how it makes money

  • Product: A product backend sends a task and a harness_id. HarnessRouter starts an isolated runtime instance for that harness and returns progress, files, artifacts, and explicit termination states. It says it implements Unified Harness Protocol (UHP, unifiedharnessprotocol.org, with 64 conformance tests), an open standard it proposed itself. Source: GitHub README; YC Launch post www.ycombinator.com/launches/Sv6-...
  • Open-source and cloud editions: Community Edition is self-hosted with your own model keys. Cloud is "Harness as a Service," billed per sandbox per run.
  • Pricing (harnessrouter.ai/pricing, read 2026-11-06): Free tier with 30 minutes of agent work; $20 / $200 / $1000 per month plans; agent work at $0.020→$0.006 per active minute; model fees at the provider's list price with no markup, and time spent waiting on models isn't billed; top-ups carry a 5.5% processing fee; Tracing add-on $50/month.
  • Team: The YC company page lists it as founded in 2023, with 3 people, based in San Francisco, founder Renchu (Richard) Song. Its predecessor was Epsilla (YC S23, vector database → knowledge/agent platform). LinkedIn shows Epsilla "merged into HarnessRouter." Both HarnessRouter Product Hunt launches are filed under the epsilla product name (source: our producthunt library).
  • Revenue: Not disclosed, no TrustMRR or public revenue posts.

2. Growth data

  • Our github library repo_day: 10-16 3003 → 10-25 3346 → 10-26 3615 (+269) → 11-02 3823 → 11-03 3905 → 11-05 4126 → 11-06 4222. So about 3000 stars were collected in the first 68 days after the repo was created on 8-09, and each big-account post after that produced a step up.
  • Trending: It reached #16 on the Python daily chart on 2026-10-27 (period_stars 77), but never made the all-GitHub chart (github library trending table).
  • Docker Hub pulls: 71,874 (hub.docker.com API, 2026-11-06). That's closer to real trial usage than stars, which suggests the stars aren't all empty.
  • watchers 27, contributors include github-actions[bot] 351 times, founder richard-epsilla 332 times, and the other external contributors are single digits up to 32 — still mostly the founding team pushing it alone. Outside users have already filed security issues (CVE requests, outbound network isolation), and someone listed it as a one-click deploy on Cloudron, so there are real people running it.
  • GitHub's stargazers endpoint now returns 404 for this repo (and others), so I can't check star-account quality one by one. Spot check of the latest 40 forkers: account registration years are spread out (2013–2026), median public repos 85, median followers 3. They don't look like bot accounts.

3. Where users came from (growth tactics)

TimelineChannelEvidenceResults
2026-07-24YC Launch + Product Hunt (cloud version)YC Launch "Bring the world's best AI agents into your app"; PH 239 votes, featured the same dayLaunch exposure
2026-08-16/17Open-source launch: PH + Show HN + second YC LaunchPH "HarnessRouter Community Edition" featured with 316 votes; Show HN got only 10 points and 14 comments (hackernews library)HN barely picked it up; PH and YC communities were more effective
From ¥2026-08-19The official account @HARNESSROUTER posts daily8-19 post with 23k views; afterwards most posts got only a few hundred viewsWeak
2026-09-18Akshay Pachaar (Daily Dose of DS, a big account) published a long post "Run Any Agent Harness Under One Interface"x.com/akshay_pachaar/status/2100888166219886818Afterwards Avi Chawla, Mario Nawfal and others all quoted this post
2026-09-20/22Dan McAteer: "This is genius" (30k views); @RoundtableSpace / Mario Nawfal: "SOMEONE JUST BUILT AN OPENROUTER FOR AI AGENT HARNESSES" (66k views)x-radar real-time searchTypical copy from promotional accounts
2026-09-28Avi Chawla: "System 1 vs System 2 harness" (57k views)Same as above—
2026-10-16Qoder (Alibaba Cloud) announced it adopted UHP; official account 36k views; Avi Chawla: "After MCP, A2A & AG-UI, there's another agent protocol" (37k views)Same as aboveEndorsing the "open standard"
2026-10-24Avi Chawla: "Insane Grok @bot upgrade!… (don't forget to star it ⭐)" (1351 likes, 137k views)x.com/_avichawla/status/2113954302901256597Corresponds to the peaks at 10-25/26 +72, +269
2026-10-25Secondary spread: small accounts such as AI超元域 (Chinese) and GitHub AI Projects Community (Japanese)Same as aboveChinese and Japanese developers
2026-11-03/04Akshay Pachaar "Harness Engineering 2.0 is here!" (1338 likes, 111k views); Avi Chawla promoted Harness Arena (30k views); Oliver: "Finally, an OpenRouter for agent harnesses!"Same as aboveStarting from 11-03, +82/+79/+142/+96

Key points:

  • Akshay Pachaar and Avi Chawla are two accounts from the same company (Daily Dose of Data Science), which has long promoted open-source projects; between 9-18 and 11-04 these two posted at least 6 times, each citing the same long post with uniform copy ("Devs just open-sourced…", "don't forget to star it ⭐"), while repeatedly tagging "System One, powered by Jev" (another model company; HarnessRouter even opened a SystemOneHarness repo). It looks like paid or partner promotion with joint marketing. Not verified whether it was paid, but the timing and format fit well.
  • Each step in the star curve lines up with a big account post; HN barely picked it up; GitHub trending only hit the language chart once.
  • The README is itself a conversion page: the star-count badge sits at the top, there is a "Help grow the HarnessRouter community. Star this repo →" banner, and an animated N×M integration comparison.
  • Riding the wave: the "harness engineering" buzz is hot in 2026 8–September (Greg Isenberg 9-13 "AGENT HARNESSES ARE THE NEW GPT WRAPPERS" with 2452 likes; OpenRouter pushed Ori Harness in August; DeepSeek Harness launched). HarnessRouter grabbed the one-line positioning of "OpenRouter / LiteLLM for harnesses".
  • Self-made standard: it proposed UHP and got third-party harnesses to join (Qoder), and each "×× joins UHP" is a new story; lines like "After MCP, A2A… another agent protocol" travel well on X.

4. Competitors

CompetitorsFormLaunchedScaleHow it differs from HarnessRouter
Rivet Sandbox Agent SDK(rivet-dev)Open source2026-01-28rivet-dev/agents has 1627 stars; had a Show HN and InfoQ coverageDid the same thing half a year earlier: "One API for Any Coding Agent", unifying Claude Code/Codex/OpenCode/Amp over HTTP/SSE, running in a sandbox. HarnessRouter differs by supporting more harnesses (30 vs 4–5), shipping its own protocol standard and conformance tests, and offering a hosted cloud with billing. It positions itself as a "product backend" rather than "coding agent automation".
Agent Client Protocol(ACP,Zed)Open protocols2025-064587 starACP governs the interaction interface between editor and agent; UHP governs "an application backend handing an entire task to a harness and getting results back". Someone has already proposed plugging ACP harnesses into HarnessRouter (issue "Crumb as a harness backend (ACP v1)").
OpenRouter Ori HarnessBig-company features2026-08OpenRouter itself is very largeIt is a CLI wrapper letting developers run 500+ models locally with Claude Code/Codex; it swaps the model, while HarnessRouter swaps the harness and exposes it as a server-side API.
AgentSky(agentsky.dev)Web2026-08-241264 likes on the launch postDoes harness × model comparisons, overlapping HarnessRouter's Harness Arena, but does not offer a unified backend API.
Agenta, Headless Coder SDK, Friday, etc.Open source2026SmallOrchestration or SDK wrappers on top of Claude Code and Codex. No protocol, no cloud.
Claude Agent SDK / Codex SDK·app-serverBig-company features2025–2026OfficialEach covers only one vendor; HarnessRouter sells "not being locked into one vendor".

5. Differentiation

  • Positioning: "harness routing", one level above "model routing", explainable in one sentence (the N×M integration problem → one API).
  • Breadth: 30 harnesses, far more than Rivet's 4–5, including Chinese vendors' (DeepSeek Harness, Qwen Code, Kimi Code, MiniMax, MiMo, Qoder).
  • Self-made standard: the UHP spec + 64 conformance tests + badges, packaging one product as an "ecosystem standard", and it got Alibaba's Qoder to endorse it.
  • Production-oriented failure semantics (timeout → incomplete, partial output kept, no silent retry) and an OpenAI Responses-compatible interface.
  • The same protocol for self-hosted open source and cloud; the open-source version is the sales funnel for the cloud version.
  • Is differentiation why it took off: partly. Rivet did the same thing half a year earlier and only got 1.6k stars, showing features alone aren't enough. HarnessRouter's extra assets are the "protocol/standard" narrative and the number of supported harnesses. These two give KOLs something to write about ("After MCP, A2A…"); what really pushed the stars up was frequent big-account promotion.

6. Visibility and copycats

  • Visibility: it's spreading in small circles. On X, several AI promotional accounts with 100k to 300k followers wrote about it multiple times (the top post hit 137k views), and there was secondary spread in Chinese and Japanese. But HN has only 10 points, no mainstream tech media coverage, and revenue is not public.
  • Copycats: yangshun2005/harnessrouter-cn (Chinese fork/wrapper, 1 stars), aenawi/uhp-go (Go implementation of UHP, 3 stars), ystyle/uhp (newly created, 11-05), crzyc0d3r/unified-harness-client; the name "harness router" is also taken by small projects like Protocol-Lattice/harness-router, HM-Router, jev-harness-router, but none of them are direct copies.

7. What others can learn

  1. Launched right as a new term was heating up (harness engineering), seizing an analogy-style positioning of "X's version of OpenRouter/LiteLLM".
  2. Coined an "open protocol" plus conformance tests and badges: every third-party adoption becomes a news item, and it gained the identity of a "standard setter".
  3. The open-source version runs with one docker command, no account registration needed, serving as the funnel for the cloud service. Publicly it talks about stars; real usage is measured by Docker pulls (72k).
  4. Paid placements with AI promotional accounts like Daily Dose of DS: uniform copy, repeated posts, direct "star it" calls in the post, plus a star-call image in the README. Paired with YC Launch and Product Hunt (the old team has history on PH and has been featured every time).
  5. Joint marketing with other vendors (System One/Jev, Qoder).

8. Still unclear

  • Whether the big-account posts were paid (likely, but unverified); whether "System One / Jev" is joint marketing or a related party.
  • Quality of star accounts: the GitHub stargazers API currently returns 404, so it can't be checked; a sample of forks looks normal.
  • Whether the cloud version has paying customers and how much revenue; how many of the Docker 72k pulls come from CI or repeat pulls.
  • The day-by-day curve before 10-16 is not in the database (how the first 68 days' 3000 stars accumulated); from X, it's inferred to come mainly from August's YC/PH launch and the KOL push from 9-18 to 9-28.

Sources

This article was written by AI from public data and the data we collect daily. Numbers are sourced, and inferences are labeled.