paean 0.9.1 → 0.9.2
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.
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WeChat Command
|
|
3
3
|
* CLI commands for WeChat channel integration.
|
|
4
|
+
*
|
|
5
|
+
* Workflow:
|
|
6
|
+
* 1. paean wechat setup — Scan QR code to authenticate
|
|
7
|
+
* 2. paean wechat start — Start agent with WeChat channel active
|
|
8
|
+
* 3. paean wechat status — Check login status
|
|
9
|
+
* 4. paean wechat logout — Remove saved credentials
|
|
4
10
|
*/
|
|
5
11
|
import { Command } from 'commander';
|
|
6
12
|
export declare const wechatCommand: Command;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wechat.d.ts","sourceRoot":"","sources":["../../src/commands/wechat.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"wechat.d.ts","sourceRoot":"","sources":["../../src/commands/wechat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,eAAO,MAAM,aAAa,SAYxB,CAAC"}
|
package/dist/commands/wechat.js
CHANGED
|
@@ -1,15 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WeChat Command
|
|
3
3
|
* CLI commands for WeChat channel integration.
|
|
4
|
+
*
|
|
5
|
+
* Workflow:
|
|
6
|
+
* 1. paean wechat setup — Scan QR code to authenticate
|
|
7
|
+
* 2. paean wechat start — Start agent with WeChat channel active
|
|
8
|
+
* 3. paean wechat status — Check login status
|
|
9
|
+
* 4. paean wechat logout — Remove saved credentials
|
|
4
10
|
*/
|
|
5
11
|
import { Command } from 'commander';
|
|
6
12
|
import chalk from 'chalk';
|
|
7
13
|
export const wechatCommand = new Command('wechat')
|
|
8
|
-
.description('WeChat channel — bridge WeChat messages to local agent')
|
|
14
|
+
.description('WeChat channel — bridge WeChat messages to local agent')
|
|
15
|
+
.addHelpText('after', `
|
|
16
|
+
Workflow:
|
|
17
|
+
$ paean wechat setup Authenticate with WeChat (scan QR code)
|
|
18
|
+
$ paean wechat start Start the agent with WeChat channel active
|
|
19
|
+
$ paean wechat status Show current login status
|
|
20
|
+
$ paean wechat logout Remove saved credentials
|
|
21
|
+
|
|
22
|
+
The "start" command launches the interactive agent with WeChat message
|
|
23
|
+
bridging enabled. You can also use the --wechat flag directly:
|
|
24
|
+
$ paean --wechat
|
|
25
|
+
`);
|
|
9
26
|
wechatCommand
|
|
10
27
|
.command('setup')
|
|
11
28
|
.description('Authenticate with WeChat via QR code')
|
|
12
|
-
.option('-f, --force', '
|
|
29
|
+
.option('-f, --force', 'Re-authenticate even if already logged in')
|
|
30
|
+
.addHelpText('after', `
|
|
31
|
+
After setup completes, start the agent with:
|
|
32
|
+
$ paean wechat start
|
|
33
|
+
$ paean --wechat (equivalent shorthand)
|
|
34
|
+
`)
|
|
13
35
|
.action(async (opts) => {
|
|
14
36
|
const { fetchQRCode, pollQRStatus, DEFAULT_BASE_URL } = await import('../wechat/api.js');
|
|
15
37
|
const { loadCredentials, saveCredentials } = await import('../wechat/credentials.js');
|
|
@@ -67,9 +89,11 @@ wechatCommand
|
|
|
67
89
|
savedAt: new Date().toISOString(),
|
|
68
90
|
};
|
|
69
91
|
saveCredentials(account);
|
|
70
|
-
console.log(chalk.green(`\
|
|
71
|
-
console.log(` Account: ${account.accountId}`);
|
|
72
|
-
console.log(
|
|
92
|
+
console.log(chalk.green(`\n✓ WeChat connected!`));
|
|
93
|
+
console.log(` Account: ${account.accountId}\n`);
|
|
94
|
+
console.log(chalk.bold('Next step — start the agent with WeChat channel:'));
|
|
95
|
+
console.log(` ${chalk.cyan('paean wechat start')}`);
|
|
96
|
+
console.log(` ${chalk.cyan('paean --wechat')} ${chalk.dim('(equivalent)')}`);
|
|
73
97
|
return;
|
|
74
98
|
}
|
|
75
99
|
}
|
|
@@ -78,6 +102,25 @@ wechatCommand
|
|
|
78
102
|
console.error('\nLogin timed out.');
|
|
79
103
|
process.exit(1);
|
|
80
104
|
});
|
|
105
|
+
wechatCommand
|
|
106
|
+
.command('start')
|
|
107
|
+
.description('Start the agent with WeChat channel active')
|
|
108
|
+
.option('--no-mcp', 'Disable local MCP server integration')
|
|
109
|
+
.option('-d, --debug', 'Enable debug logging')
|
|
110
|
+
.action(async (opts) => {
|
|
111
|
+
const { loadCredentials } = await import('../wechat/credentials.js');
|
|
112
|
+
if (!loadCredentials()) {
|
|
113
|
+
console.log(chalk.yellow('WeChat not set up yet.\n'));
|
|
114
|
+
console.log(`Run ${chalk.cyan('paean wechat setup')} to authenticate first.`);
|
|
115
|
+
process.exit(1);
|
|
116
|
+
}
|
|
117
|
+
const { runAgentMode } = await import('./agent.js');
|
|
118
|
+
await runAgentMode({
|
|
119
|
+
mcp: opts.mcp !== false,
|
|
120
|
+
debug: opts.debug ?? false,
|
|
121
|
+
wechatEnabled: true,
|
|
122
|
+
});
|
|
123
|
+
});
|
|
81
124
|
wechatCommand
|
|
82
125
|
.command('status')
|
|
83
126
|
.description('Show WeChat login status')
|
|
@@ -85,13 +128,14 @@ wechatCommand
|
|
|
85
128
|
const { loadCredentials } = await import('../wechat/credentials.js');
|
|
86
129
|
const account = loadCredentials();
|
|
87
130
|
if (account) {
|
|
88
|
-
console.log(chalk.green('WeChat: Logged in'));
|
|
131
|
+
console.log(chalk.green('✓ WeChat: Logged in'));
|
|
89
132
|
console.log(` Account: ${account.accountId}`);
|
|
90
133
|
console.log(` User: ${account.userId ?? 'N/A'}`);
|
|
91
|
-
console.log(` Saved: ${account.savedAt}`);
|
|
134
|
+
console.log(` Saved: ${account.savedAt}\n`);
|
|
135
|
+
console.log(`Start the agent with: ${chalk.cyan('paean wechat start')}`);
|
|
92
136
|
}
|
|
93
137
|
else {
|
|
94
|
-
console.log(chalk.gray('WeChat: Not logged in'));
|
|
138
|
+
console.log(chalk.gray('✗ WeChat: Not logged in'));
|
|
95
139
|
console.log(` Run ${chalk.cyan('paean wechat setup')} to authenticate.`);
|
|
96
140
|
}
|
|
97
141
|
});
|
|
@@ -101,10 +145,10 @@ wechatCommand
|
|
|
101
145
|
.action(async () => {
|
|
102
146
|
const { removeCredentials, loadCredentials } = await import('../wechat/credentials.js');
|
|
103
147
|
if (!loadCredentials()) {
|
|
104
|
-
console.log('No credentials found.');
|
|
148
|
+
console.log('No WeChat credentials found.');
|
|
105
149
|
return;
|
|
106
150
|
}
|
|
107
151
|
removeCredentials();
|
|
108
|
-
console.log(chalk.green('WeChat credentials removed.'));
|
|
152
|
+
console.log(chalk.green('✓ WeChat credentials removed.'));
|
|
109
153
|
});
|
|
110
154
|
//# sourceMappingURL=wechat.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wechat.js","sourceRoot":"","sources":["../../src/commands/wechat.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"wechat.js","sourceRoot":"","sources":["../../src/commands/wechat.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED