Sloth-ninja lays the groundwork for firm administration

JessicaOSS is preparing to serve law firms without disrupting self-hosted users who operate independently.

multi-tenantworkflow

This is foundation work, not a visible new control panel yet. Sloth-ninja has added the underlying structure for a firm to manage members and, later, share access to AI providers while keeping existing individual setups working as before.

  • Firm membership and roles, so the product can distinguish administrators from ordinary members.
  • Firm policy settings, ready for later controls over member access but not active yet.
  • Secure storage for firm-level provider credentials, paving the way for shared accounts.

The setup remains deliberately hands-on: an owner must apply the changes, create the firm, assign members and nominate an administrator. Importantly, a missing or failed firm setup will not prevent someone from signing in.

So what Legal teams considering a shared AI workspace should watch this fork: it is building the governance layer that individual-first tools usually lack.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

1 commit from Sloth-ninja/JessicaOSS, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
a1e39646 WS8 PR A: organisations, admin role, profile plumbing sloth-ninja 2026-07-22 ↗ GitHub
commit body
Foundation for firm administration. Adds the organisation (firm) entity, an
admin/member role on user_profiles, firm-level shared API keys, backend
resolution + a requireAdmin guard, and profile plumbing to the frontend types.
No gating behaviour - policy flags are present but unconsumed; self-hosters with
no organisation keep the existing per-user behaviour everywhere.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-1160.md from inside the repo you want the changes in.

⬇ Download capture-thread-1160.md