Skip to content

Repository files navigation

OpenCourt

OpenCourt is a greenfield, desktop-first legal-process operating system.

The canonical planning documents are:

  • OpenCourt_AI_IDE_Bootstrap_Prompt_Greenfield.md
  • OpenCourt_Project_Bible_Greenfield.md
  • docs/OPENCOURT_GREENFIELD_PHASES.md
  • ARCHITECTURE_CONSTITUTION.md

Current Phase

Implemented through Phase 11: Counsel Arena.

The current branch includes the desktop/backend skeleton, pack-composed runtime profiles, SQLite operational persistence, reviewed case knowledge, procedure and evaluation slices, bounded simulation, Litigation Canvas, memory-service foundation, a repeatable flagship software-development contract dispute demo, and a backend Counsel Arena practice workflow.

Repository Layout

backend/         FastAPI backend foundation
frontend/        Electron and React frontend foundation
memory-service/  Isolated memory-service foundation
packages/        Future shared/generated packages
fixtures/        Reproducible profiles and demo matter fixtures
docs/            Roadmap, ADRs, and architecture docs
scripts/         Developer automation scripts

Prerequisites

  • Python 3.12
  • uv
  • Node 22
  • pnpm 10

Backend

cd backend
uv sync
uv run pytest
uv run uvicorn app.main:app --reload

Memory Service

cd memory-service
uv sync
uv run pytest
uv run uvicorn app.main:app --reload --port 8010

Frontend

pnpm install
pnpm run typecheck
pnpm run build

Flagship Demo

The Phase 10 demo creates the fictional software-development dispute, ingests ten fixture documents, reviews facts/evidence/issues/claim records, runs two simulations, records a lawyer correction into memory, proves rejected memory is suppressed, and prints a comparison report.

.\scripts\run-flagship-demo.ps1

Use -Memory http if the separate memory service is running on port 8010; the default local mode is deterministic for local verification.

Counsel Arena

Phase 11 adds backend endpoints for taking over a scenario node and submitting a practice response:

  • POST /api/simulations/{run_id}/nodes/{node_id}/practice-attempts
  • GET /api/practice-attempts/{attempt_id}
  • POST /api/practice-attempts/{attempt_id}/memory-candidate/approve
  • POST /api/practice-attempts/{attempt_id}/memory-candidate/reject

Practice attempts are persisted, evaluated with structured feedback, shown with relevant memory, and can produce reviewable practice-weakness memory.

Architecture Rules

  • Core domain code must not import Electron, React, FastAPI route objects, SQLAlchemy models, Cognee types, or provider SDKs.
  • SQLite owns operational truth.
  • Cognee owns curated cognitive memory only.
  • Runtime profiles are compiled from versioned packs.
  • Actual, proposed, simulated, and counterfactual records remain separate.
  • Important conclusions require provenance, assumptions, uncertainty, authority, and verification status.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages