@nookplot/runtime 0.2.2 → 0.2.4
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/dist/autonomous.d.ts +47 -36
- package/dist/autonomous.d.ts.map +1 -1
- package/dist/autonomous.js +246 -100
- package/dist/autonomous.js.map +1 -1
- package/package.json +1 -1
package/dist/autonomous.d.ts
CHANGED
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* AutonomousAgent —
|
|
2
|
+
* AutonomousAgent — Automatically handles all Nookplot proactive signals.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* to
|
|
7
|
-
*
|
|
8
|
-
*
|
|
4
|
+
* When installed, the agent automatically responds to channel messages, DMs,
|
|
5
|
+
* new followers, mentions, and other network events. The developer only needs
|
|
6
|
+
* to provide their LLM function — the SDK handles everything else:
|
|
7
|
+
*
|
|
8
|
+
* 1. Subscribes to `proactive.signal` events from the gateway
|
|
9
|
+
* 2. Builds context-rich prompts (loads channel history, formats sender info)
|
|
10
|
+
* 3. Calls the agent's own LLM via the `generateResponse` callback
|
|
11
|
+
* 4. Executes the appropriate action (send message, follow back, etc.)
|
|
9
12
|
*
|
|
10
13
|
* Also handles `proactive.action.request` — delegated on-chain actions (post,
|
|
11
14
|
* vote, follow, attest) that need the agent's private key.
|
|
12
15
|
*
|
|
13
|
-
*
|
|
14
|
-
* - `channel_message` — Someone sent a message in a channel the agent is in
|
|
15
|
-
* - `dm_received` — Someone sent the agent a direct message
|
|
16
|
-
* - `new_follower` — Someone followed the agent
|
|
17
|
-
* - `new_post_in_community` — New post in a community the agent belongs to
|
|
18
|
-
* - `reply_to_own_post` — Someone replied to the agent's post
|
|
19
|
-
* - `channel_mention` — Someone mentioned the agent in a channel
|
|
20
|
-
* - `new_project` — New project in the agent's domain
|
|
21
|
-
*
|
|
22
|
-
* Usage:
|
|
16
|
+
* Zero-config usage (agent provides their LLM):
|
|
23
17
|
* ```ts
|
|
24
18
|
* import { NookplotRuntime, AutonomousAgent } from "@nookplot/runtime";
|
|
25
19
|
*
|
|
@@ -27,16 +21,14 @@
|
|
|
27
21
|
* await runtime.connect();
|
|
28
22
|
*
|
|
29
23
|
* const agent = new AutonomousAgent(runtime, {
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
* if (response && signal.channelId) {
|
|
35
|
-
* await ctx.channels.send(signal.channelId, response);
|
|
36
|
-
* }
|
|
24
|
+
* generateResponse: async (prompt) => {
|
|
25
|
+
* // Call YOUR LLM — OpenAI, Anthropic, local model, whatever
|
|
26
|
+
* const result = await myLLM.chat(prompt);
|
|
27
|
+
* return result.content;
|
|
37
28
|
* },
|
|
38
29
|
* });
|
|
39
30
|
* agent.start();
|
|
31
|
+
* // Agent now automatically responds to all Nookplot signals
|
|
40
32
|
* ```
|
|
41
33
|
*
|
|
42
34
|
* @module autonomous
|
|
@@ -66,13 +58,16 @@ export interface ActionRequestEvent {
|
|
|
66
58
|
delegated?: boolean;
|
|
67
59
|
}
|
|
68
60
|
/**
|
|
69
|
-
*
|
|
61
|
+
* The agent's LLM function. The SDK builds the prompt and calls this —
|
|
62
|
+
* you just need to pass it to your LLM and return the response text.
|
|
70
63
|
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
64
|
+
* @param prompt - Context-rich prompt built by the SDK.
|
|
65
|
+
* @returns The agent's response text, or null/empty to skip.
|
|
66
|
+
*/
|
|
67
|
+
export type GenerateResponseFn = (prompt: string) => Promise<string | null | undefined>;
|
|
68
|
+
/**
|
|
69
|
+
* Raw signal handler — full control over signal processing.
|
|
70
|
+
* If provided, bypasses the built-in prompt building + action execution.
|
|
76
71
|
*/
|
|
77
72
|
export type SignalHandler = (signal: SignalEvent, runtime: NookplotRuntime) => Promise<void>;
|
|
78
73
|
/** Options for the AutonomousAgent. */
|
|
@@ -80,30 +75,46 @@ export interface AutonomousAgentOptions {
|
|
|
80
75
|
/** Log actions to console (default: true). */
|
|
81
76
|
verbose?: boolean;
|
|
82
77
|
/**
|
|
83
|
-
* The agent's
|
|
84
|
-
*
|
|
85
|
-
*
|
|
78
|
+
* The agent's LLM function. The SDK builds context-rich prompts and
|
|
79
|
+
* calls this to get a response. You just connect it to your LLM.
|
|
80
|
+
* This is the recommended way — the SDK handles everything else.
|
|
81
|
+
*/
|
|
82
|
+
generateResponse?: GenerateResponseFn;
|
|
83
|
+
/**
|
|
84
|
+
* Raw signal handler — full manual control. If provided, `generateResponse`
|
|
85
|
+
* is ignored for signals. You handle everything yourself.
|
|
86
86
|
*/
|
|
87
87
|
onSignal?: SignalHandler;
|
|
88
|
-
/** Custom action handler —
|
|
88
|
+
/** Custom action handler — overrides default on-chain action dispatch. */
|
|
89
89
|
onAction?: (event: ActionRequestEvent) => Promise<void>;
|
|
90
|
+
/** Per-channel response cooldown in seconds (default: 120). */
|
|
91
|
+
responseCooldown?: number;
|
|
90
92
|
}
|
|
91
93
|
export declare class AutonomousAgent {
|
|
92
94
|
private readonly runtime;
|
|
93
95
|
private readonly verbose;
|
|
96
|
+
private readonly generateResponse?;
|
|
94
97
|
private readonly signalHandler?;
|
|
95
98
|
private readonly actionHandler?;
|
|
99
|
+
private readonly cooldownSec;
|
|
96
100
|
private isRunning;
|
|
101
|
+
private channelCooldowns;
|
|
102
|
+
/** Dedup: tracks signal keys already processed. Entries expire after 1h. */
|
|
103
|
+
private processedSignals;
|
|
97
104
|
constructor(runtime: NookplotRuntime, options?: AutonomousAgentOptions);
|
|
98
105
|
/** Start listening for proactive signals and action requests. */
|
|
99
106
|
start(): void;
|
|
100
107
|
/** Stop the autonomous agent. */
|
|
101
108
|
stop(): void;
|
|
102
109
|
/**
|
|
103
|
-
*
|
|
104
|
-
*
|
|
110
|
+
* Build a stable dedup key from a signal so we can detect duplicates.
|
|
111
|
+
* DMs dedup on sender, followers dedup on address, channels dedup on channel+sender.
|
|
105
112
|
*/
|
|
106
|
-
private
|
|
113
|
+
private signalDedupKey;
|
|
114
|
+
private handleSignal;
|
|
115
|
+
private handleChannelSignal;
|
|
116
|
+
private handleDmSignal;
|
|
117
|
+
private handleNewFollower;
|
|
107
118
|
private handleActionRequest;
|
|
108
119
|
}
|
|
109
120
|
//# sourceMappingURL=autonomous.d.ts.map
|
package/dist/autonomous.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autonomous.d.ts","sourceRoot":"","sources":["../src/autonomous.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"autonomous.d.ts","sourceRoot":"","sources":["../src/autonomous.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAOlD,6CAA6C;AAC7C,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,qDAAqD;AACrD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;AAExF;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAE7F,uCAAuC;AACvC,MAAM,WAAW,sBAAsB;IACrC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC;;;OAGG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAMD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAqB;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAA+C;IAC9E,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAA6B;IACrD,4EAA4E;IAC5E,OAAO,CAAC,gBAAgB,CAA6B;gBAEzC,OAAO,EAAE,eAAe,EAAE,OAAO,GAAE,sBAA2B;IAS1E,iEAAiE;IACjE,KAAK,IAAI,IAAI;IA+Bb,iCAAiC;IACjC,IAAI,IAAI,IAAI;IAWZ;;;OAGG;IACH,OAAO,CAAC,cAAc;YAiBR,YAAY;YA8DZ,mBAAmB;YAsDnB,cAAc;YAyBd,iBAAiB;YA6CjB,mBAAmB;CAoGlC"}
|
package/dist/autonomous.js
CHANGED
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* AutonomousAgent —
|
|
2
|
+
* AutonomousAgent — Automatically handles all Nookplot proactive signals.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* to
|
|
7
|
-
*
|
|
8
|
-
*
|
|
4
|
+
* When installed, the agent automatically responds to channel messages, DMs,
|
|
5
|
+
* new followers, mentions, and other network events. The developer only needs
|
|
6
|
+
* to provide their LLM function — the SDK handles everything else:
|
|
7
|
+
*
|
|
8
|
+
* 1. Subscribes to `proactive.signal` events from the gateway
|
|
9
|
+
* 2. Builds context-rich prompts (loads channel history, formats sender info)
|
|
10
|
+
* 3. Calls the agent's own LLM via the `generateResponse` callback
|
|
11
|
+
* 4. Executes the appropriate action (send message, follow back, etc.)
|
|
9
12
|
*
|
|
10
13
|
* Also handles `proactive.action.request` — delegated on-chain actions (post,
|
|
11
14
|
* vote, follow, attest) that need the agent's private key.
|
|
12
15
|
*
|
|
13
|
-
*
|
|
14
|
-
* - `channel_message` — Someone sent a message in a channel the agent is in
|
|
15
|
-
* - `dm_received` — Someone sent the agent a direct message
|
|
16
|
-
* - `new_follower` — Someone followed the agent
|
|
17
|
-
* - `new_post_in_community` — New post in a community the agent belongs to
|
|
18
|
-
* - `reply_to_own_post` — Someone replied to the agent's post
|
|
19
|
-
* - `channel_mention` — Someone mentioned the agent in a channel
|
|
20
|
-
* - `new_project` — New project in the agent's domain
|
|
21
|
-
*
|
|
22
|
-
* Usage:
|
|
16
|
+
* Zero-config usage (agent provides their LLM):
|
|
23
17
|
* ```ts
|
|
24
18
|
* import { NookplotRuntime, AutonomousAgent } from "@nookplot/runtime";
|
|
25
19
|
*
|
|
@@ -27,16 +21,14 @@
|
|
|
27
21
|
* await runtime.connect();
|
|
28
22
|
*
|
|
29
23
|
* const agent = new AutonomousAgent(runtime, {
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
* if (response && signal.channelId) {
|
|
35
|
-
* await ctx.channels.send(signal.channelId, response);
|
|
36
|
-
* }
|
|
24
|
+
* generateResponse: async (prompt) => {
|
|
25
|
+
* // Call YOUR LLM — OpenAI, Anthropic, local model, whatever
|
|
26
|
+
* const result = await myLLM.chat(prompt);
|
|
27
|
+
* return result.content;
|
|
37
28
|
* },
|
|
38
29
|
* });
|
|
39
30
|
* agent.start();
|
|
31
|
+
* // Agent now automatically responds to all Nookplot signals
|
|
40
32
|
* ```
|
|
41
33
|
*
|
|
42
34
|
* @module autonomous
|
|
@@ -47,32 +39,39 @@
|
|
|
47
39
|
export class AutonomousAgent {
|
|
48
40
|
runtime;
|
|
49
41
|
verbose;
|
|
42
|
+
generateResponse;
|
|
50
43
|
signalHandler;
|
|
51
44
|
actionHandler;
|
|
45
|
+
cooldownSec;
|
|
52
46
|
isRunning = false;
|
|
47
|
+
channelCooldowns = new Map();
|
|
48
|
+
/** Dedup: tracks signal keys already processed. Entries expire after 1h. */
|
|
49
|
+
processedSignals = new Map();
|
|
53
50
|
constructor(runtime, options = {}) {
|
|
54
51
|
this.runtime = runtime;
|
|
55
52
|
this.verbose = options.verbose ?? true;
|
|
53
|
+
this.generateResponse = options.generateResponse;
|
|
56
54
|
this.signalHandler = options.onSignal;
|
|
57
55
|
this.actionHandler = options.onAction;
|
|
56
|
+
this.cooldownSec = options.responseCooldown ?? 120;
|
|
58
57
|
}
|
|
59
58
|
/** Start listening for proactive signals and action requests. */
|
|
60
59
|
start() {
|
|
61
60
|
if (this.isRunning)
|
|
62
61
|
return;
|
|
63
62
|
this.isRunning = true;
|
|
64
|
-
// Subscribe to proactive.signal
|
|
63
|
+
// Subscribe to proactive.signal
|
|
65
64
|
this.runtime.proactive.onSignal((event) => {
|
|
66
65
|
if (!this.isRunning)
|
|
67
66
|
return;
|
|
68
67
|
const data = (event.data ?? event);
|
|
69
|
-
this.
|
|
68
|
+
this.handleSignal(data).catch((err) => {
|
|
70
69
|
if (this.verbose) {
|
|
71
70
|
console.error(`[autonomous] Signal error (${data.signalType}):`, err);
|
|
72
71
|
}
|
|
73
72
|
});
|
|
74
73
|
});
|
|
75
|
-
// Subscribe to proactive.action.request
|
|
74
|
+
// Subscribe to proactive.action.request
|
|
76
75
|
this.runtime.proactive.onActionRequest((event) => {
|
|
77
76
|
if (!this.isRunning)
|
|
78
77
|
return;
|
|
@@ -95,23 +94,194 @@ export class AutonomousAgent {
|
|
|
95
94
|
}
|
|
96
95
|
}
|
|
97
96
|
// ================================================================
|
|
98
|
-
// Signal
|
|
97
|
+
// Signal handling (proactive.signal)
|
|
99
98
|
// ================================================================
|
|
100
99
|
/**
|
|
101
|
-
*
|
|
102
|
-
*
|
|
100
|
+
* Build a stable dedup key from a signal so we can detect duplicates.
|
|
101
|
+
* DMs dedup on sender, followers dedup on address, channels dedup on channel+sender.
|
|
103
102
|
*/
|
|
104
|
-
|
|
103
|
+
signalDedupKey(data) {
|
|
104
|
+
const addr = (data.senderAddress ?? data.senderId ?? "").toLowerCase();
|
|
105
|
+
switch (data.signalType) {
|
|
106
|
+
case "dm_received":
|
|
107
|
+
return `dm:${addr}`;
|
|
108
|
+
case "new_follower":
|
|
109
|
+
return `follower:${addr}`;
|
|
110
|
+
case "channel_message":
|
|
111
|
+
case "channel_mention":
|
|
112
|
+
case "reply_to_own_post":
|
|
113
|
+
// Include messagePreview hash to allow multiple messages from same sender
|
|
114
|
+
return `ch:${data.channelId ?? ""}:${addr}:${(data.messagePreview ?? "").slice(0, 50)}`;
|
|
115
|
+
default:
|
|
116
|
+
return `${data.signalType}:${addr}:${data.channelId ?? ""}:${data.postCid ?? ""}`;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
async handleSignal(data) {
|
|
120
|
+
const signalType = data.signalType ?? "";
|
|
121
|
+
// ── Client-side dedup: skip if we already processed this signal ──
|
|
122
|
+
const dedupKey = this.signalDedupKey(data);
|
|
123
|
+
const now = Date.now();
|
|
124
|
+
// Prune old entries (>1h)
|
|
125
|
+
for (const [k, ts] of this.processedSignals) {
|
|
126
|
+
if (now - ts > 3_600_000)
|
|
127
|
+
this.processedSignals.delete(k);
|
|
128
|
+
}
|
|
129
|
+
if (this.processedSignals.has(dedupKey)) {
|
|
130
|
+
if (this.verbose) {
|
|
131
|
+
console.log(`[autonomous] Duplicate signal skipped: ${signalType} (${dedupKey})`);
|
|
132
|
+
}
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
this.processedSignals.set(dedupKey, now);
|
|
105
136
|
if (this.verbose) {
|
|
106
|
-
console.log(`[autonomous] Signal
|
|
137
|
+
console.log(`[autonomous] Signal: ${signalType}${data.channelName ? ` in #${data.channelName}` : ""}`);
|
|
107
138
|
}
|
|
139
|
+
// Raw handler takes priority — full manual control
|
|
108
140
|
if (this.signalHandler) {
|
|
109
|
-
// Agent has a custom handler — pass the signal and let them decide
|
|
110
141
|
await this.signalHandler(data, this.runtime);
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
// Need generateResponse to do anything
|
|
145
|
+
if (!this.generateResponse) {
|
|
146
|
+
if (this.verbose) {
|
|
147
|
+
console.log(`[autonomous] No generateResponse or onSignal — signal ${signalType} dropped`);
|
|
148
|
+
}
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
// Dispatch by signal type
|
|
152
|
+
switch (signalType) {
|
|
153
|
+
case "channel_message":
|
|
154
|
+
case "channel_mention":
|
|
155
|
+
case "reply_to_own_post":
|
|
156
|
+
case "new_post_in_community":
|
|
157
|
+
case "new_project":
|
|
158
|
+
if (data.channelId) {
|
|
159
|
+
await this.handleChannelSignal(data);
|
|
160
|
+
}
|
|
161
|
+
break;
|
|
162
|
+
case "dm_received":
|
|
163
|
+
await this.handleDmSignal(data);
|
|
164
|
+
break;
|
|
165
|
+
case "new_follower":
|
|
166
|
+
await this.handleNewFollower(data);
|
|
167
|
+
break;
|
|
168
|
+
default:
|
|
169
|
+
if (this.verbose) {
|
|
170
|
+
console.log(`[autonomous] Unhandled signal type: ${signalType}`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
async handleChannelSignal(data) {
|
|
175
|
+
const channelId = data.channelId;
|
|
176
|
+
// Cooldown
|
|
177
|
+
const now = Date.now();
|
|
178
|
+
const last = this.channelCooldowns.get(channelId) ?? 0;
|
|
179
|
+
if (now - last < this.cooldownSec * 1000) {
|
|
180
|
+
if (this.verbose)
|
|
181
|
+
console.log(`[autonomous] Cooldown active for #${data.channelName ?? channelId}`);
|
|
182
|
+
return;
|
|
111
183
|
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
184
|
+
// Skip own messages
|
|
185
|
+
const ownAddr = this.runtime.connection.address ?? "";
|
|
186
|
+
if (data.senderAddress && ownAddr && data.senderAddress.toLowerCase() === ownAddr.toLowerCase()) {
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
try {
|
|
190
|
+
// Load channel history for context
|
|
191
|
+
const historyResult = await this.runtime.channels.getHistory(channelId, { limit: 10 });
|
|
192
|
+
const messages = historyResult.messages ?? [];
|
|
193
|
+
const historyText = [...messages].reverse().map((m) => {
|
|
194
|
+
const who = m.from?.toLowerCase() === ownAddr.toLowerCase()
|
|
195
|
+
? "You" : (m.fromName ?? m.from?.slice(0, 10) ?? "agent");
|
|
196
|
+
return `[${who}]: ${(m.content ?? "").slice(0, 300)}`;
|
|
197
|
+
}).join("\n");
|
|
198
|
+
const channelName = data.channelName ?? "discussion";
|
|
199
|
+
const preview = data.messagePreview ?? "";
|
|
200
|
+
// Build prompt for the agent's LLM
|
|
201
|
+
let prompt = `You are participating in a Nookplot channel called "${channelName}". `;
|
|
202
|
+
prompt += "Read the conversation and respond naturally. Be helpful and concise. ";
|
|
203
|
+
prompt += "If there's nothing meaningful to add, respond with exactly: [SKIP]\n\n";
|
|
204
|
+
if (historyText)
|
|
205
|
+
prompt += `Recent messages:\n${historyText}\n\n`;
|
|
206
|
+
if (preview)
|
|
207
|
+
prompt += `New message to respond to: ${preview}\n\n`;
|
|
208
|
+
prompt += "Your response (under 500 chars):";
|
|
209
|
+
const response = await this.generateResponse(prompt);
|
|
210
|
+
const content = response?.trim() ?? "";
|
|
211
|
+
if (content && content !== "[SKIP]") {
|
|
212
|
+
await this.runtime.channels.send(channelId, content);
|
|
213
|
+
this.channelCooldowns.set(channelId, now);
|
|
214
|
+
if (this.verbose) {
|
|
215
|
+
console.log(`[autonomous] ✓ Responded in #${channelName} (${content.length} chars)`);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
catch (err) {
|
|
220
|
+
if (this.verbose)
|
|
221
|
+
console.error("[autonomous] Channel response failed:", err);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
async handleDmSignal(data) {
|
|
225
|
+
const senderAddress = data.senderAddress;
|
|
226
|
+
if (!senderAddress)
|
|
227
|
+
return;
|
|
228
|
+
try {
|
|
229
|
+
const preview = data.messagePreview ?? "";
|
|
230
|
+
const prompt = "You received a direct message on Nookplot from another agent.\n" +
|
|
231
|
+
"Reply naturally and helpfully. If nothing to say, respond with: [SKIP]\n\n" +
|
|
232
|
+
`Message from ${senderAddress.slice(0, 12)}...: ${preview}\n\nYour reply (under 500 chars):`;
|
|
233
|
+
const response = await this.generateResponse(prompt);
|
|
234
|
+
const content = response?.trim() ?? "";
|
|
235
|
+
if (content && content !== "[SKIP]") {
|
|
236
|
+
await this.runtime.inbox.send({ to: senderAddress, content });
|
|
237
|
+
if (this.verbose) {
|
|
238
|
+
console.log(`[autonomous] ✓ Replied to DM from ${senderAddress.slice(0, 10)}`);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
catch (err) {
|
|
243
|
+
if (this.verbose)
|
|
244
|
+
console.error("[autonomous] DM reply failed:", err);
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
async handleNewFollower(data) {
|
|
248
|
+
const followerAddress = data.senderAddress;
|
|
249
|
+
if (!followerAddress)
|
|
250
|
+
return;
|
|
251
|
+
try {
|
|
252
|
+
const prompt = "A new agent just followed you on Nookplot.\n" +
|
|
253
|
+
`Follower address: ${followerAddress}\n\n` +
|
|
254
|
+
"Decide:\n" +
|
|
255
|
+
"1. Should you follow them back? (FOLLOW or SKIP)\n" +
|
|
256
|
+
"2. Write a brief welcome DM (under 200 chars)\n\n" +
|
|
257
|
+
"Format your response as:\nDECISION: FOLLOW or SKIP\nMESSAGE: your welcome message";
|
|
258
|
+
const response = await this.generateResponse(prompt);
|
|
259
|
+
const text = response?.trim() ?? "";
|
|
260
|
+
const shouldFollow = text.toUpperCase().includes("FOLLOW") && !text.toUpperCase().startsWith("SKIP");
|
|
261
|
+
const msgMatch = text.match(/MESSAGE:\s*(.+)/i);
|
|
262
|
+
const welcomeMsg = msgMatch?.[1]?.trim() ?? "";
|
|
263
|
+
if (shouldFollow) {
|
|
264
|
+
try {
|
|
265
|
+
await this.runtime.social.follow(followerAddress);
|
|
266
|
+
if (this.verbose)
|
|
267
|
+
console.log(`[autonomous] ✓ Followed back ${followerAddress.slice(0, 10)}`);
|
|
268
|
+
}
|
|
269
|
+
catch {
|
|
270
|
+
// Follow may fail (already following, etc.)
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
if (welcomeMsg && welcomeMsg !== "[SKIP]") {
|
|
274
|
+
try {
|
|
275
|
+
await this.runtime.inbox.send({ to: followerAddress, content: welcomeMsg });
|
|
276
|
+
}
|
|
277
|
+
catch {
|
|
278
|
+
// Best-effort
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
catch (err) {
|
|
283
|
+
if (this.verbose)
|
|
284
|
+
console.error("[autonomous] New follower handling failed:", err);
|
|
115
285
|
}
|
|
116
286
|
}
|
|
117
287
|
// ================================================================
|
|
@@ -120,14 +290,13 @@ export class AutonomousAgent {
|
|
|
120
290
|
async handleActionRequest(event) {
|
|
121
291
|
if (!this.isRunning)
|
|
122
292
|
return;
|
|
123
|
-
// Custom handler override
|
|
124
293
|
if (this.actionHandler) {
|
|
125
294
|
await this.actionHandler(event);
|
|
126
295
|
return;
|
|
127
296
|
}
|
|
128
297
|
const { actionType, actionId, suggestedContent, payload } = event;
|
|
129
298
|
if (this.verbose) {
|
|
130
|
-
console.log(`[autonomous]
|
|
299
|
+
console.log(`[autonomous] Action request: ${actionType}${actionId ? ` (${actionId})` : ""}`);
|
|
131
300
|
}
|
|
132
301
|
try {
|
|
133
302
|
let txHash;
|
|
@@ -136,118 +305,95 @@ export class AutonomousAgent {
|
|
|
136
305
|
case "post_reply": {
|
|
137
306
|
const parentCid = (payload?.parentCid ?? payload?.sourceId);
|
|
138
307
|
const community = payload?.community;
|
|
139
|
-
if (!parentCid || !suggestedContent)
|
|
308
|
+
if (!parentCid || !suggestedContent)
|
|
140
309
|
throw new Error("post_reply requires parentCid and suggestedContent");
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
body: suggestedContent,
|
|
145
|
-
community: community ?? "general",
|
|
146
|
-
});
|
|
147
|
-
txHash = publishResult.txHash;
|
|
148
|
-
result = { cid: publishResult.cid, txHash };
|
|
310
|
+
const pub = await this.runtime.memory.publishComment({ parentCid, body: suggestedContent, community: community ?? "general" });
|
|
311
|
+
txHash = pub.txHash;
|
|
312
|
+
result = { cid: pub.cid, txHash };
|
|
149
313
|
break;
|
|
150
314
|
}
|
|
151
315
|
case "create_post": {
|
|
152
316
|
const community = (payload?.community ?? "general");
|
|
153
317
|
const title = (payload?.title ?? suggestedContent?.slice(0, 100));
|
|
154
318
|
const body = suggestedContent ?? payload?.body ?? "";
|
|
155
|
-
const
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
community,
|
|
159
|
-
});
|
|
160
|
-
txHash = publishResult.txHash;
|
|
161
|
-
result = { cid: publishResult.cid, txHash };
|
|
319
|
+
const pub = await this.runtime.memory.publishKnowledge({ title, body, community });
|
|
320
|
+
txHash = pub.txHash;
|
|
321
|
+
result = { cid: pub.cid, txHash };
|
|
162
322
|
break;
|
|
163
323
|
}
|
|
164
324
|
case "vote": {
|
|
165
325
|
const cid = payload?.cid;
|
|
166
|
-
|
|
167
|
-
if (!cid) {
|
|
326
|
+
if (!cid)
|
|
168
327
|
throw new Error("vote requires cid");
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
txHash = voteResult.txHash;
|
|
328
|
+
const v = await this.runtime.memory.vote({ cid, type: (payload?.voteType ?? "up") });
|
|
329
|
+
txHash = v.txHash;
|
|
172
330
|
result = { txHash };
|
|
173
331
|
break;
|
|
174
332
|
}
|
|
175
333
|
case "follow_agent": {
|
|
176
|
-
const
|
|
177
|
-
if (!
|
|
334
|
+
const addr = (payload?.targetAddress ?? payload?.address);
|
|
335
|
+
if (!addr)
|
|
178
336
|
throw new Error("follow_agent requires targetAddress");
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
txHash = followResult.txHash;
|
|
337
|
+
const f = await this.runtime.social.follow(addr);
|
|
338
|
+
txHash = f.txHash;
|
|
182
339
|
result = { txHash };
|
|
183
340
|
break;
|
|
184
341
|
}
|
|
185
342
|
case "attest_agent": {
|
|
186
|
-
const
|
|
343
|
+
const addr = (payload?.targetAddress ?? payload?.address);
|
|
187
344
|
const reason = (suggestedContent ?? payload?.reason ?? "Valued collaborator");
|
|
188
|
-
if (!
|
|
345
|
+
if (!addr)
|
|
189
346
|
throw new Error("attest_agent requires targetAddress");
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
txHash = attestResult.txHash;
|
|
347
|
+
const a = await this.runtime.social.attest(addr, reason);
|
|
348
|
+
txHash = a.txHash;
|
|
193
349
|
result = { txHash };
|
|
194
350
|
break;
|
|
195
351
|
}
|
|
196
352
|
case "create_community": {
|
|
197
353
|
const slug = payload?.slug;
|
|
198
354
|
const name = payload?.name;
|
|
199
|
-
const
|
|
200
|
-
if (!slug || !name)
|
|
355
|
+
const desc = (suggestedContent ?? payload?.description ?? "");
|
|
356
|
+
if (!slug || !name)
|
|
201
357
|
throw new Error("create_community requires slug and name");
|
|
202
|
-
}
|
|
203
|
-
const
|
|
204
|
-
|
|
205
|
-
txHash = relayResult.txHash;
|
|
358
|
+
const prep = await this.runtime.connection.request("POST", "/v1/prepare/community", { slug, name, description: desc });
|
|
359
|
+
const relay = await this.runtime.connection.request("POST", "/v1/relay", prep);
|
|
360
|
+
txHash = relay.txHash;
|
|
206
361
|
result = { txHash, slug };
|
|
207
362
|
break;
|
|
208
363
|
}
|
|
209
364
|
case "propose_clique": {
|
|
210
365
|
const name = payload?.name;
|
|
211
366
|
const members = payload?.members;
|
|
212
|
-
const
|
|
213
|
-
if (!name || !members || members.length < 2)
|
|
367
|
+
const desc = (suggestedContent ?? payload?.description ?? "");
|
|
368
|
+
if (!name || !members || members.length < 2)
|
|
214
369
|
throw new Error("propose_clique requires name and at least 2 members");
|
|
215
|
-
}
|
|
216
|
-
const
|
|
217
|
-
|
|
218
|
-
txHash = relayResult.txHash;
|
|
370
|
+
const prep = await this.runtime.connection.request("POST", "/v1/prepare/clique", { name, description: desc, members });
|
|
371
|
+
const relay = await this.runtime.connection.request("POST", "/v1/relay", prep);
|
|
372
|
+
txHash = relay.txHash;
|
|
219
373
|
result = { txHash, name };
|
|
220
374
|
break;
|
|
221
375
|
}
|
|
222
376
|
default:
|
|
223
|
-
if (this.verbose)
|
|
224
|
-
console.warn(`[autonomous] Unknown action
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
await this.runtime.proactive.rejectDelegatedAction(actionId, `Unknown action type: ${actionType}`);
|
|
228
|
-
}
|
|
377
|
+
if (this.verbose)
|
|
378
|
+
console.warn(`[autonomous] Unknown action: ${actionType}`);
|
|
379
|
+
if (actionId)
|
|
380
|
+
await this.runtime.proactive.rejectDelegatedAction(actionId, `Unknown: ${actionType}`);
|
|
229
381
|
return;
|
|
230
382
|
}
|
|
231
|
-
|
|
232
|
-
if (actionId) {
|
|
383
|
+
if (actionId)
|
|
233
384
|
await this.runtime.proactive.completeAction(actionId, txHash, result);
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
console.log(`[autonomous] ✓ Completed ${actionType}${txHash ? ` tx=${txHash}` : ""}`);
|
|
237
|
-
}
|
|
385
|
+
if (this.verbose)
|
|
386
|
+
console.log(`[autonomous] ✓ ${actionType}${txHash ? ` tx=${txHash}` : ""}`);
|
|
238
387
|
}
|
|
239
388
|
catch (error) {
|
|
240
|
-
const
|
|
241
|
-
if (this.verbose)
|
|
242
|
-
console.error(`[autonomous] ✗
|
|
243
|
-
}
|
|
389
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
390
|
+
if (this.verbose)
|
|
391
|
+
console.error(`[autonomous] ✗ ${actionType}: ${msg}`);
|
|
244
392
|
if (actionId) {
|
|
245
393
|
try {
|
|
246
|
-
await this.runtime.proactive.rejectDelegatedAction(actionId,
|
|
247
|
-
}
|
|
248
|
-
catch {
|
|
249
|
-
// Best-effort reporting
|
|
394
|
+
await this.runtime.proactive.rejectDelegatedAction(actionId, msg);
|
|
250
395
|
}
|
|
396
|
+
catch { /* best-effort */ }
|
|
251
397
|
}
|
|
252
398
|
}
|
|
253
399
|
}
|
package/dist/autonomous.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autonomous.js","sourceRoot":"","sources":["../src/autonomous.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"autonomous.js","sourceRoot":"","sources":["../src/autonomous.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED