AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
Thermite는 오픈소스 자동연구 도구로, AI 에이전트가 코드를 실험하고 검증된 결과만 유지
Thermite is open-source autoresearch: AI agents run experiments on your code for hours or days, and a judge they cannot touch keeps only what is proven better.
개발 도구TypeScript · JavaScriptGitHub @iammrduncan온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Auto researching harness that burns through everything.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Put AI agents to work on your code. Keep only what's proven.
Thermite is open-source autoresearch: AI agents that run experiments in a loop, for hours or days, on your own machines. You set the goal: a faster program, a list of checks to pass, or a question to answer. A judge that the agents can't see or change measures every attempt, and keeps only what it confirms. One dashboard, with a REST API and MCP, shows and steers every campaign on every machine.
Quick start · Documentation · Architecture · Roadmap · Changelog · Discord
[!WARNING] Thermite is under heavy development. It changes every day, and some parts will break. If you don't want to take every update as it comes, pin a release: install from a tagged release's bundle, whose compose file pins every image by digest, and update when you choose. Most of Thermite can be driven from the dashboard, and its REST API and MCP server work well with coding agents, which can help you set it up, test it and run it.
Status: v0.1.0, the first public release, is out: install it from its release bundle. Work goes on toward v0.1.1: see the roadmap.
A lot of engineering is a loop. Change something, measure it, keep it if it is better, undo it if it isn't, and try the next idea. Autoresearch hands that loop to AI agents, so it runs through the night, on many ideas at once, without you.
The hard part is trusting the results. An agent asked to make a number go up will sometimes make it only look higher: it skips the slow case, moves the timer, or just reports a win. So in Thermite, agents only propose. A separate program, the judge, builds each change, runs it against the best version so far on the same hardware, checks that its output is still right, and decides. The agents can neither read the judge nor change it.
Each campaign is one of three kinds, called modes:
| Mode | Use it to | It runs until | For example |
|---|---|---|---|
| Hill climb | Push one number, such as speed, size or accuracy, as far as it goes, with guards so that nothing else gets worse | You stop it | Make a matmul kernel faster without breaking its tests |
| Goal | Meet a list of checks: it builds, it loads the model, its answers match | Every required goal is met, or the evidence shows that they cannot be | Port a library to a new platform: it builds, matches its goldens and meets a speed target |
| Research | Answer a question from sources. Code checks every quote, word for word, against the page it came from | A review panel finds every question answered, its research stops adding, or its longest time is up | How do modern memory allocators keep tail latency low? |
The modes combine: a hill climb or a goal campaign can read what a research campaign found. Choose a campaign mode helps you pick, campaign modes explains each, and the contract reference has every field.
flowchart LR
Planner["Planner<br/>(gives each lane an experiment)"] --> Workers["Workers<br/>(a fresh agent for each trial)"]
Workers -- a change and a claim --> Judge["Judge<br/>(code the agents cannot change)"]
Judge -- confirmed win --> Champion[(Champion)]
Judge -- every result, with its reasons --> Ledger[(Ledger)]
Champion --> Planner
Ledger --> Planner
You need Linux or macOS, and Podman or Docker with compose. Thermite runs from published images: you build nothing. A model is optional at first: the judge works without one.
Before you give Thermite a model, read the known limits. Agents run the code that a model writes on your computer, and under compose that code can reach your local network. The security model says what each part can reach and what it trusts.
mkdir thermite && cd thermite
curl -fsSLO https://github.com/iammrduncan/thermite/releases/latest/download/compose.yaml
docker compose run --rm init # writes local tokens to .dev/
docker compose up -d
With Podman, write podman compose in place of docker compose. The first start downloads the images. To check the machine before the first up, run npx thermite doctor from the command line, built from the source with Node.js and git: it checks Docker or Podman, compose, the port, disk and the clock, and says how to fix each problem (Troubleshoot). Then:
.dev/secrets/control-admin-token.examples/matmul-cpu, a folder of this repository, or on your own project.The tutorials walk through every step, up to taking the winning patch back to your project (Your own project). To build Thermite from its source code instead, see Contributing.
Just want to look around? npm ci && node --experimental-strip-types scripts/dashboard-demo.ts serves the dashboard with synthetic campaigns and rigs at http://127.0.0.1:8810/ui, with no containers. It prints the token to sign in with.
flowchart TB
subgraph Control[Control service]
UI[Dashboard]
API[REST API and MCP]
end
subgraph Rig[Rig, repeated across the fleet]
S[Supervisor]
H[Harness: judge, ledger, planner, workers]
end
People[People and agents] --> UI
People --> API
S -- reports, signed commands --> API
S --> H
H --> M[Model endpoint]
S --> Net[Git, the internet, frontier models]
More in architecture.
| Read this | To |
|---|---|
| Quick start | Go from the release's compose file to a first verdict, then to agents on your own project |
| Write a kit | Teach the judge how to build, run and check your project |
| Judging and integrity | See how results are accepted without trusting the agents |
| Known limits | Know the risks and what is not built yet, before you run it |
| The security model | See what each part can reach and what it trusts |
| Settings reference | Configure control, the harness and the supervisor |
| Contributing | Set up a copy, run the checks and the acceptance tests, and send a change |
| Glossary | Look up a term |
Thermite's community meets on the Hackers in the Loop Discord: questions, ideas and results go there. Bugs and feature requests go in GitHub issues.
npm run check (typecheck, lint, tests and the public-content check) before you open a pull request. Contributing lists the compose and acceptance tests for changes to containers, the judge or control.Thermite builds on other people's research and software. Credits lists the papers, systems, programs, libraries, standards and services it draws on, runs or ships, each with its licence.