Sheridan Capital Sheridan OS

Internal systems Sheridan Capital

A live command center for the whole book.

Sheridan OS is the system we run the firm on. Origination, underwriting, closing, asset management, workouts and reporting on one screen, reading from one book of record.

Status
Running internally at command.sheridanfunds.com
Built with
Claude Code, in-house
Surfaces
Three platforms behind one sign-in, plus a mobile build
Access
Private. Microsoft Entra ID, MFA enforced
Sheridan OS Mission Control: portfolio pulse, state and asset mix, treasury curve

Every screen on this page is a real screenshot of the hub, captured against a synthetic book. No borrower, sponsor, property, balance or date shown anywhere is real.

01 Why we built it

The book was real. The system around it wasn't.

Every private credit shop our size ends up with the same shape of problem. The pipeline lives in one tool, the documents live in another, the portfolio lives in a spreadsheet somebody maintains by hand, and the actual answer to most questions lives in a person's head. Each piece works. The seams don't.

It holds up until someone asks a plain question in a meeting. What's our exposure to that sponsor. Where did the workout on that asset land. How many loans mature inside twelve months. Which deals have been sitting in diligence too long. Those are one-line questions that used to cost half a day and three people, and the answer arrived after the meeting ended.

So we built the thing we kept wishing existed. Not a reporting layer bolted onto the side of the real work. The working surface itself, the one you open first in the morning and pull up live when the question comes up.

Before

  • Origination and underwriting tracked in Monday, and only origination and underwriting
  • The asset management book maintained in spreadsheets, outside Monday entirely
  • Documents in Box, with no link back to the deal record
  • Portfolio and pipeline numbers assembled by hand for each meeting
  • Nothing usable on a phone

Now

  • Origination, credit, closing, asset management and workouts in one flow
  • The AM book is a live tracker in the hub, not a file someone owns
  • Documents linked from the deal and the loan they belong to
  • Portfolio and pipeline views you can pull up mid-sentence
  • A purpose-built mobile app on the same data
The test

Every number on every screen resolves to the same book of record. Two surfaces cannot disagree, because they read the same predicates.

02 The system

Twelve surfaces, one book of record.

One sign-in opens three platforms: Command Center for pipeline, documents and deal reporting, Credit for underwriting, sizing and committee memos, and CRM for borrowers, brokers and relationship activity. What follows walks the Command Center, which is where most of the day happens.

Each surface answers a different question. They all read from the same data, through the same shared predicates, so a count on one screen is the same count on every other.

01

Command Center

/command-center

  • Period analytics
  • Prior-period deltas
  • Activity ledger

Where the morning view is today, Command Center is the period. Pick a window and the whole page recomputes: pipeline, in-underwriting and closed against the prior period, the originations matrix by business line, the asset management panel, the priority stack of what needs action, and a running ledger of what actually changed.

Command Center, the executive view

02

Pipeline and Origination

/origination/deals

  • Live deal table
  • Stages
  • Brokers and sponsors

Every live opportunity from first look to close, with the stage, the sponsor, the broker, the originator, the ask and the days since it last moved. Around it sit the relationships that produce the deals: broker and sponsor records with submission history, a screening queue for inbound, a comps and deal database, and outreach tracking. A stalled deal looks stalled.

Deal Pipeline, live originations

03

Credit and Underwriting

/origination/credit

  • Deal-level underwriting
  • T12 and rent roll intake
  • IC memo

Borrower financials arrive as spreadsheets in whatever format the sponsor keeps them. They are uploaded, parsed, and then held in a review step: a human confirms how each line maps before anything reaches the model, and the confirmed mapping is saved so the next file from the same source needs less work. From there, the credit pipeline, the IC memo, and for agency deals a full HUD closing checklist.

Underwriting dashboard

04

Portfolio

/portfolio

  • Book overview
  • Maturity filters
  • Risk flags

The asset management view of the whole book. Active principal, loan count, what is at risk, weighted LTV and DSCR across the top, then the book filtered by maturity window, asset type and investor. This is the screen that answers the exposure question before the meeting moves on.

Portfolio, asset management

05

The loan tape

/loans

  • Every position
  • Sortable
  • Detail drawer

The tape itself, built as a terminal rather than a dashboard. Every position with its balance, coverage, maturity and flags, sortable and filterable, with a detail drawer on any row that opens the full loan without losing your place in the table. This is the screen that gets left open.

The loan tape

06

Asset Management trackers

/portfolio/trackers

  • Book by book
  • Risk buckets
  • Weighted DSCR and LTV

Each book gets its own card: assets under management, loan count, the risk buckets (watchlist, forbearance, purchased NPL), what is maturing, and weighted DSCR and LTV. This is the module that replaced a maintained spreadsheet, which is the least glamorous and most useful thing on this page.

Asset management trackers

07

NPL Tracker

/portfolio/npl

  • Purchased vs originated
  • Severity
  • Drill-through

Two different things live here, and the tracker keeps them apart. A secondary purchase is a loan we bought already non-performing, at a discount, on purpose. That is a strategy, and it is underwritten to a recovery. An NPL is one of our own originations that went bad. That is a credit event. Netting the two together would make an intentional discount purchase read as a problem, so the two never share a bucket, and neither is ever counted twice.

Around that sit forbearance, REO and the watchlist, with days-past-due aging, exposure by type and state concentration above the tape. The bucketing runs on shared predicates, the same functions that drive the sidebar counters and the portfolio tiles, so the tracker cannot disagree with the tile that links into it.

NPL Tracker, bucketed by severity

08

NPL Workout

/m/npl/:id/workout

  • Four resolution paths
  • Recommended path
  • Timeline and log

The workout file on a single distressed asset. Balance, coverage and days past due at the top, then the four resolution paths (cure, forbearance, negotiated workout, foreclosure and REO) with recovery, months to resolution and NPV, and the recommended path called out with its confidence. Tabs underneath hold the capital stack, the timeline and the activity log. On a secondary purchase the recovery is measured against what we paid, not against the face balance, because those are different questions. The path assumptions are our standing figures, not a per-loan model.

NPL Workout, resolution paths

09

Portfolio Analytics

/portfolio-analytics

  • Maturity ladder
  • Health distribution
  • DSCR spread

The layer built to be shown rather than exported and reformatted. Total principal, weighted coverage, what matures inside ninety days, the full maturity ladder by window, the health distribution across the book and the DSCR spread. Alongside it, exposure and borrower concentration, reserve risk, and the reports that come out of the book: intro memos, credit memos and the quarterly ASR.

Portfolio analytics

10

Ask Sheridan

/query

  • Natural language
  • Shows the query
  • Returns records

Ask the book a question in plain English across loans, deals, investors, sponsors and brokers. Before it answers it shows the structured query it understood you to be asking, then returns the underlying records rather than a summary, so you can see what it did and check it before you repeat it in a meeting. Queries can be saved and re-run.

Ask Sheridan

11

Goals, tasks and calendar

/goals · /tasks · /calendar

  • Targets vs actual
  • Company task board
  • Closings calendar

Progress against the year's targets computed from closed deals rather than typed in, the company-wide task board with owners and due dates, and the calendar of closings, committee dates and site visits. The unglamorous operating layer that keeps the rest of it honest.

Goals and progress
Company task board

12

Mobile

/m

  • Separate build
  • Same data
  • Daily digest

Not a shrunk-down dashboard. A separate application designed for the phone, on the same data: home, portfolio, pipeline and deal detail, NPL and workout status, tasks, calendar, goals, notifications, search, the daily digest and Ask Sheridan. Enough to answer a real question from the back of a car.

Mobile home Mobile portfolio

03 How it's built

In-house, with Claude Code.

This wasn't a procurement exercise. No vendor, no six-month implementation, no consultant learning our business on our clock. It was specified and built inside the firm by the people who use it, which is why it matches how we actually work rather than how software companies assume credit shops work.

It also means it changes at the speed we do. When the book shifts or a process changes, the system changes that week, and the person who wanted the change is the person who describes it.

Built with
Claude Code, in-house. Specified and shipped by the team that runs the book.
Front end
React and TypeScript console, plus a separate mobile build. One design system across both.
Data
Postgres, with row-level security enforced on every table.
Sync
Live sync with the origination system of record, document links into the firm's document store, and reviewed spreadsheet imports for the asset management book.
Access
Private. Microsoft Entra ID with MFA enforced, role-based, no public surface.
Cadence
Continuous. Shipped against real use, not against a roadmap.

04 Controls

Building it ourselves means owning the controls.

A firm that builds its own systems takes on a real obligation: there's no vendor to point at when a number is wrong. We'd rather state the control environment plainly than let it be inferred.

System of record The hub does not replace the systems of record. Origination and underwriting stay authoritative in the deal system, documents in the document store. The hub reads from them and writes back to them.
Consistency Watchlist, forbearance, originated NPL and purchased NPL are defined once as shared predicates and used by every surface. A loan bought at a discount is never counted as a credit event, and a count cannot differ between two screens.
Imported data Spreadsheet imports run through a diff and review step. Nothing lands in the book without a human confirming what changed.
Audit Every change is written to an audit log, with an admin view over sync activity, import history and errors.
Access Sign-in is Microsoft Entra ID with MFA enforced. Row-level security on every table, role-based permissions, and no unauthenticated access to any firm data.

05 Close

We built this for our own team.

It isn't a product we're selling and it isn't a demo. It's the surface our team works on every day, and the reason we can answer a portfolio question while the question is still being asked.