diff --git a/README.en.md b/README.en.md new file mode 100644 index 0000000..e36bffc --- /dev/null +++ b/README.en.md @@ -0,0 +1,209 @@ +

+ Reasonix +

+ +

+ English +  ·  + 简体中文 +  ·  + Guide +  ·  + Spec +  ·  + Website +  ·  + Discord +

+ +> [!IMPORTANT] +> **Reasonix 1.0 is a ground-up rewrite in Go** — this branch (`main-v2`) is the new default and where development happens now. +> The earlier `0.x` TypeScript releases are **legacy**, living on the [`v1`](https://github.com/esengine/DeepSeek-Reasonix/tree/v1) branch (maintenance only). +> See the **[migration guide](./docs/MIGRATING.md)**. `npm i -g reasonix` stays the install command — `1.0.0`+ delivers the Go binary, `0.x` is the legacy TS build. + +

+ npm version + CI + license + downloads + GitHub stars + AtomGit stars + contributors + Discussions + Discord +

+ +
+ +

A DeepSeek-native AI coding agent for your terminal.

+

A config- and plugin-driven harness — a single static Go binary, tuned around DeepSeek's prefix cache so token costs stay low across long sessions.

+ +
+ +> [!IMPORTANT] +> **Community · 加入社区** — bilingual Discord for setup help (`#help` / `#求助`), workflow showcases, and feature ideas. → **** + +
+ +## Features + +- **Config-driven.** Providers, the agent, enabled tools, and plugins are all + declared in `reasonix.toml`. No hardcoded models. +- **Multi-model & composable.** DeepSeek ships as a preset; any + OpenAI-compatible endpoint is a config entry, not new code. Optionally run + two models together (executor + planner) in separate, cache-stable sessions. +- **Plugin-driven.** External tools run as subprocesses over stdio JSON-RPC + (MCP-compatible). Built-in tools self-register at compile time. +- **Cache-aware context maintenance.** Startup injects a small stable environment + summary, stale tool output is snipped/pruned before summary compaction, and the + built-in tool schema contract is documented for regression review. +- **Zero-friction distribution.** `CGO_ENABLED=0` single binary; cross-compile + to six targets with one command. The only dependency is a TOML parser. + +## Install + +```sh +npm i -g reasonix # any OS; pulls the prebuilt native binary +brew install esengine/reasonix/reasonix # macOS +``` + +Prebuilt archives (`darwin|linux|windows × amd64|arm64`) and `SHA256SUMS` are on +every [GitHub release](https://github.com/esengine/DeepSeek-Reasonix/releases). + +### Code signing + +Windows builds are code-signed with a free certificate provided by the +[SignPath Foundation](https://signpath.org/), with signing through +[SignPath.io](https://signpath.io/). + +### Build from source + +```sh +make build # -> bin/reasonix(.exe) +make cross # -> dist/ (darwin|linux|windows × amd64|arm64) +``` + +## Quick start + +```sh +reasonix setup # config wizard → ./reasonix.toml +export DEEPSEEK_API_KEY=sk-... # or let setup save it to Reasonix home .env +reasonix # then run /init to generate AGENTS.md (project memory) +reasonix run "implement the TODOs in main.go" +reasonix run --model deepseek-pro "add unit tests for this function" +echo "explain this code" | reasonix run +``` + +## Configuration + +A minimal `reasonix.toml` — one provider and a default model — is enough to start: + +```toml +default_model = "deepseek-flash" + +[[providers]] +name = "deepseek-flash" +kind = "openai" +base_url = "https://api.deepseek.com" +model = "deepseek-v4-flash" +api_key_env = "DEEPSEEK_API_KEY" +``` + +Resolution order is **flag > `./reasonix.toml` > the user config file > +built-in defaults**; starting with **Reasonix v1.8.1**, the user file lives at +`~/.reasonix/config.toml` on macOS/Linux and +`%AppData%\reasonix\config.toml` on Windows. See +**[Configuration paths](./docs/CONFIG_PATHS.md)** for migration details and the +full `config.toml` / `.env` structure. Provider entries name secrets with +`api_key_env`; the secret values themselves live in Reasonix's global +`/.env`, shared by CLI and desktop. Project `.env` files are not +provider-key runtime fallbacks, but still feed workspace-scoped, non-provider +`${VAR}` expansion for MCP/plugin settings without importing Reasonix control +variables. Permissions, the sandbox, plugins (MCP), slash +commands, `@` references, and two-model setup are all in the +**[Guide](./docs/GUIDE.md)**. + +## Documentation + +- **[Guide](./docs/GUIDE.md)** — configuration, permissions & sandbox, plugins + (MCP), slash commands, `@` references, two-model collaboration. +- **[Subagent profiles](./docs/SUBAGENT_PROFILES.md)** — create, share, preview, + run, edit, and safely delete isolated agent profiles from desktop or CLI. +- **[Capability diagnostics](./docs/CAPABILITY_DIAGNOSTICS.md)** — + `reasonix doctor capabilities`, desktop Settings → Diagnostics, and the + `/reasonix-guide` skill for skills/hooks/MCP/plugin troubleshooting. +- **[Bot guide](./docs/BOT_GUIDE.md)** — connect Feishu, Lark, and WeChat bots + from the desktop app, then use approvals, YOLO, and commands from IM. +- **[Spec](./docs/SPEC.md)** — engineering contract: architecture, registries, + data types, and roadmap. +- **[Task contracts & pause policy](./docs/TASK_CONTRACT.md)** — structure + complex requests with context, output boundaries, constraints, and when to ask. +- **[Tool contract](./docs/TOOL_CONTRACT.md)** — provider-visible built-in tool + names, read-only flags, and schema snapshot guard. +- **[Migrating from 0.x](./docs/MIGRATING.md)** — moving from the legacy + TypeScript releases to the 1.0 Go rewrite. +- **[Checkpoints & rewind](./docs/CHECKPOINTS.md)** — the snapshot-based edit + safety net (Esc-Esc / `/rewind`). + +
+ +## Star History + + + + + + Star History Chart + + + +
+ +## Support + +If Reasonix has been useful and you'd like to say thanks, you can. It stays a coffee, not a contract — donations don't buy feature priority or change how issues get triaged. + +- **International** — PayPal: [paypal.me/yuhuahui](https://paypal.me/yuhuahui) +- **国内** — 微信支付(扫码) + +

+ WeChat Pay QR code +

+ +
+ +## Acknowledgments + +A small list of folks whose work has shaped Reasonix the most — the current top +20 contributors by commit count. The full contributor graph is on +[GitHub](https://github.com/esengine/DeepSeek-Reasonix/graphs/contributors?all=1). + + +| Contributor | Contributor | Contributor | Contributor | +| --- | --- | --- | --- | +| [**SivanCola**](https://github.com/SivanCola) | [**esengine**](https://github.com/esengine) | [**ttmouse**](https://github.com/ttmouse) | [**lifu963**](https://github.com/lifu963) | +| **reasonix** (anonymous) | [**HUQIANTAO**](https://github.com/HUQIANTAO) | [**GTC2080**](https://github.com/GTC2080) | [**light-front-theory**](https://github.com/light-front-theory) | +| **merge-order-check** (anonymous) | [**Li-Charles-One**](https://github.com/Li-Charles-One) | [**eghrhegpe**](https://github.com/eghrhegpe) | **wufengfan** (anonymous) | +| [**CVEngineer66**](https://github.com/CVEngineer66) | [**dependabot\[bot\]**](https://github.com/apps/dependabot) | [**lanshi17**](https://github.com/lanshi17) | [**SuMuxi66**](https://github.com/SuMuxi66) | +| [**CnsMaple**](https://github.com/CnsMaple) | [**cyq1017**](https://github.com/cyq1017) | [**JesonChou**](https://github.com/JesonChou) | [**XTLine**](https://github.com/XTLine) | + + +Also a separate thank-you to [**Bernardxu123**](https://github.com/Bernardxu123) +for designing the project logo, and to +[AIGC Link](https://xhslink.com/m/80ngts127cA) for promoting the project on XiaoHongShu. + +

+ + Contributors to esengine/DeepSeek-Reasonix + +

+ +
+ +--- + +

+ MIT — see LICENSE +
+ Built by the community at esengine/DeepSeek-Reasonix +