Skip to content

Commit 56606de

Browse files
authored
Merge branch 'develop' into realitySpiral/greetingworkflow
2 parents 393db81 + faf7163 commit 56606de

32 files changed

+121
-150
lines changed

.env.example

-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,6 @@ TWITTER_PASSWORD= # Account password
5858
TWITTER_EMAIL= # Account email
5959
TWITTER_2FA_SECRET=
6060

61-
TWITTER_COOKIES= # Account cookies
6261
TWITTER_POLL_INTERVAL=120 # How often (in seconds) the bot should check for interactions
6362
TWITTER_SEARCH_ENABLE=FALSE # Enable timeline search, WARNING this greatly increases your chance of getting banned
6463
TWITTER_TARGET_USERS= # Comma separated list of Twitter user names to interact with

README_CN.md

-1
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,6 @@ TWITTER_DRY_RUN=false
145145
TWITTER_USERNAME= # Account username
146146
TWITTER_PASSWORD= # Account password
147147
TWITTER_EMAIL= # Account email
148-
TWITTER_COOKIES= # Account cookies
149148
150149
X_SERVER_URL=
151150
XAI_API_KEY=

README_ES.md

-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ TWITTER_DRY_RUN=false
9898
TWITTER_USERNAME= # Nombre de usuario de la cuenta
9999
TWITTER_PASSWORD= # Contraseña de la cuenta
100100
TWITTER_EMAIL= # Correo electrónico de la cuenta
101-
TWITTER_COOKIES= # Cookies de la cuenta
102101
103102
X_SERVER_URL=
104103
XAI_API_KEY=

README_JA.md

-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,6 @@ TWITTER_DRY_RUN=false
9696
TWITTER_USERNAME= # アカウントのユーザー名
9797
TWITTER_PASSWORD= # アカウントのパスワード
9898
TWITTER_EMAIL= # アカウントのメール
99-
TWITTER_COOKIES= # アカウントのクッキー
10099
101100
X_SERVER_URL=
102101
XAI_API_KEY=

README_PTBR.md

-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ TWITTER_DRY_RUN=false
9898
TWITTER_USERNAME= # Nome de usuário da conta
9999
TWITTER_PASSWORD= # Senha da conta
100100
TWITTER_EMAIL= # Email da conta
101-
TWITTER_COOKIES= # Cookies da conta
102101
103102
X_SERVER_URL=
104103
XAI_API_KEY=

README_RU.md

-1
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,6 @@ TWITTER_DRY_RUN=false
114114
TWITTER_USERNAME= # Имя пользователя аккаунта
115115
TWITTER_PASSWORD= # Пароль аккаунта
116116
TWITTER_EMAIL= # Email аккаунта
117-
TWITTER_COOKIES= # Cookies аккаунта
118117
119118
X_SERVER_URL=
120119
XAI_API_KEY=

agent/src/index.ts

+9-2
Original file line numberDiff line numberDiff line change
@@ -214,9 +214,11 @@ export function getTokenForProvider(
214214
character: Character
215215
): string {
216216
switch (provider) {
217-
// no key needed for llama_local
217+
// no key needed for llama_local or gaianet
218218
case ModelProviderName.LLAMALOCAL:
219219
return "";
220+
case ModelProviderName.GAIANET:
221+
return "";
220222
case ModelProviderName.OPENAI:
221223
return (
222224
character.settings?.secrets?.OPENAI_API_KEY ||
@@ -311,6 +313,11 @@ export function getTokenForProvider(
311313
character.settings?.secrets?.AKASH_CHAT_API_KEY ||
312314
settings.AKASH_CHAT_API_KEY
313315
);
316+
case ModelProviderName.GOOGLE:
317+
return (
318+
character.settings?.secrets?.GOOGLE_GENERATIVE_AI_API_KEY ||
319+
settings.GOOGLE_GENERATIVE_AI_API_KEY
320+
);
314321
default:
315322
const errorMessage = `Failed to get token - unsupported model provider: ${provider}`;
316323
elizaLogger.error(errorMessage);
@@ -645,7 +652,7 @@ async function startAgent(
645652
await db.init();
646653

647654
const cache = initializeCache(
648-
process.env.CACHE_STORE,
655+
process.env.CACHE_STORE ?? CacheStore.DATABASE,
649656
character,
650657
"",
651658
db

docs/README.md

-1
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,6 @@ TWITTER_DRY_RUN=false
102102
TWITTER_USERNAME= # Account username
103103
TWITTER_PASSWORD= # Account password
104104
TWITTER_EMAIL= # Account email
105-
TWITTER_COOKIES= # Account cookies
106105
107106
X_SERVER_URL=
108107
XAI_API_KEY=

docs/README_CN.md

-1
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ TWITTER_DRY_RUN=false
9494
TWITTER_USERNAME= # Account username
9595
TWITTER_PASSWORD= # Account password
9696
TWITTER_EMAIL= # Account email
97-
TWITTER_COOKIES= # Account cookies
9897
9998
X_SERVER_URL=
10099
XAI_API_KEY=

docs/README_FR.md

-1
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,6 @@ TWITTER_DRY_RUN=false
102102
TWITTER_USERNAME= # Account username
103103
TWITTER_PASSWORD= # Account password
104104
TWITTER_EMAIL= # Account email
105-
TWITTER_COOKIES= # Account cookies
106105
107106
X_SERVER_URL=
108107
XAI_API_KEY=

docs/README_TH.md

-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ TWITTER_DRY_RUN=false
9898
TWITTER_USERNAME= # ชื่อผู้ใช้บัญชี
9999
TWITTER_PASSWORD= # รหัสผ่าน
100100
TWITTER_EMAIL= # อีเมล
101-
TWITTER_COOKIES= # คุกกี้
102101
103102
X_SERVER_URL=
104103
XAI_API_KEY=

docs/docs/api/_media/README_CN.md

-1
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ TWITTER_DRY_RUN=false
9494
TWITTER_USERNAME= # Account username
9595
TWITTER_PASSWORD= # Account password
9696
TWITTER_EMAIL= # Account email
97-
TWITTER_COOKIES= # Account cookies
9897
9998
X_SERVER_URL=
10099
XAI_API_KEY=

docs/docs/api/_media/README_FR.md

-1
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ TWITTER_DRY_RUN=false
9494
TWITTER_USERNAME= # Account username
9595
TWITTER_PASSWORD= # Account password
9696
TWITTER_EMAIL= # Account email
97-
TWITTER_COOKIES= # Account cookies
9897
9998
X_SERVER_URL=
10099
XAI_API_KEY=

docs/docs/api/_media/README_JA.md

-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,6 @@ TWITTER_DRY_RUN=false
9696
TWITTER_USERNAME= # アカウントのユーザー名
9797
TWITTER_PASSWORD= # アカウントのパスワード
9898
TWITTER_EMAIL= # アカウントのメール
99-
TWITTER_COOKIES= # アカウントのクッキー
10099
101100
X_SERVER_URL=
102101
XAI_API_KEY=

docs/docs/api/_media/README_KOR.md

-1
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ TWITTER_DRY_RUN=false
9494
TWITTER_USERNAME= # Account username
9595
TWITTER_PASSWORD= # Account password
9696
TWITTER_EMAIL= # Account email
97-
TWITTER_COOKIES= # Account cookies
9897
9998
X_SERVER_URL=
10099
XAI_API_KEY=

docs/docs/api/index.md

-1
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,6 @@ TWITTER_DRY_RUN=false
100100
TWITTER_USERNAME= # Account username
101101
TWITTER_PASSWORD= # Account password
102102
TWITTER_EMAIL= # Account email
103-
TWITTER_COOKIES= # Account cookies
104103
105104
X_SERVER_URL=
106105
XAI_API_KEY=

docs/docs/guides/configuration.md

-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ DISCORD_API_TOKEN= # Discord bot token
4646
TWITTER_USERNAME= # Bot Twitter username
4747
TWITTER_PASSWORD= # Bot Twitter password
4848
TWITTER_EMAIL= # Twitter account email
49-
TWITTER_COOKIES= # Twitter auth cookies
5049
TWITTER_DRY_RUN=false # Test mode without posting
5150
```
5251

docs/docs/packages/clients.md

-1
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,6 @@ const client = await TwitterClientInterface.start(runtime);
141141
TWITTER_USERNAME = your_username;
142142
TWITTER_PASSWORD = your_password;
143143
TWITTER_EMAIL = your_email;
144-
TWITTER_COOKIES = your_cookies;
145144
```
146145

147146
### Components

docs/docs/quickstart.md

-11
Original file line numberDiff line numberDiff line change
@@ -168,21 +168,10 @@ Add to your `.env`:
168168
TWITTER_USERNAME= # Account username
169169
TWITTER_PASSWORD= # Account password
170170
TWITTER_EMAIL= # Account email
171-
TWITTER_COOKIES= # Account cookies (auth_token and CT0)
172171
```
173172

174173
**Important:** Log in to the [Twitter Developer Portal](https://developer.twitter.com) and enable the "Automated" label for your account to avoid being flagged as inauthentic.
175174

176-
Example for TWITTER_COOKIES
177-
178-
The TWITTER_COOKIES variable should be a JSON string containing the necessary cookies. You can find these cookies in your web browser's developer tools. Here is an example format:
179-
180-
```bash
181-
TWITTER_COOKIES='[{"key":"auth_token","value":"your token","domain":".twitter.com"},
182-
{"key":"ct0","value":"your ct0","domain":".twitter.com"},
183-
{"key":"guest_id","value":"your guest_id","domain":".twitter.com"}]'
184-
```
185-
186175
### Telegram Bot
187176

188177
1. Create a bot

packages/client-twitter/package.json

+22-22
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
11
{
2-
"name": "@ai16z/client-twitter",
3-
"version": "0.1.6",
4-
"main": "dist/index.js",
5-
"type": "module",
6-
"types": "dist/index.d.ts",
7-
"dependencies": {
8-
"@ai16z/eliza": "workspace:*",
9-
"agent-twitter-client": "0.0.16",
10-
"glob": "11.0.0",
11-
"zod": "3.23.8"
12-
},
13-
"devDependencies": {
14-
"tsup": "8.3.5"
15-
},
16-
"scripts": {
17-
"build": "tsup --format esm --dts",
18-
"dev": "tsup --format esm --dts --watch",
19-
"lint": "eslint --fix --cache ."
20-
},
21-
"peerDependencies": {
22-
"whatwg-url": "7.1.0"
23-
}
2+
"name": "@ai16z/client-twitter",
3+
"version": "0.1.6",
4+
"main": "dist/index.js",
5+
"type": "module",
6+
"types": "dist/index.d.ts",
7+
"dependencies": {
8+
"@ai16z/eliza": "workspace:*",
9+
"agent-twitter-client": "0.0.17",
10+
"glob": "11.0.0",
11+
"zod": "3.23.8"
12+
},
13+
"devDependencies": {
14+
"tsup": "8.3.5"
15+
},
16+
"scripts": {
17+
"build": "tsup --format esm --dts",
18+
"dev": "tsup --format esm --dts --watch",
19+
"lint": "eslint --fix --cache ."
20+
},
21+
"peerDependencies": {
22+
"whatwg-url": "7.1.0"
23+
}
2424
}

packages/client-twitter/src/base.ts

+16-22
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,6 @@ export class ClientBase extends EventEmitter {
153153
}
154154

155155
async init() {
156-
//test
157156
const username = this.runtime.getSetting("TWITTER_USERNAME");
158157
const password = this.runtime.getSetting("TWITTER_PASSWORD");
159158
const email = this.runtime.getSetting("TWITTER_EMAIL");
@@ -163,43 +162,38 @@ export class ClientBase extends EventEmitter {
163162
);
164163
const twitter2faSecret =
165164
this.runtime.getSetting("TWITTER_2FA_SECRET") || undefined;
166-
const cookies = this.runtime.getSetting("TWITTER_COOKIES");
167165

168166
if (!username) {
169167
throw new Error("Twitter username not configured");
170168
}
171-
// Check for Twitter cookies
172-
if (cookies) {
173-
elizaLogger.debug("Using cookies from settings");
174-
const cookiesArray = JSON.parse(cookies);
175169

176-
await this.setCookiesFromArray(cookiesArray);
177-
} else {
178-
elizaLogger.debug("No cookies found in settings");
179-
elizaLogger.debug("Checking for cached cookies");
180-
const cachedCookies = await this.getCachedCookies(username);
181-
if (cachedCookies) {
182-
await this.setCookiesFromArray(cachedCookies);
183-
}
170+
const cachedCookies = await this.getCachedCookies(username);
171+
172+
if (cachedCookies) {
173+
elizaLogger.info("Using cached cookies");
174+
await this.setCookiesFromArray(cachedCookies);
184175
}
185176

186177
elizaLogger.log("Waiting for Twitter login");
187178
while (retries > 0) {
188-
const cookies = await this.twitterClient.getCookies();
189-
if ((await this.twitterClient.isLoggedIn()) && !!cookies) {
190-
elizaLogger.info("Already logged in.");
191-
await this.cacheCookies(username, cookies);
192-
elizaLogger.info("Successfully logged in and cookies cached.");
193-
break;
194-
}
195-
196179
try {
197180
await this.twitterClient.login(
198181
username,
199182
password,
200183
email,
201184
twitter2faSecret
202185
);
186+
if (await this.twitterClient.isLoggedIn()) {
187+
elizaLogger.info("Successfully logged in.");
188+
if (!cachedCookies) {
189+
elizaLogger.info("Caching cookies");
190+
await this.cacheCookies(
191+
username,
192+
await this.twitterClient.getCookies()
193+
);
194+
}
195+
break;
196+
}
203197
} catch (error) {
204198
elizaLogger.error(`Login attempt failed: ${error.message}`);
205199
}

packages/client-twitter/src/environment.ts

-4
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ export const twitterEnvSchema = z.object({
1010
TWITTER_USERNAME: z.string().min(1, "Twitter username is required"),
1111
TWITTER_PASSWORD: z.string().min(1, "Twitter password is required"),
1212
TWITTER_EMAIL: z.string().email("Valid Twitter email is required"),
13-
TWITTER_COOKIES: z.string().optional(),
1413
MAX_TWEET_LENGTH: z
1514
.string()
1615
.pipe(z.coerce.number().min(0).int())
@@ -37,9 +36,6 @@ export async function validateTwitterConfig(
3736
TWITTER_EMAIL:
3837
runtime.getSetting("TWITTER_EMAIL") ||
3938
process.env.TWITTER_EMAIL,
40-
TWITTER_COOKIES:
41-
runtime.getSetting("TWITTER_COOKIES") ||
42-
process.env.TWITTER_COOKIES,
4339
MAX_TWEET_LENGTH:
4440
runtime.getSetting("MAX_TWEET_LENGTH") ||
4541
process.env.MAX_TWEET_LENGTH ||

packages/plugin-evm/eslint.config.mjs

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import eslintGlobalConfig from "../../eslint.config.mjs";
2+
3+
export default [...eslintGlobalConfig];

packages/plugin-evm/package.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
"scripts": {
1616
"build": "tsup --format esm --dts",
1717
"dev": "tsup --format esm --dts --watch",
18-
"test": "vitest run"
18+
"test": "vitest run",
19+
"lint": "eslint --fix --cache ."
1920
},
2021
"peerDependencies": {
2122
"whatwg-url": "7.1.0"

packages/plugin-evm/src/actions/swap.ts

-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import type { IAgentRuntime, Memory, State } from "@ai16z/eliza";
22
import {
3-
ChainId,
43
createConfig,
54
executeRoute,
65
ExtendedChain,

0 commit comments

Comments
 (0)