Skip to content

Research Harness

One configuration for the coding agents that work on your research software.

How the parts fit together ​

The harness and its three layersThe harness surrounds three layers. At the top is the research tree, with the library, the knowledge, the packages, the experiments, the projects and the papers. In the middle are the components: agents, skills, commands, rules, guard hooks, git hooks and workflows, scripts and settings. At the bottom are the frontends: Claude Code, OpenCode and oh-my-pi.Research HarnessThe research treeLibraryKnowledgePackagesExperimentsProjectsPapersThe componentsAgentsagents/Skillsskills/Commandscommands/Rulesrules/Guard hookshooks/Git hooks and workflowsgithooks/Scriptsscripts/Settingssettings/The frontendsClaude Code~/.claude/OpenCode~/.config/opencode/oh-my-pi~/.omp/agent/

The harness and its three layers. The research tree is where the work is, the components are what the harness supplies, and the frontends are the agents that read them. The research-tree layer shows the tree of the harness's author, as an example; your tree holds your own directories. An example tree describes the six directories and the components that serve each.

From the sources to the frontendsThe sources of this repository, the agents, skills, rules, commands and instructions, the guard hooks, the settings template and the adapters, and two private inputs, the profile with the model tables and the tree instructions, go into harness install. Its steps, in order: it reads the profile and the model tables, renders the sources into a plan for each frontend, installs the Julia packages for the Julia scripts, merges the settings template into ~/.claude/settings.json, writes the files of Claude Code into ~/.claude/ and then the stamp of that layer, writes the files of OpenCode into ~/.config/opencode/ and then those of oh-my-pi into ~/.omp/agent/, and links the skills for OpenCode. harness install is the one install path of every frontend.1Inputs2Install3FrontendsPrivate, on your machineProfile and model tables~/.config/research-harness/Tree instructionsThe sources, in this repositoryAgents, skills, rulescommands, instructionsGuard hookshooks/Adapters of the frontendsadapters/Settings templatesettings/harness installRead the profileand the model tablesRender the sourcesa plan for each frontendInstall Julia packagesfor the Julia scriptsMerge the settingsinto ~/.claude/settings.jsonWrite Claude Codethe files of ~/.claude/Write the stampof the Claude Code layerWrite the other layersOpenCode, then oh-my-piLink the skillsfor OpenCodeOpenCode~/.config/opencode/oh-my-pi~/.omp/agent/Claude Code~/.claude/

From the sources to the frontends. harness install writes the configuration of each frontend from the sources and your private files. Architecture describes the layers and what each frontend receives.