程序聚合 软件案例 spec-anchor — 基于AI自动标注的SPEC-Code追溯矩阵生成器

spec-anchor — 基于AI自动标注的SPEC-Code追溯矩阵生成器

2026-06-24 22:27:56
行业:人工智能
载体:爬虫/脚本
技术:Python

业务和功能介绍

在AI辅助开发的SPEC-driven工作流中,开发者通过SPEC.md定义需求条目,并通过CLAUDE.md铁律约束AI在生成代码时自动带上@implements REQ-NNN注释标注。但传统追溯工具(IBM DOORS、Jama Connect等)太重型,需要手动标注,缺少一款轻量级的CLI工具来自动完成需求到代码的关联追溯。spec-anchor填補了这一空白,实现AI自动标注与自动追溯的闭环。

核心功能模块: • trace命令:解析SPEC.md提取需求条目(REQ-NNN格式),递归扫描源代码目录,通过两层匹配策略(Layer 1: @implements精确匹配;Layer 2: 关键词启发式兜底)关联需求与代码实现,生成Markdown/JSON格式的追溯矩阵 • impact命令:支持git提交范围或diff文件的反向影响分析,展示代码变更影响了哪些需求条目及其变更行数 • check命令:缺口检查,列出未实现和仅启发式匹配的需求,提供覆盖率统计 • 支持8种语言(Python/JS/TS/Go/Java/Rust/PHP/Ruby/Elixir)的函数名提取与注释识别,内置中英文关键词映射和同义词扩展 业务流程:开发者在SPEC.md中定义需求→AI生成代码时自动带@implements注释→运行spec-anchor trace生成追溯矩阵→运行spec-anchor impact查看变更影响→在PR中附上矩阵供reviewer审查

项目实现

整体架构和设计思路:项目采用模块化分层架构,Python 3.10+开发,基于Click CLI框架构建命令行接口。核心数据流为:spec_parser.py解析SPEC.md提取需求实体 → scanner.py递归扫描源码执行Layer 1(@implements正则匹配)和Layer 2(函数名提取)→ keywords.py处理中英文关键词映射、同义词扩展和置信度评分 → matrix.py/impact.py生成输出报告。cache.py通过SHA256哈希实现增量扫描缓存,避免大型仓库重复全量扫描。项目严格遵循TDD开发,从SPEC定义→测试先行→实现→代码审查→自动验证,形成了完整的质量闭环。 负责模块和结果:该项目为独立开发的完整CLI工具。截至v0.2版本,完成10个核心模块的实现,通过150+个单元测试(覆盖率86%),覆盖8种编程语言的函数名正则匹配。所有验收标准(9个维度)一次性通过,mypy类型检查通过,ruff lint零错误。 遇到的难点和解决方案: • 中文需求标题匹配:内置2字符滑动窗口+中英文关键词映射表,每个CJK词组(如"注册")映射到对应英文关键词集(register/create/signup),无需外部NLP依赖即可处理中文标题 • Windows平台编码问题:git diff输出GBK乱码,通过设置PYTHONIOENCODING=utf-8环境变量解决,并通过文件读取的errors="replace"容错 • @implements注释距离限制:注解必须紧贴函数定义(不超过5行),否则Layer 1扫描失败。扫描引擎实现了5行内搜索+多语言回退机制,并在文档中明确了此限制 • 跨语言注释格式统一:为8种语言定义了统一的@implements REQ-NNN注释格式,在语言检测模块中通过文件扩展名路由到对应的正则提取器

示例图片视频


易洋
24小时内活跃
方向: 人工智能-AI应用开发、后端-Python、
交付率:100.00%
相似推荐
spec-anchor — 基于AI自动标注的SPEC-Code追溯矩阵生成器
在AI辅助开发的SPEC-driven工作流中,开发者通过SPEC.md定义需求条目,并通过CLAUDE.md铁律约束AI在生成代码时自动带上@implements REQ-NNN注释标注。但传统追溯工具(IBM DOORS、Jama Connect等)太重型,需要手动标注,缺少一款轻量级的CLI工具来自动完成需求到代码的关联追溯。spec-anchor填補了这一空白,实现AI自动标注与自动追溯的闭环。 核心功能模块: • trace命令:解析SPEC.md提取需求条目(REQ-NNN格式),递归扫描源代码目录,通过两层匹配策略(Layer 1: @implements精确匹配;Layer 2: 关键词启发式兜底)关联需求与代码实现,生成Markdown/JSON格式的追溯矩阵 • impact命令:支持git提交范围或diff文件的反向影响分析,展示代码变更影响了哪些需求条目及其变更行数 • check命令:缺口检查,列出未实现和仅启发式匹配的需求,提供覆盖率统计 • 支持8种语言(Python/JS/TS/Go/Java/Rust/PHP/Ruby/Elixir)的函数名提取与注释识别,内置中英文关键词映射和同义词扩展 业务流程:开发者在SPEC.md中定义需求→AI生成代码时自动带@implements注释→运行spec-anchor trace生成追溯矩阵→运行spec-anchor impact查看变更影响→在PR中附上矩阵供reviewer审查
DWS数仓迁移工具MGC
内容: 项目简介:是一款支持ORACLE、TERADATA、GUASSA、GREENPLUM、NETEZZA、DB2、POSTGRESQL、NETEZZA等数据库的数据迁移到DWS数据库以及对应的脚本语法转换的工具,可以进行大规模、快速的数据仓库、主机、容器、大数据等迁移作业 软件架构:Sprinboot、SpringCloud、mybatis-plus、SSHD、Redis、Zmq、Nacos、Nginx 后端数据库:Gaussdb 我负责的功能模块:部分公共模块,主要负责数据仓库迁移服务 1、迁移工具的许可证License控制允许迁移数据量和SQL脚本转换数量 1、DWS数仓迁移工具的动态数据源框架和工具类 2、源端和目标端的数据连接 3、源端数据库的元数据获取 4、源端->目标端迁移工程创建 5、增量迁移、大表拆分条件控制 6、表结构、视图、索引转换 7、用户、角色、用户权限迁移 8、PG系列库元数据迁移 9、数据内容迁移 10、数据内容增量迁移 11、数据内容大表拆分迁移 12、数据内容迁移后的数据条目数量以及内容校验 13、校验完成后的迁移报告生成及下载 业绩: 国内外银行、通讯公司、政府组织、医疗组织以及各行业的数据仓库、容器、大数据迁移
旅游规划 AI Agent
基于 Spring Boot 3 + Spring AI + RAG + Tool Calling + MCP 的企业级旅游规划智能体,为用户提供路线制定等服务。支持多轮对话、记忆持久化、RAG 知识库检索等能力,并且基于 ReAct 模式,能够自主思考并调用工具来完成复杂任务,比如利用网页搜索、资源下载和 PDF 生成工具制定完整的旅游计划并生成文档。
某大型央企政企供应链系统
1、背景:集团信息化要求、线下业务线上化、政企业务场景特殊性、产业链协同数字化不足; 2、软件功能及核心模块:需求与计划管理、电子寻源与招投标管理模块、合同与订单管理模块、仓储、物流与项目履约管理模块、发票、对账与财务结算模块、数据大屏、报表与智能分析模块、系统管理与基础数据模块等; 3、业务流程、功能路径描述:政企项目立项→需求提报与汇总→采购寻源(招标 / 询价)→确定中标 / 合作供应商→签订电子合同→下达采购订单→供应商排产发货→物流在途跟踪→仓库入库质检→项目现场领用 / 到货验收→项目施工交付→售后维保 / 故障退换→项目竣工对账收票→财务结算付款
工作台智能 AI 助手-快手 app 端-AI 助手
基于 LangChain4J 框架,构建快手日常运营智能助手,服务于内容答疑、粉丝分析、趋势发现等核心业务场景。系统采用 LLM + RAG + Agent + LLM Loop 技术,提供高效、可扩展的智能问答与决策支持能力。 项目模块主要包括:知识库模块(RAG 架构)、Agent 模块(Function Call & Agent Loop)等
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服