sino-v2 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +203 -0
- package/bin/sino.js +21 -0
- package/package.json +40 -0
package/README.md
ADDED
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="docs/logo-ghost-wave-effect.svg" alt="SinoAgent" width="360"/>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<strong>English</strong>
|
|
7
|
+
·
|
|
8
|
+
<a href="./README.zh-CN.md">简体中文</a>
|
|
9
|
+
·
|
|
10
|
+
<a href="./docs/GUIDE.md">Guide</a>
|
|
11
|
+
·
|
|
12
|
+
<a href="./docs/ACP.md">ACP</a>
|
|
13
|
+
·
|
|
14
|
+
<a href="./docs/EXTENSIONS.md">Extensions</a>
|
|
15
|
+
·
|
|
16
|
+
<a href="./docs/SPEC.md">Spec</a>
|
|
17
|
+
·
|
|
18
|
+
<a href="https://gitee.com/wqy_94/sino-agentv2">Website</a>
|
|
19
|
+
·
|
|
20
|
+
<strong><a href="https://discord.gg/XF78rEME2D">Discord</a></strong>
|
|
21
|
+
</p>
|
|
22
|
+
|
|
23
|
+
<p align="center">
|
|
24
|
+
<a href="https://www.npmjs.com/package/sinoagent"><img src="https://img.shields.io/npm/v/sinoagent.svg?style=flat-square&color=cb3837&labelColor=161b22&logo=npm&logoColor=white" alt="npm version"/></a>
|
|
25
|
+
<a href="https://gitee.com/wqy_94/sino-agentv2/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/wqy_94/sino-agentv2/ci.yml?style=flat-square&label=ci&labelColor=161b22&logo=githubactions&logoColor=white" alt="CI"/></a>
|
|
26
|
+
<a href="./LICENSE"><img src="https://img.shields.io/npm/l/sinoagent.svg?style=flat-square&color=8b949e&labelColor=161b22" alt="license"/></a>
|
|
27
|
+
<a href="https://www.npmjs.com/package/sinoagent"><img src="https://img.shields.io/npm/dm/sinoagent.svg?style=flat-square&color=3fb950&labelColor=161b22&label=downloads" alt="downloads"/></a>
|
|
28
|
+
<a href="https://gitee.com/wqy_94/sino-agentv2/stargazers"><img src="https://img.shields.io/github/stars/wqy_94/sino-agentv2.svg?style=flat-square&color=dbab09&labelColor=161b22&logo=github&logoColor=white" alt="GitHub stars"/></a>
|
|
29
|
+
<a href="https://gitee.com/wqy_94/sino-agentv2"><img src="https://gitee.com/wqy_94/sino-agentv2/star/badge.svg" alt="AtomGit stars"/></a>
|
|
30
|
+
<a href="https://gitee.com/wqy_94/sino-agentv2/graphs/contributors"><img src="https://img.shields.io/github/contributors/wqy_94/sino-agentv2.svg?style=flat-square&color=bc8cff&labelColor=161b22&logo=github&logoColor=white" alt="contributors"/></a>
|
|
31
|
+
<a href="https://gitee.com/wqy_94/sino-agentv2/discussions"><img src="https://img.shields.io/github/discussions/wqy_94/sino-agentv2.svg?style=flat-square&color=58a6ff&labelColor=161b22&logo=github&logoColor=white" alt="Discussions"/></a>
|
|
32
|
+
<a href="https://discord.gg/XF78rEME2D"><img src="https://img.shields.io/badge/discord-join-5865F2.svg?style=flat-square&labelColor=161b22&logo=discord&logoColor=white" alt="Discord"/></a>
|
|
33
|
+
</p>
|
|
34
|
+
|
|
35
|
+
<p align="center">
|
|
36
|
+
<a href="https://trendshift.io/repositories/27020?utm_source=trendshift-badge&utm_medium=badge&utm_campaign=badge-trendshift-27020" target="_blank" rel="noopener noreferrer"><img src="https://trendshift.io/api/badge/trendshift/repositories/27020/monthly?language=Go" alt="wqy_94/sino-agentv2 | Trendshift" width="250" height="55"/></a>
|
|
37
|
+
<a href="https://trendshift.io/repositories/27020?utm_source=repository-badge&utm_medium=badge&utm_campaign=badge-repository-27020" target="_blank" rel="noopener noreferrer"><img src="https://trendshift.io/api/badge/repositories/27020" alt="wqy_94/sino-agentv2 | Trendshift" width="250" height="55"/></a>
|
|
38
|
+
</p>
|
|
39
|
+
|
|
40
|
+
<br/>
|
|
41
|
+
|
|
42
|
+
<p align="center"><strong>Open source · MIT · a single Go binary</strong></p>
|
|
43
|
+
<h3 align="center">A coding agent you can leave running.</h3>
|
|
44
|
+
<p align="center">One local engine, two ways in — terminal, or your editor over ACP. Plan mode, permissions, a workspace sandbox and per-turn checkpoints keep a long autonomous run something you can still read and undo.</p>
|
|
45
|
+
|
|
46
|
+
<div align="center">
|
|
47
|
+
<video src="https://github.com/user-attachments/assets/ab2f3878-e224-4931-8254-060e7695cfb9" controls preload="metadata" width="560"></video>
|
|
48
|
+
</div>
|
|
49
|
+
|
|
50
|
+
<br/>
|
|
51
|
+
|
|
52
|
+
> [!IMPORTANT]
|
|
53
|
+
> **Community · 加入社区** — bilingual Discord for setup help (`#help` / `#求助`), workflow showcases, and feature ideas. → **<https://discord.gg/XF78rEME2D>**
|
|
54
|
+
|
|
55
|
+
<br/>
|
|
56
|
+
|
|
57
|
+
## Features
|
|
58
|
+
|
|
59
|
+
- **Config-driven.** Providers, the agent, enabled tools, and plugins are all
|
|
60
|
+
declared in `sinoagent.toml`. No hardcoded models.
|
|
61
|
+
- **Multi-model & composable.** DeepSeek ships as a preset; any
|
|
62
|
+
OpenAI-compatible endpoint is a config entry, not new code. Optionally run
|
|
63
|
+
two models together (executor + planner) in separate, cache-stable sessions.
|
|
64
|
+
- **Plugin-driven.** MCP servers contribute tools, prompts, and resources;
|
|
65
|
+
Extension Protocol v1 sidecars can also intercept runtime events, contribute
|
|
66
|
+
Providers and structured UI, and ship versioned plugin packages.
|
|
67
|
+
- **Cache-aware context maintenance.** Startup injects a small stable environment
|
|
68
|
+
summary, stale tool output is snipped/pruned before summary compaction, and the
|
|
69
|
+
built-in tool schema contract is documented for regression review.
|
|
70
|
+
- **Zero-friction distribution.** `CGO_ENABLED=0` single binary; cross-compile
|
|
71
|
+
to six targets with one command. The result is a fully self-contained static
|
|
72
|
+
binary — nothing to install on the target machine beyond the binary itself.
|
|
73
|
+
|
|
74
|
+
## Install
|
|
75
|
+
|
|
76
|
+
SinoAgent is a single native CLI binary.
|
|
77
|
+
|
|
78
|
+
### CLI / TUI
|
|
79
|
+
|
|
80
|
+
Install the native binary through npm on any supported platform, or use
|
|
81
|
+
Homebrew on macOS:
|
|
82
|
+
|
|
83
|
+
```sh
|
|
84
|
+
npm i -g sinov2 # one-command install; also: npm i -g @sinoagent/sinov2
|
|
85
|
+
brew install wqy_94/sinoagent/sino # macOS
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Prebuilt archives (`darwin|linux|windows × amd64|arm64`) and `SHA256SUMS` are on
|
|
89
|
+
every [release](https://gitee.com/wqy_94/sino-agentv2/releases).
|
|
90
|
+
|
|
91
|
+
### Build from source
|
|
92
|
+
|
|
93
|
+
Clone the repository first:
|
|
94
|
+
|
|
95
|
+
```sh
|
|
96
|
+
git clone https://gitee.com/wqy_94/sino-agentv2.git
|
|
97
|
+
cd sino-agentv2
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
The CLI build requires **Go 1.25+**. The module pins a `toolchain` directive;
|
|
101
|
+
keep `GOTOOLCHAIN=auto` so Go downloads the pinned toolchain, or install it.
|
|
102
|
+
|
|
103
|
+
```sh
|
|
104
|
+
make build # -> bin/sino(.exe)
|
|
105
|
+
make cross # -> dist/ (darwin|linux|windows × amd64|arm64)
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Quick start
|
|
109
|
+
|
|
110
|
+
### CLI / TUI
|
|
111
|
+
|
|
112
|
+
These commands are for the CLI/TUI installed through Path A:
|
|
113
|
+
|
|
114
|
+
```sh
|
|
115
|
+
sino setup # configure a provider and model
|
|
116
|
+
sino # start an interactive session
|
|
117
|
+
sino run "implement the TODOs in main.go"
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
In an interactive session, run `/init` when you want SinoAgent to create project
|
|
121
|
+
instructions.
|
|
122
|
+
|
|
123
|
+
For advanced CLI usage and configuration, see the **[CLI reference](./docs/CLI.md)**,
|
|
124
|
+
**[Guide](./docs/GUIDE.md)**, and
|
|
125
|
+
**[configuration paths](./docs/CONFIG_PATHS.md)**.
|
|
126
|
+
|
|
127
|
+
## Documentation
|
|
128
|
+
|
|
129
|
+
- **Getting started:** [Guide](./docs/GUIDE.md) · [CLI reference](./docs/CLI.md) ·
|
|
130
|
+
[Configuration paths](./docs/CONFIG_PATHS.md) · [ACP editor integration](./docs/ACP.md)
|
|
131
|
+
- **Features & troubleshooting:** [Subagent profiles](./docs/SUBAGENT_PROFILES.md) ·
|
|
132
|
+
[Context Engine v2](./docs/SESSION_MEMORY_RETRIEVAL.md) ·
|
|
133
|
+
[Capability diagnostics](./docs/CAPABILITY_DIAGNOSTICS.md) ·
|
|
134
|
+
[Recovery and updates](./docs/RECOVERY.md) · [Bot guide](./docs/BOT_GUIDE.md) ·
|
|
135
|
+
[Checkpoints & rewind](./docs/CHECKPOINTS.md)
|
|
136
|
+
- **Engineering & migration:** [Spec](./docs/SPEC.md) ·
|
|
137
|
+
[Task contracts & pause policy](./docs/TASK_CONTRACT.md) ·
|
|
138
|
+
[Tool contract](./docs/TOOL_CONTRACT.md) · [Migrating from 0.x](./docs/MIGRATING.md)
|
|
139
|
+
- **Extension development:** [Extensions](./docs/EXTENSIONS.md) ·
|
|
140
|
+
[Plugin packages and Manifest v1](./docs/PLUGIN_PACKAGES.md) ·
|
|
141
|
+
[Extension Protocol](./docs/EXTENSION_PROTOCOL.md) ·
|
|
142
|
+
[Go SDK and starter](./sdk/go/README.md)
|
|
143
|
+
|
|
144
|
+
## Star History
|
|
145
|
+
|
|
146
|
+
<a href="https://www.star-history.com/?repos=wqy_94%2Fsino-agentv2&type=date&legend=top-left">
|
|
147
|
+
<picture>
|
|
148
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://gitee.com/wqy_94/sino-agentv2/raw/main/star-history/assets/star-history/star-history-dark.svg" />
|
|
149
|
+
<source media="(prefers-color-scheme: light)" srcset="https://gitee.com/wqy_94/sino-agentv2/raw/main/star-history/assets/star-history/star-history-light.svg" />
|
|
150
|
+
<img alt="Star History Chart" src="https://gitee.com/wqy_94/sino-agentv2/raw/main/star-history/assets/star-history/star-history-light.svg" />
|
|
151
|
+
</picture>
|
|
152
|
+
</a>
|
|
153
|
+
|
|
154
|
+
<br/>
|
|
155
|
+
|
|
156
|
+
## Acknowledgments
|
|
157
|
+
|
|
158
|
+
A small list of folks whose work has shaped SinoAgent the most — the current top
|
|
159
|
+
20 contributors by commit count. The full contributor graph is on
|
|
160
|
+
[GitHub](https://gitee.com/wqy_94/sino-agentv2/graphs/contributors?all=1).
|
|
161
|
+
|
|
162
|
+
<!-- sinoagent-top-contributors:start -->
|
|
163
|
+
| Contributor | Contributor | Contributor | Contributor |
|
|
164
|
+
| --- | --- | --- | --- |
|
|
165
|
+
| [**wqy_94**](https://gitee.com/wqy_94/sino-agentv2) | [**wqy_94**](https://gitee.com/wqy_94/sino-agentv2) | [**wqy_94**](https://gitee.com/wqy_94/sino-agentv2) | [**wqy_94**](https://gitee.com/wqy_94/sino-agentv2) |
|
|
166
|
+
| **sinoagent** | [**HUQIANTAO**](https://github.com/HUQIANTAO) | [**GTC2080**](https://github.com/GTC2080) | [**light-front-theory**](https://github.com/light-front-theory) |
|
|
167
|
+
| **merge-order-check** | [**Li-Charles-One**](https://github.com/Li-Charles-One) | [**eghrhegpe**](https://github.com/eghrhegpe) | **wufengfan** |
|
|
168
|
+
| [**CVEngineer66**](https://github.com/CVEngineer66) | [**dependabot\[bot\]**](https://github.com/apps/dependabot) | [**lanshi17**](https://github.com/lanshi17) | [**SuMuxi66**](https://github.com/SuMuxi66) |
|
|
169
|
+
| [**CnsMaple**](https://github.com/CnsMaple) | [**cyq1017**](https://github.com/cyq1017) | [**JesonChou**](https://github.com/JesonChou) | [**XTLine**](https://github.com/XTLine) |
|
|
170
|
+
<!-- sinoagent-top-contributors:end -->
|
|
171
|
+
|
|
172
|
+
Special thanks to [**Bernardxu123**](https://github.com/Bernardxu123) for designing the project logo and intro video.
|
|
173
|
+
|
|
174
|
+
<p align="center">
|
|
175
|
+
<a href="https://gitee.com/wqy_94/sino-agentv2/graphs/contributors">
|
|
176
|
+
<img src="https://contrib.rocks/image?repo=wqy_94/sino-agentv2&max=100&columns=12" alt="Contributors to wqy_94/sino-agentv2" width="860"/>
|
|
177
|
+
</a>
|
|
178
|
+
</p>
|
|
179
|
+
|
|
180
|
+
<br/>
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
<p align="center">
|
|
185
|
+
<sub>MIT — see <a href="./LICENSE">LICENSE</a></sub>
|
|
186
|
+
<br/>
|
|
187
|
+
<sub>Built by the community at <a href="https://gitee.com/wqy_94/sino-agentv2/graphs/contributors">wqy_94/sino-agentv2</a></sub>
|
|
188
|
+
</p>
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
<p align="center"><sub><strong>Support this project</strong></sub></p>
|
|
193
|
+
|
|
194
|
+
If SinoAgent has been useful and you'd like to say thanks, you can. It stays a
|
|
195
|
+
coffee, not a contract — donations don't buy feature priority or change how
|
|
196
|
+
issues get triaged.
|
|
197
|
+
|
|
198
|
+
- **International** — PayPal: [paypal.me/yuhuahui](https://paypal.me/yuhuahui)
|
|
199
|
+
- **国内** — 微信支付(扫码)
|
|
200
|
+
|
|
201
|
+
<p align="center">
|
|
202
|
+
<img src=".github/sponsor/wechat-pay.jpg" alt="WeChat Pay QR code" width="180"/>
|
|
203
|
+
</p>
|
package/bin/sino.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
const { spawnSync } = require("node:child_process");
|
|
3
|
+
|
|
4
|
+
const pkg = `@sinoagent/cli-${process.platform}-${process.arch}`;
|
|
5
|
+
const exe = `sino${process.platform === "win32" ? ".exe" : ""}`;
|
|
6
|
+
|
|
7
|
+
let binary;
|
|
8
|
+
try {
|
|
9
|
+
binary = require.resolve(`${pkg}/bin/${exe}`);
|
|
10
|
+
} catch {
|
|
11
|
+
console.error(
|
|
12
|
+
`sino: no prebuilt binary for ${process.platform}-${process.arch}.\n` +
|
|
13
|
+
`Install the matching optional package (${pkg}), or build from source:\n` +
|
|
14
|
+
` https://gitee.com/wqy_94/sino-agentv2`,
|
|
15
|
+
);
|
|
16
|
+
process.exit(1);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
const res = spawnSync(binary, process.argv.slice(2), { stdio: "inherit" });
|
|
20
|
+
if (res.error) throw res.error;
|
|
21
|
+
process.exit(res.status === null ? 1 : res.status);
|
package/package.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "sino-v2",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "Cache-first DeepSeek coding agent for the terminal.",
|
|
5
|
+
"bin": {
|
|
6
|
+
"sino": "bin/sino.js"
|
|
7
|
+
},
|
|
8
|
+
"files": [
|
|
9
|
+
"bin/sino.js"
|
|
10
|
+
],
|
|
11
|
+
"engines": {
|
|
12
|
+
"node": ">=18"
|
|
13
|
+
},
|
|
14
|
+
"license": "MIT",
|
|
15
|
+
"homepage": "https://gitee.com/wqy_94/sino-agentv2#readme",
|
|
16
|
+
"repository": {
|
|
17
|
+
"type": "git",
|
|
18
|
+
"url": "git+https://gitee.com/wqy_94/sino-agentv2.git"
|
|
19
|
+
},
|
|
20
|
+
"bugs": {
|
|
21
|
+
"url": "https://gitee.com/wqy_94/sino-agentv2/issues"
|
|
22
|
+
},
|
|
23
|
+
"keywords": [
|
|
24
|
+
"deepseek",
|
|
25
|
+
"ai",
|
|
26
|
+
"agent",
|
|
27
|
+
"cli",
|
|
28
|
+
"coding-assistant",
|
|
29
|
+
"tui"
|
|
30
|
+
],
|
|
31
|
+
"optionalDependencies": {
|
|
32
|
+
"@sinoagent/cli-darwin-arm64": "0.2.0",
|
|
33
|
+
"@sinoagent/cli-darwin-x64": "0.2.0",
|
|
34
|
+
"@sinoagent/cli-linux-arm64": "0.2.0",
|
|
35
|
+
"@sinoagent/cli-linux-x64": "0.2.0",
|
|
36
|
+
"@sinoagent/cli-win32-arm64": "0.2.0",
|
|
37
|
+
"@sinoagent/cli-win32-x64": "0.2.0"
|
|
38
|
+
},
|
|
39
|
+
"sinoagentCandidateSha": "d984f7754216a59297259c0b908f0af80c782d28"
|
|
40
|
+
}
|