Agent skill

Apple Notes Enterprise Rbac

by jeremylongshore in jeremylongshore/tons-of-skills-marketplace

Implement access control for multi-user Apple Notes automation.

MITAuto-check passedBackend & APIs

Install Apple Notes Enterprise Rbac

skills CLI
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill apple-notes-enterprise-rbac -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jeremylongshore/tons-of-skills-marketplace apple-notes-enterprise-rbac --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.curated/apple-notes-enterprise-rbac .claude/skills/apple-notes-enterprise-rbac && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
apple-notes-enterprise-rbac
GitHub stars
2.8k
Token cost
~1.6k tokens
SKILL.md length
410 words
Files
1
Skills in repo
3,342
Repo updated
First seen
Licence
MIT

At a glance

Implement access control for multi-user Apple Notes automation.

  • Works in 4 steps: Authenticate and authorize every… → Use stable configuration identifiers… → Apply least privilege: separate read,… → …
  • Tasks that involve Authorization and RBAC
  • SKILL.md covers Overview, Prerequisites, Instructions and Account-Based Access Control, plus 8 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Apple Notes Enterprise Rbac is an agent skill from jeremylongshore/tons-of-skills-marketplace. Implement access control for multi-user Apple Notes automation. Trigger: "apple notes access control".

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Designed for Claude Code

It sits in Backend & APIs, covering Authorization and RBAC. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.

When your agent uses it

  • Tasks that involve Authorization and RBAC

Example prompts

  • “apple notes access control”
  • “/apple-notes-enterprise-rbac”

Requirements

  • Compatibility (from SKILL.md): Designed for Claude Code
  • Pre-approved tools (allowed-tools): Read, Write, Edit, Bash(osascript:*), Grep

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Authenticate and authorize every automation action before invoking JXA, default-deny unknown roles, accounts, folders, and operations.
  2. Use stable configuration identifiers rather than account or folder names in telemetry; store mappings in a protected configuration service.
  3. Apply least privilege: separate read, write, delete, and export approvals, and require elevated review for destructive operations.
  4. Audit authorization decisions and periodically test revocation; TCC consent does not replace application authorization.

What it can do on your machine

Read from SKILL.md and the folder at commit cfae287. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Edit
    • Bash(osascript:*)
    • Grep

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are javascript, typescript and bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • developer.apple.com
    • support.apple.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code

    From compatibility in the SKILL.md frontmatter.

Context cost

Apple Notes Enterprise Rbac loads about 1.6k tokens when it runs. Until then it costs about 33 tokens; SKILL.md has 410 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~33
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jeremylongshore/tons-of-skills-marketplace at commit cfae287, republished under its MIT licence (© jeremylongshore). 410 words, ~1,649 tokens.

Download SKILL.mdSave it as .claude/skills/apple-notes-enterprise-rbac/SKILL.md (or your agent's skills folder).
name
apple-notes-enterprise-rbac
description
Implement access control for multi-user Apple Notes automation. Trigger: "apple notes access control".
allowed-tools
Read, Write, Edit, Bash(osascript:*), Grep
compatibility
Designed for Claude Code
version
1.6.0
license
MIT
author
Jeremy Longshore <jeremy@intentsolutions.io>
tags
saas, macos, apple-notes, automation

Apple Notes Enterprise RBAC

Overview

Apple Notes has no built-in role-based access control (RBAC). In enterprise environments with Managed Apple IDs via Apple Business Manager, administrators control Notes access through MDM (Mobile Device Management) profiles. For multi-user automation scenarios, implement access control at the automation layer using account separation, folder-based permissions, and shared folder restrictions. iCloud Shared Notes (macOS Ventura+) provide basic collaboration, but fine-grained permissions (read-only vs edit) must be enforced in your wrapper code.

Prerequisites

  • An identity source, role owner, approval workflow, and audit retention policy external to Notes.app.
  • A reviewed allowlist mapping stable automation identities to explicitly configured account/folder scopes.
  • MDM and legal/security approval for managed-device controls; folder conventions alone are not an authorization boundary.

Instructions

  1. Authenticate and authorize every automation action before invoking JXA, default-deny unknown roles, accounts, folders, and operations.
  2. Use stable configuration identifiers rather than account or folder names in telemetry; store mappings in a protected configuration service.
  3. Apply least privilege: separate read, write, delete, and export approvals, and require elevated review for destructive operations.
  4. Audit authorization decisions and periodically test revocation; TCC consent does not replace application authorization.

Account-Based Access Control

javascript
// Apple Notes supports multiple accounts (iCloud, Gmail, On My Mac)
// Use account separation as the primary access boundary
const Notes = Application("Notes");

function getAccountByName(name) {
  const account = Notes.accounts().find(a => a.name() === name);
  if (!account) throw new Error(`Account not found: ${name}`);
  return account;
}

// Audit all accounts and their folder structures
function auditAccounts() {
  return Notes.accounts().map(a => ({
    name: a.name(),
    folders: a.folders().map(f => f.name()),
    noteCount: a.notes().length,
  }));
}

// Restrict automation to a specific account only
const ALLOWED_ACCOUNT = "iCloud";
function safeGetNotes() {
  const account = getAccountByName(ALLOWED_ACCOUNT);
  return account.notes();
}

Folder-Based Permission Model

typescript
// src/rbac/permissions.ts
interface FolderPermission {
  folder: string;
  allowedRoles: string[];
  operations: ("read" | "write" | "delete")[];
}

const FOLDER_PERMISSIONS: FolderPermission[] = [
  { folder: "Public",    allowedRoles: ["viewer", "editor", "admin"], operations: ["read"] },
  { folder: "Team",      allowedRoles: ["editor", "admin"],          operations: ["read", "write"] },
  { folder: "Sensitive",  allowedRoles: ["admin"],                    operations: ["read", "write", "delete"] },
];

function checkPermission(role: string, folder: string, op: "read" | "write" | "delete"): boolean {
  const perm = FOLDER_PERMISSIONS.find(p => p.folder === folder);
  if (!perm) return false;
  return perm.allowedRoles.includes(role) && perm.operations.includes(op);
}

MDM-Based Enforcement

bash
# Apple Business Manager + MDM profiles can:
# 1. Disable Notes.app entirely on managed devices
# 2. Restrict iCloud Notes sync (force "On My Mac" only)
# 3. Enforce Managed Apple IDs (separate from personal)

# Check if device is MDM-managed
profiles status -type enrollment 2>/dev/null

# Check Notes restrictions via MDM profile
profiles list -verbose 2>/dev/null | grep -A5 "com.apple.notes"

# Managed Apple IDs cannot:
# - Share notes with personal Apple IDs
# - Use third-party account types (Gmail, Yahoo)
# - Access notes outside the organization's domain

Shared Folder Audit

javascript
// Audit shared notes (macOS Ventura+ with iCloud sharing)
const Notes = Application("Notes");
const allNotes = Notes.defaultAccount.notes();

// Notes shared via iCloud show as shared in the UI
// JXA does not expose sharing metadata directly
// Workaround: check folder names for "Shared" convention
const sharedFolders = Notes.defaultAccount.folders()
  .filter(f => f.name().toLowerCase().includes("shared"));

sharedFolders.forEach(f => {
  console.log(`Shared folder: ${f.name()} — ${f.notes().length} notes`);
});
Show full SKILL.md (210 more words)Show less

Error Handling

IssueCauseSolution
Cannot access Managed Apple ID notesPersonal automation on corporate deviceUse the managed account explicitly via getAccountByName()
Shared folder not visibleiCloud sharing not accepted by recipientRecipient must accept share invitation in Notes.app
MDM blocks osascriptDevice restriction profile activeRequest IT to allow automation; use Shortcuts as alternative
Folder permissions bypassJXA has full access once TCC approvedEnforce permissions in your wrapper code, not at OS level
Multiple accounts create confusionNotes from wrong account modifiedAlways specify account explicitly; never use defaultAccount in multi-user

Output

The RBAC layer returns an allow/deny decision, policy version, opaque subject and scope identifiers, and a redacted audit event. It does not treat account separation, folder names, or Notes sharing UI state as proof of authorization.

Examples

Before a delete request, resolve the caller through the identity source, require a role with the separately approved delete permission, verify the configured scope, and write an audit event before invoking Notes. A shared folder labelled Public still receives a deny decision unless the protected policy explicitly allows the caller and operation.

Resources

Next Steps

For multi-account environment configuration, see apple-notes-multi-env-setup. For security hardening, see apple-notes-security-basics.

© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/.curated/apple-notes-enterprise-rbac of jeremylongshore/tons-of-skills-marketplace.

Open the folder on GitHubat commit cfae287

Compare with similar skills

Apple Notes Enterprise Rbac next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Apple Notes Enterprise Rbac compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Apple Notes Enterprise Rbac this skilljeremylongshore/tons-of-skills-marketplace2.8k—~1.6kAutomated safety check: PassMIT
Configuring Horizoncoollabsio/coolify63k4 repos~898Automated safety check: PassMIT
K8s Security PoliciesCybereason-Public/owLSM28012 repos~2kAutomated safety check: PassGPL-2.0
Payloadpayloadcms/payload45k5 repos~6.2kAutomated safety check: PassMIT
Convex Setup Authspokvulcan/poker-planning1158 repos~1.8kAutomated safety check: PassMIT
Cognitoitsmostafa/aws-agent-skills1.2k1 repos~2.3kAutomated safety check: PassMIT

Similar skills

  • Configuring Horizon

    coollabsio/coolify

    A skill your agent uses whenever the user mentions Horizon by name in a Laravel context.

    63k GitHub starsUsed in 4 repos~898 tokens
    Backend & APIsAuto-check passed
  • K8s Security Policies

    Cybereason-Public/owLSM

    Comprehensive guide for implementing NetworkPolicy, PodSecurityPolicy, RBAC, and Pod Security Standards in Kubernetes.

    280 GitHub starsUsed in 12 repos~2k tokens
    Backend & APIsAuto-check passed
  • Payload

    payloadcms/payload

    A skill your agent uses when working with Payload projects (payload.config.ts, collections, fields, hooks, access control, Payload API).

    45k GitHub starsUsed in 5 repos~6.2k tokens
    Backend & APIsAuto-check passed
  • Convex Setup Auth

    spokvulcan/poker-planning

    Sets up Convex auth, identity mapping, and access control. An agent skill from spokvulcan/poker-planning.

    115 GitHub starsUsed in 8 repos~1.8k tokens
    Backend & APIsAuto-check passed
  • Cognito

    itsmostafa/aws-agent-skills

    AWS Cognito user authentication and authorization service. An agent skill from itsmostafa/aws-agent-skills.

    1.2k GitHub starsUsed in 1 repo~2.3k tokens
    Backend & APIsAuto-check passed
  • Abp Authorization

    abpframework/abp

    ABP permission system - PermissionDefinitionProvider, [Authorize] attribute, CheckPolicyAsync, IsGrantedAsync, ICurrentUser, IPermissionManager, multi-tenancy side.

    14k GitHub stars~1.3k tokensUpdated yesterday
    Backend & APIsAuto-check passed

More from jeremylongshore/tons-of-skills-marketplace

All 3,342 skills in this repo
  • Performing Security Code Review

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.

    2.8k GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check: notes
  • Adapting Transfer Learning Models

    jeremylongshore/tons-of-skills-marketplace

    Build this skill automates the adaptation of pre-trained machine learning models using transfer learning techniques.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Agent Context Loader

    jeremylongshore/tons-of-skills-marketplace

    Execute proactive auto-loading: automatically detects and loads agents.md files.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Aggregating Performance Metrics

    jeremylongshore/tons-of-skills-marketplace

    Aggregate and centralize performance metrics from applications, systems, databases, caches, and services.

    2.8k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Analyzing Capacity Planning

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to analyze capacity requirements and plan for future growth.

    2.8k GitHub stars~947 tokensUpdated today
    Auto-check passed
  • Analyzing Database Indexes

    jeremylongshore/tons-of-skills-marketplace

    Process use when you need to work with database indexing. An agent skill from jeremylongshore/tons-of-skills-marketplace.

    2.8k GitHub stars~2k tokensUpdated today
    Auto-check passed

Categories

Questions about Apple Notes Enterprise Rbac

What does Apple Notes Enterprise Rbac do?

Implement access control for multi-user Apple Notes automation. Apple Notes Enterprise Rbac is an agent skill from jeremylongshore/tons-of-skills-marketplace. Implement access control for multi-user Apple Notes automation.

When should I use Apple Notes Enterprise Rbac?

Apple Notes Enterprise Rbac fits situations like: tasks that involve Authorization and RBAC.

How do I install Apple Notes Enterprise Rbac in Claude Code?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill apple-notes-enterprise-rbac -a claude-code`. Or copy the skill folder (skills/.curated/apple-notes-enterprise-rbac in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/apple-notes-enterprise-rbac in your project. Claude Code loads it when a task matches its description.

How do I install Apple Notes Enterprise Rbac in Codex?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill apple-notes-enterprise-rbac -a codex`. Or copy the skill folder (skills/.curated/apple-notes-enterprise-rbac in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/apple-notes-enterprise-rbac in your project. Codex loads it when a task matches its description.

Can I use Apple Notes Enterprise Rbac in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill apple-notes-enterprise-rbac -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/apple-notes-enterprise-rbac, .gemini/skills/apple-notes-enterprise-rbac, .github/skills/apple-notes-enterprise-rbac and .opencode/skills/apple-notes-enterprise-rbac in your project.

What does Apple Notes Enterprise Rbac need to run?

SKILL.md names no scripts, command-line tools or credentials: Apple Notes Enterprise Rbac is instructions for the agent only. Its frontmatter pre-approves these tools: Read, Write, Edit, Bash(osascript:*), Grep. Compatibility (from SKILL.md): Designed for Claude Code.

Does Apple Notes Enterprise Rbac access the network?

SKILL.md names 2 domains. As links in the text: developer.apple.com and support.apple.com. This is read from the text; nothing was executed.

Is Apple Notes Enterprise Rbac safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Apple Notes Enterprise Rbac use?

Apple Notes Enterprise Rbac is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Apple Notes Enterprise Rbac use?

About 1.6k tokens (SKILL.md is roughly 6.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Apple Notes Enterprise Rbac?

Skills that share tags, products or a category with Apple Notes Enterprise Rbac: Configuring Horizon (coollabsio/coolify, 63k stars), K8s Security Policies (Cybereason-Public/owLSM, 280 stars), Payload (payloadcms/payload, 45k stars) and Convex Setup Auth (spokvulcan/poker-planning, 115 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Apple Notes Enterprise Rbac?

jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,827 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 10, 2026.

Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.