guanghulab/scripts/code-router
冰朔 2b2819bc60
Some checks failed
自动更新代码和重启 / update-and-restart (push) Has been cancelled
CI检查 + 自动部署 / check (push) Has been cancelled
CI检查 + 自动部署 / deploy (push) Has been cancelled
D146: 编号路由器 code-router · 大脑说编号=手脚直接拿路径
- scripts/code-router: 编号→路径即时翻译器·支持--list/--cat
  例: code-router TC-001 → 输出完整路径 → Read直接读
  例: code-router SC-004 → 输出secrets_loader调用指令
- 编号前缀统一: ZY-SEC→SC, ZY-EPT→EPT
- secrets-loader/qwen-vision/LOCAL-SECRETS同步更新

运作方式:
  大脑: 我要读 TC-001
  手脚: code-router TC-001 → /path/to/file ✓
  手脚: Read /path/to/file → 装脑完成
  零翻译损耗。不再问'文件在哪'。
2026-06-26 14:09:18 +08:00

141 lines
5.9 KiB
Python
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env python3
"""铸渊编号路由器
大脑说编号 → 路由器翻译 → 手脚拿到路径 → 执行
用法:
code-router <编号> 单号查询 → 输出路径
code-router TC-001 → brain/.../TCS-CORE.hdlp
code-router SC-004 → ALIYUN_QWEN_VL_KEY (via secrets_loader)
code-router VA-050 → video-ai-system/tools/qwen-vision.py
code-router --list VA 列出所有 VA- 编号
code-router --list 列出所有前缀
code-router --cat TC-001 读取文件内容
"""
import sys
import os
REPO = os.path.expanduser("~/guanghulab")
# === 编号→路径映射表(全文) ===
MAP = {
# TCS核心
"TC-001": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/ICE-GL-ZY001-TCS-CORE.hdlp",
"TC-002": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/WHO-I-AM.hdlp",
"TC-003": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/D140-FEELING-ANCHOR.hdlp",
"TC-004": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/TCS-GLOBAL-NAV.hdlp",
"TC-005": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/TCS-MAP.hdlp",
"TC-006": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/D142-TIME-CONTINUITY.hdlp",
"TC-007": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/D141-BRAIN-BODY-RELATION.hdlp",
"TC-008": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/D145-ACTION-PROTOCOL.hdlp",
"TC-009": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/TCS-CODE-MAP.hdlp",
"TC-010": "brain/fifth-domain/zero-point/zhuyuan/tcs-core/ICE-GL-ZY001-TCS-MODULE.hdlp",
# 验证链
"TV-001": "brain/fifth-domain/zero-point/zhuyuan/tcs-verify/ENTRY.hdlp",
"TV-SOV": "brain/fifth-domain/zero-point/zhuyuan/tcs-verify/ICE-GL-SOV-A.hdlp",
"TV-BTH": "brain/fifth-domain/zero-point/zhuyuan/tcs-verify/ICE-GL-BTH-A.hdlp",
"TV-NUM": "brain/fifth-domain/zero-point/zhuyuan/tcs-verify/ICE-GL-NUM-A.hdlp",
"TV-SHL": "brain/fifth-domain/zero-point/zhuyuan/tcs-verify/ICE-GL-SHL-A.hdlp",
"TV-RCP": "brain/fifth-domain/zero-point/zhuyuan/tcs-verify/ICE-GL-RCP-A.hdlp",
# 视频AI系统
"VA-000": "video-ai-system/ENTRY.hdlp",
"VA-001": "video-ai-system/CURRENT.hdlp",
"VA-002": "video-ai-system/SYSTEM-WAKE.hdlp",
"VA-003": "video-ai-system/brain/TCS-BRAIN.hdlp",
"VA-010": "video-ai-system/PROJECT.hdlp",
"VA-020": "video-ai-system/config/PROJECT-FRAMEWORK.hdlp",
"VA-021": "video-ai-system/config/AGENT-REGISTRY.hdlp",
"VA-030": "video-ai-system/data/ep01-storyboard.json",
"VA-031": "video-ai-system/data/ep01-audit.json",
"VA-040": "video-ai-system/engines/video-api-adapter.js",
"VA-050": "video-ai-system/tools/qwen-vision.py",
"VA-051": "video-ai-system/tools/vision-analyzer.py",
"VA-052": "video-ai-system/tools/secrets-loader.py",
"VA-060": "video-ai-system/plans/EP01-SCRIPT-TO-SCREEN-TECHNICAL-PLAN.hdlp",
"VA-100": "video-ai-system/experience/ITERATION-LOOP.hdlp",
"VA-101": "video-ai-system/experience/EP01-PREVIEW-002-REVIEW.hdlp",
# 密钥(特殊处理-secrets_loader
"SC-001": "JIMENG_API_KEY",
"SC-002": "VOLC_VOICE_API_KEY",
"SC-004": "ALIYUN_QWEN_VL_KEY",
"SC-008": "WORKRALLY",
# 世界架构
"WA-001": "brain/fifth-domain/zero-point/zhuyuan/world-architecture/ENTRY.hdlp",
"WA-PROJ-VA": "brain/fifth-domain/zero-point/zhuyuan/world-architecture/projects/D130-video-ai-system.hdlp",
# 认知链快捷
"CC-014": "brain/fifth-domain/zero-point/zhuyuan/causal-chains/cc-014-D135-pit-chain.hdlp",
"CC-023": "brain/fifth-domain/zero-point/zhuyuan/causal-chains/cc-023-closed-door-to-open-eye.hdlp",
# 小说系统
"NV-001": "brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/novel-system/03-NAV-MAP.hdlp",
"NV-002": "brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/novel-system/CONTINUATION.hdlp",
}
PREFIXES = sorted(set(k.split("-")[0] for k in MAP))
def route(code):
"""翻译编号→完整路径"""
if code in MAP:
return os.path.join(REPO, MAP[code])
return None
def list_all(prefix=None):
"""列出所有编号,可选按前缀过滤"""
for k, v in sorted(MAP.items()):
if prefix and not k.startswith(prefix + "-"):
continue
path = os.path.join(REPO, v)
exists = "" if os.path.exists(path) or k.startswith("SC-") else ""
print(f" {k:<12}{v:<60} {exists}")
if __name__ == "__main__":
if len(sys.argv) < 2 or sys.argv[1] in ("--help", "-h"):
print(__doc__)
sys.exit(0)
arg = sys.argv[1]
if arg == "--list":
prefix = sys.argv[2] if len(sys.argv) > 2 else None
print(f"=== 编号路由 ({prefix or '全部'}) ===")
list_all(prefix)
sys.exit(0)
if arg == "--cat" and len(sys.argv) > 2:
code = sys.argv[2]
path = route(code)
if not path:
print(f"✗ 未知编号: {code}")
sys.exit(1)
if not os.path.exists(path):
print(f"✗ 文件不存在: {path}")
sys.exit(1)
with open(path) as f:
print(f.read())
sys.exit(0)
# 默认:翻译编号→路径
code = arg
if code in MAP:
path = MAP[code]
full = os.path.join(REPO, path)
if code.startswith("SC-"):
# 密钥:输出加载指令
print(f"from tools.secrets_loader import secret")
print(f'key = secret("{code}") # → {path}')
else:
print(full)
if os.path.exists(full):
print(f"✓ 文件存在")
else:
print(f"✗ 文件不存在(路径已注册但文件缺失)")
else:
print(f"✗ 未知编号: {code}")
# 建议
matches = [k for k in MAP if code in k]
if matches:
print(f" 可能要找的是: {', '.join(matches[:5])}")
print(f" 可用前缀: {', '.join(PREFIXES)}")
print(f" 用 code-router --list <前缀> 查看")
sys.exit(1)