sintbot 1.0.16 → 1.3.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/CHANGELOG.en.json +99 -0
- package/CHANGELOG.json +99 -0
- package/README.md +20 -158
- package/README.zh-CN.md +20 -166
- package/THIRD-PARTY-NOTICES.md +394 -0
- package/bin/sintbot-v2.js +363 -0
- package/docs/AI-ASSISTED-INSTALL.md +11 -35
- package/docs/install.md +61 -167
- package/docs/zh-CN/AI-ASSISTED-INSTALL.md +11 -35
- package/docs/zh-CN/install.md +61 -165
- package/install.sh +84 -0
- package/package.json +73 -37
- package/src/agent/claudecode.js +149 -108
- package/src/agent/codexapp.js +458 -0
- package/src/agent/codexcode.js +210 -107
- package/src/agent/errtag.js +34 -0
- package/src/agent/privatecore.js +790 -0
- package/src/agent/privatecore.wasm +0 -0
- package/src/agent/runner.js +10 -8
- package/src/agent/winexec.js +35 -5
- package/src/c2install.js +117 -0
- package/src/config.js +2 -1
- package/src/core/c2cardeffectbridge.js +51 -0
- package/src/core/c2cardterminalpath.js +216 -0
- package/src/core/c2durableingress.js +148 -0
- package/src/core/c2durablejournal.js +1560 -0
- package/src/core/c2durableruntime.js +2361 -0
- package/src/core/c2eventidentity.js +90 -0
- package/src/core/c2globalfault.js +401 -0
- package/src/core/c2localeffectexecutor.js +193 -0
- package/src/core/c2payloadhandles.js +333 -0
- package/src/core/c2persistrelation.js +179 -0
- package/src/core/c2persiststate.js +342 -0
- package/src/core/c2platformrecoverysender.js +76 -0
- package/src/core/c2recoverygate.js +385 -0
- package/src/core/c2runnerinput.js +63 -0
- package/src/core/c2servicestartgate.js +103 -0
- package/src/core/c2sessionbridge.js +72 -0
- package/src/core/c2sourcequarantine.js +30 -0
- package/src/core/c2startuprecovery.js +105 -0
- package/src/core/c2successorbridge.js +151 -0
- package/src/core/c2terminaleffectbridge.js +154 -0
- package/src/core/c2terminalprune.js +108 -0
- package/src/core/c2turnprojection.js +177 -0
- package/src/core/enginecheckpoint.js +211 -0
- package/src/core/engineeffectcursor.js +394 -0
- package/src/core/enginestepcoordinator.js +183 -0
- package/src/core/store.js +52 -8
- package/src/core/v2engine.js +1469 -0
- package/src/platform/feishu.js +324 -67
- package/src/plugins.js +1 -9
- package/assets/design-styles/acid-pop.md +0 -155
- package/assets/design-styles/archive-index.md +0 -161
- package/assets/design-styles/art-deco.md +0 -164
- package/assets/design-styles/cinematic-noir.md +0 -178
- package/assets/design-styles/editorial.md +0 -121
- package/assets/design-styles/extra/README.md +0 -23
- package/assets/design-styles/extra/constructivism.md +0 -146
- package/assets/design-styles/extra/neo-brutalism.md +0 -175
- package/assets/design-styles/extra/new-wave.md +0 -166
- package/assets/design-styles/extra/nordic-material.md +0 -162
- package/assets/design-styles/extra/paris-couture.md +0 -162
- package/assets/design-styles/extra/tropical-modern.md +0 -168
- package/assets/design-styles/extra/ulm-functional.md +0 -182
- package/assets/design-styles/extra/wa-shikimen.md +0 -160
- package/assets/design-styles/extra/y2k-chrome.md +0 -172
- package/assets/design-styles/geometric-pop.md +0 -122
- package/assets/design-styles/hand-drawn.md +0 -117
- package/assets/design-styles/islamic-geometry.md +0 -155
- package/assets/design-styles/liquid-glass.md +0 -183
- package/assets/design-styles/neo-chinese.md +0 -136
- package/assets/design-styles/precision-mono.md +0 -156
- package/assets/design-styles/quiet-luxury.md +0 -163
- package/assets/design-styles/riso-print.md +0 -116
- package/assets/design-styles/soft-friendly.md +0 -174
- package/assets/design-styles/swiss-grid.md +0 -156
- package/assets/design-styles/tech-dark.md +0 -182
- package/assets/favicon.svg +0 -6
- package/assets/logo.svg +0 -24
- package/bin/sbot.js +0 -4716
- package/docs/slack-app-manifest.yaml +0 -104
- package/sbot.config.example.json +0 -235
- package/src/agent/askonce.js +0 -76
- package/src/agent/claudemodels.js +0 -60
- package/src/agent/claudestatus.js +0 -74
- package/src/agent/claudeusage.js +0 -200
- package/src/agent/codexstatus.js +0 -181
- package/src/agent/imagen.js +0 -458
- package/src/agent/quotaerr.js +0 -44
- package/src/agent/transienterr.js +0 -32
- package/src/cdp.js +0 -254
- package/src/cli-secret.js +0 -36
- package/src/clilang.js +0 -31
- package/src/core/cron.js +0 -182
- package/src/core/cronfire.js +0 -120
- package/src/core/cronrun.js +0 -116
- package/src/core/engine.js +0 -2758
- package/src/core/interfaces.js +0 -114
- package/src/core/issues.js +0 -185
- package/src/core/ledger.js +0 -30
- package/src/core/opsalert.js +0 -214
- package/src/core/pending.js +0 -123
- package/src/core/proxy.js +0 -424
- package/src/core/quotaalert.js +0 -79
- package/src/core/quotaerr.js +0 -55
- package/src/core/scheduler.js +0 -59
- package/src/design.js +0 -5161
- package/src/gitrepo.js +0 -150
- package/src/health.js +0 -353
- package/src/installdeps.js +0 -72
- package/src/leftover.js +0 -174
- package/src/platform/boardnotice.js +0 -77
- package/src/platform/boardops.js +0 -36
- package/src/platform/boardwatch.js +0 -447
- package/src/platform/cli.js +0 -45
- package/src/platform/slack.js +0 -1289
- package/src/platform/takeovercard.js +0 -37
- package/src/platform/wecom.js +0 -938
- package/src/platform/wecomcli.js +0 -128
- package/src/platform/wecomgate.js +0 -108
- package/src/platform/wecomname.js +0 -43
- package/src/platform/wecompoll.js +0 -241
- package/src/preview.js +0 -581
- package/src/projectmemory.js +0 -175
- package/src/service.js +0 -317
- package/src/ui/auth.js +0 -31
- package/src/ui/browser.html +0 -392
- package/src/ui/browserroutes.js +0 -234
- package/src/ui/console.html +0 -5526
- package/src/ui/dashboard.js +0 -168
- package/src/ui/feishulogin.js +0 -136
- package/src/ui/server.js +0 -2314
- package/src/ui/sessions.js +0 -78
- package/src/ui/takeover.js +0 -108
- package/src/updater.js +0 -243
- package/src/upgrade.js +0 -35
- package/src/usage.js +0 -144
package/CHANGELOG.en.json
CHANGED
|
@@ -1,4 +1,103 @@
|
|
|
1
1
|
[
|
|
2
|
+
{
|
|
3
|
+
"version": "1.3.0",
|
|
4
|
+
"date": "2026-11-08",
|
|
5
|
+
"name": "Built-in core",
|
|
6
|
+
"items": [
|
|
7
|
+
{
|
|
8
|
+
"t": "Adds a built-in core",
|
|
9
|
+
"d": "This release supports Codex messages in one Feishu group on macOS. Whiteboards, multiple groups and other platforms will follow. Keep existing multi-group installations and configure this release separately using the installation guide."
|
|
10
|
+
}
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"version": "1.2.1",
|
|
15
|
+
"date": "2026-11-05",
|
|
16
|
+
"name": "Follow-up notice fix",
|
|
17
|
+
"items": [
|
|
18
|
+
{
|
|
19
|
+
"t": "No false queue notice right after a task starts",
|
|
20
|
+
"d": "A follow-up sent in the first few seconds joins the running task once the channel is ready, without first saying it will wait until the task ends."
|
|
21
|
+
}
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"version": "1.2.0",
|
|
26
|
+
"date": "2026-11-05",
|
|
27
|
+
"name": "Steadier follow-ups, clearer errors",
|
|
28
|
+
"items": [
|
|
29
|
+
{
|
|
30
|
+
"t": "The reply card follows the latest follow-up",
|
|
31
|
+
"d": "Once a follow-up is accepted, the card moves under that message, so the answer ends up at the bottom of the group. A short notice is sent only when the card cannot move."
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"t": "Recalls and redos no longer lose messages",
|
|
35
|
+
"d": "A recalled follow-up that had not been delivered no longer runs on its own. A redo in a new session or on another model keeps delivered follow-ups, except recalled ones."
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"t": "Codex requests no longer stall a task",
|
|
39
|
+
"d": "Approval and question requests are declined according to the protocol, and the task continues."
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"t": "Console messages can join the running task",
|
|
43
|
+
"d": "A console message with Reply checked is treated like a group member's. The group line is posted first, the dialog says where the message will go, and the result reports where it landed."
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"t": "Feishu answer cards show the model and quota",
|
|
47
|
+
"d": "The small print on the card now includes the current model and account quota."
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"t": "Plain explanations for network and billing errors",
|
|
51
|
+
"d": "Network failures, low balance and expired subscriptions are explained in the group. Repeated network failures alert the operator, and account problems can fail over."
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"t": "Lost sessions are redone automatically",
|
|
55
|
+
"d": "Claude and Codex groups clear a session that no longer exists, redo the message in a new one, and say so in the group."
|
|
56
|
+
}
|
|
57
|
+
]
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"version": "1.1.0",
|
|
61
|
+
"date": "2026-11-05",
|
|
62
|
+
"name": "Codex busy follow-up",
|
|
63
|
+
"items": [
|
|
64
|
+
{
|
|
65
|
+
"t": "Codex can receive follow-ups during a task",
|
|
66
|
+
"d": "Busy follow-up is on by default for Codex groups. Ordinary human follow-up messages enter the active task through the App Server; related requests can adjust the work, independent requests are answered separately in order, and unconfirmed deliveries return to the queue. It can be disabled per group; Claude groups and scheduled, quiet, and polled messages keep their existing behavior."
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"t": "Busy follow-up is limited to the effective Codex backend",
|
|
70
|
+
"d": "The console shows the control for the backend currently in use, and the server validates it too. Changes apply from the next turn."
|
|
71
|
+
}
|
|
72
|
+
]
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"version": "1.0.17",
|
|
76
|
+
"date": "2026-11-05",
|
|
77
|
+
"name": "More reliable installs and runs",
|
|
78
|
+
"items": [
|
|
79
|
+
{
|
|
80
|
+
"t": "Installs are verified by running the program",
|
|
81
|
+
"d": "After installing a model CLI, setup runs it once to confirm its version. A file on disk or a clean installer exit no longer counts as success, and a failed check explains what went wrong and what to do next."
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"t": "Health checks ignore files that cannot run",
|
|
85
|
+
"d": "Files without execute permission are no longer reported as installed programs. Automatic installs also keep the platform components the CLI needs to run."
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"t": "Finds a model CLI that has moved",
|
|
89
|
+
"d": "If the configured path stops working, SintBot looks for the same program in common install locations and keeps going. If it is nowhere to be found, the group gets a plain explanation and the operator gets an alert."
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"t": "Clearer handling of lost logins and crashes",
|
|
93
|
+
"d": "A revoked login token now counts as an account problem, so the group can fail over and alert. A Codex run that exits with only an error gets the same treatment."
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"t": "Fixed occasional garbled Chinese",
|
|
97
|
+
"d": "Characters split across output chunks no longer turn into garbage."
|
|
98
|
+
}
|
|
99
|
+
]
|
|
100
|
+
},
|
|
2
101
|
{
|
|
3
102
|
"version": "1.0.16",
|
|
4
103
|
"date": "2026-10-30",
|
package/CHANGELOG.json
CHANGED
|
@@ -1,4 +1,103 @@
|
|
|
1
1
|
[
|
|
2
|
+
{
|
|
3
|
+
"version": "1.3.0",
|
|
4
|
+
"date": "2026-11-08",
|
|
5
|
+
"name": "补充内置核心",
|
|
6
|
+
"items": [
|
|
7
|
+
{
|
|
8
|
+
"t": "补充内置核心",
|
|
9
|
+
"d": "本版支持 macOS 上的飞书单群 Codex 消息;画布、多群和其他平台后续迭代。已有多群安装请保留原版本,按新版安装指南单独配置。"
|
|
10
|
+
}
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"version": "1.2.1",
|
|
15
|
+
"date": "2026-11-05",
|
|
16
|
+
"name": "修复补话时的误报",
|
|
17
|
+
"items": [
|
|
18
|
+
{
|
|
19
|
+
"t": "刚开始处理时补话不再误报已排队",
|
|
20
|
+
"d": "任务刚开始的几秒内补话,会在通道就绪后并入当前任务,不再先说一句「当前任务结束后处理」。"
|
|
21
|
+
}
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"version": "1.2.0",
|
|
26
|
+
"date": "2026-11-05",
|
|
27
|
+
"name": "忙时跟进更可靠,出错说得更清楚",
|
|
28
|
+
"items": [
|
|
29
|
+
{
|
|
30
|
+
"t": "回答卡片跟着最新的跟进走",
|
|
31
|
+
"d": "跟进被接受后,回复卡片移到这条消息下面,做完时答案在群底部;卡片搬不了时才发一句「已加入」。"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"t": "撤回和重做不再丢消息",
|
|
35
|
+
"d": "撤回还没送达的跟进后不会再单独执行;换会话或切模型重做时,已送达的跟进会一起带上,撤回过的除外。"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"t": "Codex 主动请求不再卡住任务",
|
|
39
|
+
"d": "无人值守时按协议拒绝审批和提问请求,任务继续往下走。"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"t": "控制台插话可以加入当前任务",
|
|
43
|
+
"d": "勾了「回复」的插话按群成员消息处理;先等群里那行发出去再执行,插话框说明去向,提交后回报落点。"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"t": "飞书回答卡显示模型和额度",
|
|
47
|
+
"d": "卡片右下角的小字增加当前模型和账号额度。"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"t": "连不上模型、余额不足都说人话",
|
|
51
|
+
"d": "网络不通、余额不足、订阅过期在群里都有清楚的说明;连续网络失败发运维告警,账号类问题可切备用模型。"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"t": "续接的会话不见了会自动重做",
|
|
55
|
+
"d": "Claude 和 Codex 群都会清掉失效的会话,在新会话里重做这条,并在群里说一句。"
|
|
56
|
+
}
|
|
57
|
+
]
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"version": "1.1.0",
|
|
61
|
+
"date": "2026-11-05",
|
|
62
|
+
"name": "Codex 忙时跟进",
|
|
63
|
+
"items": [
|
|
64
|
+
{
|
|
65
|
+
"t": "Codex 可接收任务进行中的后续消息",
|
|
66
|
+
"d": "Codex 群默认开启忙时跟进,通过 App Server 将普通真人后续消息送入当前任务;关联要求及时吸收,独立请求按序分别回应,未确认送达的消息回到队列。可按群关闭;Claude 群及定时、静默、轮询消息维持原行为。"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"t": "忙时跟进仅对实际 Codex 后端开放",
|
|
70
|
+
"d": "控制台按当前生效的后端显示开关,服务端也会校验;设置从下一轮开始生效。"
|
|
71
|
+
}
|
|
72
|
+
]
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"version": "1.0.17",
|
|
76
|
+
"date": "2026-11-05",
|
|
77
|
+
"name": "安装判定和运行稳定性",
|
|
78
|
+
"items": [
|
|
79
|
+
{
|
|
80
|
+
"t": "安装后实际运行一次才算成功",
|
|
81
|
+
"d": "向导装好模型程序后会实际运行一次确认版本,文件存在或安装命令正常退出都不再算成功;校验失败时会说明原因和处理办法。"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"t": "体检不再把不能运行的文件当成已安装",
|
|
85
|
+
"d": "没有执行权限的文件不再被识别为可用程序。自动安装时也会带上程序运行所需的平台组件。"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"t": "模型程序换位置后自动找回",
|
|
89
|
+
"d": "配置的路径失效时,会在常见安装位置找同一个程序继续运行;哪里都找不到时在群里说明,并发运维告警。"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"t": "登录失效和异常退出说得更清楚",
|
|
93
|
+
"d": "登录令牌被吊销算账号问题,可切备用模型并告警;Codex 只输出错误就退出时也走同样的处理。"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"t": "修复中文偶尔乱码",
|
|
97
|
+
"d": "输出中的汉字被分块拆开时不再变成乱码。"
|
|
98
|
+
}
|
|
99
|
+
]
|
|
100
|
+
},
|
|
2
101
|
{
|
|
3
102
|
"version": "1.0.16",
|
|
4
103
|
"date": "2026-10-30",
|
package/README.md
CHANGED
|
@@ -1,179 +1,41 @@
|
|
|
1
|
-
|
|
2
|
-
<a href="https://sintbot.com"><picture><source srcset="https://raw.githubusercontent.com/sintlab/sintbot/main/docs/assets/hero.svg" type="image/svg+xml"><img src="https://raw.githubusercontent.com/sintlab/sintbot/main/docs/assets/banner.png" alt="SintBot — the group-project AI daemon, running on your own machine" width="880"></picture></a>
|
|
3
|
-
</p>
|
|
1
|
+
# SintBot
|
|
4
2
|
|
|
5
|
-
|
|
3
|
+
[简体中文](./README.zh-CN.md) · [Install](./docs/install.md) · [Website](https://sintbot.com)
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
<a href="https://www.npmjs.com/package/sintbot"><img src="https://img.shields.io/npm/v/sintbot?style=flat-square&color=d68f44" alt="npm version"></a>
|
|
9
|
-
<a href="https://github.com/sintlab/sintbot/actions/workflows/test.yml"><img src="https://img.shields.io/github/actions/workflow/status/sintlab/sintbot/test.yml?branch=main&style=flat-square&label=tests" alt="tests"></a>
|
|
10
|
-
<img src="https://img.shields.io/node/v/sintbot?style=flat-square" alt="node version">
|
|
11
|
-
<a href="./LICENSE"><img src="https://img.shields.io/badge/license-PolyForm%20Shield-blue?style=flat-square" alt="PolyForm Shield license"></a>
|
|
12
|
-
</p>
|
|
5
|
+
SintBot runs a coding agent on your Mac from a Feishu group. Bind **one group to one local project**, send a request, and receive progress and the final reply in that group.
|
|
13
6
|
|
|
14
|
-
|
|
15
|
-
<a href="https://sintbot.com">Website</a> ·
|
|
16
|
-
<a href="./README.zh-CN.md">简体中文</a> ·
|
|
17
|
-
<a href="./docs/install.md">Install guide</a> ·
|
|
18
|
-
<a href="https://github.com/sintlab/sintbot/releases">Releases</a>
|
|
19
|
-
</p>
|
|
7
|
+
## Version 1.3.0
|
|
20
8
|
|
|
21
|
-
|
|
9
|
+
This first built-in-core release supports **macOS, Node.js 22 or newer, one Feishu group and Codex message turns**. You need a working local Codex installation and login, plus a Feishu custom app. Model usage follows your Codex account's terms and limits.
|
|
22
10
|
|
|
23
|
-
|
|
11
|
+
The application runs in the foreground. Keep its terminal open; stop it with Ctrl-C and wait for shutdown to finish. This release does not install an automatic background service.
|
|
24
12
|
|
|
25
|
-
|
|
13
|
+
Multiple groups, Claude and other model routes, Slack, WeCom, international Lark, the management console, scheduled tasks, terminal chat, busy-turn steering and whiteboards are outside this release's supported scope. Existing installations using those features should keep their current version. Support will expand in subsequent releases.
|
|
26
14
|
|
|
27
|
-
|
|
15
|
+
## Install and connect
|
|
28
16
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
<p align="center"><img src="https://raw.githubusercontent.com/sintlab/sintbot/main/docs/assets/how-it-works.svg" alt="Group (Slack, Feishu or WeCom) → SintBot on your machine → Claude Code or Codex in the project directory → the model chosen for that group; progress and results flow back to the group" width="880"></p>
|
|
32
|
-
|
|
33
|
-
- **One group, one project.** Each group gets its own project directory, session, queue, permissions and scheduled tasks.
|
|
34
|
-
- **Same agent, any brain.** Switch models with `/model` in the chat. The project's `CLAUDE.md`, `AGENTS.md` and memory carry over to whichever agent runs next.
|
|
35
|
-
- **Stays on your machine.** Projects, sessions, memory and logs live on your disk and never pass through a SintBot server. Prompts and the code the model reads still go to the provider you chose.
|
|
36
|
-
- **No public IP.** Every platform uses an outbound long connection (Socket Mode on Slack). One daemon can serve Slack, Feishu and WeCom at the same time.
|
|
37
|
-
|
|
38
|
-
## Quick start
|
|
39
|
-
|
|
40
|
-
**1. Install** on macOS or Linux:
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
curl -fsSL https://sintbot.com/install.sh | bash
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
The script checks for Node.js 22+, installs or upgrades sintbot, sets up a model with a live trial turn and offers to install the background service, then opens the console at http://127.0.0.1:4600. It asks before Homebrew Node changes and background-service setup, and never uses `sudo`. Read [install.sh](./install.sh) first, or add `--dry-run` to preview the plan.
|
|
47
|
-
|
|
48
|
-
Installing and setting up SintBot with an AI assistant? Follow the [AI-assisted install and first-use guide](./docs/AI-ASSISTED-INSTALL.md); it covers the target-machine terminal, first console setup and a safe first task.
|
|
49
|
-
|
|
50
|
-
To install by hand instead:
|
|
51
|
-
|
|
52
|
-
```bash
|
|
53
|
-
npm i -g sintbot
|
|
54
|
-
sintbot setup # set up a model, with a live trial turn
|
|
55
|
-
sintbot service install # restarted on crash, started at login; the console stays at http://127.0.0.1:4600
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
**2. Connect a chat platform in the console.** Create a bot, add it to a group and enter its credentials under Settings; each platform has a step-by-step guide there and here: [Slack](./docs/platforms/slack.md) · [Feishu](./docs/platforms/feishu.md) · [WeCom](./docs/platforms/wecom.md). Then bind the group to a project folder under Groups.
|
|
59
|
-
|
|
60
|
-
**3. @ the bot in your group.** Switch models and watch live activity in the same console.
|
|
61
|
-
|
|
62
|
-
### Pick a model: no Claude subscription needed
|
|
63
|
-
|
|
64
|
-
The wizard checks what this machine is logged in to and recommends in this order:
|
|
65
|
-
|
|
66
|
-
| You have | Use | What to do |
|
|
67
|
-
|---|---|---|
|
|
68
|
-
| A Claude subscription (Pro / Max) | Claude | run `claude auth login` before the wizard |
|
|
69
|
-
| A ChatGPT account | GPT, via Codex | `npm i -g @openai/codex`, then `codex login` |
|
|
70
|
-
| Neither | **DeepSeek** (recommended) | sign up at [platform.deepseek.com](https://platform.deepseek.com), top up, create an API key and paste it into the wizard; it runs a trial turn on the spot |
|
|
71
|
-
|
|
72
|
-
The other presets are Zhipu GLM, MiniMax and Volcano Ark. GLM and MiniMax also have international sites (Z.ai, minimax.io); the wizard finds out which site your key belongs to by trying it. Kimi and any other Anthropic-compatible endpoint can be added as custom endpoints in the console.
|
|
73
|
-
|
|
74
|
-
Without a Claude subscription, Claude Code is only the agent framework and needs no login. The only features you lose are GPT groups and image generation, both of which borrow Codex. In mainland China, see the [Chinese README](./README.zh-CN.md#在中国大陆).
|
|
75
|
-
|
|
76
|
-
## What you get
|
|
77
|
-
|
|
78
|
-
| Area | What it does |
|
|
79
|
-
|---|---|
|
|
80
|
-
| **In the group** | Streaming progress: Slack shows its native "Working…" status and a Stop button; Feishu cards update in place. Messages that arrive mid-turn are merged into the next turn. |
|
|
81
|
-
| **Commands** | `/help` · `/status` · `/model <name>` · `/stop` · `/skip` · `/new` · `/hud` · `/issue`. On Slack, use a `!` prefix because Slack consumes messages that start with `/`. |
|
|
82
|
-
| **Permissions** | Set per group, read-only by default. Thirteen secret and PII patterns are masked before a message reaches the group. |
|
|
83
|
-
| **Scheduled tasks** | Cron, aliases such as `daily`, or plain "every day at 09:00". A task can wake the agent, post a reminder or run a script. |
|
|
84
|
-
| **Design** | Distill a style from a site, a project folder or an image you like, or start from sixteen built-in styles. The result is a per-project `DESIGN.md` the agent must read, and every hand-off is checked against it. Iterate by annotating Feishu whiteboards. |
|
|
85
|
-
| **Images** | Generated with the machine's Codex subscription, so no API key is needed. Edit an existing image, repaint a masked region, or produce a transparent background. |
|
|
86
|
-
| **Previews & browser** | HTML prototypes are served on your LAN for the group to see. When the bot's browser hits a login or captcha, a group member takes over through a one-time link. |
|
|
87
|
-
| **Console** | One local page for every group: a "Needs you" list (failed turns with their reason, takeover requests, open feedback), projects, models, permissions, design library, live activity and release history. Available in English or Chinese. |
|
|
88
|
-
| **Operations** | Turns are capped at 30 minutes, and at most two run at once. Turns interrupted by a restart are redone automatically. Includes `sintbot doctor`, an ops alert group and quota warnings. |
|
|
89
|
-
|
|
90
|
-
## Everyday commands
|
|
17
|
+
Follow the [installation guide](./docs/install.md) to install the exact version into a separate directory, configure one group, initialize a new receipt journal and start the bot. The installer leaves existing installations and services in place.
|
|
91
18
|
|
|
92
19
|
```bash
|
|
93
|
-
|
|
94
|
-
sintbot
|
|
95
|
-
sintbot
|
|
96
|
-
sintbot ui # open the console
|
|
97
|
-
sintbot chat -C <project-dir> # simulate group messages in the terminal, no chat platform needed
|
|
98
|
-
sintbot help # all commands
|
|
20
|
+
curl -fsSL https://sintbot.com/install.sh -o /tmp/sintbot-install.sh
|
|
21
|
+
bash /tmp/sintbot-install.sh --dry-run
|
|
22
|
+
bash /tmp/sintbot-install.sh
|
|
99
23
|
```
|
|
100
24
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
## Status
|
|
104
|
-
|
|
105
|
-
| Area | Status |
|
|
106
|
-
|---|---|
|
|
107
|
-
| **macOS** | Verified. Real-machine testing covered the main flows on Slack and Feishu: messaging, streaming progress, model switching and scheduled tasks. |
|
|
108
|
-
| **Linux** | Experimental. The systemd unit is covered by unit tests but has not yet been installed on real hardware. |
|
|
109
|
-
| **Windows** | Not verified. Install manually; `sintbot service install` prints the NSSM and pm2 commands to run. |
|
|
110
|
-
| **WeCom** | The newest integration, with the least real-world use. |
|
|
111
|
-
| **Slack** | The native Stop button, `!status` and the thread buttons are covered by tests but have had little real-world use. |
|
|
112
|
-
| **Kimi** | Not a preset and not yet tested. Add it in the console as a custom endpoint (Models → Add model → Custom); if you try it, please [report how it went](https://github.com/sintlab/sintbot/issues). |
|
|
113
|
-
|
|
114
|
-
"Feishu" here means the China edition (open.feishu.cn). The international Lark (larksuite.com) runs on a separate open platform and is not supported yet. The bot's built-in messages and `sintbot doctor` are in Chinese; the installer, the setup wizard and the console also speak English.
|
|
115
|
-
|
|
116
|
-
## Security
|
|
117
|
-
|
|
118
|
-
- The bot **executes commands** in the bound project directory. Permissions are set per group: read-only by default, with "full access" for groups you trust. File tools are confined to the project directory; shell commands are not sandboxed. See [docs/security.md](./docs/security.md).
|
|
119
|
-
- The console listens on this machine only. Before opening it to your LAN, run `sintbot ui --set-password`.
|
|
120
|
-
- Personal Claude or ChatGPT subscriptions may not permit multi-user groups; check the provider's terms before team use.
|
|
121
|
-
|
|
122
|
-
## FAQ
|
|
123
|
-
|
|
124
|
-
<details>
|
|
125
|
-
<summary><b>Do I need a Claude subscription?</b></summary>
|
|
126
|
-
|
|
127
|
-
No. If the wizard finds no Claude or Codex login, it recommends DeepSeek and runs a trial turn as soon as you paste the API key. Claude Code is still the agent framework; it just needs no login.
|
|
128
|
-
</details>
|
|
129
|
-
|
|
130
|
-
<details>
|
|
131
|
-
<summary><b>Can I use it in mainland China?</b></summary>
|
|
132
|
-
|
|
133
|
-
Yes. Use Feishu as the chat platform and DeepSeek (or the mainland sites of Zhipu GLM, MiniMax or Kimi) as the model: they connect directly, with no proxy. A proxy is needed only for Claude, ChatGPT or Slack.
|
|
134
|
-
</details>
|
|
135
|
-
|
|
136
|
-
<details>
|
|
137
|
-
<summary><b>Do I need a server or a public IP?</b></summary>
|
|
138
|
-
|
|
139
|
-
No. SintBot runs on a computer you keep on; a Mac is the tested setup. It only makes outbound connections: Socket Mode for Slack, a WebSocket long connection for Feishu and a long connection for WeCom. The console stays local unless you open it.
|
|
140
|
-
</details>
|
|
141
|
-
|
|
142
|
-
<details>
|
|
143
|
-
<summary><b>Does switching models lose the project's memory?</b></summary>
|
|
144
|
-
|
|
145
|
-
No. A switch starts a fresh conversation, but the project's `CLAUDE.md`, `AGENTS.md` and memory directory are handed to whichever agent runs next. Long sessions are compacted automatically.
|
|
146
|
-
</details>
|
|
147
|
-
|
|
148
|
-
<details>
|
|
149
|
-
<summary><b>How is it different from cc-bot?</b></summary>
|
|
150
|
-
|
|
151
|
-
Both are free. [cc-bot](https://github.com/WaterTian/cc-bot) is a Claude Code plugin: it runs inside your own interactive session, on that session's model. SintBot is a standalone daemon: no one has to keep a terminal open, each group has its own project, model and permissions, it drives both Claude Code and Codex, and it comes with a local console.
|
|
152
|
-
</details>
|
|
153
|
-
|
|
154
|
-
## Documentation
|
|
25
|
+
The installer installs the package only. It does not authenticate Codex, collect credentials, connect the group or start a service. An [AI-assisted installation guide](./docs/AI-ASSISTED-INSTALL.md) covers the same steps.
|
|
155
26
|
|
|
156
|
-
|
|
157
|
-
|---|---|
|
|
158
|
-
| Getting started | [Install](./docs/install.md) · [Models](./docs/models.md) · [Configuration](./docs/config.md) · [Security](./docs/security.md) · [Features](./docs/features.md) |
|
|
159
|
-
| Chat platforms | [Slack](./docs/platforms/slack.md) · [Feishu](./docs/platforms/feishu.md) · [WeCom](./docs/platforms/wecom.md) |
|
|
160
|
-
| Features | [Whiteboard](./docs/BOARD.md) · [Previews](./docs/PREVIEW.md) · [Browser](./docs/BROWSER.md) · [Icons](./docs/ICONS.md) · [Codex runner](./docs/CODEX-RUNNER.md) · [Public console access](./docs/PUBLIC-ACCESS.md) |
|
|
161
|
-
| Project | [Architecture (DESIGN.md)](./DESIGN.md) · [Contributing](./CONTRIBUTING.md) · [Changelog](./CHANGELOG.en.json) |
|
|
27
|
+
## First task
|
|
162
28
|
|
|
163
|
-
|
|
29
|
+
Start with a read-only request in your configured group, for example: “Read the first line of this project's README and reply with that line.” Check the answer against the local file, stop the foreground process cleanly, then start it again. A successful package install alone does not verify the group connection or a model turn.
|
|
164
30
|
|
|
165
|
-
|
|
31
|
+
## Data and recovery
|
|
166
32
|
|
|
167
|
-
-
|
|
168
|
-
- your OS
|
|
169
|
-
- your chat platform
|
|
170
|
-
- the output of `sintbot doctor`
|
|
33
|
+
Project files, configuration and persistent receipts remain on your Mac. Feishu receives messages and replies, and Codex sends model input to its configured provider. Read-only is the recommended initial permission level; granting full access allows the agent to change files and execute commands.
|
|
171
34
|
|
|
172
|
-
|
|
35
|
+
If startup reports unresolved receipts or uncertain external effects, preserve the state and investigate. Do not delete the journal, clear receipts or resend the task merely to get past startup: the prior request may already have executed. Existing multi-group state is not automatically migrated by 1.3.0.
|
|
173
36
|
|
|
174
37
|
## License
|
|
175
38
|
|
|
176
|
-
|
|
39
|
+
SintBot is distributed under [PolyForm Shield 1.0.0](./LICENSE). The package includes a built-in core. Use of the software is covered by the included license. Dependency notices are in [THIRD-PARTY-NOTICES.md](./THIRD-PARTY-NOTICES.md).
|
|
177
40
|
|
|
178
|
-
|
|
179
|
-
- You may not use it to offer a product that competes with SintBot, paid or free.
|
|
41
|
+
Author: **WaterTian**.
|
package/README.zh-CN.md
CHANGED
|
@@ -1,187 +1,41 @@
|
|
|
1
|
-
|
|
2
|
-
<a href="https://sintbot.com/zh/"><picture><source srcset="https://raw.githubusercontent.com/sintlab/sintbot/main/docs/assets/hero-zh.svg" type="image/svg+xml"><img src="https://raw.githubusercontent.com/sintlab/sintbot/main/docs/assets/banner-zh.png" alt="SintBot —— 群项目 AI 守护进程,跑在你自己的机器上" width="880"></picture></a>
|
|
3
|
-
</p>
|
|
1
|
+
# SintBot
|
|
4
2
|
|
|
5
|
-
|
|
3
|
+
[English](./README.md) · [安装指南](./docs/zh-CN/install.md) · [官网](https://sintbot.com)
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
<a href="https://www.npmjs.com/package/sintbot"><img src="https://img.shields.io/npm/v/sintbot?style=flat-square&color=d68f44" alt="npm 版本"></a>
|
|
9
|
-
<a href="https://github.com/sintlab/sintbot/actions/workflows/test.yml"><img src="https://img.shields.io/github/actions/workflow/status/sintlab/sintbot/test.yml?branch=main&style=flat-square&label=tests" alt="测试"></a>
|
|
10
|
-
<img src="https://img.shields.io/node/v/sintbot?style=flat-square" alt="Node 版本">
|
|
11
|
-
<a href="./LICENSE"><img src="https://img.shields.io/badge/license-PolyForm%20Shield-blue?style=flat-square" alt="PolyForm Shield 许可"></a>
|
|
12
|
-
</p>
|
|
5
|
+
SintBot 让你在飞书群里驱动 Mac 上的编码助手。**一个群绑定一个本机项目**,发出任务后,过程与最终回复回到同一个群里。
|
|
13
6
|
|
|
14
|
-
|
|
15
|
-
<a href="https://sintbot.com/zh/">官网</a> ·
|
|
16
|
-
<a href="./README.md">English</a> ·
|
|
17
|
-
<a href="./docs/zh-CN/install.md">安装说明</a> ·
|
|
18
|
-
<a href="https://github.com/sintlab/sintbot/releases">版本发布</a>
|
|
19
|
-
</p>
|
|
7
|
+
## 1.3.0 版本
|
|
20
8
|
|
|
21
|
-
|
|
9
|
+
首个内置核心版本支持 **macOS、Node.js 22 及以上、一个飞书群和 Codex 消息轮次**。需要本机已安装并登录的 Codex,以及一个飞书企业自建应用。模型使用遵循你的 Codex 账号条款与额度。
|
|
22
10
|
|
|
23
|
-
|
|
11
|
+
程序以前台方式运行,需要保持终端开启;按 Ctrl-C 后等待退出。本版不安装自动后台服务。
|
|
24
12
|
|
|
25
|
-
|
|
13
|
+
多群、Claude 及其他模型通道、Slack、企业微信、国际版 Lark、管理控制台、定时任务、终端聊天、忙时跟进和画布不在本版支持范围。已经使用这些能力的安装应保留当前版本,后续版本再逐步扩展支持。
|
|
26
14
|
|
|
27
|
-
|
|
15
|
+
## 安装与接入
|
|
28
16
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
<p align="center"><img src="https://raw.githubusercontent.com/sintlab/sintbot/main/docs/assets/how-it-works-zh.svg" alt="群(飞书、Slack 或企业微信)→ 你机器上的 SintBot → 项目目录里的 Claude Code 或 Codex → 这个群选的模型;进度与结果回到群里" width="880"></p>
|
|
32
|
-
|
|
33
|
-
- **一群一项目。** 每个群各有自己的项目目录、会话、排队、权限和定时任务。
|
|
34
|
-
- **同一套 agent,任意大脑。** 群里发 `/model` 就能换模型。项目的 `CLAUDE.md`、`AGENTS.md` 和记忆目录会交给接下来运行的 agent。
|
|
35
|
-
- **数据留在本机。** 项目、会话、记忆、日志都在你自己的硬盘上,不经过任何 SintBot 服务器。提示词和模型读到的代码照常发给你选的模型服务商。
|
|
36
|
-
- **不要公网 IP。** 每个平台都是机器主动往外连的长连接(Slack 用 Socket Mode)。一个守护进程可以同时接飞书、Slack、企业微信。
|
|
37
|
-
|
|
38
|
-
## 快速开始
|
|
39
|
-
|
|
40
|
-
**1. 安装**(macOS / Linux):
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
curl -fsSL https://sintbot.com/install.sh | bash
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
脚本会检查 Node.js 22+、安装或升级 sintbot、配置模型(当场试跑一轮),并询问是否安装后台服务,最后打开控制台 http://127.0.0.1:4600。安装或升级 Node 的 Homebrew 操作和后台服务会先询问,不用 `sudo`。可以先读 [install.sh](./install.sh),或加 `--dry-run` 预览计划。
|
|
47
|
-
|
|
48
|
-
想让本机 AI 助手帮忙安装并完成首次使用?先看[AI 安装与首次使用说明](./docs/zh-CN/AI-ASSISTED-INSTALL.md),里面有本机终端、控制台初始配置和安全试跑步骤。
|
|
49
|
-
|
|
50
|
-
也可以手动装:
|
|
51
|
-
|
|
52
|
-
```bash
|
|
53
|
-
npm i -g sintbot
|
|
54
|
-
sintbot setup # 配模型,当场试跑一轮
|
|
55
|
-
sintbot service install # 崩溃自动拉起、登录后自启;控制台常开在 http://127.0.0.1:4600
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
**2. 在控制台里接聊天平台。** 建好机器人、拉进一个群,在「设置」里填凭据;每个平台在控制台里和这里都有分步说明:[飞书](./docs/zh-CN/platforms/feishu.md)(在中国大陆推荐)· [Slack](./docs/zh-CN/platforms/slack.md) · [企业微信](./docs/zh-CN/platforms/wecom.md)。然后在「群 · 项目」里把群绑到项目目录。
|
|
59
|
-
|
|
60
|
-
**3. 在群里 @ 机器人。** 切模型、看实时活动也都在这个控制台里。
|
|
61
|
-
|
|
62
|
-
### 选模型:没有 Claude 订阅也能用
|
|
63
|
-
|
|
64
|
-
向导会先看这台机器登录了什么,按这个顺序推荐:
|
|
65
|
-
|
|
66
|
-
| 你有 | 用 | 要做的 |
|
|
67
|
-
|---|---|---|
|
|
68
|
-
| Claude 订阅(Pro / Max) | Claude | 跑向导前先 `claude auth login` |
|
|
69
|
-
| ChatGPT 账号 | GPT(经 Codex) | `npm i -g @openai/codex`,再 `codex login` |
|
|
70
|
-
| 都没有 | **DeepSeek**(推荐) | 到 [platform.deepseek.com](https://platform.deepseek.com) 注册、充值、创建 API key,在向导里粘贴,当场试跑一轮 |
|
|
71
|
-
|
|
72
|
-
其他预设有智谱 GLM、MiniMax、火山方舟。智谱和 MiniMax 还有国际站(Z.ai、minimax.io),向导会用 key 试出它属于哪个站。Kimi 等任何 Anthropic 兼容端点,都可以在控制台作为自定义端点添加。
|
|
73
|
-
|
|
74
|
-
没有 Claude 订阅时,Claude Code 只是执行框架,不用登录。用不了的只有 GPT 群和生图,这两样借的是 Codex。
|
|
75
|
-
|
|
76
|
-
### 在中国大陆
|
|
77
|
-
|
|
78
|
-
- **聊天平台用飞书。**
|
|
79
|
-
- **模型**:没有 Claude 订阅就用 DeepSeek(或智谱 / MiniMax / Kimi 的中国站),直连,不用代理。只有用到 Claude / ChatGPT 才要代理,在控制台「设置 → 机器人与网络」填。
|
|
80
|
-
- **开着全局代理(梯子)的话**,把模型域名设成直连。否则请求绕到境外再回来,又慢又可能触发风控,见 [install.md「代理」](./docs/zh-CN/install.md#代理)。
|
|
81
|
-
- **npm 慢**:一键安装和向导会自动换 `registry.npmmirror.com`;手动装加 `--registry https://registry.npmmirror.com`。
|
|
82
|
-
- **GitHub 打不开**:中文介绍和安装步骤在[官网](https://sintbot.com/zh/)上都有。
|
|
83
|
-
|
|
84
|
-
## 能做什么
|
|
85
|
-
|
|
86
|
-
| 方面 | 说明 |
|
|
87
|
-
|---|---|
|
|
88
|
-
| **群里** | 进度实时流式更新:飞书卡片原地刷新,Slack 显示原生「Working…」状态和 Stop 按钮。跑着时来的消息,会合并进下一轮。 |
|
|
89
|
-
| **命令** | `/help` · `/status` · `/model <名字>` · `/stop` · `/skip` · `/new` · `/hud` · `/issue`。Slack 会吃掉 `/` 开头的消息,所以在 Slack 里用 `!` 前缀。 |
|
|
90
|
-
| **权限** | 按群设,默认只读。消息到群之前先遮掉 13 类密钥与隐私信息。 |
|
|
91
|
-
| **定时任务** | cron、`daily` 这类别名,或直接写「每天 09:00」。到点可以叫醒 agent、只发提醒,或只跑一个脚本。 |
|
|
92
|
-
| **设计** | 从喜欢的网站、项目目录或图片提炼风格,也可以从 16 套内置风格起步。结果是每个项目一份 agent 必读的风格档 `DESIGN.md`,交付前对照它核对。还可以在飞书画板上标注、迭代。 |
|
|
93
|
-
| **生图** | 借本机的 Codex 订阅生图,不用 API key。可以在原图上改、遮罩局部重绘、透明底。 |
|
|
94
|
-
| **预览与浏览器** | 把 HTML 原型挂到局域网给群成员看。机器人的浏览器碰到登录或验证码时,群成员用一次性链接接管。 |
|
|
95
|
-
| **控制台** | 一个本地网页管所有群:「需要你处理」清单(失败的轮次和原因、等人接管、没处理的反馈)、项目、模型、权限、设计库、实时活动、版本历史。界面中英文可切。 |
|
|
96
|
-
| **运维** | 每轮最长 30 分钟,全局最多同时两轮。被重启打断的轮次会自动重做。另有 `sintbot doctor` 体检、运维告警群、额度提醒。 |
|
|
97
|
-
|
|
98
|
-
## 常用命令
|
|
17
|
+
按[安装指南](./docs/zh-CN/install.md)把精确版本装到独立目录,配置一个群,初始化全新收据日志,再启动机器人。安装器保留已有安装和服务。
|
|
99
18
|
|
|
100
19
|
```bash
|
|
101
|
-
sintbot
|
|
102
|
-
sintbot
|
|
103
|
-
sintbot
|
|
104
|
-
sintbot ui # 打开控制台
|
|
105
|
-
sintbot chat -C <项目目录> # 不接聊天平台,在终端里模拟群消息
|
|
106
|
-
sintbot help # 全部命令
|
|
20
|
+
curl -fsSL https://sintbot.com/install.sh -o /tmp/sintbot-install.sh
|
|
21
|
+
bash /tmp/sintbot-install.sh --dry-run
|
|
22
|
+
bash /tmp/sintbot-install.sh
|
|
107
23
|
```
|
|
108
24
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
## 验证现状
|
|
112
|
-
|
|
113
|
-
| 方面 | 现状 |
|
|
114
|
-
|---|---|
|
|
115
|
-
| **macOS** | 已验证。飞书与 Slack 的主流程都真机验过:收发消息、流式进度、换模型、定时任务。 |
|
|
116
|
-
| **Linux** | 实验性。systemd 单元文件有单元测试覆盖,还没在真机上装过。 |
|
|
117
|
-
| **Windows** | 未验证。手动安装;`sintbot service install` 会打印 NSSM 与 pm2 的现成命令。 |
|
|
118
|
-
| **企业微信** | 三个平台里最新接入的,真实环境里用得最少。 |
|
|
119
|
-
| **Slack** | 原生 Stop 按钮、`!status`、线程里的按钮有测试覆盖,但真实环境里用得还少。 |
|
|
120
|
-
| **Kimi** | 还不是预设,也还没实测过。在控制台「模型 · 库 → 添加模型 → 自定义」添加;用过的话欢迎[反馈结果](https://github.com/sintlab/sintbot/issues)。 |
|
|
121
|
-
|
|
122
|
-
这里的飞书指中国版(open.feishu.cn);国际版 Lark(larksuite.com)是另一套开放平台,目前还不支持。
|
|
123
|
-
|
|
124
|
-
## 安全须知
|
|
125
|
-
|
|
126
|
-
- 机器人能在绑定的项目目录里**执行命令**。权限按群设:默认只读;「完全访问」只给你信任的群。文件工具限制在项目目录内,命令行没有沙箱。详见 [docs/security.md](./docs/zh-CN/security.md)。
|
|
127
|
-
- 控制台默认只听本机。要给局域网用,先 `sintbot ui --set-password`。
|
|
128
|
-
- **订阅条款**:个人 Claude / ChatGPT 订阅未必允许服务多人群聊;团队使用前请核对提供方条款。
|
|
129
|
-
|
|
130
|
-
## 常见问题
|
|
131
|
-
|
|
132
|
-
<details>
|
|
133
|
-
<summary><b>必须有 Claude 订阅吗?</b></summary>
|
|
134
|
-
|
|
135
|
-
不需要。向导没检测到 Claude 或 Codex 登录时,会推荐 DeepSeek,粘贴 API key 后当场试跑一轮。执行框架仍是 Claude Code,只是不用登录。
|
|
136
|
-
</details>
|
|
137
|
-
|
|
138
|
-
<details>
|
|
139
|
-
<summary><b>在中国大陆能用吗?</b></summary>
|
|
140
|
-
|
|
141
|
-
能。聊天平台用飞书,模型用 DeepSeek(或智谱 GLM、MiniMax、Kimi 的中国站),都是直连、不用代理。只有用 Claude、ChatGPT 或 Slack 才需要代理。
|
|
142
|
-
</details>
|
|
143
|
-
|
|
144
|
-
<details>
|
|
145
|
-
<summary><b>需要服务器或公网 IP 吗?</b></summary>
|
|
146
|
-
|
|
147
|
-
不需要。它跑在一台你一直开着的电脑上(Mac 是验证过的环境),只向外连接:飞书用 WebSocket 长连接,Slack 用 Socket Mode,企业微信用长连接。控制台默认只在本机,除非你自己选择开放。
|
|
148
|
-
</details>
|
|
149
|
-
|
|
150
|
-
<details>
|
|
151
|
-
<summary><b>换模型会丢掉项目记忆吗?</b></summary>
|
|
152
|
-
|
|
153
|
-
不会。换模型会开一段新对话,但项目里的 `CLAUDE.md`、`AGENTS.md` 和记忆目录会交给接下来运行的 agent。长会话会自动压缩。
|
|
154
|
-
</details>
|
|
155
|
-
|
|
156
|
-
<details>
|
|
157
|
-
<summary><b>它和 cc-bot 有什么区别?</b></summary>
|
|
158
|
-
|
|
159
|
-
两者都免费。[cc-bot](https://github.com/WaterTian/cc-bot) 是 Claude Code 插件,运行在你自己的交互会话里,用的就是该会话的模型。SintBot 是独立的守护进程:不需要有人守着终端,每个群有自己的项目、模型和权限,同时驱动 Claude Code 和 Codex,并自带本地控制台。
|
|
160
|
-
</details>
|
|
161
|
-
|
|
162
|
-
## 文档
|
|
25
|
+
安装器只安装程序包,不登录 Codex、不收集凭据、不连接群,也不启动服务。也可以按 [AI 辅助安装指南](./docs/zh-CN/AI-ASSISTED-INSTALL.md)完成这些步骤。
|
|
163
26
|
|
|
164
|
-
|
|
165
|
-
|---|---|
|
|
166
|
-
| 上手 | [安装](./docs/zh-CN/install.md) · [模型](./docs/zh-CN/models.md) · [配置](./docs/zh-CN/config.md) · [安全](./docs/zh-CN/security.md) · [功能详解](./docs/zh-CN/features.md) |
|
|
167
|
-
| 聊天平台 | [飞书](./docs/zh-CN/platforms/feishu.md) · [Slack](./docs/zh-CN/platforms/slack.md) · [企业微信](./docs/zh-CN/platforms/wecom.md) |
|
|
168
|
-
| 功能 | [画板](./docs/zh-CN/BOARD.md) · [预览](./docs/zh-CN/PREVIEW.md) · [浏览器](./docs/zh-CN/BROWSER.md) · [图标](./docs/zh-CN/ICONS.md) · [Codex 后端](./docs/zh-CN/CODEX-RUNNER.md) · [控制台公网访问](./docs/zh-CN/PUBLIC-ACCESS.md) |
|
|
169
|
-
| 项目 | [架构与设计(DESIGN.md)](./DESIGN.zh-CN.md) · [参与开发](./CONTRIBUTING.zh-CN.md) · [更新日志](./CHANGELOG.json) |
|
|
27
|
+
## 第一个任务
|
|
170
28
|
|
|
171
|
-
|
|
29
|
+
先在配置的群里发一条只读请求,例如:“读取这个项目 README 的第一行,只回复这一行。”把回复和本地文件对照,正常停止前台进程,再启动一次。安装成功本身不代表群连接或模型轮次已经通过。
|
|
172
30
|
|
|
173
|
-
|
|
31
|
+
## 数据与恢复
|
|
174
32
|
|
|
175
|
-
|
|
176
|
-
- 系统
|
|
177
|
-
- 聊天平台
|
|
178
|
-
- `sintbot doctor` 的输出
|
|
33
|
+
项目文件、配置及持久收据保存在你的 Mac 上。飞书接收消息和回复,Codex 向它配置的模型服务发送输入。建议初次使用只读权限;授予完全访问后,助手可以修改文件、执行命令。
|
|
179
34
|
|
|
180
|
-
|
|
35
|
+
如果启动提示未结收据或外部效果不明,应保留状态并核对。不要为了启动而删除日志、清空收据或重发任务:之前的请求可能已经执行。1.3.0 不自动迁移已有多群状态。
|
|
181
36
|
|
|
182
37
|
## 许可
|
|
183
38
|
|
|
184
|
-
|
|
39
|
+
SintBot 按 [PolyForm Shield 1.0.0](./LICENSE) 分发。安装包包含内置核心,软件使用适用随包许可;依赖声明见 [THIRD-PARTY-NOTICES.md](./THIRD-PARTY-NOTICES.md)。
|
|
185
40
|
|
|
186
|
-
|
|
187
|
-
- 不可以拿它做成与 SintBot 竞争的产品,收费、免费都不行。
|
|
41
|
+
作者:**WaterTian**。
|