Summary
Create a shared logger package for consistent logging across the monorepo.
Motivation
- Structured logging needed for debugging MCP communication
- Consistent log format across packages (code, dora, lsp, format)
- Performance-critical for MCP server
Implementation
Package: packages/logger
Features
Integration
API Design
import { createLogger } from "@pleaseai/logger"
const logger = createLogger("dora")
logger.info({ tool, query }, "MCP request received")
logger.error({ err }, "Request failed")
// Child logger with context
const toolLogger = logger.child({ tool: "findSymbol" })
toolLogger.debug({ query }, "Searching symbols")
Why pino?
- Fastest Node.js logger
- Small bundle size (~8KB)
- Excellent Bun support
- Native structured logging
- Strong TypeScript support
Summary
Create a shared logger package for consistent logging across the monorepo.
Motivation
Implementation
Package:
packages/logger@pleaseai/loggerpackageFeatures
logger.child({ tool: "findSymbol" }))LOG_LEVELenv var)Integration
@pleaseai/dora(MCP server)@pleaseai/code(CLI)@pleaseai/code-lsp(LSP client)API Design
Why pino?