@atlasharness/atlascode 0.1.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 +99 -0
- package/dist/cli.js +70910 -0
- package/package.json +93 -0
package/README.md
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# AtlasCode
|
|
2
|
+
|
|
3
|
+
面向国产计算生态的通用 Coding Agent(CLI + TUI)。基座 = 完整 AI 辅助编程能力
|
|
4
|
+
(代码生成 / 重构 / 调试 / 测试 / 多智能体编排),差异化 = 国产 LLM 后端深度支持
|
|
5
|
+
(OpenAI-protocol 静态键车道,任意 OpenAI-compatible 端点)与国产平台工具链预留
|
|
6
|
+
(Ascend NPU 域包为可插拔叠加层,W6 起接入)。
|
|
7
|
+
|
|
8
|
+
> 版本现状:G-α 前置阶段(v0.1.0 发布待 W2–W4 闭环 + P-1 远端仓库,见
|
|
9
|
+
> `docs/roadmap-domestic-and-residuals.md`)。
|
|
10
|
+
|
|
11
|
+
## 安装
|
|
12
|
+
|
|
13
|
+
两种通道,命令名均为 `atlas`:
|
|
14
|
+
|
|
15
|
+
**① npm 一行(推荐,仅需 [node](https://nodejs.org) ≥ 20,无需 bun/源码构建)**
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npm install -g @atlasharness/atlascode
|
|
19
|
+
atlas --help
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**② git 源码**(前置:`git` + [bun](https://bun.sh)(构建)+ `node`(运行))
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
./install.sh [repo-url]
|
|
26
|
+
# 或 ATLAS_REPO=<url> ./install.sh
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
流程:`git clone → bun install → bun run build → 链接 ~/.atlas/bin/atlas`。
|
|
30
|
+
可覆盖 env:`ATLAS_INSTALL_ROOT`(默认 `~/.atlas/atlascode`)/ `ATLAS_BIN_DIR`
|
|
31
|
+
(默认 `~/.atlas/bin`)/ `ATLAS_BIN_NAME`(默认 `atlas`)。
|
|
32
|
+
|
|
33
|
+
> P-1 占位:发布仓 `vincentlau2046/AtlasCode` 尚未 push(P-1 未解除),git 通道
|
|
34
|
+
> 缺省 REPO 为预期地址——远端未建前请显式传参(本地仓路径或 `ATLAS_REPO`);
|
|
35
|
+
> npm 通道不依赖 git 远端,发布后即可用。
|
|
36
|
+
> 装好后远端升级:git 通道跑 `atlas update`(= `git pull --ff-only` + `bun install`
|
|
37
|
+
> + build,原地重建符号链接即刻生效);npm 通道跑 `npm install -g
|
|
38
|
+
> @atlasharness/atlascode@latest`。本地 dev loop 见 `docs/dev-loop.md`。
|
|
39
|
+
|
|
40
|
+
## 配置
|
|
41
|
+
|
|
42
|
+
配置目录 `~/.atlas/`,主配置 `~/.atlas/settings.json`:
|
|
43
|
+
|
|
44
|
+
- **三角色模型池**(`premium` / `fast` / `small`):`modelRoles.<role>` =
|
|
45
|
+
`{ provider, model?, models?(池,水平回退序), baseURL?, apiKey? }`;
|
|
46
|
+
`defaultRole` 选主循环默认角色(缺省 `small`)。
|
|
47
|
+
- **Provider 表**:`providers.<name>` =
|
|
48
|
+
`{ baseURL, apiKey, api, models: [{ id, name?, contextWindow?, maxTokens? }],
|
|
49
|
+
defaultContextWindow?, defaultMaxTokens? }`;模型引用 `"<provider>/<modelId>"`
|
|
50
|
+
(池内裸 id 按 provider 表归一化)。
|
|
51
|
+
- **鉴权**(OpenAI-protocol 静态键,优先级 env > settings 角色级 > settings 全局):
|
|
52
|
+
全局 `OPENAI_AUTH_TOKEN` / `OPENAI_API_KEY`;per-role
|
|
53
|
+
`ATLAS_<ROLE>_MODEL` / `_PROVIDER` / `_BASE_URL` / `_API_KEY`
|
|
54
|
+
(`<ROLE>` ∈ `PREMIUM` / `FAST` / `SMALL`)。
|
|
55
|
+
|
|
56
|
+
示例(IFF 网关,本机 IFF 侧配置):
|
|
57
|
+
|
|
58
|
+
```json
|
|
59
|
+
{
|
|
60
|
+
"defaultRole": "small",
|
|
61
|
+
"providers": {
|
|
62
|
+
"iff": {
|
|
63
|
+
"baseURL": "http://127.0.0.1:8999/v1",
|
|
64
|
+
"apiKey": "<your-key>",
|
|
65
|
+
"api": "openai-completions",
|
|
66
|
+
"models": [{ "id": "Qwen38-27B-TXT" }]
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"modelRoles": {
|
|
70
|
+
"small": { "provider": "iff", "models": ["Qwen38-27B-TXT"] },
|
|
71
|
+
"fast": { "provider": "iff", "models": ["Qwen38-27B-TXT"] },
|
|
72
|
+
"premium": { "provider": "iff", "models": ["Qwen38-27B-TXT"] }
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## 使用
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
atlas # 交互式 TUI(Ink)
|
|
81
|
+
atlas --help # 全量选项
|
|
82
|
+
echo "hi" | atlas -p --output-format stream-json --allowedTools "Read"
|
|
83
|
+
atlas update # 远端升级(装好车道后)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
headless 提示词经 stdin(或置于可变选项之前);`--allowedTools` / `--tools` /
|
|
87
|
+
`--disallowedTools` / `--mcp-config` 为可变选项,会吞掉尾随位置参数——
|
|
88
|
+
prompt 放前面。G-α 冒烟清单见 `docs/smoke-checklist.md`。
|
|
89
|
+
|
|
90
|
+
## 仓库布局
|
|
91
|
+
|
|
92
|
+
- `src/` 八域 + `engine` + 壳:`shared`(叶子)/ `sandbox` / `memory` /
|
|
93
|
+
`executor` / `modelprovider` / `task` / `bootstrap` / `permissions` /
|
|
94
|
+
`hooks` 八域(port 解耦,只依赖 shared)+ `engine`(agent loop + 工具本体)
|
|
95
|
+
+ `cli`(公共域)/ `tui`(React+Ink 壳)/ `atlascode`(组合根壳)+
|
|
96
|
+
`swarm` / `lsp` / `remote` / `mcp` / `ascend`(域包,未挂载)。
|
|
97
|
+
- `docs/execution-strategy.md` = 实施裁定记录(§8.x,临场裁回设计记录);
|
|
98
|
+
`docs/roadmap-domestic-and-residuals.md` = 发布路线(W1–W5 + W-opt,
|
|
99
|
+
G-α/G-β 门禁)。
|