Connects to user's running Brave via Chrome DevTools Protocol to automate ChatGPT interaction. Uses puppeteer-core to open a tab, send the prompt, wait for response, and extract the result. No cookies, no separate profiles, no copy/paste. Just connects to the browser where the user is already logged in. One-time setup: relaunch Brave with --remote-debugging-port=9222 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
42 lines
973 B
Markdown
42 lines
973 B
Markdown
# Pend
|
|
|
|
Dead-simple optimistic async helper.
|
|
|
|
## Usage
|
|
|
|
```js
|
|
var Pend = require('pend');
|
|
var pend = new Pend();
|
|
pend.max = 10; // defaults to Infinity
|
|
setTimeout(pend.hold(), 1000); // pend.wait will have to wait for this hold to finish
|
|
pend.go(function(cb) {
|
|
console.log("this function is immediately executed");
|
|
setTimeout(function() {
|
|
console.log("calling cb 1");
|
|
cb();
|
|
}, 500);
|
|
});
|
|
pend.go(function(cb) {
|
|
console.log("this function is also immediately executed");
|
|
setTimeout(function() {
|
|
console.log("calling cb 2");
|
|
cb();
|
|
}, 1000);
|
|
});
|
|
pend.wait(function(err) {
|
|
console.log("this is excuted when the first 2 have returned.");
|
|
console.log("err is a possible error in the standard callback style.");
|
|
});
|
|
```
|
|
|
|
Output:
|
|
|
|
```
|
|
this function is immediately executed
|
|
this function is also immediately executed
|
|
calling cb 1
|
|
calling cb 2
|
|
this is excuted when the first 2 have returned.
|
|
err is a possible error in the standard callback style.
|
|
```
|