Skip to content

Requirements you can verify

ECSS Copilot reads a space-project requirements document and flags every line that can’t be verified as written, with a fix for each.

Open source, early prototype (v0.1)

ECSS Copilotv0.1, running in your browser
75/100

1 finding

    Write your own requirement, or pick a sample. Ten of the 18 rules run right here, and nothing you type leaves the page. Samples come from LARK-1, a fictional mission.

    The whole review on one page

    Load a specification and see how many requirements it holds, where the problems are and how each one could be verified.

    ECSS Copilot reviewing the LARK-1 sample: 42 requirements, 36 findings, findings by check and draft verification methods

    LARK-1 is a fictional 3U CubeSat written with deliberate flaws. It ships with the code as a sample.

    How it works

    LARK-EPS-020

    The EPS shall provide adequate power to all subsystems in all modes.

    Imported from SRS.docx

    It arrives as written.

    LARK-EPS-020 75

    The EPS shall provide adequate power to all subsystems in all modes.

    High RQ-03 Vague term

    Rules flag what they can check.

    LARK-EPS-020 Draft

    The EPS shall provide at least [TBD: value, W] to each subsystem in each operating mode.

    Suggested rewrite, verified by test

    AI drafts a fix, if you turn it on.

    LARK-EPS-020 Accepted

    The EPS shall provide at least 45 W to each subsystem in each operating mode.

    Reviewed by an engineer, saved to matrix.xlsx

    An engineer signs it off.

    What it does

    Reads what you already have

    DOCX tables and paragraphs, PDFs with a text layer, CSV, XLSX, ReqIF and pasted text. Existing IDs such as SYS-PWR-010 are kept, and requirements without one get an AUTO ID.

    Load requirements

    • DOCX
    • PDF
    • CSV
    • XLSX
    • ReqIF
    • Pasted text

    A finding and a fix

    Each finding names the rule, its severity and a suggested rewrite. Each requirement gets a score from 0 to 100, so the worst lines rise to the top.

    Findings table with severity, rule ID and suggested fix

    A draft verification matrix

    A primary method for every requirement (test, analysis, inspection or review of design) with a rationale, exported to Excel with a column for the reviewer’s decision.

    Overview panel with requirement count, average score and findings by severity

    AI only when you ask

    An optional pass sends flagged requirements, and only those, to any OpenAI-compatible endpoint, including a local model. Unknown values stay as marked placeholders instead of invented numbers.

    Upload panel with the LLM rewrite pass switched off and a notice that nothing leaves the server

    Eighteen rules

    Fifteen look at each requirement and three at the document as a whole. They paraphrase well-known requirement-writing principles. No ECSS text is included.

    Run it on your machine

    You need Python 3.10 or later, or Docker. Without an LLM configured, nothing leaves your computer.

    There is no sign-in, so keep it on localhost or behind a proxy that asks for one. Please don’t upload export-controlled, classified or confidential data you aren’t allowed to share.

    Python

    git clone https://github.com/intelligent-design-llc/ecss-copilot.git
    cd ecss-copilot
    ./run.sh

    Docker

    docker build -t ecss-copilot .
    docker run --rm -p 127.0.0.1:8000:8000 ecss-copilot

    Then open http://127.0.0.1:8000 and try the LARK-1 sample in samples/.

    Status and limits

    Every result is a draft for engineering review. A person signs it off.

    Today

    • Open source under Apache-2.0
    • Early prototype, version 0.1. Expect some false positives
    • Heuristic rules, English only
    • PDFs need a text layer, there is no OCR
    • Stateless: uploads are processed in memory and not stored
    • No sign-in, meant for local or single-user use

    Next

    • v0.2: a compliance matrix against a standard you supply, with clause citations
    • ReqIF export and traceability checks
    • A self-hosted image with a local open-weights model
    • A documented EU-hosted LLM option

    Try it with your team

    Tell us what you work on and how you write requirements today. We’ll get back to you about early access and what comes next.