simple_node_characterai 1.1.0 → 1.1.1

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/README.md CHANGED
@@ -45,6 +45,95 @@ import { authenticate, createNewConversation, sendMessage, getMessages, getProfi
45
45
  })();
46
46
  ```
47
47
 
48
+ ## Example with Hono Route Handler
49
+ ```ts
50
+ import { Hono } from 'hono'
51
+ import { authenticate, createNewConversation, sendMessage, getMessages, getProfile } from 'simple_node_characterai';
52
+
53
+ const app = new Hono();
54
+
55
+ (async () => {
56
+ await authenticate(process.env.CHARACTERAI_TOKEN!);
57
+ })();
58
+
59
+ // Creates a new one-on-one conversation
60
+ // Body: { characterId: string } -> Response: { chatId: string }
61
+ app.post('/conversations', async (c) => {
62
+ try {
63
+ const body = await c.req.json();
64
+ const characterId = body?.characterId;
65
+ if (!characterId) return c.json({ error: 'characterId is required' }, 400);
66
+ const addTurn = await createNewConversation(characterId);
67
+ const chatId = addTurn.turn.turn_key.chat_id;
68
+ return c.json({ chatId });
69
+ } catch (e) {
70
+ return c.json({ error: 'failed to create conversation' }, 500);
71
+ }
72
+ });
73
+
74
+ // Sends a message to a conversation and returns the final content
75
+ // Body: { message: string, characterId: string, chatId: string }
76
+ // Make sure to store the characterId and chatId somewhere, like Database
77
+ // The messages field can be get in response.turn.candidates[0].raw_content
78
+ app.post('/messages', async (c) => {
79
+ try {
80
+ const body = await c.req.json();
81
+ const message = body?.message;
82
+ const characterId = body?.characterId;
83
+ const chatId = body?.chatId;
84
+ if (!message || !characterId || !chatId) {
85
+ return c.json({ error: 'message, characterId, and chatId are required' }, 400);
86
+ }
87
+ const response = await sendMessage(message, characterId, chatId);
88
+ const final = response.turn.candidates?.[0];
89
+ return c.json({
90
+ turn: response.turn,
91
+ content: final?.raw_content ?? null
92
+ });
93
+ } catch (e) {
94
+ return c.json({ error: 'failed to send message' }, 500);
95
+ }
96
+ });
97
+
98
+ // Fetches up to 50 turns for the given chatId
99
+ // Optional query: ?token=NEXT_TOKEN for pagination
100
+ // Token will be available in meta field of response if there's more turns to fetch.
101
+ app.get('/messages/:chatId', async (c) => {
102
+ try {
103
+ const chatId = c.req.param('chatId');
104
+ const token = c.req.query('token') ?? undefined;
105
+ const messages = await getMessages(chatId, token);
106
+ return c.json({ turns: messages.turns, token: messages.meta.next_token });
107
+ } catch (e) {
108
+ return c.json({ error: 'failed to fetch messages' }, 500);
109
+ }
110
+ });
111
+
112
+ export default app
113
+ ```
114
+
115
+ ## Find Authorization Token
116
+ <img width="795" height="550" alt="image" src="https://github.com/user-attachments/assets/fefe6262-00cb-4a1f-82da-51a4c96ef299" />
117
+
118
+ 1. Logged in to [character.ai](https://character.ai)
119
+ 2. Make sure to select any character first
120
+ 3. Open the developer tools <code> F12, FN + F12, CTRL + SHIFT + I</code>
121
+ 4. Go to `Application` tab
122
+ 5. Navigate to Cookies section, and select https://character.ai cookies
123
+ 6. Look up for `HTTP_AUTHORIZATION` token with string that starts with `Token `
124
+ 7. If token doesn't present, refresh the page and see the token again
125
+ 8. Copy the value
126
+
127
+ Sometimes the token will show up for a minutes and dissapear.
128
+
129
+ ## Find Character ID and Chat ID
130
+ <img width="859" height="46" alt="image" src="https://github.com/user-attachments/assets/37f03b58-1cd0-436f-aa31-941fc2791620" />
131
+
132
+ Logged in to [character.ai](https://character.ai), and select a character you want to chat, then look up at URL, the URL contains the Character and Chat ID with following detail:
133
+ ```
134
+ https://character.ai/chat/{characterId}?hist={chatId}
135
+ ```
136
+
48
137
  ## API Reference
49
138
 
50
139
  ### Auth
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,QAAQ,CAAC;AAMtC;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAU,cAAc,MAAM,KAAI,OAAO,CAAC,IAAI,CAgBtE,CAAA;AAgBD;;;GAGG;AACH,eAAO,MAAM,UAAU,QAAQ,OAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,QAAQ,CAAC;AAMtC;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAU,cAAc,MAAM,KAAI,OAAO,CAAC,IAAI,CAoBtE,CAAA;AAoBD;;;GAGG;AACH,eAAO,MAAM,UAAU,QAAQ,OAAe,CAAC"}
@@ -11,20 +11,25 @@ let user = {};
11
11
  * @returns Resolves when authentication and connection complete.
12
12
  */
13
13
  const authenticate = async (sessionToken) => {
14
- if (sessionToken.startsWith("Token "))
15
- sessionToken = sessionToken.substring("Token ".length, sessionToken.length);
16
- (0, api_1.updateToken)(sessionToken);
17
- const req = await (0, api_1.request)("https://plus.character.ai/chat/user/settings/", {
18
- method: "GET",
19
- includeAuthorization: true
20
- });
21
- if (!req.ok)
22
- throw Error("Invaild authentication token.");
23
- await loadProfile();
24
- await (0, Websocket_1.connect)({
25
- edgeRollout: "60",
26
- authorization: sessionToken
27
- });
14
+ try {
15
+ if (sessionToken.startsWith("Token "))
16
+ sessionToken = sessionToken.substring("Token ".length, sessionToken.length);
17
+ (0, api_1.updateToken)(sessionToken);
18
+ const req = await (0, api_1.request)("https://plus.character.ai/chat/user/settings/", {
19
+ method: "GET",
20
+ includeAuthorization: true
21
+ });
22
+ if (!req.ok)
23
+ throw Error("Invaild authentication token.");
24
+ await loadProfile();
25
+ await (0, Websocket_1.connect)({
26
+ edgeRollout: "60",
27
+ authorization: sessionToken
28
+ });
29
+ }
30
+ catch (error) {
31
+ throw Error(`Failed to initialize Character AI, Error: ${error}`);
32
+ }
28
33
  };
29
34
  exports.authenticate = authenticate;
30
35
  /**
@@ -33,12 +38,17 @@ exports.authenticate = authenticate;
33
38
  * @returns Resolves when the profile has been populated.
34
39
  */
35
40
  const loadProfile = async () => {
36
- const result = await (0, api_1.request)("https://plus.character.ai/chat/user/", {
37
- method: 'GET',
38
- includeAuthorization: true
39
- });
40
- const profile = await result.json();
41
- Object.assign(user, profile.user);
41
+ try {
42
+ const result = await (0, api_1.request)("https://plus.character.ai/chat/user/", {
43
+ method: 'GET',
44
+ includeAuthorization: true
45
+ });
46
+ const profile = await result.json();
47
+ Object.assign(user, profile.user);
48
+ }
49
+ catch (error) {
50
+ throw Error(`Failed to load profile from Character AI, Error: ${error}`);
51
+ }
42
52
  };
43
53
  /**
44
54
  * Returns the authenticated user's profile.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Auth/index.ts"],"names":[],"mappings":";;;AACA,4CAAuC;AACvC,gCAA8C;AAE9C,IAAI,IAAI,GAAY,EAAa,CAAC;AAElC;;;;;GAKG;AACI,MAAM,YAAY,GAAG,KAAK,EAAE,YAAoB,EAAkB,EAAE;IACvE,IAAI,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAEnH,IAAA,iBAAW,EAAC,YAAY,CAAC,CAAC;IAE1B,MAAM,GAAG,GAAG,MAAM,IAAA,aAAO,EAAC,+CAA+C,EAAE;QACvE,MAAM,EAAE,KAAK;QACb,oBAAoB,EAAE,IAAI;KAC7B,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAE1D,MAAM,WAAW,EAAE,CAAC;IACpB,MAAM,IAAA,mBAAO,EAAC;QACV,WAAW,EAAE,IAAI;QACjB,aAAa,EAAE,YAAY;KAC9B,CAAC,CAAC;AACP,CAAC,CAAA;AAhBY,QAAA,YAAY,gBAgBxB;AAED;;;;GAIG;AACH,MAAM,WAAW,GAAG,KAAK,IAAoB,EAAE;IAC3C,MAAM,MAAM,GAAG,MAAM,IAAA,aAAO,EAAC,sCAAsC,EAAE;QACjE,MAAM,EAAE,KAAK;QACb,oBAAoB,EAAE,IAAI;KAC7B,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACpC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC,CAAA;AAED;;;GAGG;AACI,MAAM,UAAU,GAAG,GAAa,EAAE,CAAC,IAAI,CAAC;AAAlC,QAAA,UAAU,cAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Auth/index.ts"],"names":[],"mappings":";;;AACA,4CAAuC;AACvC,gCAA8C;AAE9C,IAAI,IAAI,GAAY,EAAa,CAAC;AAElC;;;;;GAKG;AACI,MAAM,YAAY,GAAG,KAAK,EAAE,YAAoB,EAAkB,EAAE;IACvE,IAAI,CAAC;QACD,IAAI,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QAEnH,IAAA,iBAAW,EAAC,YAAY,CAAC,CAAC;QAE1B,MAAM,GAAG,GAAG,MAAM,IAAA,aAAO,EAAC,+CAA+C,EAAE;YACvE,MAAM,EAAE,KAAK;YACb,oBAAoB,EAAE,IAAI;SAC7B,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAE1D,MAAM,WAAW,EAAE,CAAC;QACpB,MAAM,IAAA,mBAAO,EAAC;YACV,WAAW,EAAE,IAAI;YACjB,aAAa,EAAE,YAAY;SAC9B,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,MAAM,KAAK,CAAC,6CAA6C,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;AACL,CAAC,CAAA;AApBY,QAAA,YAAY,gBAoBxB;AAED;;;;GAIG;AACH,MAAM,WAAW,GAAG,KAAK,IAAoB,EAAE;IAC3C,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAA,aAAO,EAAC,sCAAsC,EAAE;YACjE,MAAM,EAAE,KAAK;YACb,oBAAoB,EAAE,IAAI;SAC7B,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,MAAM,KAAK,CAAC,oDAAoD,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC;AACL,CAAC,CAAA;AAED;;;GAGG;AACI,MAAM,UAAU,GAAG,GAAa,EAAE,CAAC,IAAI,CAAC;AAAlC,QAAA,UAAU,cAAwB"}
@@ -18,9 +18,15 @@ export declare const sendMessage: (message: string, characterId: string, chatId:
18
18
  /**
19
19
  * Retrieves up to 50 messages (turns) for a given chat.
20
20
  * If a `token` is provided, it fetches the next page of results.
21
+ * Token can be null in the end of the chat.
21
22
  * @param chatId - The ID of the chat whose messages are to be fetched.
22
23
  * @param token - Optional pagination token for retrieving the next batch.
23
- * @return Parsed JSON containing up to 50 messages.
24
+ * @return Parsed JSON containing up to 50 messages in turns field, and the token for pagination in meta field.
24
25
  */
25
- export declare const getMessages: (chatId: string, token?: string) => Promise<Turn[]>;
26
+ export declare const getMessages: (chatId: string, token?: string) => Promise<{
27
+ turns: Turn[];
28
+ meta: {
29
+ next_token: string | null;
30
+ };
31
+ }>;
26
32
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Chat/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAmD,kBAAkB,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAK3H;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAU,aAAa,MAAM,KAAG,OAAO,CAAC,eAAe,CA0CxF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GAAU,SAAS,MAAM,EAAE,aAAa,MAAM,EAAE,QAAQ,MAAM,KAAG,OAAO,CAAC,kBAAkB,CAqFlH,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAU,QAAQ,MAAM,EAAE,QAAQ,MAAM,KAAI,OAAO,CAAC,IAAI,EAAE,CAUjF,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Chat/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAmD,kBAAkB,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAK3H;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAU,aAAa,MAAM,KAAG,OAAO,CAAC,eAAe,CA0CxF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GAAU,SAAS,MAAM,EAAE,aAAa,MAAM,EAAE,QAAQ,MAAM,KAAG,OAAO,CAAC,kBAAkB,CAoFlH,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GAAU,QAAQ,MAAM,EAAE,QAAQ,MAAM,KAAI,OAAO,CAAC;IACxE,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,IAAI,EAAE;QACF,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;KAC5B,CAAA;CACJ,CAcA,CAAA"}
@@ -76,7 +76,6 @@ const sendMessage = async (message, characterId, chatId) => {
76
76
  throw Error('Character ID is required for sending message');
77
77
  const websocket = (0, Websocket_1.getSocket)();
78
78
  return new Promise((resolve, reject) => {
79
- console.log('sending message');
80
79
  const uuid = (0, uuid_1.v4)();
81
80
  const profile = (0, Auth_1.getProfile)();
82
81
  const request = {
@@ -159,18 +158,24 @@ exports.sendMessage = sendMessage;
159
158
  /**
160
159
  * Retrieves up to 50 messages (turns) for a given chat.
161
160
  * If a `token` is provided, it fetches the next page of results.
161
+ * Token can be null in the end of the chat.
162
162
  * @param chatId - The ID of the chat whose messages are to be fetched.
163
163
  * @param token - Optional pagination token for retrieving the next batch.
164
- * @return Parsed JSON containing up to 50 messages.
164
+ * @return Parsed JSON containing up to 50 messages in turns field, and the token for pagination in meta field.
165
165
  */
166
166
  const getMessages = async (chatId, token) => {
167
- const query = token ? `?next_token=${encodeURIComponent(token)}` : '';
168
- const req = await (0, api_1.request)(`https://neo.character.ai/turns/${chatId}/${query}`, {
169
- method: 'GET',
170
- includeAuthorization: true
171
- });
172
- const result = await req.json();
173
- return result.turns;
167
+ try {
168
+ const query = token ? `?next_token=${encodeURIComponent(token)}` : '';
169
+ const req = await (0, api_1.request)(`https://neo.character.ai/turns/${chatId}/${query}`, {
170
+ method: 'GET',
171
+ includeAuthorization: true
172
+ });
173
+ const result = await req.json();
174
+ return result;
175
+ }
176
+ catch (error) {
177
+ throw Error(`Failed to get messages, Error: ${error}`);
178
+ }
174
179
  };
175
180
  exports.getMessages = getMessages;
176
181
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Chat/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Chat/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "simple_node_characterai",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {