messages-questionFAQ

chevron-rightDo I need Foundry installed before using KRNL CLI?hashtag

No. The CLI automatically checks for Foundry (forge, cast, anvil) during project initialization. If Foundry is missing or the version is below 1.0.0, it will install or update it automatically.

chevron-rightHow does KRNL CLI detect project structure?hashtag
  • Source contracts: Auto-detects src/ or contracts/

  • Output artifacts: Auto-detects out/ or artifacts/

  • Configuration: Reads foundry.toml if present

You can override these paths using the -c, -o, and -p flags with krnl compile.

chevron-rightHow does deployment network detection work?hashtag

KRNL CLI prioritizes networks in this order:

  1. Network specified via --network flag

  2. RPC URLs defined in .env (e.g., SEPOLIA_RPC_URL)

  3. [rpc_endpoints] section in foundry.toml

  4. Defaults to localhost:8545

chevron-rightWhat is an attestor, and why do I need one?hashtag

Attestor is a component which will attest and also resolve the secrets in your DSL workflow. You create one using:

krnl create-attestor
chevron-rightWhat happens if my PRIVATE_KEY is missing the 0x prefix?hashtag

KRNL CLI automatically detects this and adds 0x if needed during deployment.

chevron-rightWhere are the compiled artifacts stored?hashtag

By default:

  • Foundry outputs: out/ or artifacts/

  • Can be overridden with the -o flag in krnl compile

chevron-rightCan I create a custom project template?hashtag

Yes. Use the -t, --template flag with krnl init:

Your template must follow the KRNL project structure.

chevron-rightHow do I update KRNL CLI?hashtag

This will install the latest version globally.

Last updated