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 serac-labs/serac --skill mobile-developmentgit clone --depth 1 https://github.com/serac-labs/seracWrote 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/serac-labs/serac/mobile-development)<a href="https://agentmods.dev/skills/serac-labs/serac/mobile-development"><img src="https://agentmods.dev/badge/skills/serac-labs/serac/mobile-development/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/serac-labs/serac/mobile-development"><img src="https://agentmods.dev/badge/skills/serac-labs/serac/mobile-development.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00045 | $0.02860 |
| Opus 5.5 | $0.00018 | $0.01144 |
| Sonnet 5.5 | $0.00009 | $0.00572 |
| Haiku 4.5 | $0.00005 | $0.00286 |
Grade A, and why
mobile-development 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 1mo 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 — 468 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Mobile Development for ServiceNow
Mobile development enables native mobile experiences with offline capabilities.
Mobile Architecture
Mobile App Configuration
├── App Screens
│ ├── List Views
│ ├── Detail Views
│ └── Card Builders
├── Push Notifications
├── Offline Rules
└── Mobile Actions
Key Tables
| Table | Purpose |
|---|---|
sys_sg_mobile_app |
Mobile app configs |
sys_sg_screen |
Mobile screens |
sys_sg_card_builder |
Card builders |
sys_push_notification |
Push configs |
sys_sg_offline_rule |
Offline rules |
Mobile App Configuration (ES5)
Create Mobile App
// Create mobile app configuration (ES5 ONLY!)
var app = new GlideRecord("sys_sg_mobile_app")
app.initialize()
app.setValue("name", "IT Support")
app.setValue("description", "Mobile app for IT support tasks")
// App settings
app.setValue("active", true)
app.setValue("version", "1.0.0")
// Branding
app.setValue("primary_color", "#1976D2")
app.setValue("secondary_color", "#FFFFFF")
app.setValue("icon", "attachment_sys_id")
// Default screen
app.setValue("home_screen", homeScreenSysId)
// Roles
app.setValue("roles", "itil")
app.insert()
Configure Mobile Screen
// Create mobile screen (ES5 ONLY!)
var screen = new GlideRecord("sys_sg_screen")
screen.initialize()
screen.setValue("name", "My Incidents")
screen.setValue("mobile_app", mobileAppSysId)
screen.setValue("type", "list") // list, record, custom
// Data source
screen.setValue("table", "incident")
screen.setValue("filter", "assigned_to=javascript:gs.getUserID()^active=true")
// Display
screen.setValue("title", "My Incidents")
screen.setValue("icon", "list")
// Ordering
screen.setValue("order", 100)
screen.insert()
Card Builder (ES5)
Create Card Configuration
// Create card builder for list display (ES5 ONLY!)
var card = new GlideRecord("sys_sg_card_builder")
card.initialize()
card.setValue("name", "Incident Card")
card.setValue("table", "incident")
// Card layout
card.setValue("primary_field", "number")
card.setValue("secondary_field", "short_description")
card.setValue("tertiary_field", "priority")
// Additional fields
card.setValue(
"fields",
JSON.stringify([
{ field: "caller_id", label: "Caller" },
{ field: "state", label: "Status" },
{ field: "opened_at", label: "Opened" },
]),
)
// Visual indicators
card.setValue("color_field", "priority")
card.setValue(
"color_mapping",
JSON.stringify({
1: "#D32F2F", // Critical - Red
2: "#F57C00", // High - Orange
3: "#FBC02D", // Moderate - Yellow
4: "#388E3C", // Low - Green
5: "#1976D2", // Planning - Blue
}),
)
card.insert()
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.
- 1mo ago First seen · 468 lines · 45 tokens per session scan A 71e0399edbe9
mobile-development is a skill published in the GitHub repository serac-labs/serac (78 stars, last pushed yesterday), licensed Apache-2.0. It adds 45 tokens to every session and 2,860 once invoked, about $0.0002 per session on Opus 5.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-30.
Other skills, from other repositories
sn-safe-write
Change ServiceNow data safely — plan first, apply only after review, verify, and know how to revert. Use whenever a create, update, upsert or delete on an instance is requested.
sn-discover
Map a ServiceNow instance into Markdown (version and counts, custom applications, per-scope tables and artefacts) with the server's own document generator. Use when asked to discover, survey, inventory or document an instance or its custom apps.
sn-uib
Review a ServiceNow UI Builder (UIB) experience or workspace page — its page map, what a change would touch, data broker security and page weight. Use when asked to explain, audit or assess a UI Builder page, workspace or experience before changing it.
sn-security
Review the security posture of a ServiceNow instance — the ACL scan, hardening properties and cross-scope access — or explain why one user can or cannot read, write, create or delete a table, record or field. Use for a security review, a hardening check, or a "why can't this user see / edit it" question.
sn-upgrade
Review ServiceNow upgrade readiness — the upgrade history, the skipped records an upgrade left unresolved, base vs customer versions of one skip, and store apps with an update. Use after a family or patch upgrade, before planning one, or when asked which skipped records to revert, keep or merge.
sn-drift
Find configuration drift between two ServiceNow instances or against a saved snapshot, or review what an update set will change. Use when comparing dev / test / prod, checking a promotion, or reviewing an update set.