Managed Package Architecture

Design and manage Salesforce 2GP packages with namespace and versioning workflows.

Updated Jan 15, 2026
One-click install
npx skills add https://github.com/KaiserWhoLearns/skillsbench --skill managed-package-architecture
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Managed Package Architecture
Source: https://github.com/KaiserWhoLearns/skillsbench/tree/main/registry/terminal_bench_2.0/terminal_bench_2_0_pypi-server/environment/skills/managed-package-architecture
Command: npx skills add https://github.com/KaiserWhoLearns/skillsbench --skill managed-package-architecture

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

The skill helps ISVs and developers design, organize, and govern second-generation managed packages (2GP) including namespace strategy, package structure, versioning, and subscriber patterns.

Core Features & Use Cases

  • Namespace strategy and deployment planning for 2GP packages
  • Package directory layouts and dependencies management across multiple packages
  • Lifecycle management including versioning, ancestor versions, and subscriber org considerations
  • Guidance on ISV patterns and License Management Application (LMA) usage for subscriber orgs

Quick Start

Outline a starter 2GP package layout and naming conventions for a new ISV project.

Frequently Asked Questions about Managed Package Architecture

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I plan namespaces and package structure for a new Salesforce 2GP project?

Designing a 2GP architecture involves defining namespace strategy, structuring package directories, and configuring sfdx-project.json. This establishes clear dependency management and organized deployment workflows for multi-package Salesforce ISV ecosystems.

What is ancestor versioning and how does it work for second-generation managed packages?

Ancestor versioning in second-generation managed packages establishes a lineage between package versions to enable controlled upgrades. It governs lifecycle workflows by linking new package versions to their prior baseline for subscriber org deployments.

Can I manage multi-package deployments and subscriber orgs using sfdx-project.json?

Yes, sfdx-project.json configuration supports multi-package deployments by defining package directories and dependencies. For subscriber orgs, License Management Application (LMA) usage provides lifecycle guidance and tracking across the ISV ecosystem.

What's the best way to structure dependencies across multiple 2GP packages for an ISV?

The best way to structure 2GP dependencies is to organize package directory layouts with clear ancestor versioning and namespace planning. This dependency management approach prevents conflicts and ensures stable multi-package deployments across subscriber orgs.

When do I need to consider LMA-based lifecycle guidance for Salesforce 2GP packages?

You need LMA-based lifecycle guidance when managing subscriber orgs for your 2GP packages. It applies to ISV patterns for tracking licenses, controlling package versioning distribution, and governing the subscriber lifecycle across multi-package deployments.

Why does namespace strategy matter when designing second-generation managed packages?

Namespace strategy matters for 2GP packages because it prevents naming collisions and establishes a unique identity for your ISV components. Proper namespace planning ensures compatible package structure and smooth versioning workflows across multi-package deployments.