Ancore is an open-source account abstraction and financial UX layer for the Stellar network.
Ancore brings advanced account abstraction capabilities to Stellar/Soroban, enabling:
- Smart Accounts: Programmable accounts with custom validation logic
- Session Keys: Secure, time-limited signing permissions for seamless UX
- Social Recovery: Decentralized account recovery without seed phrases
- Multi-Signature: Flexible approval policies for teams and organizations
- Invoice System: Native request-to-pay functionality with QR codes
- AI Agent Integration: Natural language financial operations
This is a monorepo containing:
ancore/
├── apps/ # User-facing applications
│ ├── extension-wallet/ # Browser extension wallet
│ ├── mobile-wallet/ # React Native mobile app
│ └── web-dashboard/ # Web-based account management
│
├── packages/ # Public SDKs and libraries
│ ├── core-sdk/ # Main SDK for developers
│ ├── account-abstraction/ # Account abstraction primitives
│ ├── stellar/ # Stellar/Soroban utilities
│ ├── crypto/ # Cryptographic utilities
│ ├── ui-kit/ # Shared UI components
│ └── types/ # Shared TypeScript types
│
├── contracts/ # Soroban smart contracts
│ ├── account/ # Core account contract
│ ├── validation-modules/ # Pluggable validation logic
│ ├── invoice/ # Invoice system
│ └── upgrade/ # Upgrade mechanisms
│
├── services/ # Optional infrastructure
│ ├── relayer/ # Transaction relay service
│ ├── indexer/ # Blockchain indexer
│ └── ai-agent/ # AI-powered financial agent
│
└── docs/ # Documentation
├── architecture/ # System architecture
├── security/ # Security model & audits
└── guides/ # Developer guides
Ancore maintains strict security controls:
-
🔒 High Security (requires core team approval):
contracts/**packages/crypto/**packages/account-abstraction/**
-
⚠️ Medium Risk:packages/core-sdk/**services/**
-
🟢 Low Risk (community contributions welcome):
apps/**packages/ui-kit/**docs/**
See CODEOWNERS for details.
- Node.js >= 20.0.0
- pnpm >= 9.0.0
- Rust toolchain (1.74.0+)
- wasm32-unknown-unknown target
- Soroban CLI
# Clone the repository
git clone https://github.com/ancore-org/ancore.git
cd ancore
# Install dependencies
pnpm install
# Build all packages
pnpm build
# Build contracts
rustup target add wasm32-unknown-unknown
pnpm contracts:build
# Run tests
pnpm test# Start development mode
pnpm dev
# Build contracts
pnpm contracts:build
# Test contracts
pnpm contracts:testWe welcome contributions! Please see our Contributing Guide for details.
Quick guidelines:
- Follow the security boundaries outlined above
- Write tests for new features
- Ensure code compiles and passes linting
- Sign your commits
For security-sensitive code, please read our Security Policy first.
core-sdkaccount-abstractiontypes
Breaking changes require a major version bump and RFC.
crypto- Contract internals
No stability guarantees. May change between minor versions.
- Contracts & Core SDK: Apache 2.0 (see LICENSE-APACHE)
- Applications & UI: MIT (see LICENSE-MIT)
- Documentation: CC BY 4.0
For security disclosures, please see SECURITY.md.
Do not open public issues for security vulnerabilities.
See MAINTAINERS.md for the list of maintainers and their responsibilities.
Major changes are proposed via RFCs in the docs/rfcs/ directory. See RFC.md for the process.
For a deep dive into Ancore's architecture, see:
- Core account abstraction contracts
- Session key implementation
- Browser extension wallet (v1)
- Mobile wallet
- Social recovery
- Invoice system
- AI agent integration
- Mainnet launch
- Telegram: Ancore TG
Built with:
License: Apache-2.0 OR MIT