Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add bmob/agent-skills --skill bmob-database-iosgit clone --depth 1 https://github.com/bmob/agent-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/bmob/agent-skills/bmob-database-ios)<a href="https://agentmods.dev/skills/bmob/agent-skills/bmob-database-ios"><img src="https://agentmods.dev/badge/skills/bmob/agent-skills/bmob-database-ios.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00218 | $0.02786 |
| Opus 5 | $0.00109 | $0.01393 |
| Sonnet 5 | $0.00044 | $0.00557 |
| Haiku 4.5 | $0.00022 | $0.00279 |
Grade A, and why
bmob-database-ios scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 243 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Bmob Database — iOS Native SDK
iOS SDK 名为 BmobSDK,是 Objective-C 编写的 framework,Swift 项目通过 Bridging Header 桥接使用。SDK 数据模型以 BmobObject 为核心,不需要为每个表写子类(与 Android 不同)。
核心原则
1. 安装 SDK — 强推 CocoaPods:
# Podfile
target "你的项目名称" do
platform :ios, "15.6"
use_frameworks!
pod 'BmobSDK'
end
pod install
装完后只打开
.xcworkspace,不要再打开.xcodeproj,否则找不到 Pod 引入的库。
也可手动导入 BmobSDK.xcframework,并链接以下系统库(详见 references/install.md)。
2. Swift 必须桥接: 新建任意 .m 文件让 Xcode 弹"Create Bridging Header",然后在生成的 项目名-Bridging-Header.h 加:
#import <BmobSDK/Bmob.h>
3. 初始化(OC) — AppDelegate.m:
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// release 上线时启用备案域名,必须在 registerWithAppKey 之前
// [Bmob resetDomain:@"https://你的备案域名"];
[Bmob registerWithAppKey:@"你的Application ID"];
return YES;
}
3. 初始化(Swift / SwiftUI) — AppApp.swift:
@main
struct MyApp: App {
init() {
Bmob.register(withAppKey: "你的Application ID")
}
var body: some Scene { WindowGroup { ContentView() } }
}
4. 域名重置(上线必做): 工信部要求正式上线必须用备案域名:
Bmob.resetDomain("https://sdk.yourapp.com") // 必须在 register 前
Bmob.register(withAppKey: "...")
OC 端用 [Bmob resetDomain:@"https://sdk.yourapp.com"];。
5. 不要硬编码 Master Key 到 App bundle。客户端只用 Application ID(必要时配 Secret Key + 加密授权)。
安全清单
- release 关闭调试输出:测试期
[Bmob setDebug:YES],上架前删掉。 - App Transport Security(ATS):如果备案域名是 HTTP(不推荐),需要在
Info.plist加NSAppTransportSecurity → NSAllowsArbitraryLoads = YES,但 App Store 审核可能拒;尽量用 HTTPS。 - 写入的表必须配 ACL:否则任意用户可改任意行。
- Bridging Header 不要 commit 真实 AppKey:用配置文件 / xcconfig / environment 注入。
- release 前替换备案域名:参见上面"4. 域名重置"。
常见问题
跨平台 Q&A:shared/faq.md。
反模式
见 shared/anti-patterns.md。本端重点:勿 commit 真实 AppKey;ATS 尽量 HTTPS。
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/install.md 4.3 KB
- references/pointer-and-relation.md 2.8 KB
- references/query.md 4.0 KB
- references/snippets/develop-doc-objc--bql缓存策略-01.txt 534 B
- references/snippets/develop-doc-objc--relation约束关联对象值查询-01.txt 471 B
- references/snippets/develop-doc-objc--上传文件方法-01.txt 54 B
- references/snippets/develop-doc-objc--上传文件方法-02.txt 612 B
- references/snippets/develop-doc-objc--上传文件进度-01.txt 105 B
- references/snippets/develop-doc-objc--上传文件进度-02.txt 573 B
- references/snippets/develop-doc-objc--下载文件-01.txt 310 B
- references/snippets/develop-doc-objc--以分片的方式上传文件-01.txt 68 B
- references/snippets/develop-doc-objc--以分片的方式上传文件-02.txt 562 B
- references/snippets/develop-doc-objc--使用索引和对象key修改数组中的对象-01.txt 211 B
- references/snippets/develop-doc-objc--修改关系-01.txt 535 B
- references/snippets/develop-doc-objc--修改关联关系-01.txt 557 B
- references/snippets/develop-doc-objc--修改密码-01.txt 478 B
- references/snippets/develop-doc-objc--兼容ios9-01.txt 90 B
- references/snippets/develop-doc-objc--兼容ios9-02.txt 311 B
- references/snippets/develop-doc-objc--内置函数-01.txt 388 B
- references/snippets/develop-doc-objc--分组统计-01.txt 454 B
- references/snippets/develop-doc-objc--分组统计-02.txt 595 B
- references/snippets/develop-doc-objc--分组统计-03.txt 26 B
- references/snippets/develop-doc-objc--分组统计-04.txt 11 B
- references/snippets/develop-doc-objc--分页查询-01.txt 53 B
- references/snippets/develop-doc-objc--分页查询-02.txt 34 B
- references/snippets/develop-doc-objc--列值是否存在-01.txt 176 B
- references/snippets/develop-doc-objc--列值是否存在-02.txt 71 B
- references/snippets/develop-doc-objc--列值是否存在-03.txt 80 B
- references/snippets/develop-doc-objc--创建bmobobject对象-01.txt 637 B
- references/snippets/develop-doc-objc--删除关系-01.txt 28 B
- references/snippets/develop-doc-objc--删除关系-02.txt 344 B
- references/snippets/develop-doc-objc--删除关联关系-01.txt 552 B
- references/snippets/develop-doc-objc--删除数据-01.txt 332 B
- references/snippets/develop-doc-objc--删除数组数据-01.txt 70 B
- references/snippets/develop-doc-objc--删除数组数据-02.txt 193 B
- references/snippets/develop-doc-objc--删除文件-01.txt 179 B
- references/snippets/develop-doc-objc--删除文件-02.txt 413 B
- references/snippets/develop-doc-objc--原子计数器-01.txt 748 B
- references/snippets/develop-doc-objc--原子计数器-02.txt 235 B
- references/snippets/develop-doc-objc--取消监听功能-01.txt 151 B
- references/snippets/develop-doc-objc--取消监听功能-02.txt 151 B
- references/snippets/develop-doc-objc--地理位置对象-01.txt 114 B
- references/snippets/develop-doc-objc--地理位置对象-02.txt 47 B
- references/snippets/develop-doc-objc--地理查询-01.txt 348 B
- references/snippets/develop-doc-objc--地理查询-02.txt 524 B
- references/snippets/develop-doc-objc--基本bql查询-01.txt 282 B
- references/snippets/develop-doc-objc--基本bql查询-02.txt 284 B
- references/snippets/develop-doc-objc--复合查询-01.txt 151 B
- references/snippets/develop-doc-objc--复合查询-02.txt 22 B
- references/snippets/develop-doc-objc--复合查询-03.txt 166 B
- references/snippets/develop-doc-objc--复合查询-04.txt 182 B
- references/snippets/develop-doc-objc--复合查询-05.txt 180 B
- references/snippets/develop-doc-objc--复合查询-06.txt 320 B
- references/snippets/develop-doc-objc--复合查询-07.txt 509 B
- references/snippets/develop-doc-objc--复合查询-08.txt 667 B
- references/snippets/develop-doc-objc--复合查询-09.txt 604 B
- references/snippets/develop-doc-objc--子查询-01.txt 62 B
- references/snippets/develop-doc-objc--子查询-02.txt 106 B
- references/snippets/develop-doc-objc--子查询-03.txt 71 B
- references/snippets/develop-doc-objc--子查询-04.txt 65 B
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 243 lines · 218 tokens per session scan A 71df51c0c681
bmob-database-ios is a skill published in the GitHub repository bmob/agent-skills (3 stars, last pushed 4d ago), licensed MIT. It adds 218 tokens to every session and 2,786 once invoked, about $0.0011 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
sf-schema
Scaffold custom objects, fields, validation rules, permission sets, and other schema metadata as SFDX source XML. Use when asked to create objects, custom fields, permission sets, validation rules, or generate metadata XML. Activate on mentions of "custom object", "custom field", "permission set", "validation rule"…
sf-soql
Build and optimize SOQL queries including relationship queries, aggregate functions, polymorphic TYPEOF, and selective filters. Use when asked to write queries, debug slow queries, optimize existing SOQL, or enforce query security. Activate on mentions of "SOQL", "query", "SELECT", "WHERE", "aggregate", "relationship…
core-data
Build, review, or improve Core Data persistence in apps that have not adopted SwiftData. Use when working with NSManagedObject subclasses, NSFetchedResultsController for list-driven UI, NSBatchInsertRequest / NSBatchDeleteRequest / NSBatchUpdateRequest for bulk operations, NSPersistentHistoryChangeRequest for…
sf-data
Handle Salesforce data operations including data migration, sandbox seeding, bulk data loading, data export, and data cleanup. Use when asked about data migration, sandbox seeding, bulk data loading, CSV import/export, or moving data between orgs. Activate on mentions of "data migration", "sandbox seed", "bulk load"…
swiftdata
Implement, review, or improve data persistence using SwiftData. Use when defining @Model classes with @Attribute, @Relationship, @Transient, #Unique, or #Index; when querying with @Query, #Predicate, FetchDescriptor, or SortDescriptor; when configuring ModelContainer and ModelContext for SwiftUI or background work…
swiftdata-persistence
Design and review SwiftData schemas, queries, migrations, isolation, CloudKit assumptions, offline behavior, and deterministic persistence tests.