pmoskills 0.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.
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ /**
2
+ * A lightweight, zero-dependency prompt template injector.
3
+ * Merges variables into template strings supporting multiple placeholder formats:
4
+ * - {{variable}} and {{ variable }}
5
+ * - [FIELD: variable] and [FIELD:variable]
6
+ * - [variable]
7
+ */
8
+ export declare function inject(template: string, variables: Record<string, string | number | boolean>): string;
@@ -0,0 +1,77 @@
1
+ import { Skill, ProcessRecord, SystemPrompt, OntologySpec, ArtifactTemplate, ReferenceFile, SharedFile, TestFile } from '../types';
2
+ export declare class PMOSkillsLoader {
3
+ /**
4
+ * Retrieves a specific executable skill by its unique ID (e.g. 'SKL-01-01').
5
+ */
6
+ getSkill(id: string): Skill | undefined;
7
+ /**
8
+ * Returns all 48 executable skills.
9
+ */
10
+ getSkills(): Skill[];
11
+ /**
12
+ * Returns skills matching a specific performance domain.
13
+ */
14
+ getSkillsByDomain(domain: string): Skill[];
15
+ /**
16
+ * Retrieves a specific PMBOK 8 process record by its ID (e.g. 'PR01').
17
+ */
18
+ getProcess(id: string): ProcessRecord | undefined;
19
+ /**
20
+ * Returns all 41 process records.
21
+ */
22
+ getProcesses(): ProcessRecord[];
23
+ /**
24
+ * Retrieves an artifact deliverable template by its ID (e.g., 'A01').
25
+ */
26
+ getArtifact(id: string): ArtifactTemplate | undefined;
27
+ /**
28
+ * Returns all artifact deliverable templates.
29
+ */
30
+ getArtifacts(): ArtifactTemplate[];
31
+ /**
32
+ * Retrieves a specific reference file by its relative path.
33
+ */
34
+ getReferenceFile(path: string): ReferenceFile | undefined;
35
+ /**
36
+ * Returns all reference files.
37
+ */
38
+ getReferenceFiles(): ReferenceFile[];
39
+ /**
40
+ * Retrieves a specific shared configuration file by its path.
41
+ */
42
+ getSharedFile(path: string): SharedFile | undefined;
43
+ /**
44
+ * Returns all shared files.
45
+ */
46
+ getSharedFiles(): SharedFile[];
47
+ /**
48
+ * Retrieves a specific test file by ID (e.g. ST-SKL-01-01) or path.
49
+ */
50
+ getTestFile(id: string): TestFile | undefined;
51
+ /**
52
+ * Returns all test files.
53
+ */
54
+ getTestFiles(): TestFile[];
55
+ /**
56
+ * Retrieves an AI agent system prompt from the library by its ID.
57
+ */
58
+ getSystemPrompt(id: string): SystemPrompt | undefined;
59
+ /**
60
+ * Returns all system prompts.
61
+ */
62
+ getSystemPrompts(): SystemPrompt[];
63
+ /**
64
+ * Returns the PMBOK 8 project management ontology specification.
65
+ */
66
+ getOntology(): OntologySpec;
67
+ /**
68
+ * Returns the version of the PMOSkills framework.
69
+ */
70
+ getVersion(): string;
71
+ /**
72
+ * Returns the exact build compilation ISO timestamp.
73
+ */
74
+ getCompiledAt(): string;
75
+ }
76
+ export declare const pmoskills: PMOSkillsLoader;
77
+ export default pmoskills;
@@ -0,0 +1,4 @@
1
+ export { default } from './core/loader';
2
+ export { pmoskills, PMOSkillsLoader } from './core/loader';
3
+ export { inject } from './core/injector';
4
+ export * from './types';
@@ -0,0 +1,75 @@
1
+ export interface SkillMetadata {
2
+ id: string;
3
+ title: string;
4
+ domain: string;
5
+ phase: string;
6
+ lifecycle: string;
7
+ citations: string[];
8
+ [key: string]: any;
9
+ }
10
+ export interface Skill {
11
+ id: string;
12
+ title: string;
13
+ metadata: SkillMetadata;
14
+ template: string;
15
+ rawContent: string;
16
+ }
17
+ export interface ProcessRecord {
18
+ id: string;
19
+ title: string;
20
+ inputs: string[];
21
+ tools: string[];
22
+ outputs: string[];
23
+ citations: string[];
24
+ rawContent: string;
25
+ }
26
+ export interface SystemPrompt {
27
+ id: string;
28
+ title: string;
29
+ prompt: string;
30
+ }
31
+ export interface OntologySpec {
32
+ id: string;
33
+ title: string;
34
+ content: string;
35
+ }
36
+ export interface ArtifactTemplate {
37
+ id: string;
38
+ title: string;
39
+ category: string;
40
+ version: string;
41
+ status: string;
42
+ rawContent: string;
43
+ [key: string]: any;
44
+ }
45
+ export interface ReferenceFile {
46
+ path: string;
47
+ title: string;
48
+ category: string;
49
+ rawContent: string;
50
+ [key: string]: any;
51
+ }
52
+ export interface SharedFile {
53
+ path: string;
54
+ fileName: string;
55
+ rawContent: string;
56
+ }
57
+ export interface TestFile {
58
+ id: string;
59
+ path: string;
60
+ title: string;
61
+ rawContent: string;
62
+ [key: string]: any;
63
+ }
64
+ export interface PMOSkillsStore {
65
+ skills: Record<string, Skill>;
66
+ processes: Record<string, ProcessRecord>;
67
+ artifacts: Record<string, ArtifactTemplate>;
68
+ reference: Record<string, ReferenceFile>;
69
+ shared: Record<string, SharedFile>;
70
+ tests: Record<string, TestFile>;
71
+ systemPrompts: Record<string, SystemPrompt>;
72
+ ontology: OntologySpec;
73
+ version: string;
74
+ compiledAt: string;
75
+ }
package/package.json ADDED
@@ -0,0 +1,48 @@
1
+ {
2
+ "name": "pmoskills",
3
+ "version": "0.3.0",
4
+ "description": "An executable skill system & PMO reference architecture built on PMI PMBOK® 8th Edition",
5
+ "main": "./dist/index.js",
6
+ "module": "./dist/index.mjs",
7
+ "types": "./dist/src/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "require": "./dist/index.js",
11
+ "import": "./dist/index.mjs",
12
+ "types": "./dist/src/index.d.ts"
13
+ }
14
+ },
15
+ "files": [
16
+ "dist"
17
+ ],
18
+ "scripts": {
19
+ "compile-db": "ts-node scripts/compile-db.ts",
20
+ "prebuild": "npm run compile-db",
21
+ "build": "rollup -c",
22
+ "test": "vitest run"
23
+ },
24
+ "keywords": [
25
+ "pmi",
26
+ "pmbok",
27
+ "pmo",
28
+ "skills",
29
+ "llm",
30
+ "prompts",
31
+ "ai-agents",
32
+ "templates"
33
+ ],
34
+ "author": "Mohamed Fouad Fakhruldeen",
35
+ "license": "MIT",
36
+ "devDependencies": {
37
+ "@rollup/plugin-commonjs": "^25.0.7",
38
+ "@rollup/plugin-json": "^6.1.0",
39
+ "@rollup/plugin-node-resolve": "^15.2.3",
40
+ "@rollup/plugin-typescript": "^11.1.6",
41
+ "@types/node": "^20.11.24",
42
+ "rollup": "^4.12.0",
43
+ "ts-node": "^10.9.2",
44
+ "tslib": "^2.6.2",
45
+ "typescript": "^5.3.3",
46
+ "vitest": "^1.3.1"
47
+ }
48
+ }