agentleFS
MicrosoftKnown publishermicrosoft/managed-apps/plugins/microsoft-managed-apps/AGENTS.md

managed-apps / microsoft-managed-apps

AGENTS.md34 starsChanged 4 months agoMITView on GitHub

This file provides instructions for assistants working on the managed apps plugin itself (not for end-users of the plugin). 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: This plugin uses a memory bank (memory-bank.md) to persist state across sessions.

We split this AGENTS.md into the rules it gives an agent

7 rules. About 0 are common, 2 are distinctive, and 5 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Create the file in shared/ (e.g., new-policy.md).

    line 36
  2. Very specific:

    Add a section to shared/shared-instructions.md referencing it.

    line 37
  3. Very specific:

    No changes needed to individual SKILL.md files — they already link to shared-instructions.md.

    line 38
  4. Distinctive:

    All Rayfin work requires the Rayfin feature gate.

    line 85
  5. Distinctive:

    After modifying this plugin:

    line 134
  6. Very specific:

    Test in a fresh project: /create-app end-to-end, then a representative /add-*.

    line 137
  7. Very specific:

    Verify any new allowed-tools entries are minimal — request only what the skill needs.

    line 138

≈ “Common” is an estimate: at least 1 in 5 of the 36,368 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
AGENTS.md

Microsoft Managed Apps Plugin — Development Guidelines

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

Overview

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.
  • Lifecycle ops (/deploy, /share, /delete-app, /list-apps).
  • Defining an app backend database (/add-backend) — entities and a typed runtime client.
  • Binding data sources (/add-dataverse, /add-sharepoint, etc.) — generates typed TypeScript services under src/.

Memory Bank System

This plugin uses a memory bank (memory-bank.md) to persist state across sessions.

  • Location: <PROJECT_ROOT>/memory-bank.md (in the user's project, not the plugin).
  • Instructions: See shared/memory-bank.md for the full schema.
  • Skills read the memory bank at start and update it after major steps. The schema records the environment id the CLI resolved for reference only (e.g. reconstructing the App Player URL); it is not used to re-target ms app create, which resolves an environment automatically each run.

Shared Resources

FilePurpose
shared/shared-instructions.mdMeta file aggregating all cross-cutting concerns — every skill links to it.
shared/planning-policy.mdWhen to enter plan mode and what to include in the plan.
shared/memory-bank.mdMemory bank schema + read/update protocol.
shared/development-standards.mdTheme, CLI install pattern, build rules, TypeScript strict mode.
shared/allowed-actions.mdallowedActions authoring for shared connection references — required before pack/deploy.
shared/version-check.mdDaily plugin-version check against the marketplace.

Adding new shared instructions

  1. Create the file in shared/ (e.g., new-policy.md).
  2. Add a section to shared/shared-instructions.md referencing it.
  3. No changes needed to individual SKILL.md files — they already link to shared-instructions.md.

Skills

Stage 1: scaffold

SkillWhat it does
/create-appInstalls the CLI globally, scaffolds, ends on ms app dev.

Stage 2: lifecycle

SkillWraps
/devms app dev (local App Player, hot reload).
/deployms app deploy (default) plus optional ms app build / ms app build-status traceability flow.
/playms app play — open live or preview URL in browser.
/sharems app share / unshare.
/share-linkms app share link create / list / revoke.
/delete-appms app delete (idempotent).
/list-appsms app list / ms app show.

Stage 3: data sources

SkillWhat it adds
/stateBuilt-in app state schema via ms project state and generated TypeScript services.
/add-dataverseDataverse tables (typed services).
/add-sharepointSharePoint Online lists/documents.
/add-excelExcel Online (Business) workbooks.
/add-office365Office 365 Outlook (calendar, email).
/add-office365-usersOffice 365 Users (profiles, org relationships, profile photos).
/add-teamsTeams messaging.
/add-onedriveOneDrive for Business files.
/add-azuredevopsAzure DevOps work items / pipelines.
/add-mcscopilotMicrosoft Copilot Studio agents.
/add-workiqWork IQ Copilot MCP for Microsoft 365 knowledge-grounded search/chat.
/add-data-sourceGeneric fallback for any other connector.
/list-connectorsEnumerate connectors / bound data sources for discovery.

App backend database

Setup: /add-backend scaffolds the app backend database with ms app add backend --provider rayfin. Its local references use the installed SDK docs for API guidance.

Select it only for an explicit app backend database request (including /add-backend or Rayfin).

All Rayfin work requires the Rayfin feature gate.

ReferencePurpose
Data modelingWrite entities and the typed runtime client using installed SDK docs.
CRUD UIWrite database-backed lists, forms and CRUD operations; check UI behavior and persistence.

Workflow

/create-app
   └── /dev (default loop)
   └── /add-backend (when explicitly requested and the Rayfin feature is enabled)
   └── /add-data-source (or a specific connector skill)
   └── /deploy (explicit, requires confirmation)
   └── /share, /delete-app (explicit, require confirmation)

Skill structure

skills/<skill-name>/
├── SKILL.md                  # Workflow
└── references/               # Optional deep-dive docs
    └── <topic>-reference.md

Skill header

---
name: kebab-case-name
description: Short, action-oriented sentence the model uses for retrieval. Mention `ms` CLI verbs explicitly.
user-invocable: true
allowed-tools: Read, Edit, Write, Grep, Glob, Bash, AskUserQuestion, ...
model: sonnet  # or opus for design-heavy work
---

**📋 Shared Instructions: [shared-instructions.md](${CLAUDE_PLUGIN_ROOT}/shared/shared-instructions.md)** — Cross-cutting concerns.

Agent

AgentPurpose
microsoft-apps-architectArchitecture advisor for connector selection, codegen patterns, deploy.

Testing changes

After modifying this plugin:

  1. Bump the version field in .claude-plugin/plugin.json and the matching plugin entry in the repo-root .claude-plugin/marketplace.json.
  2. Test in a fresh project: /create-app end-to-end, then a representative /add-*.
  3. Verify any new allowed-tools entries are minimal — request only what the skill needs.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.