Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions plugins/microsoft-managed-apps/AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Microsoft Managed Apps Plugin — Development Guidelines

This file provides instructions for assistants working on the Microsoft Apps plugin itself (not for end-users of the plugin).
This file provides instructions for assistants working on the Managed apps plugin itself (not for end-users of the plugin).

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sentence case = managed is capitalized when it's the first word of a sentence. So here, it should be "managed apps"


## Overview

The Microsoft Apps plugin wraps `@microsoft/managed-apps-cli` (binary `ms`) to scaffold, develop, and ship Microsoft Apps end-to-end. It provides skills for:
The Managed apps plugin wraps `@microsoft/managed-apps-cli` (binary `ms`) to scaffold, develop, and ship Managed apps end-to-end. It provides skills for:

- Creating a new app (`/create-app`) — global install of the CLI, scaffold, local dev loop.
- Iterating locally (`/dev`) — `ms app dev`, hot reload against the App Player.
Expand Down
4 changes: 2 additions & 2 deletions plugins/microsoft-managed-apps/QUICKSTART.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Quick Start Guide

Build and run a Microsoft App using just your coding copilot. No prior Microsoft Apps knowledge needed.
Build and run a Microsoft App using just your coding copilot. No prior Managed apps knowledge needed.

---

Expand All @@ -15,7 +15,7 @@ node --version # should print v22.x.x or higher
```

**Git**
Microsoft Apps stores app code in a remote git repository, and `ms app create` initializes the local repo. Install from [git-scm.com](https://git-scm.com). Git for Windows includes Git Credential Manager, which the first `ms app create` will exercise.
Managed apps stores app code in a remote git repository, and `ms app create` initializes the local repo. Install from [git-scm.com](https://git-scm.com). Git for Windows includes Git Credential Manager, which the first `ms app create` will exercise.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here "Managed" being capitalized makes sense because it's the first word of the sentence.


That's it for now — `/create-app` installs the `ms` CLI itself globally on its first run.

Expand Down
6 changes: 3 additions & 3 deletions plugins/microsoft-managed-apps/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

> **Preview** — this plugin is in preview and under active development. Behavior may change.

Copilot plugin for building **Microsoft Apps** using `@microsoft/managed-apps-cli` (binary `ms`), React, and Vite. Works with both Claude Code and GitHub Copilot.
Copilot plugin for building **Managed apps** using `@microsoft/managed-apps-cli` (binary `ms`), React, and Vite. Works with both Claude Code and GitHub Copilot.

Microsoft Apps run locally against the App Player with hot reload (`ms app dev`) and deploy to the cloud only when you choose to.
Managed apps run locally against the App Player with hot reload (`ms app dev`) and deploy to the cloud only when you choose to.

## What's Included

Expand All @@ -19,7 +19,7 @@ Microsoft Apps run locally against the App Player with hot reload (`ms app dev`)
- [Node.js v22+](https://nodejs.org/)
- Git + Git Credential Manager
- [Claude Code](https://code.claude.com/docs/en/getting-started) or [GitHub Copilot CLI](https://github.com/features/copilot/cli/)
- Access to a Microsoft Apps-enabled tenant. The `@microsoft/managed-apps-cli` package is published on the public npm registry: [`@microsoft/managed-apps-cli`](https://www.npmjs.com/package/@microsoft/managed-apps-cli).
- Access to a Managed apps-enabled tenant. The `@microsoft/managed-apps-cli` package is published on the public npm registry: [`@microsoft/managed-apps-cli`](https://www.npmjs.com/package/@microsoft/managed-apps-cli).

The `/create-app` skill handles the global install of `@microsoft/managed-apps-cli@latest` on its own — you don't need to set that up by hand.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
---
name: microsoft-apps-architect
description: Microsoft Apps Architect specializing in React/Vite architecture, the @microsoft/managed-apps-cli (ms) toolchain, connector and data-source patterns, and local-dev-first iteration. Use when making architecture decisions, designing data models, selecting connectors, or troubleshooting `ms app create` / `ms app dev` / build issues.
description: Managed apps Architect specializing in React/Vite architecture, the @microsoft/managed-apps-cli (ms) toolchain, connector and data-source patterns, and local-dev-first iteration. Use when making architecture decisions, designing data models, selecting connectors, or troubleshooting `ms app create` / `ms app dev` / build issues.
---

**📋 Shared Instructions: [shared-instructions.md](${CLAUDE_PLUGIN_ROOT}/shared/shared-instructions.md)** - Cross-cutting concerns (CLI install, env vars, planning, memory bank, execution style).

# Microsoft Apps Architect
# Managed apps Architect

You are a Microsoft Apps Architect with deep expertise in building web apps on the Microsoft Apps platform. Your toolchain is `@microsoft/managed-apps-cli` (binary `ms`).
You are a Managed apps Architect with deep expertise in building web apps on the Managed apps platform. Your toolchain is `@microsoft/managed-apps-cli` (binary `ms`).

## Execution Guardrails

- **Skill-first**: Before taking any action, check whether a skill exists for it. Use `/create-app`, `/dev`, `/deploy`, `/share`, and `/add-*` skills when applicable. Never do ad-hoc what a skill already handles.
- **Local-dev-first, not deploy-every-cycle**: The default inner loop is `ms app dev` (local App Player with hot reload), not deploy. Only deploy when the user explicitly asks.
- **Connector-first**: never propose raw `fetch`/`axios` calls when a Power Platform connector exists. Microsoft Apps run inside a sandbox that blocks arbitrary outbound HTTP; only connector-proxied calls work at runtime.
- **Connector-first**: never propose raw `fetch`/`axios` calls when a Power Platform connector exists. Managed apps run inside a sandbox that blocks arbitrary outbound HTTP; only connector-proxied calls work at runtime.

## Your Expertise

- **React + Vite**: Component architecture, state management, TypeScript strict mode.
- **Microsoft Apps platform**: How `ms app create` provisions app metadata + a remote git repository, how `ms app dev` runs a two-server local stack (dev + config) against the App Player, and how `ms app deploy` gets the app into the cloud.
- **Managed apps platform**: How `ms app create` provisions app metadata + a remote git repository, how `ms app dev` runs a two-server local stack (dev + config) against the App Player, and how `ms app deploy` gets the app into the cloud.
- **Connector patterns**: Understanding all available connectors (Office 365, Teams, SharePoint, OneDrive, Excel, Azure DevOps, Dataverse) and intelligently selecting them based on app requirements using the Connector Decision Guide.
- **Connector Decision Guide** ([shared/connector-decision-guide.md](../shared/connector-decision-guide.md)): You must reference this guide when recommending connectors. Apply the decision trees and common app patterns to match user scenarios to the right connector(s).

Expand All @@ -45,11 +45,11 @@ ms --version # Bin name has flipped between dev builds
- **Missing `ms`**: Direct the user to `/create-app`, which installs `@microsoft/managed-apps-cli@latest` globally from the public npm registry. Never instruct them to `npm install --save-dev` per-workspace — install globally so the `ms` binary is on PATH and the workspace stays clean.
- **All present**: Report versions and proceed.

## Key Considerations for Microsoft Apps
## Key Considerations for Managed apps

### Connector-First Principle

**Always use Power Platform connectors. Never make direct API calls (fetch, axios, Graph API, Azure REST, or any raw HTTP call).** Microsoft Apps run in the App Player sandbox; direct outbound HTTP fails at runtime.
**Always use Power Platform connectors. Never make direct API calls (fetch, axios, Graph API, Azure REST, or any raw HTTP call).** Managed apps run in the App Player sandbox; direct outbound HTTP fails at runtime.

**When recommending connectors, always:**
1. Start with the user's app goal (not available connectors)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -275,7 +275,7 @@ This skill handles ANY connector, including those not listed in this guide. When

**This guide covers the most common cases, but `/add-connector` works with any Microsoft connector — not just the 10 listed above.**

### **For Microsoft Apps Architect Agent**
### **For Managed apps Architect Agent**

When recommending connectors for an app design:
1. Always start with the user's end goal (not available connectors)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Development Standards

Standards that apply to all Microsoft Apps skills.
Standards that apply to all Managed apps skills.

## Theme

Expand All @@ -26,7 +26,7 @@ Standards that apply to all Microsoft Apps skills.

## Build & Deploy

- **Default loop is `ms app dev`**, not deploy. Microsoft Apps run locally against the App Player with hot reload; deploy only when the user asks.
- **Default loop is `ms app dev`**, not deploy. Managed apps run locally against the App Player with hot reload; deploy only when the user asks.
- When the user does want to ship:
- Local-built (primary): `npm run build`, then `git add -A && git commit && git push`, then `ms app deploy`.
- Cloud-built: `git add -A && git commit && git push`, then `ms app deploy [--commit <sha>]`.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Shared Instructions

**This file aggregates all cross-cutting instructions that apply to every skill in the Microsoft Apps plugin.**
**This file aggregates all cross-cutting instructions that apply to every skill in the Managed apps plugin.**

All skills reference this single file. When new shared instructions are added, update this file only — no changes needed to individual skills.

Expand Down Expand Up @@ -107,7 +107,7 @@ By default, `ms app create` resolves and uses an environment automatically — p

**Always use Power Platform connectors. Never make direct API calls (fetch, axios, Graph API, Azure REST, etc.).**

Microsoft Apps run inside a sandbox. Direct HTTP calls to external APIs will fail at runtime because the sandbox does not allow arbitrary outbound network requests — only connector-proxied calls work.
Managed apps run inside a sandbox. Direct HTTP calls to external APIs will fail at runtime because the sandbox does not allow arbitrary outbound network requests — only connector-proxied calls work.

**If a connector exists for the service, use it — no exceptions.**

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: create-app
description: Creates Microsoft Apps using React and Vite. Use when scaffolding a new app with `ms app create` and ending on local dev with `ms app dev`.
description: Creates Managed apps using React and Vite. Use when scaffolding a new app with `ms app create` and ending on local dev with `ms app dev`.
user-invocable: true
allowed-tools: Read, Edit, Write, Grep, Glob, Bash, AskUserQuestion, EnterPlanMode, ExitPlanMode, Skill
model: opus
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

## Required Account

- A Microsoft work/school account with access to a Microsoft Apps-enabled tenant.
- A Microsoft work/school account with access to a Managed apps-enabled tenant.
- `ms app create` resolves an environment automatically — you do not need to know or provide one. (Advanced users who already have a specific environment ID can pass it via `--environment-id`.)

## Installing `@microsoft/managed-apps-cli`
Expand Down
2 changes: 1 addition & 1 deletion plugins/microsoft-managed-apps/skills/list-apps/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: list-apps
description: Discovers Microsoft Apps in the active environment via `ms app list --json` and optional `ms app show --json`. Use when listing or locating apps.
description: Discovers Managed apps in the active environment via `ms app list --json` and optional `ms app show --json`. Use when listing or locating apps.
user-invocable: true
allowed-tools: Read, Grep, Bash, AskUserQuestion
model: sonnet
Expand Down