6.0 KiB
6.0 KiB
NAC Protocol Development Toolchain v1.0.0
NAC原生公链协议开发工具链
📦 包含内容
- nac-devtools - 协议开发工具链
- nac-protocols - 协议实现目录(已生成示例协议)
- memory - 记忆系统(包含所有技术决策和规范)
🚀 快速开始
1. 解压
tar -xzf NAC-DevTools-v1.0.0.tar.gz
cd NAC_Clean_Dev
2. 编译工具链(如需要)
cd nac-devtools
cargo build --release
3. 使用工具
# 查看帮助
./nac-devtools/target/release/nac-devtools --help
# 生成协议
./nac-devtools/target/release/nac-devtools generate protocol \
--id NAC-PROTOCOL-0008 \
--layer 0 \
--name GasProtocol
# 验证代码
./nac-devtools/target/release/nac-devtools validate file \
nac-protocols/src/layer0/randomness_protocol.rs
# 验证整个项目
./nac-devtools/target/release/nac-devtools validate project nac-protocols
# 构建所有协议
./nac-devtools/target/release/nac-devtools build all
# 打包系统
./nac-devtools/target/release/nac-devtools package \
--output NAC-Complete-System.tar.gz
📚 工具功能
1. 协议生成器 (generate)
- 单个协议生成:
generate protocol - 批量生成:
generate batch - 配置文件生成:
generate from-config
特性:
- ✅ 自动使用SHA3-384哈希算法
- ✅ 遵循GNACS 34位编码
- ✅ 强制NAC术语规范
- ✅ 自动生成测试文件
- ✅ 自动更新模块文件
- ✅ 记录到记忆系统
2. 代码验证器 (validate)
- 术语验证: 检查是否使用禁止的以太坊术语
- 架构验证: 检查是否遵循NAC架构原则
- 哈希验证: 确保使用SHA3-384而非Blake3
- 编码验证: 确保使用GNACS 34位编码
3. 测试框架 (test)
- 生成测试:
test generate - 运行测试:
test run - 性能测试:
test benchmark - 覆盖率报告:
test coverage
4. 文档生成器 (doc)
- API文档:
doc api - 协议文档:
doc protocol - 完整文档:
doc all
5. 构建系统 (build)
- 编译所有:
build all - 编译层级:
build layer - 清理缓存:
build clean
6. 打包发布 (package)
nac-devtools package --output NAC-System.tar.gz
📋 已生成的示例协议
- NAC-PROTOCOL-0007: RandomnessProtocol (Layer 0)
- 文件:
nac-protocols/src/layer0/randomness_protocol.rs - 测试:
nac-protocols/tests/layer0/randomness_protocol_test.rs
- 文件:
🎯 开发134个协议的工作流
阶段1:准备工作
# 1. 查看记忆系统中的规范
cat memory/principles/terminology.json
cat memory/principles/architecture.json
cat memory/decisions/D002_Hash_Algorithm_SHA3_384.json
# 2. 查看协议清单
cat memory/documents/NAC_Protocol_Stack_v4.0.json
阶段2:生成协议
# 方式1:逐个生成
nac-devtools generate protocol --id NAC-PROTOCOL-0001 --layer 0 --name ConsensusProtocol
nac-devtools generate protocol --id NAC-PROTOCOL-0002 --layer 0 --name NetworkProtocol
# 方式2:配置文件批量生成
# 创建 config/protocols.yaml
nac-devtools generate from-config --config config/protocols.yaml
阶段3:验证和测试
# 验证代码规范
nac-devtools validate project nac-protocols
# 运行测试
nac-devtools test run
# 性能测试
nac-devtools test benchmark --protocol NAC-PROTOCOL-0007
阶段4:构建和打包
# 编译所有协议
nac-devtools build all
# 打包完整系统
nac-devtools package --output NAC-Complete-System-$(date +%Y%m%d).tar.gz
🔧 配置文件示例
创建 config/protocols.yaml:
protocols:
- id: NAC-PROTOCOL-0001
layer: 0
name: ConsensusProtocol
priority: P0
description: CBPP共识协议实现
dependencies: []
estimated_hours: 8
- id: NAC-PROTOCOL-0002
layer: 0
name: NetworkProtocol
priority: P0
description: CSNP网络协议实现
dependencies:
- NAC-PROTOCOL-0001
estimated_hours: 10
📊 记忆系统
所有生成的协议都会自动记录到记忆系统:
# 查看已生成的协议
cat memory/generated_protocols.json
# 查看技术决策
ls memory/decisions/
# 查看原则规范
ls memory/principles/
⚠️ 重要规则
1. 哈希算法
- ✅ 必须使用: SHA3-384(48字节)
- ❌ 禁止使用: Blake3, SHA256, Keccak256
2. 术语规范
| ❌ 禁止(以太坊) | ✅ 使用(NAC) |
|---|---|
| token | asset |
| contract | certificate |
| balance | holdings |
| wallet | vault |
| mint | issue |
| burn | redeem |
3. 编码标准
- ✅ GNACS 34位编码
- ❌ 不使用24字节旧版本
📈 开发进度追踪
工具会自动记录开发进度到 memory/generated_protocols.json:
{
"generated_protocols": [
{
"id": "NAC-PROTOCOL-0007",
"layer": 0,
"name": "RandomnessProtocol",
"priority": "P0",
"generated_at": "2026-02-09T19:44:00Z"
}
],
"total_count": 1,
"last_updated": "2026-02-09T19:44:00Z"
}
🎓 最佳实践
-
工作前必须激活记忆系统
cat memory/principles/terminology.json cat memory/decisions/*.json -
每次生成后立即验证
nac-devtools generate protocol ... nac-devtools validate file <生成的文件> -
定期运行测试
nac-devtools test run -
定期打包备份
nac-devtools package --output backup-$(date +%Y%m%d).tar.gz
🔗 相关文档
- NAC协议栈v4.0:
memory/documents/NAC_Protocol_Stack_v4.0.json - 核心组件分析:
memory/documents/NAC_Core_Components_Analysis.json - 完整开发记录:
memory/decisions/complete_development_record.md
📞 技术支持
如有问题,请查阅记忆系统中的文档,或查看工具的详细帮助:
nac-devtools --help
nac-devtools generate --help
nac-devtools validate --help
NAC原生公链 - 不是任何公链的继承、衍生或扩展