From d80158e944b3a3f302cfedcd9d9e5898e0ddc538 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 26 Nov 2025 15:52:30 +0000 Subject: [PATCH 1/4] Initial plan From a31ed8b30106b3dca2419bed8762049f3fa3f13a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 26 Nov 2025 15:55:55 +0000 Subject: [PATCH 2/4] Initial plan for community template ecosystem design Co-authored-by: danielmeppiel <51440732+danielmeppiel@users.noreply.github.com> --- uv.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uv.lock b/uv.lock index 7fd8c75f8..9eb1a90e9 100644 --- a/uv.lock +++ b/uv.lock @@ -166,7 +166,7 @@ wheels = [ [[package]] name = "apm-cli" -version = "0.5.4" +version = "0.5.5" source = { editable = "." } dependencies = [ { name = "click", version = "8.1.8", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, From fbb300c047f5af0765e51877ca4ba6860bff1653 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 26 Nov 2025 15:59:46 +0000 Subject: [PATCH 3/4] Add template ecosystem documentation and create-apm-hello-world example Co-authored-by: danielmeppiel <51440732+danielmeppiel@users.noreply.github.com> --- docs/README.md | 1 + docs/templates.md | 279 ++++++++++++++++++ templates/create-apm-hello-world/README.md | 44 +++ templates/create-apm-hello-world/bin/index.js | 119 ++++++++ templates/create-apm-hello-world/package.json | 33 +++ .../.apm/chatmodes/developer.chatmode.md | 27 ++ .../coding-standards.instructions.md | 28 ++ .../templates/README.md | 47 +++ .../create-apm-hello-world/templates/apm.yml | 11 + .../templates/hello-world.prompt.md | 21 ++ 10 files changed, 610 insertions(+) create mode 100644 docs/templates.md create mode 100644 templates/create-apm-hello-world/README.md create mode 100644 templates/create-apm-hello-world/bin/index.js create mode 100644 templates/create-apm-hello-world/package.json create mode 100644 templates/create-apm-hello-world/templates/.apm/chatmodes/developer.chatmode.md create mode 100644 templates/create-apm-hello-world/templates/.apm/instructions/coding-standards.instructions.md create mode 100644 templates/create-apm-hello-world/templates/README.md create mode 100644 templates/create-apm-hello-world/templates/apm.yml create mode 100644 templates/create-apm-hello-world/templates/hello-world.prompt.md diff --git a/docs/README.md b/docs/README.md index 2160a06eb..fe111397d 100644 --- a/docs/README.md +++ b/docs/README.md @@ -15,6 +15,7 @@ Welcome to the Agent Package Manager documentation. Choose your path: - **[CLI Reference](cli-reference.md)** - Complete command documentation - **[Examples & Use Cases](examples.md)** - Real-world patterns - **[Integration Guide](integrations.md)** - VSCode, AI runtimes, tools +- **[Template Ecosystem](templates.md)** - Community templates via npm ## šŸ”§ **Advanced** - **[Runtime Integration](runtime-integration.md)** - Codex and LLM setup diff --git a/docs/templates.md b/docs/templates.md new file mode 100644 index 000000000..cef9caac5 --- /dev/null +++ b/docs/templates.md @@ -0,0 +1,279 @@ +# APM Template Ecosystem + +This document describes the community-driven template ecosystem for APM, following npm's initializer pattern (`npm init `). + +## Overview + +APM templates are distributed as npm packages named `create-apm-`. This allows: + +- **Community ownership** - Anyone can publish templates +- **Standard tooling** - Uses npm/npx (no new tools) +- **Versioning** - Templates evolve independently via semver +- **Discoverability** - Standard npm search works + +## Using Templates + +### Basic Usage + +```bash +# Run a template +apm init [project-name] + +# Examples: +apm init hello-world my-app # → npx create-apm-hello-world my-app +apm init express-api my-api # → npx create-apm-express-api my-api +apm init compliance # → npx create-apm-compliance (current dir) +``` + +### How It Works + +When you run `apm init