THE PLAN: Product & Execution
Problems we want to solve, product direction, milestones, and technical architecture.
The Vision
Core Mission: Create an βimport economyβ where developers can import live services, not just code.
Like Docker revolutionized deployment with containers, Amigos redefines how apps are composed, shared, extended, and interconnected.
Network Virtualization: Amigos virtualizes not just computers, but the entire network - creating a virtual meta huge worldwide computer where apps can seamlessly connect to each other across any infrastructure.
Problems Weβre Solving
Developer Pain Points
- Rebuild Everything: Every project starts from scratch
- Dead Dependencies: Libraries break, maintainers disappear
- Integration Hell: Each service has different APIs, auth, deployment
- State Isolation: Canβt fork services with their data/users
- Vendor Lock-in: Cloud services trap you in their ecosystem
Market Opportunities
- $100B+ Cloud Market: Fragmented, expensive, complex
- 5.8M Go Developers: Underserved by current platforms
- Open Source Fatigue: Companies want hosted solutions
- Web3 Infrastructure: Still too complex for mainstream adoption
- AI/ML Deployment: Needs simpler, more composable architecture
Product Direction
Phase 1: Import Economy Foundation
Core Platform:
- Standard Go imports that work with live services
- Copy-on-write state management for service forking
- Universal authentication and authorization
- Real-time service discovery and composition
Developer Experience:
import "hub.amigos.dev/auth"
import "hub.amigos.dev/payments"
import "hub.amigos.dev/notifications"
func main() {
user := auth.CurrentUser()
payment := payments.CreateIntent(user, 1000)
notifications.Send(user, "Payment created")
}
Usage Experience Examples
Example 1: βAmigoifyβ an Existing Go Project
Scenario: Taking a standard Go blog application and making it Amigos-compatible
Before (Standard Go):
myblog/
βββ blog.go # Main blog logic
βββ server.go # HTTP server
βββ models.go # Data models
βββ handlers.go # HTTP handlers
βββ go.mod
After (Amigos Enhanced):
myblog/
βββ blog.go # Original code unchanged
βββ blog.ami.go # Amigos integration layer
βββ server.go # Original server
βββ models.go # Original models
βββ handlers.go # Original handlers
βββ go.mod # Original dependencies
βββ amigo.yaml # Amigos configuration
Key Benefits:
- Legacy Compatibility:
go run,go test,go buildstill work exactly as before - Zero Breaking Changes: Existing code requires no modifications
- Gradual Migration: Add Amigos features incrementally
New Capabilities with Amigos:
# Original Go commands still work
go run . # Runs blog locally as before
go test ./... # Tests pass unchanged
go build . # Builds binary as normal
# New Amigos commands unlock additional features
amigo serve . # Serves with auto-generated REST API
amigo run . # Runs with state management + scaling
amigo push . # Publishes to Amigos network
amigo publish . # Makes available for import by others
blog.ami.go (Amigos Integration Layer):
package main
import (
"github.com/amigos-dev/sdk"
)
// Amigos Service Interface
func (b *Blog) Render() string {
return sdk.AutoRender(b) // Auto-generates web UI
}
func (b *Blog) State() interface{} {
return b.posts // Exposes state for forking/importing
}
func (b *Blog) Migrate(old interface{}) error {
return sdk.AutoMigrate(b, old) // Handles state transitions
}
func (b *Blog) API() sdk.APISpec {
return sdk.AutoAPI(b) // Generates REST/GraphQL API
}
What You Get For Free:
- REST API: Automatic endpoints for all public methods
- Web UI: Generated interface for blog management
- State Management: Persistent storage with transactions
- Scaling: Automatic load balancing and redundancy
- Authentication: Built-in user management
- Monitoring: Real-time metrics and logging
- Importability: Other services can import your blog functionality
Example 2: Building with Imports
Scenario: Creating a startup MVP by importing existing services
package main
import (
"amigos.dev/auth" // User authentication service
"amigos.dev/payments" # Payment processing
"amigos.dev/notifications" # Email/SMS/push notifications
"amigos.dev/analytics" # Usage tracking
"github.com/alice/blog" # Alice's blog service
"github.com/bob/comments" # Bob's comment system
)
type MyStartup struct {
blog *blog.Service
comments *comments.Service
auth *auth.Service
}
func (s *MyStartup) CreatePost(title, content string) error {
user := s.auth.CurrentUser()
if user == nil {
return auth.ErrNotAuthenticated
}
post := s.blog.CreatePost(user, title, content)
s.comments.EnableFor(post.ID)
analytics.Track("post_created", user.ID)
notifications.Send(user, "Post published successfully")
return nil
}
func main() {
startup := &MyStartup{
blog: blog.Import("alice/blog:v1.2"),
comments: comments.Import("bob/comments:latest"),
auth: auth.Import("amigos.dev/auth"),
}
amigo.Serve(startup)
}
Result: Full-featured startup with authentication, blogging, comments, payments, and analytics in <50 lines of code.
Example 3: Service Marketplace
Scenario: Popular services become dependencies
# Discover services
amigo search "authentication"
amigo search "blog"
amigo search "payments"
# Install and try
amigo import alice/blog:v1.2
amigo import bob/payments:latest
# Test locally
amigo dev alice/blog
amigo test bob/payments
# Deploy to production
amigo deploy myapp --import alice/blog,bob/payments
Revenue Sharing:
- Alice earns fees when others import her blog service
- Bob gets paid per payment processed through his service
- Platform takes small percentage for hosting and infrastructure
Example 4: Multi-Network Service Lifecycle
Scenario: Building an Amigos-native contract that imports from multiple networks and deploys across environments
Full Import Spectrum:
package main
import (
// Pure logic from GitHub (traditional)
"github.com/foo/bar@v1.2.3" // Git-pinned version
"github.com/utils/crypto@abc123def" // Git commit hash
// Blockchain services (Web3)
"blockchain.land/defi/uniswap" // Live Uniswap contract
"blockchain.land/nft/opensea" // NFT marketplace
"blockchain.land/dao/governance" // DAO voting system
// Web2 cloud services
"aws.land/s3/storage" // AWS S3 wrapper
"aws.land/lambda/functions" // Serverless functions
"gcp.land/bigquery/analytics" // Google BigQuery
// Local development registry
"local.land/_/my-auth" // Local auth service
"local.land/path/to/payments" // Local payment handler
"local.land/_/database" // Local database service
)
type MultiNetworkApp struct {
// Traditional logic
cryptoUtils *bar.CryptoUtils
// Blockchain state & logic
defi *uniswap.Pool
nfts *opensea.Collection
governance *governance.DAO
// Web2 integrations
storage *storage.S3Bucket
analytics *analytics.BigQuery
// Local development services
auth *auth.Service
payments *payments.Processor
db *database.Store
}
func (app *MultiNetworkApp) ProcessTransaction(userID string, amount int64) error {
// Authenticate using local service
user := app.auth.GetUser(userID)
if user == nil {
return errors.New("unauthorized")
}
// Encrypt data using GitHub logic
encryptedAmount := app.cryptoUtils.Encrypt(amount)
// Store in Web2 cloud
receipt := app.storage.Store(fmt.Sprintf("tx_%s", userID), encryptedAmount)
// Execute DeFi transaction on blockchain
swapResult := app.defi.Swap(user.WalletAddress, amount)
// Record analytics in Web2
app.analytics.Track("transaction", map[string]interface{}{
"user_id": userID,
"amount": amount,
"tx_hash": swapResult.Hash,
})
// Store transaction locally
app.db.SaveTransaction(user, swapResult)
return nil
}
func main() {
app := &MultiNetworkApp{
// Each import resolves to its appropriate network
cryptoUtils: bar.Import("github.com/foo/bar@v1.2.3"),
defi: uniswap.Import("blockchain.land/defi/uniswap"),
storage: storage.Import("aws.land/s3/storage"),
auth: auth.Import("local.land/_/my-auth"),
// ... other imports
}
amigo.Serve(app)
}
Development & Deployment Lifecycle:
# 1. Local Development
amigo init multinetwork-app
cd multinetwork-app
# 2. Add imports from different networks
amigo import github.com/foo/bar@v1.2.3
amigo import blockchain.land/defi/uniswap
amigo import aws.land/s3/storage
amigo import local.land/_/my-auth
# 3. Local testing with mixed imports
amigo dev . # Runs locally, mocks external services
amigo test . # Tests with local registry + mocked externals
amigo serve . # Local server with hot reload
# 4. Deploy to preview environment
amigo push preview.land/myapp # Staged deployment for testing
curl https://preview.land/myapp/api/health
# 5. Deploy to production blockchain (requires wallet)
amigo wallet connect # Connect Web3 wallet
amigo deploy blockchain.land/myapp --wallet 0x123...
# Transaction hash: 0xabc123def...
# Service live at: blockchain.land/myapp
Network Resolution Examples:
# Different import schemes resolve to different networks
github.com/foo/bar@hash β Git repository (static)
blockchain.land/foo β Smart contract (live state)
aws.land/bar β Cloud service (managed)
local.land/_/baz β Local registry (development)
preview.land/test β Staging environment (testing)
What Makes This Powerful:
- Network Abstraction: Same import syntax works across Web2, Web3, and local
- Environment Progression: Seamless promotion from local β preview β production
- Mixed Architectures: Combine traditional code, cloud services, and blockchain in one app
- Network-Aware Testing: Local development with appropriate mocking/simulation
- Wallet Integration: Blockchain deployments require proper authentication
- State Management: Each network handles persistence appropriately
Registry Behaviors:
local.land/_/: Local development registry (file-based)preview.land/: Staging environment (centralized, ephemeral)blockchain.land/: Production blockchain (decentralized, permanent)aws.land/: Web2 cloud proxy (managed service integration)github.com/: Traditional code imports (static, versioned)
CLI Experience: Docker + IPFS Simplicity
Unified CLI Design: Composable commands that feel familiar to Go/Docker/IPFS users.
Core Commands:
# Development workflow
amigo build . # Build service from current directory
amigo serve . # Serve with auto-generated APIs
amigo push . # Push to registry
amigo pull remote.land/foo # Import remote service
amigo call remote.land/foo # Execute remote service
amigo publish . # Make available for others to import
# Network exploration
amigo map # Show network topology
amigo why foo # Explain service dependencies
amigo connect foo # Establish service connection
# Multi-scheme support
amigo pull https://service.com/api
amigo pull ./local/service
amigo pull newscheme://distributed.service
Experience Goals:
- Go-like: Standard binary commands for familiar operations
- Docker-like: Build/execution workflow developers understand
- Blockchain-like: Network requests and state queries
- Unified: One CLI for all network operations
Phase 2: Progressive Decentralization
Web2 β P2P β Blockchain:
- Start with centralized hub for speed
- Add P2P networking for resilience
- Blockchain for governance and value transfer
- Maintain simple Go import syntax throughout
Phase 3: Network Effects
Ecosystem Growth:
- Every app becomes both standalone AND a dependency
- Revenue sharing for imported services
- Automatic scaling and optimization
- Community-driven service marketplace
Technical Architecture
Core Components
Amigos Hub:
- Service registry and discovery
- Authentication and authorization
- State management and persistence
- Inter-service communication
Amigos Runtime:
- Go module integration
- Service lifecycle management
- Resource allocation and scaling
- Network routing and load balancing
Amigos CLI:
- Service development and deployment
- Local testing and debugging
- State management and migration
- Performance monitoring
Development Tools:
- Static analyzer/formal proof: Built-in verification by default
- Graphviz explorers: Visual dependency graphs for code, state, and execution flow
- Network mapping: Real-time topology and connection visualization
- Dependency analysis: βWhyβ commands for understanding service relationships
Hub Network (amigos.hub):
- Ecosystem configuration: Centralized registry for essential settings
- Network whitelist: Trusted network validation and discovery
- Version registry: Current software versions and upgrade paths
- Name resolution: Short handles for usernames and domain names
- Governance coordination: Community decision-making infrastructure
Service Model
Every Service Provides:
type Service interface {
Render() string // Universal UI rendering
State() interface{} // Current state export
Migrate(old) error // State migration
Health() Status // Health check
}
Every Service Gets:
- Automatic authentication
- State persistence
- Network connectivity
- Monitoring and logging
- Scaling and redundancy
Technical Strategy: Two-Path Approach
Path A: Quick Launch (Ignite/Cosmos SDK)
Timeline: ~1 month to launch
- Use Ignite CLI for rapid chain development
- Leverage Tendermint consensus and Proof of Stake
- Write Go smart contracts in familiar syntax
- Deploy on Cosmos ecosystem for immediate network effects
Benefits:
- Fast market entry and user feedback
- Proven technology stack (Tendermint + Cosmos SDK)
- Existing Cosmos ecosystem and tooling
- Revenue generation while building Path B
Path B: Homemade VM (Long-term Vision)
Timeline: ~12 months development
- Custom virtual machine optimized for service imports
- Native Go module integration
- Advanced state management and forking
- Custom consensus mechanisms
Benefits:
- Complete control over technical direction
- Optimized for our specific use case
- No dependency on external blockchain frameworks
- Technical differentiation and competitive moats
Dual Development Strategy
Phase 1 (Months 1-3): Quick Launch
- Deploy Ignite-based chain for immediate market presence
- Implement basic service import functionality
- Launch developer alpha with core features
- Generate initial revenue and user feedback
Phase 2 (Months 4-12): Parallel Development
- Maintain and improve Ignite chain based on user feedback
- Develop homemade VM in parallel
- Test migration strategies and compatibility
- Prepare for eventual transition
Phase 3 (Month 12+): Strategic Transition
- Launch homemade VM as βAmigos 2.0β
- Migrate existing services and users
- Maintain Ignite chain for compatibility
- Full feature parity plus advanced capabilities
Roadmap & Milestones
Phase 1: Foundation (Months 1-3)
Goal: Working local development environment and VM core
Team 1 - VM Core:
- Basic VM with contract storage and execution
- Simple Go AST parsing and interpretation
- Core APIs: AddContract, RunContract, Eval, GetObject*
- Comprehensive unit testing framework
Team 2 - Local Backend:
- HTTP API with SQLite/PostgreSQL backend
- Basic web explorer for contracts and state
- Network interface standardization
- RESTful endpoints for contract management
Team 3 - Client CLI:
- Docker-inspired amigo CLI commands
- Local network connectivity
- Basic push/call/inspect functionality
- Developer-friendly command structure
Success Metrics:
- Deploy and execute simple Go contracts locally
- Web-based contract explorer working
- CLI can push/call contracts via HTTP
- 100+ unit tests passing for VM core
Phase 2: Blockchain Integration (Months 3-6)
Goal: Production blockchain with crypto authentication
Team 4 - Blockchain Integration:
- Tendermint + Cosmos SDK implementation
- Crypto-based wallet authentication
- Genesis setup and validator management
- Network interface compliance for blockchain mode
Team 1 - VM Evolution:
- Import system for contract dependencies
- Performance optimizations
- Advanced state management
- Security and formal verification tools
Team 3 - CLI Enhancement:
- Multi-network support (local + blockchain)
- Wallet integration and key management
- Cross-network compatibility testing
Success Metrics:
- Testnet running with validator set
- Wallet-based contract deployment working
- Same contracts run on local and blockchain
- 50+ contracts deployed on testnet
Phase 3: Production Scaling (Months 6-12)
Goal: Web2 PaaS and enterprise deployment options
Team 5 - Web2 PaaS:
- Kubernetes-based cluster deployment
- Traditional authentication (OAuth, sessions)
- Auto-scaling and load balancing
- Enterprise SSO integration
Team 2 - Advanced Tooling:
- Production-grade web explorer
- Advanced debugging and profiling tools
- State migration and backup systems
- Performance monitoring dashboard
Team 4 - Mainnet Launch:
- Production blockchain with economic incentives
- Governance and upgrade mechanisms
- Cross-chain IBC integration (future)
- Enterprise blockchain features
Success Metrics:
- Scalable cloud platform operational
- Enterprise authentication working
- Mainnet with token economics live
- 1000+ contracts in production across all networks
Year 2: Strategic Transition
2027: Amigos 2.0 launch
- Homemade VM mainnet launch
- Seamless migration from Ignite chain
- Advanced features: better state management, custom consensus
- Market leadership position established
Success Metrics:
- Successful migration of 80%+ existing services
- 10x performance improvement over Ignite version
- 10K+ developers actively using platform
- $50M+ Series A funding raised
- Industry recognition as technical leader
- IPO preparation or strategic acquisition offers
Community & Ecosystem Implementation Timeline
Phase 1 (Months 1-6)
- Hire first DevRel/community builder
- Launch first hackathon program
- Establish βamigos.hubβ governance structure
- Begin dogfooding with internal products
Phase 2 (Months 6-12)
- Launch incubator program
- Hire hackers in residence
- Expand hackathon themes and frequency
- Partner with external companies for real use cases
Phase 3 (Year 2+)
- Scale community programs
- International expansion of events
- Advanced governance decentralization
- Ecosystem fund for larger investments
Year 3-5: Dominance (2027-2030)
Strategic Goals:
- Become the standard platform for service composition
- IPO preparation and execution
- Global expansion beyond Go ecosystem
- Integration with major cloud providers
Technical Evolution:
- Multi-language support (starting with Rust, TypeScript)
- Advanced AI/ML service integration
- Edge computing and global distribution
- Blockchain governance and tokenomics
Competitive Strategy
Advantages Over Incumbents
vs. AWS/Google Cloud:
- Developer-first experience
- Service composition vs infrastructure
- Open source vs vendor lock-in
- Standard imports vs proprietary APIs
vs. Vercel/Netlify:
- Backend services vs just frontend
- Service marketplace vs isolated functions
- State persistence vs stateless only
- Real applications vs simple sites
vs. Kubernetes:
- Application-level vs infrastructure-level
- Automatic vs manual configuration
- Service imports vs YAML complexity
- Developer focus vs operations focus
Technical Differentiation
Key Innovations:
- Import Economy: Live service imports using Go module system
- Copy-on-Write State: Fork services with their data
- Universal Rendering: Every service can render UI
- Progressive Decentralization: Web2 β P2P β Blockchain evolution
- Revenue Sharing: Automatic compensation for service authors
Success Metrics
Technical KPIs
- Service Deployment Time: < 30 seconds from import to live
- Service Uptime: 99.9% availability SLA
- Developer Onboarding: < 5 minutes to first service
- Service Composition: Average 3-5 imports per application
- Performance: < 100ms average response time
Business KPIs
- Developer Growth: 10x year-over-year
- Service Volume: 1000+ services in marketplace
- Revenue Per Developer: $100+ monthly average
- Retention Rate: 80%+ monthly active developers
- Market Share: 10% of new Go projects using Amigos
Risk Mitigation
Technical Risks
- Service Dependencies: Robust fallback and versioning
- State Consistency: Advanced conflict resolution algorithms
- Security: Zero-trust architecture and automatic auditing
- Performance: Distributed architecture and intelligent caching
- Scaling: Horizontal service architecture from day one
Market Risks
- Developer Adoption: Strong early community and examples
- Competitive Response: Fast iteration and innovation
- Platform Risk: Multi-cloud and decentralized approach
- Economic Downturns: Focus on developer productivity gains
The Commitment
This product direction represents our best understanding of where the market is heading and what developers actually need.
Weβre building for the long term - not just the next funding round, but the next decade of software development.
Key Principle: Every decision optimizes for developer happiness and productivity, not short-term revenue or investor demands.