# annodex

AI-native bioinformatics workspace by Annoroad, backed by Codex app-server. It provides browser-based project/session browsing, streaming agent chat, branch navigation, reports, and file viewing/editing.

Version: `0.1.1`
Repository: [seqyuan/annodex](https://github.com/seqyuan/annodex)

## Quick Start

```bash
npm install -g @seqyuan/annodex
annodex
```

Open [http://localhost:30121](http://localhost:30121). On first start, annodex can optionally set a password, similar to Jupyter.

## CLI

```bash
annodex                      # start managed background server
annodex start                # start if not already running
annodex restart              # stop then start
annodex stop                 # stop background server
annodex status               # show server status
annodex logs                 # show recent logs
annodex logs -f              # follow logs
annodex --port 8080          # custom port
annodex --hostname 127.0.0.1 # bind host
annodex --version            # print version
annodex --help               # print help
annodex update               # update global package
annodex passwd               # set/change password
annodex passwd --reset       # remove password

PORT=8080 annodex
ANNODEX_PASSWORD=xxx annodex
```

Managed servers auto-restart after package updates once active agent sessions are idle. Set `ANNODEX_AUTO_RESTART=0` to disable. Legacy `ANNOVIBE_*` and `PIDEX_*` environment variables are still accepted for migration.

## Data

- Codex threads are read through `codex app-server` from Codex's own storage.
- annodex settings live under `~/.config/annodex`.
- Provider settings are stored in `~/.config/annodex/providers.json`.
- Project registry is stored in `~/.config/annodex/annodex-projects.json`.
- Password auth is stored in `~/.config/annodex/web-auth.json`.

## Development

```bash
npm install
npm run dev   # port 30121
```

Typecheck: `node_modules/.bin/tsc --noEmit`
Lint: `npm run lint`

Do not run `next build` during dev; it pollutes `.next/` and can break `npm run dev`.
