MetaMessage 的簡單使用

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: MetaMessage(mm)是一款轻量级CLI工具,支持JSONC与二进制MetaMessage格式的编/解码,以及多语言(Go/Java/TS/Python等)结构体代码自动生成,高效便捷,开箱即用。

簡單寫下cli的使用

先下載:
截屏2026-05-07 20.32.40.png

MetaMessage
改個名,方便使用:

mv mm_0.1.8_darwin_arm64 mm

一個簡單的jsonc:

cat input.jsonc 
{
   
 "a":2,
}

序列化:

./mm -e -i input.jsonc -o output.mm
Encoding Mode, Input: input.jsonc, Output: output.mm

看下大小:

ll output.mm

-rw-r--r--  1 lizongying  staff  5  5月  7 20:27 output.mm

反序列化:

./mm -d -i output.mm 
Decoding Mode, Input: output.mm, Output:
{
   
 "a": 2,
}

生成golang的結構體和綁定後的數據:

./mm -g -i input.jsonc -l go
Generation Mode, Input: input.jsonc, Output: , Target Language: go
// Code generated by mm. DO NOT EDIT.

package main

type Obj struct {
   
    A int
}

var _ = Obj{
   
    A: 2,
}

幫助信息:

./mm
Error: A mode must be specified! Valid options: -encode / -decode / -generate
Usage: ./mm [OPTIONS]

Mode (mutually exclusive, choose one):
 -encode, -e Encode JSONC to MetaMessage format
 -decode, -d Decode MetaMessage to JSONC format
 -generate, -g Generate value code from JSONC

Common Options:
 -in, -i string  Input file path (empty = read from stdin)
 -out, -o string Output file path (empty = write to stdout)
 -force, -f  Overwrite output file if it exists (default: false)

Generate Options (only for -gen):
 -lang, -l string  Target language (default: , support: go, java, ts, kt, py, js, cs, rs, swift, php)

Examples:
 # Encode JSONC to MetaMessage (stdin -> stdout)
 ./mm -encode -in input.jsonc -out output.MetaMessage
 # Decode MetaMessage to JSONC (stdin -> stdout)
 ./mm -decode < input.MetaMessage > output.jsonc
 # Generate Go struct from JSONC
 ./mm -gen -lang go -in input.jsonc -out output.go
 # Generate Java struct from JSONC
 ./mm -gen -lang java -in input.jsonc -out output.java
 # Generate Kotlin struct from JSONC
 ./mm -gen -lang kt -in input.jsonc -out output.kt
 # Generate Python struct from JSONC
 ./mm -gen -lang py -in input.jsonc -out output.py
 # Generate JavaScript class from JSONC
 ./mm -gen -lang js -in input.jsonc -out output.js
 # Generate C# class from JSONC
 ./mm -gen -lang cs -in input.jsonc -out output.cs
 # Generate Rust struct from JSONC
 ./mm -gen -lang rs -in input.jsonc -out output.rs
 # Generate Swift struct from JSONC
 ./mm -gen -lang swift -in input.jsonc -out output.swift
 # Generate PHP class from JSONC
 ./mm -gen -lang php -in input.jsonc -out output.php
目录
相关文章
|
2月前
|
JSON JavaScript 前端开发
在TypeScript和JavaScript如何使用MetaMessage?
MetaMessage 是一种跨语言数据交换协议,支持 TypeScript/JavaScript(通过装饰器自动类型转换)、JSONC 文本与紧凑二进制 wire 格式,兼顾可读性、精度(如 bigint 表示 int64)与性能,旨在替代 JSON、Protobuf 等传统序列化方案。
243 125
|
2月前
|
人工智能 安全 开发工具
[理论篇-12]Multi-Agent(多智能体系统)—— 不是"AI 越多越好",而是"什么时候该让 AI 拆开干"
用最朴素的话讲清楚"多 Agent 系统"是什么、它解决了什么问题、为什么 2024 年大家狂吹它、2025 年又有人喊"千万别建多 Agent",到 2026 年才终于摸清门道。读完这一篇,不管你是开发者、产品经理、运营、还是只是听过别人提起"我们公司在搞多智能体系统"的旁观者,都能用自己的话把这件事讲清楚——它什么时候是金矿,什么时候是大坑,什么时候你只是被一个名词忽悠了。
320 1
|
2月前
|
人工智能 Rust 开发工具
Zed 1.0正式发布:VS Code慌了?
Zed 1.0正式发布!这款用Rust打造、GPU加速的“游戏引擎级”编辑器,告别Electron瓶颈,实现毫秒级响应;原生集成AI多Agent协作,支持DeltaDB字符级同步。它不是VS Code替代品,而是对编辑器本质的重新定义——性能即自由,人机协作为常态。(239字)
316 1
|
2月前
|
人工智能 决策智能
如果你也不想打一辈子工---那就看看我的转行经历
普通人转行AI产品经理的真实经历:从流水线到15K+高薪岗位。2026年就业承压,我靠AIPM认证(CAIE颁发)系统掌握AI产品全链路能力,零基础逆袭。厂哥厂姐、传统岗、应届生等皆可入局,大厂已将其列为招聘“隐形门槛”。选对方向,比埋头苦干更关键!
|
2月前
|
物联网 Java 应用服务中间件
Tomcat启动失败排查:AliOS 3系统下完整解决方案
背景:为什么 AliOS 3 上的 Tomcat 9 启不来 在企业网站部署、Java 后台系统、OpenCMS 内容管理平台中,Apache Tomcat 9 是最主流的 Web 容器。我们的标准部署流程是:在 **Alibaba Cloud Linux 3**(基于 OpenAnolis 内核,与 RHEL 8 / CentOS 8 生态兼容)上,把 Tomcat 9.0.89 解压到 `/opt/tomcat9`,通过 `systemd` 托管服务,并在 `setenv.sh` 中统一管理 JVM 参数(`-Xms1024m -Xmx3072m -XX:+UseG1GC -XX:M
|
10月前
|
人工智能 监控 安全
AI创业公司如何突破算力瓶颈,实现高效发展?
AI创业公司如何在算力竞争中突围?本文揭示真正决定生死的关键在于“用好”算力,而非单纯依赖算力规模。通过混合云调度、GPU虚拟化、边缘推理、跨云高速通道等技术手段,提升算力利用率,降低成本,同时保障数据合规与高效传输。结合垂直场景的深刻理解与技术调度能力,创业公司也能构建坚实护城河,实现快速发展。
|
存储 编解码 资源调度
鸿蒙相机开发实战:从设备适配到性能调优 —— 我的 ArkTS 录像功能落地手记(API 15)
本文分享鸿蒙相机开发经验,从环境准备到核心逻辑实现,涵盖权限声明、模块导入、Surface关联与分辨率匹配,再到录制控制及设备适配法则。通过实战案例解析,如旋转补偿、动态帧率调节和编解码优化,帮助开发者掌握功能实现、设备适配与体验设计三大要点,减少开发坑点。适合鸿蒙新手及希望深化硬件交互能力的工程师参考收藏。
698 2
|
C++ 计算机视觉
OpenCV-图像色温
OpenCV-图像色温
740 0
|
安全 Java Go
最新进展:Go arena 手动管理内存,鸽了!
最新进展:Go arena 手动管理内存,鸽了!
|
数据挖掘 Python
【Python】应用:pyproj地理计算库应用
这篇博客介绍了 `pyproj` 地理计算库的应用,涵盖地理坐标系统转换与地图投影。通过示例代码展示了如何进行经纬度与UTM坐标的互转,并利用 `pyproj.Geod` 计算两点间的距离及方位角,助力地理数据分析。 安装 `pyproj`:`pip install pyproj`。更多内容欢迎关注本博客,一起学习进步! Pancake 🍰 不迷路。😉*★,°*:.☆( ̄▽ ̄)/$:*.°★* 😏
729 1