关于 Axint
Axint 是面向 Apple 平台的 Swift 编译与验证工具,供编码 Agent 和开发团队检查 AI 编写的 Swift。它结合静态分析与 Xcode 构建、测试证据,并可输出修复信息和签名证明。
主要功能
- 01编译 TypeScript 等输入为原生 Swift
- 02运行 Xcode 构建与测试
- 03结合静态分析和 Apple 工具结果
- 04生成修复包与签名证明
- 05协调 Agent 会话与项目上下文
适用场景
- 01在合并前验证 AI 编写的 Swift
- 02在 macOS CI 中检查构建与测试
- 03为 Apple 平台功能生成 Swift 代码
- 04在多个 Agent 间传递修复任务
MCP 相关
Axint 提供本地和托管的 MCP 服务,向兼容客户端开放编译、验证、项目脚手架、修复和工作流等工具与提示词。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.axint.ai/mcpclaude mcp add --transport http axint https://mcp.axint.ai/mcp{"mcpServers":{"axint":{"type":"http","url":"https://mcp.axint.ai/mcp"}}}在 Cursor 中打开{"servers":{"axint":{"type":"http","url":"https://mcp.axint.ai/mcp"}}}在 VS Code 中打开{"mcpServers":{"axint":{"type":"http","url":"https://mcp.axint.ai/mcp"}}}{"mcpServers":{"axint":{"serverUrl":"https://mcp.axint.ai/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
36| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| format | boolean | 否 | 为 true 时(默认值),使用 Axint 的配置通过 swift-format 处理生成的 Swift 代码。 |
| source | string | 是 | 包含 defineIntent() 调用的完整 TypeScript 源代码。必须是以 axint 导入语句开头的完整文件,不能是片段。 |
| fileName | string | 否 | 用于诊断消息的可选文件名,例如 'SendMessage.intent.ts'。 |
| emitInfoPlist | boolean | 否 | 为 true 时,返回声明该 intent 的 Info.plist XML 片段。 |
| emitEntitlements | boolean | 否 | 为 true 时,返回用于 intent 所声明内容的 .entitlements XML 片段。 |
详细介绍
AI 编写 Swift。合并前,先证明它能成功构建。
为 PR 或 CI 工作流中由 AI 编写的 Swift 设置验证关卡。
Axint 会检查 Agent 编写的 Swift,运行真实的 Xcode 构建和测试,
结合 Apple 工具核对问题,并返回签名证明,列出下一步要进行的具体修复。
无需重写项目,也不会上传源代码。
验证项目 · 配置 GitHub Actions · 试用 Cloud Preview · 连接 Agent · 文档 · 示例 · 参与贡献
默认在本地运行。开源。面向常规 Swift。
看似合理的补丁并不等于证明。
Apple 软件由一系列相互关联的契约构成。SwiftUI 状态、App Intents、Siri 和 Shortcuts 元数据、小组件、权限、隐私声明、并发、构建设置、测试和运行时行为都必须一致。看起来 正确的代码仍可能无法编译、遗漏交互,或违反平台契约。
Axint 将静态分析和 Apple 工具纳入同一个修复循环。静态检查会找出线索; Xcode 构建和测试输出则可确认问题、补充背景或将其排除。结果简洁明了,便于 下一轮 Agent 使用,同时完整日志和构建产物仍保留在磁盘上。
| 证据类别 | 含义 |
|---|---|
| 已确认 | 确定性分析,或匹配的问题证据、编译器、构建或测试证据支持该发现。 |
| 较可能 | 强有力的静态证据指出了可能的问题,但决定性的 Apple 工具证据尚不完整。 |
| 提示 | 启发式分析发现了值得检查的质量、无障碍、隐私、交互、设计或运行时问题。 |
| 已抑制 | 更有力的证据或项目本地审核与该发现相矛盾;该发现仍会保留在回执中,但不会阻止结果通过。 |
验证现有项目
npx -y -p @axint/compiler axint prove --dir /path/to/MyApp
Axint 会发现 Xcode 项目和 scheme,检查现有 Swift,运行可用的构建和测试,汇总检查结果,并将验证结果写入 .axint/proof。
默认的本地运行无需账户或配置。它不会更改 Swift、上传源代码、安装项目指令、安装记忆或 MCP 配置、应用修复,也不会重写项目。
当失败需要再处理一轮时,Axint 会返回 修复包:一种精简的修复产物,包含发现的问题、可能涉及的文件、确切的下一步操作和重新运行的命令。它还会写入一份无源代码回执:一个签名的验证文件,其中包含证据、结果、哈希值和修复信息,但不包含项目源代码。
axint prove --dir /path/to/MyApp --fix
axint receipt verify /path/to/MyApp/.axint/proof/latest.proof.json
--fix 会选择启用受支持的确定性重写,并重新运行验证循环。回执验证会检查负载完整性和内嵌的 Ed25519 签名者。除非 CI 或接收团队固定签名者指纹或受管签名密钥,否则本地签名的回执无法证明外部可信身份。
在拉取请求中使用
在安装了 Xcode 的 macOS 运行器上运行 axint prove。入门工作流和签名回执输出请参阅 GitHub Actions 设置。
通过验证需要真实的 Apple 工具证据;如果缺少测试或构建不可用,不会被悄然报告为已验证。
一套验证约定
Generate、Check、Run、Team 和 Cloud 是进入同一套约定的不同入口:结论、证据、发现的问题、后续操作和产物路径。
| 模式 | 在验证循环中的作用 |
|---|---|
| Check | 使用结合证据的诊断和适当的弃答机制,验证生成的或现有的 Swift。 |
| Run | 在本地或你自己的 Mac 运行器上协调可恢复的构建、测试、运行时和 .xcresult 证据。 |
| Generate | 将较小的约定编译为可检查的 App Intents、SwiftUI 视图、小组件、实时活动、应用外壳、元数据和测试。 |
| Team | 在多个 Agent 之间保留项目上下文、会话、文件认领、修复包和交接信息。 |
| Cloud | 在本地 Apple 工具不可用时运行托管检查并保留共享验证历史。 |
有帮助时再生成
对于现有项目,生成是可选的。当某项功能更容易用较小的约定描述时,Axint 可以生成普通 Swift,以及所选 Apple 界面所需的配套元数据。
import { defineIntent, param } from "@axint/compiler";
export default defineIntent({
name: "CreateCalendarEvent",
title: "Create Calendar Event",
description: "Creates a calendar event for the user.",
domain: "productivity",
params: {
title: param.string("Event title"),
date: param.date("Event date"),
duration: param.duration("Event duration"),
location: param.string("Location", { required: false }),
},
perform: async ({ title, date }) => ({
success: true,
message: `Created ${title} on ${date}`,
}),
});
axint compile create-calendar-event.ts --out ios/Intents/
TypeScript、Python、JSON IR 和实验性的 .axint 编写界面会降级为可检查的 Apple 原生输出。TypeScript 流水线还支持视图、小组件、应用、实时活动、App Enums、UnionValue schemas、App Shortcuts 和扩展脚手架;各界面的实现和验证边界请参阅覆盖范围图。
连接你的 Agent
Axint 为兼容标准的主机提供 MCP 服务:
{
"mcpServers": {
"axint": {
"command": "npx",
"args": ["-y", "-p", "@axint/compiler", "axint-mcp"]
}
}
}
启动一个全新的工具会话,然后调用 axint.status 和 axint.activate,确认服务与编译器已连接。
托管端点 https://mcp.axint.ai/mcp 同时支持成熟的 MCP 客户端和当前的无状态协议代际。我们会持续使用官方 SDK 客户端检查兼容性;请参阅协议兼容性契约。
对于需要在 Agent 之间委派持久任务的编排器,Axint 还提供经过身份验证的 A2A 服务。MCP 提供单项工具;A2A 则提供完整的检查、诊断、证明和修复规划任务,并支持状态查询、流式更新、取消以及不含源代码的结果产物。
npx -y -p @axint/compiler axint-a2a --project-root /path/to/MyApp
Agent Card 位于 /.well-known/agent-card.json。回环使用无需设置;非回环部署默认需要承载令牌身份验证。
MCP 工具与提示词清单
启动、恢复和检查
axint.status · axint.activate · axint.upgrade · axint.doctor ·
axint.session.start · axint.context.memory · axint.context.docs ·
axint.workflow.check
生成与发现
axint.feature · axint.project.pack · axint.project.index ·
axint.project.syncVersion · axint.suggest · axint.registry.search ·
axint.scaffold · axint.compile · axint.validate · axint.tokens.ingest ·
axint.schema.compile · axint.templates.list · axint.templates.get
检查与修复
axint.xcode.guard · axint.xcode.write · axint.fix-packet ·
axint.cloud.check · axint.repair · axint.feedback.create ·
axint.swift.validate · axint.swift.fix
协调与运行
axint.agent.install · axint.agent.advice · axint.agent.claim ·
axint.agent.release · axint.run · axint.run.status · axint.run.cancel
内置提示词
axint.quick-start · axint.project-start · axint.context-recovery ·
axint.create-widget · axint.create-intent
公开证明
- 实时产品指标由代码库重新生成。
- 真实、受 CI 门控的棕地基准测试会发布带标签的精确率、召回率和弃答案例。
- 覆盖范围将受支持的范围映射到实现、测试和证明边界。
- Apple 平台兼容性会跟踪当前 Xcode、Swift、Siri、App Intents、Foundation Models、SwiftUI、UIKit 和 App Store 的变更,并对照已实现的检查项和金丝雀测试。
- 无障碍标签证明将常见任务的无障碍证据转化为可审核的 App Store 就绪报告。
- MCP 兼容性介绍托管服务的双代际传输契约和验证路径。
- A2A介绍 Agent 间持久证明任务的委派、身份验证、任务隔离和本地执行边界。
- 架构介绍编译器、证明、MCP、A2A、Python 和运行时边界。
- 发行说明记录已发布的行为和兼容性变更。
- 安全介绍问题报告、受支持的发行版本、遥测和依赖项策略。
生态系统
| 接入方式 | 用途 |
|---|---|
| npm | CLI、TypeScript SDK、编译器、证明运行时、MCP 服务和 A2A 服务 |
| PyPI | 原生 Python 编写、验证、生成及专用的 MCP 接入界面 |
| Cloud Preview | 在任何操作系统上探索远程证明和 macOS 构建工作流 |
| 示例 | 查看简洁的 App Intent、SwiftUI 和 WidgetKit 生成示例 |
| 编辑器集成 | 连接 Xcode、VS Code、Cursor、JetBrains、Neovim 等宿主 |
参与贡献
最有价值的贡献能够提升对现有项目的处理精度、Xcode 证据、修复质量、Apple API 覆盖范围和示例的可复现性。
- 从
适合新手的议题开始。 - 认领
需要帮助的问题。 - 阅读贡献指南。
- 在 Discussions 中提问、提出建议或展示你的成果。
要求和许可证
JavaScript 软件包遵循 package.json 中声明的 Node.js 运行环境要求。只要能运行 Node,就可以生成 Swift。Xcode 构建、测试、模拟器和运行时证明需要安装兼容 Xcode 工具链的 macOS。
Axint 采用 Apache-2.0 许可证。你可以 fork、扩展并使用它进行发布。Axint 名称和视觉标识仍受保护;请参阅 NOTICE 和 TRADEMARKS.md。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。