MEAT — 死亡工程自动交易
数据截至 2026/11/3 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
dsh plugin --profile web add skchopper/meat状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
安装兼容性检查需源码安装仓库 package.json 标记 private,未发布到 npm,需从源码安装;安装清单取自 packages/automaton-trading/package.json
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/28 00:13:02
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
查看扫描证据(共 4 处,展示前 4 条)
- 发起网络请求packages/automaton-trading/client.js:2500
const response = await fetch(STATE_URL, { - 发起网络请求packages/automaton-trading/client.js:2574
const response = await fetch(CONTROL_URL, { - 执行外部命令来自配置/变量packages/automaton-trading/src/engine.js:283
const child = spawn(bin, [...execArgv, REAPER_ENTRY, '--state-dir', state.paths.stateDir], { - 发起网络请求packages/automaton-trading/src/research.js:847
const response = await fetch(`${baseUrl}/chat/completions`, {
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
给 Alpaca 做的多智能体模拟交易系统,按死亡率机制设计:六个角色各带止损线,外部 Reaper 负责收割,复制带变异,还有讣告和 14 道硬刹车。可安装的 DeepSeek Harness 插件,带侧边栏控制面板和 166 个测试。
README
由 DeepSeek 最新模型翻译生成展开完整文档(README 剩余 1 节)
MEAT — 死亡工程自动交易
基于 Alpaca 的多智能体交易系统,源自 Mortality Engineering(死亡工程)——理论见 《I Built an AI That Dies If It Stops Making Money》。以可安装的 DeepSeek Harness 插件形式交付:六个面向智能体的工具,运行时、十个工具、Web UI 仪表盘,以及一个模拟盘/实盘交易种群——不赚钱的死,赚钱的繁殖,每次死亡都留下记录,活着的会读。
不构成投资建议。默认模拟盘模式;实盘模式需要操作员执行三个独立动作才能开启。把它指向真金白银之前,先读 docs/ARCHITECTURE.md §9。
这里有什么
docs/ARCHITECTURE.md 理论 -> 交易映射,六个角色 + 止损线,死亡规则,刹车 docs/CONTRACTS.md 模块接口、数据形状、配置默认值 docs/RESEARCH.md 每个智能体隔离的每小时研究 sidecar(新闻分析师)契约 docs/CONTROL-PANEL.md 操作员控制面板:研究节奏、排行榜、奖励、计划 docs/RUNBOOK.md 操作指南:阶段、命令、应急流程 docs/VERIFICATION.md 验证了什么、如何复现、什么没验证 packages/automaton-trading/ 插件包(零运行时依赖) index.js Host 插件:10 个 automaton_* 工具 + GET /automaton/state + POST /automaton/control + 研究用的 Harness LLM 桥 client.js Web UI 仪表盘(侧边栏面板;Settings -> Plugins 标签页) src/ 引擎:treasurer、prospector、builder、executor、replicator、 external reaper、ledger、registry、brakes、journal、brokers、sim、 research(每个智能体隔离的新闻分析师) bin/automaton.mjs 操作员命令行(probe、tick、run、simulate、journal、brakes、stop) test/ node:test 测试套件(mortality、market、plugin、integration、security、 research) .env.example Alpaca 凭据模板(+ 可选的 DEEPSEEK_API_KEY,供命令行研究用) automaton-data/ 运行时状态(已 gitignore):registry、ledger、obituaries、traces、 research/<agentId>.jsonl 简报
快速开始
powershell
cd D:\CounterStikers
1. credentials (paper) — this build's .env is already populated for the supplied paper account Copy-Item .env.example .env # only if .env is missing notepad .env # ALPACA_API_KEY_ID=... ALPACA_API_SECRET_KEY=...
2. verify the account (no orders)
node packages/automaton-trading/bin/automaton.mjs probe
node packages/automaton-trading/bin/automaton.mjs config
node packages/automaton-trading/bin/automaton.mjs brakes
3. observe selection pressure without touching the broker
node packages/automaton-trading/bin/automaton.mjs simulate --cycles 200 --population 100 --seed 7
4. run the population (starts the external Reaper for paper/live)
node packages/automaton-trading/bin/automaton.mjs run
账户必须能承载种群规模:population.initial × endowmentUsd 必须落在券商权益 80% 的分配上限之内。本次构建附带 automaton.config.json,已按提供的 $2,000 模拟账户和要求的种群规模调好:30 个智能体 × $20 初始资金(共分配 $600,占 30%)、$1 死亡下限、20% 回撤死亡、$10 子代初始资金、每轮 40 个假设候选,让每个智能体都能交易自己的策略。如果账户或种群规模变化,编辑该文件以调整经济参数(保持 automaton-data/ 镜像同步——Harness Host 进程运行时使用不同的工作目录)。
种群已经播种:30 个第 0 代智能体,每个都有独特的确定性基因组(唯一的 symbol × strategy-family 组合、唯一参数)和编译好的策略规格。在 2026-10-24 的模拟快照中:30 存活 / 0 死亡 / 上限 60,每个 $20.00,对账 ok。
在 Harness 聊天中:automaton_status、automaton_tick、automaton_start、automaton_obituaries、automaton_brakes、automaton_simulate、automaton_config、automaton_agents、automaton_stop、automaton_emergency_stop。
控制面板:侧边栏入口(左侧边栏的 Automaton 图标),在中央栏打开完整仪表盘——没有浮动窗口;同一个仪表盘也是 Settings → Plugins → MEAT — Mortality Engineered Auto-Trading 中的一个页面。
仪表盘内部:顶部统计、Start / Stop / Emergency 控件、操作员 Reaper 行,以及所有智能体的可点击表格。智能体有易记的策略名称,而不是随机 id(Momentum AAPL、MeanRev NVDA、Breakout TSLA …;atm-xxxxxxxx id 保留为不可变键和次要标签)。每行同时显示继承的 Genome 策略和 Builder 实际编译的 Trading (spec),两者不同时显示 ≠。点击一行打开详情面板,包含当前持仓(symbol、数量、均价/最新价、市值、未实现盈亏、开仓时间)和历史活动(最新在前的成交,含方向、数量、价格、名义金额、已实现盈亏、时间),以及策略参数、角色成本和死亡信息。
插件已安装在此配置档中:@local/automaton-trading v1.0.0,已启用,应用状态 applied。通过 packages/automaton-trading/cordis.patch.yml 中的行重新配置(stateDir、envFile、mode、autoStart)。
一句话说清思路
在正常的智能体经济中,什么都不做是免费的,所以智能体会闲置。给智能体一个代谢——一笔初始资金,用来支付推理、市场数据和托管费用,以续航小时数而非余额的形式呈现——什么都不做就成了最快的死法。死亡条件存在于智能体之外(独立的 Reaper 进程负责清算并撰写讣告,grace = 0),所以无法被争辩掉。死亡是结构化数据;子代继承父代基因组,加上恰好一个突变,再加上讣告这些教训。任何角色都不能既做决策又执行操作:Treasurer 从不交易,Prospector 从不决定仓位大小,Builder 从不选择交易标的,Executor 从不查看账户净值,Replicator 从不计算盈余,Reaper 也无法从引擎内部触达。
交易与文章所述不同之处在于:智能体赚的是资本回报,不是服务收入,所以破产风险导致的死亡(回撤 / 单日亏损)会远早于纯粹的成本消耗触发。两者都已实现;模拟的 accelerated 预设让成本占主导,这样几分钟内就能观察到选择效果(每个结果都会标注这一点,它不是运行配置)。
安全
- 代码中强制执行 18 项硬性拒绝,在券商客户端看到订单之前就拦截:禁止转账 / 提现 / ACH / 电汇 / 加密货币 / 账户变更(这些方法根本不存在)、禁止非交易时段交易、标的 / 仓位 / 价差上限、单日订单上限、单日亏损与回撤死亡、实盘模式武装、需证明的交易、复制门禁、终止开关、分配上限、单向死亡——外加 v3.0 工具门禁 D2/D15–D18:卖空、期权结构(绝不允许裸卖空期权)、备兑看涨覆盖、限定风险价差、保证金债务和期权到期保护。
- 默认使用模拟盘。多工具交易(保证金、做空股票、期权、价差)是在硬性上限下的模拟盘能力扩展;实盘需要 mode=live 且 allowLive=true 且操作员设置 LIVE_ARMED 标记(automaton arm-live --confirm "ARM LIVE")。密钥只从 .env 读取;工具输出和状态路由都会脱敏。
- 每个智能体独立的隔离研究 sidecar:每个存活智能体都会收到每小时一次的 LLM 新闻简报,内容关于它自己的账本 / 标的(Alpaca News API),并配有私有日志;简报可以否决入场、缩小仓位或强制平仓,智能体从自己的账本支付费用($0.001/次简报)。通过 research.influence:false 进入影子模式。契约见:docs/RESEARCH.md。在 Harness 中,模型来自 Host 的 llm 服务;无头命令行运行使用 DEEPSEEK_API_KEY。
- 引擎对 Reaper 没有任何控制接口。automaton_stop 只停止循环;Reaper 会继续清算被判定死亡的智能体。
- 操作员控制面板(2026-10-29):侧边栏仪表盘可以设置研究节奏(1h/3h/6h/24h、开盘前、收盘后或两者都选——实时生效并持久化到 automaton-data/settings.json),配置排行榜与赢家奖励(日 / 周 / 月排名;默认第 1/2/3 名分别获得券商账户现金的 5/3/2%,可配置,受金库池 / 分配上限 / 每期上限约束,每期支付一次,形式为虚拟的金库→智能体账本转账——不存在券商转账),并查看更丰富的智能体详情页:策略说明、计划与下一步、触发条件、持仓止损 / 目标 / 持仓 K 线数、排名徽章、盈亏和完整交易表。契约见:docs/CONTROL-PANEL.md。
- 盘中快速配置档 + 两档执行节奏: 模拟盘中的智能体群体只在交易时段重新定价(engine.tradingHoursOnly:非交易时段,循环只做轻量的研究/状态检查,不再支付行情数据与代谢开销)。机器人按两档节奏运行:日内交易机器人约每 60 秒分析/交易一次,使用 1 分钟 IEX K 线;中长线机器人每小时一次,使用 1 小时 K 线(cadence.day / cadence.swing);波段持仓每个周期仍会做一次只出不进的风险检查。基于 K 线的持有规则按各档对应的时间框架计算。取舍与回退说明见 docs/RUNBOOK.md §8a–8c。
- 每个机器人独立的智能体大脑 + 策略分类: 每个机器人都是独立的智能体——它按自己的节奏(日内机器人约 5 分钟,波段机器人每小时)在私有上下文里审视自己的策略、账本、市场与研究,维护自己的复盘日志与策略,并写出决策交由 Executor 执行(trade/cautious/stand_down、仓位倍数、exit 压力)。群体按策略类型分类:Swing · 中长线(动量 / 均值回归,1 小时通道)与 Day · 日内(突破 / 跳空回补,1 分钟通道);创世时按约 50/50 混合,已有群体在首次启动时重新平衡一次。面板按类别分组展示智能体,并显示每个机器人的策略类型、预估交易间隔,以及它最新的智能体论点/计划。契约见 docs/BOT-AGENTS.md。
- 多标的模拟交易(v3.0): 机器人可以使用保证金、卖空、买入看涨/看跌期权、备兑看涨与限定风险的垂直价差,由机器人的智能体或其家族策略手册主动选择(期权权利金按净值的 35% / 每单 $30 计算规模,最多 2 张合约,DTE 2–14,剩 1 DTE 自动平仓;做空股票按整股且不超过空头上限;备兑看涨仅在持有 100 股以上时可用;绝不允许裸卖期权)。通过重新分配未分配的国库池,每个机器人被提高到 $50(没有增发现金;对账保持守恒),部分群体交易价格可负担的标的(F/SOFI/BAC/INTC),以便整股做空和低价期权合约可用。新增硬刹车 D2/D15–D18 拦截每一笔订单;死亡时先清算有符号的股票与期权持仓,再结算遗产。契约见 docs/INSTRUMENTS.md;运维见 docs/RUNBOOK.md §8d。
- 交易活动优化 + 诊断(v3.1): 修复了运行时配置陈旧漂移的问题——尽管有 v3 设置,群体仍被悄悄保持在 $20 机器人 / 5 分钟节奏 / 1 小时 K 线 / 无交易时段闸门(现在工作区配置为准,状态副本已迁移);明确告知机器人智能体多头股票可以碎股,并向它们展示美元规模预算与真实券商能力,因此 $500 一股不再触发 stand_down;重启时强制到期复盘,旧决策无法再阻塞入场一小时;策略只为机器人的自有 family+symbol 编译规格(移除无关假设回退,清空缓存的不匹配,每轮 60 个假设以覆盖全市场);券商能力门控会在纸面账户低于保证金最低要求时自动移除做空/保证金/备兑看涨/信用价差权限(当前账户约 $1,999.87,报告做空/保证金已禁用;期权级别 3,多头股票与多头/借记期权仍可用)。引擎头部现在显示 Last cycle 诊断(市场状态、执行、订单、错误、主要跳过原因)和受限账户警告。运维:docs/RUNBOOK.md §8e。
状态(本次构建)
- 10 个测试套件:mortality 70、market 43、plugin 43、independent integration 34、security 53、research 13、rankings 16、control 17、bot-agent 9 和 instruments 7 —— 305 个测试,305 通过,0 失败。直接运行每个文件,例如 node test/mortality.test.js;node --test 会触发沙箱 spawn EPERM。
- 控制面板引擎已在 test/control.test.js 中验证(研究节奏窗口 + 实时重配置 + 设置覆盖层持久化/回滚;策略计划/交易;日/周/月排行榜;周期边界奖励,含上限缩放、每周期一次和实时奖励重配置),并在 test/rankings.test.js 中验证(16 个测试)。宿主控制操作和每个仪表盘映射由插件套件覆盖(42 个测试)。实时 UI 验证在下次 Host 重启后进行。
- 研究 sidecar 已端到端验证:test/research.test.js(隔离、schema 钳制、畸形回复遏制、按智能体计费、每小时调度、过期失效)加上 scripts/research-smoke.mjs(10/10:真实 createAutomaton 组合、按智能体日志、节奏、执行器接收简报)。执行器侧由市场测试覆盖(否决/规模/退出/过期关闭)。实时 Harness-LLM 验证在下次应用重启后进行。
- 独立验证在两轮中发现 9 个真实缺陷(Reaper 击杀未持久化 → 可复活的僵尸;dry-run 刹车始终 NO_PROOF;无法触达的日亏损死亡;generation 真值性;过期计数器;亚分成本被舍入掉;sim 模式从不执行死亡;复制门控忽略回撤规则,从而让一次出生杀死父代;日 P&L 未持久化)。全部已修复并重新验证;scripts/verify-fixes.mjs 运行 18 项检查覆盖它们。
- 已为 $2,000 纸面账户播种 30 个智能体种群:30 × $20 = $600 已分配(30%),$1 死亡下限,20% 回撤死亡,$10 子代 endowment,上限 60。每个智能体有独特的确定性基因组(10 个 symbol × momentum/meanrev/breakout,随机化 lookback/entryZ/exitZ/stop/target/hold/size/session)和持久化的编译规格 —— 22 个不同的已验证 symbol×family 对,30 个不同的编译策略参数集。
- 侧边栏控制面板已上线:已通过 Client 槽位检查器验证 —— sidebar.panellist 有一个活跃的 automaton-trading 占位者(order 30),带 key 的 main 槽位上是 automaton-trading 仪表盘面板;旧的 shell.overlay 浮动入口已移除。仪表盘展示策略智能体名称、genome-vs-spec,以及按智能体下钻的持仓与历史活动(30 个唯一名称,已测试)。操作员控制走仅回环的 POST /automaton/control (start | stop | emergency-stop | reaper-stop,破坏性操作需要确认)。
- Reaper 孤儿进程事故(已加固):上一代应用遗留的 Reaper 每 30 s 保存一次过期的注册表快照(把智能体名称抹掉)。新的 Reaper 现在每次扫描前都会重新加载 registry.json/ledger.json,并写入心跳
(reaper.heartbeat.json,v2);engine.start() 拒绝复用没有匹配心跳的 Reaper;面板显示 Reaper 行,外加仅操作员可用的两步 Stop Reaper
(POST /automaton/control {"action":"reaper-stop","confirm":"STOP"},在 Harness Host 中实现)。引擎仍然没有提供停止 Reaper 的途径,也没有对应的智能体工具。
如果 Host 无法给那个进程发信号,在你自己的终端里运行一次: Get-CimInstance Win32_Process | Where-Object { $_.CommandLine -like 'reaper-process.js' } | ForEach-Object { Stop-Process -Id $_.ProcessId -Force }。
- 需要重启 Harness 才能加载新的 Host 路由(reaper-stop、REAPER_UNAVAILABLE 处理)和修复后的引擎模块。客户端部分(侧边栏 + 主仪表盘)已热加载,槽位处于活跃状态。重启后 Reaper 行可以停掉过期的孤儿进程,然后 Start 会拉起一个全新的 heartbeat-v2 Reaper:1) Stop Reaper(如果显示过期横幅),2) Start。
- 插件已安装并上线:注册了 10 个 automaton_* 工具(已验证能返回 30 个智能体的快照),仪表盘标签页已注册,kill-switch 路径端到端验证通过(armed → file → status → cleared)。
- 模拟种群(100 个智能体,200 个周期,seed 7,加速预设):17–25 个因回撤死亡,75–83 个存活;繁殖要求父代真正成长过,因此在测试套件中可确定性验证,在 paper/live 中只在真实盈余时触发。
- Paper 账户连通性已对 Alpaca 验证(2026-10-24):probe 读取到真实账户(equity $2,000,ACTIVE,市场休市)。完整的 30 智能体周期为 10 个 symbol 消耗了 1,172 根真实小时线,产出 22 个带日期证明的假设、30 个编译后的 spec 和 30 次执行,下了 0 个订单,券商独立报告 0 订单 / 0 持仓。
D3 墙用券商自己的时钟以 MARKET_CLOSED 拒绝(下次开盘周一 09:30 ET)。
- 外部 Reaper 已对 paper 账户验证:engine.start() 以分离方式拉起它(pid 存活),它扫描了真实账户(checked=2 killed=0),engine.stop() 按设计让它继续运行;随后以操作员身份将其停止。
- 论文核验又发现 3 个真实缺陷,现已修复:数据 API 在没有显式窗口时返回空 K 线,多标的请求会逐个标的翻页(broker 现在按标的请求有界窗口);D3 只检查工作日时间窗口,周六的信号也可能被提交(broker 时钟现已传入刹车链路);周末 IEX 点差过大,因此 paper 点差上限设为 100 bps。
- 需要重启 Harness 才能加载新的 Host 路由和修复后的引擎模块(插件的模块图有缓存);命令行和测试运行已使用修复后的代码。
- 仍未验证:实际 paper 成交和实盘交易。 整个构建期间市场休市,任何订单都无法合法成交;实盘模式从未启用。控制面板渲染只做了结构验证(活动槽位占用),未做视觉验证。
- paper 密钥在聊天中提供,只存在于被 gitignore 的 .env 里;它们不在包、配置档配置、工具输出或状态路由中。如果你认为聊天暴露有风险,请在 Alpaca 仪表盘轮换密钥。预览分享卡片长什么样 ↓
MEAT — 死亡工程自动交易
相关插件 · 对话 / 记忆
这是你的仓库?认领条目