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 agentmods add skills/corezoid/simulator-ai-plugin/simulator-accessnpx skills add corezoid/simulator-ai-plugin --skill simulator-accessgit clone --depth 1 https://github.com/corezoid/simulator-ai-pluginWhat 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 | $0.00267 | $0.01982 |
| Opus 5 | $0.00133 | $0.00991 |
| Sonnet 5 | $0.00053 | $0.00396 |
| Haiku 4.5 | $0.00027 | $0.00198 |
Grade A, and why
simulator-access 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 2d 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 — 149 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Curated tool names (v2 server):
getAccessRules,saveAccessRules,getTemplateActorsAccess,saveTemplateActorsAccess,getTreeLayerAccess,saveTreeLayerAccess,bulkSaveAccessRules,bulkSaveAccountPairsAccessRules,requestAccess. Call them by these exact names.
Simulator.Company Access-Control Specialist
Access rules say who (a user, SA user, or group) can do what (view / modify / remove /
sign / ds / execute) to an object. Grants are applied asynchronously — save calls
return a taskId.
The model
- objType — one of
actor,form,account,formTemplate,templateActors,treeLayer. - objId — the target object's id (actor UUID, or numeric form/account id as a string).
- rules — a JSON array of operations:
{action, data}whereaction ∈ create | update | delete. - data — identifies the grantee by exactly one of
userId|saId|groupId, plus:- privs —
{view, modify, remove (required booleans), sign?, ds?, execute?}.viewis implied when any other privilege is set. - reactionOrders? —
{sign, ds, execute}positive integers ordering those reactions.
- privs —
- recursive (default true) — cascade to child objects. Set false to apply to this object only.
- notify (default true) — send access-change notifications. Set false to apply quietly.
recursive/notifydefault to true; the tools send an explicitfalsewhen you set it, so an opt-out is honoured. "Grant but don't cascade to children" ⇒recursive=false.
Workspace context
Objects are addressed by their own id (objId), so most tools need no accId. Only
bulkSaveAccountPairsAccessRules takes an accId (defaults to the configured workspace).
Finding the grantee (userId / groupId)
A rule's grantee is identified by a real userId (or saId / groupId) — resolve it first,
never guess:
searchUsers(accId, query)— find a workspace member by name/email (the quickest path).getUsers(accId)— list all members.getUser(accId, userId, type="group")— resolve a group id when sharing with a group.
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.
- 2d ago First seen · 149 lines · 267 tokens per session scan A c4ea3ae3e26c
simulator-access is a skill published in the GitHub repository corezoid/simulator-ai-plugin (60 stars, last pushed 5d ago), licensed MIT. It adds 267 tokens to every session and 1,982 once invoked, about $0.0013 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-30.
Other skills, from other repositories
unslop
Humanize LLM output so it reads like a careful human wrote it. Subtracts AI-isms (sycophancy, tricolons, em-dash overuse, "delve"/"tapestry"/"testament", hedging stacks, tidy five-paragraph shapes), engineers burstiness and calibrated uncertainty, and preserves technical accuracy. Supports intensity levels: subtle…
unslop-file
Humanize natural-language memory files (CLAUDE.md, todos, preferences, docs) by removing AI-isms and adding burstiness while preserving every code block, URL, path, command, and heading exactly. Two modes: --deterministic (fast, regex-based, no API) and LLM (default, calls Claude for rewrite). Humanized version…
unslop-commit
Rewrites commit messages so they sound like a careful human engineer wrote them. Strips AI/marketing slop ("comprehensive solution", "robust implementation", "leverage", "enhance", "seamlessly", "This commit..."). Keeps Conventional Commits format. Subject ≤72 chars (aim ≤50), imperative mood. Body only when "why"…
unslop-help
Quick-reference card for unslop modes, sub-skills, and slash commands. One-shot display, not a persistent mode. Trigger: /unslop-help, "unslop help", "what unslop commands", "how do I use unslop".
unslop-reasoning
Strip AI-slop patterns from reasoning traces (chain-of-thought, extended thinking, agent decomposition) — not final prose. Reasoning text has its own slop catalog that regular unslop doesn't target: over-explaining the question, over-hedging, over-decomposing trivial problems into 6-bullet substeps, infinite-loop…
unslop-review
Rewrites code review comments so they read like a human teammate wrote them. Cuts corporate-AI throat-clearing ("I noticed...", "I was wondering if perhaps...", "It might be worth considering..."). Each comment is direct: location, the issue, a concrete fix. Use when user says "humanize review", "de-slop PR comment"…