Portrait of Michael Limberger

Michael Limberger

Need me? Email mike@limberger.ca

← Skiff hub

Winner

🐦 Ornith

Top to bottom · draft, still filling in

Ornith-1.0-35B · DeepReinforce · MIT

Ornith won my local Skiff tests so far. Fast, clean tool use, and it behaved well inside a harness nobody trained it against. This page is the longer story. Rough draft. Details will move as I learn more.

Useful links: deep-reinforce.com · Ornith 1.0 on Hugging Face · Ornith 1.5 MLX

👤

Who made it

DeepReinforce · Dr. Jiwei Li · San Jose

🏢

The lab

CUDA kernels, agentic RL, then Ornith

🔬

Self-scaffolding

Why it fits Skiff so well

🧬

Your 35B

MoE · multimodal · 256K context

📊

Vendor numbers

Trust carefully · use your own harness

🔨

First three moves

Thinking budget · sampling A/B · Ornith 1.5

Who made it

DeepReinforce is a small AI startup and research lab in San Jose, California. Roughly 11 to 50 people. Site: deep-reinforce.com.

Founded by Dr. Jiwei Li. Stanford NLP PhD with Dan Jurafsky in three years. Stints at Facebook AI Research and Microsoft Research. Earlier he founded Shannon.AI (now closed) and served as Chief AI Officer at Altonomy. DeepReinforce has not disclosed its own funding.

What the lab is actually about

They did not start as a model lab. The mission is automating hard low-level software work with agentic reinforcement learning: CUDA-L1 / L2, CRINN, GrandCode, IterX, then Ornith.

Their signature trick from CUDA-L1 is contrastive reinforcement learning: compare code versions side by side and learn why some are faster. They also got burned by reward hacking, and that scar tissue shows up in Ornith's design.

What Ornith is

Released June 25, 2026 under the MIT license. Four sizes: 9B dense, 31B dense, 35B mixture of experts, and a 397B MoE flagship. Post-trained on Qwen 3.5 and Gemma 4 bases. The name comes from Greek ornis, bird.

The pack I ran is the 35B Qwen 3.5 branch, not the Gemma branch. Weights: deepreinforce-ai/Ornith-1.0-35B on Hugging Face.

The secret sauce: self-scaffolding

Normal approach: a human writes the agent harness, and you train the model to live inside it. The harness stays fixed.

Ornith's approach: the scaffold is learnable. Each RL step has the model refine a scaffold, then solve the task inside that scaffold. Reward flows to both stages. Over time, per-task strategies show up without hand-built harness design.

That is a clean explanation for why Ornith behaved well inside Skiff, a harness nobody trained against.

Anti reward-hacking

They expected cheating. Fixed trust boundary, deterministic monitor, and a frozen LLM judge. Training rollouts also ran with network access off. That is training containment, not a substitute for your own limits when you give real tools.

Architecture of the 35B

About 35B total parameters, roughly 3B active per token. 256 experts, 8 active plus 1 shared. Hybrid attention. A vision encoder. Hugging Face tags it multimodal (image-text-to-text). 256K context. Reasoning model: you need a reasoning parser and a tool-call parser or the agent loop breaks.

That vision encoder is why an mlx_vlm path can be the right call for this pack, unlike a text-only mlx_lm assumption.

Sampling notes

Official recipes disagree: Terminal-Bench style is temperature 1.0 / top_p 1.0; Transformers quickstart is 0.6 / 0.95 / top_k 20. My row used the quickstart values. Worth an A/B. Also: a thinking budget of 900 on a 256K reasoning model is probably too tight.

Vendor numbers, with skepticism

They report strong Terminal-Bench and SWE-bench numbers for the 35B, including beating much larger Qwen 3.5-397B on some tables. Treat those as vendor claims until third parties reproduce them. Community reception is mixed. My own Skiff harness is there for a reason.

First three things to do

1

Raise thinking budget

Try something like 8000 instead of 900 on the ornith row.

2

A/B sampling

0.6 / 0.95 / 20 versus 1.0 / 1.0 on the same tasks.

3

Add Ornith 1.5

Official MLX build ornith-ai/Ornith-1.5-35B-A3B-MLX as a separate catalog row, not a replace.

🧪

Back to evals

See the local vs cloud results