burhan-mop 0.1.0 → 0.1.2

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.
Files changed (40) hide show
  1. package/{.memoryofplanet → .MOP}/PROTOCOL.md +40 -37
  2. package/{.memoryofplanet → .MOP}/STATE.json +11 -11
  3. package/{.memoryofplanet → .MOP}/config/defaults.json +2 -2
  4. package/.MOP/scripts/burhan-mop.mjs +257 -0
  5. package/{.memoryofplanet → .MOP}/scripts/mop-auto-deploy.mjs +5 -6
  6. package/{.memoryofplanet → .MOP}/scripts/mop-autosycn.mjs +24 -24
  7. package/{.memoryofplanet → .MOP}/scripts/mop-core.mjs +24 -24
  8. package/{.memoryofplanet → .MOP}/scripts/mop-workflow.mjs +17 -17
  9. package/.agents/AGENTS.md +7 -6
  10. package/.agents/skills/auto-deploy/SKILL.md +2 -2
  11. package/.agents/skills/autosycn/SKILL.md +10 -10
  12. package/.agents/skills/mop-help/SKILL.md +4 -4
  13. package/.agents/skills/ruflo-core/SKILL.md +2 -3
  14. package/.claude/skills/auto-deploy/SKILL.md +2 -2
  15. package/.claude/skills/autosycn/SKILL.md +7 -7
  16. package/.claude/skills/mop-help/SKILL.md +4 -4
  17. package/.codex/config.toml +1 -1
  18. package/AGENTS.md +10 -9
  19. package/CLAUDE.md +10 -9
  20. package/GEMINI.md +3 -3
  21. package/README.bm.md +152 -0
  22. package/README.md +68 -1013
  23. package/bin/burhan-mop.mjs +1 -1
  24. package/bin/mop-core.mjs +1 -1
  25. package/bin/mop-workflow.mjs +1 -1
  26. package/package.json +8 -7
  27. package/.memoryofplanet/scripts/burhan-mop.mjs +0 -124
  28. /package/{.memoryofplanet → .MOP}/config/team.json +0 -0
  29. /package/{.memoryofplanet → .MOP}/templates/artifacts/adversarial-review.md +0 -0
  30. /package/{.memoryofplanet → .MOP}/templates/artifacts/architecture.md +0 -0
  31. /package/{.memoryofplanet → .MOP}/templates/artifacts/decision-log.md +0 -0
  32. /package/{.memoryofplanet → .MOP}/templates/artifacts/handoff.md +0 -0
  33. /package/{.memoryofplanet → .MOP}/templates/artifacts/implementation-notes.md +0 -0
  34. /package/{.memoryofplanet → .MOP}/templates/artifacts/prd.md +0 -0
  35. /package/{.memoryofplanet → .MOP}/templates/artifacts/product-brief.md +0 -0
  36. /package/{.memoryofplanet → .MOP}/templates/artifacts/readiness-report.md +0 -0
  37. /package/{.memoryofplanet → .MOP}/templates/artifacts/release-notes.md +0 -0
  38. /package/{.memoryofplanet → .MOP}/templates/artifacts/review.md +0 -0
  39. /package/{.memoryofplanet → .MOP}/templates/artifacts/story.md +0 -0
  40. /package/{.memoryofplanet → .MOP}/templates/artifacts/ux-spec.md +0 -0
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- import '../.memoryofplanet/scripts/burhan-mop.mjs';
2
+ import '../.MOP/scripts/burhan-mop.mjs';
package/bin/mop-core.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- import '../.memoryofplanet/scripts/mop-core.mjs';
2
+ import '../.MOP/scripts/mop-core.mjs';
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- import '../.memoryofplanet/scripts/mop-workflow.mjs';
2
+ import '../.MOP/scripts/mop-workflow.mjs';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "burhan-mop",
3
- "version": "0.1.0",
4
- "description": "MemoryOfPlanet portable agent memory core installer and CLI.",
3
+ "version": "0.1.2",
4
+ "description": "MOP portable agent memory core installer and CLI.",
5
5
  "type": "module",
6
6
  "author": "BURHANDEV ENTERPRISE",
7
7
  "homepage": "https://github.com/BURHANDEV-ENTERPRISE/BURHAN-MOP#readme",
@@ -35,10 +35,10 @@
35
35
  "mop-workflow": "bin/mop-workflow.mjs"
36
36
  },
37
37
  "scripts": {
38
- "validate": "node .memoryofplanet/scripts/mop-core.mjs validate",
39
- "status": "node .memoryofplanet/scripts/mop-core.mjs status",
40
- "workflow": "node .memoryofplanet/scripts/mop-workflow.mjs status",
41
- "doctor": "node .memoryofplanet/scripts/burhan-mop.mjs doctor",
38
+ "validate": "node .MOP/scripts/mop-core.mjs validate",
39
+ "status": "node .MOP/scripts/mop-core.mjs status",
40
+ "workflow": "node .MOP/scripts/mop-workflow.mjs status",
41
+ "doctor": "node .MOP/scripts/burhan-mop.mjs doctor",
42
42
  "pack:dry": "npm pack --dry-run",
43
43
  "publish:dry": "npm publish --dry-run",
44
44
  "publish:public": "npm publish",
@@ -47,10 +47,11 @@
47
47
  },
48
48
  "files": [
49
49
  "bin",
50
+ "README.bm.md",
50
51
  "AGENTS.md",
51
52
  "CLAUDE.md",
52
53
  "GEMINI.md",
53
- ".memoryofplanet",
54
+ ".MOP",
54
55
  ".agents",
55
56
  ".claude",
56
57
  ".claude-flow",
@@ -1,124 +0,0 @@
1
- #!/usr/bin/env node
2
- import { cpSync, existsSync, mkdirSync, readdirSync, statSync } from 'node:fs';
3
- import { dirname, join, resolve } from 'node:path';
4
- import { fileURLToPath } from 'node:url';
5
-
6
- const here = dirname(fileURLToPath(import.meta.url));
7
- const packageRoot = resolve(here, '..', '..');
8
-
9
- function parseArgs(argv) {
10
- const out = { _: [] };
11
- for (let i = 0; i < argv.length; i += 1) {
12
- const item = argv[i];
13
- if (!item.startsWith('--')) {
14
- out._.push(item);
15
- continue;
16
- }
17
- const key = item.slice(2);
18
- const next = argv[i + 1];
19
- if (!next || next.startsWith('--')) {
20
- out[key] = true;
21
- } else {
22
- out[key] = next;
23
- i += 1;
24
- }
25
- }
26
- return out;
27
- }
28
-
29
- function copyPath(source, target, force = false) {
30
- if (!existsSync(source)) return { source, target, status: 'missing-source' };
31
- if (existsSync(target) && !force) return { source, target, status: 'skipped-existing' };
32
- mkdirSync(dirname(target), { recursive: true });
33
- cpSync(source, target, { recursive: true, force: true });
34
- return { source, target, status: 'installed' };
35
- }
36
-
37
- function install(args) {
38
- const targetRoot = resolve(String(args.target || process.cwd()));
39
- const force = args.force === true;
40
- const entries = [
41
- 'AGENTS.md',
42
- 'CLAUDE.md',
43
- 'GEMINI.md',
44
- '.memoryofplanet',
45
- '.agents',
46
- '.claude',
47
- '.claude-flow',
48
- '.codex',
49
- '.gemini',
50
- '.mcp.json'
51
- ];
52
- const results = entries.map((entry) => copyPath(
53
- join(packageRoot, entry),
54
- join(targetRoot, entry),
55
- force
56
- ));
57
- console.log(JSON.stringify({
58
- ok: true,
59
- command: 'npx burhan-mop install',
60
- target: targetRoot,
61
- force,
62
- results,
63
- next: [
64
- 'Run /mop-setup in the target project.',
65
- 'For team mode, initialize autosycn after setup.',
66
- 'Use: node .memoryofplanet/scripts/mop-workflow.mjs help --actor <codename> --task "lepas ni buat apa?"'
67
- ]
68
- }, null, 2));
69
- }
70
-
71
- function doctor() {
72
- const required = [
73
- 'AGENTS.md',
74
- 'CLAUDE.md',
75
- 'GEMINI.md',
76
- '.memoryofplanet/STATE.json',
77
- '.memoryofplanet/PROTOCOL.md',
78
- '.memoryofplanet/scripts/mop-core.mjs',
79
- '.memoryofplanet/scripts/mop-workflow.mjs',
80
- '.agents/skills/mop-help/SKILL.md'
81
- ];
82
- const results = required.map((entry) => {
83
- const path = join(process.cwd(), entry);
84
- return {
85
- entry,
86
- exists: existsSync(path),
87
- type: existsSync(path) ? (statSync(path).isDirectory() ? 'dir' : 'file') : 'missing'
88
- };
89
- });
90
- console.log(JSON.stringify({
91
- ok: results.every((item) => item.exists),
92
- cwd: process.cwd(),
93
- results
94
- }, null, 2));
95
- }
96
-
97
- function listPackage() {
98
- console.log(JSON.stringify({
99
- packageRoot,
100
- entries: readdirSync(packageRoot, { withFileTypes: true }).map((item) => ({
101
- name: item.name,
102
- type: item.isDirectory() ? 'dir' : 'file'
103
- }))
104
- }, null, 2));
105
- }
106
-
107
- function main() {
108
- const [command, ...rest] = process.argv.slice(2);
109
- const args = parseArgs(rest);
110
- if (command === 'install') return install(args);
111
- if (command === 'doctor') return doctor(args);
112
- if (command === 'package') return listPackage();
113
- console.log(`Usage:
114
- npx burhan-mop install [--target PATH] [--force]
115
- npx burhan-mop doctor
116
- npx burhan-mop package`);
117
- }
118
-
119
- try {
120
- main();
121
- } catch (error) {
122
- console.error(error.message);
123
- process.exitCode = 1;
124
- }
File without changes