burhan-mop 0.1.1 → 0.1.3
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/.MOP/PROTOCOL.md +4 -1
- package/.MOP/STATE.json +0 -0
- package/.MOP/config/defaults.json +0 -0
- package/.MOP/config/team.json +0 -0
- package/.MOP/scripts/burhan-mop.mjs +180 -47
- package/.MOP/scripts/mop-auto-deploy.mjs +0 -0
- package/.MOP/scripts/mop-autosycn.mjs +5 -8
- package/.MOP/scripts/mop-core.mjs +0 -0
- package/.MOP/scripts/mop-workflow.mjs +0 -0
- package/.MOP/templates/artifacts/adversarial-review.md +0 -0
- package/.MOP/templates/artifacts/architecture.md +0 -0
- package/.MOP/templates/artifacts/decision-log.md +0 -0
- package/.MOP/templates/artifacts/handoff.md +0 -0
- package/.MOP/templates/artifacts/implementation-notes.md +0 -0
- package/.MOP/templates/artifacts/prd.md +0 -0
- package/.MOP/templates/artifacts/product-brief.md +0 -0
- package/.MOP/templates/artifacts/readiness-report.md +0 -0
- package/.MOP/templates/artifacts/release-notes.md +0 -0
- package/.MOP/templates/artifacts/review.md +0 -0
- package/.MOP/templates/artifacts/story.md +0 -0
- package/.MOP/templates/artifacts/ux-spec.md +0 -0
- package/.agents/AGENTS.md +0 -0
- package/.agents/skills/auto-deploy/SKILL.md +0 -0
- package/.agents/skills/autosycn/SKILL.md +0 -0
- package/.agents/skills/mop-help/SKILL.md +0 -0
- package/.agents/skills/ruflo-core/SKILL.md +0 -0
- package/.claude/agents/analysis/analyze-code-quality.md +0 -0
- package/.claude/agents/analysis/code-analyzer.md +0 -0
- package/.claude/agents/analysis/code-review/analyze-code-quality.md +0 -0
- package/.claude/agents/architecture/arch-system-design.md +0 -0
- package/.claude/agents/architecture/system-design/arch-system-design.md +0 -0
- package/.claude/agents/browser/browser-agent.yaml +0 -0
- package/.claude/agents/consensus/byzantine-coordinator.md +0 -0
- package/.claude/agents/consensus/crdt-synchronizer.md +0 -0
- package/.claude/agents/consensus/gossip-coordinator.md +0 -0
- package/.claude/agents/consensus/performance-benchmarker.md +0 -0
- package/.claude/agents/consensus/quorum-manager.md +0 -0
- package/.claude/agents/consensus/raft-manager.md +0 -0
- package/.claude/agents/consensus/security-manager.md +0 -0
- package/.claude/agents/core/planner.md +0 -0
- package/.claude/agents/custom/test-long-runner.md +0 -0
- package/.claude/agents/data/data-ml-model.md +0 -0
- package/.claude/agents/data/ml/data-ml-model.md +0 -0
- package/.claude/agents/development/backend/dev-backend-api.md +0 -0
- package/.claude/agents/development/dev-backend-api.md +0 -0
- package/.claude/agents/devops/ci-cd/ops-cicd-github.md +0 -0
- package/.claude/agents/devops/ops-cicd-github.md +0 -0
- package/.claude/agents/documentation/api-docs/docs-api-openapi.md +0 -0
- package/.claude/agents/documentation/docs-api-openapi.md +0 -0
- package/.claude/agents/flow-nexus/app-store.md +0 -0
- package/.claude/agents/flow-nexus/authentication.md +0 -0
- package/.claude/agents/flow-nexus/challenges.md +0 -0
- package/.claude/agents/flow-nexus/neural-network.md +0 -0
- package/.claude/agents/flow-nexus/payments.md +0 -0
- package/.claude/agents/flow-nexus/sandbox.md +0 -0
- package/.claude/agents/flow-nexus/swarm.md +0 -0
- package/.claude/agents/flow-nexus/user-tools.md +0 -0
- package/.claude/agents/flow-nexus/workflow.md +0 -0
- package/.claude/agents/github/code-review-swarm.md +0 -0
- package/.claude/agents/github/github-modes.md +0 -0
- package/.claude/agents/github/issue-tracker.md +0 -0
- package/.claude/agents/github/multi-repo-swarm.md +0 -0
- package/.claude/agents/github/pr-manager.md +0 -0
- package/.claude/agents/github/project-board-sync.md +0 -0
- package/.claude/agents/github/release-manager.md +0 -0
- package/.claude/agents/github/release-swarm.md +0 -0
- package/.claude/agents/github/repo-architect.md +0 -0
- package/.claude/agents/github/swarm-issue.md +0 -0
- package/.claude/agents/github/swarm-pr.md +0 -0
- package/.claude/agents/github/sync-coordinator.md +0 -0
- package/.claude/agents/github/workflow-automation.md +0 -0
- package/.claude/agents/goal/agent.md +0 -0
- package/.claude/agents/optimization/benchmark-suite.md +0 -0
- package/.claude/agents/optimization/load-balancer.md +0 -0
- package/.claude/agents/optimization/performance-monitor.md +0 -0
- package/.claude/agents/optimization/resource-allocator.md +0 -0
- package/.claude/agents/optimization/topology-optimizer.md +0 -0
- package/.claude/agents/payments/agentic-payments.md +0 -0
- package/.claude/agents/sona/sona-learning-optimizer.md +0 -0
- package/.claude/agents/sparc/architecture.md +0 -0
- package/.claude/agents/sparc/pseudocode.md +0 -0
- package/.claude/agents/sparc/refinement.md +0 -0
- package/.claude/agents/sparc/specification.md +0 -0
- package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +0 -0
- package/.claude/agents/specialized/spec-mobile-react-native.md +0 -0
- package/.claude/agents/sublinear/consensus-coordinator.md +0 -0
- package/.claude/agents/sublinear/matrix-optimizer.md +0 -0
- package/.claude/agents/sublinear/pagerank-analyzer.md +0 -0
- package/.claude/agents/sublinear/performance-optimizer.md +0 -0
- package/.claude/agents/sublinear/trading-predictor.md +0 -0
- package/.claude/agents/swarm/adaptive-coordinator.md +0 -0
- package/.claude/agents/swarm/hierarchical-coordinator.md +0 -0
- package/.claude/agents/swarm/mesh-coordinator.md +0 -0
- package/.claude/agents/templates/automation-smart-agent.md +0 -0
- package/.claude/agents/templates/base-template-generator.md +0 -0
- package/.claude/agents/templates/coordinator-swarm-init.md +0 -0
- package/.claude/agents/templates/github-pr-manager.md +0 -0
- package/.claude/agents/templates/implementer-sparc-coder.md +0 -0
- package/.claude/agents/templates/memory-coordinator.md +0 -0
- package/.claude/agents/templates/orchestrator-task.md +0 -0
- package/.claude/agents/templates/performance-analyzer.md +0 -0
- package/.claude/agents/templates/sparc-coordinator.md +0 -0
- package/.claude/agents/testing/production-validator.md +0 -0
- package/.claude/agents/testing/tdd-london-swarm.md +0 -0
- package/.claude/agents/v3/aidefence-guardian.md +0 -0
- package/.claude/agents/v3/claims-authorizer.md +0 -0
- package/.claude/agents/v3/collective-intelligence-coordinator.md +0 -0
- package/.claude/agents/v3/ddd-domain-expert.md +0 -0
- package/.claude/agents/v3/injection-analyst.md +0 -0
- package/.claude/agents/v3/performance-engineer.md +0 -0
- package/.claude/agents/v3/pii-detector.md +0 -0
- package/.claude/agents/v3/reasoningbank-learner.md +0 -0
- package/.claude/agents/v3/security-architect-aidefence.md +0 -0
- package/.claude/agents/v3/security-architect.md +0 -0
- package/.claude/agents/v3/swarm-memory-manager.md +0 -0
- package/.claude/agents/v3/v3-integration-architect.md +0 -0
- package/.claude/commands/agents/README.md +0 -0
- package/.claude/commands/agents/agent-capabilities.md +0 -0
- package/.claude/commands/agents/agent-coordination.md +0 -0
- package/.claude/commands/agents/agent-spawning.md +0 -0
- package/.claude/commands/agents/agent-types.md +0 -0
- package/.claude/commands/agents/health.md +0 -0
- package/.claude/commands/agents/list.md +0 -0
- package/.claude/commands/agents/logs.md +0 -0
- package/.claude/commands/agents/metrics.md +0 -0
- package/.claude/commands/agents/pool.md +0 -0
- package/.claude/commands/agents/spawn.md +0 -0
- package/.claude/commands/agents/status.md +0 -0
- package/.claude/commands/agents/stop.md +0 -0
- package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +0 -0
- package/.claude/commands/analysis/README.md +0 -0
- package/.claude/commands/analysis/bottleneck-detect.md +0 -0
- package/.claude/commands/analysis/performance-bottlenecks.md +0 -0
- package/.claude/commands/analysis/performance-report.md +0 -0
- package/.claude/commands/analysis/token-efficiency.md +0 -0
- package/.claude/commands/analysis/token-usage.md +0 -0
- package/.claude/commands/automation/README.md +0 -0
- package/.claude/commands/automation/auto-agent.md +0 -0
- package/.claude/commands/automation/self-healing.md +0 -0
- package/.claude/commands/automation/session-memory.md +0 -0
- package/.claude/commands/automation/smart-agents.md +0 -0
- package/.claude/commands/automation/smart-spawn.md +0 -0
- package/.claude/commands/automation/workflow-select.md +0 -0
- package/.claude/commands/claude-flow-help.md +0 -0
- package/.claude/commands/claude-flow-memory.md +0 -0
- package/.claude/commands/claude-flow-swarm.md +0 -0
- package/.claude/commands/coordination/README.md +0 -0
- package/.claude/commands/coordination/agent-spawn.md +0 -0
- package/.claude/commands/coordination/init.md +0 -0
- package/.claude/commands/coordination/orchestrate.md +0 -0
- package/.claude/commands/coordination/spawn.md +0 -0
- package/.claude/commands/coordination/swarm-init.md +0 -0
- package/.claude/commands/coordination/task-orchestrate.md +0 -0
- package/.claude/commands/github/README.md +0 -0
- package/.claude/commands/github/code-review-swarm.md +0 -0
- package/.claude/commands/github/code-review.md +0 -0
- package/.claude/commands/github/github-modes.md +0 -0
- package/.claude/commands/github/github-swarm.md +0 -0
- package/.claude/commands/github/issue-tracker.md +0 -0
- package/.claude/commands/github/issue-triage.md +0 -0
- package/.claude/commands/github/multi-repo-swarm.md +0 -0
- package/.claude/commands/github/pr-enhance.md +0 -0
- package/.claude/commands/github/pr-manager.md +0 -0
- package/.claude/commands/github/project-board-sync.md +0 -0
- package/.claude/commands/github/release-manager.md +0 -0
- package/.claude/commands/github/release-swarm.md +0 -0
- package/.claude/commands/github/repo-analyze.md +0 -0
- package/.claude/commands/github/repo-architect.md +0 -0
- package/.claude/commands/github/swarm-issue.md +0 -0
- package/.claude/commands/github/swarm-pr.md +0 -0
- package/.claude/commands/github/sync-coordinator.md +0 -0
- package/.claude/commands/github/workflow-automation.md +0 -0
- package/.claude/commands/hive-mind/README.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-consensus.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-init.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-memory.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-metrics.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-resume.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-sessions.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-spawn.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-status.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-stop.md +0 -0
- package/.claude/commands/hive-mind/hive-mind-wizard.md +0 -0
- package/.claude/commands/hive-mind/hive-mind.md +0 -0
- package/.claude/commands/hooks/README.md +0 -0
- package/.claude/commands/hooks/overview.md +0 -0
- package/.claude/commands/hooks/post-edit.md +0 -0
- package/.claude/commands/hooks/post-task.md +0 -0
- package/.claude/commands/hooks/pre-edit.md +0 -0
- package/.claude/commands/hooks/pre-task.md +0 -0
- package/.claude/commands/hooks/session-end.md +0 -0
- package/.claude/commands/hooks/setup.md +0 -0
- package/.claude/commands/memory/README.md +0 -0
- package/.claude/commands/memory/memory-persist.md +0 -0
- package/.claude/commands/memory/memory-search.md +0 -0
- package/.claude/commands/memory/memory-usage.md +0 -0
- package/.claude/commands/memory/neural.md +0 -0
- package/.claude/commands/monitoring/README.md +0 -0
- package/.claude/commands/monitoring/agent-metrics.md +0 -0
- package/.claude/commands/monitoring/agents.md +0 -0
- package/.claude/commands/monitoring/real-time-view.md +0 -0
- package/.claude/commands/monitoring/status.md +0 -0
- package/.claude/commands/monitoring/swarm-monitor.md +0 -0
- package/.claude/commands/optimization/README.md +0 -0
- package/.claude/commands/optimization/auto-topology.md +0 -0
- package/.claude/commands/optimization/cache-manage.md +0 -0
- package/.claude/commands/optimization/parallel-execute.md +0 -0
- package/.claude/commands/optimization/parallel-execution.md +0 -0
- package/.claude/commands/optimization/topology-optimize.md +0 -0
- package/.claude/commands/pair/README.md +0 -0
- package/.claude/commands/pair/commands.md +0 -0
- package/.claude/commands/pair/config.md +0 -0
- package/.claude/commands/pair/examples.md +0 -0
- package/.claude/commands/pair/modes.md +0 -0
- package/.claude/commands/pair/session.md +0 -0
- package/.claude/commands/pair/start.md +0 -0
- package/.claude/commands/sparc/analyzer.md +0 -0
- package/.claude/commands/sparc/architect.md +0 -0
- package/.claude/commands/sparc/ask.md +0 -0
- package/.claude/commands/sparc/batch-executor.md +0 -0
- package/.claude/commands/sparc/code.md +0 -0
- package/.claude/commands/sparc/coder.md +0 -0
- package/.claude/commands/sparc/debug.md +0 -0
- package/.claude/commands/sparc/debugger.md +0 -0
- package/.claude/commands/sparc/designer.md +0 -0
- package/.claude/commands/sparc/devops.md +0 -0
- package/.claude/commands/sparc/docs-writer.md +0 -0
- package/.claude/commands/sparc/documenter.md +0 -0
- package/.claude/commands/sparc/innovator.md +0 -0
- package/.claude/commands/sparc/integration.md +0 -0
- package/.claude/commands/sparc/mcp.md +0 -0
- package/.claude/commands/sparc/memory-manager.md +0 -0
- package/.claude/commands/sparc/optimizer.md +0 -0
- package/.claude/commands/sparc/orchestrator.md +0 -0
- package/.claude/commands/sparc/post-deployment-monitoring-mode.md +0 -0
- package/.claude/commands/sparc/refinement-optimization-mode.md +0 -0
- package/.claude/commands/sparc/researcher.md +0 -0
- package/.claude/commands/sparc/reviewer.md +0 -0
- package/.claude/commands/sparc/security-review.md +0 -0
- package/.claude/commands/sparc/sparc-modes.md +0 -0
- package/.claude/commands/sparc/sparc.md +0 -0
- package/.claude/commands/sparc/spec-pseudocode.md +0 -0
- package/.claude/commands/sparc/supabase-admin.md +0 -0
- package/.claude/commands/sparc/swarm-coordinator.md +0 -0
- package/.claude/commands/sparc/tdd.md +0 -0
- package/.claude/commands/sparc/tester.md +0 -0
- package/.claude/commands/sparc/tutorial.md +0 -0
- package/.claude/commands/sparc/workflow-manager.md +0 -0
- package/.claude/commands/stream-chain/pipeline.md +0 -0
- package/.claude/commands/stream-chain/run.md +0 -0
- package/.claude/commands/swarm/README.md +0 -0
- package/.claude/commands/swarm/analysis.md +0 -0
- package/.claude/commands/swarm/development.md +0 -0
- package/.claude/commands/swarm/examples.md +0 -0
- package/.claude/commands/swarm/maintenance.md +0 -0
- package/.claude/commands/swarm/optimization.md +0 -0
- package/.claude/commands/swarm/research.md +0 -0
- package/.claude/commands/swarm/swarm-analysis.md +0 -0
- package/.claude/commands/swarm/swarm-background.md +0 -0
- package/.claude/commands/swarm/swarm-init.md +0 -0
- package/.claude/commands/swarm/swarm-modes.md +0 -0
- package/.claude/commands/swarm/swarm-monitor.md +0 -0
- package/.claude/commands/swarm/swarm-spawn.md +0 -0
- package/.claude/commands/swarm/swarm-status.md +0 -0
- package/.claude/commands/swarm/swarm-strategies.md +0 -0
- package/.claude/commands/swarm/swarm.md +0 -0
- package/.claude/commands/swarm/testing.md +0 -0
- package/.claude/commands/training/README.md +0 -0
- package/.claude/commands/training/model-update.md +0 -0
- package/.claude/commands/training/neural-patterns.md +0 -0
- package/.claude/commands/training/neural-train.md +0 -0
- package/.claude/commands/training/pattern-learn.md +0 -0
- package/.claude/commands/training/specialization.md +0 -0
- package/.claude/commands/truth/start.md +0 -0
- package/.claude/commands/verify/check.md +0 -0
- package/.claude/commands/verify/start.md +0 -0
- package/.claude/commands/workflows/README.md +0 -0
- package/.claude/commands/workflows/development.md +0 -0
- package/.claude/commands/workflows/research.md +0 -0
- package/.claude/commands/workflows/workflow-create.md +0 -0
- package/.claude/commands/workflows/workflow-execute.md +0 -0
- package/.claude/commands/workflows/workflow-export.md +0 -0
- package/.claude/helpers/README.md +0 -0
- package/.claude/helpers/adr-compliance.sh +0 -0
- package/.claude/helpers/auto-commit.sh +0 -0
- package/.claude/helpers/auto-memory-hook.mjs +0 -0
- package/.claude/helpers/checkpoint-manager.sh +0 -0
- package/.claude/helpers/daemon-manager.sh +0 -0
- package/.claude/helpers/ddd-tracker.sh +0 -0
- package/.claude/helpers/github-safe.js +0 -0
- package/.claude/helpers/github-setup.sh +0 -0
- package/.claude/helpers/guidance-hook.sh +0 -0
- package/.claude/helpers/guidance-hooks.sh +0 -0
- package/.claude/helpers/health-monitor.sh +0 -0
- package/.claude/helpers/hook-handler.cjs +0 -0
- package/.claude/helpers/intelligence.cjs +0 -0
- package/.claude/helpers/learning-hooks.sh +0 -0
- package/.claude/helpers/learning-optimizer.sh +0 -0
- package/.claude/helpers/learning-service.mjs +0 -0
- package/.claude/helpers/memory.js +0 -0
- package/.claude/helpers/metrics-db.mjs +0 -0
- package/.claude/helpers/pattern-consolidator.sh +0 -0
- package/.claude/helpers/perf-worker.sh +0 -0
- package/.claude/helpers/post-commit +0 -0
- package/.claude/helpers/pre-commit +0 -0
- package/.claude/helpers/quick-start.sh +0 -0
- package/.claude/helpers/router.js +0 -0
- package/.claude/helpers/ruflo-hook.cjs +0 -0
- package/.claude/helpers/security-scanner.sh +0 -0
- package/.claude/helpers/session.js +0 -0
- package/.claude/helpers/setup-mcp.sh +0 -0
- package/.claude/helpers/standard-checkpoint-hooks.sh +0 -0
- package/.claude/helpers/statusline-hook.sh +0 -0
- package/.claude/helpers/statusline.cjs +0 -0
- package/.claude/helpers/statusline.js +0 -0
- package/.claude/helpers/swarm-comms.sh +0 -0
- package/.claude/helpers/swarm-hooks.sh +0 -0
- package/.claude/helpers/swarm-monitor.sh +0 -0
- package/.claude/helpers/sync-v3-metrics.sh +0 -0
- package/.claude/helpers/update-v3-progress.sh +0 -0
- package/.claude/helpers/v3-quick-status.sh +0 -0
- package/.claude/helpers/v3.sh +0 -0
- package/.claude/helpers/validate-v3-config.sh +0 -0
- package/.claude/helpers/worker-manager.sh +0 -0
- package/.claude/settings.json +0 -0
- package/.claude/skills/agentdb-advanced/SKILL.md +0 -0
- package/.claude/skills/agentdb-learning/SKILL.md +0 -0
- package/.claude/skills/agentdb-memory-patterns/SKILL.md +0 -0
- package/.claude/skills/agentdb-optimization/SKILL.md +0 -0
- package/.claude/skills/agentdb-vector-search/SKILL.md +0 -0
- package/.claude/skills/auto-deploy/SKILL.md +0 -0
- package/.claude/skills/autosycn/SKILL.md +0 -0
- package/.claude/skills/browser/SKILL.md +0 -0
- package/.claude/skills/dual-mode/README.md +0 -0
- package/.claude/skills/dual-mode/dual-collect.md +0 -0
- package/.claude/skills/dual-mode/dual-coordinate.md +0 -0
- package/.claude/skills/dual-mode/dual-spawn.md +0 -0
- package/.claude/skills/flow-nexus-neural/SKILL.md +0 -0
- package/.claude/skills/flow-nexus-platform/SKILL.md +0 -0
- package/.claude/skills/flow-nexus-swarm/SKILL.md +0 -0
- package/.claude/skills/github-code-review/SKILL.md +0 -0
- package/.claude/skills/github-multi-repo/SKILL.md +0 -0
- package/.claude/skills/github-project-management/SKILL.md +0 -0
- package/.claude/skills/github-release-management/SKILL.md +0 -0
- package/.claude/skills/github-workflow-automation/SKILL.md +0 -0
- package/.claude/skills/hooks-automation/SKILL.md +0 -0
- package/.claude/skills/mop-help/SKILL.md +0 -0
- package/.claude/skills/pair-programming/SKILL.md +0 -0
- package/.claude/skills/reasoningbank-agentdb/SKILL.md +0 -0
- package/.claude/skills/reasoningbank-intelligence/SKILL.md +0 -0
- package/.claude/skills/skill-builder/SKILL.md +0 -0
- package/.claude/skills/sparc-methodology/SKILL.md +0 -0
- package/.claude/skills/stream-chain/SKILL.md +0 -0
- package/.claude/skills/swarm-advanced/SKILL.md +0 -0
- package/.claude/skills/swarm-orchestration/SKILL.md +0 -0
- package/.claude/skills/v3-cli-modernization/SKILL.md +0 -0
- package/.claude/skills/v3-core-implementation/SKILL.md +0 -0
- package/.claude/skills/v3-ddd-architecture/SKILL.md +0 -0
- package/.claude/skills/v3-integration-deep/SKILL.md +0 -0
- package/.claude/skills/v3-mcp-optimization/SKILL.md +0 -0
- package/.claude/skills/v3-memory-unification/SKILL.md +0 -0
- package/.claude/skills/v3-performance-optimization/SKILL.md +0 -0
- package/.claude/skills/v3-security-overhaul/SKILL.md +0 -0
- package/.claude/skills/v3-swarm-coordination/SKILL.md +0 -0
- package/.claude/skills/verification-quality/SKILL.md +0 -0
- package/.claude-flow/CAPABILITIES.md +0 -0
- package/.claude-flow/config.yaml +0 -0
- package/.claude-flow/metrics/learning.json +0 -0
- package/.claude-flow/metrics/swarm-activity.json +0 -0
- package/.claude-flow/metrics/v3-progress.json +0 -0
- package/.claude-flow/security/audit-status.json +0 -0
- package/.codex/config.toml +0 -0
- package/.gemini/settings.json +0 -0
- package/.mcp.json +0 -0
- package/AGENTS.md +5 -4
- package/CLAUDE.md +0 -0
- package/GEMINI.md +0 -0
- package/README.bm.md +152 -0
- package/README.md +65 -1057
- package/bin/burhan-mop.mjs +0 -0
- package/bin/mop-core.mjs +0 -0
- package/bin/mop-workflow.mjs +0 -0
- package/package.json +2 -1
package/.MOP/PROTOCOL.md
CHANGED
|
@@ -287,9 +287,12 @@ apply.
|
|
|
287
287
|
The package installer command is:
|
|
288
288
|
|
|
289
289
|
```bash
|
|
290
|
-
npx burhan-mop install
|
|
290
|
+
npx burhan-mop install [--target <project-folder>] [--force] [--json]
|
|
291
291
|
```
|
|
292
292
|
|
|
293
|
+
The default output is a clean terminal UI. Use `--json` for CI, scripts, and
|
|
294
|
+
other automation that needs machine-readable output.
|
|
295
|
+
|
|
293
296
|
The short package command works after the package is published to npm. Before
|
|
294
297
|
an npm publish, install directly from GitHub:
|
|
295
298
|
|
package/.MOP/STATE.json
CHANGED
|
File without changes
|
|
File without changes
|
package/.MOP/config/team.json
CHANGED
|
File without changes
|
|
@@ -5,6 +5,39 @@ import { fileURLToPath } from 'node:url';
|
|
|
5
5
|
|
|
6
6
|
const here = dirname(fileURLToPath(import.meta.url));
|
|
7
7
|
const packageRoot = resolve(here, '..', '..');
|
|
8
|
+
const colorEnabled = process.stdout.isTTY && !process.env.NO_COLOR;
|
|
9
|
+
const colors = {
|
|
10
|
+
reset: '\x1b[0m',
|
|
11
|
+
bold: '\x1b[1m',
|
|
12
|
+
dim: '\x1b[2m',
|
|
13
|
+
green: '\x1b[32m',
|
|
14
|
+
yellow: '\x1b[33m',
|
|
15
|
+
red: '\x1b[31m',
|
|
16
|
+
cyan: '\x1b[36m',
|
|
17
|
+
gray: '\x1b[90m'
|
|
18
|
+
};
|
|
19
|
+
const installEntries = [
|
|
20
|
+
'AGENTS.md',
|
|
21
|
+
'CLAUDE.md',
|
|
22
|
+
'GEMINI.md',
|
|
23
|
+
'.MOP',
|
|
24
|
+
'.agents',
|
|
25
|
+
'.claude',
|
|
26
|
+
'.claude-flow',
|
|
27
|
+
'.codex',
|
|
28
|
+
'.gemini',
|
|
29
|
+
'.mcp.json'
|
|
30
|
+
];
|
|
31
|
+
const doctorEntries = [
|
|
32
|
+
'AGENTS.md',
|
|
33
|
+
'CLAUDE.md',
|
|
34
|
+
'GEMINI.md',
|
|
35
|
+
'.MOP/STATE.json',
|
|
36
|
+
'.MOP/PROTOCOL.md',
|
|
37
|
+
'.MOP/scripts/mop-core.mjs',
|
|
38
|
+
'.MOP/scripts/mop-workflow.mjs',
|
|
39
|
+
'.agents/skills/mop-help/SKILL.md'
|
|
40
|
+
];
|
|
8
41
|
|
|
9
42
|
function parseArgs(argv) {
|
|
10
43
|
const out = { _: [] };
|
|
@@ -14,7 +47,11 @@ function parseArgs(argv) {
|
|
|
14
47
|
out._.push(item);
|
|
15
48
|
continue;
|
|
16
49
|
}
|
|
17
|
-
const key = item.slice(2);
|
|
50
|
+
const [key, inlineValue] = item.slice(2).split('=', 2);
|
|
51
|
+
if (inlineValue !== undefined) {
|
|
52
|
+
out[key] = inlineValue;
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
18
55
|
const next = argv[i + 1];
|
|
19
56
|
if (!next || next.startsWith('--')) {
|
|
20
57
|
out[key] = true;
|
|
@@ -26,82 +63,178 @@ function parseArgs(argv) {
|
|
|
26
63
|
return out;
|
|
27
64
|
}
|
|
28
65
|
|
|
29
|
-
function
|
|
30
|
-
if (!
|
|
31
|
-
|
|
66
|
+
function paint(name, value) {
|
|
67
|
+
if (!colorEnabled) return value;
|
|
68
|
+
return `${colors[name]}${value}${colors.reset}`;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
function rule() {
|
|
72
|
+
console.log(paint('gray', '-'.repeat(66)));
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
function header(title, subtitle) {
|
|
76
|
+
console.log('');
|
|
77
|
+
rule();
|
|
78
|
+
console.log(paint('bold', title));
|
|
79
|
+
console.log(paint('cyan', subtitle));
|
|
80
|
+
rule();
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
function asJson(args) {
|
|
84
|
+
return args.json === true || args.format === 'json';
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
function statusBadge(status) {
|
|
88
|
+
if (status === 'installed') return paint('green', '[OK]');
|
|
89
|
+
if (status === 'skipped-existing') return paint('yellow', '[SKIP]');
|
|
90
|
+
if (status === 'missing-source') return paint('red', '[MISS]');
|
|
91
|
+
return paint('gray', '[INFO]');
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
function statusLabel(status) {
|
|
95
|
+
if (status === 'installed') return 'installed';
|
|
96
|
+
if (status === 'skipped-existing') return 'already exists';
|
|
97
|
+
if (status === 'missing-source') return 'template missing';
|
|
98
|
+
return status;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
function summarize(results) {
|
|
102
|
+
return results.reduce((summary, item) => {
|
|
103
|
+
if (item.status === 'installed') summary.installed += 1;
|
|
104
|
+
else if (item.status === 'skipped-existing') summary.skipped += 1;
|
|
105
|
+
else if (item.status === 'missing-source') summary.missing += 1;
|
|
106
|
+
else summary.other += 1;
|
|
107
|
+
return summary;
|
|
108
|
+
}, { installed: 0, skipped: 0, missing: 0, other: 0 });
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
function copyPath(entry, source, target, force = false) {
|
|
112
|
+
if (!existsSync(source)) return { entry, source, target, status: 'missing-source' };
|
|
113
|
+
if (existsSync(target) && !force) return { entry, source, target, status: 'skipped-existing' };
|
|
32
114
|
mkdirSync(dirname(target), { recursive: true });
|
|
33
115
|
cpSync(source, target, { recursive: true, force: true });
|
|
34
|
-
return { source, target, status: 'installed' };
|
|
116
|
+
return { entry, source, target, status: 'installed' };
|
|
35
117
|
}
|
|
36
118
|
|
|
37
|
-
function
|
|
119
|
+
function buildInstallReport(args) {
|
|
38
120
|
const targetRoot = resolve(String(args.target || process.cwd()));
|
|
39
121
|
const force = args.force === true;
|
|
40
|
-
const
|
|
41
|
-
|
|
42
|
-
'CLAUDE.md',
|
|
43
|
-
'GEMINI.md',
|
|
44
|
-
'.MOP',
|
|
45
|
-
'.agents',
|
|
46
|
-
'.claude',
|
|
47
|
-
'.claude-flow',
|
|
48
|
-
'.codex',
|
|
49
|
-
'.gemini',
|
|
50
|
-
'.mcp.json'
|
|
51
|
-
];
|
|
52
|
-
const results = entries.map((entry) => copyPath(
|
|
122
|
+
const results = installEntries.map((entry) => copyPath(
|
|
123
|
+
entry,
|
|
53
124
|
join(packageRoot, entry),
|
|
54
125
|
join(targetRoot, entry),
|
|
55
126
|
force
|
|
56
127
|
));
|
|
57
|
-
|
|
58
|
-
|
|
128
|
+
const summary = summarize(results);
|
|
129
|
+
return {
|
|
130
|
+
ok: summary.missing === 0,
|
|
59
131
|
command: 'npx burhan-mop install',
|
|
60
132
|
target: targetRoot,
|
|
61
133
|
force,
|
|
62
134
|
results,
|
|
135
|
+
summary,
|
|
63
136
|
next: [
|
|
64
137
|
'Run /mop-setup in the target project.',
|
|
65
138
|
'For team mode, initialize autosycn after setup.',
|
|
66
139
|
'Use: node .MOP/scripts/mop-workflow.mjs help --actor <codename> --task "lepas ni buat apa?"'
|
|
67
140
|
]
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
function
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
function renderInstall(report) {
|
|
145
|
+
header('BURHAN-MOP installer', 'Portable AI MemoryCore for Claude, Codex / ChatGPT, Gemini, and Antigravity');
|
|
146
|
+
console.log(`${paint('bold', 'Target')} : ${report.target}`);
|
|
147
|
+
console.log(`${paint('bold', 'Mode')} : ${report.force ? 'force overwrite' : 'safe install'}`);
|
|
148
|
+
rule();
|
|
149
|
+
for (const item of report.results) {
|
|
150
|
+
console.log(`${statusBadge(item.status)} ${item.entry.padEnd(28)} ${statusLabel(item.status)}`);
|
|
151
|
+
}
|
|
152
|
+
rule();
|
|
153
|
+
console.log(`${paint('bold', 'Summary')}: ${report.summary.installed} installed, ${report.summary.skipped} skipped, ${report.summary.missing} missing`);
|
|
154
|
+
if (report.summary.skipped > 0) {
|
|
155
|
+
console.log(paint('yellow', 'Tip: existing files were kept. Use --force only when you want to overwrite them.'));
|
|
156
|
+
}
|
|
157
|
+
if (report.summary.missing > 0) {
|
|
158
|
+
console.log(paint('red', 'Some package templates are missing. Reinstall or report this package build.'));
|
|
159
|
+
}
|
|
160
|
+
console.log('');
|
|
161
|
+
console.log(paint('bold', 'Next'));
|
|
162
|
+
report.next.forEach((item, index) => {
|
|
163
|
+
console.log(` ${index + 1}. ${item}`);
|
|
164
|
+
});
|
|
165
|
+
console.log('');
|
|
166
|
+
console.log(paint('dim', 'Automation JSON: npx burhan-mop install --json'));
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
function install(args) {
|
|
170
|
+
const report = buildInstallReport(args);
|
|
171
|
+
if (asJson(args)) {
|
|
172
|
+
console.log(JSON.stringify(report, null, 2));
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
renderInstall(report);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
function buildDoctorReport() {
|
|
179
|
+
const results = doctorEntries.map((entry) => {
|
|
83
180
|
const path = join(process.cwd(), entry);
|
|
181
|
+
const exists = existsSync(path);
|
|
84
182
|
return {
|
|
85
183
|
entry,
|
|
86
|
-
exists
|
|
87
|
-
type:
|
|
184
|
+
exists,
|
|
185
|
+
type: exists ? (statSync(path).isDirectory() ? 'dir' : 'file') : 'missing'
|
|
88
186
|
};
|
|
89
187
|
});
|
|
90
|
-
|
|
188
|
+
return {
|
|
91
189
|
ok: results.every((item) => item.exists),
|
|
92
190
|
cwd: process.cwd(),
|
|
93
191
|
results
|
|
94
|
-
}
|
|
192
|
+
};
|
|
95
193
|
}
|
|
96
194
|
|
|
97
|
-
function
|
|
98
|
-
|
|
195
|
+
function renderDoctor(report) {
|
|
196
|
+
header('BURHAN-MOP doctor', 'Workspace health check');
|
|
197
|
+
console.log(`${paint('bold', 'Project')}: ${report.cwd}`);
|
|
198
|
+
rule();
|
|
199
|
+
for (const item of report.results) {
|
|
200
|
+
const badge = item.exists ? paint('green', '[OK]') : paint('red', '[MISS]');
|
|
201
|
+
console.log(`${badge} ${item.entry.padEnd(38)} ${item.type}`);
|
|
202
|
+
}
|
|
203
|
+
rule();
|
|
204
|
+
console.log(`${paint('bold', 'Status')}: ${report.ok ? paint('green', 'ready') : paint('red', 'missing files')}`);
|
|
205
|
+
console.log('');
|
|
206
|
+
console.log(paint('dim', 'Automation JSON: npx burhan-mop doctor --json'));
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
function doctor(args) {
|
|
210
|
+
const report = buildDoctorReport();
|
|
211
|
+
if (asJson(args)) {
|
|
212
|
+
console.log(JSON.stringify(report, null, 2));
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
renderDoctor(report);
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
function listPackage(args) {
|
|
219
|
+
const report = {
|
|
99
220
|
packageRoot,
|
|
100
221
|
entries: readdirSync(packageRoot, { withFileTypes: true }).map((item) => ({
|
|
101
222
|
name: item.name,
|
|
102
223
|
type: item.isDirectory() ? 'dir' : 'file'
|
|
103
224
|
}))
|
|
104
|
-
}
|
|
225
|
+
};
|
|
226
|
+
if (asJson(args)) {
|
|
227
|
+
console.log(JSON.stringify(report, null, 2));
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
header('BURHAN-MOP package', 'Published package contents');
|
|
231
|
+
console.log(`${paint('bold', 'Root')}: ${report.packageRoot}`);
|
|
232
|
+
rule();
|
|
233
|
+
for (const item of report.entries) {
|
|
234
|
+
console.log(`${item.type.padEnd(4)} ${item.name}`);
|
|
235
|
+
}
|
|
236
|
+
console.log('');
|
|
237
|
+
console.log(paint('dim', 'Automation JSON: npx burhan-mop package --json'));
|
|
105
238
|
}
|
|
106
239
|
|
|
107
240
|
function main() {
|
|
@@ -109,11 +242,11 @@ function main() {
|
|
|
109
242
|
const args = parseArgs(rest);
|
|
110
243
|
if (command === 'install') return install(args);
|
|
111
244
|
if (command === 'doctor') return doctor(args);
|
|
112
|
-
if (command === 'package') return listPackage();
|
|
245
|
+
if (command === 'package') return listPackage(args);
|
|
113
246
|
console.log(`Usage:
|
|
114
|
-
npx burhan-mop install [--target PATH] [--force]
|
|
115
|
-
npx burhan-mop doctor
|
|
116
|
-
npx burhan-mop package`);
|
|
247
|
+
npx burhan-mop install [--target PATH] [--force] [--json]
|
|
248
|
+
npx burhan-mop doctor [--json]
|
|
249
|
+
npx burhan-mop package [--json]`);
|
|
117
250
|
}
|
|
118
251
|
|
|
119
252
|
try {
|
|
File without changes
|
|
@@ -161,14 +161,11 @@ function identityEnv(identity) {
|
|
|
161
161
|
function mergeIdentityFor(state, actorIdentity) {
|
|
162
162
|
const guardian = guardianConfig(state);
|
|
163
163
|
const guardianIdentity = guardian.gitIdentity || {};
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
return actorIdentity;
|
|
164
|
+
return {
|
|
165
|
+
name: guardianIdentity.name || guardian.name || 'BURHAN-MOP',
|
|
166
|
+
email: guardianIdentity.email || 'burhan-mop@users.noreply.github.com',
|
|
167
|
+
githubUsername: guardianIdentity.githubUsername || 'BURHAN-MOP'
|
|
168
|
+
};
|
|
172
169
|
}
|
|
173
170
|
|
|
174
171
|
function ensureGitRepo() {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/.agents/AGENTS.md
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|