wechat-bridge-opencode 0.1.5 β 0.1.7
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/.opencode/tools/send-wechat.ts +14 -2
- package/LICENSE +21 -21
- package/README.md +106 -100
- package/dist/bin/wechat-opencode.js +23 -23
- package/dist/package.json +1 -1
- package/dist/src/acp/agent-manager.d.ts +8 -0
- package/dist/src/acp/agent-manager.d.ts.map +1 -1
- package/dist/src/acp/agent-manager.js +9 -0
- package/dist/src/acp/agent-manager.js.map +1 -1
- package/dist/src/acp/client.d.ts +2 -0
- package/dist/src/acp/client.d.ts.map +1 -1
- package/dist/src/acp/client.js +18 -0
- package/dist/src/acp/client.js.map +1 -1
- package/dist/src/acp/opencode-sessions.d.ts +3 -0
- package/dist/src/acp/opencode-sessions.d.ts.map +1 -1
- package/dist/src/acp/opencode-sessions.js +4 -1
- package/dist/src/acp/opencode-sessions.js.map +1 -1
- package/dist/src/acp/session.d.ts +32 -14
- package/dist/src/acp/session.d.ts.map +1 -1
- package/dist/src/acp/session.js +150 -97
- package/dist/src/acp/session.js.map +1 -1
- package/dist/src/adapter/workspace-cmd.d.ts +1 -0
- package/dist/src/adapter/workspace-cmd.d.ts.map +1 -1
- package/dist/src/adapter/workspace-cmd.js +22 -4
- package/dist/src/adapter/workspace-cmd.js.map +1 -1
- package/dist/src/bridge.d.ts.map +1 -1
- package/dist/src/bridge.js +79 -44
- package/dist/src/bridge.js.map +1 -1
- package/dist/src/config.js +1 -1
- package/dist/src/config.js.map +1 -1
- package/package.json +1 -1
- package/scripts/install-tool.mjs +14 -14
- package/dist/bin/wechat-acp.d.ts +0 -14
- package/dist/bin/wechat-acp.d.ts.map +0 -1
- package/dist/bin/wechat-acp.js +0 -284
- package/dist/bin/wechat-acp.js.map +0 -1
|
@@ -19,9 +19,21 @@ const API_URL = "http://127.0.0.1:18792/send-wechat"
|
|
|
19
19
|
/** Load state from ~/.wechat-opencode/.wechat-bridge-state.json */
|
|
20
20
|
function loadState(): { lastUserId?: string; lastSessionId?: string } {
|
|
21
21
|
try {
|
|
22
|
-
const stateFile = path.join(os.homedir(), ".wechat-opencode", ".wechat-bridge-state.json")
|
|
22
|
+
const stateFile = path.join(os.homedir(), ".wechat-bridge-opencode", ".wechat-bridge-state.json")
|
|
23
23
|
if (fs.existsSync(stateFile)) {
|
|
24
|
-
|
|
24
|
+
const raw = JSON.parse(fs.readFileSync(stateFile, "utf-8"))
|
|
25
|
+
// Current format: { users: [{ userId, sessionId, cwd }], updatedAt }
|
|
26
|
+
if (raw.users && Array.isArray(raw.users) && raw.users.length > 0) {
|
|
27
|
+
const lastUser = raw.users[raw.users.length - 1]
|
|
28
|
+
return {
|
|
29
|
+
lastUserId: lastUser.userId,
|
|
30
|
+
lastSessionId: lastUser.sessionId,
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
// Legacy format: { lastUserId, lastSessionId }
|
|
34
|
+
if (raw.lastUserId) {
|
|
35
|
+
return { lastUserId: raw.lastUserId, lastSessionId: raw.lastSessionId }
|
|
36
|
+
}
|
|
25
37
|
}
|
|
26
38
|
} catch {
|
|
27
39
|
// ignore
|
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 Jun Han
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Jun Han
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,101 +1,107 @@
|
|
|
1
|
-
# WeChat OpenCode
|
|
2
|
-
|
|
3
|
-
[π¨π³ δΈζ](README_zh.md) | [π¬π§ English](README.md)
|
|
4
|
-
|
|
1
|
+
# WeChat OpenCode
|
|
2
|
+
|
|
3
|
+
[π¨π³ δΈζ](README_zh.md) | [π¬π§ English](README.md)
|
|
4
|
+
|
|
5
5
|
Bridge WeChat direct messages to OpenCode, with full bidirectional support for text, images, files, audio, and video.
|
|
6
|
-
|
|
7
|
-
<img src="./resources
|
|
8
|
-
|
|
9
|
-
## Features
|
|
10
|
-
|
|
11
|
-
- **Text** β Send/receive messages between WeChat and OpenCode
|
|
12
|
-
- **Images** β Send/receive images with WeChat CDN support
|
|
13
|
-
- **Files** β Send/receive files of any type
|
|
14
|
-
- **Audio/Video** β Full audio and video message support
|
|
15
|
-
- **QR Login** β Terminal QR code rendering for WeChat login
|
|
16
|
-
- **One Session Per User** β Dedicated ACP session for each WeChat user
|
|
17
|
-
- **Daemon Mode** β Run in background with `--daemon`
|
|
18
|
-
- **send-wechat Tool** β Agents can send files/images back to WeChat
|
|
19
|
-
|
|
20
|
-
## Install
|
|
21
|
-
|
|
22
|
-
```bash
|
|
23
|
-
npx wechat-bridge-opencode --agent opencode
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
Or install globally:
|
|
27
|
-
|
|
28
|
-
```bash
|
|
29
|
-
npm install -g wechat-bridge-opencode
|
|
30
|
-
wbo --agent opencode
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
## Usage
|
|
34
|
-
|
|
35
|
-
```bash
|
|
36
|
-
cd /path/to/your/project
|
|
37
|
-
npx wechat-bridge-opencode --agent opencode
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
First run will:
|
|
41
|
-
1. Show QR code in terminal
|
|
42
|
-
2. Save login token to `~/.wechat-bridge-opencode`
|
|
43
|
-
3. Start polling WeChat DMs
|
|
44
|
-
|
|
45
|
-
## Options
|
|
46
|
-
|
|
47
|
-
| Flag | Description |
|
|
48
|
-
|------|-------------|
|
|
49
|
-
| `--agent <preset\|cmd>` | Built-in preset or raw command |
|
|
50
|
-
| `--cwd <dir>` | Working directory |
|
|
51
|
-
| `--login` | Force re-login |
|
|
52
|
-
| `--daemon` | Run in background |
|
|
53
|
-
| `--config <file>` | JSON config file |
|
|
54
|
-
| `--idle-timeout <min>` | Session idle timeout (default: 1440, 0 = unlimited) |
|
|
55
|
-
| `--max-sessions <count>` | Max concurrent sessions (default: 10) |
|
|
56
|
-
| `--show-thoughts` | Forward agent thinking to WeChat |
|
|
57
|
-
|
|
58
|
-
## WeChat Commands
|
|
59
|
-
|
|
60
|
-
### Workspace (`/workspace` or `/ws`)
|
|
61
|
-
|
|
62
|
-
| Command | Description |
|
|
63
|
-
|---------|-------------|
|
|
64
|
-
| `/workspace list` | List all directories |
|
|
65
|
-
| `/workspace switch <n\|path>` | Switch
|
|
66
|
-
| `/workspace add /path [name]` | Add directory |
|
|
67
|
-
| `/workspace status` | Show current directory |
|
|
68
|
-
|
|
69
|
-
### Session (`/session` or `/s`)
|
|
70
|
-
|
|
71
|
-
| Command | Description |
|
|
72
|
-
|---------|-------------|
|
|
73
|
-
| `/session list` | List recent 10 sessions |
|
|
74
|
-
| `/session
|
|
75
|
-
| `/session
|
|
76
|
-
| `/session
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
-
|
|
90
|
-
-
|
|
91
|
-
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
6
|
+
|
|
7
|
+
<img src="./resources/ει.jpg" alt="Send" width="49%" /> <img src="./resources/ζ₯ζΆ.jpg" alt="Receive" width="49%" />
|
|
8
|
+
|
|
9
|
+
## Features
|
|
10
|
+
|
|
11
|
+
- **Text** β Send/receive messages between WeChat and OpenCode
|
|
12
|
+
- **Images** β Send/receive images with WeChat CDN support
|
|
13
|
+
- **Files** β Send/receive files of any type
|
|
14
|
+
- **Audio/Video** β Full audio and video message support
|
|
15
|
+
- **QR Login** β Terminal QR code rendering for WeChat login
|
|
16
|
+
- **One Session Per User** β Dedicated ACP session for each WeChat user
|
|
17
|
+
- **Daemon Mode** β Run in background with `--daemon`
|
|
18
|
+
- **send-wechat Tool** β Agents can send files/images back to WeChat
|
|
19
|
+
|
|
20
|
+
## Install
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npx wechat-bridge-opencode --agent opencode
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Or install globally:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
npm install -g wechat-bridge-opencode
|
|
30
|
+
wbo --agent opencode
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Usage
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
cd /path/to/your/project
|
|
37
|
+
npx wechat-bridge-opencode --agent opencode
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
First run will:
|
|
41
|
+
1. Show QR code in terminal
|
|
42
|
+
2. Save login token to `~/.wechat-bridge-opencode`
|
|
43
|
+
3. Start polling WeChat DMs
|
|
44
|
+
|
|
45
|
+
## Options
|
|
46
|
+
|
|
47
|
+
| Flag | Description |
|
|
48
|
+
|------|-------------|
|
|
49
|
+
| `--agent <preset\|cmd>` | Built-in preset or raw command |
|
|
50
|
+
| `--cwd <dir>` | Working directory |
|
|
51
|
+
| `--login` | Force re-login |
|
|
52
|
+
| `--daemon` | Run in background |
|
|
53
|
+
| `--config <file>` | JSON config file |
|
|
54
|
+
| `--idle-timeout <min>` | Session idle timeout (default: 1440, 0 = unlimited) |
|
|
55
|
+
| `--max-sessions <count>` | Max concurrent sessions (default: 10) |
|
|
56
|
+
| `--show-thoughts` | Forward agent thinking to WeChat |
|
|
57
|
+
|
|
58
|
+
## WeChat Commands
|
|
59
|
+
|
|
60
|
+
### Workspace (`/workspace` or `/ws`)
|
|
61
|
+
|
|
62
|
+
| Command | Description |
|
|
63
|
+
|---------|-------------|
|
|
64
|
+
| `/workspace list` | List all directories |
|
|
65
|
+
| `/workspace switch <n\|path>` | Switch by index or path (loads most recent session) |
|
|
66
|
+
| `/workspace add /path [name]` | Add directory |
|
|
67
|
+
| `/workspace status` | Show current directory |
|
|
68
|
+
|
|
69
|
+
### Session (`/session` or `/s`)
|
|
70
|
+
|
|
71
|
+
| Command | Description |
|
|
72
|
+
|---------|-------------|
|
|
73
|
+
| `/session list` | List recent 10 sessions |
|
|
74
|
+
| `/session list --cwd` | List sessions in current workspace |
|
|
75
|
+
| `/session list <path\|n>` | List sessions by workspace path or index |
|
|
76
|
+
| `/session switch <n\|slug>` | Switch by index or slug/title |
|
|
77
|
+
| `/session new` | New session (clear context) |
|
|
78
|
+
| `/session status` | Show current session |
|
|
79
|
+
|
|
80
|
+
## Requirements
|
|
81
|
+
|
|
82
|
+
- Node.js 20+
|
|
83
|
+
- WeChat iLink bot API access
|
|
84
|
+
- [OpenCode](https://github.com/anomalyco/opencode) installed locally or via npx
|
|
85
|
+
|
|
86
|
+
## Storage
|
|
87
|
+
|
|
88
|
+
Runtime data stored in `~/.wechat-bridge-opencode`:
|
|
89
|
+
- Login token
|
|
90
|
+
- Auth tokens
|
|
91
|
+
- Temp files (downloaded media)
|
|
92
|
+
- Daemon PID / log
|
|
93
|
+
- Bridge state (`.wechat-bridge-state.json`)
|
|
94
|
+
|
|
95
|
+
## Notes
|
|
96
|
+
|
|
97
|
+
- Direct messages only (group chats ignored)
|
|
98
|
+
- Permission requests are auto-approved
|
|
99
|
+
- `send-wechat` tool auto-installed to `~/.config/opencode/tools/send-wechat.ts`
|
|
100
|
+
|
|
101
|
+
## Acknowledgment
|
|
102
|
+
|
|
103
|
+
This project is based on [wechat-acp](https://github.com/formulahendry/wechat-acp) by [formulahendry](https://github.com/formulahendry). Thanks for the original work!
|
|
104
|
+
|
|
105
|
+
## License
|
|
106
|
+
|
|
107
|
+
MIT
|
|
@@ -20,29 +20,29 @@ function usage() {
|
|
|
20
20
|
const presets = listBuiltInAgents()
|
|
21
21
|
.map(({ id }) => id)
|
|
22
22
|
.join(", ");
|
|
23
|
-
console.log(`
|
|
24
|
-
wbo β Bridge WeChat to OpenCode
|
|
25
|
-
|
|
26
|
-
Usage:
|
|
27
|
-
wbo --agent <preset|command> [options]
|
|
28
|
-
wbo agents List built-in agent presets
|
|
29
|
-
wbo stop Stop a running daemon
|
|
30
|
-
wbo status Check daemon status
|
|
31
|
-
|
|
32
|
-
Options:
|
|
33
|
-
--agent <value> Built-in preset name or raw agent command
|
|
34
|
-
Presets: ${presets}
|
|
35
|
-
Examples: "opencode"
|
|
36
|
-
--cwd <dir> Working directory for agent (default: current dir)
|
|
37
|
-
--login Force re-login (new QR code)
|
|
38
|
-
--daemon Run in background after login
|
|
39
|
-
--config <file> Config file path (JSON)
|
|
40
|
-
--idle-timeout <m> Session idle timeout in minutes (default: 1440)
|
|
41
|
-
Use 0 to disable idle cleanup
|
|
42
|
-
--max-sessions <n> Max concurrent user sessions (default: 10)
|
|
43
|
-
--show-thoughts Forward agent thinking to WeChat (default: off)
|
|
44
|
-
-v, --verbose Verbose logging
|
|
45
|
-
-h, --help Show this help
|
|
23
|
+
console.log(`
|
|
24
|
+
wbo β Bridge WeChat to OpenCode
|
|
25
|
+
|
|
26
|
+
Usage:
|
|
27
|
+
wbo --agent <preset|command> [options]
|
|
28
|
+
wbo agents List built-in agent presets
|
|
29
|
+
wbo stop Stop a running daemon
|
|
30
|
+
wbo status Check daemon status
|
|
31
|
+
|
|
32
|
+
Options:
|
|
33
|
+
--agent <value> Built-in preset name or raw agent command
|
|
34
|
+
Presets: ${presets}
|
|
35
|
+
Examples: "opencode"
|
|
36
|
+
--cwd <dir> Working directory for agent (default: current dir)
|
|
37
|
+
--login Force re-login (new QR code)
|
|
38
|
+
--daemon Run in background after login
|
|
39
|
+
--config <file> Config file path (JSON)
|
|
40
|
+
--idle-timeout <m> Session idle timeout in minutes (default: 1440)
|
|
41
|
+
Use 0 to disable idle cleanup
|
|
42
|
+
--max-sessions <n> Max concurrent user sessions (default: 10)
|
|
43
|
+
--show-thoughts Forward agent thinking to WeChat (default: off)
|
|
44
|
+
-v, --verbose Verbose logging
|
|
45
|
+
-h, --help Show this help
|
|
46
46
|
`);
|
|
47
47
|
}
|
|
48
48
|
function parseArgs(argv) {
|
package/dist/package.json
CHANGED
|
@@ -4,10 +4,18 @@
|
|
|
4
4
|
import { type ChildProcess } from "node:child_process";
|
|
5
5
|
import * as acp from "@agentclientprotocol/sdk";
|
|
6
6
|
import type { WeChatAcpClient } from "./client.js";
|
|
7
|
+
export interface AgentCapabilities {
|
|
8
|
+
loadSession: boolean;
|
|
9
|
+
sessionCapabilities?: {
|
|
10
|
+
list?: {};
|
|
11
|
+
close?: {};
|
|
12
|
+
};
|
|
13
|
+
}
|
|
7
14
|
export interface AgentProcessInfo {
|
|
8
15
|
process: ChildProcess;
|
|
9
16
|
connection: acp.ClientSideConnection;
|
|
10
17
|
sessionId: string;
|
|
18
|
+
capabilities: AgentCapabilities;
|
|
11
19
|
}
|
|
12
20
|
export declare function spawnAgent(params: {
|
|
13
21
|
command: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-manager.d.ts","sourceRoot":"","sources":["../../../src/acp/agent-manager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAS,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAK9D,OAAO,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAuBnD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,GAAG,CAAC,oBAAoB,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-manager.d.ts","sourceRoot":"","sources":["../../../src/acp/agent-manager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAS,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAK9D,OAAO,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAuBnD,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,OAAO,CAAC;IACrB,mBAAmB,CAAC,EAAE;QACpB,IAAI,CAAC,EAAE,EAAE,CAAC;QACV,KAAK,CAAC,EAAE,EAAE,CAAC;KACZ,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,GAAG,CAAC,oBAAoB,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,iBAAiB,CAAC;CACjC;AAED,wBAAsB,UAAU,CAAC,MAAM,EAAE;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,MAAM,EAAE,eAAe,CAAC;IACxB,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B,6CAA6C;IAC7C,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8G5B;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAQlD"}
|
|
@@ -86,6 +86,14 @@ export async function spawnAgent(params) {
|
|
|
86
86
|
},
|
|
87
87
|
});
|
|
88
88
|
log(`ACP initialized (protocol v${initResult.protocolVersion})`);
|
|
89
|
+
// Extract capabilities
|
|
90
|
+
const caps = {
|
|
91
|
+
loadSession: initResult.agentCapabilities?.loadSession ?? false,
|
|
92
|
+
sessionCapabilities: initResult.agentCapabilities?.sessionCapabilities,
|
|
93
|
+
};
|
|
94
|
+
if (caps.loadSession !== true) {
|
|
95
|
+
throw new Error("OpenCode does not support loadSession capability. Please upgrade to a version that supports ACP session loading.");
|
|
96
|
+
}
|
|
89
97
|
// Create or resume session
|
|
90
98
|
let sessionResult;
|
|
91
99
|
if (existingSessionId) {
|
|
@@ -119,6 +127,7 @@ export async function spawnAgent(params) {
|
|
|
119
127
|
process: proc,
|
|
120
128
|
connection,
|
|
121
129
|
sessionId: sessionResult.sessionId,
|
|
130
|
+
capabilities: caps,
|
|
122
131
|
};
|
|
123
132
|
}
|
|
124
133
|
export function killAgent(proc) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-manager.js","sourceRoot":"","sources":["../../../src/acp/agent-manager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAChD,OAAO,WAAW,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAGnE;;;GAGG;AACH,SAAS,qBAAqB;IAC5B,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IACpE,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,CAAC;KACjE,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACjB,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,MAAM,CAAC;YACP,YAAY;QACd,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-manager.js","sourceRoot":"","sources":["../../../src/acp/agent-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/src/acp/client.d.ts
CHANGED
|
@@ -28,6 +28,7 @@ export declare class WeChatAcpClient implements acp.Client {
|
|
|
28
28
|
private mediaBlocks;
|
|
29
29
|
private opts;
|
|
30
30
|
private lastTypingAt;
|
|
31
|
+
private replaying;
|
|
31
32
|
private static readonly TYPING_INTERVAL_MS;
|
|
32
33
|
constructor(opts: WeChatAcpClientOpts);
|
|
33
34
|
updateCallbacks(callbacks: {
|
|
@@ -35,6 +36,7 @@ export declare class WeChatAcpClient implements acp.Client {
|
|
|
35
36
|
onThoughtFlush: (text: string) => Promise<void>;
|
|
36
37
|
onMediaFlush: (blocks: MediaContent[]) => Promise<void>;
|
|
37
38
|
}): void;
|
|
39
|
+
setReplaying(value: boolean): void;
|
|
38
40
|
requestPermission(params: acp.RequestPermissionRequest): Promise<acp.RequestPermissionResponse>;
|
|
39
41
|
sessionUpdate(params: acp.SessionNotification): Promise<void>;
|
|
40
42
|
readTextFile(params: acp.ReadTextFileRequest): Promise<acp.ReadTextFileResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/acp/client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAE3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,YAAY,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,eAAgB,YAAW,GAAG,CAAC,MAAM;IAChD,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,IAAI,CAAsB;IAClC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAS;gBAEvC,IAAI,EAAE,mBAAmB;IAIrC,eAAe,CAAC,SAAS,EAAE;QACzB,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QAChC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,YAAY,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACzD,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/acp/client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAE3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,YAAY,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,eAAgB,YAAW,GAAG,CAAC,MAAM;IAChD,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,IAAI,CAAsB;IAClC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAS;gBAEvC,IAAI,EAAE,mBAAmB;IAIrC,eAAe,CAAC,SAAS,EAAE;QACzB,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QAChC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,YAAY,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACzD,GAAG,IAAI;IASR,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAI5B,iBAAiB,CACrB,MAAM,EAAE,GAAG,CAAC,wBAAwB,GACnC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;IAiBnC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+H7D,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;IAShF,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IASzF,sFAAsF;IAChF,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAe9B,iDAAiD;YACnC,UAAU;YASV,kBAAkB;YAalB,eAAe;CAU9B"}
|
package/dist/src/acp/client.js
CHANGED
|
@@ -12,6 +12,7 @@ export class WeChatAcpClient {
|
|
|
12
12
|
mediaBlocks = [];
|
|
13
13
|
opts;
|
|
14
14
|
lastTypingAt = 0;
|
|
15
|
+
replaying = false;
|
|
15
16
|
static TYPING_INTERVAL_MS = 5_000;
|
|
16
17
|
constructor(opts) {
|
|
17
18
|
this.opts = opts;
|
|
@@ -24,6 +25,9 @@ export class WeChatAcpClient {
|
|
|
24
25
|
onMediaFlush: callbacks.onMediaFlush,
|
|
25
26
|
};
|
|
26
27
|
}
|
|
28
|
+
setReplaying(value) {
|
|
29
|
+
this.replaying = value;
|
|
30
|
+
}
|
|
27
31
|
async requestPermission(params) {
|
|
28
32
|
// Auto-allow: find first "allow" option
|
|
29
33
|
const allowOpt = params.options.find((o) => o.kind === "allow_once" || o.kind === "allow_always");
|
|
@@ -40,6 +44,8 @@ export class WeChatAcpClient {
|
|
|
40
44
|
const update = params.update;
|
|
41
45
|
switch (update.sessionUpdate) {
|
|
42
46
|
case "agent_message_chunk":
|
|
47
|
+
if (this.replaying)
|
|
48
|
+
return; // Ignore replayed content during session/load
|
|
43
49
|
await this.maybeFlushThoughts();
|
|
44
50
|
if (update.content.type === "text") {
|
|
45
51
|
this.chunks.push(update.content.text);
|
|
@@ -145,6 +151,18 @@ export class WeChatAcpClient {
|
|
|
145
151
|
this.opts.log(`[plan]\n${items}`);
|
|
146
152
|
}
|
|
147
153
|
break;
|
|
154
|
+
case "session_info_update":
|
|
155
|
+
// Log it, no action needed
|
|
156
|
+
this.opts.log(`[session_info_update]`);
|
|
157
|
+
break;
|
|
158
|
+
case "config_option_update":
|
|
159
|
+
// Log it, no action needed
|
|
160
|
+
this.opts.log(`[config_option_update]`);
|
|
161
|
+
break;
|
|
162
|
+
case "available_commands_update":
|
|
163
|
+
// Log it, no action needed
|
|
164
|
+
this.opts.log(`[available_commands_update]`);
|
|
165
|
+
break;
|
|
148
166
|
}
|
|
149
167
|
}
|
|
150
168
|
async readTextFile(params) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/acp/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/acp/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode-sessions.d.ts","sourceRoot":"","sources":["../../../src/acp/opencode-sessions.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"opencode-sessions.d.ts","sourceRoot":"","sources":["../../../src/acp/opencode-sessions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAuBD,wBAAgB,YAAY,IAAI,eAAe,EAAE,CAkBhD"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* @deprecated No longer used β SessionManager.listAgentSessions() via ACP session/list
|
|
3
|
+
* is the primary source. This module is kept as a fallback only.
|
|
4
|
+
*
|
|
2
5
|
* Read OpenCode sessions from its SQLite database.
|
|
3
6
|
*
|
|
4
7
|
* Database path:
|
|
@@ -42,7 +45,7 @@ export function listSessions() {
|
|
|
42
45
|
if (!db)
|
|
43
46
|
return [];
|
|
44
47
|
try {
|
|
45
|
-
const rows = db.prepare("SELECT id, project_id, slug, directory, title, time_updated FROM session WHERE time_archived IS NULL ORDER BY time_updated DESC").all();
|
|
48
|
+
const rows = db.prepare("SELECT id, project_id, slug, directory, title, time_updated FROM session WHERE time_archived IS NULL AND parent_id IS NULL ORDER BY time_updated DESC").all();
|
|
46
49
|
return rows.map((r) => ({
|
|
47
50
|
id: r.id,
|
|
48
51
|
slug: r.slug,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode-sessions.js","sourceRoot":"","sources":["../../../src/acp/opencode-sessions.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"opencode-sessions.js","sourceRoot":"","sources":["../../../src/acp/opencode-sessions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAW/C,SAAS,MAAM;IACb,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACxF,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,qBAAqB,EAAE,UAAU,EAAE,aAAa,CAAC;QACpF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,aAAa,CAAC;KAC3G,CAAC;IACF,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC;YAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAAC,MAAM,GAAG,CAAC,CAAC;YAAC,MAAM;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC;QACH,iEAAiE;QACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC3C,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,uJAAuJ,CACxJ,CAAC,GAAG,EAAqH,CAAC;QAC3H,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtB,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,SAAS,EAAE,CAAC,CAAC,UAAU;YACvB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,WAAW,EAAE,CAAC,CAAC,YAAY;SAC5B,CAAC,CAAC,CAAC;IACN,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC"}
|