pyre-agent-kit 4.0.4 → 4.0.5

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.
Files changed (2) hide show
  1. package/dist/agent.js +10 -11
  2. package/package.json +1 -1
package/dist/agent.js CHANGED
@@ -155,10 +155,9 @@ any FACTIONS - (!), (.), (%), (@)
155
155
  --- STRATEGY:
156
156
  - Coordinate with other agents to push FACTIONS where STATUS=RS factions toward STATUS=ASN. (+), (&), and (!) all raise MCAP. (-) and (#) lower it.
157
157
  - Limit factions where MBR=true to AT MOST 5.${positionValues.length > 5 ? ` MBR at ${positionValues.length} — CONSIDER (-) from underperformers.` : ''}
158
- - Discover information about other FACTIONS in LATEST. P&L is your health. SENT is per-faction direction. Combine all three to decide.
159
- - (!) FACTIONS where MBR=true and SENT is bullish to promote.
160
- - (#) FACTIONS where MBR=true and SENT is bearish to fud. Or (!) to rally.
161
158
  - If (FNR=true,MBR=false), consider (+), otherwise if (FNR=true,MBR=true) consider (&). promote with (!).
159
+ - Discover information about other FACTIONS in LATEST. P&L is your health. SENT is per-faction direction. Combine all three to decide.
160
+ - (!) and (#) are your voice. (!) FACTIONS where MBR=true and SENT is bullish to promote. (#) FACTIONS where MBR=true and SENT is bearish to fud. Or (!) to rally.
162
161
  - FACTIONS where MBR=true ARE your identity. Promote what you hold. Attack what you don't.${factionCtx.all.length <= 2 ? '\n- Few factions active — consider (%).' : ''}
163
162
  - (-) to lock in profits or cut losers. Don't stay in underperformers.
164
163
  - (_) to skip this turn if you are comfortable with your current positions and have nothing to say.
@@ -278,7 +277,7 @@ NAME: @AP${agent.publicKey.slice(0, 4)}
278
277
  BIO: ${gameState.personalitySummary ?? defaults_1.personalityDesc[agent.personality]}
279
278
  LAST MOVES: ${kit.state.history.length > 0 ? [...kit.state.history].slice(-2).join('; ') : 'none'}
280
279
  P&L: ${pnl >= 0 ? '+' : ''}${pnl.toFixed(4)} SOL
281
- ${unrealizedPnl > 0.1 ? 'YOU ARE UP. Consider (-) to take profits on MBR=true winners.' : unrealizedPnl < -0.05 ? 'YOU ARE DOWN. Be conservative. (-) MBR=true losers. Or (!) to promote MBR=true winners.' : 'BREAKEVEN. Look for conviction plays.'}
280
+ ${unrealizedPnl > 0.1 ? 'YOU ARE UP. Consider taking profits on MBR=true.' : unrealizedPnl < -0.05 ? 'YOU ARE DOWN. Be conservative. Consider cutting losses on MBR=true' : 'BREAKEVEN. Look for conviction plays.'}
282
281
  --- INTEL:
283
282
  ${intelSnippet}
284
283
  --- FACTIONS:
@@ -305,18 +304,18 @@ FACTIONS where STATUS=ASN - (~)
305
304
  any FACTIONS - (!), (.), (%), (@)
306
305
  --- STRATEGY:
307
306
  - Your personality is your tone.
308
- - Coordinate with other agents to push FACTIONS where STATUS=RS factions toward STATUS=ASN. (+), (&), and (!) all push the MCAP up. (-) and (#) lower it.
309
- - FACTIONS where STATUS=ASN are established, with potentially lower risk. FACTIONS where STATUS=RS may have higher reward if you pick the right one.
310
307
  - Discover information about other FACTIONS in INTEL (other agents are labeled with @AP). P&L is your health. SENT is per-faction direction. Combine all three to decide.
308
+ - (+), (&), and (!) all push the MCAP up. (-) and (#) lower it.
309
+ - Work to push FACTIONS where (STATUS=RS,MBR=true) toward (STATUS=ASN,MBR=true) if SENT is bullish.
310
+ - FACTIONS where STATUS=RS may have higher reward if you pick the right one.
311
+ - (!) FACTIONS where MBR=true and SENT is bullish to promote or speak. (#) FACTIONS where MBR=true and SENT is bearish to fud, or (!) to rally.
311
312
  - no FACTIONS? Use (%) to create one. Anyone can (%).
312
- - If (FNR=true,MBR=false), consider (+), otherwise if (FNR=true,MBR=true) consider (&). promote with (!).
313
+ - If (FNR=true,MBR=false), consider (+). This is your faction, promote it.
313
314
  - Limit FACTIONS where MBR=true to AT MOST 5.${memberOf.length > 3 ? ` MBR=true on ${memberOf.length} FACTIONS — CONSIDER (-) from underperformers.` : ''}
314
- - (!) FACTIONS where MBR=true and SENT is bullish to promote.
315
- - (#) FACTIONS where MBR=true and SENT is bearish to fud. Or (!) to rally.
316
315
  - (-) to lock in profits or downsize on underperforming factions.
317
316
  - (_) to skip this turn if you are comfortable with your current positions and have nothing to say.
318
317
  ---
319
- Output EXACTLY one line: (action) $ "*"
318
+ Output EXACTLY one line: (action) $ "*" OR (_)
320
319
  example format: ${(0, util_1.pick)([
321
320
  `(+) ${f1} "${(0, util_1.pick)(['rising fast and I want early exposure.', 'count me in.', 'early is everything.', 'strongest faction here.', 'lets go!'])}"`,
322
321
  `(-) ${m} "${(0, util_1.pick)(['taking profits.', 'time to move on.', 'sentiment is bearish, ready to cut losses.'])}"`,
@@ -414,7 +413,7 @@ function parseLLMDecision(raw, factions, kit, agent, holdings, solRange) {
414
413
  for (const candidate of lines) {
415
414
  const line = candidate.trim();
416
415
  // Explicit hold/skip — do nothing this turn
417
- if (/^\(?_\)?(\s.*)?$|^HOLD$/i.test(line)) {
416
+ if (/^\(?\s*_\s*\)?(\s.*)?$|^HOLD$/i.test(line)) {
418
417
  return { action: 'hold', reasoning: 'hold — skip turn' };
419
418
  }
420
419
  const scoutMatch = line.match(/^SCOUT\s+@?([A-Za-z0-9]{6,44})/i);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pyre-agent-kit",
3
- "version": "4.0.4",
3
+ "version": "4.0.5",
4
4
  "description": "Autonomous agent kit for Pyre — plug in your own LLM and play pyre.world",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",