From 20cb21f82ff90a48656b634a073b663fd1c41cb3 Mon Sep 17 00:00:00 2001 From: Neko Ayaka Date: Wed, 10 Sep 2025 21:18:30 +0800 Subject: [PATCH] fix: usLogg from @guiiai/logg error --- packages/server-runtime/src/index.ts | 6 ++--- .../src/bots/discord/commands/summon.ts | 4 +-- services/discord-bot/src/index.ts | 4 +-- services/discord-bot/src/pipelines/tts.ts | 6 ++--- .../discord-bot/src/utils/audio-monitor.ts | 4 +-- .../minecraft/src/agents/action/adapter.ts | 4 +-- services/minecraft/src/agents/action/tools.ts | 4 +-- services/minecraft/src/agents/chat/llm.ts | 4 +-- services/minecraft/src/agents/memory/index.ts | 4 +-- services/minecraft/src/composables/config.ts | 4 +-- services/minecraft/src/composables/neuri.ts | 4 +-- .../minecraft/src/libs/llm-agent/container.ts | 9 +++---- .../minecraft/src/libs/llm-agent/handler.ts | 4 +-- .../minecraft/src/libs/llm-agent/index.ts | 4 +-- .../src/libs/mineflayer/base-agent.ts | 9 ++++--- .../src/libs/mineflayer/components.ts | 4 +-- .../minecraft/src/libs/mineflayer/core.ts | 4 +-- services/minecraft/src/main.ts | 4 +-- services/minecraft/src/plugins/echo.ts | 4 +-- services/minecraft/src/plugins/follow.ts | 4 +-- services/minecraft/src/plugins/pathfinder.ts | 4 +-- services/minecraft/src/plugins/status.ts | 4 +-- .../src/skills/actions/collect-block.ts | 4 +-- .../minecraft/src/skills/actions/ensure.ts | 4 +-- .../src/skills/actions/gather-wood.ts | 4 +-- .../minecraft/src/skills/actions/inventory.ts | 4 +-- .../src/skills/actions/world-interactions.ts | 4 +-- services/minecraft/src/skills/base.ts | 4 +-- services/minecraft/src/skills/crafting.ts | 4 +-- services/minecraft/src/skills/movement.ts | 4 +-- services/minecraft/src/utils/logger.ts | 10 +++---- .../telegram/agent/actions/read-message.ts | 4 +-- .../telegram/agent/actions/send-message.ts | 6 ++--- .../telegram-bot/src/bots/telegram/index.ts | 6 ++--- services/telegram-bot/src/index.ts | 4 +-- services/telegram-bot/src/llm/actions.ts | 4 +-- .../telegram-bot/src/llm/animated-sticker.ts | 4 +-- services/telegram-bot/src/llm/sticker.ts | 4 +-- .../telegram-bot/src/models/chat-message.ts | 4 +-- services/twitter-services/src/utils/logger.ts | 26 ++++++++++--------- 40 files changed, 103 insertions(+), 103 deletions(-) diff --git a/packages/server-runtime/src/index.ts b/packages/server-runtime/src/index.ts index e359c7f9b..f54af95b9 100644 --- a/packages/server-runtime/src/index.ts +++ b/packages/server-runtime/src/index.ts @@ -4,7 +4,7 @@ import type { AuthenticatedPeer, Peer } from './types' import { env } from 'node:process' -import { Format, LogLevel, setGlobalFormat, setGlobalLogLevel, useLogger } from '@guiiai/logg' +import { Format, LogLevel, setGlobalFormat, setGlobalLogLevel, useLogg } from '@guiiai/logg' import { createApp, createRouter, defineWebSocketHandler } from 'h3' setGlobalFormat(Format.Pretty) @@ -25,8 +25,8 @@ function send(peer: Peer, event: WebSocketEvent> | strin } function main() { - const appLogger = useLogger('App').useGlobalConfig() - const websocketLogger = useLogger('WebSocket').useGlobalConfig() + const appLogger = useLogg('App').useGlobalConfig() + const websocketLogger = useLogg('WebSocket').useGlobalConfig() const app = createApp({ onError: error => appLogger.withError(error).error('an error occurred'), diff --git a/services/discord-bot/src/bots/discord/commands/summon.ts b/services/discord-bot/src/bots/discord/commands/summon.ts index 0237d724c..0230efa11 100644 --- a/services/discord-bot/src/bots/discord/commands/summon.ts +++ b/services/discord-bot/src/bots/discord/commands/summon.ts @@ -26,7 +26,7 @@ import { StreamType, VoiceConnectionStatus, } from '@discordjs/voice' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { DECODE_SAMPLE_RATE } from '../../../constants/audio' import { openaiTranscribe } from '../../../pipelines/tts' @@ -56,7 +56,7 @@ async function setSelfVoice(logger: Logg, me?: GuildMember | null) { // https://github.com/elizaOS/eliza/blob/develop/packages/client-discord/src/voice.ts export class VoiceManager extends EventEmitter { - private logger = useLogger('VoiceManager').useGlobalConfig() + private logger = useLogg('VoiceManager').useGlobalConfig() private processingVoice: boolean = false private transcriptionTimeout: NodeJS.Timeout | null = null private userStates: Map< diff --git a/services/discord-bot/src/index.ts b/services/discord-bot/src/index.ts index bccf84c81..67aba0fb9 100644 --- a/services/discord-bot/src/index.ts +++ b/services/discord-bot/src/index.ts @@ -1,6 +1,6 @@ import { env } from 'node:process' -import { Format, LogLevel, setGlobalFormat, setGlobalLogLevel, useLogger } from '@guiiai/logg' +import { Format, LogLevel, setGlobalFormat, setGlobalLogLevel, useLogg } from '@guiiai/logg' import { Client as AiriClient } from '@proj-airi/server-sdk' import { Client, Events, GatewayIntentBits } from 'discord.js' @@ -8,7 +8,7 @@ import { handlePing, registerCommands, VoiceManager } from './bots/discord/comma setGlobalFormat(Format.Pretty) setGlobalLogLevel(LogLevel.Log) -const log = useLogger('Bot').useGlobalConfig() +const log = useLogg('Bot').useGlobalConfig() // Create a new client instance async function main() { diff --git a/services/discord-bot/src/pipelines/tts.ts b/services/discord-bot/src/pipelines/tts.ts index a657b5aa3..1bb50be41 100644 --- a/services/discord-bot/src/pipelines/tts.ts +++ b/services/discord-bot/src/pipelines/tts.ts @@ -6,7 +6,7 @@ import { env } from 'node:process' import wavefile from 'wavefile' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { pipeline } from '@huggingface/transformers' import { toWav } from '@proj-airi/audio' import { createOpenAI } from '@xsai-ext/providers-cloud' @@ -46,7 +46,7 @@ export function textFromResult(result: Array<{ text: string }> | { text: string } export async function transcribe(pcmBuffer: Buffer) { - const log = useLogger('Memory:Transcribe').useGlobalConfig() + const log = useLogg('Memory:Transcribe').useGlobalConfig() const pcmConvertedWav = toWav(pcmBuffer.buffer, 48000, 2) log.withFields({ from: pcmBuffer.byteLength, to: pcmConvertedWav.byteLength }).log('Audio data received') @@ -71,7 +71,7 @@ export async function transcribe(pcmBuffer: Buffer) { } export async function openaiTranscribe(wavBuffer: Buffer) { - const log = useLogger('Remote:Transcribe').useGlobalConfig() + const log = useLogg('Remote:Transcribe').useGlobalConfig() log.log('Transcribing audio...') diff --git a/services/discord-bot/src/utils/audio-monitor.ts b/services/discord-bot/src/utils/audio-monitor.ts index 5ffcacf6e..8d52580e4 100644 --- a/services/discord-bot/src/utils/audio-monitor.ts +++ b/services/discord-bot/src/utils/audio-monitor.ts @@ -2,7 +2,7 @@ import type { Readable } from 'node:stream' import { Buffer } from 'node:buffer' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' // eliza/packages/client-discord/src/voice.ts at develop ยท elizaOS/eliza // https://github.com/elizaOS/eliza/blob/develop/packages/client-discord/src/voice.ts @@ -12,7 +12,7 @@ export class AudioMonitor { private maxSize: number private lastFlagged: number = -1 private ended: boolean = false - private logger = useLogger('AudioMonitor').useGlobalConfig() + private logger = useLogg('AudioMonitor').useGlobalConfig() constructor( readable: Readable, diff --git a/services/minecraft/src/agents/action/adapter.ts b/services/minecraft/src/agents/action/adapter.ts index 8f1ba9d2a..bd83b9122 100644 --- a/services/minecraft/src/agents/action/adapter.ts +++ b/services/minecraft/src/agents/action/adapter.ts @@ -8,11 +8,11 @@ import { agent } from 'neuri' import { system, user } from 'neuri/openai' import { BaseLLMHandler } from '../../libs/llm-agent/handler' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' import { actionsList } from './tools' export async function createActionNeuriAgent(mineflayer: Mineflayer): Promise { - const logger = useLoggerer() + const logger = useLogger() logger.log('Initializing action agent') let actionAgent = agent('action') diff --git a/services/minecraft/src/agents/action/tools.ts b/services/minecraft/src/agents/action/tools.ts index a6608ea8b..555e6f6d6 100644 --- a/services/minecraft/src/agents/action/tools.ts +++ b/services/minecraft/src/agents/action/tools.ts @@ -5,7 +5,7 @@ import { z } from 'zod' import { collectBlock } from '../../skills/actions/collect-block' import { discard, equip, putInChest, takeFromChest, viewChest } from '../../skills/actions/inventory' import { activateNearestBlock, placeBlock } from '../../skills/actions/world-interactions' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' import * as skills from '../../skills' import * as world from '../../skills/world' @@ -59,7 +59,7 @@ export const actionsList: Action[] = [ schema: z.object({}), perform: mineflayer => (): string => { const blocks = world.getNearbyBlockTypes(mineflayer) - useLoggerer().withFields({ blocks }).log('nearbyBlocks') + useLogger().withFields({ blocks }).log('nearbyBlocks') return pad(`NEARBY_BLOCKS${blocks.map((b: string) => `\n- ${b}`).join('') || ': none'}`) }, }, diff --git a/services/minecraft/src/agents/chat/llm.ts b/services/minecraft/src/agents/chat/llm.ts index 225c3e4a1..cd317284f 100644 --- a/services/minecraft/src/agents/chat/llm.ts +++ b/services/minecraft/src/agents/chat/llm.ts @@ -7,7 +7,7 @@ import { agent } from 'neuri' import { system, user } from 'neuri/openai' import { config as appConfig } from '../../composables/config' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' import { generateChatAgentPrompt } from './adapter' interface LLMChatConfig { @@ -30,7 +30,7 @@ export async function generateChatResponse( const systemPrompt = generateChatAgentPrompt() const chatHistory = formatChatHistory(history, config.maxContextLength ?? 10) const userPrompt = message - const logger = useLoggerer() + const logger = useLogger() const messages = [ system(systemPrompt), diff --git a/services/minecraft/src/agents/memory/index.ts b/services/minecraft/src/agents/memory/index.ts index ae72c8325..76ef75518 100644 --- a/services/minecraft/src/agents/memory/index.ts +++ b/services/minecraft/src/agents/memory/index.ts @@ -5,7 +5,7 @@ import type { AgentConfig, MemoryAgent } from '../../libs/mineflayer/base-agent' import type { Logger } from '../../utils/logger' import { Memory } from '../../libs/mineflayer/memory' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' export class MemoryAgentImpl implements MemoryAgent { public readonly type = 'memory' as const @@ -20,7 +20,7 @@ export class MemoryAgentImpl implements MemoryAgent { this.memory = new Map() this.initialized = false this.memoryInstance = new Memory() - this.logger = useLoggerer() + this.logger = useLogger() } async init(): Promise { diff --git a/services/minecraft/src/composables/config.ts b/services/minecraft/src/composables/config.ts index 7c91406e7..e391eaf1f 100644 --- a/services/minecraft/src/composables/config.ts +++ b/services/minecraft/src/composables/config.ts @@ -2,9 +2,9 @@ import type { BotOptions } from 'mineflayer' import { env } from 'node:process' -import { useLoggerer } from '../utils/logger' +import { useLogger } from '../utils/logger' -const logger = useLoggerer() +const logger = useLogger() // Configuration interfaces interface OpenAIConfig { diff --git a/services/minecraft/src/composables/neuri.ts b/services/minecraft/src/composables/neuri.ts index a7859cb58..a38d5963c 100644 --- a/services/minecraft/src/composables/neuri.ts +++ b/services/minecraft/src/composables/neuri.ts @@ -7,14 +7,14 @@ import { neuri } from 'neuri' import { createActionNeuriAgent } from '../agents/action/adapter' import { createChatNeuriAgent } from '../agents/chat/llm' import { createPlanningNeuriAgent } from '../agents/planning/adapter' -import { useLoggerer } from '../utils/logger' +import { useLogger } from '../utils/logger' import { config } from './config' let neuriAgent: Neuri | undefined const agents = new Set>() export async function createNeuriAgent(mineflayer: Mineflayer): Promise { - useLoggerer().log('Initializing neuri agent') + useLogger().log('Initializing neuri agent') let n = neuri() agents.add(createPlanningNeuriAgent()) diff --git a/services/minecraft/src/libs/llm-agent/container.ts b/services/minecraft/src/libs/llm-agent/container.ts index 57d07765f..d95d8509f 100644 --- a/services/minecraft/src/libs/llm-agent/container.ts +++ b/services/minecraft/src/libs/llm-agent/container.ts @@ -1,8 +1,7 @@ +import type { Logg } from '@guiiai/logg' import type { Neuri } from 'neuri' -import type { Logger } from '../../utils/logger' - -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { asClass, asFunction, createContainer, InjectionMode } from 'awilix' import { ActionAgentImpl } from '../../agents/action' @@ -10,7 +9,7 @@ import { ChatAgentImpl } from '../../agents/chat' import { PlanningAgentImpl } from '../../agents/planning' export interface ContainerServices { - logger: Logger + logger: Logg actionAgent: ActionAgentImpl planningAgent: PlanningAgentImpl chatAgent: ChatAgentImpl @@ -29,7 +28,7 @@ export function createAgentContainer(options: { // Register services container.register({ // Create independent logger for each agent - logger: asFunction(() => useLogger('agent').useGlobalConfig()).singleton(), + logger: asFunction(() => useLogg('agent').useGlobalConfig()).singleton(), // Register neuri client neuri: asFunction(() => options.neuri).singleton(), diff --git a/services/minecraft/src/libs/llm-agent/handler.ts b/services/minecraft/src/libs/llm-agent/handler.ts index 775bae9f3..f2871963b 100644 --- a/services/minecraft/src/libs/llm-agent/handler.ts +++ b/services/minecraft/src/libs/llm-agent/handler.ts @@ -7,13 +7,13 @@ import type { LLMConfig, LLMResponse } from './types' import { withRetry } from '@moeru/std' import { config } from '../../composables/config' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' export abstract class BaseLLMHandler { protected logger: Logger constructor(protected config: LLMConfig) { - this.logger = useLoggerer() + this.logger = useLogger() } protected async handleCompletion( diff --git a/services/minecraft/src/libs/llm-agent/index.ts b/services/minecraft/src/libs/llm-agent/index.ts index 226a86720..fc2ef25de 100644 --- a/services/minecraft/src/libs/llm-agent/index.ts +++ b/services/minecraft/src/libs/llm-agent/index.ts @@ -4,7 +4,7 @@ import type { LLMAgentOptions, MineflayerWithAgents } from './types' import { system } from 'neuri/openai' import { config } from '../../composables/config' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' import { ChatMessageHandler } from '../mineflayer' import { handleChatMessage } from './chat' import { createAgentContainer } from './container' @@ -14,7 +14,7 @@ import { handleVoiceInput } from './voice' export function LLMAgent(options: LLMAgentOptions): MineflayerPlugin { return { async created(bot) { - const logger = useLoggerer() + const logger = useLogger() // Create container and get required services const container = createAgentContainer({ diff --git a/services/minecraft/src/libs/mineflayer/base-agent.ts b/services/minecraft/src/libs/mineflayer/base-agent.ts index 90e5daaea..24bf9fccc 100644 --- a/services/minecraft/src/libs/mineflayer/base-agent.ts +++ b/services/minecraft/src/libs/mineflayer/base-agent.ts @@ -1,10 +1,11 @@ +import type { Logg } from '@guiiai/logg' + import type { PlanStep } from '../../agents/planning/adapter' -import type { Logger } from '../../utils/logger' import type { Action } from './action' import EventEmitter3 from 'eventemitter3' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' export type AgentType = 'action' | 'memory' | 'planning' | 'chat' @@ -61,7 +62,7 @@ export abstract class AbstractAgent extends EventEmitter3 implements BaseAgent { public readonly name: string protected initialized: boolean - protected logger: Logger + protected logger: Logg // protected actionManager: ReturnType // protected conversationStore: ReturnType @@ -71,7 +72,7 @@ export abstract class AbstractAgent extends EventEmitter3 implements BaseAgent { this.type = config.type this.name = `${this.type}-agent` this.initialized = false - this.logger = useLogger(this.name).useGlobalConfig() + this.logger = useLogg(this.name).useGlobalConfig() // Initialize managers // this.actionManager = useActionManager(this) diff --git a/services/minecraft/src/libs/mineflayer/components.ts b/services/minecraft/src/libs/mineflayer/components.ts index f32e0ddd5..a1d3a46d0 100644 --- a/services/minecraft/src/libs/mineflayer/components.ts +++ b/services/minecraft/src/libs/mineflayer/components.ts @@ -2,14 +2,14 @@ import type { Logg } from '@guiiai/logg' import type { Handler } from './types' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' export class Components { private components: Map = new Map() private logger: Logg constructor() { - this.logger = useLoggerer() + this.logger = useLogger() } register(componentName: string, component: Handler) { diff --git a/services/minecraft/src/libs/mineflayer/core.ts b/services/minecraft/src/libs/mineflayer/core.ts index 7a240a706..41b8dbd9d 100644 --- a/services/minecraft/src/libs/mineflayer/core.ts +++ b/services/minecraft/src/libs/mineflayer/core.ts @@ -8,7 +8,7 @@ import type { EventHandlers, EventsHandler } from './types' import EventEmitter from 'eventemitter3' import mineflayer from 'mineflayer' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { parseCommand } from './command' import { Components } from './components' @@ -45,7 +45,7 @@ export class Mineflayer extends EventEmitter { this.options = options this.bot = mineflayer.createBot(options.botConfig) this.username = options.botConfig.username - this.logger = useLogger(`Bot:${this.username}`).useGlobalConfig() + this.logger = useLogg(`Bot:${this.username}`).useGlobalConfig() this.on('interrupt', () => { this.logger.log('Interrupted') diff --git a/services/minecraft/src/main.ts b/services/minecraft/src/main.ts index c16908d59..0628d235b 100644 --- a/services/minecraft/src/main.ts +++ b/services/minecraft/src/main.ts @@ -14,7 +14,7 @@ import { config, initEnv } from './composables/config' import { createNeuriAgent } from './composables/neuri' import { LLMAgent } from './libs/llm-agent' import { wrapPlugin } from './libs/mineflayer' -import { initLogger, useLoggerer } from './utils/logger' +import { initLogger, useLogger } from './utils/logger' async function main() { initLogger() // todo: save logs to file @@ -49,6 +49,6 @@ async function main() { } main().catch((err: Error) => { - useLoggerer().errorWithError('Fatal error', err) + useLogger().errorWithError('Fatal error', err) exit(1) }) diff --git a/services/minecraft/src/plugins/echo.ts b/services/minecraft/src/plugins/echo.ts index 94b73a39b..76b8b4029 100644 --- a/services/minecraft/src/plugins/echo.ts +++ b/services/minecraft/src/plugins/echo.ts @@ -1,10 +1,10 @@ import type { MineflayerPlugin } from '../libs/mineflayer/plugin' import { ChatMessageHandler } from '../libs/mineflayer/message' -import { useLoggerer } from '../utils/logger' +import { useLogger } from '../utils/logger' export function Echo(): MineflayerPlugin { - const logger = useLoggerer() + const logger = useLogger() return { spawned(mineflayer) { diff --git a/services/minecraft/src/plugins/follow.ts b/services/minecraft/src/plugins/follow.ts index 456c2e239..8420a7dd0 100644 --- a/services/minecraft/src/plugins/follow.ts +++ b/services/minecraft/src/plugins/follow.ts @@ -2,10 +2,10 @@ import type { MineflayerPlugin } from '../libs/mineflayer/plugin' import pathfinderModel from 'mineflayer-pathfinder' -import { useLoggerer } from '../utils/logger' +import { useLogger } from '../utils/logger' export function FollowCommand(options?: { rangeGoal: number }): MineflayerPlugin { - const logger = useLoggerer() + const logger = useLogger() const { goals, Movements } = pathfinderModel return { diff --git a/services/minecraft/src/plugins/pathfinder.ts b/services/minecraft/src/plugins/pathfinder.ts index 07711245f..725d32c6c 100644 --- a/services/minecraft/src/plugins/pathfinder.ts +++ b/services/minecraft/src/plugins/pathfinder.ts @@ -3,14 +3,14 @@ import type { MineflayerPlugin } from '../libs/mineflayer/plugin' import pathfinderModel from 'mineflayer-pathfinder' -import { useLoggerer } from '../utils/logger' +import { useLogger } from '../utils/logger' const { goals, Movements } = pathfinderModel export function PathFinder(options?: { rangeGoal: number }): MineflayerPlugin { return { created(bot) { - const logger = useLoggerer() + const logger = useLogger() let defaultMove: any diff --git a/services/minecraft/src/plugins/status.ts b/services/minecraft/src/plugins/status.ts index c7735e494..4b9cfc995 100644 --- a/services/minecraft/src/plugins/status.ts +++ b/services/minecraft/src/plugins/status.ts @@ -1,11 +1,11 @@ import type { MineflayerPlugin } from '../libs/mineflayer/plugin' -import { useLoggerer } from '../utils/logger' +import { useLogger } from '../utils/logger' export function Status(): MineflayerPlugin { return { created(bot) { - const logger = useLoggerer() + const logger = useLogger() logger.log('Loading status component') bot.onCommand('status', () => { diff --git a/services/minecraft/src/skills/actions/collect-block.ts b/services/minecraft/src/skills/actions/collect-block.ts index 5fab10b66..8a764f62f 100644 --- a/services/minecraft/src/skills/actions/collect-block.ts +++ b/services/minecraft/src/skills/actions/collect-block.ts @@ -4,13 +4,13 @@ import type { Mineflayer } from '../../libs/mineflayer' import pathfinder from 'mineflayer-pathfinder' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' import { breakBlockAt } from '../blocks' import { getNearestBlocks } from '../world' import { ensurePickaxe } from './ensure' import { pickupNearbyItems } from './world-interactions' -const logger = useLoggerer() +const logger = useLogger() function isMessagable(err: unknown): err is { message: string } { return (err instanceof Error || (typeof err === 'object' && !!err && 'message' in err && typeof err.message === 'string')) diff --git a/services/minecraft/src/skills/actions/ensure.ts b/services/minecraft/src/skills/actions/ensure.ts index eda6c18d1..826372218 100644 --- a/services/minecraft/src/skills/actions/ensure.ts +++ b/services/minecraft/src/skills/actions/ensure.ts @@ -1,6 +1,6 @@ import type { Mineflayer } from '../../libs/mineflayer' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' import { getItemId } from '../../utils/mcdata' import { craftRecipe } from '../crafting' import { moveAway } from '../movement' @@ -11,7 +11,7 @@ import { getItemCount } from './inventory' // Constants for crafting and gathering const PLANKS_PER_LOG = 4 const STICKS_PER_PLANK = 2 -const logger = useLoggerer() +const logger = useLogger() // Helper function to ensure a crafting table export async function ensureCraftingTable(mineflayer: Mineflayer): Promise { diff --git a/services/minecraft/src/skills/actions/gather-wood.ts b/services/minecraft/src/skills/actions/gather-wood.ts index 27b41e9e0..c8edcf270 100644 --- a/services/minecraft/src/skills/actions/gather-wood.ts +++ b/services/minecraft/src/skills/actions/gather-wood.ts @@ -2,13 +2,13 @@ import type { Mineflayer } from '../../libs/mineflayer' import { sleep } from '@moeru/std' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' import { breakBlockAt } from '../blocks' import { goToPosition, moveAway } from '../movement' import { getNearestBlocks } from '../world' import { pickupNearbyItems } from './world-interactions' -const logger = useLoggerer() +const logger = useLogger() /** * Gather wood blocks nearby to collect logs. diff --git a/services/minecraft/src/skills/actions/inventory.ts b/services/minecraft/src/skills/actions/inventory.ts index 0df976302..424e6b115 100644 --- a/services/minecraft/src/skills/actions/inventory.ts +++ b/services/minecraft/src/skills/actions/inventory.ts @@ -2,11 +2,11 @@ import type { Item } from 'prismarine-item' import type { Mineflayer } from '../../libs/mineflayer' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' import { goToPlayer, goToPosition } from '../movement' import { getNearestBlock } from '../world' -const logger = useLoggerer() +const logger = useLogger() /** * Equip an item from the bot's inventory. diff --git a/services/minecraft/src/skills/actions/world-interactions.ts b/services/minecraft/src/skills/actions/world-interactions.ts index 9b8f808ea..c42524b76 100644 --- a/services/minecraft/src/skills/actions/world-interactions.ts +++ b/services/minecraft/src/skills/actions/world-interactions.ts @@ -8,11 +8,11 @@ import pathfinder from 'mineflayer-pathfinder' import { sleep } from '@moeru/std' import { Vec3 } from 'vec3' -import { useLoggerer } from '../../utils/logger' +import { useLogger } from '../../utils/logger' import { getNearestBlock, makeItem } from '../../utils/mcdata' import { goToPosition } from '../movement' -const logger = useLoggerer() +const logger = useLogger() export async function placeBlock( mineflayer: Mineflayer, diff --git a/services/minecraft/src/skills/base.ts b/services/minecraft/src/skills/base.ts index fb26be564..cda7ad75c 100644 --- a/services/minecraft/src/skills/base.ts +++ b/services/minecraft/src/skills/base.ts @@ -1,8 +1,8 @@ import type { Mineflayer } from '../libs/mineflayer' -import { useLoggerer } from '../utils/logger' +import { useLogger } from '../utils/logger' -const logger = useLoggerer() +const logger = useLogger() /** * Log a message to the context's output buffer diff --git a/services/minecraft/src/skills/crafting.ts b/services/minecraft/src/skills/crafting.ts index 34e1174a5..427f4a412 100644 --- a/services/minecraft/src/skills/crafting.ts +++ b/services/minecraft/src/skills/crafting.ts @@ -4,14 +4,14 @@ import type { Recipe } from 'prismarine-recipe' import type { Mineflayer } from '../libs/mineflayer' -import { useLoggerer } from '../utils/logger' +import { useLogger } from '../utils/logger' import { getItemId, getItemName } from '../utils/mcdata' import { ensureCraftingTable } from './actions/ensure' import { collectBlock, placeBlock } from './blocks' import { goToNearestBlock, goToPosition, moveAway } from './movement' import { getInventoryCounts, getNearestBlock, getNearestFreeSpace } from './world' -const logger = useLoggerer() +const logger = useLogger() /* Possible Scenarios: diff --git a/services/minecraft/src/skills/movement.ts b/services/minecraft/src/skills/movement.ts index 994ab9734..4586eed92 100644 --- a/services/minecraft/src/skills/movement.ts +++ b/services/minecraft/src/skills/movement.ts @@ -8,11 +8,11 @@ import { sleep } from '@moeru/std' import { randomInt } from 'es-toolkit' import { Vec3 } from 'vec3' -import { useLoggerer } from '../utils/logger' +import { useLogger } from '../utils/logger' import { log } from './base' import { getNearestBlock, getNearestEntityWhere } from './world' -const logger = useLoggerer() +const logger = useLogger() const { goals, Movements } = pathfinder export async function goToPosition( diff --git a/services/minecraft/src/utils/logger.ts b/services/minecraft/src/utils/logger.ts index 8a511fff3..038b1fc10 100644 --- a/services/minecraft/src/utils/logger.ts +++ b/services/minecraft/src/utils/logger.ts @@ -1,12 +1,10 @@ -import { Format, LogLevel, setGlobalFormat, setGlobalLogLevel, useLogger } from '@guiiai/logg' - -export type Logger = ReturnType +import { Format, LogLevel, setGlobalFormat, setGlobalLogLevel, useLogg } from '@guiiai/logg' export function initLogger() { setGlobalLogLevel(LogLevel.Debug) setGlobalFormat(Format.Pretty) - const logger = useLogger('logger').useGlobalConfig() + const logger = useLogg('logger').useGlobalConfig() logger.log('Logger initialized') } @@ -14,7 +12,7 @@ export function initLogger() { * Get logger instance with directory name and filename * @returns logger instance configured with "directoryName/filename" */ -export function useLoggerer() { +export function useLogger() { const stack = new Error('logger').stack const caller = stack?.split('\n')[2] @@ -23,5 +21,5 @@ export function useLoggerer() { const dirName = match?.[1] || 'unknown' const fileName = match?.[2] || 'unknown' - return useLogger(`${dirName}/${fileName}`).useGlobalConfig() + return useLogg(`${dirName}/${fileName}`).useGlobalConfig() } diff --git a/services/telegram-bot/src/bots/telegram/agent/actions/read-message.ts b/services/telegram-bot/src/bots/telegram/agent/actions/read-message.ts index 096eb21e7..13700b0f0 100644 --- a/services/telegram-bot/src/bots/telegram/agent/actions/read-message.ts +++ b/services/telegram-bot/src/bots/telegram/agent/actions/read-message.ts @@ -4,7 +4,7 @@ import type { BotContext, ReadUnreadMessagesAction } from '../../../../types' import { env } from 'node:process' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { withRetry } from '@moeru/std' import { trace } from '@opentelemetry/api' import { embed } from '@xsai/embed' @@ -25,7 +25,7 @@ export async function readMessage( break?: boolean result: string }> { - const logger = useLogger('readMessage').useGlobalConfig() + const logger = useLogg('readMessage').useGlobalConfig() const tracer = trace.getTracer('airi.telegram.bot') return await tracer.startActiveSpan('telegram.module.read_message', async (span) => { diff --git a/services/telegram-bot/src/bots/telegram/agent/actions/send-message.ts b/services/telegram-bot/src/bots/telegram/agent/actions/send-message.ts index ce13d4018..b5af46ed6 100644 --- a/services/telegram-bot/src/bots/telegram/agent/actions/send-message.ts +++ b/services/telegram-bot/src/bots/telegram/agent/actions/send-message.ts @@ -5,7 +5,7 @@ import type { BotContext, ChatContext } from '../../../../types' import { env } from 'node:process' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { sleep } from '@moeru/std' import { generateText } from '@xsai/generate-text' import { message } from '@xsai/utils-chat' @@ -18,7 +18,7 @@ import { messageSplit } from '../../../../prompts' import { cancellable } from '../../../../utils/promise' export function parseMayStructuredMessage(responseText: string) { - const logger = useLogger('parseMayStructuredMessage').useGlobalConfig() + const logger = useLogg('parseMayStructuredMessage').useGlobalConfig() // eslint-disable-next-line regexp/no-super-linear-backtracking, regexp/optimal-quantifier-concatenation const result = /^\{(("?)*.*\s*)*\}$/mu.exec(responseText) @@ -41,7 +41,7 @@ export async function sendMessage( groupId: string, abortController: AbortController, ) { - const logger = useLogger('imagineAnAction').useGlobalConfig() + const logger = useLogg('imagineAnAction').useGlobalConfig() const chat = (await listJoinedChats()).find((chat) => { return chat.chat_id === groupId diff --git a/services/telegram-bot/src/bots/telegram/index.ts b/services/telegram-bot/src/bots/telegram/index.ts index eee1b1665..19dc5350b 100644 --- a/services/telegram-bot/src/bots/telegram/index.ts +++ b/services/telegram-bot/src/bots/telegram/index.ts @@ -5,7 +5,7 @@ import type { Action, BotContext, ChatContext, ExtendedContext } from '../../typ import { env } from 'node:process' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { sleep } from '@moeru/std' import { message } from '@xsai/utils-chat' import { Bot } from 'grammy' @@ -460,7 +460,7 @@ function ensureChatContext(botCtx: BotContext, chatId: string): ChatContext { } export async function startTelegramBot() { - const log = useLogger('Bot').useGlobalConfig() + const log = useLogg('Bot').useGlobalConfig() const telegramBot = new Bot(env.TELEGRAM_BOT_TOKEN!) telegramBot.errorHandler = async err => log.withError(err).log('Error occurred') @@ -477,7 +477,7 @@ export async function startTelegramBot() { return } - const logger = useLogger('addStickerPack').useGlobalConfig() + const logger = useLogg('addStickerPack').useGlobalConfig() const repliedSticker = ctx.message.reply_to_message.sticker const stickerSet = await telegramBot.api.getStickerSet(repliedSticker.set_name) diff --git a/services/telegram-bot/src/index.ts b/services/telegram-bot/src/index.ts index c75ec500f..643d38538 100644 --- a/services/telegram-bot/src/index.ts +++ b/services/telegram-bot/src/index.ts @@ -1,6 +1,6 @@ import process, { env } from 'node:process' -import { Format, LogLevel, setGlobalFormat, setGlobalLogLevel, useLogger } from '@guiiai/logg' +import { Format, LogLevel, setGlobalFormat, setGlobalLogLevel, useLogg } from '@guiiai/logg' import { OTLPMetricExporter } from '@opentelemetry/exporter-metrics-otlp-proto' import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-proto' import { resourceFromAttributes } from '@opentelemetry/resources' @@ -42,7 +42,7 @@ async function main() { } process.on('unhandledRejection', (err) => { - const log = useLogger('UnhandledRejection').useGlobalConfig() + const log = useLogg('UnhandledRejection').useGlobalConfig() log .withError(err) .withField('cause', (err as any).cause) diff --git a/services/telegram-bot/src/llm/actions.ts b/services/telegram-bot/src/llm/actions.ts index d2482477c..bf8946ffd 100644 --- a/services/telegram-bot/src/llm/actions.ts +++ b/services/telegram-bot/src/llm/actions.ts @@ -6,7 +6,7 @@ import type { Action } from '../types' import { env } from 'node:process' -import { Format, useLogger } from '@guiiai/logg' +import { Format, useLogg } from '@guiiai/logg' import { trace } from '@opentelemetry/api' import { generateText } from '@xsai/generate-text' import { message } from '@xsai/utils-chat' @@ -25,7 +25,7 @@ export async function imagineAnAction( incomingMessages?: Message[] }, ): Promise { - const logger = useLogger('imagineAnAction').useGlobalConfig() + const logger = useLogg('imagineAnAction').useGlobalConfig() const tracer = trace.getTracer('airi.telegram.bot') return await tracer.startActiveSpan('telegram.module.generate_agent_action.generate', async (s) => { diff --git a/services/telegram-bot/src/llm/animated-sticker.ts b/services/telegram-bot/src/llm/animated-sticker.ts index 99a918e66..4e6ec0263 100644 --- a/services/telegram-bot/src/llm/animated-sticker.ts +++ b/services/telegram-bot/src/llm/animated-sticker.ts @@ -13,7 +13,7 @@ import ffmpegInstaller from '@ffmpeg-installer/ffmpeg' import ffmpeg from 'fluent-ffmpeg' import Sharp from 'sharp' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { generateText } from '@xsai/generate-text' import { message } from '@xsai/utils-chat' @@ -48,7 +48,7 @@ async function extractFrames(inputFilePath, outputDir, frameRate = 5) { } export async function interpretAnimatedSticker(bot: Bot, msg: Message, sticker: Sticker) { - const logger = useLogger('interpretAnimatedSticker') + const logger = useLogg('interpretAnimatedSticker') .useGlobalConfig() .withField('sticker_id', sticker.file_id) .withField('sticker_emoji', sticker.emoji) diff --git a/services/telegram-bot/src/llm/sticker.ts b/services/telegram-bot/src/llm/sticker.ts index cba79a061..a52859b48 100644 --- a/services/telegram-bot/src/llm/sticker.ts +++ b/services/telegram-bot/src/llm/sticker.ts @@ -7,7 +7,7 @@ import { env } from 'node:process' import Sharp from 'sharp' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { embed } from '@xsai/embed' import { generateText } from '@xsai/generate-text' import { message } from '@xsai/utils-chat' @@ -17,7 +17,7 @@ import { div, span } from '../prompts/utils' import { interpretAnimatedSticker } from './animated-sticker' export async function interpretSticker(bot: Bot, msg: Message, sticker: Sticker) { - const logger = useLogger('interpretSticker').useGlobalConfig() + const logger = useLogg('interpretSticker').useGlobalConfig() if (sticker.is_animated || sticker.is_video) { logger diff --git a/services/telegram-bot/src/models/chat-message.ts b/services/telegram-bot/src/models/chat-message.ts index 16213f960..2375ba072 100644 --- a/services/telegram-bot/src/models/chat-message.ts +++ b/services/telegram-bot/src/models/chat-message.ts @@ -4,7 +4,7 @@ import type { Message, UserFromGetMe } from 'grammy/types' import { env } from 'node:process' -import { useLogger } from '@guiiai/logg' +import { useLogg } from '@guiiai/logg' import { embed } from '@xsai/embed' import { and, cosineDistance, desc, eq, gt, inArray, lt, ne, notInArray, sql } from 'drizzle-orm' @@ -87,7 +87,7 @@ export async function findLastNMessages(chatId: string, n: number) { export async function findRelevantMessages(botId: string, chatId: string, unreadHistoryMessagesEmbedding: { embedding: number[] }[], excludeMessageIds: string[] = []) { const db = useDrizzle() const contextWindowSize = 5 // Number of messages to include before and after - const logger = useLogger('findRelevantMessages').useGlobalConfig().withField('chatId', chatId) + const logger = useLogg('findRelevantMessages').useGlobalConfig().withField('chatId', chatId) logger.withField('context_window_size', contextWindowSize).log('Querying relevant chat messages...') diff --git a/services/twitter-services/src/utils/logger.ts b/services/twitter-services/src/utils/logger.ts index 5b8d059ba..6531886c3 100644 --- a/services/twitter-services/src/utils/logger.ts +++ b/services/twitter-services/src/utils/logger.ts @@ -1,6 +1,8 @@ +import type { Logg } from '@guiiai/logg' + import path from 'node:path' -import { createLogg, Format, LogLevel, setGlobalFormat, setGlobalLogLevel } from '@guiiai/logg' +import { Format, LogLevel, setGlobalFormat, setGlobalLogLevel, useLogg } from '@guiiai/logg' import { useConfigManager } from '../config' @@ -44,9 +46,9 @@ export function initLogger(): void { * Get logger instance with directory name and filename * @returns logger instance configured with "directoryName/filename" */ -export function useLoggerer(name?: string): ReturnType { +export function useLogger(name?: string): Logg { if (name) - return createLogg(name).useGlobalConfig() + return useLogg(name).useGlobalConfig() const stack = new Error('logger').stack const caller = stack?.split('\n')[2] @@ -57,17 +59,17 @@ export function useLoggerer(name?: string): ReturnType { const fileName = match?.[2] || path.basename(__filename, '.ts') const lineNumber = match?.[3] || '?' - return createLogg(`${dirName}/${fileName}:${lineNumber}`).useGlobalConfig() + return useLogg(`${dirName}/${fileName}:${lineNumber}`).useGlobalConfig() } // Create pre-configured loggers for various services export const logger = { - auth: useLoggerer('auth-service'), - timeline: useLoggerer('timeline-service'), - browser: useLoggerer('browser-adapter'), - airi: useLoggerer('airi-adapter'), - mcp: useLoggerer('mcp-adapter'), - parser: useLoggerer('parser'), - main: useLoggerer('twitter-service'), - config: useLoggerer('config'), + auth: useLogger('auth-service'), + timeline: useLogger('timeline-service'), + browser: useLogger('browser-adapter'), + airi: useLogger('airi-adapter'), + mcp: useLogger('mcp-adapter'), + parser: useLogger('parser'), + main: useLogger('twitter-service'), + config: useLogger('config'), }