From apple-notes-pack
Implements RBAC for multi-user Apple Notes automation using account separation and folder permissions with JXA.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin apple-notes-packThis skill is limited to using the following tools:
Apple Notes does not have built-in RBAC. For multi-user scenarios, implement access control at the automation layer.
Automates Apple Notes across multiple accounts (iCloud, Gmail, local) and environments using JXA scripting and osascript. For macOS automation setups.
Manages Apple Notes on macOS via memo CLI: create, view, edit, delete, search, move, export notes. For terminal-based note CRUD and organization.
Manages Apple Notes on macOS: create, search, read, update, delete notes; list and organize folders/accounts via MCP tools. Use for notes-related tasks.
Share bugs, ideas, or general feedback.
Apple Notes does not have built-in RBAC. For multi-user scenarios, implement access control at the automation layer.
// Apple Notes supports multiple accounts (iCloud, Gmail, etc.)
// Use account separation as a basic access control mechanism
const Notes = Application("Notes");
const accounts = Notes.accounts();
// List all accounts
accounts.forEach(a => {
console.log(`Account: ${a.name()} — ${a.folders().length} folders`);
});
// Restrict operations to specific account
function getAccountByName(name) {
const account = Notes.accounts().find(a => a.name() === name);
if (!account) throw new Error(`Account not found: ${name}`);
return account;
}
// Implement folder-level access control
interface FolderPermission {
folder: string;
allowedUsers: string[];
operations: ("read" | "write" | "delete")[];
}
const PERMISSIONS: FolderPermission[] = [
{ folder: "Shared", allowedUsers: ["*"], operations: ["read"] },
{ folder: "Private", allowedUsers: ["admin"], operations: ["read", "write", "delete"] },
{ folder: "Team", allowedUsers: ["team-lead", "member"], operations: ["read", "write"] },
];