589
Stars
61
Forks
13
Watchers
8
Open Issues
Apache-2.0
许可证
Haskell
语言
2021-08-05
创建时间
2026-11-09
最近更新
项目能做什么
Ogma 是面向飞行器和机器人系统的运行时监控器生成工具,解决安全监控难以集成到外部系统的难题。它基于 Copilot,可为 NASA cFS、ROS 和 F' 生成监控应用或组件,支持从 Graphviz、Mermaid 等图表生成监控器,并自动生成 C 结构体胶水代码。
来源:AI 基于仓库事实生成
· 内容以仓库实际 README 为准
使用说明 查看原始 README 原仓库文档
中文使用说明暂未生成。下面保留原仓库 README 摘录,命令与配置均以原文为准。
原始 README 摘录(英文原文,节选前 3000 字符)
# OGMA Ogma is a tool to facilitate the integration of safe runtime monitors into other systems. Ogma extends [Copilot](https://github.com/Copilot-Language/copilot), a high-level runtime verification framework that generates hard real-time C99 code. # Features - Generating [NASA Core Flight System](https://cfs.gsfc.nasa.gov/) runtime monitoring applications that monitor data received from the message bus. - Generating [Robot Operating System](https://ros.org) runtime monitoring applications. - Generating [F' (F Prime)](https://github.com/nasa/fprime/) runtime monitoring components. - Generating message handlers for NASA Core Flight System applications to make external data in structs available to a Copilot monitor. - Generating monitors from diagrams in diagrammatic formats (e.g., DOT/Graphviz, mermaid). - Generating the glue code necessary to work with C structs in Copilot. <p align="center"> <img src="https://raw.githubusercontent.com/nasa/ogma/gh-pages/images/simulator.gif" alt="Monitoring within simulation video"> <br /> <i>Integration of monitors into larger applications (e.g., simulators).</i> </p> <p align="center"> <img src="https://raw.githubusercontent.com/nasa/ogma/gh-pages/images/ros.gif" alt="Monitoring within ROS simulation video"> <br /> <i>Integration of monitors into robotics applications.</i> </p> ## Table of Contents - [Installation](#installation) - [Linux installation](#linux-installation) - [Mac installation](#mac-installation) - [Troubleshooting](#troubleshooting) - [Usage](#usage) - [cFS Application Generation](#cfs-application-generation) - [ROS Application Generation](#ros-application-generation) - [F' Component Generation](#f-component-generation) - [Generating Monitors from Diagrams](#generating-monitors-from-diagrams) - [Struct Interface Generation](#struct-interface-generation) - [Contributions](#contributions) - [Acknowledgements](#acknowledgements) - [License](#license) # Installation <sup>[(Back to top)](#table-of-contents)</sup> ## Linux Installation <sup>[(Back to top)](#table-of-contents)</sup> ### Ubuntu 25.10 / Debian Forky or newer On Ubuntu 25.10 / Debian Forky or newer, Ogma can be installed directly from the package repositories with: ```sh $ sudo apt-get install ogma ``` To test that Ogma is available, execute the following to print the list of commands supported: ```sh $ ogma --help ``` ### Other Linux distributions On other Linux distributions or older Debian-based distributions, to use Ogma you must compile it from source, for which you need a number of pre-requisites, such as a Haskell compiler (GHC) and the package manager Cabal (`cabal-install`), the libraries `bz2` and `expat`, and the theorem prover `z3`. At this time, we recommend GHC 8.6 and a version of `cabal-install` between 2.4 and 3.2. (Ogma has been tested with GHC versions up to 9.2 and cabal-install versions up to 3.6, although the installation steps may vary slightly depending阅读完整原文
项目深度分析 AI 生成
航天与车规机器人系统形式化监控咨询与定制服务
| 产品构想 | 为商业航天(使用 cFS/F')或自动驾驶/特种机器人(使用 ROS2)企业提供从安全需求建模到监控器代码生成与集成的专业咨询与定制工程服务。 |
| 核心功能 | 定制化 Copilot/Ogma 规则建模、cFS 与 ROS2 监控节点集成适配、硬实时安全断言验证套件交付 |
| 目标用户 | 商业卫星研发企业、特种机器人研发团队、高校与科研院所飞控实验室 |
| 难度/周期 | 高 · 3 - 6 个月 · 成本:中等(主要是高级形式化方法与嵌入式飞控专家的人力成本) |
| 收费模式 | 按项目收取定制开发费、咨询顾问年费 |
| 竞争风险 | 目标客户群体高度垂直且封闭,商务决策周期长,对资质要求极高。 |
| 依据 | 已验证事实 |
基于 Web/IDE 的图形化运行时监控生成平台(Low-Code RV Studio)
| 产品构想 | 针对 Ogma 支持 Mermaid/Graphviz 图形生成的特点,封装免 Haskell 环境的 Web/桌面端建模器,支持拖拽定义状态机/安全规约并一键生成 C99 胶水代码和 ROS2/F' 插件。 |
| 核心功能 | 状态机可视化配置、时序逻辑安全属性拖拽建模、一键编译生成 C99 与 ROS2 监控节点包、Dockerized 编译后端 |
| 目标用户 | 机器人控制算法工程师、嵌入式安全架构师 |
| 难度/周期 | 中等 · 2 - 4 个月 · 成本:低(主要为前端开发及云端编译服务器开销) |
| 收费模式 | SaaS 订阅制(高级状态导出/团队协作)、私有部署授权费 |
| 竞争风险 | Haskell 底层定制与维护门槛高;开源用户习惯本地 CLI 工具,付费意愿需检验。 |
| 依据 | AI推测 |
安全关键系统的仿真注入与运行时合规测试工具箱
| 产品构想 | 结合 Gazebo/ROS 仿真环境与 Ogma 运行时监控,提供故障注入和安全边界自动化压力测试解决方案,生成合规审计报告。 |
| 核心功能 | 仿真环境下的监控异常自动拦截与警报、故障注入脚本自动化生成、基于监控日志的合规追溯报告生成器 |
| 目标用户 | 自主系统测试验证团队、功能安全(FuSa)合规认证人员 |
| 难度/周期 | 高 · 4 - 6 个月 · 成本:中等(测试硬件及仿真环境搭建成本) |
| 收费模式 | 企业级软件授权 License、安全合规评估报告按次收费 |
| 竞争风险 | 各类仿真系统差异大,难以高度标准化;依赖对目标行业认证标准的深度理解。 |
| 依据 | 尚需验证的假设 |
AI 基于仓库公开数据分析生成,含推测成分,不构成收益承诺。
报告会保存到 个人中心
竞品与相似项目 GitHub Search 真实检索
相似项目数据正在完善中,暂不展示(避免误导)
项目优势与风险
| 技术成熟度 | 创建于 2021-08-05,近 30 天仍在推送,发布过 21 个 Release |
| 社区活跃 | Star 589 / Fork 61 / Issue 8(数据支持,可自行核实) |
| 许可证 | Apache-2.0 |
| 主要风险 | 上游项目方向可能变化;同赛道竞争者较多(见竞品表);热度与需求不完全等价 |
安装与使用
快速开始(以仓库 README 为准)
git clone https://github.com/nasa/ogma.git cd ogma docker compose up -d # 或参考 README 中的 docker run 命令
术语说明:Docker=应用容器(把程序和依赖打包运行);API Key=调用外部服务的密钥;Git Clone=把仓库代码下载到本地。常见错误:API Key 未配置 / 端口占用 / 数据库连接失败,多数项目在 README 的 Troubleshooting 章节有说明。