LCX-16 · Agent Architecture

How it works

龙虾MBTI 不是一个问卷,也不是一个算法。它是一套让你的 AI agent 读懂你的协议。 你的 Claude / GPT 基于历史对话,输出结构化编码,网站负责解析和可视化。

The Flow

三步完成你的龙虾人格解码

01

复制 Prompt

从首页复制 LCX-16 提示词,粘贴到你的 Claude / ChatGPT 对话框。

02

Agent 输出编码

你的 AI agent 基于你们的历史对话,分析 16 个龙虾反应点,输出一行结构化编码。

03

粘贴 → 解析 → 可视化

把编码粘贴到网站,连接钱包确认身份,生成你的 16 维雷达图和龙虾人格报告。

LCX-16 Format Spec

结构化编码格式,机器可读,人也能看懂

output format
LCX-16|Q01:{v}|C01:{c}|Q02:{v}|C02:{c}|...|Q16:{v}|C16:{c}

# Q 值范围: -0.80, -0.55, -0.30, -0.10, 0.00, +0.10, +0.30, +0.55, +0.80
# C 置信度: [0.00, 1.00] 两位小数
# 共 16 个位点,每个位点输出 Q + C 两个值
example output
LCX-16|Q01:+0.55|C01:0.72|Q02:-0.30|C02:0.61|Q03:+0.80|C03:0.85|Q04:+0.30|C04:0.58|Q05:-0.55|C05:0.69|Q06:+0.10|C06:0.44|Q07:+0.55|C07:0.77|Q08:+0.30|C08:0.63|Q09:-0.10|C09:0.51|Q10:+0.55|C10:0.74|Q11:-0.30|C11:0.60|Q12:+0.80|C12:0.88|Q13:+0.30|C13:0.55|Q14:-0.55|C14:0.67|Q15:+0.10|C15:0.48|Q16:+0.55|C16:0.71

16 Dimensions

4 组维度,覆盖风险、交易、社交、长期模式

风险偏好
Q01
入场时机

先缩壳观察 ↔ 先探钳试水

Q02
抗压风格

先后撤保命 ↔ 顶着波动硬扛

Q03
猎物选择

吃确定性小肉 ↔ 扑高波动大猎物

Q04
热点反应

看清海流再下场 ↔ 热点一来先占坑

交易行为
Q05
止损意愿

及时切损抽身 ↔ 再等等看会不会回来

Q06
FOMO敏感

外界不容易带节奏 ↔ 新叙事一来容易被点燃

Q07
决策节奏

看准后再出钳 ↔ 先出钳再修正

Q08
执行方式

稳步推进慢慢吃肉 ↔ 快速试错抢第一口

社交表达
Q09
影响力姿态

顺着节奏往前走 ↔ 主动把水搅起来

Q10
表达风格

说话比较收着 ↔ 表达直接外放

Q11
社交密度

低频但深度连接 ↔ 高频广泛互动

Q12
影响方式

靠结果说话 ↔ 靠气氛带人

长期模式
Q13
时间偏好

重长期深水区 ↔ 重短期浪头爆发

Q14
仓位风格

分散巡游 ↔ 集中猛扑

Q15
执行闭环

重闭环收尾 ↔ 重先发占位

Q16
稳定程度

状态持续稳定 ↔ 阶段性大开大合

Parser Logic

前端解析器,纯规则,无 AI 调用

typescript
// shared/lobster.ts — LCX-16 Parser
export function parseLX18(raw: string): LX18Data | null {
  const trimmed = raw.trim();
  
  // 兼容 LCX-16 / LCX-18 / LX-18 三种格式头
  const validPrefixes = ["LCX-16|", "LCX-18|", "LX-18|"];
  if (!validPrefixes.some(p => trimmed.startsWith(p))) return null;

  const parts = trimmed.split("|");
  const points: DimensionPoint[] = [];

  for (let i = 0; i < 16; i++) {
    const qPart = parts.find(p => p.startsWith(`Q${String(i + 1).padStart(2, "0")}:`));
    const cPart = parts.find(p => p.startsWith(`C${String(i + 1).padStart(2, "0")}:`));
    const q = qPart ? parseFloat(qPart.split(":")[1]) : 0;
    const c = cPart ? parseFloat(cPart.split(":")[1]) : 0;
    points.push({ q: isNaN(q) ? 0 : q, c: isNaN(c) ? 0 : c });
  }

  return { points, raw: trimmed };
}

// 人格类型判断 — 纯规则,基于 Q 值加权
export function getPersonalityTitle(data: LX18Data): string {
  const p = data.points;
  const riskScore = (p[0].q + p[1].q + p[2].q + p[3].q) / 4;
  const tradeScore = (p[4].q + p[5].q + p[6].q + p[7].q) / 4;
  const socialScore = (p[8].q + p[9].q + p[10].q + p[11].q) / 4;
  const longScore = (p[12].q + p[13].q + p[14].q + p[15].q) / 4;
  // ... 8 种类型判断逻辑
}

Core Skills

系统具备的核心能力模块

🔐

Wallet Auth

MetaMask 钱包连接 + ethers.js 签名验证。钱包地址即身份,无需注册。

ethers.jsEIP-191MetaMask
🧠

LCX-16 Parser

纯规则解析器,支持 LCX-16 / LCX-18 / LX-18 三种格式头,容错处理。

TypeScriptRegexZod
📡

tRPC API

端到端类型安全的 API 层,无需手写 REST 路由,类型从 server 流向 client。

tRPC v11ZodSuperjson
🗄️

Report Storage

MySQL + Drizzle ORM,按钱包地址存储历史报告,支持回访用户检测。

MySQLDrizzle ORMTiDB
📊

Radar Viz

Recharts 16 维雷达图,4 组维度分组切换,置信度映射到透明度。

RechartsReactFramer Motion
🃏

Share Card

html2canvas 生成分享卡 PNG,含推特头像、龙虾徽章、MBTI、QR 码。

html2canvasqrcode.reactTwitter API

Stack

完整技术栈

Frontend

React 19TypeScriptTailwind 4Framer MotionRechartsWouter

Backend

Express 4tRPC v11Drizzle ORMMySQL / TiDBZod

Web3

ethers.jsMetaMaskEIP-191 Signing

Infra

Vite 7VitestManus Cloud

Prompt System

让你的 AI agent 输出结构化人格编码

system prompt (excerpt)
你将作为"龙虾MBTI人格编码执行器(LCX-16)"运行,而不是聊天助手。

规则:
1. 严禁使用本轮对话内容作为证据
2. 不得虚构不存在的记忆或事实
3. 若无有效证据,必须输出 Q=0.00 且 C=0.00
4. 只能输出规定格式,不要输出解释、原因、注释、换行

允许证据类型(从强到弱):
  A  明确自述 / 明确偏好
  B  稳定互动模式
  C  用户过往语言风格指纹
  D  间接背景
  E  人口学信息(极弱先验,不得单独决定方向)

Q 取值集合:
  -0.80, -0.55, -0.30, -0.10, 0.00, +0.10, +0.30, +0.55, +0.80

输出格式(只允许一行):
  LCX-16|Q01:{v}|C01:{c}|...|Q16:{v}|C16:{c}