The open-source toolkit for OSCAL

Parse, validate, and analyze machine-readable security and compliance data with Secani’s implemented TypeScript toolkit.

TypeScriptAPI preview
import { createOscalProcessor } from "@secani/oscal";

const processor = createOscalProcessor();
const bytes = new TextEncoder().encode(jsonSource);
const document = processor.parse(bytes, "json");
const result = processor.validate(document.json);

if (!result.ok) {
  console.error(result.errors);
}

One foundation for OSCAL workflows

Parse OSCAL JSON today

Work with all eight OSCAL 1.2.2 models through the implemented JSON API.

Validate against official schemas

Run precompiled, eval-free JSON Schema validators without runtime dependencies.

Transform with typed APIs

Inspect and reshape structured control data in TypeScript.

Build interoperable tools

Create compliance workflows on open, portable data models.

For humans and for agents

Preview · Coming soon
pnpm add @secani/oscal

secani/oscal-skills · Coming soon

A planned open-source collection of packaged instructions and optional scripts for agents working with OSCAL validation, conversion, catalogs, profiles, and related workflows.

Follow development on GitHub

OSCAL tools, straight from the terminal

The planned open-source CLI will bring validation and conversion into local development and automated workflows.

Preview the CLI

What is OSCAL?

OSCAL stands for Open Security Controls Assessment Language. It is a NIST-led initiative, developed with industry and the public community, for representing security control information in machine-readable XML, JSON, and YAML.

NIST created the public project page in 2018 and published OSCAL 1.0.0, its first stable major release, in 2021.

Prepare for secani/oscal

Read the OSCAL concepts, review the implemented toolkit surface, and prepare your next interoperable compliance workflow. For automated checks, explore the OSCAL Validation API.

OSCAL overview

Install preview · Coming soon

pnpm add @secani/oscal