SIGIL Language for Visual Studio Code
The official VS Code extension for SIGIL — the universal smart contract language for the JAELIS blockchain.
SIGIL is designed to write once and deploy everywhere. One language that compiles natively to EVM, SVM, WASM, Move, TVM, and the JAELIS runtime — no bridges, no translation layers.
Features
Syntax Highlighting
Full TextMate grammar for .sigil files with support for:
- Contracts, functions, guards, events, structs, enums
- ENE cryptographic operations (
ene.sign, ene.verify, ene.attest)
- Cross-VM calls (
~evm::, ~svm::, ~move::, ~tvm::)
- Whale guard definitions
- AI agent functions
- Numeric literals with units (
.hours, .percent, .lode, .jaelis)
Intelligent Autocomplete
Context-aware completions powered by a built-in Language Server:
- All SIGIL keywords, types, and built-in functions
- ENE method completions after
ene.
- Oracle, AI, shard, block, and caller property completions
- Cross-VM target suggestions after
~
- Sigil-prefix completions (
@, #, ^, &)
- 140+ completion items
Diagnostics
Real-time error detection:
- Missing function parameters
- Whale guard configuration validation
- Deprecated pattern warnings (
selfdestruct)
- ENE usage suggestions for signature operations
Hover Documentation
Hover over any keyword for inline documentation. JAELIS-specific features like ene, whale_guard, agent, and shard include detailed explanations with code examples.
Go-to-Definition
Jump to the definition of contracts, functions, structs, events, guards, and variables within the current file. Supports all SIGIL declaration types.
Document Symbols
Navigate your contracts with the Outline view — automatically detects contracts, functions, events, and guards.
30+ Code Snippets
| Prefix |
Description |
sigil-contract |
Full contract template with header, state, events, deploy block |
sigil-erc20 |
Complete ERC20 token with whale protection |
contract |
Contract definition |
function |
Function definition |
view |
View (read-only) function |
agent |
AI agent function |
guard |
Function guard/modifier |
whale_guard |
JAELIS whale guard for market protection |
event / emit |
Event definition and emission |
struct / enum |
Type definitions |
resource |
Move-style resource definition |
match |
Pattern matching expression |
ene.generate |
Generate ENE-protected random value |
ene.sign |
Sign with ENE cryptography |
ene.verify |
Verify ENE signature |
ene.attest |
Cross-chain ENE attestation |
~evm / ~svm / ~move |
Cross-VM calls |
deploy |
Deployment configuration block |
oracle.getPrice |
Oracle price query |
ai.query |
AI agent query |
shard.query |
Cross-shard query |
Commands
| Command |
Description |
Sigil: Compile Contract |
Directs to JAELIS CLI for contract compilation |
Sigil: Deploy Contract |
Directs to JAELIS CLI for contract deployment |
Sigil: Verify ENE Signature |
Directs to JAELIS CLI for on-chain ENE verification |
Quick Start
- Install this extension
- Open or create a
.sigil file
- Start writing — autocomplete and highlighting activate automatically
sigil 1.0
chain jaelis.mainnet
license MIT
use sigil.token
contract MyToken {
name: text = "My Token"
symbol: text = "MTK"
totalSupply: num = 0
balances: mapping(address => num)
whale_guard antiWhale {
max_percent: 2.percent,
cooldown: 1.hours,
exempt: [owner]
}
event Transfer(indexed from: address, indexed to: address, amount: num)
constructor(initialSupply: num) {
totalSupply = initialSupply
balances[caller.address] = initialSupply
}
function transfer(to: address, amount: num) -> bool with antiWhale {
require(balances[caller.address] >= amount, "Insufficient balance")
balances[caller.address] -= amount
balances[to] += amount
emit Transfer(caller.address, to, amount)
return true
}
view function balanceOf(account: address) -> num {
return balances[account]
}
}
deploy {
args: { initialSupply: 1000000 * 10^18 }
shard: auto
}
What is SIGIL?
SIGIL is the native smart contract language for the JAELIS blockchain. It combines the best ideas from Solidity, Rust, Move, and FunC into one unified language with features no other chain offers:
- Zero gas fees — powered by the JAELIS SIGIL compute system
- ENE Cryptography — patented Ephemeral Network Entropy for manipulation-proof signing
- Whale Guards — native market manipulation protection built into the language
- Cross-VM Calls — call EVM, Solana, Move, and TON contracts natively with
~vm:: syntax
- AI Agent Functions — first-class AI integration in smart contracts
- Formal Verification — built-in
prove module with Z3/Lean4 backends
- Zero-Knowledge Proofs — native ZK circuit support (Groth16, PLONK, STARK)
Extension Settings
| Setting |
Default |
Description |
sigil.maxNumberOfProblems |
100 |
Maximum diagnostics to report per file |
sigil.trace.server |
off |
Language server trace level |
sigil.ene.showHints |
true |
Show hints for ENE cryptographic operations |
sigil.whaleGuard.validate |
true |
Validate whale_guard configurations |
Links
License
MIT - JAELIS Foundation