dr. Ferdi Iskandar Lead Architect |
Operational signal: Kediri, Indonesia · UTC+7 · clinical intelligence under active construction Sentra Artificial Intelligence
|
Sentra is built to make complex workflows feel simpler, faster, and more approachable. The project focuses on giving developers a clean, practical foundation they can understand, extend, and integrate without unnecessary overhead.
Rather than treating clinical measurements as isolated snapshots, Sentra is built around the idea of clinical trajectory—understanding how a patient is changing over time, identifying meaningful signs of deterioration, and helping surface risk before it becomes a critical event. The goal is simple but important: support earlier intervention and help stop preventable patient deterioration.
This repository contains the work behind Sentra as that idea is developed, tested, and refined into a practical clinical system.
Whether you're exploring Sentra for the first time, contributing to the project, or using it as part of your own stack, the goal is straightforward: provide a reliable, developer-friendly experience while keeping the codebase open, maintainable, and easy to build on.
This repository contains the source code, documentation, and everything you need to get started with Sentra. Contributions, ideas, and feedback are always welcome.
The objective is precise: convert fragmented healthcare workflows into intelligent, auditable systems that a clinician would stake their license on.
Important
AI in medicine should not perform. It should hold. Useful, humble, explainable, safe — or it doesn't ship.
|
Every system here terminates at a human reviewer. The machine proposes, structures, retrieves. It never signs. Final authority is not a feature — it's a boundary. |
No clinical output crosses the boundary without passing deterministic checks: red-flag detection, contraindication review, uncertainty handling, escalation triggers. |
|
Indonesian healthcare has its own physics: BPJS complexity, EMR friction, broken referral pathways, fragmented patient journeys. Systems here are shaped by that terrain, not imported over it. |
Diagnosis, retrieval, memory, EMR automation, telemedicine, security — each module can be inspected, audited, and replaced without the others noticing. Independent now, unified later. |
|
No fantasy platforms. Each system started as one specific pain, observed firsthand, solved narrowly. Expansion happens after proof, never before. |
If a system can't show its inputs, its reasoning boundaries, its confidence, and its escalation logic — it doesn't belong near a patient. |
LIVE TOPOLOGY // SYSTEM RELATION MAP
%%{init: {"flowchart": {"htmlLabels": false, "padding": 20}, "themeVariables": {"fontFamily": "monospace", "fontSize": "11px"}}}%%
flowchart TB
REASON["CLINICAL REASONING"]
ASSIST["ASSISTIVE INTELLIGENCE"]
OPS["HOSPITAL OPERATIONS"]
NET["CONTINUITY / NETWORK"]
SAFE["SAFETY / SECURITY"]
AADI["01 · AADI"]
TRIAGE["12 / 21 · TRIAGE"]
POGS["19 · POGS"]
CDOS["20 · CDOS"]
PRED["22 · PREDICTION"]
AUDREY["02 · AUDREY"]
MEDCOG["07 · MED-COGNITIVE"]
MELLY["08 · MELLY"]
SCRIBE["14 · AMBIENT SCRIBE"]
INTEL["03 · INTELLIGENCEBOARD"]
MELINDA["09 · MELINDA DASHBOARD"]
ADMIT["11 · AUTONOMOUS ADMISSION"]
BED["16 · BED MANAGEMENT"]
ORX["18 · OR ORCHESTRATOR"]
TELE["05 · TELEMEDICINE"]
REF["06 · REFERRALINK"]
CARE["13 · CARE NAVIGATOR"]
SHIELD["10 · MELINDA SHIELD"]
ALERT["15 · CRITICAL ALERT"]
AUDIT["17 · AI CODING AUDITOR"]
REASON --> AADI
REASON --> TRIAGE
REASON --> POGS
REASON --> CDOS
REASON --> PRED
ASSIST --> AUDREY
ASSIST --> MEDCOG
ASSIST --> MELLY
ASSIST --> SCRIBE
OPS --> INTEL
OPS --> MELINDA
OPS --> ADMIT
OPS --> BED
OPS --> ORX
NET --> TELE
NET --> REF
NET --> CARE
SAFE --> SHIELD
SAFE --> ALERT
SAFE --> AUDIT
ASSIST --> REASON
NET --> REASON
REASON --> OPS
REASON --> SAFE
SAFE --> OPS
OPS --> NET
MEDCOG --> AADI
AADI --> INTEL
ALERT --> INTEL
REF --> CARE
classDef authority fill:#0D1117,stroke:#F59E0B,color:#ffffff,stroke-width:2px;
classDef agent fill:#0D1117,stroke:#8B5CF6,color:#ffffff,stroke-width:2px;
classDef control fill:#0D1117,stroke:#14B8A6,color:#ffffff,stroke-width:2px;
classDef core fill:#0D1117,stroke:#5B8CFF,color:#ffffff,stroke-width:2px;
classDef shared fill:#0D1117,stroke:#64748B,color:#ffffff,stroke-width:1.5px;
classDef surface fill:#0D1117,stroke:#22D3EE,color:#ffffff,stroke-width:1.5px;
class REASON core;
class ASSIST agent;
class OPS surface;
class NET shared;
class SAFE authority;
class AADI,TRIAGE,POGS,CDOS,PRED core;
class AUDREY,MEDCOG,MELLY,SCRIBE agent;
class INTEL,MELINDA,ADMIT,BED,ORX surface;
class TELE,REF,CARE shared;
class SHIELD,ALERT,AUDIT authority;
|
|
|
|
RUNTIME TOPOLOGY // CONTROL & DATA PLANE
%%{init: {"flowchart": {"htmlLabels": false, "padding": 20}, "themeVariables": {"fontFamily": "monospace", "fontSize": "12px"}}}%%
flowchart TB
HUMAN["CLINICIAN / OPERATOR"]
UI["CLINICAL SURFACE"]
API["TYPED API / CONTRACTS"]
RUNTIME["AI RUNTIME"]
DATA["CLINICAL DATA"]
DOCS["DOCUMENTS / VOICE"]
MEM["RAG / MEMORY"]
GATE["SAFETY GATE"]
OUT["CLINICIAN-FACING OUTPUT"]
OPS["EMR / WORKFLOW / OPERATIONS"]
OBS["OBSERVABILITY / AUDIT"]
ESC["ESCALATION"]
HUMAN -->|uses| UI
UI --> API
API --> RUNTIME
DATA --> RUNTIME
DOCS --> RUNTIME
RUNTIME --> MEM
MEM --> RUNTIME
RUNTIME --> GATE
GATE -->|approved for review| OUT
GATE -. red flag / uncertainty .-> ESC
OUT -->|review + approval| HUMAN
HUMAN -->|final action| OPS
OPS -. outcome / telemetry .-> OBS
OBS -. trace / feedback .-> API
OBS -. audit / signal .-> RUNTIME
classDef authority fill:#0D1117,stroke:#F59E0B,color:#ffffff,stroke-width:2px;
classDef agent fill:#0D1117,stroke:#8B5CF6,color:#ffffff,stroke-width:2px;
classDef control fill:#0D1117,stroke:#14B8A6,color:#ffffff,stroke-width:2px;
classDef core fill:#0D1117,stroke:#5B8CFF,color:#ffffff,stroke-width:2px;
classDef shared fill:#0D1117,stroke:#64748B,color:#ffffff,stroke-width:1.5px;
classDef surface fill:#0D1117,stroke:#22D3EE,color:#ffffff,stroke-width:1.5px;
class HUMAN authority;
class RUNTIME,MEM agent;
class GATE,OBS,ESC control;
class UI,API core;
class DATA,DOCS shared;
class OUT,OPS surface;
%%{init: {"flowchart": {"htmlLabels": false, "padding": 20}, "themeVariables": {"fontFamily": "monospace", "fontSize": "11px"}}}%%
flowchart TB
HUMAN[" CLINICIAN "]
INPUT[" CLINICAL INPUT "]
NORM[" NORMALIZATION "]
REASON[" REASONING / RAG / MEMORY "]
GATE[" SAFETY GATE "]
OUTPUT[" CLINICIAN-FACING OUTPUT "]
ESC[" ESCALATE / EXPOSE UNCERTAINTY "]
REVIEW[" TERMINAL HUMAN AUTHORITY "]
HUMAN -->|complaints · vitals · labs · history · documents · voice| INPUT
INPUT -->|structured capture| NORM
NORM -->|terminology · units · ICD · FHIR-aware structures| REASON
REASON -->|evidence + reasoning + persistent context| GATE
GATE -->|bounded output| OUTPUT
GATE -. red flag / contraindication / uncertainty .-> ESC
OUTPUT -->|review required| REVIEW
classDef authority fill:#0D1117,stroke:#F59E0B,color:#ffffff,stroke-width:2px;
classDef agent fill:#0D1117,stroke:#8B5CF6,color:#ffffff,stroke-width:2px;
classDef control fill:#0D1117,stroke:#14B8A6,color:#ffffff,stroke-width:2px;
classDef core fill:#0D1117,stroke:#5B8CFF,color:#ffffff,stroke-width:2px;
classDef shared fill:#0D1117,stroke:#64748B,color:#ffffff,stroke-width:1.5px;
classDef surface fill:#0D1117,stroke:#22D3EE,color:#ffffff,stroke-width:1.5px;
class HUMAN,REVIEW authority;
class REASON agent;
class GATE,ESC control;
class INPUT,NORM core;
class OUTPUT surface;
The architecture is deliberately conservative. The machine proposes, structures, retrieves, assists. The clinician decides. Always.
|
React, Next.js, Tailwind. Calm enterprise surfaces, strict hierarchy, readable data — interfaces that stay quiet under pressure. |
TypeScript-first services, modular APIs, auditable contracts, clean package boundaries, explicit integration layers. |
|
RAG, orchestration, agent memory. Local-first where possible, model-agnostic by design, safety-aware at the output boundary. |
Real-time clinical voice capture, voice-to-EMR, OCR ingestion, structured note generation. Automation is review-first — nothing writes itself into the record unseen. |
|
Structured contracts, retrieval-ready documents, PHI/PII boundaries, least privilege, full audit trail. No unsafe logging. Ever. |
Hard wall between prototype and production. Verification before promotion, rollback before courage, operational realism over demos. |
PROMOTION STATE // PROTOTYPE → PRODUCTION
%%{init: {"flowchart": {"htmlLabels": false, "padding": 20}, "themeVariables": {"fontFamily": "monospace", "fontSize": "12px"}}}%%
flowchart TB
PROTO["PROTOTYPE"]
VERIFY["VERIFIED"]
SEC["SECURITY REVIEW"]
CLIN["CLINICAL REVIEW"]
PROD["PRODUCTION"]
ROLL["ROLLBACK"]
PROTO -->|build + typecheck + test| VERIFY
VERIFY -->|boundaries + audit| SEC
SEC -->|clinical systems only| CLIN
CLIN -->|explicit promotion| PROD
SEC -->|non-clinical path| PROD
PROD -. failure / unsafe signal .-> ROLL
ROLL -->|investigate + repair| PROTO
classDef authority fill:#0D1117,stroke:#F59E0B,color:#ffffff,stroke-width:2px;
classDef agent fill:#0D1117,stroke:#8B5CF6,color:#ffffff,stroke-width:2px;
classDef control fill:#0D1117,stroke:#14B8A6,color:#ffffff,stroke-width:2px;
classDef core fill:#0D1117,stroke:#5B8CFF,color:#ffffff,stroke-width:2px;
classDef shared fill:#0D1117,stroke:#64748B,color:#ffffff,stroke-width:1.5px;
classDef surface fill:#0D1117,stroke:#22D3EE,color:#ffffff,stroke-width:1.5px;
class CLIN authority;
class SEC control;
class PROTO,VERIFY core;
class PROD surface;
class ROLL agent;
No magic without audit.
No diagnosis without clinician review.
No automation without rollback.
No clinical data without security boundaries.
No expansion without one solved problem first.
Caution
Human authority is a terminal boundary. Any clinical path that cannot expose its inputs, uncertainty, failure mode, and escalation route is not promotion-ready.
Every system answers five questions before it earns a repository:
| Interrogation | Required answer |
|---|---|
| What clinical problem does this solve? | A specific workflow pain. Not an ambition. |
| Who is the human reviewer? | Named role: doctor, nurse, admin, verifier, operator. |
| What is outside the scope? | Non-scope is the fence against unsafe expansion. |
| What can fail? | Failure modes documented before deployment, not after. |
| How is it verified? | Build, typecheck, test, audit — clinical review where lives are involved. |
Monorepo Abyss is the foundational engineering substrate of Sentra Artificial Intelligence — the canonical environment that unifies shared packages, clinical applications, typed contracts, RAG and memory systems, orchestration, governance, safety controls, and infrastructure.
An Agent-First Repository is the operating model applied to that foundation: a human-governed software environment designed so AI agents can execute engineering work efficiently while deterministic controls constrain their authority, verify their output, and preserve human accountability.
SAFRS — the Sentra Agent-First Repository Standard — formalizes how Monorepo Abyss operates under that model: Human-Governed · Agent-Executed · Machine-Enforced.
↗ SAFRS reference implementation · drferdii/Monorepo-safrs
MONOREPO ABYSS TOPOLOGY // AUTHORITY ↔ EXECUTION ↔ CONTROL
%%{init: {"flowchart": {"htmlLabels": false, "padding": 20}, "themeVariables": {"fontFamily": "monospace", "fontSize": "10px"}}}%%
flowchart TB
HUMAN["HUMAN AUTHORITY · L5"]
AGENTS["AI AGENTS · BOUNDED EXECUTION"]
CTRL["DETERMINISTIC CONTROLS · CI / POLICY / SAFETY"]
ABYSS["MONOREPO ABYSS · FOUNDATIONAL AGENT-FIRST REPOSITORY"]
PACK["SHARED PACKAGES / CONTRACTS"]
MEM["RAG / MEMORY / ORCHESTRATION"]
INTEL["INTELLIGENCEBOARD"]
ASSIST["SENTRA ASSIST"]
REF["REFERRALINK"]
HUMAN -->|intent / approval| ABYSS
AGENTS -->|scoped engineering work| ABYSS
CTRL -. constrain / verify .-> AGENTS
CTRL -. enforce .-> ABYSS
ABYSS --> PACK
ABYSS --> MEM
PACK --> INTEL
PACK --> ASSIST
PACK --> REF
MEM --> INTEL
MEM --> ASSIST
MEM --> REF
classDef authority fill:#0D1117,stroke:#F59E0B,color:#ffffff,stroke-width:2px;
classDef agent fill:#0D1117,stroke:#8B5CF6,color:#ffffff,stroke-width:2px;
classDef control fill:#0D1117,stroke:#14B8A6,color:#ffffff,stroke-width:2px;
classDef core fill:#0D1117,stroke:#5B8CFF,color:#ffffff,stroke-width:2px;
classDef shared fill:#0D1117,stroke:#64748B,color:#ffffff,stroke-width:1.5px;
classDef surface fill:#0D1117,stroke:#22D3EE,color:#ffffff,stroke-width:1.5px;
class HUMAN authority;
class AGENTS agent;
class CTRL control;
class ABYSS core;
class PACK,MEM shared;
class INTEL,ASSIST,REF surface;
SAFRS CONTROL STACK // SIX LAYERS
%%{init: {"flowchart": {"htmlLabels": false, "padding": 20}, "themeVariables": {"fontFamily": "monospace", "fontSize": "12px"}}}%%
flowchart TB
L0["L0 · TRUST BOUNDARY"]
L1["L1 · CONSTITUTION"]
L2["L2 · CONTEXT & NAVIGATION"]
L3["L3 · EXECUTION ISOLATION"]
L4["L4 · EXECUTABLE GOVERNANCE"]
L5["L5 · HUMAN AUTHORITY"]
L0 --> L1
L1 --> L2
L2 --> L3
L3 --> L4
L4 --> L5
classDef authority fill:#0D1117,stroke:#F59E0B,color:#ffffff,stroke-width:2px;
classDef agent fill:#0D1117,stroke:#8B5CF6,color:#ffffff,stroke-width:2px;
classDef control fill:#0D1117,stroke:#14B8A6,color:#ffffff,stroke-width:2px;
classDef core fill:#0D1117,stroke:#5B8CFF,color:#ffffff,stroke-width:2px;
classDef shared fill:#0D1117,stroke:#64748B,color:#ffffff,stroke-width:1.5px;
classDef surface fill:#0D1117,stroke:#22D3EE,color:#ffffff,stroke-width:1.5px;
class L5 authority;
class L3 agent;
class L4 control;
class L0 core;
class L2 shared;
class L1 surface;
CONSTRAINT DESCENDS · AUTHORITY ASCENDS · CAPABILITY ≠ TRUST
|
The foundational engineering environment for Sentra Artificial Intelligence. Monorepo Abyss is the shared substrate from which Sentra systems are built: packages, healthcare applications, typed contracts, RAG and memory, orchestration, governance, safety controls, and clinical infrastructure — operated as an Agent-First Repository under deterministic verification and non-delegable human authority. |
Clinical dashboard and operational command surface: CDSS, telemedicine, EMR bridge workflows, trajectory analytics, reporting. |
|
Clinical browser-assistance surface — emergency detection, diagnosis support, structured workflow automation, side-panel intelligence. |
Referral and routing surface with diagnosis endpoint concepts, semantic cache, memory-service helpers. |
Sentra Artificial Intelligence operates across four primary divisions — one healthcare-facing, one academic, one design-and-build, and one finance/operations-focused. Together, they form the outward operating structure built on top of the Monorepo Abyss foundation.
SENTRA DIVISIONAL MAP // BUSINESS SURFACES
%%{init: {"flowchart": {"htmlLabels": false, "padding": 20}, "themeVariables": {"fontFamily": "monospace", "fontSize": "11px"}}}%%
flowchart TB
SAI["SENTRA ARTIFICIAL INTELLIGENCE"]
SHAI["SENTRA HEALTHCARE
ARTIFICIAL INTELLIGENCE"]
SAS["SENTRA ACADEMIC
SOLUTIONS"]
SMD["SENTRA MITRA
DESIGN"]
SDFM["SENTRA DIGITAL
FINANCE MANAGEMENT"]
SAI -->|clinical systems| SHAI
SAI -->|academic software| SAS
SAI -->|web / app / design build| SMD
SAI -->|business / finance operations| SDFM
classDef root fill:#0D1117,stroke:#5B8CFF,color:#ffffff,stroke-width:2px;
classDef healthcare fill:#0D1117,stroke:#22D3EE,color:#ffffff,stroke-width:2px;
classDef academic fill:#0D1117,stroke:#8B5CF6,color:#ffffff,stroke-width:2px;
classDef design fill:#0D1117,stroke:#14B8A6,color:#ffffff,stroke-width:2px;
classDef finance fill:#0D1117,stroke:#F59E0B,color:#ffffff,stroke-width:2px;
class SAI root;
class SHAI healthcare;
class SAS academic;
class SMD design;
class SDFM finance;
|
|
|
|
|
|
|
Cursor AI-first code editor for repo-aware editing, fast iteration, and day-to-day agentic development workflows. cursor.com ↗ |
Google Antigravity Agent-first development platform for orchestrating multiple agents, artifacts, and verification flows across IDE, CLI, and SDK surfaces. antigravity.google ↗ |
|
Anthropic · Claude Code Terminal- and IDE-native coding agent for deep reasoning, codebase analysis, implementation, and verification-heavy engineering tasks. claude.com/product/claude-code ↗ |
OpenAI · Codex Software-engineering agent for structured task execution, refactors, reviews, and background coding work across projects. openai.com/codex ↗ |
|
OpenRouter Unified routing layer providing one consistent API surface across multiple frontier and open-model providers. openrouter.ai ↗ |
Google AI Environment Gemini and Google AI developer environment for model access, experimentation, and broader agentic tooling. ai.google.dev ↗ |
|
Bullet Coding Constraint-driven coding discipline centered on concise execution loops, bounded scope, explicit prompts, and fast ship-first iteration. codewithbullet.com ↗ |
Grok Additional frontier reasoning layer for fast ideation, synthesis, and alternate model perspective. grok.com ↗ |
|
Space AI AI-native platform used as an auxiliary experimentation surface for automated content, workflow support, and adjacent operational exploration. spaceai.so ↗ |
STACK POSTUREModel-agnostic where useful, agent-first by design, audit-first in operation, and always governed by terminal human authority. |
ACTUAL TECHNOLOGY SURFACE · 10 ENGINEERING PILLARS · MONOREPO ABYSS
Dedicated to Aldebaran, Aimee, Audrey, and Del — & the Indonesia Healthcare Ecosystem.
Sentra Artificial Intelligence · Built in the depth, deployed at the bedside.
// the surface is documentation. the depth is running.






