# timus_agentic_app_adaf **Repository Path**: timuspace/timus_agentic_app_adaf ## Basic Information - **Project Name**: timus_agentic_app_adaf - **Description**: ADAF(Agentic Develop Agile Framework)是面向AI时代的敏捷开发框架。与传统SAFe以"价值流"驱动不同,ADAF以"领域块"驱动,更适合多业务系统协同的企业级应用开发场景。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://adaf.timus.chat/ - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-04 - **Last Updated**: 2026-08-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: 敏捷研发 ## README # Timus ADAF — AI研发架构管理系统 > **定位**:AI驱动的研发架构管理平台,以泳道视图驱动需求拆解与特性交付。 --- ## 目录结构 ``` timus_adaf/ ├── frontend/ # 前端模块(Vue 3 + Vite + vue-router) │ ├── src/ │ │ ├── api.js # 统一API层:凭证存储、分页拉全、CRUD、字段解析 │ │ ├── router/ │ │ │ └── index.js # 路由:/login 与 /(鉴权守卫) │ │ ├── views/ │ │ │ ├── MainView.vue # 主页面:五层泳道 + 增删改对话框 │ │ │ └── LoginView.vue # 登录页包装 │ │ ├── components/ │ │ │ ├── LoginPage.vue # 登录表单:验证token并持久化 │ │ │ ├── DataList.vue # 通用数据列表:CRUD、拖拽排序、级联筛选 │ │ │ └── RequirementsList.vue # 需求列表:表格展示、添加需求 │ │ ├── App.vue # 根组件:仅路由出口 + 全局样式 │ │ └── main.js # 入口:挂载 router │ ├── vite.config.js # Vite配置:端口5173 │ └── package.json │ ├── server/ # 后端模块(Express + helmet,生产静态托管) │ ├── index.js # Express入口:helmet、健康检查、托管前端dist │ └── package.json │ ├── timus_cli/ # CLI工具模块(Python 3.9+) │ ├── src/ │ │ ├── cli.py # 入口:click命令组、--json标志、错误处理 │ │ ├── client.py # HTTP客户端:认证、重试、分页 │ │ ├── config.py # .env加载 + config.yaml Schema缓存 │ │ ├── commands/ │ │ │ ├── table.py # timus table list/sync │ │ │ ├── record.py # timus record list/info/create/edit/delete │ │ │ ├── api.py # timus api METHOD PATH(L2透传) │ │ │ └── skill.py # timus skill list/view/run │ │ └── skills/ # 内置Skill目录 │ ├── .timus/ │ │ └── config.yaml # 本地缓存的表Schema │ └── pyproject.toml │ ├── LowCode/ # 低代码平台配置 │ └── Lark/ │ └── TIMUS.ADAF.RUNTIME.base # 飞书多维表格配置 │ ├── docker-compose.yml # Docker编排:单服务:8261 ├── Dockerfile # 多阶段构建:前端build + Express生产 └── package.json # npm workspaces根配置 ``` ### 目录说明 | 目录 | 说明 | |------|------| | `frontend/` | Vue 3 SPA,泳道式研发架构管理界面(Domain→Layer→Block→Structure→Features) | | `server/` | Express 生产服务器:安全头、健康检查、托管前端构建产物(不承载业务 API) | | `timus_cli/` | Python CLI工具,表结构同步、记录增删改查、API透传、Skill工作流 | | `LowCode/` | 低代码平台配置文件(飞书多维表格) | --- ## 快速开始 ### 前置条件 - Node.js 18+ - Python 3.9+(CLI工具需要) - Agent运行时账号(https://.timus.chat) ### 安装步骤 前置配置完成Timus应用服务后进行安装。 #### 步骤1:安装前端和后端依赖 ```bash # 在项目根目录执行 npm install ``` #### 步骤2:安装CLI工具 ```bash cd timus_cli pip install -e . ``` #### 步骤3:配置CLI环境 在 `timus_cli/` 目录下创建 `.env` 文件: ```bash API_TOKEN=your_token_here BASE_URL=https://admin.aoaerp.com DEFAULT_TEAM_CODE=your_team_code ``` #### 步骤4:同步表结构 ```bash timus table sync ``` #### 步骤5:启动开发服务 ```bash # 终端1:启动后端服务(端口 8261) npm run dev:server # 终端2:启动前端服务(端口 5173) npm run dev:frontend ``` 访问 http://localhost:5173 ### Docker 部署 ```bash # 构建并启动 docker-compose up -d ``` 访问 http://localhost:8261 --- ## 框架概述 Timus ADAF(Agentic Development Agile Framework)是面向AI时代的研发架构管理系统。以泳道视图驱动五层架构拆解:Domain → Layer → Block → Structure → Features,实现从领域到特性的全链路管理。 **核心理念**:五层泳道驱动架构拆解,需求与特性双向关联,Sprint迭代驱动交付。 ### 五层泳道架构 ``` Domain(领域)→ Layer(层级)→ Block(模块)→ Structure(结构)→ Features(特性) ``` | 泳道 | 说明 | 关键字段 | |------|------|----------| | **Domain** | 业务领域,顶层分类 | domain, description, dom_owner | | **Layer** | 技术层级,领域下的分层 | layer, description, lay_owner | | **Block** | 功能模块,层级下的模块 | block, description, blo_owner | | **Structure** | 代码结构,模块下的结构单元 | structure, description, str_owner | | **Features** | 功能特性,结构下的具体特性 | feature, description, status, sprint, start_date, solved_date | ### 核心优势 1. **泳道可视化**:五层架构一目了然,级联选择驱动数据关联 2. **需求全链路**:需求→特性双向关联,req_id贯穿始终 3. **Sprint驱动**:选择Sprint自动填充开始/结束日期,迭代节奏清晰 4. **AI辅助**:集成 Agent 运行时能力,支撑研发流程自动化 5. **CLI增强**:命令行工具支持表结构同步、批量操作、Skill工作流 ### 适用场景 - **研发团队**:管理多领域、多层级的研发架构 - **需求管理**:从需求到特性的全链路跟踪 - **迭代管理**:Sprint驱动的特性交付管理 - **AI研发**:需要系统化管理AI研发架构的团队 --- ## 三层架构 ```mermaid graph TB subgraph 用户层 U1[研发架构师] U2[产品经理] U3[开发人员] end subgraph 前端层 F1[泳道视图] F2[需求列表] F3[数据列表] F4[对话框组件] end subgraph 服务层 S1[Express 静态托管] S2[健康检查 /api/health] end subgraph 外部平台 E1[Agent运行时平台
timus.chat] E2[飞书多维表格] end subgraph CLI层 C1[timus CLI] C2[表结构同步] C3[记录CRUD] C4[Skill工作流] end U1 --> F1 U2 --> F2 U3 --> F3 F1 --> S1 F2 --> S1 F3 --> S1 F4 --> S1 S1 --> S2 S1 --> S3 S3 --> E1 E1 --> E2 C1 --> C2 C1 --> C3 C1 --> C4 C3 --> E1 ``` --- ### 数据关系图 ```mermaid erDiagram Domain ||--o{ Layer : "1对多" Layer ||--o{ Block : "1对多" Block ||--o{ Structure : "1对多" Structure ||--o{ Features : "1对多" Requirements ||--o{ Features : "需求关联" Sprint ||--o{ Features : "迭代关联" Features ||--o{ Issue : "问题关联" ``` ### 泳道级联关系 ``` Domain(领域) └── Layer(层级) └── Block(模块) └── Structure(结构) └── Features(特性) ├── req_id → Requirements(需求) └── sprint → Sprint(迭代) ``` ## 数据流转 ```mermaid flowchart LR A[需求录入] --> B[架构拆解] B --> C[Domain] C --> D[Layer] D --> E[Block] E --> F[Structure] F --> G[Features] G --> H[Sprint迭代] H --> I[交付验收] subgraph 需求流 J[Requirements] --> |req_id| G end subgraph 迭代流 K[Sprint] --> |sprint| G end ``` --- ## --- ## 技术栈 | 层级 | 技术 | 说明 | |------|------|------| | **前端** | Vue 3 + Vite | SPA应用,响应式设计 | | **后端** | Express + helmet | 生产静态托管与健康检查 | | **CLI** | Python 3.9+ (click, requests, rich) | 命令行工具,Schema管理 | | **外部平台** | 低代码平台 (aoaerp.com) | 数据存储,API接口 | | **部署** | Docker + docker-compose | 容器化部署 | --- ## 使用方式 ## 与SAFe的对比 | 维度 | SAFe | ADAF | | -------- | ------------------- | ------------------------ | | 分解逻辑 | 价值流驱动 | 领域块驱动 | | 起点 | 业务价值(Epic) | 业务系统(Domain) | | 核心关注 | 流程协作 | 技术架构 | | 适用场景 | 传统软件开发 | AI时代多系统协同 | | 组织形式 | ART(敏捷发布火车) | Domain(领域块) | | 交付节奏 | PI(项目群增量) | Sprint(迭代) | | 角色体系 | PO/SM/RTE | 领域专家/架构师/开发团队 | --- ## 五层架构 ``` Domain(领域块) ↓ 每个领域块的技术栈 Layer(技术分层) ↓ 每个技术栈的构建单元 Block(研发区块) ↓ 每个区块的产品架构 Structure(结构组件) ↓ 每个结构的功能点 Features(功能特性) ``` --- ### Domain(领域块) **定义**:具体的业务系统或业务模块,是整个框架的起点。 **核心问题**:我们要构建哪些业务系统? **示例**: | 行业 | Domain | 说明 | | -------- | -------- | -------------------- | | 研发效能 | 项目管理 | 项目计划与进度跟踪 | | 研发效能 | 需求管理 | 需求收集与优先级排序 | | 研发效能 | 代码管理 | 代码仓库与版本控制 | | 研发效能 | 测试管理 | 测试用例与缺陷跟踪 | | 客户服务 | 工单系统 | 客户问题处理 | | 客户服务 | 知识库 | 知识沉淀与检索 | | 客户服务 | SLA管理 | 服务级别协议管理 | **产出**: - 领域块清单:所有需要构建的业务系统 - 领域块边界:每个领域块的职责范围 - 领域块依赖:领域块间的依赖关系 --- ### Layer(技术分层) **定义**:每个领域块涉及的技术分层。 **核心问题**:每个领域块用什么技术实现? **分层模型**: | 层级 | 说明 | 示例 | | ------ | -------------- | ----------------------- | | 接入层 | 用户交互入口 | 飞书、钉钉、企微、Web | | 逻辑层 | 业务编排引擎 | Dify、N8N、Langchain | | 智能层 | AI能力支撑 | 大模型、RAG、向量数据库 | | 数据层 | 数据存储与管理 | MySQL、Redis、MinIO | | 集成层 | 外部系统对接 | API Gateway、Webhook | **产出**: - 技术栈清单:每个领域块的技术栈选型 - 技术架构图:层级关系与数据流向 - 技术决策记录:选型理由与权衡 --- ### Block(研发区块) **定义**:每个技术栈需要构建的独立研发模块。 **核心问题**:每个技术栈需要构建哪些模块? **区块类型**: | 类型 | 说明 | 示例 | | -------- | ---------------- | ---------------------------- | | 核心区块 | 业务核心能力 | 库存、订单、记账 | | 能力区块 | 可复用的技术能力 | 认证鉴权、消息推送 | | 连接区块 | 系统集成能力 | IM接入、第三方API | | 本体区块 | 智能体本体 | 质检Agent、核对Agent | | 技能区块 | 可复用的技能 | 区块数据技能、身份ID检索技能 | **产出**: - 研发区块清单:所有需要构建的区块 - 区块依赖关系:区块间的依赖与调用关系 - 区块优先级:基于业务价值和技术依赖排序 --- ### Structure(结构组件) **定义**:每个研发区块的内部架构与组件组成。 **核心问题**:每个区块由哪些组件构成? **结构组成**: | 组成 | 说明 | 适用场景 | | ---------- | ---------- | ----------------------------------------- | | Dify对话流 | 单一应用 | 定义一个Agent本体的具体逻辑 | | 数据表结构 | 表字段设计 | 定义"库-表-字段"之间的逻辑关系 | | 事件驱动 | 消息触发 | 定义一个闭环的逻辑链路 | | Harness | 思维链 | 构建一个个性化的"感知-规划-执行-反思"链条 | **产出**: - 组件清单:区块内的组件列表 - 组件职责:每个组件的职责边界 - 组件接口:组件间的交互方式与边界 --- ### Features(功能特性) **定义**:每个结构组件需要交付的功能特性。 **核心问题**:每个组件需要实现什么功能? **特性分类**: | 类型 | 说明 | 示例 | | -------- | -------------------------- | ---------------------------- | | 数据特性 | 围绕业务的具体数据流转规范 | 用户表、对账表、需求表 | | 业务特性 | 支撑业务能力 | 帮助、规划排期、状态查询 | | 交互特性 | 人机交互体验 | 功能交互、状态视图、数据看板 | **产出**: - Feature Backlog:功能待办列表 - 验收标准:每个Feature的完成定义 - 依赖关系:Feature间的前后项依赖 --- ## 实施流程 ### 阶段一:Domain识别 1. 业务调研:识别核心业务系统 2. 边界划分:明确每个领域块的职责 3. 依赖分析:分析领域块间的依赖关系 4. 优先级排序:基于业务价值确定开发顺序 --- ### 阶段二:Layer选型 1. 技术调研:评估候选技术方案 2. 架构设计:设计技术分层架构 3. 选型决策:记录选型理由与权衡 4. 技术预研:验证关键技术可行性 --- ### 阶段三:Block规划 1. 区块识别:基于领域块识别研发区块 2. 依赖分析:分析区块间依赖关系 3. 优先级排序:基于价值与依赖确定开发顺序 4. 资源分配:为区块分配开发资源 --- ### 阶段四:Structure设计 1. 组件设计:设计区块内组件结构 2. 接口定义:定义组件间交互协议 3. 数据模型:设计数据存储结构 4. 架构评审:组织架构评审会议 --- ### 阶段五:Feature交付 1. 特性拆解:将需求拆解为Feature,并关联结构组件 2. Sprint规划:将Feature分配到迭代 3. 迭代开发:按Sprint节奏交付 4. 持续集成:自动化构建、测试、部署 ## 常见问题 **Q1:五层泳道是什么关系?** A:Domain→Layer→Block→Structure→Features是逐层递进的级联关系。选择父级后,子级才能操作。 **Q2:Sprint如何工作?** A:在Sprint表中创建迭代(名称+日期范围),在Features中选择Sprint后自动填充开始/结束日期。 **Q3:需求如何关联到特性?** A:在Features中通过req_id字段关联Requirements表中的需求,实现需求到特性的双向追踪。 **Q4:CLI工具的作用?** A:CLI用于表结构同步(timus table sync)、批量记录操作、API透传,适合自动化和批量处理场景。 **Q5:如何部署到生产环境?** A:使用 `docker-compose up -d` 即可,Docker会自动构建前端并启动Express服务。 --- ## 故障排除 | 问题 | 原因 | 解决方案 | |------|------|----------| | 添加记录失败 | 凭据或网络问题 | 检查前端 API URL 与 Token 配置是否正确 | | Sprint日期不显示 | sprintMap未加载 | 刷新页面,检查浏览器控制台 | | CLI认证失败 | Token过期 | 更新 `.env` 中的 `API_TOKEN` | | 表结构不同步 | 远端变更 | 执行 `timus table sync` | | Docker构建失败 | 依赖未安装 | 确保 `npm install` 和 `pip install` 已执行 | --- ## 术语表 | 术语 | 说明 | |------|------| | **Domain(领域)** | 业务领域的顶层分类 | | **Layer(层级)** | 领域下的技术分层 | | **Block(模块)** | 层级下的功能模块 | | **Structure(结构)** | 模块下的代码结构单元 | | **Features(特性)** | 结构下的具体功能特性 | | **Requirements(需求)** | 业务需求,通过req_id关联到特性 | | **Sprint(迭代)** | 迭代周期,包含开始和结束日期 | | **泳道(Swimlane)** | 五层架构的可视化展示方式 | | **级联选择** | 选择父级后启用子级的交互模式 | | **Skill** | CLI中的可扩展工作流(SKILL.md + run.py) | --- ## 贡献指南 ### 提交Issue 1. 访问 https://gitee.com/timuspace/timus_adaf/issues 2. 点击"新建Issue" 3. 填写问题描述、复现步骤、期望结果 ### 提交PR 1. Fork项目仓库 2. 创建功能分支(`git checkout -b feature/xxx`) 3. 提交更改(`git commit -m 'Add feature xxx'`) 4. 推送到分支(`git push origin feature/xxx`) 5. 创建Pull Request ### 开发规范 - 前端遵循Vue 3 Composition API风格 - 后端遵循Express路由规范 - CLI遵循click命令组模式 - 提交信息遵循Conventional Commits规范