agentleFS
PQBlocksPQBlocks/pqblocks-skills/AGENTS.md

pqblocks-skills

AGENTS.md0 starsChanged 8 days agoApache-2.0View on GitHub

Copy this file into the root of a project (or merge it into an existing AGENTS.md) so coding agents follow these rules when they touch cryptography. 1. Use the documented API only. Before writing code with a PQBlocks package, read its page under https://pqblocks.github.io/packages/ (or call the get_snippet tool of the pqblocks-mcp server). Every quickstart there was executed against the package. Never guess function names. 2. Never hand-roll post-quantum cryptography. Use the packages; they wrap maintained implementations (liboqs, pyca/cryptography). 3.…

  • Installs packages
  • Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.

    Of the AGENTS.md files we read, the 31,542 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.

  • In this repository3 other files it gives its agents.

The file

We split this AGENTS.md into the rules it gives an agent

4 rules. About 0 are common, 2 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use the documented API only: Before writing code with a PQBlocks package, read its page under https://pqblocks.github.io/packages/ (or call …

    line 9
  2. Distinctive:

    Never hand-roll post-quantum cryptography: Use the packages; they wrap maintained implementations (liboqs, pyca/cryptography).

    line 11
  3. Very specific:

    Randomness from the OS only: Never pass a seed argument when generating production keys.

    line 15
  4. Distinctive:

    Install lines: use the exact install line listed for each package.

    line 22

≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
AGENTS.md
<!-- GENERATED by scripts/gen_skills.py from data/catalog.json - do not edit by hand -->

AGENTS.md: post-quantum rules for this project

Copy this file into the root of a project (or merge it into an existing AGENTS.md) so coding agents follow these rules when they touch cryptography.

Rules

  1. Use the documented API only. Before writing code with a PQBlocks package, read its page under https://pqblocks.github.io/packages/ (or call the get_snippet tool of the pqblocks-mcp server). Every quickstart there was executed against the package. Never guess function names.
  2. Never hand-roll post-quantum cryptography. Use the packages; they wrap maintained implementations (liboqs, pyca/cryptography).
  3. Hybrid by default during the transition: ML-KEM-768 + X25519 for key establishment, ML-DSA-65 + Ed25519 for signatures. Downgrade to classical-only must be explicit.
  4. Randomness from the OS only. Never pass a seed argument when generating production keys; seeds exist for reproducible tests.
  5. Never log or return secret keys or shared secrets (logs, exceptions, HTTP responses, repr).
  6. Say exactly what is true. PQBlocks packages implement FIPS 203/204/205 and test against official vectors where they exist. They are not FIPS 140-3 / CMVP validated, not externally audited, and pre-1.0. Never call them certified, validated, audited or quantum-proof.
  7. Quantum-inspired packages are optimisation, not cryptography. Never place them in a security path.
  8. Install lines: use the exact install line listed for each package; most install from GitHub until their PyPI release is published.

Which package for which task

TaskPackageInstallImport
ML-KEM / ML-DSA / SLH-DSA primitives (keygen, encapsulate, sign)pqblocks-primitivespip install pqblocks-primitivespqblocks_primitives
Hybrid ML-KEM-768 + X25519 key establishment, native speedpqblocks-corepip install git+https://github.com/PQBlocks/hybrid-sdkpqblocks_core
Sign or verify JWTs / JWS with ML-DSA; encrypt JWE with ML-KEMpqblocks-josepip install pqblocks-josepqblocks_jose
Encrypt files or byte strings to a post-quantum public keypqblocks-filespip install pqblocks-filespqblocks_files
Find RSA / ECC / weak hashes in code or a TLS endpoint; CBOM + SARIFpqblocks-scanpip install pqblocks-scanpqblocks_scan
Python crypto data-flow linting; CBOM + SARIFpqblocks-lintpip install pqblocks-lintpqblocks_lint
Enrich a CycloneDX CBOM with quantum-safety and CNSA 2.0 tagspqblocks-cbompip install pqblocks-cbompqblocks_cbom
Crypto-agility readiness score and CI regression gatepqblocks-agilitypip install pqblocks-agilitypqblocks_agility
Policy-as-code: fail CI on forbidden algorithmspqblocks-policypip install pqblocks-policypqblocks_policy
Audit which JWE / JOSE algorithms a gateway acceptspqblocks-jwe-auditpip install pqblocks-jwe-auditpqblocks_jwe_audit
CNSA 2.0 compliance evidence packpqblocks-cnsa-evidencepip install pqblocks-cnsa-evidencepqblocks_cnsa_evidence
Probe a TLS 1.3 endpoint for X25519MLKEM768; hybrid key-schedule checkspqblocks-tls-interoppip install pqblocks-tls-interoppqblocks_tls_interop
Binary container for ML-KEM ciphertexts and ML-DSA / SLH-DSA signaturespqblocks-wirepip install pqblocks-wirepqblocks_wire
Five-part hybrid JWE wire layout (serialise / parse only, no encryption)pqblocks-jwepip install pqblocks-jwepqblocks_jwe
ML-KEM certificate signing request with proof of possessionpqblocks-csr-poppip install pqblocks-csr-poppqblocks_csr_pop
Run NIST ACVP vectors against ML-KEM / ML-DSA implementationspqblocks-acvppip install pqblocks-acvppqblocks_acvp
Reject malformed or wrong-length FIPS 203/204 inputs at a boundarypqblocks-fips-checkpip install pqblocks-fips-checkpqblocks_fips_check
Verify post-quantum X.509 certificate chains in browser or Node.jspqblocks-browser-pqc-verifiernpm install git+https://github.com/PQBlocks/browser-pqc-verifier@pqblocks/browser-pqc-verifier
Build or convert QUBO / Ising modelspqblocks-qubopip install pqblocks-qubopqblocks_qubo
Solve QUBO / Ising / Max-Cut (Simulated Bifurcation)pqblocks-bifurcationpip install pqblocks-bifurcationpqblocks_bifurcation
Simulated annealing / quantum annealing / population annealing / QIEA solverspqblocks-anneal-sa, pqblocks-anneal-sqa, pqblocks-population-anneal, pqblocks-qieapip install pqblocks-anneal-sapqblocks_anneal_sa
Benchmark QUBO / Ising solvers (time-to-solution)pqblocks-qubo-benchpip install pqblocks-qubo-benchpqblocks_qubo_bench

Full catalog for agents: https://pqblocks.github.io/llms.txt (index) and https://pqblocks.github.io/llms-full.txt (with every quickstart).

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.