Myles AndersonandClaude Opus 5 4cb5b90b25 Add /goal, a standing objective every turn is reminded of (#412)
* Add composer commands that work the same on every coding agent

The composer's `/` menu now offers /new (alias /clear), /resume, /model,
/plan, /copy and /export on every harness. The dashboard runs each one
itself, so behavior no longer depends on what the selected agent's own CLI
supports — none of them act on slash text in the mode orx runs them in
except Claude Code, and only partially.

`planCommand.ts` becomes `composerCommands.ts`, a registry the menu, the
chips and the send path all read from. A skill whose bare name collides
with a command is dropped from the menu: the composer inserts, and the
server resolves, skills by bare name, so it would otherwise shadow.

Only /plan composes with a prompt. The rest run as a whole message, so
prose that merely mentions `/export` still reaches the agent, and a
command is chipped only where it would actually run.

/resume lists chats across every project: GET /api/chat/sessions now takes
`scope=all` (400 without it or a projectId) and returns the 500 newest.
Picking a chat in another project switches to it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

* Add /compact, which every coding agent can run

The composer's /compact (alias /summarize) shortens a chat's context on
every harness. Claude Code and Codex compact their own context in place
and OpenCode summarizes through its endpoint, so the session survives;
Cursor and the legacy `codex exec` path have nothing to call, so orx
summarizes the transcript itself and reseeds a fresh native session with
it through `bootstrap_context`, which is injected exactly while no native
session exists.

An agent that is merely not running is never traded for a summary: a
resumable session reports "send a message first" instead, since a summary
keeps only the newest 32 KiB of the chat.

Compaction runs as a turn. It holds the session's turn slot, reports
itself as a transcript row that shimmers while it works, and every write
is gated on still owning that slot — Stop cancels it, and a cancelled row
settles as failed rather than sitting at running. The row is the progress:
it survives a reload, reaches every open client, and carries the reason
when it fails. Codex waits for the compaction turn it started rather than
the RPC ack, filtering by that turn's own id; Claude retires its child if
its /compact fails, so an abandoned result cannot land in the next turn.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

* Add /goal, a standing objective every turn is reminded of (#385)

`/goal <text>` gives the chat an objective, `/goal clear` drops it, and a
bare `/goal` reports it. A pill beside Plan shows an active goal and
clears it on click, so it is never invisible state.

The goal is orx's own, stored on the session and re-injected into every
turn. Claude Code's and Codex's native goals are deliberately unused:
theirs mean different things (work until a condition is met, versus a
long-lived objective), and one command cannot mean three things. Being
orx-owned also makes it outlive compaction, a lost native session and a
resume — the agent has to be told its goal every turn regardless.

Goal is the second command that reads the rest of the message, so it is
anchored: it must lead, and it is matched before Plan's unanchored token
so a `/plan` mentioned inside a goal stays part of the goal. An empty
composer gets a session first rather than losing the goal typed into it.

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-09-22 11:10:30 -07:00
2026-06-07 00:35:02 -07:00
2026-08-24 19:19:08 -07:00

OpenResearch

The local-first workspace for research agents and autoresearch.

Turn Claude Code, Codex, OpenCode, Cursor, or Google Antigravity into research agents that can review literature, develop hypotheses, run experiments, and produce research artifacts.

Download OpenResearch for macOS Download OpenResearch for Windows (Beta) Install OpenResearch for Linux

Documentation · Releases

macOS 11+ · Windows beta requires Git for Windows

GitHub Trending: #1 Repository of the Day alphaXiv/OpenResearch | Trendshift

Get started

Install the CLI on macOS or Linux, then launch OpenResearch:

curl -LsSf https://openresearch.sh/install.sh | sh
orx up

On Windows, use the beta download above after installing Git for Windows.

orx up opens the local dashboard at http://127.0.0.1:4791.

Connect a local model to use LM Studio, oMLX, Ollama, or a custom endpoint with OpenCode.

Create an account at openresearch.sh to receive email updates and use managed OpenResearch compute.

Built for research agents

OpenResearch gives you
Parallel exploration Give each research direction an independent agent session and isolated git worktree.
Reproducible experiments Track variants in a git-native experiment tree; every run receives an immutable archive of its recorded commit.
Evidence in context Keep logs, diffs, files, results, and artifacts tied to the work that produced them.
Your choice of agent Use Claude Code, Codex, OpenCode, Cursor, or Google Antigravity, with the harness and model selected per session.
Your choice of compute Run locally, on your own infrastructure, or with managed OpenResearch compute.
Local ownership Keep projects, conversations, experiments, runs, logs, code, and artifacts on your machine.

Autoresearch

OpenResearch can run the full loop autonomously: propose an idea, change the code, launch an experiment, inspect the evidence, and decide what to try next. Multiple agents can explore different directions in parallel while the experiment tree preserves their lineage.

Run anywhere

The same committed source snapshot can run locally, over SSH, or on Slurm, Kubernetes, Ray, Hugging Face Jobs, Modal, Tinker, and managed OpenResearch compute. Publishing the repository is not required.

Run the workspace next to remote GPUs while using the browser on your laptop:

orx up --remote user@host

SSH config aliases and custom ports are supported. The remote service binds to loopback and has no application-level authentication, so other users on that host can reach it.

CLI and agent integration

Install the OpenResearch skill into supported coding agents:

orx install-skills

Common commands:

orx projects
orx project view <project-id>
orx runs <project-id>
orx logs <run-id>
orx exp run <experiment-id>
orx discover keyword <query>
orx paper <arxiv-id-or-doi>

Run orx --help or orx <command> --help for the complete interface.

Local by default

OpenResearch runs on 127.0.0.1 with a local SQLite store. Creating a project or launching a run does not publish your code. An openresearch.sh account is only used for service-owned capabilities such as organizations and managed compute.

Usage analytics

Official release builds send opt-out, coarse usage events tied to a random installation ID. They do not include code, prompts, file contents or paths, repository names, tokens, emails, or project and experiment identifiers.

orx telemetry off
orx telemetry status
orx <command> --no-telemetry

Source and development builds do not send analytics.

S
Description
GitHub Trending: alphaXiv/OpenResearch
Readme MIT
119 MiB
Languages
Rust 70.7%
TypeScript 24%
JavaScript 3.5%
Python 0.9%
Shell 0.4%
Other 0.3%