ReMe/reme_studio
jinliyl ef3f99f019
refactor(packaging): reorganize published packages (#495)
* refactor(packaging): reorganize published packages

* fix(packaging): install AgentScope extra in wheel smoke

* docs: align package guides and documentation site

* ci(workflow): add core dependency verification step in Python package build

- Add a workflow step to verify released core dependencies by installing the wheel with core extras
- Assert the presence of the static index.html file to ensure proper package contents
- Create and use a temporary virtual environment for isolation during verification
- Keep existing artifacts upload step intact and conditional on inputs.upload_artifacts flag

* fix(ci): update package installation dependencies in Windows workflow

- Change pip install from editable reme_studio and core to only dev and as extras
- Remove installation of reme_studio and core to streamline dependency setup
- Ensure Windows CI uses the correct extras for testing environment

* fix(tests): add missing commas in toml file reads in package version tests

- Added trailing commas in the tomllib.loads calls for auto-fin and daily_paper configs
- Ensured consistent syntax to prevent potential tuple misinterpretation
- Improved readability and correctness of the test setup code

* fix(packaging): protect qwenpaw releases and test Studio health
2026-08-27 14:02:09 +08:00
..
.openai refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
app refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
db refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
drizzle/meta refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
examples/d1 refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
public refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
src/reme_studio refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
static refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
tests refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
tooling refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
worker refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
.env.example refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
.gitignore refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
.prettierignore refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
cloudflare-env.d.ts refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
drizzle.config.ts refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
eslint.config.mjs refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
index.html refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
LICENSE refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
next-env.d.ts refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
next.config.ts refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
package-lock.json refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
package.json refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
postcss.config.mjs refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
pyproject.toml refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
README.md refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
README_ZH.md refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
tsconfig.json refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
vite.config.ts refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00
vite.static.config.ts refactor(packaging): reorganize published packages (#495) 2026-08-27 14:02:09 +08:00

ReMe Studio

English | 简体中文

ReMe Studio is the local web workspace for ReMe. It lets you browse and edit user-owned workspace files, explore memory links, and chat with the ReMe Agent without moving durable memory into a separate application database. Search indexes, graphs, and other derived metadata remain rebuildable from the source files.

ReMe Studio workspace

Installation

Install Studio together with ReMe's optional integrations:

pip install "reme-ai[core]"

For Studio without the other optional integrations, use pip install "reme-ai[web]". The base reme-ai package is headless and does not include the frontend assets.

The same prebuilt static workspace is available for Node.js applications:

npm install @agentscope-ai/reme_studio

Its static entry point is installed at @agentscope-ai/reme_studio/dist-static/index.html.

Features

  • Workspace browsing: browse the full workspace or focus on journal and knowledge files through dedicated views. The navigator refreshes as files change on disk.
  • Markdown editing and preview: open multiple files in tabs, render Markdown front matter and GitHub Flavored Markdown, edit with Monaco, save with optimistic modification-time checks, and download files locally.
  • Memory graph: inspect indexed wikilinks under the wiki, personal, and procedure knowledge roots, follow inbound and outbound links, and open the corresponding Markdown source.
  • Agent chat: stream conversations with the read-only workspace Agent, see tool calls and token usage, and drag workspace files into the conversation as references.
  • Service management: inspect service and component memory usage, review the effective redacted configuration and version, and rebuild derived indexes without modifying source memory files.
  • Personalization: switch between English and Chinese, and use light, dark, or system appearance.

Requirements

  • Python 3.11 or newer with ReMe installed.
  • A running ReMe HTTP service. Agent chat additionally requires a working Agent and model configuration.
  • Node.js 22.13 or newer is required only when developing or building Studio from source.

See the repository README for ReMe installation and backend configuration.

Development

Start ReMe from the repository root, then run the frontend in another terminal:

# Terminal 1, from the repository root
reme start

# Terminal 2
cd reme_studio
npm install
npm run dev

Open http://localhost:3000. The frontend connects to http://127.0.0.1:2333 by default. Override it when needed:

NEXT_PUBLIC_REME_API_URL=http://127.0.0.1:8000 npm run dev

ReMe-hosted static build

ReMe can serve Studio from the same FastAPI process as its HTTP API. Build the static variant and restart ReMe:

cd reme_studio
npm ci
npm run build:static
cd ..
reme start

Open http://127.0.0.1:2333. The static build uses same-origin requests by default. For standalone static development, run npm run dev:static and set VITE_REME_API_URL to the running ReMe service URL when necessary.

The regular npm run build command remains the vinext/Sites deployment build; npm run build:static creates dist-static/ exclusively for FastAPI and Python package distribution.

Configuration

Copy .env.example to .env.local when persistent local overrides are useful. The vinext/Sites build reads NEXT_PUBLIC_*; the FastAPI/static build reads the matching VITE_* names:

Setting Build Purpose
NEXT_PUBLIC_REME_API_URL vinext/Sites ReMe HTTP service URL; defaults to http://127.0.0.1:2333
NEXT_PUBLIC_REME_WORKSPACE_EXTENSIONS vinext/Sites Comma-separated file extensions visible in the workspace
VITE_REME_API_URL static ReMe HTTP service URL; use / for same-origin FastAPI hosting
VITE_REME_WORKSPACE_EXTENSIONS static Static-build counterpart of the workspace extension list

The workspace hides dotfiles and dot-directories. It displays Markdown and text files by default. For example:

NEXT_PUBLIC_REME_WORKSPACE_EXTENSIONS=md,txt,mdx
VITE_REME_WORKSPACE_EXTENSIONS=md,txt,mdx

The memory graph requires an index built by ReMe. Rebuilding the index from the Studio settings regenerates derived data from workspace files and does not modify the source memory.

Checks

npm run format:check
npm run lint
npm run build
npm run build:static
npm test