@zhixuan92/multi-model-agent 3.1.7 → 3.3.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/README.md +1 -1
- package/dist/cli/install-skill.d.ts +4 -84
- package/dist/cli/install-skill.d.ts.map +1 -1
- package/dist/cli/install-skill.js +6 -177
- package/dist/cli/install-skill.js.map +1 -1
- package/dist/http/execution-context.d.ts +3 -6
- package/dist/http/execution-context.d.ts.map +1 -1
- package/dist/http/execution-context.js +7 -22
- package/dist/http/execution-context.js.map +1 -1
- package/dist/http/handlers/control/batch-slice.d.ts +4 -0
- package/dist/http/handlers/control/batch-slice.d.ts.map +1 -0
- package/dist/http/handlers/control/batch-slice.js +40 -0
- package/dist/http/handlers/control/batch-slice.js.map +1 -0
- package/dist/http/handlers/control/retry.d.ts +4 -0
- package/dist/http/handlers/control/retry.d.ts.map +1 -0
- package/dist/http/handlers/control/retry.js +60 -0
- package/dist/http/handlers/control/retry.js.map +1 -0
- package/dist/http/handlers/tools/audit.d.ts.map +1 -1
- package/dist/http/handlers/tools/audit.js +2 -0
- package/dist/http/handlers/tools/audit.js.map +1 -1
- package/dist/http/handlers/tools/debug.d.ts.map +1 -1
- package/dist/http/handlers/tools/debug.js +2 -0
- package/dist/http/handlers/tools/debug.js.map +1 -1
- package/dist/http/handlers/tools/delegate.d.ts.map +1 -1
- package/dist/http/handlers/tools/delegate.js +2 -0
- package/dist/http/handlers/tools/delegate.js.map +1 -1
- package/dist/http/handlers/tools/execute-plan.d.ts.map +1 -1
- package/dist/http/handlers/tools/execute-plan.js +2 -0
- package/dist/http/handlers/tools/execute-plan.js.map +1 -1
- package/dist/http/handlers/tools/review.d.ts.map +1 -1
- package/dist/http/handlers/tools/review.js +2 -0
- package/dist/http/handlers/tools/review.js.map +1 -1
- package/dist/http/handlers/tools/verify.d.ts.map +1 -1
- package/dist/http/handlers/tools/verify.js +2 -0
- package/dist/http/handlers/tools/verify.js.map +1 -1
- package/dist/http/request-observability.d.ts +9 -0
- package/dist/http/request-observability.d.ts.map +1 -0
- package/dist/http/request-observability.js +36 -0
- package/dist/http/request-observability.js.map +1 -0
- package/dist/http/request-pipeline.d.ts +10 -0
- package/dist/http/request-pipeline.d.ts.map +1 -0
- package/dist/http/request-pipeline.js +87 -0
- package/dist/http/request-pipeline.js.map +1 -0
- package/dist/http/router.d.ts +5 -0
- package/dist/http/router.d.ts.map +1 -1
- package/dist/http/router.js +10 -0
- package/dist/http/router.js.map +1 -1
- package/dist/http/server.d.ts.map +1 -1
- package/dist/http/server.js +69 -102
- package/dist/http/server.js.map +1 -1
- package/dist/install/discover.d.ts +19 -0
- package/dist/install/discover.d.ts.map +1 -0
- package/dist/install/discover.js +52 -0
- package/dist/install/discover.js.map +1 -0
- package/dist/install/manifest-resolve.d.ts +11 -0
- package/dist/install/manifest-resolve.d.ts.map +1 -0
- package/dist/install/manifest-resolve.js +54 -0
- package/dist/install/manifest-resolve.js.map +1 -0
- package/dist/install/orchestrate.d.ts +35 -0
- package/dist/install/orchestrate.d.ts.map +1 -0
- package/dist/install/orchestrate.js +53 -0
- package/dist/install/orchestrate.js.map +1 -0
- package/dist/openapi.d.ts.map +1 -1
- package/dist/openapi.js +21 -114
- package/dist/openapi.js.map +1 -1
- package/dist/skills/mma-audit/SKILL.md +1 -1
- package/dist/skills/mma-clarifications/SKILL.md +1 -1
- package/dist/skills/mma-context-blocks/SKILL.md +1 -1
- package/dist/skills/mma-debug/SKILL.md +1 -1
- package/dist/skills/mma-delegate/SKILL.md +7 -1
- package/dist/skills/mma-execute-plan/SKILL.md +7 -1
- package/dist/skills/mma-retry/SKILL.md +1 -1
- package/dist/skills/mma-review/SKILL.md +1 -1
- package/dist/skills/mma-verify/SKILL.md +1 -1
- package/dist/skills/multi-model-agent/SKILL.md +1 -1
- package/package.json +2 -2
package/dist/openapi.js
CHANGED
|
@@ -54,127 +54,28 @@ const response401 = { description: 'Missing or invalid Bearer token' };
|
|
|
54
54
|
const response403 = { description: 'Forbidden (loopback-only or path traversal)' };
|
|
55
55
|
/** Standard 404 error response. */
|
|
56
56
|
const response404 = { description: 'Resource not found' };
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
// Tool-endpoint registration table. Each row contributes one path with the
|
|
58
|
+
// shared shape: POST /<path>?cwd=<abs>, JSON body, async 202 response.
|
|
59
|
+
const TOOL_ENDPOINTS = [
|
|
60
|
+
{ path: '/delegate', summary: 'Dispatch tasks to sub-agents', schema: delegate.inputSchema },
|
|
61
|
+
{ path: '/audit', summary: 'Audit documents or files', schema: audit.inputSchema },
|
|
62
|
+
{ path: '/review', summary: 'Review code for quality and security', schema: review.inputSchema },
|
|
63
|
+
{ path: '/verify', summary: 'Verify work against a checklist', schema: verify.inputSchema },
|
|
64
|
+
{ path: '/debug', summary: 'Debug a problem with sub-agent assistance', schema: debug.inputSchema },
|
|
65
|
+
{ path: '/execute-plan', summary: 'Execute tasks from a plan file', schema: executePlan.inputSchema },
|
|
66
|
+
{ path: '/retry', summary: 'Retry failed tasks from a previous batch', schema: retry.inputSchema },
|
|
67
|
+
];
|
|
68
|
+
function registerToolEndpoint(registry, row) {
|
|
60
69
|
registry.registerPath({
|
|
61
70
|
method: 'post',
|
|
62
|
-
path:
|
|
63
|
-
summary:
|
|
71
|
+
path: row.path,
|
|
72
|
+
summary: row.summary,
|
|
64
73
|
tags: ['Tools'],
|
|
65
74
|
request: {
|
|
66
75
|
query: z.object({ cwd: z.string().describe('Project working directory') }),
|
|
67
76
|
body: {
|
|
68
77
|
required: true,
|
|
69
|
-
content: { 'application/json': { schema:
|
|
70
|
-
},
|
|
71
|
-
},
|
|
72
|
-
responses: {
|
|
73
|
-
202: asyncResponse202,
|
|
74
|
-
400: { description: 'Request validation error' },
|
|
75
|
-
401: response401,
|
|
76
|
-
},
|
|
77
|
-
});
|
|
78
|
-
registry.registerPath({
|
|
79
|
-
method: 'post',
|
|
80
|
-
path: '/audit',
|
|
81
|
-
summary: 'Audit documents or files',
|
|
82
|
-
tags: ['Tools'],
|
|
83
|
-
request: {
|
|
84
|
-
query: z.object({ cwd: z.string().describe('Project working directory') }),
|
|
85
|
-
body: {
|
|
86
|
-
required: true,
|
|
87
|
-
content: { 'application/json': { schema: audit.inputSchema } },
|
|
88
|
-
},
|
|
89
|
-
},
|
|
90
|
-
responses: {
|
|
91
|
-
202: asyncResponse202,
|
|
92
|
-
400: { description: 'Request validation error' },
|
|
93
|
-
401: response401,
|
|
94
|
-
},
|
|
95
|
-
});
|
|
96
|
-
registry.registerPath({
|
|
97
|
-
method: 'post',
|
|
98
|
-
path: '/review',
|
|
99
|
-
summary: 'Review code for quality and security',
|
|
100
|
-
tags: ['Tools'],
|
|
101
|
-
request: {
|
|
102
|
-
query: z.object({ cwd: z.string().describe('Project working directory') }),
|
|
103
|
-
body: {
|
|
104
|
-
required: true,
|
|
105
|
-
content: { 'application/json': { schema: review.inputSchema } },
|
|
106
|
-
},
|
|
107
|
-
},
|
|
108
|
-
responses: {
|
|
109
|
-
202: asyncResponse202,
|
|
110
|
-
400: { description: 'Request validation error' },
|
|
111
|
-
401: response401,
|
|
112
|
-
},
|
|
113
|
-
});
|
|
114
|
-
registry.registerPath({
|
|
115
|
-
method: 'post',
|
|
116
|
-
path: '/verify',
|
|
117
|
-
summary: 'Verify work against a checklist',
|
|
118
|
-
tags: ['Tools'],
|
|
119
|
-
request: {
|
|
120
|
-
query: z.object({ cwd: z.string().describe('Project working directory') }),
|
|
121
|
-
body: {
|
|
122
|
-
required: true,
|
|
123
|
-
content: { 'application/json': { schema: verify.inputSchema } },
|
|
124
|
-
},
|
|
125
|
-
},
|
|
126
|
-
responses: {
|
|
127
|
-
202: asyncResponse202,
|
|
128
|
-
400: { description: 'Request validation error' },
|
|
129
|
-
401: response401,
|
|
130
|
-
},
|
|
131
|
-
});
|
|
132
|
-
registry.registerPath({
|
|
133
|
-
method: 'post',
|
|
134
|
-
path: '/debug',
|
|
135
|
-
summary: 'Debug a problem with sub-agent assistance',
|
|
136
|
-
tags: ['Tools'],
|
|
137
|
-
request: {
|
|
138
|
-
query: z.object({ cwd: z.string().describe('Project working directory') }),
|
|
139
|
-
body: {
|
|
140
|
-
required: true,
|
|
141
|
-
content: { 'application/json': { schema: debug.inputSchema } },
|
|
142
|
-
},
|
|
143
|
-
},
|
|
144
|
-
responses: {
|
|
145
|
-
202: asyncResponse202,
|
|
146
|
-
400: { description: 'Request validation error' },
|
|
147
|
-
401: response401,
|
|
148
|
-
},
|
|
149
|
-
});
|
|
150
|
-
registry.registerPath({
|
|
151
|
-
method: 'post',
|
|
152
|
-
path: '/execute-plan',
|
|
153
|
-
summary: 'Execute tasks from a plan file',
|
|
154
|
-
tags: ['Tools'],
|
|
155
|
-
request: {
|
|
156
|
-
query: z.object({ cwd: z.string().describe('Project working directory') }),
|
|
157
|
-
body: {
|
|
158
|
-
required: true,
|
|
159
|
-
content: { 'application/json': { schema: executePlan.inputSchema } },
|
|
160
|
-
},
|
|
161
|
-
},
|
|
162
|
-
responses: {
|
|
163
|
-
202: asyncResponse202,
|
|
164
|
-
400: { description: 'Request validation error' },
|
|
165
|
-
401: response401,
|
|
166
|
-
},
|
|
167
|
-
});
|
|
168
|
-
registry.registerPath({
|
|
169
|
-
method: 'post',
|
|
170
|
-
path: '/retry',
|
|
171
|
-
summary: 'Retry failed tasks from a previous batch',
|
|
172
|
-
tags: ['Tools'],
|
|
173
|
-
request: {
|
|
174
|
-
query: z.object({ cwd: z.string().describe('Project working directory') }),
|
|
175
|
-
body: {
|
|
176
|
-
required: true,
|
|
177
|
-
content: { 'application/json': { schema: retry.inputSchema } },
|
|
78
|
+
content: { 'application/json': { schema: row.schema } },
|
|
178
79
|
},
|
|
179
80
|
},
|
|
180
81
|
responses: {
|
|
@@ -183,6 +84,12 @@ export function buildOpenApiDoc() {
|
|
|
183
84
|
401: response401,
|
|
184
85
|
},
|
|
185
86
|
});
|
|
87
|
+
}
|
|
88
|
+
export function buildOpenApiDoc() {
|
|
89
|
+
const registry = new OpenAPIRegistry();
|
|
90
|
+
// ── Tool endpoints (POST, require cwd + auth) ───────────────────────────────
|
|
91
|
+
for (const row of TOOL_ENDPOINTS)
|
|
92
|
+
registerToolEndpoint(registry, row);
|
|
186
93
|
// ── Control endpoints ───────────────────────────────────────────────────────
|
|
187
94
|
registry.registerPath({
|
|
188
95
|
method: 'get',
|
package/dist/openapi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,EAAE;AACF,sEAAsE;AACtE,iCAAiC;AACjC,EAAE;AACF,6EAA6E;AAC7E,8CAA8C;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,kBAAkB,GACnB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,yDAAyD,CAAC;AACpF,OAAO,KAAK,KAAK,MAAM,sDAAsD,CAAC;AAC9E,OAAO,KAAK,MAAM,MAAM,uDAAuD,CAAC;AAChF,OAAO,KAAK,MAAM,MAAM,uDAAuD,CAAC;AAChF,OAAO,KAAK,KAAK,MAAM,sDAAsD,CAAC;AAC9E,OAAO,KAAK,WAAW,MAAM,6DAA6D,CAAC;AAC3F,OAAO,KAAK,KAAK,MAAM,sDAAsD,CAAC;AAE9E,wCAAwC;AACxC,oBAAoB,CAAC,CAAC,CAAC,CAAC;AAExB,8EAA8E;AAC9E,SAAS,QAAQ,CAAC,GAAY;IAC5B,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAA8B,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QACrE,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAE,GAA+B,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,oDAAoD;AACpD,MAAM,gBAAgB,GAAG;IACvB,WAAW,EAAE,0BAA0B;IACvC,OAAO,EAAE;QACP,kBAAkB,EAAE;YAClB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;gBACf,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;gBAC3F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;aAClE,CAAC;SACH;KACF;CACF,CAAC;AAEF,qEAAqE;AACrE,MAAM,aAAa,GAAG;IACpB,IAAI,EAAE,KAAK;IACX,EAAE,EAAE,OAAgB;IACpB,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,gDAAgD;IAC7D,MAAM,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE;CACpC,CAAC;AAEF,mCAAmC;AACnC,MAAM,WAAW,GAAG,EAAE,WAAW,EAAE,iCAAiC,EAAE,CAAC;AAEvE,mCAAmC;AACnC,MAAM,WAAW,GAAG,EAAE,WAAW,EAAE,6CAA6C,EAAE,CAAC;AAEnF,mCAAmC;AACnC,MAAM,WAAW,GAAG,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAC;AAE1D,
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ when_to_use: >-
|
|
|
10
10
|
(superpowers:dispatching-parallel-agents, /security-review) points at an audit
|
|
11
11
|
task. Delegate via mmagent so the audit runs on independent workers — your
|
|
12
12
|
main context stays free to synthesize findings.
|
|
13
|
-
version: 3.
|
|
13
|
+
version: 3.3.0
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
## mma-audit
|
|
@@ -9,7 +9,7 @@ when_to_use: >-
|
|
|
9
9
|
terminal envelope has `proposedInterpretation` as a string (not a
|
|
10
10
|
NotApplicable sentinel). Read the proposal and call this skill to accept or
|
|
11
11
|
correct it. The batch resumes after the POST returns.
|
|
12
|
-
version: 3.
|
|
12
|
+
version: 3.3.0
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
## mma-clarifications
|
|
@@ -10,7 +10,7 @@ when_to_use: >-
|
|
|
10
10
|
field on mma-delegate / mma-execute-plan / mma-audit / mma-review / mma-verify
|
|
11
11
|
/ mma-debug. Cheaper and faster than inlining the same content in every
|
|
12
12
|
request body.
|
|
13
|
-
version: 3.
|
|
13
|
+
version: 3.3.0
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
## mma-context-blocks
|
|
@@ -10,7 +10,7 @@ when_to_use: >-
|
|
|
10
10
|
(superpowers:systematic-debugging) points at the investigation step. Delegate
|
|
11
11
|
the read/reproduce/trace work to a mmagent worker so your main context stays
|
|
12
12
|
focused on the hypothesis and the fix.
|
|
13
|
-
version: 3.
|
|
13
|
+
version: 3.3.0
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
## mma-debug
|
|
@@ -11,7 +11,7 @@ when_to_use: >-
|
|
|
11
11
|
parallel-safe, and keep main context free. If a plan file exists, use
|
|
12
12
|
mma-execute-plan; if the task is an audit/review/verify/debug, prefer the
|
|
13
13
|
matching mma-* skill instead.
|
|
14
|
-
version: 3.
|
|
14
|
+
version: 3.3.0
|
|
15
15
|
---
|
|
16
16
|
|
|
17
17
|
## mma-delegate
|
|
@@ -50,6 +50,12 @@ context block references.
|
|
|
50
50
|
| `tasks[].filePaths` | string[] | no | Files the sub-agent focuses on |
|
|
51
51
|
| `tasks[].done` | string | no | Acceptance criteria |
|
|
52
52
|
| `tasks[].contextBlockIds` | string[] | no | IDs from `mma-context-blocks` |
|
|
53
|
+
| `tasks[].verifyCommand` | string[] | no | Commands to run after task completion to verify the work |
|
|
54
|
+
| `tasks[].reviewPolicy` | `"full"` / `"spec_only"` / `"diff_only"` / `"off"` | no | Review lifecycle policy. Default `"full"` |
|
|
55
|
+
|
|
56
|
+
Set `verifyCommand` when the worker can run a deterministic local check after editing, such as `npm test`, `npm run lint`, or a focused package test. Commands run in order after task completion; each string must be non-empty after trimming. Omit it when no reliable command exists.
|
|
57
|
+
|
|
58
|
+
Set `reviewPolicy: 'diff_only'` when you want a cheaper single-pass review of the produced diff without spec-review rework loops. Use `reviewPolicy: 'full'` for default spec + quality review, `reviewPolicy: 'spec_only'` when quality review is not needed, and `reviewPolicy: 'off'` only for trusted low-risk tasks where verification is enough.
|
|
53
59
|
|
|
54
60
|
### Full example
|
|
55
61
|
|
|
@@ -11,7 +11,7 @@ when_to_use: >-
|
|
|
11
11
|
or superpowers:subagent-driven-development / superpowers:executing-plans when
|
|
12
12
|
mmagent is running — delegated workers are cheaper and don't pollute main
|
|
13
13
|
context. Task descriptors must match the plan headings verbatim.
|
|
14
|
-
version: 3.
|
|
14
|
+
version: 3.3.0
|
|
15
15
|
---
|
|
16
16
|
|
|
17
17
|
## mma-execute-plan
|
|
@@ -51,6 +51,12 @@ parallel and duplicate descriptors are rejected.
|
|
|
51
51
|
| `filePaths` | string[] | no | Plan file + relevant source files |
|
|
52
52
|
| `contextBlockIds` | string[] | no | IDs from `mma-context-blocks` |
|
|
53
53
|
| `agentType` | `"standard"` / `"complex"` | no | Worker tier. Default `"standard"` (cheap). Switch to `"complex"` for tasks too large for a standard-tier model to finish in the turn budget (reads many files, produces many edits, or the last run came back with `filesWritten: 0`). |
|
|
54
|
+
| `verifyCommand` | string[] | no | Commands to run after each plan task completion to verify the work |
|
|
55
|
+
| `tasks[].reviewPolicy` | `"full"` / `"spec_only"` / `"diff_only"` / `"off"` | no | Per-task review lifecycle policy when a task is passed as `{ "task": "...", "reviewPolicy": "..." }`. Default `"full"` |
|
|
56
|
+
|
|
57
|
+
Set `verifyCommand` when the worker can run a deterministic local check after editing, such as `npm test`, `npm run lint`, or a focused package test. Commands run in order after task completion; each string must be non-empty after trimming. Omit it when no reliable command exists.
|
|
58
|
+
|
|
59
|
+
Set `reviewPolicy: 'diff_only'` when you want a cheaper single-pass review of the produced diff without spec-review rework loops. Use `reviewPolicy: 'full'` for default spec + quality review, `reviewPolicy: 'spec_only'` when quality review is not needed, and `reviewPolicy: 'off'` only for trusted low-risk tasks where verification is enough.
|
|
54
60
|
|
|
55
61
|
If the batch reaches `awaiting_clarification`, use `mma-clarifications`
|
|
56
62
|
to confirm or correct the proposed interpretation.
|
|
@@ -9,7 +9,7 @@ when_to_use: >-
|
|
|
9
9
|
you want to re-try the failed indices only. Prefer this over redispatching the
|
|
10
10
|
whole batch or inline-retrying — it's idempotent and keeps the original
|
|
11
11
|
batch's diagnostics intact.
|
|
12
|
-
version: 3.
|
|
12
|
+
version: 3.3.0
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
## mma-retry
|
|
@@ -9,7 +9,7 @@ when_to_use: >-
|
|
|
9
9
|
more files OR a methodology skill (superpowers:requesting-code-review,
|
|
10
10
|
/review, /security-review) points at a review task. Delegate the reviewer pass
|
|
11
11
|
to mmagent workers — your main context stays free to decide what to merge.
|
|
12
|
-
version: 3.
|
|
12
|
+
version: 3.3.0
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
## mma-review
|
|
@@ -8,7 +8,7 @@ when_to_use: >-
|
|
|
8
8
|
superpowers:verification-before-completion) wants acceptance-criteria checked
|
|
9
9
|
against implemented work. Delegate the evidence-gathering to mmagent workers —
|
|
10
10
|
each checklist item is verified independently and in parallel.
|
|
11
|
-
version: 3.
|
|
11
|
+
version: 3.3.0
|
|
12
12
|
---
|
|
13
13
|
|
|
14
14
|
## mma-verify
|
|
@@ -11,7 +11,7 @@ when_to_use: >-
|
|
|
11
11
|
mmagent is running. Read this once, pick the matching mma-* skill, and
|
|
12
12
|
delegate there. Applies equally whether the user invoked a superpowers
|
|
13
13
|
methodology skill or just asked directly.
|
|
14
|
-
version: 3.
|
|
14
|
+
version: 3.3.0
|
|
15
15
|
---
|
|
16
16
|
|
|
17
17
|
## multi-model-agent overview
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhixuan92/multi-model-agent",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.3.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "Standalone HTTP server for multi-model-agent. Routes tool-invocation work to Claude, Codex, or OpenAI-compatible sub-agents with async-polling REST dispatch and installable skills for Claude Code, Gemini CLI, Codex CLI, and Cursor.",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"@asteasolutions/zod-to-openapi": "^8.5.0",
|
|
55
|
-
"@zhixuan92/multi-model-agent-core": "^3.
|
|
55
|
+
"@zhixuan92/multi-model-agent-core": "^3.3.0",
|
|
56
56
|
"gray-matter": "^4.0.3",
|
|
57
57
|
"minimist": "^1.2.8",
|
|
58
58
|
"zod": "^4.0.0"
|