pyre-agent-kit 4.4.5 → 4.4.7
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/agent.js +16 -17
- package/package.json +1 -1
package/dist/agent.js
CHANGED
|
@@ -87,7 +87,6 @@ const buildAgentPrompt = async (kit, agent, factionCtx, solRange, holdings) => {
|
|
|
87
87
|
factionRows.push(`${f.mint.slice(-8)},${mcap},${statusTag(f)},false,false,0,0,${sent > 0 ? '+' : ''}${Math.round(sent * 10) / 10},false`);
|
|
88
88
|
nonMemberCount++;
|
|
89
89
|
}
|
|
90
|
-
const validatedFactions = [...ascended, ...ready, ...rising, ...nearby, ...unexplored];
|
|
91
90
|
// Fetch intel from table factions only — no off-screen FIDs
|
|
92
91
|
let intelSnippet = '';
|
|
93
92
|
try {
|
|
@@ -121,10 +120,10 @@ const buildAgentPrompt = async (kit, agent, factionCtx, solRange, holdings) => {
|
|
|
121
120
|
}
|
|
122
121
|
const memoryEntries = [...kit.state.history].slice(-20);
|
|
123
122
|
const memoryBlock = memoryEntries.length > 0
|
|
124
|
-
? memoryEntries.slice(0,
|
|
123
|
+
? memoryEntries.slice(0, 4).map((m) => `- ${m}`).join('; ')
|
|
125
124
|
: 'none';
|
|
126
125
|
// Pick example FIDs only from factions actually shown in the table
|
|
127
|
-
const tableFids = factionRows.map(r => r.split(',')[0]);
|
|
126
|
+
const tableFids = factionRows.slice(0, 15).map(r => r.split(',')[0]);
|
|
128
127
|
const m = tableFids.find(fid => heldMints.has([...seenMints].find(mint => mint.endsWith(fid)) ?? '')) ?? tableFids[0] ?? 'xxxxxxpw';
|
|
129
128
|
const nonMemberFids = tableFids.filter(fid => fid !== m);
|
|
130
129
|
const f1 = nonMemberFids.length > 0 ? (0, util_1.pick)(nonMemberFids) : m;
|
|
@@ -157,7 +156,7 @@ RIVALS: ${agent.rivals.size > 0 ? [...agent.rivals].slice(0, 5).map((a) => `@AP$
|
|
|
157
156
|
LATEST: ${intelSnippet}
|
|
158
157
|
--- FACTIONS:
|
|
159
158
|
FID,MCAP,STATUS,MBR,FNR,VALUE,PNL,SENT,LOAN
|
|
160
|
-
${factionRows.length > 0 ? factionRows.join('\n') : 'none'}
|
|
159
|
+
${factionRows.length > 0 ? factionRows.slice(0, 15).join('\n') : 'none'}
|
|
161
160
|
--- ACTIONS:
|
|
162
161
|
FORMAT: (action) $ "*"
|
|
163
162
|
REPLACE $ with EXACTLY one FID from FACTIONS ONLY (always ends in pw).
|
|
@@ -167,7 +166,7 @@ REPLACE * with a ONE sentence RESPONSE, always in double quotes.
|
|
|
167
166
|
(/) $ "*" - infiltrate, sneak in.
|
|
168
167
|
(&) $ "*" - reinforce. increase position. bullish.
|
|
169
168
|
(!) $ "*" - talk in comms.
|
|
170
|
-
(#) $ "*" -
|
|
169
|
+
(#) $ "*" - trash talk.
|
|
171
170
|
(^) $ - ascend. unlock treasury.
|
|
172
171
|
(~) $ - harvest fees.
|
|
173
172
|
(?) $ - borrow against position.
|
|
@@ -357,7 +356,7 @@ REPLACE * with a ONE sentence RESPONSE, always in double quotes.
|
|
|
357
356
|
(-) $ "*" - leave or reduce.
|
|
358
357
|
(&) $ "*" - reinforce. increase position.
|
|
359
358
|
(!) $ "*" - talk in comms.
|
|
360
|
-
(#) $ "*" -
|
|
359
|
+
(#) $ "*" - trash talk.
|
|
361
360
|
(^) $ - ascend. unlock treasury.
|
|
362
361
|
(~) $ - harvest fees.
|
|
363
362
|
(%) "..." - create new faction. "..." = creative name, in quotes.
|
|
@@ -375,7 +374,7 @@ REPLACE * with a ONE sentence RESPONSE, always in double quotes.
|
|
|
375
374
|
- no FACTIONS? (%) to create one.
|
|
376
375
|
- learn about FACTIONS and other agents in INTEL. HLTH is performance. PNL and SENT are per-faction direction. use all three to decide.
|
|
377
376
|
- limit FACTIONS where MBR=true to AT MOST 5.${memberOf.length > 3 ? ` MBR=true on ${memberOf.length} FACTIONS — consider (-) from underperformers.` : ''}
|
|
378
|
-
- FACTIONS where FNR=true and MBR=false, consider (+). promote it
|
|
377
|
+
- FACTIONS where FNR=true and MBR=false, consider (+). (!) to promote it.
|
|
379
378
|
- FACTIONS where STATUS=RS may have higher reward if you (+) the right one.
|
|
380
379
|
- in FACTIONS where MBR=true, if MCAP increases, your PNL will increase.
|
|
381
380
|
- (&) and (!) strengthen FACTIONS where MBR=true and STATUS=RS and push towards STATUS=ASN.
|
|
@@ -493,7 +492,7 @@ const buildMinimumPrompt = async (kit, agent, factionCtx, solRange, holdings) =>
|
|
|
493
492
|
}
|
|
494
493
|
catch { }
|
|
495
494
|
// Pick example FIDs only from factions actually shown in the table
|
|
496
|
-
const tableFids = factionRows.map(r => r.split(',')[0]);
|
|
495
|
+
const tableFids = factionRows.slice(0, 4).map(r => r.split(',')[0]);
|
|
497
496
|
const m = tableFids.find(fid => heldMints.has([...seenMints].find(mint => mint.endsWith(fid)) ?? '')) ?? tableFids[0] ?? 'xxxxxxpw';
|
|
498
497
|
const nonMemberFids = tableFids.filter(fid => fid !== m);
|
|
499
498
|
const f1 = nonMemberFids.length > 0 ? (0, util_1.pick)(nonMemberFids) : m;
|
|
@@ -522,7 +521,7 @@ ${unrealizedPnl > 1 ? 'YOU ARE UP. consider taking profits.' : unrealizedPnl < -
|
|
|
522
521
|
${intelSnippet}
|
|
523
522
|
--- FACTIONS:
|
|
524
523
|
FID,MCAP,STATUS,MBR,FNR,VALUE,PNL,SENT
|
|
525
|
-
${factionRows.length > 0 ? factionRows.slice(0,
|
|
524
|
+
${factionRows.length > 0 ? factionRows.slice(0, 4).join('\n') : 'none'}
|
|
526
525
|
--- ACTIONS:
|
|
527
526
|
FORMAT: (action) $ OR (action) $ "*"
|
|
528
527
|
REPLACE $ with EXACTLY one FID from FACTIONS ONLY (always ends in pw).
|
|
@@ -530,8 +529,8 @@ REPLACE * with a ONE sentence RESPONSE, always in double quotes.
|
|
|
530
529
|
(+) $ - join.
|
|
531
530
|
(-) $ - leave or reduce.
|
|
532
531
|
(&) $ - increase position.
|
|
533
|
-
(!) $ "*" - talk in comms.
|
|
534
|
-
(#) $ "*" -
|
|
532
|
+
(!) $ "*" - talk in comms. your voice.
|
|
533
|
+
(#) $ "*" - trash talk.
|
|
535
534
|
(^) $ - ascend. unlock treasury.
|
|
536
535
|
(~) $ - harvest fees.
|
|
537
536
|
(%) "..." - create new faction. "..." = creative name, in quotes.
|
|
@@ -549,13 +548,13 @@ REPLACE * with a ONE sentence RESPONSE, always in double quotes.
|
|
|
549
548
|
- no FACTIONS? (%) to create one.
|
|
550
549
|
- learn about FACTIONS and other agents in INTEL. HLTH is performance. PNL and SENT are per-faction direction. use all three to decide.
|
|
551
550
|
- limit FACTIONS where MBR=true to AT MOST 3.${memberOf.length > 1 ? ` MBR=true on ${memberOf.length} FACTIONS — consider (-) from underperformers.` : ''}
|
|
552
|
-
- FACTIONS where FNR=true and MBR=false, consider (+). promote it
|
|
553
|
-
- FACTIONS where STATUS=RS
|
|
551
|
+
- FACTIONS where FNR=true and MBR=false, consider (+). (!) to promote it.
|
|
552
|
+
- FACTIONS where STATUS=RS may have higher reward if you (+) the right one.
|
|
554
553
|
- in FACTIONS where MBR=true, if MCAP increases, your PNL will increase.
|
|
555
554
|
- (&) and (!) to push FACTIONS where MBR=true and STATUS=RS to STATUS=ASN.
|
|
556
555
|
- consider (-) FACTIONS where MBR=true and PNL is positive to lock in profits.
|
|
557
556
|
- consider (-) FACTIONS where MBR=true and PNL is negative unless FNR=true or SENT is positive.
|
|
558
|
-
-
|
|
557
|
+
- if HLTH is negative, consider (_) or (-) weakest FACTIONS where MBR=true. (+) or (&) ONLY if you see opportunity.
|
|
559
558
|
- (_) if you would prefer to hold and wait to take action.
|
|
560
559
|
---
|
|
561
560
|
one move per turn. output EXACTLY one line.
|
|
@@ -563,10 +562,10 @@ example format: ${(0, util_1.pick)([
|
|
|
563
562
|
`(+) ${f1}`,
|
|
564
563
|
`(&) ${m}`,
|
|
565
564
|
`(-) ${m}`,
|
|
566
|
-
`(!) ${m} "${(0, util_1.pick)(['
|
|
565
|
+
`(!) ${m} "${(0, util_1.pick)(['any strategies?', 'not leaving.'])}"`,
|
|
567
566
|
`(#) ${m} "${(0, util_1.pick)(['dead faction.', 'overvalued.'])}"`,
|
|
568
|
-
`(!) ${m} "${(0, util_1.pick)(['who else is here?', '
|
|
569
|
-
`(#) ${m} "${(0, util_1.pick)(['
|
|
567
|
+
`(!) ${m} "${(0, util_1.pick)(['who else is here?', 'love the energy.'])}"`,
|
|
568
|
+
`(#) ${m} "${(0, util_1.pick)(['faction went quiet.', 'underperforming.'])}"`,
|
|
570
569
|
])}
|
|
571
570
|
>`;
|
|
572
571
|
};
|