Engineering organizations handling proprietary software, regulated financial systems, or healthcare infrastructure face an acute dilemma when adopting AI codebase intelligence: tools like Mutable.ai deliver automated repository documentation (Auto Wiki), architecture diagrams, and conversational codebase search, but routing source code through multi-tenant public SaaS environments violates data security mandates.
The solution lies in deploying Mutable.ai within a dedicated Amazon Web Services (AWS) Virtual Private Cloud (VPC) topology. By isolating the codebase intelligence engine inside private subnets, routing model inferences over AWS PrivateLink, and binding repository access to internal Git systems, organizations gain full codebase intelligence while ensuring zero code leaves their security perimeter.
1. Enterprise Threat Model and Private Deployment Goals
In a standard multi-tenant SaaS setup, code snippets or vector embeddings travel across public transit networks to third-party model providers, creating three unacceptable enterprise risks:
- Shared Model Contamination: Proprietary logic or cryptographic primitives might be ingested into shared training datasets.
- Data-in-Transit Exposure: Code payloads crossing public endpoints risk interception or misconfiguration on foreign infrastructure.
- Broad Credential Exposure: Granting broad read tokens across private repositories to third-party SaaS platforms creates supply-chain vulnerability.
Mutable.ai’s enterprise tier addresses these issues through single-tenant isolation. When configured within a customer-controlled or dedicated AWS VPC, the entire ingestion pipeline—parsing abstract syntax trees (ASTs), vectorizing chunks, generating architectural diagrams, and rendering living Auto Wikis—remains within an isolated network boundary. Furthermore, enterprise contractual and technical controls guarantee that proprietary repositories are never pooled to train shared foundation models.
2. High-Level VPC Network Topology
A secure AWS VPC deployment separates the data plane (source code processing and vector retrieval) from any external network access.
+----------------------------------------------------------------------------------+
| Customer AWS VPC (Isolated Boundary) |
| |
| [ Private Subnet A & B - Compute Layer ] |
| - Mutable.ai Parser & Auto Wiki Workers (ECS / EKS) |
| - Codebase Chat Query Engine |
| - Local Vector / Metadata Store (Encrypted with AWS KMS) |
| | |
| |-- (Internal HTTPS / ENI) |
| v |
| [ Interface VPC Endpoints (AWS PrivateLink) ] |
| +-- com.amazonaws.<region>.bedrock-runtime --> Dedicated Model Inference |
| +-- com.amazonaws.<region>.s3 --> Wiki Artifacts & Snapshots |
| +-- com.amazonaws.<region>.secretsmanager --> Git OAuth Tokens / Keys |
| +-- com.amazonaws.<region>.kms --> Envelope Encryption Keys |
| |
+----------------------------------------------------------------------------------+
^ ^
| (VPC Peering / Transit Gateway) | (PrivateLink / SSO)
v v
+-------------------------------+ +--------------------------+
| Internal Git Repository | | Corporate Identity (IdP) |
| (GitHub Enterprise / GitLab) | | Okta / SAML / OIDC |
+-------------------------------+ +--------------------------+
Key Architectural Tenets
- No Public IPv4 or Internet Gateway: Worker nodes operate in private subnets with no route table entry pointing to an Internet Gateway (
igw-xxxx). - Inference via AWS PrivateLink: All LLM queries and Auto Wiki generation prompts travel across private VPC endpoints (such as
com.amazonaws.<region>.bedrock-runtime) directly over the AWS private backbone. - Controlled Ingress and Egress: Ingress is restricted to internal corporate networks via AWS Transit Gateway or VPN; egress to the public internet is disabled (
0.0.0.0/0deny).
3. Step-by-Step Configuration Guide
Step 1: Provision Isolated Subnets and Security Groups
Create dedicated private subnets across at least two Availability Zones for high availability. Ensure route tables contain only local VPC routes and endpoints.
Define a restrictive security group for the Mutable.ai compute cluster:
- Inbound Rules: Allow TCP port 443 strictly from your internal developer subnet or Transit Gateway CIDR block.
- Outbound Rules: Deny outbound traffic to
0.0.0.0/0. Allow TCP port 443 strictly to the security group assigned to your Interface VPC Endpoints.
Step 2: Configure AWS PrivateLink Endpoints
Deploy Interface VPC Endpoints within your private subnets so the Mutable.ai container cluster can access required cloud resources without traversing the internet:
- Model Inference Endpoint:
com.amazonaws.<region>.bedrock-runtimefor invoking foundation models (e.g., Claude or Llama variants hosted via Amazon Bedrock). - Secrets Storage:
com.amazonaws.<region>.secretsmanagerto retrieve Git integration credentials. - Artifact Storage:
com.amazonaws.<region>.s3(Gateway or Interface Endpoint) for storing generated documentation bundles, AST caches, and diagram assets. - Key Management:
com.amazonaws.<region>.kmsfor decrypting database tables and S3 objects.
Enable Private DNS on each Interface Endpoint so SDK calls automatically route to local Elastic Network Interfaces (ENIs).
Step 3: Implement VPC Endpoint Resource Policies
Prevent lateral data exfiltration by applying strict resource policies directly to the VPC endpoints. For instance, restrict Bedrock invocation exclusively to the specific foundation models vetted by your security committee:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowSpecificModelsForMutableAI",
"Effect": "Allow",
"Principal": "*",
"Action": [
"bedrock:InvokeModel",
"bedrock:InvokeModelWithResponseStream"
],
"Resource": "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-3-5-sonnet*"
}
]
}
Step 4: Connect to Self-Hosted or Enterprise Git Repositories
Mutable.ai must clone and index repositories to build living wikis and parse code symbols. For companies running GitHub Enterprise Server or self-hosted GitLab:
- Establish an AWS Transit Gateway attachment or VPC Peering Connection between the Mutable.ai VPC and your internal Git server VPC.
- In AWS Secrets Manager, store a scoped Git App token or personal access token granting read-only permissions to necessary repositories.
- Configure webhook payloads from Git pull requests to target the internal Application Load Balancer (ALB) fronting the Mutable.ai ingestion worker. This triggers automatic Auto Wiki revisions whenever code merges into
main.
Step 5: Enforce At-Rest and In-Transit Encryption
- At Rest: Configure customer-managed keys (CMK) in AWS KMS to encrypt local PostgreSQL or Redis state, OpenSearch vector indices, and S3 documentation buckets. Rotate keys annually.
- In Transit: Enforce TLS 1.3 across all internal microservice calls. Reject any unencrypted HTTP traffic at the load balancer level.
4. Operational Controls and Verification
Once deployed, engineering leaders must verify that proprietary code remains completely contained:
| Audit Control | Verification Mechanism | Success Criteria |
|---|---|---|
| Outbound Internet Egress | Inspect VPC Flow Logs in CloudWatch | Zero accepted packets to public IP ranges (0 packets to non-VPC/non-AWS endpoint destinations). |
| Model Data Retention | Verify AWS Bedrock and vendor enterprise terms | Model provider does not retain prompts or completions for training. |
| Access Rights | SAML 2.0 / OIDC Role Mapping via Okta | Only developers with explicit repo read permissions can view corresponding Auto Wiki pages. |
| Key Access Audit | AWS CloudTrail KMS Decrypt events | Decrypt calls originate exclusively from the Mutable.ai ECS/EKS task IAM execution role. |
5. Architectural Trade-offs and Best Practices
| Architecture Pattern | Primary Advantage | Operational Consideration | Recommended Scenario |
|---|---|---|---|
| Fully Private VPC (Self-Hosted Appliance) | Total data residency; zero third-party cloud interaction | Requires internal infrastructure maintenance, patching, and capacity planning | Defense, Tier-1 banking, healthcare core IP |
| Vendor Single-Tenant Managed VPC (AWS PrivateLink Connected) | Zero operational overhead for patches; isolated single-tenant compute | Requires contractual auditing and private cross-account endpoint configuration | High-growth fintech, SaaS platforms, enterprise scale |
Practical Recommendations for Tech Leads
- Start with Automated Wiki Indexing on Core Services: Begin deployment on 2–3 high-traffic shared libraries. Evaluate AST parsing performance and token consumption before rolling out across thousands of monorepo packages.
- Use Pre-commit / CI Hooks for Secret Scrubbing: Ensure proprietary repos do not contain embedded hardcoded API keys before Mutable.ai digests code comments into markdown documentation.
- Monitor PrivateLink Bandwidth: In large monorepos with frequent commits, frequent full-repo re-indexing can generate substantial PrivateLink throughput. Configure Mutable.ai to use incremental git-diff updates rather than full-tree rebuilding on every PR.