noir
Domain knowledge for zero-knowledge circuit design with Noir. For Noir language
syntax patterns (types, modules, generics), see droo-stack's noir-patterns rule.
This skill covers the why of ZK: circuit architecture, security pitfalls,
Aztec integration, and testing strategy.
What You Get
- Circuit architecture and constraint optimization patterns
- ZK-specific security: privacy leaks, oracle safety, nullifier attacks
- Systematic circuit audit methodology (spec-to-constraint mapping, completeness, privacy analysis)
- Aztec contract integration (notes, storage, account abstraction)
- Testing strategy: nargo tests, e2e setup, cross-chain messaging
- Constrained vs unconstrained computation guidance
When to use
This skill activates when working on ZK circuit design, proof systems, or Aztec
contracts. It complements droo-stack (which covers Noir syntax) with domain
knowledge that requires ZK expertise.
When NOT to use
- For Noir language syntax only (types, modules, generics) -- use droo-stack
- For Solidity smart contracts -- use solidity-audit
- For general Ethereum tooling -- use ethskills
See also
droo-stack -- for Noir language syntax (types, modules, generics)
solidity-audit -- for Solidity verifier contracts that consume Noir proofs
zk-x-ray -- for pre-audit reports on ZK + EVM hybrid protocols (Noir + Solidity)
ethskills -- for Ethereum ecosystem tooling and standards
Reading guide
| Working on |
Read |
| Circuit design, constraint optimization |
circuits/constrained |
| Oracle calls, unconstrained computation |
circuits/unconstrained |
| Privacy leaks, public/private input design |
security/privacy |
| Unconstrained return safety, oracle verification |
security/oracle-safety |
| Circuit audit methodology, spec compliance |
security/circuit-audit |
| Aztec-specific attacks: nullifiers, MEV, leakage |
security/aztec-contracts |
| Aztec contract structure, notes, storage |
aztec/contracts |
| Account abstraction, access control, keys |
aztec/accounts |
| Testing with nargo, proof vs execution |
testing/nargo |
| Aztec e2e test setup, accounts, deployment |
testing/e2e-setup |
| Token testing, AuthWit, balance assertions |
testing/e2e-token |
| Cross-chain L1/L2, event testing |
testing/e2e-messaging |
1---2name: noir3description: Zero-knowledge circuit design with Noir (Aztec's ZK DSL). TRIGGER when: working with .nr files, Nargo.toml, ZK circuits/proofs, Aztec contracts, zoir extension, or discussing zero-knowledge proof design. Covers circuit architecture, constraint optimization, ZK-specific security, and Aztec integration. DO NOT TRIGGER when: only Noir language syntax is needed (droo-stack handles that), or working with Solidity (use solidity-audit skill).4---5
6# noir
7
8Domain knowledge for zero-knowledge circuit design with Noir. For Noir language
9syntax patterns (types, modules, generics), see droo-stack's noir-patterns rule.
10This skill covers the **why** of ZK: circuit architecture, security pitfalls,
11Aztec integration, and testing strategy.
12
13## What You Get
14
15- Circuit architecture and constraint optimization patterns
16- ZK-specific security: privacy leaks, oracle safety, nullifier attacks
17- Systematic circuit audit methodology (spec-to-constraint mapping, completeness, privacy analysis)
18- Aztec contract integration (notes, storage, account abstraction)
19- Testing strategy: nargo tests, e2e setup, cross-chain messaging
20- Constrained vs unconstrained computation guidance
21
22## When to use
23
24This skill activates when working on ZK circuit design, proof systems, or Aztec
25contracts. It complements droo-stack (which covers Noir syntax) with domain
26knowledge that requires ZK expertise.
27
28## When NOT to use
29
30- For Noir language syntax only (types, modules, generics) -- use droo-stack
31- For Solidity smart contracts -- use solidity-audit
32- For general Ethereum tooling -- use ethskills
33
34## See also
35
36- `droo-stack` -- for Noir language syntax (types, modules, generics)
37- `solidity-audit` -- for Solidity verifier contracts that consume Noir proofs
38- `zk-x-ray` -- for pre-audit reports on ZK + EVM hybrid protocols (Noir + Solidity)
39- `ethskills` -- for Ethereum ecosystem tooling and standards
40
41## Reading guide
42
43| Working on | Read |
44| ------------------------------------------------ | ------------------------------------------------------- |
45| Circuit design, constraint optimization | [circuits/constrained](circuits/constrained.md) |
46| Oracle calls, unconstrained computation | [circuits/unconstrained](circuits/unconstrained.md) |
47| Privacy leaks, public/private input design | [security/privacy](security/privacy.md) |
48| Unconstrained return safety, oracle verification | [security/oracle-safety](security/oracle-safety.md) |
49| Circuit audit methodology, spec compliance | [security/circuit-audit](security/circuit-audit.md) |
50| Aztec-specific attacks: nullifiers, MEV, leakage | [security/aztec-contracts](security/aztec-contracts.md) |
51| Aztec contract structure, notes, storage | [aztec/contracts](aztec/contracts.md) |
52| Account abstraction, access control, keys | [aztec/accounts](aztec/accounts.md) |
53| Testing with nargo, proof vs execution | [testing/nargo](testing/nargo.md) |
54| Aztec e2e test setup, accounts, deployment | [testing/e2e-setup](testing/e2e-setup.md) |
55| Token testing, AuthWit, balance assertions | [testing/e2e-token](testing/e2e-token.md) |
56| Cross-chain L1/L2, event testing | [testing/e2e-messaging](testing/e2e-messaging.md) |