@mythxengine/types 0.1.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/LICENSE +21 -0
- package/dist/__tests__/rules.test.d.ts +5 -0
- package/dist/__tests__/rules.test.d.ts.map +1 -0
- package/dist/__tests__/rules.test.js +278 -0
- package/dist/__tests__/rules.test.js.map +1 -0
- package/dist/__tests__/time.test.d.ts +2 -0
- package/dist/__tests__/time.test.d.ts.map +1 -0
- package/dist/__tests__/time.test.js +125 -0
- package/dist/__tests__/time.test.js.map +1 -0
- package/dist/game/abilities.d.ts +77 -0
- package/dist/game/abilities.d.ts.map +1 -0
- package/dist/game/abilities.js +38 -0
- package/dist/game/abilities.js.map +1 -0
- package/dist/game/actions.d.ts +84 -0
- package/dist/game/actions.d.ts.map +1 -0
- package/dist/game/actions.js +10 -0
- package/dist/game/actions.js.map +1 -0
- package/dist/game/character.d.ts +128 -0
- package/dist/game/character.d.ts.map +1 -0
- package/dist/game/character.js +16 -0
- package/dist/game/character.js.map +1 -0
- package/dist/game/combat.d.ts +56 -0
- package/dist/game/combat.d.ts.map +1 -0
- package/dist/game/combat.js +5 -0
- package/dist/game/combat.js.map +1 -0
- package/dist/game/conditions.d.ts +216 -0
- package/dist/game/conditions.d.ts.map +1 -0
- package/dist/game/conditions.js +99 -0
- package/dist/game/conditions.js.map +1 -0
- package/dist/game/dice.d.ts +87 -0
- package/dist/game/dice.d.ts.map +1 -0
- package/dist/game/dice.js +13 -0
- package/dist/game/dice.js.map +1 -0
- package/dist/game/events.d.ts +85 -0
- package/dist/game/events.d.ts.map +1 -0
- package/dist/game/events.js +10 -0
- package/dist/game/events.js.map +1 -0
- package/dist/game/index.d.ts +13 -0
- package/dist/game/index.d.ts.map +1 -0
- package/dist/game/index.js +13 -0
- package/dist/game/index.js.map +1 -0
- package/dist/game/player.d.ts +110 -0
- package/dist/game/player.d.ts.map +1 -0
- package/dist/game/player.js +45 -0
- package/dist/game/player.js.map +1 -0
- package/dist/game/state.d.ts +99 -0
- package/dist/game/state.d.ts.map +1 -0
- package/dist/game/state.js +60 -0
- package/dist/game/state.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/rules/abilities.d.ts +82 -0
- package/dist/rules/abilities.d.ts.map +1 -0
- package/dist/rules/abilities.js +94 -0
- package/dist/rules/abilities.js.map +1 -0
- package/dist/rules/custom-tests.d.ts +163 -0
- package/dist/rules/custom-tests.d.ts.map +1 -0
- package/dist/rules/custom-tests.js +43 -0
- package/dist/rules/custom-tests.js.map +1 -0
- package/dist/rules/difficulties.d.ts +51 -0
- package/dist/rules/difficulties.d.ts.map +1 -0
- package/dist/rules/difficulties.js +77 -0
- package/dist/rules/difficulties.js.map +1 -0
- package/dist/rules/index.d.ts +123 -0
- package/dist/rules/index.d.ts.map +1 -0
- package/dist/rules/index.js +170 -0
- package/dist/rules/index.js.map +1 -0
- package/dist/rules/mechanics.d.ts +130 -0
- package/dist/rules/mechanics.d.ts.map +1 -0
- package/dist/rules/mechanics.js +64 -0
- package/dist/rules/mechanics.js.map +1 -0
- package/dist/session/index.d.ts +228 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +60 -0
- package/dist/session/index.js.map +1 -0
- package/dist/tools/contract.d.ts +63 -0
- package/dist/tools/contract.d.ts.map +1 -0
- package/dist/tools/contract.js +36 -0
- package/dist/tools/contract.js.map +1 -0
- package/package.json +47 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AA6PzD;;GAEG;AACH,MAAM,UAAU,4BAA4B;IAC1C,OAAO;QACL,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE;YAChB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,EAAE;YACd,SAAS,EAAE,EAAE;YACb,IAAI,EAAE,EAAE;YACR,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,EAAE;YACd,IAAI,EAAE,EAAE;SACT;QACD,UAAU,EAAE;YACV,SAAS,EAAE,EAAE;YACb,UAAU,EAAE,EAAE;YACd,IAAI,EAAE,EAAE;YACR,QAAQ,EAAE,EAAE;SACb;QACD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,IAAI;KAClB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAAU,EAAE,IAAY;IACzD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,OAAO;QACL,QAAQ,EAAE;YACR,EAAE;YACF,IAAI;YACJ,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;SACf;QACD,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;QACpC,GAAG,EAAE,CAAC;QACN,UAAU,EAAE,EAAE;QACd,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,EAAE;QACT,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,qBAAqB,EAAE;QACjC,SAAS,EAAE,EAAE;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Execution Contract
|
|
3
|
+
*
|
|
4
|
+
* All MCP tools follow a uniform pattern for consistent error handling
|
|
5
|
+
* and response formatting.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from "zod";
|
|
8
|
+
import type { GameEvent } from "../game/index.js";
|
|
9
|
+
/**
|
|
10
|
+
* Standard tool error
|
|
11
|
+
*/
|
|
12
|
+
export interface ToolError {
|
|
13
|
+
code: string;
|
|
14
|
+
message: string;
|
|
15
|
+
field?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Standard tool output envelope
|
|
19
|
+
*/
|
|
20
|
+
export interface ToolOutput<T = unknown> {
|
|
21
|
+
success: boolean;
|
|
22
|
+
result?: T;
|
|
23
|
+
events?: GameEvent[];
|
|
24
|
+
errors: ToolError[];
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* MCP tool entry for registry
|
|
28
|
+
*/
|
|
29
|
+
export interface MCPToolEntry {
|
|
30
|
+
name: string;
|
|
31
|
+
description: string;
|
|
32
|
+
inputSchema: Record<string, unknown>;
|
|
33
|
+
handler: (args: unknown) => Promise<unknown>;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Tool registry type
|
|
37
|
+
*/
|
|
38
|
+
export type MCPToolRegistry = Map<string, MCPToolEntry>;
|
|
39
|
+
/**
|
|
40
|
+
* Zod schema for tool errors
|
|
41
|
+
*/
|
|
42
|
+
export declare const ToolErrorSchema: z.ZodObject<{
|
|
43
|
+
code: z.ZodString;
|
|
44
|
+
message: z.ZodString;
|
|
45
|
+
field: z.ZodOptional<z.ZodString>;
|
|
46
|
+
}, "strip", z.ZodTypeAny, {
|
|
47
|
+
code: string;
|
|
48
|
+
message: string;
|
|
49
|
+
field?: string | undefined;
|
|
50
|
+
}, {
|
|
51
|
+
code: string;
|
|
52
|
+
message: string;
|
|
53
|
+
field?: string | undefined;
|
|
54
|
+
}>;
|
|
55
|
+
/**
|
|
56
|
+
* Create a success output
|
|
57
|
+
*/
|
|
58
|
+
export declare function successOutput<T>(result: T, events?: GameEvent[]): ToolOutput<T>;
|
|
59
|
+
/**
|
|
60
|
+
* Create an error output
|
|
61
|
+
*/
|
|
62
|
+
export declare function errorOutput(code: string, message: string, field?: string): ToolOutput<never>;
|
|
63
|
+
//# sourceMappingURL=contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/tools/contract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,OAAO;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;EAI1B,CAAC;AAEH;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAO/E;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAK5F"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Execution Contract
|
|
3
|
+
*
|
|
4
|
+
* All MCP tools follow a uniform pattern for consistent error handling
|
|
5
|
+
* and response formatting.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from "zod";
|
|
8
|
+
/**
|
|
9
|
+
* Zod schema for tool errors
|
|
10
|
+
*/
|
|
11
|
+
export const ToolErrorSchema = z.object({
|
|
12
|
+
code: z.string(),
|
|
13
|
+
message: z.string(),
|
|
14
|
+
field: z.string().optional(),
|
|
15
|
+
});
|
|
16
|
+
/**
|
|
17
|
+
* Create a success output
|
|
18
|
+
*/
|
|
19
|
+
export function successOutput(result, events) {
|
|
20
|
+
return {
|
|
21
|
+
success: true,
|
|
22
|
+
result,
|
|
23
|
+
events,
|
|
24
|
+
errors: [],
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Create an error output
|
|
29
|
+
*/
|
|
30
|
+
export function errorOutput(code, message, field) {
|
|
31
|
+
return {
|
|
32
|
+
success: false,
|
|
33
|
+
errors: [{ code, message, field }],
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=contract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/tools/contract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqCxB;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,aAAa,CAAI,MAAS,EAAE,MAAoB;IAC9D,OAAO;QACL,OAAO,EAAE,IAAI;QACb,MAAM;QACN,MAAM;QACN,MAAM,EAAE,EAAE;KACX,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,OAAe,EAAE,KAAc;IACvE,OAAO;QACL,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;KACnC,CAAC;AACJ,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@mythxengine/types",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Core type definitions for MythX RPG engine",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"exports": {
|
|
7
|
+
".": {
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"import": "./dist/index.js"
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
"files": [
|
|
13
|
+
"dist"
|
|
14
|
+
],
|
|
15
|
+
"keywords": [
|
|
16
|
+
"rpg",
|
|
17
|
+
"tabletop",
|
|
18
|
+
"mcp",
|
|
19
|
+
"types",
|
|
20
|
+
"typescript"
|
|
21
|
+
],
|
|
22
|
+
"author": "Proto Labs AI",
|
|
23
|
+
"license": "MIT",
|
|
24
|
+
"repository": {
|
|
25
|
+
"type": "git",
|
|
26
|
+
"url": "git+https://github.com/proto-labs-ai/rpg-claude-plugin.git",
|
|
27
|
+
"directory": "packages/types"
|
|
28
|
+
},
|
|
29
|
+
"bugs": {
|
|
30
|
+
"url": "https://github.com/proto-labs-ai/rpg-claude-plugin/issues"
|
|
31
|
+
},
|
|
32
|
+
"homepage": "https://github.com/proto-labs-ai/rpg-claude-plugin#readme",
|
|
33
|
+
"dependencies": {
|
|
34
|
+
"zod": "^3.24.0"
|
|
35
|
+
},
|
|
36
|
+
"devDependencies": {
|
|
37
|
+
"typescript": "^5.7.0",
|
|
38
|
+
"vitest": "^2.1.0"
|
|
39
|
+
},
|
|
40
|
+
"scripts": {
|
|
41
|
+
"build": "tsc",
|
|
42
|
+
"dev": "tsc --watch",
|
|
43
|
+
"test": "vitest run",
|
|
44
|
+
"test:watch": "vitest",
|
|
45
|
+
"clean": "rm -rf dist"
|
|
46
|
+
}
|
|
47
|
+
}
|