[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-ZoneMinder--zmNinja":3,"tool-ZoneMinder--zmNinja":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",143909,2,"2026-04-07T11:33:18",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107888,"2026-04-06T11:32:50",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":72,"owner_avatar_url":73,"owner_bio":74,"owner_company":75,"owner_location":75,"owner_email":76,"owner_twitter":77,"owner_website":78,"owner_url":79,"languages":80,"stars":108,"forks":109,"last_commit_at":110,"license":111,"difficulty_score":112,"env_os":113,"env_gpu":114,"env_ram":114,"env_deps":115,"category_tags":120,"github_topics":122,"view_count":32,"oss_zip_url":75,"oss_zip_packed_at":75,"status":17,"created_at":137,"updated_at":138,"faqs":139,"releases":168},5015,"ZoneMinder\u002FzmNinja","zmNinja","High performance, cross platform ionic app for Home\u002FCommerical Security Surveillance using ZoneMinder","zmNinja 是一款专为 ZoneMinder 开源监控系统打造的高性能跨平台客户端，支持 iOS、Android、Windows、Mac 及 Linux 等多种设备。它主要解决了用户无法在移动端或桌面端便捷、实时查看监控画面及管理警报事件的痛点，让家庭和商业安防监控变得随时随地可控。\n\n无论是普通家庭用户希望远程查看家门情况，还是中小企业需要管理多路摄像头，zmNinja 都能提供流畅的体验。其核心亮点在于强大的功能集成：支持 H.264 视频流播放、多画面拼接监视、时间轴回放以及云台控制。更独特的是，配合事件服务器（Event Server），zmNinja 能实现基于人工智能的推送通知，包括物体检测和人脸识别，仅在发现异常时提醒用户，极大提升了监控效率。\n\n虽然项目原维护者已移交职责给 ZoneMinder 官方团队，但其稳定性与功能性依然出色。需要注意的是，使用前需确保 ZoneMinder 后端 API 正常开启，且对自签名证书或基础认证有一定配置要求。如果你正在寻找一款功能全面、响应迅速的 ZoneMinder 配套应用，zmNinja 是理想之选。","Project Adoption 2022\n-----------------------------------------\nAfter 6+ years of developing zmNinja + ES + ML, [Pliable Pixels](https:\u002F\u002Fgithub.com\u002Fpliablepixels) no longer had the time to maintain the project. ZoneMinder\ndevelopment team will take on the support of zmNinja and provision of notification services going forward. This may necessitate\nnew app names due to some app store policies.\n\n![](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002FzmNinja\u002Fblob\u002Fmaster\u002Fsample_images\u002Fzmn.png?raw=true \"icon\") \n\n[zmNinja website](http:\u002F\u002Fzmninja.zoneminder.com)\n\nzmNinja is a multi platform (iOS, Android, Windows Desktop, Mac Desktop, Linux Desktop) client for ZoneMinder users.\n[ZoneMinder](http:\u002F\u002Fwww.zoneminder.com) is an incredible open source camera monitoring system and is used\nby many for home and commercial security monitoring.\n\n\u003Ca href=\"https:\u002F\u002Fitunes.apple.com\u002Fus\u002Fapp\u002Fzmninja-pro\u002Fid1067914954?mt=8\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_4eaf175bc570.png\" width=\"200px\" alt=\"Get in on App Store\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fplay.google.com\u002Fstore\u002Fapps\u002Fdetails?id=com.zoneminder.zmNinja\">\u003Cimg alt=\"Get it on Google Play\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_1e91d02cf5a9.png\" width=\"200px\"\u002F>\u003C\u002Fa>\n\n\n\nHelp\n----\n* Official documents [are here](https:\u002F\u002Fzmninja.readthedocs.io\u002Fen\u002Flatest\u002Findex.html)\n* If you are looking for the Machine Learning powered [Event Server companion](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002Fzmeventnotification), docs [are here](https:\u002F\u002Fzmeventnotification.readthedocs.io\u002Fen\u002Flatest\u002Findex.html)\n* Post in the [ZoneMinder Mobile App forum](https:\u002F\u002Fforums.zoneminder.com\u002Fviewforum.php?f=33) or find me on ZoneMinder's slack channel (you can join [here](https:\u002F\u002Fjoin.slack.com\u002Ft\u002Fzoneminder-chat\u002Fshared_invite\u002FenQtNTU0NDkxMDM5NDQwLTlhZDU2MGU4MmZmN2MxOTg1MmNmNmZjZGRmY2EzMThhNGQ0MWNmZTg1ZmYzNDQ4YjliMzVmYTQ3MDc5MTkzODE))\n* If you believe you've discovered a bug, please create a [GitHub issue](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002FzmNinja\u002Fissues\u002F)\n\nBefore you ask for help\n-----------------------\n* Make sure you have read the [FAQ](https:\u002F\u002Fzmninja.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002FFAQ.html)\n* Make sure you have [validated](https:\u002F\u002Fzmninja.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Fvalidating-api.html) that your APIs are working (if not, its a ZM issue, please post in ZM forums)\n* Please don't ask me for help with source compilation if you are not familiar with coding mobile apps - you should try and solve your own problems\n\n\nVideo Demo\n-------------\nCheck out a video demo of zmNinja [here](https:\u002F\u002Fyoutu.be\u002FprtA_mv68Ok)\n\nMobile Platforms\n---------------------------\nzmNinja is  stable as of today and runs on a variety of Android and iOS platforms.\nSee links above to get them on play store (Android) and app store (iOS)\n\nIt also runs on the desktop (see below)\n\nDesktop Platforms\n-----------------\nPlease download binaries from [here](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002FzmNinja\u002Freleases). \n\n\nKey Features \n-------------\n* Push Notifications  Object detection\u002Fface recognition for alarms (Needs the [eventserver](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002Fzmeventserver) to be set up)\n* Multiple languages (English, French, German, Spanish, Portuguese, Dutch, and more)\n* H264 video support\n* live views of monitors\n* Montage view (with multiple montage profile settings\u002Fsizes)\n* Events history and list\n* Timeline view\n* Camera pan\u002Ftilt\u002Fzoom (needs to have ZM support it first)\n* 24hr review \n\nKey Limitations\n----------------\n* Client certificates are not supported \n* If you use self signed certificates, you will likely have to install them in your phone (especially Android)\n* If you use Basic Authentication, you'll have to go through additional setup (see FAQ)\n\nThanks\n------\nTo Pliable Pixels for his fantastic contributions to the ZoneMinder community in building this application.\n\nImportant Notes\n---------------\n* zmNinja needs APIs enabled in ZoneMinder. See [this](https:\u002F\u002Fzmninja.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Fvalidating-api.html) for instructions on how to make sure your APIs are working. If they are not working, zmNinja **will not** work.\n\nScreenshots:\n------------\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_fffc71e2a29d.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_bfca769e4f05.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_a3b94eda671c.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_3159360e1322.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_421a64d3651e.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_51e344874dbd.png)\n\n\n\n","项目接管 2022\n-----------------------------------------\n在历经6年多的zmNinja + ES + ML开发之后，[Pliable Pixels](https:\u002F\u002Fgithub.com\u002Fpliablepixels)已无暇继续维护该项目。ZoneMinder开发团队将接替对zmNinja的支持，并负责今后的通知服务提供工作。由于部分应用商店政策的要求，这可能需要使用新的应用名称。\n\n![](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002FzmNinja\u002Fblob\u002Fmaster\u002Fsample_images\u002Fzmn.png?raw=true \"icon\") \n\n[zmNinja官网](http:\u002F\u002Fzmninja.zoneminder.com)\n\nzmNinja是一款跨平台（iOS、Android、Windows桌面版、Mac桌面版、Linux桌面版）的客户端，专为ZoneMinder用户设计。[ZoneMinder](http:\u002F\u002Fwww.zoneminder.com)是一款功能强大的开源监控系统，广泛应用于家庭及商业安防监控领域。\n\n\u003Ca href=\"https:\u002F\u002Fitunes.apple.com\u002Fus\u002Fapp\u002Fzmninja-pro\u002Fid1067914954?mt=8\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_4eaf175bc570.png\" width=\"200px\" alt=\"在App Store获取\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fplay.google.com\u002Fstore\u002Fapps\u002Fdetails?id=com.zoneminder.zmNinja\">\u003Cimg alt=\"在Google Play获取\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_1e91d02cf5a9.png\" width=\"200px\"\u002F>\u003C\u002Fa>\n\n\n\n帮助\n----\n* 官方文档[在此](https:\u002F\u002Fzmninja.readthedocs.io\u002Fen\u002Flatest\u002Findex.html)\n* 如果您正在寻找由机器学习驱动的[事件服务器伴侣](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002Fzmeventnotification)，其文档[在此](https:\u002F\u002Fzmeventnotification.readthedocs.io\u002Fen\u002Flatest\u002Findex.html)\n* 请前往[ZoneMinder移动应用论坛](https:\u002F\u002Fforums.zoneminder.com\u002Fviewforum.php?f=33)发帖，或在ZoneMinder的Slack频道中联系我（您可[在此](https:\u002F\u002Fjoin.slack.com\u002Ft\u002Fzoneminder-chat\u002Fshared_invite\u002FenQtNTU0NDkxMDM5NDQwLTlhZDU2MGU4MmZmN2MxOTg1MmNmNmZjZGRmY2EzMThhNGQ0MWNmZTg1ZmYzNDQ4YjliMzVmYTQ3MDc5MTkzODE)加入）\n* 若您认为发现了程序错误，请在[GitHub上提交问题](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002FzmNinja\u002Fissues\u002F)\n\n寻求帮助前\n-----------------------\n* 请务必阅读[常见问题解答](https:\u002F\u002Fzmninja.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002FFAQ.html)\n* 请确保已[验证](https:\u002F\u002Fzmninja.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Fvalidating-api.html)您的API是否正常工作（若未通过，则属于ZoneMinder的问题，请至ZoneMinder论坛发帖）\n* 若您不熟悉移动应用开发，请勿向我寻求源码编译方面的帮助——建议您先尝试自行解决问题\n\n\n视频演示\n-------------\n请观看zmNinja的视频演示[此处](https:\u002F\u002Fyoutu.be\u002FprtA_mv68Ok)\n\n移动平台\n---------------------------\n截至今日，zmNinja运行稳定，支持多种Android和iOS设备。请参阅上方链接，在Play商店（Android）和App Store（iOS）下载。\n\n此外，它也支持桌面端运行（见下文）。\n\n桌面平台\n-----------------\n请从[此处](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002FzmNinja\u002Freleases)下载二进制文件。\n\n\n主要特性 \n-------------\n* 推送通知 对于报警，支持物体检测\u002F人脸识别（需先设置[事件服务器](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002Fzmeventserver)）\n* 多语言支持（英语、法语、德语、西班牙语、葡萄牙语、荷兰语等）\n* H264视频支持\n* 监控画面实时查看\n* 拼图视图（支持多种拼图布局与尺寸）\n* 事件历史与列表\n* 时间线视图\n* 摄像头云台控制（需先由ZoneMinder支持）\n* 24小时回放\n\n主要限制\n----------------\n* 不支持客户端证书\n* 若使用自签名证书，您可能需要将其安装到手机中（尤其是Android设备）\n* 若使用基本认证，还需进行额外的配置（详见常见问题解答）\n\n致谢\n------\n感谢Pliable Pixels为ZoneMinder社区构建这款应用所作出的卓越贡献。\n\n重要提示\n---------------\n* zmNinja需要在ZoneMinder中启用API功能。请参阅[此页](https:\u002F\u002Fzmninja.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Fvalidating-api.html)，了解如何确认您的API是否正常工作。若API无法正常工作，zmNinja将**无法**运行。\n\n截图：\n------------\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_fffc71e2a29d.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_bfca769e4f05.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_a3b94eda671c.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_3159360e1322.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_421a64d3651e.png)\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_readme_51e344874dbd.png)","# zmNinja 快速上手指南\n\nzmNinja 是一款跨平台（iOS、Android、Windows、Mac、Linux）客户端，专为开源监控系统的 **ZoneMinder** 设计。它支持实时查看、事件回放、云台控制以及基于机器学习的智能报警推送。\n\n## 环境准备\n\n### 系统要求\n*   **服务端**：必须已安装并运行 **ZoneMinder** 监控系统。\n*   **客户端平台**：\n    *   **移动端**：iOS (App Store) 或 Android (Google Play)。\n    *   **桌面端**：Windows、macOS 或 Linux。\n*   **网络配置**：\n    *   ZoneMinder 必须启用 **API** 接口（zmNinja 强依赖 API 通信）。\n    *   若使用自签名 SSL 证书，需提前将证书导入移动设备信任库（Android 尤其需要）。\n    *   若使用 Basic Authentication，需在服务端进行额外配置。\n\n### 前置依赖检查\n在部署客户端前，请确保服务端 API 正常工作。访问以下地址验证（替换为您的服务器 IP）：\n`http:\u002F\u002F\u003Cyour-zm-ip>\u002Fzm\u002Fapi\u002Fhost\u002FgetVersion.json`\n如果无法返回 JSON 数据，请先解决 ZoneMinder 服务端配置问题，否则 zmNinja 无法连接。\n\n> **注意**：如需使用对象检测\u002F人脸识别推送功能，服务端还需部署 [zmeventnotification](https:\u002F\u002Fgithub.com\u002Fzoneminder\u002Fzmeventnotification) 事件服务器。\n\n## 安装步骤\n\n### 1. 移动端安装 (推荐)\n直接通过官方应用商店下载，这是最稳定且自动更新的途径。\n\n*   **iOS**:\n    访问 App Store 搜索 `zmNinja Pro` 或点击链接：\n    [Download on the App Store](https:\u002F\u002Fitunes.apple.com\u002Fus\u002Fapp\u002Fzmninja-pro\u002Fid1067914954?mt=8)\n\n*   **Android**:\n    访问 Google Play 搜索 `zmNinja` 或点击链接：\n    [Get it on Google Play](https:\u002F\u002Fplay.google.com\u002Fstore\u002Fapps\u002Fdetails?id=com.zoneminder.zmNinja)\n\n### 2. 桌面端安装 (Windows\u002FMac\u002FLinux)\n桌面版不提供应用商店版本，需手动下载二进制文件。\n\n1.  访问 GitHub Releases 页面：\n    `https:\u002F\u002Fgithub.com\u002Fzoneminder\u002FzmNinja\u002Freleases`\n2.  根据操作系统下载对应的安装包：\n    *   Windows: `.exe` 或 `.msi`\n    *   macOS: `.dmg`\n    *   Linux: `.deb` (Debian\u002FUbuntu) 或 `.rpm` (Fedora\u002FCentOS) 或 `.AppImage`\n3.  运行下载的安装包并按向导完成安装。\n\n> **提示**：国内用户若访问 GitHub 下载缓慢，可尝试使用镜像加速服务（如 `ghproxy.com`）拼接下载链接，例如：`https:\u002F\u002Fmirror.ghproxy.com\u002Fhttps:\u002F\u002Fgithub.com\u002Fzoneminder\u002FzmNinja\u002Freleases\u002Fdownload\u002F\u003C版本号>\u002F\u003C文件名>`。\n\n## 基本使用\n\n### 第一步：配置连接\n1.  启动 zmNinja 应用。\n2.  点击 **\"Add Server\"** (添加服务器)。\n3.  填写以下核心信息：\n    *   **Name**: 自定义名称（如 \"Home Camera\"）。\n    *   **URL**: ZoneMinder 的访问地址（例如 `https:\u002F\u002F192.168.1.100\u002Fzm`）。\n    *   **Username\u002FPassword**: ZoneMinder 的登录凭证。\n4.  点击 **\"Validate\"** (验证)。如果显示绿色对勾，说明 API 连接成功。\n5.  保存配置。\n\n### 第二步：实时预览\n1.  在主界面选择已添加的服务器。\n2.  进入 **\"Monitors\"** (监控点) 列表。\n3.  点击任意摄像头即可进入 **Live View** (实时视图)。\n    *   支持 H.264 硬解码流畅播放。\n    *   若摄像头支持，可在界面上使用手势进行 PTZ (云台\u002F变焦) 控制。\n\n### 第三步：查看历史与时间轴\n1.  在服务器主页选择 **\"Events\"** (事件)。\n2.  使用 **Timeline View** (时间轴视图) 快速定位特定时间的报警记录。\n3.  点击具体事件条目可回放录像片段。\n\n### 第四步：启用智能推送 (可选)\n若服务端已配置 `zmeventnotification`：\n1.  在应用设置中开启 **Push Notifications**。\n2.  系统将自动接收包含物体检测（人、车等）结果的报警推送。","一位经营小型物流仓库的店主，希望利用现有的 ZoneMinder 系统实现全天候安全监控，并在发生异常时能立即通过手机获知详情。\n\n### 没有 zmNinja 时\n- **响应严重滞后**：店主无法实时接收警报，往往要等到几小时后查看电脑回放才发现夜间有可疑人员闯入。\n- **移动端体验极差**：在手机上访问监控需依赖浏览器，界面未适配移动端，加载高清 H264 视频流经常卡顿甚至崩溃。\n- **排查效率低下**：面对长达 24 小时的录像，只能手动拖动进度条盲目寻找事件片段，难以快速定位关键画面。\n- **缺乏智能识别**：系统仅基于像素变化报警，风吹草动都会触发误报，导致店主对警报逐渐麻木，忽略真实威胁。\n\n### 使用 zmNinja 后\n- **即时精准推送**：配合事件服务器，zmNinja 能通过物体检测或人脸识别技术过滤误报，仅在确认有人入侵时向手机发送高优先级推送通知。\n- **流畅多端监控**：无论是在 iOS、Android 还是桌面端，zmNinja 均提供原生应用体验，支持流畅的 H264 实时预览和云台控制，随时随地掌握仓库动态。\n- **高效时间轴回溯**：利用内置的时间轴视图和事件列表，店主可一键跳转至报警时刻，迅速回顾前后录像，大幅缩短调查时间。\n- **灵活视图管理**：支持多画面拼接（Montage）模式，店主可在一个屏幕上同时监看仓库入口、货架区及卸货口等多个关键点位。\n\nzmNinja 将原本被动、滞后的本地监控系统，升级为主动、智能且全平台互通的现代化安防解决方案，让安全守护真正“零时差”。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FZoneMinder_zmNinja_fffc71e2.png","ZoneMinder","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FZoneMinder_d3ee2c3b.png","Worlds most popular free, scalable and featured CCTV NVR solution",null,"info@zoneminder.com","zoneminder","https:\u002F\u002Fwww.zoneminder.com\u002F","https:\u002F\u002Fgithub.com\u002FZoneMinder",[81,85,89,93,97,101,104],{"name":82,"color":83,"percentage":84},"JavaScript","#f1e05a",78.8,{"name":86,"color":87,"percentage":88},"CSS","#663399",12.7,{"name":90,"color":91,"percentage":92},"SCSS","#c6538c",5.3,{"name":94,"color":95,"percentage":96},"HTML","#e34c26",2.5,{"name":98,"color":99,"percentage":100},"Python","#3572A5",0.3,{"name":102,"color":103,"percentage":100},"Shell","#89e051",{"name":105,"color":106,"percentage":107},"Objective-C","#438eff",0.1,1083,272,"2026-04-04T15:09:49","NOASSERTION",4,"Linux, macOS, Windows, iOS, Android","未说明",{"notes":116,"python":114,"dependencies":117},"zmNinja 是一个客户端应用，本身无特定服务器硬件要求，但需配合 ZoneMinder 服务端使用。若需使用推送通知、物体检测或人脸识别功能，必须额外部署 zmeventnotification 事件服务器。不支持客户端证书；若使用自签名证书，需在移动设备（尤其是 Android）上手动安装；若使用基本认证（Basic Auth），需参考 FAQ 进行额外配置。桌面版可下载二进制文件，移动版可通过 App Store 或 Google Play 获取。",[118,119],"ZoneMinder (后端服务)","zmeventnotification (可选，用于事件通知和对象检测)",[121,14],"视频",[123,77,124,125,126,127,128,129,130,131,132,133,134,135,136],"cctv","nvr","mobile-app","desktop-app","dvr","javascript","video","ionic","angularjs","home","security","iot","machine-learning","zmninja","2026-03-27T02:49:30.150509","2026-04-07T22:50:57.882422",[140,145,150,154,159,164],{"id":141,"question_zh":142,"answer_zh":143,"source_url":144},22802,"zmNinja 运行几小时后监控画面丢失或无法刷新，需要重启应用才能恢复，这是什么原因？","这通常是由于身份验证令牌过期且未自动刷新导致的。维护者已修复了相关的认证刷新逻辑。如果您遇到此问题，请确保更新到最新版本的 zmNinja 和 zmeventserver。测试表明，修复后应用可连续运行超过 12 小时而不会出现断连。","https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fissues\u002F758",{"id":146,"question_zh":147,"answer_zh":148,"source_url":149},22803,"禁用 GMS（Google 移动服务）通知后，为什么收不到 WebSocket 推送的通知？","这通常是由于 zmeventnotification.pl 服务中存在已知的 Bug 导致的。解决方法是：1. 停止 zmeventserver 服务；2. 清空 tokens.txt 文件；3. 从官方开发分支下载最新的 zmeventnotification.pl 脚本替换旧版本；4. 在命令行手动运行该脚本（而非作为守护进程）以查看实时日志，排查连接和认证问题。更新到修复后的版本通常能解决此问题。","https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fissues\u002F468",{"id":151,"question_zh":152,"answer_zh":153,"source_url":149},22804,"如何调试 zmeventnotification.pl 的通知连接问题？","建议按以下步骤调试：1. 停止当前的 zmeventserver 服务；2. 清空 tokens.txt 文件以重置令牌；3. 下载最新版本的 zmeventnotification.pl 脚本；4. 直接在终端命令行运行该脚本（不要作为后台 daemon 运行）。这样可以直接在终端看到详细的连接日志，包括握手状态、认证结果和客户端连接数，从而定位是网络问题还是认证配置问题。",{"id":155,"question_zh":156,"answer_zh":157,"source_url":158},22805,"在 iOS 9.x 上源码构建的 zmNinja 卡在启动页（Splash Screen）无法加载，如何解决？","这是由于旧版本的 Cordova 和插件与 iOS 9 兼容性不佳导致的。解决方案是升级所有的 Cordova 插件和 Cordova 核心版本。维护者已推送了相关更新（参考 Issue #219），重新拉取最新代码并升级开发工具链后重新构建即可解决。","https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fissues\u002F212",{"id":160,"question_zh":161,"answer_zh":162,"source_url":163},22806,"通过公网访问时，zmNinja 首次启动登录失败或 API 请求返回 404 错误，是什么原因？","这通常是由于网络延迟导致应用在初始化时过早发起 API 请求，而此时后端服务尚未完全准备好或认证会话未建立。特别是在跨公网访问时，延迟会放大这个问题。建议检查服务器端 Apache 日志，确认 API 路径是否正确。如果是延迟问题，尝试多次重试登录通常能成功，或者等待后续版本中对重试机制和超时设置的优化。","https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fissues\u002F126",{"id":165,"question_zh":166,"answer_zh":167,"source_url":144},22807,"zmNinja 提示找不到云设置插件（Cloud settings plugin not found），会影响使用吗？","不会影响核心功能。这条日志信息表示系统未检测到云同步插件，因此跳过了云同步步骤。如果您不需要将配置同步到云端（如 Dropbox 或 Google Drive），可以忽略此信息。这是正常现象，特别是在桌面版或未安装额外插件的版本中。",[169,174,179,184,189,194,199,204,209,214,219,224,229,234,239,244,249,254,259,264],{"id":170,"version":171,"summary_zh":172,"released_at":173},136477,"v1.8.000","完整更新日志：https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fblob\u002Fv1.7.008\u002FCHANGELOG.md\n\n- 修复事件查看相关问题\n- 修复 Android 15 上的 EdgeToEdge 模式\n- 修复非 HTTPS 流时出现空白的问题\n- 修复因缺少 Firebase 插件而导致事件服务器集成无法正常工作的问题\n- 将负载显示格式调整为小数点后一位","2025-09-09T00:42:31",{"id":175,"version":176,"summary_zh":177,"released_at":178},136478,"v1.7.008","完整的变更日志：https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fblob\u002Fv1.7.008\u002FCHANGELOG.md\n\n- 目标 Android 版本升级至 35\n- 在不支持该功能的 ZoneMinder 实例上，不再显示“功能”选项，改而显示“捕获\u002F分析\u002F录制”选项。\n- 修复了监控组相关的问题\n- 添加了立陶宛语翻译\n- 更新了多个依赖库的版本\n- 修复了选择可见监控后 `connKey` 缺失的问题。新增 `monitor.Capturing` 情况处理。使用基于监控设备的 API 和流状态 URL。\n- 更新了常见问题解答条目\n","2025-08-20T18:10:35",{"id":180,"version":181,"summary_zh":182,"released_at":183},136479,"v1.7.007","完整的变更日志：https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fblob\u002Fv1.7.007\u002FCHANGELOG.md\n\n\n将内部 WebView 的路径从 https 切换为 http\n    \n此举解决了 Android 设备在加载来自非 HTTPS 服务器的事件和实时视图时出现的问题。","2024-03-03T21:01:59",{"id":185,"version":186,"summary_zh":187,"released_at":188},136480,"v1.7.006","完整的变更日志：https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fblob\u002Fv1.7.006\u002FCHANGELOG.md\n\n修复了由于保存监控配置时未定义而导致的 **EXCEPTION** ReferenceError: currentVersion is not defined 错误。同时修复了低于 1.37.30 版本无法加载监控的问题。","2024-01-22T22:06:52",{"id":190,"version":191,"summary_zh":192,"released_at":193},136481,"v1.7.005","完整的变更日志：https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fblob\u002Fv1.7.005\u002FCHANGELOG.md\n\n- 修复了包括事件视频无法播放在内的各种错误。","2024-01-18T16:22:43",{"id":195,"version":196,"summary_zh":197,"released_at":198},136482,"v1.7.004","完整变更日志：https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fblob\u002Fv1.7.004\u002FCHANGELOG.md\n\n- 实现对“已删除”和“捕获中”监控字段的 1.37 版本支持。\n- 修复关闭蒙太奇配置文件编辑时的错误。\n- 防止因 imageSpinnerSrc 未定义而导致 img src 被设置为 undefined。\n- 是否将登录凭据添加到 API 登录中？\n- 修复因使用 regenConnKey 而非 genConnKey 导致 connKey 变为 undefined 的问题。\n","2024-01-04T18:56:29",{"id":200,"version":201,"summary_zh":202,"released_at":203},136483,"v1.7.003","完整的变更日志：https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fblob\u002Fv1.7.003\u002FCHANGELOG.md\n\n修复蒙太奇在使用快照模式而非流式传输的问题","2023-12-08T02:41:27",{"id":205,"version":206,"summary_zh":207,"released_at":208},136484,"v1.7.002","完整的变更日志：https:\u002F\u002Fgithub.com\u002FZoneMinder\u002FzmNinja\u002Fblob\u002Fv1.7.002\u002FCHANGELOG.md\n\n（温馨提示：iOS 版本目前无法发布，因为要么需要设备的 UDID，要么我需要企业级证书才能分发可在任何设备上运行的 IPA 文件）","2023-11-28T20:08:16",{"id":210,"version":211,"summary_zh":212,"released_at":213},136485,"v1.6.009","完整的变更日志：https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.6.009\u002FCHANGELOG.md\n\n（温馨提示：由于 iOS 版本的构建要么需要设备的 UDID，要么我需要企业级证书才能分发可在任何设备上运行的 IPA 文件，因此目前无法提供 iOS 版本。）","2021-07-14T15:19:09",{"id":215,"version":216,"summary_zh":217,"released_at":218},136486,"v1.6.008","完整的变更日志：https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.6.008\u002FCHANGELOG.md\n\n","2021-04-18T21:44:54",{"id":220,"version":221,"summary_zh":222,"released_at":223},136487,"v1.6.006","Full CHANGELOG https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.6.006\u002FCHANGELOG.md","2021-02-21T15:09:05",{"id":225,"version":226,"summary_zh":227,"released_at":228},136488,"v1.6.004","Full CHANGELOG https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.6.004\u002FCHANGELOG.md\r\n\r\n- Android 10 fixes\r\n- video download fixes\r\n- Help screen errors\r\n- arm64bit support for desktop\r\n- other stuff","2020-12-11T14:58:03",{"id":230,"version":231,"summary_zh":232,"released_at":233},136489,"v1.6.000","Lots of updates and bug fixes. If you are using push notifications, this release needs ES 6.0.1 or above\r\n- multiple thumb sizes in events list\r\n- notch support\r\n- migrate to FCM v1 for better push support and newer features (future)\r\n\r\n\r\nFull CHANGELOG here https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.6.000\u002FCHANGELOG.md\r\n","2020-10-12T22:38:06",{"id":235,"version":236,"summary_zh":237,"released_at":238},136490,"v1.4.009","Full CHANGELOG https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fmaster\u002FCHANGELOG.md\r\n\r\nImplemented enhancements:\r\n- Add ability to force MJPEG streaming per monitor #951\r\n\r\nFixed bugs:\r\n-  1.4.3 encode URL seems broken at least on iOS (Event\u002F24 hr filters etc) #933","2020-07-02T13:52:31",{"id":240,"version":241,"summary_zh":242,"released_at":243},136491,"v1.4.007","Full CHANGELOG https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.4.007\u002FCHANGELOG.md\r\n\r\n**rPI users: It is most likely starting this release, only buster and above will work** (glibc versions have changed for the desktop binaries)\r\n\r\nKey features\r\n- ZM group support (needs new APIs)\r\n- Montage auto flow\r\n- Video playback skip +-10s\r\n\r\nRead more [here](https:\u002F\u002Fmedium.com\u002Fzmninja\u002F1-4-007-and-some-updates-6e67e306f221?source=collection_home---4------0-----------------------)","2020-05-18T13:37:21",{"id":245,"version":246,"summary_zh":247,"released_at":248},136492,"v1.4.005","- Fixes an issue with 1.4.004 which resulted in ZM 1.32 users not being able to fetch monitors (and other APIs)","2020-05-01T18:36:51",{"id":250,"version":251,"summary_zh":252,"released_at":253},136493,"v1.4.004","Full CHANGELOG https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.4.004\u002FCHANGELOG.md\r\n\r\nImplemented enhancements:\r\n- Add option to hide footers in montage #931\r\n- Allow automatic distribution in montage based on number of columns #930\r\n\r\nFixed bugs:\r\n- 1.4.3 encode URL seems broken on mobile devices - event filters don't work (Event\u002F24 hr filters etc) #933\r\n\r\n","2020-04-30T14:17:13",{"id":255,"version":256,"summary_zh":257,"released_at":258},136494,"v1.4.3","Full CHANGELOG https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.4.3\u002FCHANGELOG.md\r\n\r\nImplemented enhancements:\r\n- New language: Simplified Chinese #925\r\n\r\nFixed bugs:\r\n\r\n- ZM Authentication settings does not update user restricted monitors #926\r\n- iOS push registration not working (identifies as desktop) #922\r\n- Double encoded URLs #920\r\n- iPadOS 13.4 header icons\u002Fcontrols overlay OS Time\u002Fdate\u002Fbattery etc. #919\r\n\r\n","2020-04-28T16:05:43",{"id":260,"version":261,"summary_zh":262,"released_at":263},136495,"v1.3.096","- Minor maintenance updates\r\nFull CHANGELOG https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.3.096\u002FCHANGELOG.md\r\n\r\n","2020-04-01T15:21:04",{"id":265,"version":266,"summary_zh":267,"released_at":268},136496,"v1.3.091","Full CHANGELOG https:\u002F\u002Fgithub.com\u002Fpliablepixels\u002FzmNinja\u002Fblob\u002Fv1.3.091\u002FCHANGELOG.md\r\n\r\nFixed bugs:\r\n\r\nMontage screen often doesn't load monitors #908\r\n“zmninjapro” Desktop app can’t be opened in Catalina because Apple cannot check it for malicious software. #906\r\n\r\nClosed issues:\r\n\r\nZM APi not working #907\r\nChange the layout of the montage page? #905\r\nHigh value on AUTH_HASH_TTL in zoneminder gives zmninja auth timeout problems #893\r\n","2020-03-18T16:54:07"]