What it is
Researcher — by Binteca — is the Binteca Research Based Coding Workspace: a macOS desktop app built on AIPOCH Open-Science, the open-source, local-first research workbench. It keeps everything Open-Science does — projects, sessions, Python/R notebooks, literature, connectors, skills, provenance — and adds one product decision on top: the agent is a coder that researches first.
Research before code
Every dependency and API a change relies on is checked against a primary source before the code is written, and the response says what was checked and when.
Your folder, not a sandbox
A project can declare a workspace folder on your Mac. Sessions run there; the agent reads, edits, runs tests and commits inside it.
Your Claude or Codex
The engine is Claude Code, Codex, OpenCode or CodeBuddy, connected in the app with
your own subscription login or API key. No .env files.
Install
-
Download the latest
researcher-<version>-mac-arm64.dmgfrom the releases page (Apple Silicon; macOS 12 or newer). - Open the DMG and drag Researcher into Applications.
- The build is ad-hoc signed, not notarised. On first launch macOS may say the app is from an unidentified developer: right-click the app, choose Open, and confirm once. If a previous copy is installed, remove it first — one install per Mac.
~/.researcher and never touches ~/.open-science, so both apps
can be installed side by side. You go through first-run setup once.
First run
Five guided steps, the same as upstream:
- Environment — compatibility, storage, keychain and network checks.
- Data location — where notebooks, uploads and environments live.
- Agent runtime — Claude Code, Codex, OpenCode or CodeBuddy. Researcher can install an app-managed runtime; no Node, npm or admin password needed.
- Model provider — sign in with an existing Claude or Codex subscription, or enter a provider API key. The connection is tested before you continue.
- Notebook runtime — optional app-managed Python and R.
Workspace folder
This is the change that makes Researcher a coder. In New project or
Project Settings there is a Workspace folder field with
a Choose… button. Pick the folder your code lives in — for example
~/Projects/my-app.
- Every new session in that project starts with the folder as its working directory.
- The agent's file tools read and write inside the folder (and nowhere else, unless you grant more folders — see below).
-
The Notebook shell and kernels may write inside the folder, including its
.git, sonpm test,pip install -e .andgit commitwork. Shell commands start in a managed data directory, so the agent prefixes project commands withcd <folder> &&. - Leave the field empty and the project behaves like upstream: a managed folder under the data location, and generated files delivered as Artifacts.
Research vs deep research
| Depth | When | What happens |
|---|---|---|
| Research (default) | Every code task |
Quick, targeted checks of the facts the change depends on: current stable
version of each package (pip index versions,
npm view … version, go list -m -versions,
cargo search), the documented API of each call, current tooling
conventions. The response lists what was checked, the version found, the source
and the date.
|
| Deep research | When you ask — say "deep research", or pick the Deep Research skill with / | A structured survey: at least three primary sources, two to four approaches compared on fit, maintenance, stability and cost, a dated findings record shown before any code is designed, then the verified specifics the implementation will use. |
Both are ordinary skills you can read in the app under Skills: Research-First Coding (always on) and Deep Research. The behaviour is also part of the agent's system prompt, so it applies with every runtime and model.
Researcher never rewrites your code to a newer idiom on its own: where a project pins a version or uses an older pattern on purpose, it keeps the project consistent and says so.
Files, network and approvals
Granted folders
Beyond the workspace folder, the composer's Your files → Grant folder… menu lets you grant more folders read-only or read & write. Researcher honours those grants in the agent's file tools as well as in the Notebook sandbox, so a granted folder is readable (and writable if you said so) everywhere.
Network
Notebook and shell processes reach the network through an allow-list. The first time a command needs a new host — a package registry, a docs site — Researcher asks; allow once or always. Package registries used for version checks fall under the same rule.
Approvals
Each session has an approval mode. Edits inside the workspace, reads and searches can be auto-approved; anything else asks. The agent never bypasses a denial and never reports an action that was blocked as done.
What the agent will not do
- Commit unless asked.
-
Force-push,
reset --hard,clean -f,branch -Dor rewrite history — those stay with you and your own shell. - Delete files or folders the task did not name.
Command line
Settings → General offers to install the researcher command. It drives the
same app headlessly: create projects, run tasks, manage connectors. The Task API accepts an
explicit working directory per task and exposes each project's
workspacePath in its session defaults.
researcher --help
Build from source
git clone https://github.com/chmjdev/researcher.git
cd researcher
npm ci --no-audit # Node 22; install scripts for electron/esbuild/prisma are allow-listed
npm run typecheck && npm test
node scripts/fetch-micromamba.mjs osx-arm64 resources/bin/mac/arm64/micromamba
npm run build:mac # dist/researcher-<version>-mac-arm64.dmg
macOS only. Windows and Linux packaging were removed from this fork on purpose.
Credits and licence
Researcher is a fork of
AIPOCH Open-Science by AIPOCH,
released under the Apache License 2.0. Researcher keeps that licence; upstream copyright
notices are preserved in LICENSE and NOTICE. Its coding
discipline comes from cologic, the local-first
coding agent this project grew out of.