Getting Started with Darnit Development

May 13, 2026 · View on GitHub

Welcome to the darnit contributor documentation. Choose your path below based on what you want to work on.

Choose Your Path

I want to use darnit with Claude Code

Use skills for guided compliance workflows — no need to call individual tools.

  1. Using Skills — Install, usage examples, profiles, multi-module support

I want to work on the framework

The core darnit framework — plugin system, sieve pipeline, configuration, MCP server.

  1. Environment Setup — Prerequisites, fork, clone, install
  2. Framework Development — Architecture, separation rules, sieve pipeline (with diagrams)
  3. Testing Guide — Running and writing tests
  4. Development Workflow — Pre-commit checklist, branching, PRs

I want to create or modify an implementation

Compliance framework plugins — TOML controls, CEL expressions, remediation, custom handlers.

  1. Environment Setup — Prerequisites, fork, clone, install
  2. Implementation Development — TOML controls, pass types, handlers, entry points
  3. CEL Reference — CEL expression syntax and common pitfalls
  4. Testing Guide — Running and writing tests
  5. Development Workflow — Pre-commit checklist, branching, PRs

Tutorials (complete copy-paste walkthroughs):

I want to assemble an org-specific posture from existing implementations

Composition — TOML-only mix of slices from already-installed implementations ("OpenSSF Baseline L1+L2 + three named SLSA controls + our internal controls"). No Python composition code; upstream sources stay upgrade-current.

  1. Environment Setup — Prerequisites, fork, clone, install
  2. Composition Quickstart — End-to-end walkthrough for an acme-baseline composite
  3. TOML schema contract[[compose]], [overrides."ID"], allow_conflicts semantics
  4. Implementation Guide §12 — When to compose vs fork, conflict-resolution escape hatches, provenance contract

Quick Reference

GuideWhat it covers
Environment SetupPrerequisites, fork/clone, install, verify
Framework DevelopmentPackage structure, separation rules, sieve pipeline, Mermaid diagrams
Implementation DevelopmentTOML controls, pass types, handlers, entry points, MCP tools
CEL ReferenceCEL syntax, context variables, escaping rules, pitfalls
Testing GuideRunning tests, test structure, writing new tests
Development WorkflowPre-commit checklist, branching, commits, PRs
TroubleshootingCommon issues and solutions

Having Issues?

Check the Troubleshooting Guide first. If that doesn't help, open an issue.