@zhixuan92/multi-model-agent 3.1.6 → 3.2.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/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 +21 -92
- package/dist/http/server.js.map +1 -1
- package/dist/http/test-provider-override.d.ts +4 -0
- package/dist/http/test-provider-override.d.ts.map +1 -0
- package/dist/http/test-provider-override.js +17 -0
- package/dist/http/test-provider-override.js.map +1 -0
- 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 +1 -1
- package/dist/skills/mma-execute-plan/SKILL.md +1 -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/README.md
CHANGED
|
@@ -70,7 +70,7 @@ The auth token is generated on first `mmagent serve`. Retrieve it with `mmagent
|
|
|
70
70
|
|
|
71
71
|
## REST API
|
|
72
72
|
|
|
73
|
-
The daemon exposes
|
|
73
|
+
The daemon exposes 14 public endpoints. All tool endpoints are async: they return `202 { batchId, statusUrl }` immediately and the executor runs in the background.
|
|
74
74
|
|
|
75
75
|
| Endpoint | Purpose |
|
|
76
76
|
|---|---|
|
|
@@ -1,67 +1,10 @@
|
|
|
1
1
|
import type { Client } from '../install/manifest.js';
|
|
2
2
|
export type { Client } from '../install/manifest.js';
|
|
3
3
|
export { ALL_CLIENTS, detectClients } from '../install/manifest.js';
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
export
|
|
7
|
-
|
|
8
|
-
constructor(target: string, valid: readonly Client[]);
|
|
9
|
-
}
|
|
10
|
-
/** Thrown when a skill's SKILL.md cannot be read from the bundled skills directory. */
|
|
11
|
-
export declare class SkillNotFoundError extends Error {
|
|
12
|
-
readonly code: "skill_not_found";
|
|
13
|
-
constructor(skillName: string, checkedPath: string);
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Return the absolute path to the skills root directory.
|
|
17
|
-
*
|
|
18
|
-
* The skills root is the directory containing per-skill sub-directories
|
|
19
|
-
* (e.g. `<root>/mma-delegate/SKILL.md`). In production this resolves to
|
|
20
|
-
* `packages/server/src/skills/`. During tests the caller can pass a custom
|
|
21
|
-
* `skillsRoot` to read from a temp fixture instead.
|
|
22
|
-
*/
|
|
23
|
-
export declare function getSkillsRoot(skillsRoot?: string): string;
|
|
24
|
-
/**
|
|
25
|
-
* Read the content of a skill's SKILL.md file.
|
|
26
|
-
* Returns null if the file does not exist.
|
|
27
|
-
* Propagates permission errors and other I/O problems so callers can
|
|
28
|
-
* distinguish "skill not found" from "can't access skill".
|
|
29
|
-
*/
|
|
30
|
-
export declare function readSkillContent(skillName: string, skillsRoot?: string): string | null;
|
|
31
|
-
/**
|
|
32
|
-
* Write a skill's SKILL.md content to the target client's skill directory.
|
|
33
|
-
* Dispatches to the appropriate writer based on `target`.
|
|
34
|
-
*
|
|
35
|
-
* @param skillName The skill name (used in paths and warnings).
|
|
36
|
-
* @param content Raw SKILL.md content (may contain @include directives).
|
|
37
|
-
* @param target The AI client to install the skill for.
|
|
38
|
-
* @param homeDir Home directory (replaces os.homedir()).
|
|
39
|
-
* @param skillsRoot Root of the skills directory (for @include resolution).
|
|
40
|
-
* @param version Skill version string (used by Gemini extension manifest).
|
|
41
|
-
* @param cwd Current working directory (used by Cursor; defaults to process.cwd()).
|
|
42
|
-
* @param force If true, overwrite existing Cursor file without warning.
|
|
43
|
-
*/
|
|
44
|
-
export declare function writeSkillToClient(skillName: string, content: string, target: Client, homeDir: string, skillsRoot: string, version?: string, cwd?: string, force?: boolean): void;
|
|
45
|
-
/**
|
|
46
|
-
* Remove a skill's files from the target client's skill directory.
|
|
47
|
-
* Dispatches to the appropriate remover based on `target`.
|
|
48
|
-
*
|
|
49
|
-
* @param skillName The skill name (used for claude-code path resolution).
|
|
50
|
-
* @param target The AI client to uninstall the skill from.
|
|
51
|
-
* @param homeDir Home directory (replaces os.homedir()).
|
|
52
|
-
* @param cwd Current working directory (used by Cursor; defaults to process.cwd()).
|
|
53
|
-
*/
|
|
54
|
-
export declare function removeSkillFromClient(skillName: string, target: Client, homeDir: string, cwd?: string): void;
|
|
55
|
-
export interface InstallResult {
|
|
56
|
-
skill: string;
|
|
57
|
-
action: 'installed' | 'uninstalled';
|
|
58
|
-
/** Targets for which the operation succeeded. */
|
|
59
|
-
targets: Client[];
|
|
60
|
-
/** Targets that were skipped (dry-run, unknown, or not applicable). */
|
|
61
|
-
skipped: Client[];
|
|
62
|
-
/** Files would be written but were not (dry-run mode). */
|
|
63
|
-
dryRun: boolean;
|
|
64
|
-
}
|
|
4
|
+
export { SUPPORTED_SKILLS, SkillNotFoundError, getSkillsRoot, readSkillContent, } from '../install/discover.js';
|
|
5
|
+
export { UnknownTargetError, writeSkillToClient, removeSkillFromClient, } from '../install/manifest-resolve.js';
|
|
6
|
+
export type { InstallResult } from '../install/orchestrate.js';
|
|
7
|
+
export { doInstall, doUninstall } from '../install/orchestrate.js';
|
|
65
8
|
/**
|
|
66
9
|
* Return codes for `main()`.
|
|
67
10
|
* Exported so callers (e.g. the CLI dispatcher in cli/index.ts) can pass the
|
|
@@ -77,29 +20,6 @@ export declare const ExitCode: Readonly<{
|
|
|
77
20
|
ERR_UNKNOWN_TARGET: 7;
|
|
78
21
|
ERR_UNKNOWN: 8;
|
|
79
22
|
}>;
|
|
80
|
-
/**
|
|
81
|
-
* Install a skill to the specified client targets.
|
|
82
|
-
* - dryRun=true: checks skill existence; does NOT write files or update manifest.
|
|
83
|
-
* - dryRun=false: writes files via the per-client writers.
|
|
84
|
-
*/
|
|
85
|
-
export declare function doInstall(skillName: string, targets: Client[], opts: {
|
|
86
|
-
dryRun: boolean;
|
|
87
|
-
homeDir: string;
|
|
88
|
-
skillsRoot?: string;
|
|
89
|
-
version?: string;
|
|
90
|
-
cwd?: string;
|
|
91
|
-
force?: boolean;
|
|
92
|
-
}): InstallResult;
|
|
93
|
-
/**
|
|
94
|
-
* Uninstall a skill from the specified client targets.
|
|
95
|
-
* - dryRun=true: resolves targets; does NOT remove files or update manifest.
|
|
96
|
-
* - dryRun=false: removes files via the per-client removers.
|
|
97
|
-
*/
|
|
98
|
-
export declare function doUninstall(skillName: string, targets: Client[], opts: {
|
|
99
|
-
dryRun: boolean;
|
|
100
|
-
homeDir: string;
|
|
101
|
-
cwd?: string;
|
|
102
|
-
}): InstallResult;
|
|
103
23
|
export interface ParsedArgs {
|
|
104
24
|
skill: string | null;
|
|
105
25
|
/** Explicit --config path, or null if not specified. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-skill.d.ts","sourceRoot":"","sources":["../../src/cli/install-skill.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install-skill.d.ts","sourceRoot":"","sources":["../../src/cli/install-skill.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAerD,YAAY,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,gCAAgC,CAAC;AAIxC,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGnE;;;;GAIG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;EASnB,CAAC;AAIH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,wDAAwD;IACxD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CA6BpD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI,EAChC,UAAU,EAAE,OAAO,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,EAAE,CAmBV;AAkDD,MAAM,WAAW,QAAQ;IACvB,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAChC,gCAAgC;IAChC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;CACjC;AAED;;;;;;GAMG;AACH,wBAAsB,IAAI,CAAC,IAAI,GAAE,QAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CA0F/D"}
|
|
@@ -15,141 +15,19 @@
|
|
|
15
15
|
* Tasks 9.5–9.8: Individual client writers.
|
|
16
16
|
* Task 9.9: Uninstall wires all removers.
|
|
17
17
|
*/
|
|
18
|
-
import fs from 'node:fs';
|
|
19
18
|
import path from 'node:path';
|
|
20
19
|
import os from 'node:os';
|
|
21
20
|
import { fileURLToPath } from 'node:url';
|
|
22
21
|
import minimist from 'minimist';
|
|
23
22
|
import * as manifest from '../install/manifest.js';
|
|
24
23
|
import { ALL_CLIENTS, detectClients } from '../install/manifest.js';
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import { installCodexCli, uninstallCodexCli } from '../install/codex-cli.js';
|
|
28
|
-
import { installCursor, uninstallCursor } from '../install/cursor.js';
|
|
24
|
+
import { SUPPORTED_SKILLS, SkillNotFoundError, } from '../install/discover.js';
|
|
25
|
+
import { UnknownTargetError, } from '../install/manifest-resolve.js';
|
|
29
26
|
export { ALL_CLIENTS, detectClients } from '../install/manifest.js';
|
|
30
|
-
export
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
'mma-review',
|
|
35
|
-
'mma-verify',
|
|
36
|
-
'mma-debug',
|
|
37
|
-
'mma-execute-plan',
|
|
38
|
-
'mma-retry',
|
|
39
|
-
'mma-context-blocks',
|
|
40
|
-
'mma-clarifications',
|
|
41
|
-
];
|
|
42
|
-
// ─── Custom errors ────────────────────────────────────────────────────────────
|
|
43
|
-
/** Thrown when a passed `--target` value is not a known client. */
|
|
44
|
-
export class UnknownTargetError extends Error {
|
|
45
|
-
code = 'unknown_target';
|
|
46
|
-
constructor(target, valid) {
|
|
47
|
-
super(`Unknown target: ${target}. Valid: ${valid.join(', ')}`);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
/** Thrown when a skill's SKILL.md cannot be read from the bundled skills directory. */
|
|
51
|
-
export class SkillNotFoundError extends Error {
|
|
52
|
-
code = 'skill_not_found';
|
|
53
|
-
constructor(skillName, checkedPath) {
|
|
54
|
-
super(`Skill '${skillName}' not found. ` +
|
|
55
|
-
`Checked: ${checkedPath}. ` +
|
|
56
|
-
`Available skills: ${SUPPORTED_SKILLS.join(', ')}`);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
// ─── Skills root ────────────────────────────────────────────────────────────
|
|
60
|
-
/** Resolved path to the bundled skills directory. Can be overridden for testing. */
|
|
61
|
-
const DEFAULT_SKILLS_ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', 'skills');
|
|
62
|
-
/**
|
|
63
|
-
* Return the absolute path to the skills root directory.
|
|
64
|
-
*
|
|
65
|
-
* The skills root is the directory containing per-skill sub-directories
|
|
66
|
-
* (e.g. `<root>/mma-delegate/SKILL.md`). In production this resolves to
|
|
67
|
-
* `packages/server/src/skills/`. During tests the caller can pass a custom
|
|
68
|
-
* `skillsRoot` to read from a temp fixture instead.
|
|
69
|
-
*/
|
|
70
|
-
export function getSkillsRoot(skillsRoot) {
|
|
71
|
-
return skillsRoot ?? DEFAULT_SKILLS_ROOT;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Read the content of a skill's SKILL.md file.
|
|
75
|
-
* Returns null if the file does not exist.
|
|
76
|
-
* Propagates permission errors and other I/O problems so callers can
|
|
77
|
-
* distinguish "skill not found" from "can't access skill".
|
|
78
|
-
*/
|
|
79
|
-
export function readSkillContent(skillName, skillsRoot) {
|
|
80
|
-
const skillFile = path.join(getSkillsRoot(skillsRoot), skillName, 'SKILL.md');
|
|
81
|
-
try {
|
|
82
|
-
return fs.readFileSync(skillFile, 'utf-8');
|
|
83
|
-
}
|
|
84
|
-
catch (err) {
|
|
85
|
-
if (err.code === 'ENOENT')
|
|
86
|
-
return null;
|
|
87
|
-
throw err;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
// ─── Per-client writer/remover dispatch ───────────────────────────────────────
|
|
91
|
-
/**
|
|
92
|
-
* Write a skill's SKILL.md content to the target client's skill directory.
|
|
93
|
-
* Dispatches to the appropriate writer based on `target`.
|
|
94
|
-
*
|
|
95
|
-
* @param skillName The skill name (used in paths and warnings).
|
|
96
|
-
* @param content Raw SKILL.md content (may contain @include directives).
|
|
97
|
-
* @param target The AI client to install the skill for.
|
|
98
|
-
* @param homeDir Home directory (replaces os.homedir()).
|
|
99
|
-
* @param skillsRoot Root of the skills directory (for @include resolution).
|
|
100
|
-
* @param version Skill version string (used by Gemini extension manifest).
|
|
101
|
-
* @param cwd Current working directory (used by Cursor; defaults to process.cwd()).
|
|
102
|
-
* @param force If true, overwrite existing Cursor file without warning.
|
|
103
|
-
*/
|
|
104
|
-
export function writeSkillToClient(skillName, content, target, homeDir, skillsRoot, version = '0.0.0', cwd = process.cwd(), force = false) {
|
|
105
|
-
switch (target) {
|
|
106
|
-
case 'claude-code':
|
|
107
|
-
installClaudeCode({ skillName, content, homeDir, skillsRoot });
|
|
108
|
-
break;
|
|
109
|
-
case 'gemini':
|
|
110
|
-
installGeminiCli({ skillName, content, skillVersion: version, homeDir, skillsRoot });
|
|
111
|
-
break;
|
|
112
|
-
case 'codex':
|
|
113
|
-
installCodexCli({ skillName, content, homeDir, skillsRoot });
|
|
114
|
-
break;
|
|
115
|
-
case 'cursor':
|
|
116
|
-
installCursor({ content, cwd, homeDir, skillsRoot, force });
|
|
117
|
-
break;
|
|
118
|
-
default: {
|
|
119
|
-
const _exhaustive = target;
|
|
120
|
-
throw new Error(`install-skill: unknown target: ${_exhaustive}`);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Remove a skill's files from the target client's skill directory.
|
|
126
|
-
* Dispatches to the appropriate remover based on `target`.
|
|
127
|
-
*
|
|
128
|
-
* @param skillName The skill name (used for claude-code path resolution).
|
|
129
|
-
* @param target The AI client to uninstall the skill from.
|
|
130
|
-
* @param homeDir Home directory (replaces os.homedir()).
|
|
131
|
-
* @param cwd Current working directory (used by Cursor; defaults to process.cwd()).
|
|
132
|
-
*/
|
|
133
|
-
export function removeSkillFromClient(skillName, target, homeDir, cwd = process.cwd()) {
|
|
134
|
-
switch (target) {
|
|
135
|
-
case 'claude-code':
|
|
136
|
-
uninstallClaudeCode(skillName, homeDir);
|
|
137
|
-
break;
|
|
138
|
-
case 'gemini':
|
|
139
|
-
uninstallGeminiCli(homeDir);
|
|
140
|
-
break;
|
|
141
|
-
case 'codex':
|
|
142
|
-
uninstallCodexCli(homeDir);
|
|
143
|
-
break;
|
|
144
|
-
case 'cursor':
|
|
145
|
-
uninstallCursor(cwd);
|
|
146
|
-
break;
|
|
147
|
-
default: {
|
|
148
|
-
const _exhaustive = target;
|
|
149
|
-
throw new Error(`install-skill: unknown target: ${_exhaustive}`);
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
}
|
|
27
|
+
export { SUPPORTED_SKILLS, SkillNotFoundError, getSkillsRoot, readSkillContent, } from '../install/discover.js';
|
|
28
|
+
export { UnknownTargetError, writeSkillToClient, removeSkillFromClient, } from '../install/manifest-resolve.js';
|
|
29
|
+
export { doInstall, doUninstall } from '../install/orchestrate.js';
|
|
30
|
+
import { doInstall, doUninstall } from '../install/orchestrate.js';
|
|
153
31
|
/**
|
|
154
32
|
* Return codes for `main()`.
|
|
155
33
|
* Exported so callers (e.g. the CLI dispatcher in cli/index.ts) can pass the
|
|
@@ -165,55 +43,6 @@ export const ExitCode = Object.freeze({
|
|
|
165
43
|
ERR_UNKNOWN_TARGET: 7,
|
|
166
44
|
ERR_UNKNOWN: 8,
|
|
167
45
|
});
|
|
168
|
-
// ─── Core logic ─────────────────────────────────────────────────────────────
|
|
169
|
-
/**
|
|
170
|
-
* Install a skill to the specified client targets.
|
|
171
|
-
* - dryRun=true: checks skill existence; does NOT write files or update manifest.
|
|
172
|
-
* - dryRun=false: writes files via the per-client writers.
|
|
173
|
-
*/
|
|
174
|
-
export function doInstall(skillName, targets, opts) {
|
|
175
|
-
const checkedPath = path.join(getSkillsRoot(opts.skillsRoot), skillName, 'SKILL.md');
|
|
176
|
-
const content = readSkillContent(skillName, opts.skillsRoot);
|
|
177
|
-
if (!content) {
|
|
178
|
-
throw new SkillNotFoundError(skillName, checkedPath);
|
|
179
|
-
}
|
|
180
|
-
const skillsRoot = getSkillsRoot(opts.skillsRoot);
|
|
181
|
-
const version = opts.version ?? '0.0.0';
|
|
182
|
-
const cwd = opts.cwd ?? process.cwd();
|
|
183
|
-
const installed = [];
|
|
184
|
-
const skipped = [];
|
|
185
|
-
for (const target of targets) {
|
|
186
|
-
if (opts.dryRun) {
|
|
187
|
-
// In dry-run: record target as skipped (would write), not installed
|
|
188
|
-
skipped.push(target);
|
|
189
|
-
}
|
|
190
|
-
else {
|
|
191
|
-
writeSkillToClient(skillName, content, target, opts.homeDir, skillsRoot, version, cwd, opts.force);
|
|
192
|
-
installed.push(target);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
return { skill: skillName, action: 'installed', targets: installed, skipped, dryRun: opts.dryRun };
|
|
196
|
-
}
|
|
197
|
-
/**
|
|
198
|
-
* Uninstall a skill from the specified client targets.
|
|
199
|
-
* - dryRun=true: resolves targets; does NOT remove files or update manifest.
|
|
200
|
-
* - dryRun=false: removes files via the per-client removers.
|
|
201
|
-
*/
|
|
202
|
-
export function doUninstall(skillName, targets, opts) {
|
|
203
|
-
const cwd = opts.cwd ?? process.cwd();
|
|
204
|
-
const installed = [];
|
|
205
|
-
const skipped = [];
|
|
206
|
-
for (const target of targets) {
|
|
207
|
-
if (opts.dryRun) {
|
|
208
|
-
skipped.push(target);
|
|
209
|
-
}
|
|
210
|
-
else {
|
|
211
|
-
removeSkillFromClient(skillName, target, opts.homeDir, cwd);
|
|
212
|
-
installed.push(target);
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
return { skill: skillName, action: 'uninstalled', targets: installed, skipped, dryRun: opts.dryRun };
|
|
216
|
-
}
|
|
217
46
|
/**
|
|
218
47
|
* Parse CLI arguments for `install-skill`.
|
|
219
48
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-skill.js","sourceRoot":"","sources":["../../src/cli/install-skill.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install-skill.js","sourceRoot":"","sources":["../../src/cli/install-skill.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,12 +4,9 @@ import type { HandlerDeps } from './handler-deps.js';
|
|
|
4
4
|
/**
|
|
5
5
|
* Builds the ExecutionContext passed to every executor.
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* registered first so resumeFromClarification can call it later).
|
|
11
|
-
* 2. Returns a Promise that resolves when resumeFromClarification is called
|
|
12
|
-
* by the POST /batch/:id/clarify handler (Phase 7).
|
|
7
|
+
* The server adapter owns HTTP-specific heartbeat wiring, then delegates
|
|
8
|
+
* required-field validation and context object construction to the core
|
|
9
|
+
* `buildExecutionContext` factory.
|
|
13
10
|
*/
|
|
14
11
|
export declare function buildExecutionContext(deps: HandlerDeps, pc: ProjectContext, batchId: string): ExecutionContext;
|
|
15
12
|
//# sourceMappingURL=execution-context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-context.d.ts","sourceRoot":"","sources":["../../src/http/execution-context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"execution-context.d.ts","sourceRoot":"","sources":["../../src/http/execution-context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,mCAAmC,CAAC;AAE3F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,WAAW,EACjB,EAAE,EAAE,cAAc,EAClB,OAAO,EAAE,MAAM,GACd,gBAAgB,CAoDlB"}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
// packages/server/src/http/execution-context.ts
|
|
2
|
-
import {
|
|
2
|
+
import { composeRunningHeadline } from '@zhixuan92/multi-model-agent-core';
|
|
3
|
+
import { buildExecutionContext as buildCoreExecutionContext } from '@zhixuan92/multi-model-agent-core/executors/execution-context';
|
|
3
4
|
/**
|
|
4
5
|
* Builds the ExecutionContext passed to every executor.
|
|
5
6
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* registered first so resumeFromClarification can call it later).
|
|
10
|
-
* 2. Returns a Promise that resolves when resumeFromClarification is called
|
|
11
|
-
* by the POST /batch/:id/clarify handler (Phase 7).
|
|
7
|
+
* The server adapter owns HTTP-specific heartbeat wiring, then delegates
|
|
8
|
+
* required-field validation and context object construction to the core
|
|
9
|
+
* `buildExecutionContext` factory.
|
|
12
10
|
*/
|
|
13
11
|
export function buildExecutionContext(deps, pc, batchId) {
|
|
14
12
|
const recordHeartbeat = (tick) => {
|
|
@@ -53,27 +51,14 @@ export function buildExecutionContext(deps, pc, batchId) {
|
|
|
53
51
|
});
|
|
54
52
|
}
|
|
55
53
|
};
|
|
56
|
-
return {
|
|
54
|
+
return buildCoreExecutionContext({
|
|
57
55
|
projectContext: pc,
|
|
58
56
|
config: deps.config,
|
|
59
57
|
logger: deps.logger,
|
|
60
58
|
contextBlockStore: pc.contextBlocks,
|
|
61
|
-
providerFactory: (profile) => createProvider(profile, deps.config),
|
|
62
59
|
parentModel: process.env['PARENT_MODEL_NAME'],
|
|
63
|
-
onProgress: undefined,
|
|
64
60
|
batchId,
|
|
65
61
|
recordHeartbeat,
|
|
66
|
-
|
|
67
|
-
return new Promise((resolve) => {
|
|
68
|
-
const entry = deps.batchRegistry.get(batchId);
|
|
69
|
-
if (entry) {
|
|
70
|
-
// Register resolver BEFORE transitioning state so resumeFromClarification
|
|
71
|
-
// can call it immediately if it races ahead.
|
|
72
|
-
entry.resolveClarification = (interpretation) => resolve({ interpretation });
|
|
73
|
-
}
|
|
74
|
-
deps.batchRegistry.requestClarification(batchId, proposal.interpretation);
|
|
75
|
-
});
|
|
76
|
-
},
|
|
77
|
-
};
|
|
62
|
+
});
|
|
78
63
|
}
|
|
79
64
|
//# sourceMappingURL=execution-context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-context.js","sourceRoot":"","sources":["../../src/http/execution-context.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"execution-context.js","sourceRoot":"","sources":["../../src/http/execution-context.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E,OAAO,EAAE,qBAAqB,IAAI,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAInI;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAiB,EACjB,EAAkB,EAClB,OAAe;IAEf,MAAM,eAAe,GAAG,CAAC,IAAuB,EAAE,EAAE;QAClD,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACnC,6DAA6D;QAC7D,mEAAmE;QACnE,6DAA6D;QAC7D,KAAK,CAAC,OAAO,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAChF,kEAAkE;QAClE,kEAAkE;QAClE,mEAAmE;QACnE,iDAAiD;QACjD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,UAAU,IAAI,CAAC;YAC9B,CAAC,CAAC,IAAI,CAAC,QAAQ;YACf,CAAC,CAAC,sBAAsB,CAAC;gBACrB,UAAU;gBACV,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC;gBACrC,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,CAAC;gBACzC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE;gBACjB,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CAAC;QACP,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;YACxB,OAAO,EAAE,gBAAgB;YACzB,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;gBAC1B,OAAO,EAAE,gBAAgB;gBACzB,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;gBAChC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE;aAC7B,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,yBAAyB,CAAC;QAC/B,cAAc,EAAE,EAAE;QAClB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,iBAAiB,EAAE,EAAE,CAAC,aAAa;QACnC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QAC7C,OAAO;QACP,eAAe;KAChB,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IncomingMessage, ServerResponse } from 'node:http';
|
|
2
|
+
import type { ServerConfig } from '@zhixuan92/multi-model-agent-core';
|
|
3
|
+
import { Router } from './router.js';
|
|
4
|
+
export interface PipelineConfig {
|
|
5
|
+
loopbackOnlyPaths: ReadonlySet<string>;
|
|
6
|
+
authExemptPaths: ReadonlySet<string>;
|
|
7
|
+
cwdRequiredPaths: ReadonlySet<string>;
|
|
8
|
+
}
|
|
9
|
+
export declare function handleRequest(router: Router, token: string, req: IncomingMessage, res: ServerResponse, cfg: ServerConfig, pipelineCfg: PipelineConfig): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=request-pipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-pipeline.d.ts","sourceRoot":"","sources":["../../src/http/request-pipeline.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAUrC,MAAM,WAAW,cAAc;IAC7B,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrC,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACvC;AAED,wBAAsB,aAAa,CACjC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,YAAY,EACjB,WAAW,EAAE,cAAc,GAC1B,OAAO,CAAC,IAAI,CAAC,CAyFf"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { sendError } from './errors.js';
|
|
2
|
+
import { readBody } from './middleware/body-reader.js';
|
|
3
|
+
import { validateAuthHeader } from './auth.js';
|
|
4
|
+
import { validateCwd } from './cwd-validator.js';
|
|
5
|
+
import { isLoopbackAddress } from './loopback.js';
|
|
6
|
+
const BODY_METHODS = new Set(['POST', 'PUT', 'PATCH', 'DELETE']);
|
|
7
|
+
export async function handleRequest(router, token, req, res, cfg, pipelineCfg) {
|
|
8
|
+
const method = req.method ?? 'GET';
|
|
9
|
+
const rawUrl = req.url ?? '/';
|
|
10
|
+
// ── Step 1: Body size cap ──────────────────────────────────────────────────
|
|
11
|
+
let rawBody;
|
|
12
|
+
if (BODY_METHODS.has(method)) {
|
|
13
|
+
const result = await readBody(req, cfg.server.limits.maxBodyBytes);
|
|
14
|
+
if (!result.ok) {
|
|
15
|
+
res.writeHead(413, { 'content-type': 'application/json', 'connection': 'close' });
|
|
16
|
+
res.end(JSON.stringify({ error: { code: 'payload_too_large', message: `Request body exceeds the ${cfg.server.limits.maxBodyBytes}-byte limit` } }), () => { req.socket?.destroy(); });
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
rawBody = result.body;
|
|
20
|
+
}
|
|
21
|
+
// ── Step 2: Route match ────────────────────────────────────────────────────
|
|
22
|
+
const match = router.match(method, rawUrl);
|
|
23
|
+
if (!match) {
|
|
24
|
+
const allowed = router.methodsFor(rawUrl);
|
|
25
|
+
if (allowed.length > 0) {
|
|
26
|
+
sendError(res, 405, 'method_not_allowed', `Method ${method} not allowed`, { allowed });
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
sendError(res, 404, 'not_found', `Unknown path ${rawUrl.split('?')[0]}`);
|
|
30
|
+
}
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
// ── Step 3: Loopback guard ─────────────────────────────────────────────────
|
|
34
|
+
const pathname = rawUrl.split('?')[0];
|
|
35
|
+
if (pipelineCfg.loopbackOnlyPaths.has(pathname)) {
|
|
36
|
+
const remoteAddr = req.socket?.remoteAddress;
|
|
37
|
+
if (!isLoopbackAddress(remoteAddr)) {
|
|
38
|
+
sendError(res, 403, 'loopback_only', 'This endpoint is only accessible from the loopback interface');
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
// ── Step 4: Bearer auth ────────────────────────────────────────────────────
|
|
43
|
+
if (!pipelineCfg.authExemptPaths.has(pathname)) {
|
|
44
|
+
const header = req.headers['authorization'];
|
|
45
|
+
const authResult = validateAuthHeader(header, token);
|
|
46
|
+
if (!authResult.ok) {
|
|
47
|
+
sendError(res, 401, 'unauthorized', 'Valid Bearer token required');
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
// ── Step 5: JSON body parse ────────────────────────────────────────────────
|
|
52
|
+
let parsedBody;
|
|
53
|
+
if (rawBody !== undefined && rawBody.length > 0) {
|
|
54
|
+
try {
|
|
55
|
+
parsedBody = JSON.parse(rawBody.toString('utf8'));
|
|
56
|
+
}
|
|
57
|
+
catch {
|
|
58
|
+
sendError(res, 400, 'invalid_json', 'Request body is not valid JSON');
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
// ── Step 6: cwd query param validation ─────────────────────────────────────
|
|
63
|
+
let cwdValue;
|
|
64
|
+
const urlObj = new URL(rawUrl, 'http://localhost');
|
|
65
|
+
const requiresCwd = pipelineCfg.cwdRequiredPaths.has(pathname) ||
|
|
66
|
+
pathname === '/context-blocks' ||
|
|
67
|
+
/^\/context-blocks\//.test(pathname);
|
|
68
|
+
if (requiresCwd) {
|
|
69
|
+
const cwdParam = urlObj.searchParams.get('cwd') ?? undefined;
|
|
70
|
+
const cwdResult = validateCwd(cwdParam);
|
|
71
|
+
if (!cwdResult.ok) {
|
|
72
|
+
const statusCode = cwdResult.error === 'forbidden_cwd' ? 403 : 400;
|
|
73
|
+
sendError(res, statusCode, cwdResult.error, cwdResult.message);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
cwdValue = cwdResult.canonicalCwd;
|
|
77
|
+
}
|
|
78
|
+
// ── Step 7: Hand off to matched handler ────────────────────────────────────
|
|
79
|
+
const ctx = {
|
|
80
|
+
url: urlObj,
|
|
81
|
+
cwd: cwdValue,
|
|
82
|
+
body: parsedBody,
|
|
83
|
+
authed: !pipelineCfg.authExemptPaths.has(pathname),
|
|
84
|
+
};
|
|
85
|
+
await match.handler(req, res, match.params, ctx);
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=request-pipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-pipeline.js","sourceRoot":"","sources":["../../src/http/request-pipeline.ts"],"names":[],"mappings":"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"}
|
package/dist/http/router.d.ts
CHANGED
|
@@ -10,5 +10,10 @@ export declare class Router {
|
|
|
10
10
|
} | null;
|
|
11
11
|
/** Returns all HTTP methods registered for routes that match the given url pathname. */
|
|
12
12
|
methodsFor(url: string): string[];
|
|
13
|
+
/** Returns the full registered route manifest as method/path pairs. */
|
|
14
|
+
listRoutes(): Array<{
|
|
15
|
+
method: string;
|
|
16
|
+
path: string;
|
|
17
|
+
}>;
|
|
13
18
|
}
|
|
14
19
|
//# sourceMappingURL=router.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/http/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAQlJ,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAA8C;IAE5D,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI;IAWjE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,UAAU,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,IAAI;IAalG,wFAAwF;IACxF,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/http/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAQlJ,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAA8C;IAE5D,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI;IAWjE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,UAAU,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,IAAI;IAalG,wFAAwF;IACxF,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAcjC,uEAAuE;IACvE,UAAU,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAStD"}
|
package/dist/http/router.js
CHANGED
|
@@ -37,5 +37,15 @@ export class Router {
|
|
|
37
37
|
}
|
|
38
38
|
return methods;
|
|
39
39
|
}
|
|
40
|
+
/** Returns the full registered route manifest as method/path pairs. */
|
|
41
|
+
listRoutes() {
|
|
42
|
+
const manifest = [];
|
|
43
|
+
for (const [method, entries] of this.routes) {
|
|
44
|
+
for (const [path] of entries) {
|
|
45
|
+
manifest.push({ method, path });
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return manifest;
|
|
49
|
+
}
|
|
40
50
|
}
|
|
41
51
|
//# sourceMappingURL=router.js.map
|
package/dist/http/router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/http/router.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,MAAM;IACT,MAAM,GAAG,IAAI,GAAG,EAAmC,CAAC;IAE5D,QAAQ,CAAC,MAAc,EAAE,IAAY,EAAE,OAAmB;QACxD,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE;YAC3D,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,QAAQ,GAAG,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,MAAc,EAAE,GAAW;QAC/B,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,GAAG,EAAsB,EAAE,CAAC;YACjF,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,CAAC,EAAE,CAAC;gBACN,MAAM,MAAM,GAA2B,EAAE,CAAC;gBAC1C,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9D,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YAC5C,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wFAAwF;IACxF,UAAU,CAAC,GAAW;QACpB,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5C,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;gBAChC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACrB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/http/router.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,MAAM;IACT,MAAM,GAAG,IAAI,GAAG,EAAmC,CAAC;IAE5D,QAAQ,CAAC,MAAc,EAAE,IAAY,EAAE,OAAmB;QACxD,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE;YAC3D,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,QAAQ,GAAG,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,MAAc,EAAE,GAAW;QAC/B,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,GAAG,EAAsB,EAAE,CAAC;YACjF,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,CAAC,EAAE,CAAC;gBACN,MAAM,MAAM,GAA2B,EAAE,CAAC;gBAC1C,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9D,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YAC5C,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wFAAwF;IACxF,UAAU,CAAC,GAAW;QACpB,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5C,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;gBAChC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACrB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,uEAAuE;IACvE,UAAU;QACR,MAAM,QAAQ,GAA4C,EAAE,CAAC;QAC7D,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5C,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC;gBAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/http/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/http/server.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAIrF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAkB7D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,iGAAiG;IACjG,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,6EAA6E;IAC7E,aAAa,EAAE,aAAa,CAAC;IAC7B,+EAA+E;IAC/E,eAAe,EAAE,eAAe,CAAC;IACjC,kGAAkG;IAClG,eAAe,EAAE,MAAM,CAAC;CACzB;AA4FD,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,CA6E9E"}
|