multimodel-dev-os 2.0.1 → 2.6.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.
- package/.ai/intelligence/README.md +14 -0
- package/.ai/intelligence/apply-log.schema.json +65 -0
- package/.ai/intelligence/feedback-log.example.jsonl +2 -0
- package/.ai/intelligence/feedback.schema.json +47 -0
- package/.ai/intelligence/improvement-proposal.schema.json +70 -0
- package/.ai/intelligence/learning-rules.example.md +18 -0
- package/.ai/intelligence/memory.schema.json +97 -0
- package/.ai/policies/approval-gates.md +35 -0
- package/.ai/policies/memory-policy.md +30 -0
- package/.ai/policies/self-improvement-policy.md +39 -0
- package/.ai/proposals/README.md +44 -0
- package/.ai/proposals/apply-operation.example.json +22 -0
- package/.ai/registries/capabilities.yaml +73 -0
- package/.ai/registries/tools.yaml +84 -0
- package/.ai/registries/workflows.yaml +217 -0
- package/README.md +218 -97
- package/bin/multimodel-dev-os.js +2871 -6
- package/docs/.vitepress/config.js +23 -1
- package/docs/CLI.md +89 -2
- package/docs/adapter-sync.md +27 -0
- package/docs/adapters.md +16 -0
- package/docs/agent-handoff.md +40 -0
- package/docs/approved-proposal-apply.md +156 -0
- package/docs/capability-registry.md +24 -0
- package/docs/feedback-learning.md +33 -0
- package/docs/future-proof-architecture.md +22 -0
- package/docs/hash-compressed-memory.md +72 -0
- package/docs/improvement-proposals.md +70 -0
- package/docs/learning-rules.md +36 -0
- package/docs/public/llms-full.txt +32 -2
- package/docs/public/llms.txt +43 -2
- package/docs/public/sitemap.xml +30 -0
- package/docs/quickstart.md +7 -1
- package/docs/real-repo-onboarding.md +27 -0
- package/docs/repository-command-center.md +52 -0
- package/docs/self-improving-codebase.md +46 -0
- package/docs/template-recommendation.md +22 -0
- package/docs/templates-guide.md +11 -0
- package/docs/tool-registry.md +21 -0
- package/docs/v2-roadmap.md +20 -0
- package/docs/workflow-orchestration.md +59 -0
- package/package.json +1 -1
- package/scripts/install.ps1 +1 -1
- package/scripts/install.sh +1 -1
- package/scripts/verify.js +107 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# MultiModel Dev OS — Comprehensive AI Assistant Discoverability Guide (v2.0
|
|
1
|
+
# MultiModel Dev OS — Comprehensive AI Assistant Discoverability Guide (v2.6.0 Stable Release)
|
|
2
2
|
|
|
3
3
|
MultiModel Dev OS is a repository-level porting specification designed to align context and instructions across diverse developer tools and AI models.
|
|
4
4
|
|
|
@@ -38,13 +38,43 @@ The protocol decouples the centralized workspace context from the individual too
|
|
|
38
38
|
|
|
39
39
|
All compliant MultiModel Dev OS CLIs strictly enforce the following command contracts:
|
|
40
40
|
- **`init`**: Scaffolds the standard `.ai/` context configuration directories. Supports `--template`, `--caveman`, `--adapter`, and dynamic registries mapping.
|
|
41
|
+
- **`status`**: Displays a compact project intelligence dashboard summarizing package details, frameworks, memory freshness, feedback logs, improvement proposals, and audit execution metrics.
|
|
42
|
+
- **`scan`**: Performs a read-only codebase scan to detect frameworks, package managers, MultiModel Dev OS configurations, and potential context-bloat or security risks.
|
|
43
|
+
- **`onboard`**: Safely integrates MultiModel Dev OS into existing repositories. Subcommands:
|
|
44
|
+
- `analyze`: Scans repository structure, frameworks, languages, and risk markers. Read-only.
|
|
45
|
+
- `recommend`: Runs scanner diagnostics and recommendations for templates and adapters. Read-only.
|
|
46
|
+
- `plan`: Generates onboarding plan `.ai/intelligence/onboarding.plan.json` and report `.ai/intelligence/onboarding.report.md`. Read-only.
|
|
47
|
+
- `apply`: Copies configuration templates to target directory. Overwrites require `--force` and automatically generate backups.
|
|
48
|
+
- `status`: Show progress and completeness percentage dashboard.
|
|
49
|
+
- **`adapter`**: Manage and sync rule/settings files for IDE adapters. Subcommands:
|
|
50
|
+
- `status`: Show rules files status and enable/disable states from config.
|
|
51
|
+
- `diff <adapter>`: Show rules diff between bundled template and target root file.
|
|
52
|
+
- `sync <adapter|all>`: Synchronizes rule files (requires `--approved`). Overwrites require `--force` and automatically generate backups.
|
|
53
|
+
- **`memory`**: Compiles or reviews codebase hash-compressed memory. Subcommands:
|
|
54
|
+
- `build`: Scans target codebase and writes memory metadata to `.ai/intelligence/memory.hash.json` and `.ai/intelligence/memory.summary.md`.
|
|
55
|
+
- `refresh`: Incremental update comparing changed file hashes to update the memory files.
|
|
56
|
+
- `diff`: Prints added, removed, or changed files compared to `memory.hash.json` without executing writes.
|
|
57
|
+
- **`feedback`**: Manage developer feedback loops. Subcommands:
|
|
58
|
+
- `add`: Logs raw developer feedback to `feedback-log.jsonl`.
|
|
59
|
+
- `list`: Lists logged feedback entries.
|
|
60
|
+
- `summarize`: Compiles feedback entries into `learning-rules.md`.
|
|
61
|
+
- **`improve`**: Manage codebase self-improvement proposals. Subcommands:
|
|
62
|
+
- `propose`: Scans context and writes a proposal file under `.ai/proposals/`.
|
|
63
|
+
- `review`: Lists proposals and their active statuses.
|
|
64
|
+
- `status`: Shows aggregates of proposal statuses.
|
|
65
|
+
- `validate`: Validate proposal safety gates and operations block.
|
|
66
|
+
- `diff`: Preview proposed changes in unified diff format without modifying files.
|
|
67
|
+
- `apply`: Deterministically apply approved operations to the target codebase (requires `--approved`).
|
|
68
|
+
- `log`: Display Applied Proposals Audit Log execution history.
|
|
69
|
+
- **`workflow`**: Orchestrate read-only development workflows (list, show, plan, run). Steps are restricted to safe, non-destructive CLI functions.
|
|
70
|
+
- **`handoff`**: Compile token-compressed session context (build, show) at `.ai/intelligence/handoff.md` to transfer state to a new agent or model session.
|
|
41
71
|
- **`verify`**: Automated release script that checks structure integrity.
|
|
42
72
|
- **`templates`**: Lists built-in template profiles (supports overrides via `--registry <path>`).
|
|
43
73
|
- **`validate`**: Strict Quality Gate checking the layout rules on disk (supports `--all-registries`).
|
|
44
74
|
- **`validate-template`**: Scans a template registry entry and source directory structure for completeness.
|
|
45
75
|
- **`validate-adapter`**: Audits an adapter config file and directory setup compliance.
|
|
46
76
|
- **`validate-skill`**: Checks a custom skill file against standard Markdown headers.
|
|
47
|
-
- **`doctor`**: Advisory checkup auditing ignored folders and token footprint (supports `--tokens
|
|
77
|
+
- **`doctor`**: Advisory checkup auditing ignored folders and token footprint (supports `--tokens`, `--release`, `--intelligence`, and `--onboarding`).
|
|
48
78
|
|
|
49
79
|
---
|
|
50
80
|
|
package/docs/public/llms.txt
CHANGED
|
@@ -1,10 +1,51 @@
|
|
|
1
|
-
# MultiModel Dev OS (v2.0
|
|
1
|
+
# MultiModel Dev OS (v2.6.0 Stable Release)
|
|
2
2
|
|
|
3
3
|
Portable, vendor-neutral workspace configuration standard for multi-agent AI pair-programming workflows.
|
|
4
4
|
|
|
5
|
-
## Fast Setup (Stable npm @latest)
|
|
5
|
+
## Fast Setup & Commands (Stable npm @latest)
|
|
6
6
|
```bash
|
|
7
|
+
# Initialize workspace
|
|
7
8
|
npx multimodel-dev-os@latest init
|
|
9
|
+
|
|
10
|
+
# Scan codebase signals & check status
|
|
11
|
+
npx multimodel-dev-os@latest scan
|
|
12
|
+
npx multimodel-dev-os@latest status
|
|
13
|
+
|
|
14
|
+
# Onboard existing repositories safely
|
|
15
|
+
npx multimodel-dev-os@latest onboard analyze
|
|
16
|
+
npx multimodel-dev-os@latest onboard recommend
|
|
17
|
+
npx multimodel-dev-os@latest onboard plan
|
|
18
|
+
npx multimodel-dev-os@latest onboard apply --approved
|
|
19
|
+
npx multimodel-dev-os@latest onboard status
|
|
20
|
+
|
|
21
|
+
# Manage and sync IDE adapter configuration files
|
|
22
|
+
npx multimodel-dev-os@latest adapter status
|
|
23
|
+
npx multimodel-dev-os@latest adapter diff cursor
|
|
24
|
+
npx multimodel-dev-os@latest adapter sync cursor --approved
|
|
25
|
+
|
|
26
|
+
# Build/refresh memory index
|
|
27
|
+
npx multimodel-dev-os@latest memory build
|
|
28
|
+
npx multimodel-dev-os@latest memory refresh
|
|
29
|
+
|
|
30
|
+
# Run automated workflow cycles
|
|
31
|
+
npx multimodel-dev-os@latest workflow run repo-health
|
|
32
|
+
npx multimodel-dev-os@latest workflow list
|
|
33
|
+
|
|
34
|
+
# Compile session handoff spec
|
|
35
|
+
npx multimodel-dev-os@latest handoff build
|
|
36
|
+
npx multimodel-dev-os@latest handoff show
|
|
37
|
+
|
|
38
|
+
# Manage developer feedback loop
|
|
39
|
+
npx multimodel-dev-os@latest feedback add "Avoid Tailwind CSS" --type preference
|
|
40
|
+
npx multimodel-dev-os@latest feedback summarize
|
|
41
|
+
|
|
42
|
+
# Draft, review, validate, and apply codebase improvement proposals
|
|
43
|
+
npx multimodel-dev-os@latest improve propose --title "Fix config issues"
|
|
44
|
+
npx multimodel-dev-os@latest improve review
|
|
45
|
+
npx multimodel-dev-os@latest improve validate .ai/proposals/proposal-xxxx.md
|
|
46
|
+
npx multimodel-dev-os@latest improve diff .ai/proposals/proposal-xxxx.md
|
|
47
|
+
npx multimodel-dev-os@latest improve apply .ai/proposals/proposal-xxxx.md --approved
|
|
48
|
+
npx multimodel-dev-os@latest improve log
|
|
8
49
|
```
|
|
9
50
|
|
|
10
51
|
## Supported Tools
|
package/docs/public/sitemap.xml
CHANGED
|
@@ -115,4 +115,34 @@
|
|
|
115
115
|
<changefreq>weekly</changefreq>
|
|
116
116
|
<priority>0.7</priority>
|
|
117
117
|
</url>
|
|
118
|
+
<url>
|
|
119
|
+
<loc>https://rizvee.github.io/multimodel-dev-os/future-proof-architecture</loc>
|
|
120
|
+
<changefreq>weekly</changefreq>
|
|
121
|
+
<priority>0.7</priority>
|
|
122
|
+
</url>
|
|
123
|
+
<url>
|
|
124
|
+
<loc>https://rizvee.github.io/multimodel-dev-os/self-improving-codebase</loc>
|
|
125
|
+
<changefreq>weekly</changefreq>
|
|
126
|
+
<priority>0.7</priority>
|
|
127
|
+
</url>
|
|
128
|
+
<url>
|
|
129
|
+
<loc>https://rizvee.github.io/multimodel-dev-os/hash-compressed-memory</loc>
|
|
130
|
+
<changefreq>weekly</changefreq>
|
|
131
|
+
<priority>0.7</priority>
|
|
132
|
+
</url>
|
|
133
|
+
<url>
|
|
134
|
+
<loc>https://rizvee.github.io/multimodel-dev-os/feedback-learning</loc>
|
|
135
|
+
<changefreq>weekly</changefreq>
|
|
136
|
+
<priority>0.7</priority>
|
|
137
|
+
</url>
|
|
138
|
+
<url>
|
|
139
|
+
<loc>https://rizvee.github.io/multimodel-dev-os/capability-registry</loc>
|
|
140
|
+
<changefreq>weekly</changefreq>
|
|
141
|
+
<priority>0.7</priority>
|
|
142
|
+
</url>
|
|
143
|
+
<url>
|
|
144
|
+
<loc>https://rizvee.github.io/multimodel-dev-os/tool-registry</loc>
|
|
145
|
+
<changefreq>weekly</changefreq>
|
|
146
|
+
<priority>0.7</priority>
|
|
147
|
+
</url>
|
|
118
148
|
</urlset>
|
package/docs/quickstart.md
CHANGED
|
@@ -73,7 +73,7 @@ npx multimodel-dev-os@latest init --target /path/to/your-project --template next
|
|
|
73
73
|
|
|
74
74
|
## Verify & Diagnose
|
|
75
75
|
|
|
76
|
-
|
|
76
|
+
Validate structural health, run codebase scans, and build hash-compressed memory:
|
|
77
77
|
|
|
78
78
|
```bash
|
|
79
79
|
# Strict directory schema validation
|
|
@@ -81,6 +81,12 @@ npx multimodel-dev-os validate
|
|
|
81
81
|
|
|
82
82
|
# Advisory doctor workspace compatibility audit
|
|
83
83
|
npx multimodel-dev-os doctor
|
|
84
|
+
|
|
85
|
+
# Advisory codebase scanner
|
|
86
|
+
npx multimodel-dev-os scan
|
|
87
|
+
|
|
88
|
+
# Build codebase memory index
|
|
89
|
+
npx multimodel-dev-os memory build
|
|
84
90
|
```
|
|
85
91
|
|
|
86
92
|
Explore our canonical [Stable Protocol Specification](/stable-protocol) or [Upgrade & Migration Guide](/migration-guide) for details.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Onboarding Existing Repositories
|
|
2
|
+
|
|
3
|
+
MultiModel Dev OS provides a safe, step-by-step onboarding protocol to configure coding agents in any existing codebase without modifying application source files.
|
|
4
|
+
|
|
5
|
+
## Onboarding Commands
|
|
6
|
+
|
|
7
|
+
To onboard an existing repository, run the following commands:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# 1. Analyze the project structure, language, framework, and security signals
|
|
11
|
+
npx multimodel-dev-os onboard analyze --target .
|
|
12
|
+
|
|
13
|
+
# 2. Output template recommendations and suggested next steps
|
|
14
|
+
npx multimodel-dev-os onboard recommend --target .
|
|
15
|
+
|
|
16
|
+
# 3. Generate a structured onboarding plan and markdown report
|
|
17
|
+
npx multimodel-dev-os onboard plan --target .
|
|
18
|
+
|
|
19
|
+
# 4. Safely apply the onboarding plan to generate AI Dev OS scaffolding
|
|
20
|
+
npx multimodel-dev-os onboard apply --target . --approved
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Security & Safety Guarantees
|
|
24
|
+
|
|
25
|
+
* **Read-only Commands**: `analyze`, `recommend`, and `plan` are read-only and make no modifications.
|
|
26
|
+
* **No Source Code Mutation**: `apply` only creates/updates MultiModel Dev OS configuration files (`.ai/`, `AGENTS.md`, `MEMORY.md`, etc.). It never touches your application source code.
|
|
27
|
+
* **Backup Support**: If a file already exists, the onboard engine skips it. To overwrite, use `--force`, which creates a `.bak` backup file first.
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Repository Command Center Guide
|
|
2
|
+
|
|
3
|
+
The **Repository Command Center** introduced in `v2.5.0` provides a unified, read-only operational dashboard summarizing the entire repository intelligence status of a MultiModel Dev OS workspace.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Using the `status` Command
|
|
8
|
+
|
|
9
|
+
The `status` command allows developers and AI agents to instantly check project health and progress.
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx multimodel-dev-os status
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Or target a specific subdirectory:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx multimodel-dev-os status --target ./some-subproject
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Dashboard View
|
|
22
|
+
|
|
23
|
+
Running `status` prints a formatted, color-coded status summary:
|
|
24
|
+
|
|
25
|
+
1. **Project Info**: Displays the package name and package version from the root `package.json`.
|
|
26
|
+
2. **Framework & Dependency Signals**: Summarizes detected languages, framework engines (e.g. Next.js, Express, React), and package lockfiles (e.g. `package-lock.json`).
|
|
27
|
+
3. **Memory State**:
|
|
28
|
+
* `CURRENT` (Green): Memory index is fully built and matches the filesystem.
|
|
29
|
+
* `STALE` (Yellow): Modifications have been made. Lists number of added, removed, or modified files.
|
|
30
|
+
* `MISSING` (Red): No memory files have been built yet.
|
|
31
|
+
4. **Feedback Loop & Rules**: Displays total count of developer feedback entries and whether compiled learning rules are active.
|
|
32
|
+
5. **Improvement Proposals**: Lists total optimization proposals, categorized by approval status (`pending`, `approved`, `rejected`).
|
|
33
|
+
6. **Apply Audit Log**: Counts applied proposal runs.
|
|
34
|
+
7. **Next Recommended Command**: Offers dynamic advice on what to execute next (e.g., refreshing memory, review proposals, running health checks).
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## 2. Benefits for Multi-Agent Workflows
|
|
39
|
+
|
|
40
|
+
* **Context Discovery**: Instantly summarizes active templates, environment structures, and boundaries.
|
|
41
|
+
* **Zero-Dependency Parsing**: Fast initialization checks that don't load external libraries.
|
|
42
|
+
* **Actionable Next Steps**: Guides developers and AI models to the correct command sequence, preventing execution drift.
|
|
43
|
+
|
|
44
|
+
## 3. Onboarding Status
|
|
45
|
+
|
|
46
|
+
For uninitialized repositories, you can inspect the onboarding status directly:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
npx multimodel-dev-os onboard status
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
This prints a checklist of crucial MultiModel Dev OS files and an overall completeness percentage score.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Self-Improving Codebase Operations
|
|
2
|
+
|
|
3
|
+
MultiModel Dev OS supports codebase refactoring, styling, and structural optimizations through a secure, proposal-based self-improvement pipeline.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Safety Principles
|
|
8
|
+
|
|
9
|
+
To guarantee repository integrity and prevent unintended changes, all self-improvement operations adhere to three core rules:
|
|
10
|
+
1. **Write-Protection**: The CLI binary, security guards, workflows, and core policies are read-only and cannot be modified by model proposals.
|
|
11
|
+
2. **Human-in-the-Loop (HITL)**: Models cannot write code directly to the workspace without explicit user verification.
|
|
12
|
+
3. **Diff-Validated Execution**: Every modification must pass local verification tests, with manual commit approval.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 2. Proposal-Review Cycle
|
|
17
|
+
|
|
18
|
+
The execution path follows two stages:
|
|
19
|
+
|
|
20
|
+
### Stage A: Proposal Generation
|
|
21
|
+
Before compiling a proposal, the agent scans the codebase using `mmdo scan` and builds the hash-compressed memory index via `mmdo memory build` to ensure the proposal is context-aware and token-efficient. The agent then identifies an optimization and saves a structured document under `.ai/proposals/proposal-YYYYMMDD-HHMMSS.md`. The proposal specifies the rationale, affected files list, risk level, test command, and rollback steps.
|
|
22
|
+
|
|
23
|
+
### Stage B: Human Review
|
|
24
|
+
The developer runs the review CLI command:
|
|
25
|
+
```bash
|
|
26
|
+
npx multimodel-dev-os improve review
|
|
27
|
+
```
|
|
28
|
+
This shows the proposed changes, affected files, risk levels, and verify commands.
|
|
29
|
+
|
|
30
|
+
To view status:
|
|
31
|
+
```bash
|
|
32
|
+
npx multimodel-dev-os improve status
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
*Note: Starting in v2.4.1, automated proposal application is supported via the `improve apply` command, provided that a valid operations JSON block exists in the proposal file and the developer passes the `--approved` flag. Vague proposals or those targeting protected files/paths must still be executed manually.*
|
|
36
|
+
|
|
37
|
+
For complete automated application details, please refer to the [Approved Proposal Application Guide](/approved-proposal-apply).
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Command Center Integration
|
|
42
|
+
|
|
43
|
+
The [Repository Command Center](repository-command-center.md) serves as the unified dashboard for the self-improvement loop. Running `mmdo status` displays the counts of pending/approved/rejected proposals, memory state, and feedback logs. Developers can orchestrate the review cycle safely by executing the `proposal-review` workflow:
|
|
44
|
+
```bash
|
|
45
|
+
npx multimodel-dev-os workflow run proposal-review
|
|
46
|
+
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Template Recommendation Engine
|
|
2
|
+
|
|
3
|
+
The recommendation engine matches existing codebases to the best-fit template profile.
|
|
4
|
+
|
|
5
|
+
## Heuristics & Confidence Scores
|
|
6
|
+
|
|
7
|
+
The engine assigns weights to file signatures and package dependencies:
|
|
8
|
+
|
|
9
|
+
* **Next.js SaaS (`nextjs-saas`)**: Matches if `next.config.js` or `next.config.ts` is present (Weight: +0.6) or `package.json` contains `next` dependency (Weight: +0.4).
|
|
10
|
+
* **Android Expo Mobile (`expo-react-native-android`)**: Matches if `app.json` or `eas.json` is present (Weight: +0.8).
|
|
11
|
+
* **WordPress Theme/Plugin (`wordpress-theme-plugin`)**: Matches if `wp-content` directory or header-decorated PHP style files are found (Weight: +0.8).
|
|
12
|
+
* **E-Commerce Store (`ecommerce-store`)**: Matches if Stripe, Shopify, or checkout-related dependencies are present (Weight: +0.4).
|
|
13
|
+
* **SEO Landing Page (`seo-landing-page`)**: Matches if raw HTML files + Tailwind configs exist without framework elements (Weight: +0.5).
|
|
14
|
+
* **General App (`general-app`)**: Serves as the fallback profile if no other template achieves a confidence score greater than 0.4.
|
|
15
|
+
|
|
16
|
+
## Command
|
|
17
|
+
|
|
18
|
+
To check template recommendations for your project:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npx multimodel-dev-os onboard recommend --target .
|
|
22
|
+
```
|
package/docs/templates-guide.md
CHANGED
|
@@ -69,3 +69,14 @@ npx multimodel-dev-os init --target ../my-new-app --template nextjs-saas
|
|
|
69
69
|
## Template Quality Assurance
|
|
70
70
|
|
|
71
71
|
To ensure all contributed templates meet our rigorous quality standards before packaging, refer to our [Template Quality Assurance Blueprint](/template-qa).
|
|
72
|
+
|
|
73
|
+
## Template Recommendations for Existing Repos
|
|
74
|
+
|
|
75
|
+
If you are onboarding an existing repository and unsure which template profile to use, the recommendation engine can automatically analyze your project files:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
# Analyze framework and package signals, then output recommendation
|
|
79
|
+
npx multimodel-dev-os onboard recommend --target .
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
For detailed heuristics and confidence weights, refer to the [Template Recommendation Engine docs](/template-recommendation).
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Tool & Protocol Registry
|
|
2
|
+
|
|
3
|
+
The **Tool Registry** governs connection protocols, interfaces, and file associations for developer environments and AI agents.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Tool Mappings
|
|
8
|
+
|
|
9
|
+
Tools configured in `.ai/registries/tools.yaml` are mapped by:
|
|
10
|
+
* **Interface Type**: `editor` (IDE plugins), `terminal` (CLI clients), or `assistant` (chat helpers).
|
|
11
|
+
* **Protocols**: Connection formats such as `stdin-stdout`, `mcp-jsonrpc` (Model Context Protocol), or custom config parameters.
|
|
12
|
+
* **Registry Keys**: Associated configuration files (e.g. `.cursorrules` for Cursor, `CLAUDE.md` for Claude Code).
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 2. Model Context Protocol (MCP) Integration
|
|
17
|
+
|
|
18
|
+
MultiModel Dev OS leverages MCP to expose local resources to models:
|
|
19
|
+
1. **Server Bindings**: Developers declare local MCP servers (e.g. gcloud SDK MCP, Chrome DevTools MCP) under the tools registry.
|
|
20
|
+
2. **Capability Matching**: The Capability Registry checks if the selected model has `mcp-compliance: 1.0` before attempting native bindings.
|
|
21
|
+
3. **Unified Tool Access**: Exposes filesystem, browser automation, and deployment commands directly to agent execution loops securely.
|
package/docs/v2-roadmap.md
CHANGED
|
@@ -93,3 +93,23 @@ The `v2.0.0` release requires:
|
|
|
93
93
|
1. 100% pass rate on all automated linter and verifier checks.
|
|
94
94
|
2. Complete documentation updates across all guides and discovery indices.
|
|
95
95
|
3. Explicit maintainer sign-off on local testing of the Android Expo template.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## 6. Future Stages: v2.1.0 to v3.0.0
|
|
100
|
+
|
|
101
|
+
* **v2.1.0 — Intelligence Core & Registries Foundation**
|
|
102
|
+
* Design and document schemas (`memory.schema.json`, `feedback.schema.json`).
|
|
103
|
+
* Introduce `.ai/registries/` configuration databases.
|
|
104
|
+
* Implement CLI routing helper `mmdo capability route` and `mmdo memory build/refresh`.
|
|
105
|
+
* **v2.2.0 — Feedback Loops & Tool Integrations**
|
|
106
|
+
* Add `mmdo learn` capability to append feedback metrics.
|
|
107
|
+
* Define `.ai/registries/tools.yaml` with MCP protocol interfaces.
|
|
108
|
+
* **v2.3.0 — Proposal Engine & Safety Controls**
|
|
109
|
+
* Deploy proposal structures under `.ai/proposals/`.
|
|
110
|
+
* Implement CLI pipeline `mmdo improve propose/review/apply`.
|
|
111
|
+
* **v2.4.0 — Local/Offline Operations**
|
|
112
|
+
* Integrate local model scoring (Llama.cpp, Ollama) and offline schema checks.
|
|
113
|
+
* **v3.0.0 — Unified Autonomous Co-Pilot Ecosystem**
|
|
114
|
+
* Full multi-agent orchestration workflows with dynamic task handoffs.
|
|
115
|
+
* Distributed registry syncing and cryptographically signed self-improvement proposals.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Workflow Orchestration
|
|
2
|
+
|
|
3
|
+
MultiModel Dev OS `v2.5.0` features a built-in **Workflow Runner** designed to orchestrate codebase diagnostic pipelines safely.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. CLI Commands
|
|
8
|
+
|
|
9
|
+
Workflows are registered in [.ai/registries/workflows.yaml](file:///.ai/registries/workflows.yaml) and can be executed via the following subcommands:
|
|
10
|
+
|
|
11
|
+
### List Registered Workflows
|
|
12
|
+
Prints name, risk, and summary of all active workflows:
|
|
13
|
+
```bash
|
|
14
|
+
npx multimodel-dev-os workflow list
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### Show Workflow Specifications
|
|
18
|
+
Displays details, memory write permissions, code modification permissions, and individual logical steps:
|
|
19
|
+
```bash
|
|
20
|
+
npx multimodel-dev-os workflow show repo-health
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Plan Workflow Execution (Dry-Run)
|
|
24
|
+
Prints the execution sequence, command lists, and expected outputs without executing any logic:
|
|
25
|
+
```bash
|
|
26
|
+
npx multimodel-dev-os workflow plan repo-health
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### Run Workflow
|
|
30
|
+
Executes the workflow steps sequentially:
|
|
31
|
+
```bash
|
|
32
|
+
npx multimodel-dev-os workflow run repo-health
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## 2. Standard Built-in Workflows
|
|
38
|
+
|
|
39
|
+
MultiModel Dev OS defines 5 baseline workflows:
|
|
40
|
+
|
|
41
|
+
1. **`repo-health`** (Low Risk): Scans framework signals, performs advisory doctor audits, and verifies file structures.
|
|
42
|
+
2. **`memory-refresh`** (Medium Risk): Assesses memory differences and incremental refreshes.
|
|
43
|
+
3. **`feedback-review`** (Low Risk): Lists active developer logs and compiles rules to `learning-rules.md`.
|
|
44
|
+
4. **`proposal-review`** (Low Risk): Inspects codebase proposals, checks status counts, and displays audit apply logs.
|
|
45
|
+
5. **`release-check`** (Low Risk): Verifies codebase structures, executes release doctors, and runs package pack checks.
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## 3. Strict Safety Gates
|
|
50
|
+
|
|
51
|
+
The workflow engine enforces strict safety boundaries:
|
|
52
|
+
|
|
53
|
+
* **No File Modifications**: Allowed workflows only execute read-only checkups and incremental metadata updates (memory file compilation, feedback summaries).
|
|
54
|
+
* **No Shell Execution**: Shell command execution from `workflows.yaml` is prohibited. Steps map directly to internal Javascript CLI functions.
|
|
55
|
+
* **No Autonomy**: Any step requiring code changes (e.g. applying proposals) stops and outputs manual next-step instructions for the developer.
|
|
56
|
+
|
|
57
|
+
## 4. Bundled Registry Fallback
|
|
58
|
+
|
|
59
|
+
If the repository does not have a local `.ai/registries/workflows.yaml` registry file initialized yet, the workflow runner will automatically fall back to the bundled registry package templates and output a notice. This allows running read-only diagnostics prior to full project onboarding.
|
package/package.json
CHANGED
package/scripts/install.ps1
CHANGED
package/scripts/install.sh
CHANGED
package/scripts/verify.js
CHANGED
|
@@ -231,6 +231,21 @@ checkFile('docs/v2-migration.md');
|
|
|
231
231
|
checkFile('docs/v2-release-checklist.md');
|
|
232
232
|
checkFile('docs/package-safety.md');
|
|
233
233
|
|
|
234
|
+
// --- v2.1.0 Intelligence Layer Documentation ---
|
|
235
|
+
console.log('\nIntelligence Layer Documentation:');
|
|
236
|
+
checkFile('docs/future-proof-architecture.md');
|
|
237
|
+
checkFile('docs/self-improving-codebase.md');
|
|
238
|
+
checkFile('docs/feedback-learning.md');
|
|
239
|
+
checkFile('docs/hash-compressed-memory.md');
|
|
240
|
+
checkFile('docs/capability-registry.md');
|
|
241
|
+
checkFile('docs/tool-registry.md');
|
|
242
|
+
checkFile('docs/improvement-proposals.md');
|
|
243
|
+
checkFile('docs/learning-rules.md');
|
|
244
|
+
checkFile('docs/approved-proposal-apply.md');
|
|
245
|
+
checkFile('docs/repository-command-center.md');
|
|
246
|
+
checkFile('docs/workflow-orchestration.md');
|
|
247
|
+
checkFile('docs/agent-handoff.md');
|
|
248
|
+
|
|
234
249
|
// --- Model & Adapter Registries ---
|
|
235
250
|
console.log('\nModel & Adapter Registries:');
|
|
236
251
|
checkFile('.ai/models/registry.yaml');
|
|
@@ -250,6 +265,28 @@ checkFile('.ai/schema/config.schema.json');
|
|
|
250
265
|
checkFile('.ai/schema/template.schema.json');
|
|
251
266
|
checkFile('.ai/schema/adapter.schema.json');
|
|
252
267
|
|
|
268
|
+
// --- v2.1.0 Intelligence Layer (Schemas, Policies, Registries) ---
|
|
269
|
+
console.log('\nIntelligence Layer Schemas:');
|
|
270
|
+
checkFile('.ai/intelligence/memory.schema.json');
|
|
271
|
+
checkFile('.ai/intelligence/feedback.schema.json');
|
|
272
|
+
checkFile('.ai/intelligence/README.md');
|
|
273
|
+
checkFile('.ai/intelligence/feedback-log.example.jsonl');
|
|
274
|
+
checkFile('.ai/intelligence/learning-rules.example.md');
|
|
275
|
+
checkFile('.ai/intelligence/improvement-proposal.schema.json');
|
|
276
|
+
checkFile('.ai/intelligence/apply-log.schema.json');
|
|
277
|
+
checkFile('.ai/proposals/README.md');
|
|
278
|
+
checkFile('.ai/proposals/apply-operation.example.json');
|
|
279
|
+
|
|
280
|
+
console.log('\nIntelligence Layer Policies:');
|
|
281
|
+
checkFile('.ai/policies/self-improvement-policy.md');
|
|
282
|
+
checkFile('.ai/policies/memory-policy.md');
|
|
283
|
+
checkFile('.ai/policies/approval-gates.md');
|
|
284
|
+
|
|
285
|
+
console.log('\nIntelligence Layer Registries:');
|
|
286
|
+
checkFile('.ai/registries/capabilities.yaml');
|
|
287
|
+
checkFile('.ai/registries/tools.yaml');
|
|
288
|
+
checkFile('.ai/registries/workflows.yaml');
|
|
289
|
+
|
|
253
290
|
// --- Test Blueprints ---
|
|
254
291
|
console.log('\nTest Manuals:');
|
|
255
292
|
checkFile('tests/README.md');
|
|
@@ -377,6 +414,9 @@ verifyRegistryParsed('.ai/models/routing-presets.yaml', 'presets');
|
|
|
377
414
|
verifyRegistryParsed('.ai/models/local-models.yaml', 'local_engines');
|
|
378
415
|
verifyRegistryParsed('.ai/adapters/registry.yaml', 'adapters');
|
|
379
416
|
verifyRegistryParsed('.ai/templates/registry.yaml', 'templates');
|
|
417
|
+
verifyRegistryParsed('.ai/registries/capabilities.yaml', 'capabilities');
|
|
418
|
+
verifyRegistryParsed('.ai/registries/tools.yaml', 'tools');
|
|
419
|
+
verifyRegistryParsed('.ai/registries/workflows.yaml', 'workflows');
|
|
380
420
|
|
|
381
421
|
// --- CLI & Packaging Pre-Flight Tests ---
|
|
382
422
|
console.log('\nRunning CLI & Packaging Pre-Flight Tests...');
|
|
@@ -408,11 +448,70 @@ try {
|
|
|
408
448
|
console.log(` ${GREEN}✓${NC} CLI help displays v${expectedVersion}`);
|
|
409
449
|
pass++;
|
|
410
450
|
}
|
|
451
|
+
|
|
452
|
+
if (helpOutput.includes('scan') && helpOutput.includes('memory') && helpOutput.includes('status') && helpOutput.includes('workflow') && helpOutput.includes('handoff')) {
|
|
453
|
+
console.log(` ${GREEN}✓${NC} CLI help includes scan, memory, status, workflow, and handoff commands`);
|
|
454
|
+
pass++;
|
|
455
|
+
} else {
|
|
456
|
+
console.error(` ${RED}✗${NC} CLI help is missing scan, memory, status, workflow, or handoff commands`);
|
|
457
|
+
fail++;
|
|
458
|
+
}
|
|
411
459
|
} catch (e) {
|
|
412
460
|
console.error(` ${RED}✗${NC} node bin/multimodel-dev-os.js --help failed: ${e.message}`);
|
|
413
461
|
fail++;
|
|
414
462
|
}
|
|
415
463
|
|
|
464
|
+
// Verify docs mention memory build
|
|
465
|
+
try {
|
|
466
|
+
const mdContent = readFileSync(join(projectRoot, 'docs', 'hash-compressed-memory.md'), 'utf8');
|
|
467
|
+
if (mdContent.includes('memory build')) {
|
|
468
|
+
console.log(` ${GREEN}✓${NC} docs/hash-compressed-memory.md mentions 'memory build'`);
|
|
469
|
+
pass++;
|
|
470
|
+
} else {
|
|
471
|
+
console.error(` ${RED}✗${NC} docs/hash-compressed-memory.md does not mention 'memory build'`);
|
|
472
|
+
fail++;
|
|
473
|
+
}
|
|
474
|
+
} catch (e) {
|
|
475
|
+
console.error(` ${RED}✗${NC} docs check failed: ${e.message}`);
|
|
476
|
+
fail++;
|
|
477
|
+
}
|
|
478
|
+
|
|
479
|
+
// Verify no generated memory or feedback logs or proposals are committed/tracked in git root/intelligence folder
|
|
480
|
+
try {
|
|
481
|
+
const checkUntracked = (relPath) => {
|
|
482
|
+
if (existsSync(join(projectRoot, relPath))) {
|
|
483
|
+
console.error(` ${RED}✗${NC} ${relPath} should not be tracked/committed!`);
|
|
484
|
+
fail++;
|
|
485
|
+
} else {
|
|
486
|
+
console.log(` ${GREEN}✓${NC} ${relPath} is not tracked/committed`);
|
|
487
|
+
pass++;
|
|
488
|
+
}
|
|
489
|
+
};
|
|
490
|
+
checkUntracked('.ai/intelligence/memory.hash.json');
|
|
491
|
+
checkUntracked('.ai/intelligence/memory.summary.md');
|
|
492
|
+
checkUntracked('.ai/intelligence/feedback-log.jsonl');
|
|
493
|
+
checkUntracked('.ai/intelligence/learning-rules.md');
|
|
494
|
+
checkUntracked('.ai/intelligence/handoff.md');
|
|
495
|
+
checkUntracked('.ai/proposals/apply-log.jsonl');
|
|
496
|
+
|
|
497
|
+
// also check if any proposal-*.md file exists directly in projectRoot/proposals (since it shouldn't be tracked)
|
|
498
|
+
const proposalsDir = join(projectRoot, '.ai', 'proposals');
|
|
499
|
+
if (existsSync(proposalsDir)) {
|
|
500
|
+
const files = readdirSync(proposalsDir);
|
|
501
|
+
const hasRuntimeProposals = files.some(f => f.startsWith('proposal-') && f !== 'proposal-template.md' && f.endsWith('.md'));
|
|
502
|
+
if (hasRuntimeProposals) {
|
|
503
|
+
console.error(` ${RED}✗${NC} Runtime proposals should not be committed/tracked!`);
|
|
504
|
+
fail++;
|
|
505
|
+
} else {
|
|
506
|
+
console.log(` ${GREEN}✓${NC} No runtime proposals committed`);
|
|
507
|
+
pass++;
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
} catch (e) {
|
|
511
|
+
console.error(` ${RED}✗${NC} Tracking verification of generated files failed: ${e.message}`);
|
|
512
|
+
fail++;
|
|
513
|
+
}
|
|
514
|
+
|
|
416
515
|
// Verify npm pack dry-run shows current version dynamically
|
|
417
516
|
try {
|
|
418
517
|
const packOutput = execSync('npm pack --dry-run', { cwd: projectRoot, encoding: 'utf8', stdio: ['ignore', 'pipe', 'pipe'] });
|
|
@@ -447,12 +546,17 @@ try {
|
|
|
447
546
|
|
|
448
547
|
// --- Package Safety & Hygiene Checks ---
|
|
449
548
|
console.log('\nPackage Safety & Hygiene Checks:');
|
|
450
|
-
if (existsSync(join(projectRoot, '.npmrc'))) {
|
|
549
|
+
if (existsSync(join(projectRoot, '.npmrc')) && process.env.MMDO_ALLOW_PUBLISH !== 'true') {
|
|
451
550
|
console.error(` ${RED}✗ .npmrc file exists in package root (security risk)${NC}`);
|
|
452
551
|
fail++;
|
|
453
552
|
} else {
|
|
454
|
-
|
|
455
|
-
|
|
553
|
+
if (existsSync(join(projectRoot, '.npmrc'))) {
|
|
554
|
+
console.log(` ${YELLOW}!${NC} .npmrc file present in package root (allowed via MMDO_ALLOW_PUBLISH)`);
|
|
555
|
+
warn++;
|
|
556
|
+
} else {
|
|
557
|
+
console.log(` ${GREEN}✓${NC} No .npmrc file present in package root`);
|
|
558
|
+
pass++;
|
|
559
|
+
}
|
|
456
560
|
}
|
|
457
561
|
|
|
458
562
|
const checkExamplesHygiene = (dir) => {
|