multimodel-dev-os 2.8.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/.ai/plugins/catalog/.ai/checks/pre-commit-gate.md +14 -0
  2. package/.ai/plugins/catalog/.ai/skills/checkout-ops.md +12 -0
  3. package/.ai/plugins/catalog/.ai/skills/git-operations.md +21 -0
  4. package/.ai/plugins/catalog/.ai/skills/nextjs-builder.md +12 -0
  5. package/.ai/plugins/catalog/.ai/skills/release-ops.md +12 -0
  6. package/.ai/plugins/catalog/.ai/skills/seo-audit-ops.md +14 -0
  7. package/.ai/plugins/catalog/.ai/skills/wp-helper.md +13 -0
  8. package/.ai/plugins/catalog/README.md +34 -0
  9. package/.ai/plugins/catalog/ecommerce-workflows.yaml +14 -0
  10. package/.ai/plugins/catalog/git-workflows.yaml +22 -0
  11. package/.ai/plugins/catalog/nextjs-workflows.yaml +14 -0
  12. package/.ai/plugins/catalog/release-workflows.yaml +14 -0
  13. package/.ai/plugins/catalog/seo-workflows.yaml +19 -0
  14. package/.ai/plugins/catalog/wordpress-workflows.yaml +14 -0
  15. package/.ai/plugins/catalog.yaml +161 -0
  16. package/.ai/policies/registry-policy.yaml +51 -0
  17. package/.ai/registries/sources.yaml +15 -0
  18. package/.ai/registry-cache/README.md +35 -0
  19. package/.ai/schema/registry-manifest.schema.json +57 -0
  20. package/.ai/schema/registry-policy.schema.json +66 -0
  21. package/README.md +6 -5
  22. package/bin/multimodel-dev-os.js +1309 -30
  23. package/docs/.vitepress/config.js +16 -2
  24. package/docs/CLI.md +54 -1
  25. package/docs/architecture.md +9 -3
  26. package/docs/catalog-authoring.md +63 -0
  27. package/docs/catalog.md +72 -0
  28. package/docs/comparison.md +1 -0
  29. package/docs/dashboard.md +13 -2
  30. package/docs/faq.md +19 -0
  31. package/docs/plugin-authoring.md +6 -0
  32. package/docs/plugin-catalog.md +35 -0
  33. package/docs/plugin-hooks.md +6 -0
  34. package/docs/public/llms-full.txt +18 -1
  35. package/docs/public/llms.txt +17 -1
  36. package/docs/public/sitemap.xml +248 -203
  37. package/docs/quickstart.md +17 -0
  38. package/docs/registry-policy.md +93 -0
  39. package/docs/registry-security.md +67 -0
  40. package/docs/registry-sync.md +106 -0
  41. package/docs/remote-catalog-authoring.md +139 -0
  42. package/docs/repository-command-center.md +2 -0
  43. package/docs/trusted-registries.md +77 -0
  44. package/docs/v2-roadmap.md +13 -4
  45. package/docs/workflow-marketplace.md +22 -0
  46. package/docs/workflow-orchestration.md +6 -0
  47. package/package.json +1 -1
  48. package/scripts/install.ps1 +1 -1
  49. package/scripts/install.sh +1 -1
  50. package/scripts/prepublish-guard.js +27 -5
  51. package/scripts/verify.js +523 -10
@@ -0,0 +1,14 @@
1
+ # Pre-commit Quality Gate
2
+
3
+ This check enforces repository sanity checks before commits are made.
4
+
5
+ ## Verification Checklist
6
+
7
+ 1. **Syntax & Style:**
8
+ - Run linter checks (e.g. `npm run lint` or `eslint`).
9
+ - Run typecheckers (e.g. `npm run typecheck` or `tsc`).
10
+ 2. **Schema & Diagnostics:**
11
+ - Run `npx multimodel-dev-os validate` to ensure directory structure compliance.
12
+ - Run `npx multimodel-dev-os doctor` to audit ignored folders and token sizes.
13
+ 3. **Working Tree Cleanliness:**
14
+ - Run `git diff` to confirm there are no leftover debug statements or scratch files.
@@ -0,0 +1,12 @@
1
+ # E-Commerce Webhook & Gateway Audits Skill
2
+
3
+ This skill guides the AI agent when managing checkout configurations and payment webhook processing code.
4
+
5
+ ## Guidelines
6
+
7
+ 1. **Webhook Security:**
8
+ - Always verify signature payloads using the provider's SDK (e.g. `stripe.webhooks.constructEvent`).
9
+ - Throw explicit, logged errors on signature validation failures to assist debugging.
10
+ 2. **Transaction Integrity:**
11
+ - Double-check payment amounts and currency codes against internal database models before marking orders paid.
12
+ - Use transactional writes when updating orders and inventory counts.
@@ -0,0 +1,21 @@
1
+ # Git Operations Skill
2
+
3
+ This skill guides the AI agent when managing Git repositories and releasing versions.
4
+
5
+ ## Guidelines
6
+
7
+ 1. **Commit Messages:**
8
+ - Adhere to Conventional Commits:
9
+ - `feat: ...` for new features
10
+ - `fix: ...` for bug fixes
11
+ - `docs: ...` for documentation updates
12
+ - `chore: ...` for builds, versions, etc.
13
+ - Keep the summary line under 50 characters.
14
+
15
+ 2. **Branch Management:**
16
+ - Ensure you are working on the target branch (e.g. `main` or `develop`).
17
+ - Check working tree cleanliness before tagging or pushing.
18
+
19
+ 3. **Releasing:**
20
+ - Verify version alignment in package config, scripts, and logs before releasing.
21
+ - Tag releases with annotated git tags: `git tag -a vX.Y.Z -m "message"`.
@@ -0,0 +1,12 @@
1
+ # Next.js Route & Action Builder Skill
2
+
3
+ This skill guides the AI agent when designing and auditing Next.js App Router applications.
4
+
5
+ ## Guidelines
6
+
7
+ 1. **Server Actions Security:**
8
+ - Ensure Server Actions (declared with `'use server'`) validate all input payloads using Zod or equivalent schemas.
9
+ - Enforce authorization checks inside every action before processing requests.
10
+ 2. **Route Handlers:**
11
+ - Enforce standard response formats: always return `NextResponse.json(...)` or proper redirect responses.
12
+ - Handle CORS and HTTP methods properly, returning status `405 Method Not Allowed` for unsupported verbs.
@@ -0,0 +1,12 @@
1
+ # Release Preparation & Package Audit Skill
2
+
3
+ This skill guides the AI agent when verifying workspace state for a package release.
4
+
5
+ ## Guidelines
6
+
7
+ 1. **Version Auditing:**
8
+ - Double-check that target tags match version fields in `package.json`, install scripts, and changelogs.
9
+ - Refuse tag generation if uncommitted files are present in the working tree.
10
+ 2. **Hygiene Checks:**
11
+ - Verify that `.npmrc` file is ignored or properly configured before running pack dry-runs.
12
+ - Confirm lockfiles are updated and represent the exact active package versions.
@@ -0,0 +1,14 @@
1
+ # SEO Audit Operations Skill
2
+
3
+ This skill guides the AI agent when verifying search engine readiness of target frontend applications.
4
+
5
+ ## Guidelines
6
+
7
+ 1. **Heading Structure:**
8
+ - Enforce a single `<h1>` tag per page representing the primary page topic.
9
+ - Maintain a sequential heading hierarchy (`<h2>`, `<h3>` etc.) without skips.
10
+ 2. **Metadata Checks:**
11
+ - Verify every page has a unique, descriptive `<title>` tag under 60 characters.
12
+ - Verify presence of a `<meta name="description" content="...">` tag under 160 characters.
13
+ 3. **Sitemaps:**
14
+ - Confirm sitemap.xml lists all accessible routes and complies with XML schema.
@@ -0,0 +1,13 @@
1
+ # WordPress Theme & Plugin Helper Skill
2
+
3
+ This skill guides the AI agent when generating WordPress themes and plugins PHP code.
4
+
5
+ ## Guidelines
6
+
7
+ 1. **Coding Standards:**
8
+ - Adhere to the official WordPress PHP Coding Standards.
9
+ - Prefix all custom function names, classes, and globals with a unique slug to prevent namespace collisions.
10
+ 2. **Security & Validation:**
11
+ - Enforce escaping on all outputs (e.g. using `esc_html()`, `esc_attr()`, `esc_url()`).
12
+ - Validate and sanitize input data using `sanitize_text_field()`, `absint()`, etc.
13
+ - Implement nonce checks on all form submissions and AJAX requests using `wp_verify_nonce()`.
@@ -0,0 +1,34 @@
1
+ # Workflow Marketplace & Plugin Catalog Directory
2
+
3
+ This directory stores the curated, first-party plugin definitions and their declarative assets for the local Workflow Marketplace.
4
+
5
+ ## Folder Structure
6
+
7
+ * `catalog.yaml`: The master catalog index referencing all available plugin slugs, categories, tags, and file previews.
8
+ * `catalog/`: Holds the actual plugin YAML configuration manifests and their respective sub-assets.
9
+ - `git-workflows.yaml`: Git pre-commit checks and branch audit operations.
10
+ - `seo-workflows.yaml`: HTML metadata audits and sitemap verification helpers.
11
+ - `wordpress-workflows.yaml`: Boilderplate generators and security checks for WordPress.
12
+ - `nextjs-workflows.yaml`: App router, middleware, and route handler validations for Next.js.
13
+ - `ecommerce-workflows.yaml`: Stripe webhook signature and transaction auditing templates.
14
+ - `release-workflows.yaml`: CI-safe package publishing pre-flight checklists and verifiers.
15
+
16
+ Any assets copied by these plugins (such as skills, checks, or prompts) must reside relative to this catalog root folder matching their destination layout (e.g. inside `catalog/.ai/skills/` or `catalog/.ai/checks/`).
17
+
18
+ ## Installation
19
+
20
+ These catalog plugins can be listed, searched, and installed using the CLI:
21
+
22
+ ```bash
23
+ # List all catalog plugins
24
+ npx multimodel-dev-os catalog list
25
+
26
+ # Search for a plugin
27
+ npx multimodel-dev-os catalog search git
28
+
29
+ # Get recommendations for the current repository
30
+ npx multimodel-dev-os catalog recommend
31
+
32
+ # Install a plugin
33
+ npx multimodel-dev-os catalog install git-workflows --approved
34
+ ```
@@ -0,0 +1,14 @@
1
+ name: "E-Commerce Webhook & Gateway Audits"
2
+ slug: "ecommerce-workflows"
3
+ version: "1.0.0"
4
+ description: "Declarative schemas for payment gateways (Stripe, bKash) and webhook validation rules."
5
+ author: "MultiModel Dev OS Team"
6
+ safety_notes: "This plugin provides webhook auditing. No network connections are opened."
7
+ allowed_file_patterns:
8
+ - .ai/skills/checkout-ops.md
9
+ workflows:
10
+ webhook-verify:
11
+ name: "Audit Webhook Endpoints"
12
+ description: "Scan code for proper signature checks on Stripe/bKash webhooks."
13
+ steps:
14
+ - run: "echo 'Verifying webhook security patterns...'"
@@ -0,0 +1,22 @@
1
+ name: "Git Workflows & Verification"
2
+ slug: "git-workflows"
3
+ version: "1.0.0"
4
+ description: "Automated git pre-commit checks, branch compliance, and tag/push audits."
5
+ author: "MultiModel Dev OS Team"
6
+ safety_notes: "This plugin configures git workflows and checks. It is safe and does not modify source code."
7
+ allowed_file_patterns:
8
+ - .ai/skills/git-operations.md
9
+ - .ai/checks/pre-commit-gate.md
10
+ workflows:
11
+ git-audit:
12
+ name: "Git Repository Audit"
13
+ description: "Check working tree cleanliness and verify latest tag matches version."
14
+ steps:
15
+ - run: "git status --short"
16
+ - run: "git log -1 --oneline"
17
+ pre-commit-gate:
18
+ name: "Pre-commit Quality Gate"
19
+ description: "Strict checks before making commits."
20
+ steps:
21
+ - run: "npx multimodel-dev-os validate"
22
+ - run: "npx multimodel-dev-os doctor"
@@ -0,0 +1,14 @@
1
+ name: "Next.js Route & Action Builder"
2
+ slug: "nextjs-workflows"
3
+ version: "1.0.0"
4
+ description: "Server Actions structural helper, Route Handler validation, and middleware auditing."
5
+ author: "MultiModel Dev OS Team"
6
+ safety_notes: "This plugin assists with Next.js structures. No package changes are made."
7
+ allowed_file_patterns:
8
+ - .ai/skills/nextjs-builder.md
9
+ workflows:
10
+ nextjs-action-check:
11
+ name: "Server Action Validation"
12
+ description: "Scan route folders and verify that 'use server' directives are configured securely."
13
+ steps:
14
+ - run: "echo 'Scanning Next.js actions...'"
@@ -0,0 +1,14 @@
1
+ name: "Release Preparation & Package Audit"
2
+ slug: "release-workflows"
3
+ version: "1.0.0"
4
+ description: "Automated release checklist, version bump verification, and NPM package pre-flight doctor checks."
5
+ author: "MultiModel Dev OS Team"
6
+ safety_notes: "This plugin configures packaging and release-prep workflows."
7
+ allowed_file_patterns:
8
+ - .ai/skills/release-ops.md
9
+ workflows:
10
+ release-check:
11
+ name: "Perform Release Check"
12
+ description: "Verify version alignments across files and run dry-run builds."
13
+ steps:
14
+ - run: "npx multimodel-dev-os doctor --release"
@@ -0,0 +1,19 @@
1
+ name: "SEO Audit & Optimization"
2
+ slug: "seo-workflows"
3
+ version: "1.0.0"
4
+ description: "Automated SEO tag analysis, meta checklist validation, and sitemap auditing."
5
+ author: "MultiModel Dev OS Team"
6
+ safety_notes: "This plugin provides automated SEO checks. It does not perform active network requests or package installs."
7
+ allowed_file_patterns:
8
+ - .ai/skills/seo-audit-ops.md
9
+ workflows:
10
+ seo-audit:
11
+ name: "Run SEO Page Audit"
12
+ description: "Scan target HTML files and verify title tags, descriptions, and hierarchy."
13
+ steps:
14
+ - run: "echo 'Verifying page SEO elements...'"
15
+ meta-verify:
16
+ name: "Verify Meta Tags"
17
+ description: "Assert sitemaps and meta tag compliance."
18
+ steps:
19
+ - run: "echo 'Verifying sitemaps/robots.txt configurations...'"
@@ -0,0 +1,14 @@
1
+ name: "WordPress Theme & Plugin Helper"
2
+ slug: "wordpress-workflows"
3
+ version: "1.0.0"
4
+ description: "Standards-compliant WordPress PHP boilerplate, security checks, and folder audits."
5
+ author: "MultiModel Dev OS Team"
6
+ safety_notes: "This plugin configures WordPress boilerplates. It is entirely declarative."
7
+ allowed_file_patterns:
8
+ - .ai/skills/wp-helper.md
9
+ workflows:
10
+ wp-security-check:
11
+ name: "WordPress Security Scan"
12
+ description: "Scan plugins/themes folders for unsafe file permissions and missing index.php files."
13
+ steps:
14
+ - run: "echo 'Scanning WordPress theme/plugin directory permissions...'"
@@ -0,0 +1,161 @@
1
+ catalog:
2
+ version: "2.9.0"
3
+ description: "Curated first-party plugin and workflow catalog"
4
+ plugins:
5
+ - slug: git-workflows
6
+ name: "Git Workflows & Verification"
7
+ version: "1.0.0"
8
+ description: "Automated git pre-commit checks, branch compliance, and tag/push audits."
9
+ category: "git"
10
+ tags:
11
+ - git
12
+ - workflow
13
+ - vcs
14
+ use_cases:
15
+ - Pre-commit validation
16
+ - CI pre-flight checks
17
+ supported_templates:
18
+ - "*"
19
+ provided_workflows:
20
+ - git-audit
21
+ - pre-commit-gate
22
+ provided_skills:
23
+ - git-operations.md
24
+ provided_prompts:
25
+ - git-commit-helper.md
26
+ provided_checks:
27
+ - git-clean-check.md
28
+ safety_level: "sandboxed"
29
+ install_scope: "declarative"
30
+ recommended_for: "All Git repositories requiring structured push gates"
31
+ files_preview:
32
+ - dest: ".ai/plugins/git-workflows.yaml"
33
+ - dest: ".ai/skills/git-operations.md"
34
+ - dest: ".ai/checks/pre-commit-gate.md"
35
+ - slug: seo-workflows
36
+ name: "SEO Audit & Optimization"
37
+ version: "1.0.0"
38
+ description: "Automated SEO tag analysis, meta checklist validation, and sitemap auditing."
39
+ category: "seo"
40
+ tags:
41
+ - seo
42
+ - html
43
+ - marketing
44
+ use_cases:
45
+ - Landing page audit
46
+ - Semantic HTML checks
47
+ supported_templates:
48
+ - seo-landing-page
49
+ - wordpress-site
50
+ - nextjs-saas
51
+ provided_workflows:
52
+ - seo-audit
53
+ - meta-verify
54
+ provided_skills:
55
+ - seo-audit-ops.md
56
+ safety_level: "sandboxed"
57
+ install_scope: "declarative"
58
+ recommended_for: "Public-facing frontends and content-heavy sites"
59
+ files_preview:
60
+ - dest: ".ai/plugins/seo-workflows.yaml"
61
+ - dest: ".ai/skills/seo-audit-ops.md"
62
+ - slug: wordpress-workflows
63
+ name: "WordPress Theme & Plugin Helper"
64
+ version: "1.0.0"
65
+ description: "Standards-compliant WordPress PHP boilerplate, security checks, and folder audits."
66
+ category: "wordpress"
67
+ tags:
68
+ - wordpress
69
+ - php
70
+ - cms
71
+ use_cases:
72
+ - Boilerplate creation
73
+ - WordPress theme/plugin checks
74
+ supported_templates:
75
+ - wordpress-site
76
+ provided_workflows:
77
+ - wp-generate-boilerplate
78
+ - wp-security-check
79
+ provided_skills:
80
+ - wp-helper.md
81
+ safety_level: "sandboxed"
82
+ install_scope: "declarative"
83
+ recommended_for: "WordPress themes, custom plugins, and PHP-based CMS projects"
84
+ files_preview:
85
+ - dest: ".ai/plugins/wordpress-workflows.yaml"
86
+ - dest: ".ai/skills/wp-helper.md"
87
+ - slug: nextjs-workflows
88
+ name: "Next.js Route & Action Builder"
89
+ version: "1.0.0"
90
+ description: "Server Actions structural helper, Route Handler validation, and middleware auditing."
91
+ category: "nextjs"
92
+ tags:
93
+ - nextjs
94
+ - react
95
+ - typescript
96
+ use_cases:
97
+ - Server Action validation
98
+ - Route handler checks
99
+ supported_templates:
100
+ - nextjs-saas
101
+ provided_workflows:
102
+ - nextjs-action-check
103
+ - nextjs-route-audit
104
+ provided_skills:
105
+ - nextjs-builder.md
106
+ safety_level: "sandboxed"
107
+ install_scope: "declarative"
108
+ recommended_for: "Next.js applications utilizing React Server Components or App Router"
109
+ files_preview:
110
+ - dest: ".ai/plugins/nextjs-workflows.yaml"
111
+ - dest: ".ai/skills/nextjs-builder.md"
112
+ - slug: ecommerce-workflows
113
+ name: "E-Commerce Webhook & Gateway Audits"
114
+ version: "1.0.0"
115
+ description: "Declarative schemas for payment gateways (Stripe, bKash) and webhook validation rules."
116
+ category: "ecommerce"
117
+ tags:
118
+ - ecommerce
119
+ - checkout
120
+ - stripe
121
+ use_cases:
122
+ - Webhook structure checks
123
+ - Transaction log validation
124
+ supported_templates:
125
+ - ecommerce-store
126
+ provided_workflows:
127
+ - webhook-verify
128
+ - payment-flow-audit
129
+ provided_skills:
130
+ - checkout-ops.md
131
+ safety_level: "sandboxed"
132
+ install_scope: "declarative"
133
+ recommended_for: "E-commerce stores and subscription payment integrations"
134
+ files_preview:
135
+ - dest: ".ai/plugins/ecommerce-workflows.yaml"
136
+ - dest: ".ai/skills/checkout-ops.md"
137
+ - slug: release-workflows
138
+ name: "Release Preparation & Package Audit"
139
+ version: "1.0.0"
140
+ description: "Automated release checklist, version bump verification, and NPM package pre-flight doctor checks."
141
+ category: "release"
142
+ tags:
143
+ - release
144
+ - publishing
145
+ - npm
146
+ use_cases:
147
+ - Release prep verification
148
+ - Package hygiene checks
149
+ supported_templates:
150
+ - "*"
151
+ provided_workflows:
152
+ - release-check
153
+ - doctor-audit
154
+ provided_skills:
155
+ - release-ops.md
156
+ safety_level: "sandboxed"
157
+ install_scope: "declarative"
158
+ recommended_for: "Libraries, packages, and frameworks targeting public distribution"
159
+ files_preview:
160
+ - dest: ".ai/plugins/release-workflows.yaml"
161
+ - dest: ".ai/skills/release-ops.md"
@@ -0,0 +1,51 @@
1
+ # Registry Policy Configuration
2
+ # Controls what remote registry operations are permitted.
3
+ # All remote operations are DISABLED by default.
4
+ # This file is the single source of truth for registry governance.
5
+
6
+ # Master switch: must be true before any remote registry can be added or synced.
7
+ allow_remote_registries: false
8
+
9
+ # Require the --approved flag for all sync operations.
10
+ require_approval_for_remote_sync: true
11
+
12
+ # Require SHA256 checksum verification for synced catalog files.
13
+ require_checksum: true
14
+
15
+ # Require cryptographic signature verification (placeholder for future release).
16
+ require_signature: false
17
+
18
+ # Allow installing plugins from registries with trust_level: untrusted.
19
+ allow_untrusted_install: false
20
+
21
+ # Directories where plugins are allowed to write files.
22
+ allowed_write_roots:
23
+ - ".ai/"
24
+ - "adapters/"
25
+
26
+ # Paths that are always blocked from plugin writes.
27
+ blocked_paths:
28
+ - ".env"
29
+ - ".npmrc"
30
+ - ".git/"
31
+ - "node_modules/"
32
+ - "package.json"
33
+ - "package-lock.json"
34
+ - "pnpm-lock.yaml"
35
+ - "yarn.lock"
36
+
37
+ # Maximum number of files a single plugin can install.
38
+ max_plugin_files: 20
39
+
40
+ # Maximum total size (KB) of files a single plugin can install.
41
+ max_plugin_size_kb: 100
42
+
43
+ # Maximum total cache size (KB) per remote registry.
44
+ max_registry_cache_size_kb: 512
45
+
46
+ # File extensions allowed for plugin assets.
47
+ allowed_file_extensions:
48
+ - ".md"
49
+ - ".yaml"
50
+ - ".yml"
51
+ - ".json"
@@ -0,0 +1,15 @@
1
+ # Registry Sources Configuration
2
+ # Defines where catalog plugin indexes are loaded from.
3
+ # Remote registries are DISABLED by default.
4
+ # Enable via .ai/policies/registry-policy.yaml (set allow_remote_registries: true)
5
+ # Then add sources via: npx multimodel-dev-os registry add <name> <url> --approved
6
+
7
+ sources:
8
+ - name: "bundled"
9
+ type: "local"
10
+ url: ".ai/plugins/catalog.yaml"
11
+ enabled: true
12
+ trust_level: "trusted"
13
+ safety_policy: "sandboxed"
14
+ signature_required: false
15
+ checksum_required: false
@@ -0,0 +1,35 @@
1
+ # Registry Cache Directory
2
+
3
+ This directory is auto-generated by `npx multimodel-dev-os registry sync <name> --approved`.
4
+
5
+ ## Purpose
6
+
7
+ Stores locally cached copies of remote catalog indexes after an approved sync operation. Each subdirectory corresponds to a named registry source.
8
+
9
+ ## Structure
10
+
11
+ ```
12
+ .ai/registry-cache/
13
+ ├── README.md ← This file
14
+ ├── <registry-name>/
15
+ │ ├── catalog.yaml ← Cached catalog index from remote
16
+ │ ├── manifest.json ← Registry provenance metadata
17
+ │ └── checksums.json ← SHA256 hashes of cached files
18
+ ```
19
+
20
+ ## Safety Guarantees
21
+
22
+ - **No executable content.** All cached files are declarative YAML, JSON, or Markdown.
23
+ - **No automatic installation.** Cached plugins must be installed individually via `catalog install <slug> --approved`.
24
+ - **No automatic sync.** Remote sync requires explicit `--approved` flag.
25
+ - **Gitignored.** This directory is excluded from version control by default.
26
+ - **Disposable.** Clear the cache at any time via `npx multimodel-dev-os registry cache clear --approved`.
27
+
28
+ ## Commands
29
+
30
+ | Command | Description |
31
+ |---|---|
32
+ | `registry list` | List configured registry sources |
33
+ | `registry status` | Show sync timestamps and cache health |
34
+ | `registry verify <name>` | Verify SHA256 checksums of cached files |
35
+ | `registry cache clear --approved` | Delete all cached registry data |
@@ -0,0 +1,57 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "MultiModel Dev OS Registry Manifest Schema",
4
+ "description": "JSON schema for the registry manifest file that accompanies remote catalog indexes, providing provenance metadata and integrity checksums",
5
+ "type": "object",
6
+ "required": [
7
+ "registry_name",
8
+ "publisher",
9
+ "version",
10
+ "generated_at",
11
+ "catalog_hash",
12
+ "files_hashes",
13
+ "minimum_mmdo_version",
14
+ "safety_policy_version"
15
+ ],
16
+ "properties": {
17
+ "registry_name": {
18
+ "type": "string",
19
+ "description": "Unique name identifier of the registry."
20
+ },
21
+ "publisher": {
22
+ "type": "string",
23
+ "description": "Name of the person or organization that published this registry."
24
+ },
25
+ "version": {
26
+ "type": "string",
27
+ "description": "Semantic version of the registry catalog."
28
+ },
29
+ "generated_at": {
30
+ "type": "string",
31
+ "format": "date-time",
32
+ "description": "ISO 8601 timestamp when the manifest was generated."
33
+ },
34
+ "catalog_hash": {
35
+ "type": "string",
36
+ "description": "SHA256 hash of the catalog.yaml file, prefixed with 'sha256:'."
37
+ },
38
+ "files_hashes": {
39
+ "type": "object",
40
+ "additionalProperties": { "type": "string" },
41
+ "description": "Map of filename to SHA256 hash string for each file in the registry."
42
+ },
43
+ "minimum_mmdo_version": {
44
+ "type": "string",
45
+ "description": "Minimum MultiModel Dev OS version required to use this registry."
46
+ },
47
+ "safety_policy_version": {
48
+ "type": "string",
49
+ "description": "Version of the safety policy specification this registry conforms to."
50
+ },
51
+ "signature": {
52
+ "type": ["string", "null"],
53
+ "description": "Cryptographic signature of the manifest. Placeholder for future implementation."
54
+ }
55
+ },
56
+ "additionalProperties": false
57
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "MultiModel Dev OS Registry Policy Schema",
4
+ "description": "JSON schema defining allowed governance settings for remote registry sync, plugin installation, and path safety boundaries",
5
+ "type": "object",
6
+ "required": [
7
+ "allow_remote_registries",
8
+ "require_approval_for_remote_sync",
9
+ "require_checksum",
10
+ "require_signature",
11
+ "allow_untrusted_install",
12
+ "allowed_write_roots",
13
+ "blocked_paths",
14
+ "allowed_file_extensions"
15
+ ],
16
+ "properties": {
17
+ "allow_remote_registries": {
18
+ "type": "boolean",
19
+ "description": "Master switch to enable remote registry sources. Must be true before any remote registry can be added or synced."
20
+ },
21
+ "require_approval_for_remote_sync": {
22
+ "type": "boolean",
23
+ "description": "Whether the --approved flag is required for all sync operations."
24
+ },
25
+ "require_checksum": {
26
+ "type": "boolean",
27
+ "description": "Whether SHA256 checksum verification is required for synced catalog files."
28
+ },
29
+ "require_signature": {
30
+ "type": "boolean",
31
+ "description": "Whether cryptographic signature verification is required. Placeholder for future release."
32
+ },
33
+ "allow_untrusted_install": {
34
+ "type": "boolean",
35
+ "description": "Whether plugins from untrusted registries can be installed."
36
+ },
37
+ "allowed_write_roots": {
38
+ "type": "array",
39
+ "items": { "type": "string" },
40
+ "description": "Directory prefixes where plugins are permitted to write files."
41
+ },
42
+ "blocked_paths": {
43
+ "type": "array",
44
+ "items": { "type": "string" },
45
+ "description": "Paths that are always blocked from plugin writes, regardless of allowed_write_roots."
46
+ },
47
+ "max_plugin_files": {
48
+ "type": "integer",
49
+ "description": "Maximum number of files a single plugin can install."
50
+ },
51
+ "max_plugin_size_kb": {
52
+ "type": "integer",
53
+ "description": "Maximum total size in kilobytes of files a single plugin can install."
54
+ },
55
+ "max_registry_cache_size_kb": {
56
+ "type": "integer",
57
+ "description": "Maximum total cache size in kilobytes per remote registry."
58
+ },
59
+ "allowed_file_extensions": {
60
+ "type": "array",
61
+ "items": { "type": "string" },
62
+ "description": "File extensions permitted for plugin asset files."
63
+ }
64
+ },
65
+ "additionalProperties": false
66
+ }