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
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"name": "microsoft-managed-apps",
"source": "./plugins/microsoft-managed-apps",
"description": "[Preview] Create and manage Microsoft Managed Apps using the @microsoft/managed-apps-cli (ms) toolchain.",
"version": "2.0.2"
"version": "2.0.3"
}
]
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "microsoft-managed-apps",
"version": "2.0.2",
"version": "2.0.3",
"description": "[Preview] Create and manage Microsoft Managed Apps using the @microsoft/managed-apps-cli (ms) toolchain.",
"author": {
"name": "Microsoft",
Expand Down
2 changes: 1 addition & 1 deletion plugins/microsoft-managed-apps/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ This plugin uses a memory bank (`memory-bank.md`) to persist state across sessio
| `shared/shared-instructions.md` | Meta file aggregating all cross-cutting concerns — every skill links to it. |
| `shared/planning-policy.md` | When to enter plan mode and what to include in the plan. |
| `shared/memory-bank.md` | Memory bank schema + read/update protocol. |
| `shared/development-standards.md` | Versioning, theme, CLI install pattern, build rules, TypeScript strict mode. |
| `shared/development-standards.md` | Theme, CLI install pattern, build rules, TypeScript strict mode. |
| `shared/version-check.md` | Daily plugin-version check against the marketplace. |

### Adding new shared instructions
Expand Down
2 changes: 1 addition & 1 deletion plugins/microsoft-managed-apps/QUICKSTART.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ Your copilot will:
3. Run `ms app create` to scaffold the project.
4. Start `ms app dev` so you can play the app locally in the App Player.

If the folder is not empty, the skill will stop and ask you to switch to an empty folder (or explicitly confirm overwrite behavior).
If the folder is not empty, the skill will create the app in an inferred subfolder and tell you which folder it selected. If you run it from inside an existing Microsoft App, it creates the new app alongside that app instead of nested inside it.

Nothing deploys to the cloud at this point — local dev only.

Expand Down
4 changes: 2 additions & 2 deletions plugins/microsoft-managed-apps/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,10 @@ The `/create-app` skill handles the global install of `@microsoft/managed-apps-c
## Try it

```
/create-app
/create-app <description here>
```

The skill walks you through global tooling install, account selection, app scaffolding, and a local dev server you can hit in the App Player. Nothing deploys to the cloud unless you explicitly ask.
Describe the app in the command and the skill generates its name, plans the complete requested experience for your approval, scaffolds it, builds it, and starts a local dev server in the App Player. Nothing deploys to the cloud unless you explicitly ask.

## Telemetry

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@ Example: "Meeting Insights" app

## Connector Selection Checklist

When a user describes their app, ask these questions:
When a user describes their app, answer this checklist internally from the prompt and available discovery results. Ask the user only for a required value that cannot be inferred or discovered:

1. **Is the app primarily a SEARCH interface?**
- If YES → recommend Work IQ
Expand Down
12 changes: 5 additions & 7 deletions plugins/microsoft-managed-apps/shared/memory-bank.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,15 @@ The memory bank is always stored at: `<PROJECT_ROOT>/memory-bank.md`

1. If the user has specified a project path, check `<PROJECT_PATH>/memory-bank.md`.
2. If continuing from a previous skill in the same session, use the known project path.
3. If no path is known, ask the user for the project path.
3. If no path is known, discover likely project roots from the current workspace first. Ask for the project path only when multiple candidates remain ambiguous.

### Step 2: Read and Parse Context

If the memory bank exists, extract:

| Information | Purpose |
| --------------------------------- | ------------------------------------------------------ |
| Project path, name, version | Know what you're working with |
| Project path, name | Know what you're working with |
| Completed steps (checkboxes) | Skip steps already done |
| User preferences | Don't re-ask answered questions |
| Created resources | Know what data sources/connectors exist |
Expand All @@ -43,15 +43,15 @@ If the memory bank exists, extract:

### Step 3: Resume or Continue

- **If the current skill's steps are already marked complete**: Ask if they want to modify, add more, or skip to next steps.
- **If the current skill's steps are already marked complete**: Infer the next action from the request. Ask only when the requested action is unclear.
- **If partially complete**: Inform the user and resume from the incomplete step.
- **If not started**: Begin from the first step.

### Step 4: Inform the User

Always tell the user what you found:

> "I found your project memory bank. [Summary: project name, version, what's been completed]. Let's continue from [next step]."
> "I found your project memory bank. [Summary: project name, what's been completed]. Let's continue from [next step]."

---

Expand Down Expand Up @@ -107,15 +107,13 @@ Update after:
| Environment Name | [ENVIRONMENT_NAME] |
| Environment ID | [ENVIRONMENT_GUID — reference only, resolved by CLI] |
| Remote git URL | [URL] |
| Version | v1.0.0 |
| Created Date | [DATE] |
| Status | [In Progress / Created / Local Dev Running / Deployed] |

## User Preferences

### Design Preferences
- Theme: [Dark/Light]
- Version Display: [Enabled/Disabled]

### Technical Preferences
- Data Sources: [Dataverse, Azure DevOps, Teams, Excel, etc.]
Expand Down Expand Up @@ -179,7 +177,7 @@ To continue working on this project:

When reading the memory bank, extract:

1. **Project context**: Path, app name, environment, version.
1. **Project context**: Path, app name, environment.
2. **Completed work**: Check checkboxes to know what's done.
3. **User preferences**: Apply these without re-asking.
4. **Created resources**: Know what data sources/connectors exist.
Expand Down
7 changes: 6 additions & 1 deletion plugins/microsoft-managed-apps/shared/planning-policy.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,11 +41,16 @@ Before exiting plan mode, ensure your plan covers:

## Plan Dump for Debugging

**After the plan is finalized and before calling `ExitPlanMode`, write a file `<PROJECT_ROOT>/app_generated_plan.md`** containing:
Write a file `<PROJECT_ROOT>/app_generated_plan.md` containing:

1. **User Request** — the original user prompt / app description that triggered planning.
2. **Generated Plan** — the full plan presented to the user for approval.

### When to write it

- **Existing project** (`PROJECT_ROOT` already exists): write it after the plan is finalized and before calling `ExitPlanMode`.
- **New app creation**: `PROJECT_ROOT` does not exist yet, write it immediately **after** the app is scaffolded and `PROJECT_ROOT` is set, before implementing the app. It is then tracked in the app's Git repository.

### Format

```markdown
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,9 @@ The memory bank persists context across sessions. Every skill reads it at start

**📋 [development-standards.md](./development-standards.md)**

Standards for versioning, theme, build workflow, and TypeScript strict mode.
Standards for theme, build workflow, and TypeScript strict mode.

**Key Points:**
- Always display the app version in the UI; increment on each deploy.
- Default to dark theme (user can override).
- Always `npm run build` before `ms app deploy` — never skip the build.
- Always `git add -A`, commit, and push before `ms app deploy`.
Expand Down
Loading