Skip to content

ID 生成器

提供唯一 ID 生成函数。

typescript
import { generateId, generateIdWithPrefix, generateShortId } from '@multi-agent/agent-kit'

generateId

生成唯一 ID,格式:{timestamp}_{random}_{counter}

typescript
const id = generateId()
// "1736933445123_abc123_0001"

特点:

  • 时间戳:毫秒级,支持按时间排序
  • 随机数:7 位随机字符串,减少碰撞
  • 计数器:4 位递增计数,同一毫秒内保证唯一

generateIdWithPrefix

生成带前缀的 ID:

typescript
const traceId = generateIdWithPrefix('trace')
// "trace_1736933445123_abc123_0001"

const taskId = generateIdWithPrefix('task')
// "task_1736933445123_def456_0002"

const msgId = generateIdWithPrefix('msg')
// "msg_1736933445123_ghi789_0003"

常用前缀:

  • trace - 链路追踪 ID
  • task - 任务 ID
  • msg - 消息 ID
  • session - 会话 ID

generateShortId

生成 9 位短 ID(无时间戳和计数器):

typescript
const shortId = generateShortId()
// "a1b2c3d4e"

适用场景:

  • 临时标识
  • URL 友好的短链接
  • 不需要排序的场景

MIT Licensed