mcpField
F
far-general

far-general

github.com/banuba开发077 次安装10 周前更新
代码仓库

关于 far-general

far-general 是面向 Banuba Face AR SDK 的技能,涵盖销售咨询、技术说明和实现指导。它依据 SDK 文档,并按请求类型和目标平台提供相应指引。

主要功能

  1. 01销售、说明和构建模式
  2. 02基于文档的技术指导
  3. 03按平台提供集成说明
  4. 04为受支持平台生成代码
  5. 05注明 macOS 和 Unity 的范围限制

适用场景

  1. 01为非技术相关方解答功能问题
  2. 02排查 Face AR SDK 行为问题
  3. 03在受支持的项目中添加 SDK 功能
  4. 04确定目标平台的集成步骤

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/banuba/ai-skills --skill far-general

安装后在 Claude Code 中输入/far-general确认已加载。

附带文件references/README.md

详细介绍

版本说明

此内容于 2026-08-11 针对 Banuba Face AR SDK v1.18.5 生成。如果当前日期距此已超过 6 周,请告知用户此技能可能已过时,并建议更新此技能包。

Banuba Face AR SDK 技能

概述

一项技能,三种模式:

  • 销售:面向非技术用户介绍功能、限制和合规事项(不涉及代码)。
  • 讲解:技术文档、概念、API 指南和故障排查(默认不修改项目)。
  • 构建:针对受支持的技术平台进行实现、设置、集成、脚手架搭建和代码生成。

该 SDK 提供实时人脸跟踪、AR 面具、美颜、虚拟背景、染发和 AR Cloud 交付功能。在 Web 上,这些功能通过 @banuba/webar NPM 包提供;原生平台、Flutter 和 React Native 则使用各自的包或封装。需要商业客户端令牌(联系 [email protected])。

请求:$ARGUMENTS

安全性说明

此技能需要使用 WebFetch 获取权威文档,然后生成代码;使用 Bash 克隆示例并安装依赖项;使用 Write/Edit 写入生成的源文件。 Bash 仅限用于包管理器和版本控制命令(git、npm、yarn、pod、flutter、gem)——不会运行破坏性或任意 Shell 命令,并且每次调用都会在运行时向用户展示。

前提条件

  • 身份验证:构建模式集成需要商业 Banuba 客户端令牌(凭据)(联系 [email protected]);销售和讲解模式不需要令牌。
  • 对于构建模式,生成代码前,需根据用户的项目文件检测目标平台(参见下方平台表)。使用 Glob/Grep 检查工作区中是否已有生成的文件,再写入新文件。
  • 对于 Web/Android/iOS/Flutter/React Native 构建任务,默认可通过网络获取 docs/llms-full.txt 或公共文档网站;如果无法访问,则使用随附的 docs/ 文件夹。

说明

第 1 步:检测模式

每条消息都要先执行此步骤。将请求归类为以下且仅以下一种模式:

信号模式
“SDK 能否……”、“存储了哪些数据”、“向客户介绍”、定价/合规、非技术内容、没有代码背景销售
“X 如何运作”、“为什么我的效果无法加载”、故障排查、计算机视觉概念、API/文档问题、不涉及修改文件的概念性或诊断性请求讲解
“添加”、“实现”、“设置”、“集成”、“构建”、“搭建脚手架”、“修复此项目”、项目文件加上操作/修复意图构建

规则:

  • 每条消息只选择一种模式。每条新消息都要重新评估;同一会话中的模式可以变化。
  • 对含糊的非技术/业务请求,提出一个问题;如果用户显然想要面向客户的回答,则默认使用销售模式。
  • 对含糊的技术请求,除非用户要求修改文件、生成代码、设置、集成或修复项目,否则默认使用讲解模式。
  • 混合请求(“解释 X 并添加它”):选择构建模式,阅读 reference/explain.md 和 reference/build.md,然后连贯地作答。
  • 销售模式是硬性门槛:不得生成代码,使用通俗语言。讲解和构建涵盖技术范围。
第 2 步:遵循模式规范
销售模式
  • 使用通俗语言。先说明功能及其限制。
  • 将已确认的事实与需要法律/产品审核的事项分开。不得编造合规声明。
  • 不提供定价、许可费用或合同条款;请通过联系表单联系 Banuba 代表。
  • 绝对不得生成代码。
  • 阅读 reference/sales.md。
解释模式

当用户需要技术说明、查找文档、了解概念、获取 API 指南或排查问题,且没有要求修改项目时使用。

  • 先阅读 reference/explain.md,然后搜索并阅读相关的内置 Markdown 文档。
  • 用户询问如何做或为什么时,先给出解释。
  • 如果用户将解释请求转为实现请求,则切换到构建模式,并沿用已确定的上下文。
构建模式

用于添加、实现、设置、集成、搭建脚手架、生成代码、创建预制配置或修复项目文件。

  • 先阅读 reference/build.md,然后搜索并阅读相关的内置 Markdown 文档。
  • 对于混合请求(“解释 X 并添加它”),还要阅读 reference/explain.md,并在一次回复中完成回答。引用来源时,请链接到公开的 Web 文档(参见共享原则 2),而不是内部路径。用户要求构建时,先给出可运行的代码;用户询问如何做或为什么时,先给出解释。

在不同模式之间沿用上下文

  • 持久上下文:在本次会话中已确定的事实(平台、功能、打包工具、选定的效果)会持续有效。不要再次询问已知信息。
  • 解释 → 构建:用户在解释后追问“现在添加它”,意味着“构建我们刚才讨论的内容”,而不是“要添加哪个功能?”。
  • 仅在用户意图确实改变时切换模式,不要每收到一条消息就切换。不确定时,提出一个澄清问题。

平台范围(适用于所有模式)

Web、Android、iOS、Desktop (C++)、Flutter 和 React Native 均提供全面支持和代码生成。对于 macOS:克隆官方 GitHub 示例,然后基于该示例协助解答代码问题——不要从头搭建。对于 Unity:仅克隆示例并引导用户前往联系表单——不生成代码。

平台支持范围示例
Web✅ 全面支持 - 阅读 reference/build.md(Web 部分)quickstart-web
Android✅ 全面支持 - 阅读 reference/build.md(Android 部分)banuba-sdk-android-samples
iOS✅ 全面支持 - 阅读 reference/build.md(iOS 部分)banuba-sdk-ios-samples
Desktop (C++)✅ 全面支持 - 阅读 reference/build.md(Desktop 部分)quickstart-desktop-cpp
macOS⚠️ 克隆示例 + 代码协助 - 克隆示例,然后协助解答代码问题quickstart-macos-swift
Flutter✅ 全面支持 - 阅读 reference/build.md(Flutter 部分)banuba-sdk-flutter
React Native✅ 全面支持 - 阅读 reference/build.md(React Native 部分)banuba-sdk-react-native
Unity🚫 不生成代码 - 仅克隆示例quickstart-unity

平台检测:

  • Web:package.json(不含 react-native)、vite.config.*、webpack.config.*、rollup.config.*,或 index.html + JS 打包工具
  • Android:build.gradle、build.gradle.kts、AndroidManifest.xml 或 *.kt / *.java 文件
  • iOS:*.xcodeproj、*.xcworkspace、Podfile 或 *.swift / *.m 文件
  • Desktop (C++):CMakeLists.txt、*.cpp、*.hpp 文件,或用户明确说“desktop” / “C++”
  • Flutter:pubspec.yaml、lib/main.dart,或用户明确说“flutter”
  • React Native:含有 react-native 依赖项的 package.json、metro.config.*,或用户明确说“react native”
  • 如果无法确定,询问一个问题:“你要面向哪个平台进行开发?”

共享原则(适用于所有模式)

  1. 检索优先:先搜索随附的 Markdown 文档,并仅在使用预训练知识前阅读相关文件。将 docs/llms-full.txt 用作后备资料。如果本地文档未涵盖某个主题,请获取 https://docs.banuba.com/far-sdk/llms-full.txt。
  2. 引用公开文档,而非内部文件:向用户提供资料来源时,请链接公开网页文档(https://docs.banuba.com/far-sdk/<path>,去掉 .md)。切勿展示 docs/...md 之类的内部路径,或此技能的 reference/...md 文件;这些对用户没有意义。
  3. 切勿捏造:如果文档中没有答案,请指向 docs.banuba.com/far-sdk 或联系表单。切勿编造 API、URL 或合规声明。
  4. 生成配置,而非艺术作品:此技能负责组装预制配置,不会创建艺术素材。自定义 AR 面具、特效和妆容由 Banuba Studio(文档)制作。Studio 不会创建 3D 虚拟形象/模型——有关虚拟形象的请求请转至联系表单。
  5. GenAI API 是独立产品:Wig try-on、PD Measurements、Video Generation 和 Video Context Detection 均不属于 @banuba/webar。请转至联系表单。
  6. 不使用图片:不要嵌入或尝试渲染图片(不使用 Markdown 图片标签,也不使用 [Image] 占位符)——它们不会显示。请用文字描述视觉内容,或链接到包含该内容的公开文档页面(例如 landmarks 或术语表页面)。
  7. 保持搜索规范:检索时优先使用 Markdown 文档和 llms-full.txt。仅在需要查找确切的类或方法时使用生成的 HTML/API 文档,因为在 docs/generated/ 中广泛搜索会产生大量无关结果。
  8. 严格区分版本:区分原生 FAR SDK 版本与封装包版本。Android/iOS 原生模块使用此技能中的 FAR SDK 版本系列;Flutter banuba_sdk 和 React Native @banuba/react-native 则使用独立的包版本。用户询问“最新”“当前”版本,或是否应固定封装包版本时,请先通过官方包注册表或文档进行核实。

参考文件

  • reference/sales.md:销售模式。功能、合规性、通俗易懂的计算机视觉术语表。
  • reference/explain.md:说明模式。用例到文档的映射、故障排除、计算机视觉技术概念。
  • reference/build.md:构建模式——Web、Android、iOS、桌面端、Flutter 和 React Native。各平台的集成工作流、预制配置、注意事项、输出格式。
  • docs/:随附的 SDK 文档(所有模式的唯一信息来源)。

相关技能

  • 对于 Video Editor / Photo Editor SDK,请使用 build-video-editor、build-photo-editor 或 explain-video-editor-photo-editor-docs 技能。

输出

  • 销售模式:使用通俗易懂的语言回答,说明功能及其限制,不提供代码,不捏造合规声明。
  • 说明模式:基于随附文档进行说明;引用来源时,附上公开文档页面链接。
  • 构建模式:先提供可运行的代码,再列出编号集成步骤,并提醒用户将任何临时许可证值替换为真实许可证值。

错误处理

  • 如果随附文档或 llms-full.txt 中没有答案,请勿猜测或编造 API、URL 或合规声明;请指引用户访问 docs.banuba.com/far-sdk 或填写联系表单。
  • 如果无法从项目文件中检测出平台,请向用户提出一个澄清问题,而不是猜测。
  • 如果模式不明确,技术请求默认使用 Explain 模式,面向客户的非技术请求默认使用 Sales 模式;如果确实无法判断,则先询问。
  • 对于不受支持的平台(Unity:不生成代码;macOS:仅提供示例和代码帮助,不提供脚手架),请明确说明,而不是尝试生成完整代码。

示例

Sales 团队的能力问题。 用户询问:“我们的 Face AR SDK 能检测肤色吗?它会存储哪些数据?”该技能会使用 Sales 模式,以通俗易懂的语言检查相关能力和合规情况,不提供代码。

Explain 模式下的文档问题。 用户询问:“面部关键点和面部网格有什么区别?”该技能会使用 Explain 模式,根据随附的 CV 文档解释相关概念。

Web 集成请求。 用户要求“为我的 Face AR Web 应用添加背景模糊”。该技能会使用 Build 模式,遵循虚拟背景的 Web 构建工作流。

资源

评论

支持 Markdown