Env Strategy logo

Env Strategy

Community
korchard333
env-strategy

Power Platform environment strategy and topology. Use when: environment types, developer environments, sandbox, production, environment groups, environment routing, naming conventions, environment provisioning, environment topology, Managed Environments, environment lifecycle, multi-geo, environment variables across environments.

Overview

Publisherkorchard333
Repositoryclaude-power-platform-community
Skill nameenv-strategy
Stars
50
Forks
6
Bundled files
1
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 1 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by korchard333 on GitHub. Read the source before you install it.

Installation

Install the Env Strategy AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/korchard333/claude-power-platform-community/tree/main/.claude/skills/env-strategy
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/korchard333/claude-power-platform-community.git /tmp/claude-power-platform-community
mkdir -p .claude/skills
cp -r /tmp/claude-power-platform-community/.claude/skills/env-strategy .claude/skills/env-strategy
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Env Strategy in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Env Strategy on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Env Strategy is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Skill: Environment Strategy

When to Use

Trigger when designing environment topology, choosing environment types, provisioning environments, setting up developer environments, configuring Managed Environments, planning multi-geo deployments, or establishing environment naming conventions.


Environment Types

TypePurposeDataverseCapacity CostKey Characteristics
ProductionLive workloadsYesCounts against tenantFull backup (up to 28 days), full control, cannot be reset
SandboxDev/test/UATYesCounts against tenantCan be copied, reset, deleted; 7-day backup default
DeveloperPersonal dev workspaceYesFree (does not count)1 per user (up to 3), auto-cleanup after 90 days inactive, no sharing
DefaultAuto-created per tenantYesCounts against tenantAll licensed users get Environment Maker role — NOT for production
TrialShort-term evaluationYesFree30-day expiry, 1 per user, auto-deleted
Dataverse for TeamsTeam-scoped appsYes (Teams)Included with M365Security follows Teams membership, limited to 1M rows / 2GB

Decision Table: Which Environment Type?

ScenarioUse This TypeWhy
Individual maker experimentingDeveloperFree, isolated, auto-cleanup
Team building a proof of conceptSandboxShareable, resettable, low-risk
Formal testing / UATSandbox (Managed)Copy from prod, Managed Environment controls
Production workloadProduction (Managed)Full backup, governance, pipeline target
Quick demo for stakeholdersTrialNo capacity cost, self-service, 30 days
Teams-native app (< 1M rows)Dataverse for TeamsZero admin overhead, M365-licensed
CI/CD build environmentSandboxAutomated reset between builds

Naming Convention

Use a consistent pattern across all environments:

[Org]-[Project]-[Stage]-[Region]

Examples:

EnvironmentName
Contoso HR app — DevContoso-HR-Dev-AU
Contoso HR app — TestContoso-HR-Test-AU
Contoso HR app — UATContoso-HR-UAT-AU
Contoso HR app — ProductionContoso-HR-Prod-AU
Shared services — DevContoso-Shared-Dev-AU
Developer env (personal)Auto-named: {User}'s Environment

Rules:

  • Never use special characters or spaces (Power Platform admin APIs handle them poorly)
  • Include the region suffix for multi-geo tenants
  • Match the environment name to the solution name where possible
  • Document the naming convention in your governance wiki — consistency matters more than the specific format

Standard Environment Topology

Minimum Viable (Small Team)

Default (leave alone — personal productivity only)
  │
Developer environments (auto-provisioned per maker)
  │
[Project]-Dev (sandbox, unmanaged solutions)
  │
[Project]-Prod (production, managed solutions only)

Recommended (Enterprise)

Default (locked down — DLP, no premium connectors)
  │
Developer environments (auto-provisioned, DLP-restricted)
  │
[Project]-Dev (sandbox, unmanaged, maker workspace)
  │
[Project]-Test (sandbox, Managed Env, CI/CD target, managed solutions)
  │
[Project]-UAT (sandbox, Managed Env, user acceptance)
  │
[Project]-Prod (production, Managed Env, managed solutions only)
  │
[Shared]-Services (production, shared components, CoE)

Multi-Project Enterprise

Shared-Platform-Prod      ← CoE, shared connectors, base solution
  ├── ProjectA-Dev / Test / UAT / Prod
  ├── ProjectB-Dev / Test / UAT / Prod
  └── ProjectC-Dev / Test / UAT / Prod

Developer Environments

Developer environments are free, personal, and isolated. They are the recommended starting point for all makers.

Key Facts

  • Free — included with Power Apps Developer Plan (self-service sign-up)
  • Up to 3 per user
  • Auto-cleanup — turned off after 90 days of inactivity, then deleted if owner doesn't respond
  • Cannot share apps or flows with other users
  • Dataverse included — full schema creation, no capacity charge
  • No Dynamics 365 apps — D365 apps cannot be installed
  • Managed Environments NOT included — Developer Plan does not entitle Managed Environment features at runtime

When to Use Developer Environments

  • Learning and experimentation
  • Personal productivity apps (single user)
  • Initial prototyping before moving to a shared sandbox
  • Testing Web API scripts against a disposable Dataverse instance

Default Environment Routing

Automatically redirect new makers away from the default environment to personal developer environments:

Power Platform Admin Center → Settings → Environment routing
  → Enable "Route new makers to their own personal developer environment"

This prevents the default environment from becoming a dumping ground.


Environment Groups

Environment groups allow administrators to manage environments as collections and apply rules consistently.

Setup

Power Platform Admin Center → Environment groups → New group
  → Add environments → Apply rules

Common Group Patterns

GroupEnvironmentsRules Applied
All-ProductionAll prod environmentsManaged Env enabled, strict DLP, Solution Checker enforcement
All-DevelopmentAll dev/sandbox environmentsModerate DLP, sharing limits
Personal-ProductivityDeveloper environmentsRestrictive DLP, no premium connectors
ProjectA-LifecycleProjectA Dev/Test/UAT/ProdProject-specific DLP, pipeline stages

Environment Group Rules

Rule TypeDescriptionExample
DLP policyApply data policies to the groupBlock HTTP connector in production group
Sharing limitsRestrict how broadly apps can be sharedMax 20 users in personal-productivity group
Solution CheckerEnforce quality gatesBlock deployment if critical issues found
Managed EnvironmentAuto-enable Managed Environment featuresEnable for all production environments
Maker welcome contentCustom guidance for makersLink to governance wiki

Managed Environments

Managed Environments is the governance overlay for Power Platform. It adds premium controls on top of any environment type (except Developer at runtime).

When to Enable

Environment StageManaged Environments?Rationale
ProductionAlwaysFull governance, telemetry, pipeline target
UATAlwaysMirrors production governance
Test / CI-CD targetAlwaysPipeline targets require Managed Environments (Feb 2026)
Developer (shared sandbox)RecommendedSharing limits, solution checker
Personal developer envNot requiredNo entitlement under Developer Plan
DefaultRecommendedLock down with sharing limits

Feb 2026 mandate: Power Platform Pipeline target environments must be Managed Environments. Auto-enabled on pipeline targets starting February 2026.

Key Capabilities

CapabilityWhat It Does
IP FirewallRestrict access to specific IP ranges
IP Cookie BindingPrevent session hijacking across IPs
Customer Managed KeysEncrypt at rest with your Azure Key Vault keys
LockboxRequire approval for Microsoft engineer data access
Weekly DigestUsage summary emailed to admins
Limit SharingCap how many users an app can be shared with
Solution Checker EnforcementBlock deployments failing quality checks
Export to App InsightsTelemetry to Azure Application Insights
Conditional Access per AppEntra ID conditional access on individual apps
VNet SupportConnect to your Azure Virtual Network
License Auto-ClaimAutomatically assign licenses when users access apps

Licensing

Managed Environments is included with:

  • Power Apps Premium (per-user)
  • Power Automate Premium (per-user)
  • Dynamics 365 Enterprise licenses
  • Copilot Studio licenses
  • Power Pages licenses

NOT included with: Developer Plan (at runtime), M365 seeded licenses, trial licenses.


Environment Variable Cascading

Environment variables let you define configuration once in a solution and set different values per environment.

Pattern

Solution contains:
  environmentvariabledefinition: contoso_ApiBaseUrl (type: String)
    └── environmentvariablevalue: (no default — set per environment)

Dev environment:   contoso_ApiBaseUrl = "https://api-dev.contoso.com"
Test environment:  contoso_ApiBaseUrl = "https://api-test.contoso.com"
Prod environment:  contoso_ApiBaseUrl = "https://api.contoso.com"

Best Practices

  • Never set default values in the solution for environment-specific config — force explicit values per environment
  • Use deployment settings files to automate value injection during CI/CD (see alm skill)
  • Secret type environment variables reference Azure Key Vault — use for API keys, connection strings
  • JSON type for complex configuration (feature flags, endpoint maps)

Multi-Geo Considerations

ConcernGuidance
Data residencyEnvironments store data in the geo where they're created — cannot move after creation
Cross-geo pipelinesPower Platform Pipelines support cross-geo deployment (when enabled on host)
User latencyCreate environments in the geo closest to the majority of users
ComplianceSome regulations (GDPR, data sovereignty) require data to stay in specific geos
Geo availabilityNot all features are available in all geos — check availability matrix

Geo Naming in Environment Names

Contoso-HR-Prod-AU    ← Australia
Contoso-HR-Prod-EU    ← Europe
Contoso-HR-Prod-US    ← United States

Environment Lifecycle

Create → Configure (DLP, Managed Env, security) → Active
  │
  ├── Copy (sandbox → sandbox, production → sandbox)
  │
  ├── Reset (sandbox only — wipes data, keeps config)
  │
  ├── Backup → Restore (production: up to 28 days)
  │
  └── Delete (permanent — no undo)

Backup & Restore Cadence

Environment TypeSystem BackupRetentionManual Backup
ProductionContinuous (every ~1 hour)Up to 28 daysYes
SandboxContinuous7 daysYes
DeveloperNoneNoneNo
DefaultContinuous7 daysYes

Pre-Deployment Backup

Always take a manual backup before deploying to production:

powershell
# PowerShell — backup before deployment
$envId = "00000000-0000-0000-0000-000000000000"
$backupLabel = "Pre-deploy-v2.1.0-$(Get-Date -Format 'yyyy-MM-dd')"

# Using Power Platform admin connector or Admin API
# Power Platform Admin Center → Environments → [env] → Backups → Create

Anti-Patterns

  • Everyone builds in the default environment — leads to ungoverned sprawl, no ALM possible, data comingled
  • No DLP on developer environments — makers learn bad habits with unblocked connectors, then can't deploy to prod
  • Manual environment creation for each developer — use developer environments (free, self-service, auto-cleanup) instead
  • No Managed Environments on pipeline targets — will break after Feb 2026 mandate
  • Skipping the test/UAT stage — deploying from dev straight to production with no intermediate validation
  • Using production environment for development — risk of data corruption, no reset capability
  • No naming convention — impossible to identify environment purpose at scale
  • Ignoring environment variable cascading — hardcoding URLs/keys per environment instead of using env vars in solutions
  • Creating sandbox environments without cleanup plan — sandbox sprawl consumes capacity
  • No environment groups — managing 50+ environments individually instead of as governed collections

Related Skills

  • alm — CI/CD pipelines, solution promotion across environments
  • governance — DLP policies, tenant settings applied per environment
  • licensing — Managed Environment licensing requirements
  • security — Security roles and access control per environment

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Env Strategy AI skill do?

Power Platform environment strategy and topology. Use when: environment types, developer environments, sandbox, production, environment groups, environment routing, naming conventions, environment provisioning, environment topology, Managed Environments, environment lifecycle, multi-geo, environment variables across environments.

Why use Env Strategy on TypingMind?

Because you install it once and use it with any model. Env Strategy is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Env Strategy in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/korchard333/claude-power-platform-community/tree/main/.claude/skills/env-strategy. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Env Strategy?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Env Strategy?

As many as you like. As long as a model supports skills, you can use Env Strategy with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Env Strategy AI skill free?

Yes. It is published on GitHub by korchard333 under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇