@hasna/skills 0.1.62 → 0.1.64
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 +38 -12
- package/bin/index.js +15743 -21709
- package/bin/mcp.js +3866 -11522
- package/bin/migrate.js +281 -35
- package/bin/server.js +5805 -2682
- package/bin/worker.js +5280 -2388
- package/dist/cli/commands/publish.d.ts +2 -0
- package/dist/cli/commands/registry-reconcile.d.ts +2 -0
- package/dist/cli/components/App.d.ts +2 -1
- package/dist/cli/components/CategorySelect.d.ts +2 -1
- package/dist/cli/components/Header.d.ts +2 -1
- package/dist/cli/components/InstallProgress.d.ts +2 -1
- package/dist/cli/components/SearchView.d.ts +2 -1
- package/dist/cli/components/SkillSelect.d.ts +2 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.js +5386 -13739
- package/dist/lib/agent-sync.d.ts +61 -6
- package/dist/lib/auth-store.d.ts +37 -0
- package/dist/lib/config.d.ts +51 -0
- package/dist/lib/home-adoption.d.ts +91 -0
- package/dist/lib/home-census.d.ts +26 -0
- package/dist/lib/home-migration.d.ts +60 -0
- package/dist/lib/native-storage.d.ts +1 -1
- package/dist/lib/portable-skills-files.d.ts +21 -1
- package/dist/lib/portable-skills-types.d.ts +46 -0
- package/dist/lib/portable-skills.d.ts +35 -6
- package/dist/lib/pull.d.ts +97 -0
- package/dist/lib/registry-reconcile.d.ts +114 -0
- package/dist/lib/registry.d.ts +7 -4
- package/dist/lib/remote-client.d.ts +124 -1
- package/dist/lib/remote-registry.d.ts +26 -0
- package/dist/lib/revision.d.ts +29 -0
- package/dist/lib/run-state.d.ts +5 -0
- package/dist/lib/skill-bundles.d.ts +54 -0
- package/dist/lib/skill-contract.d.ts +35 -0
- package/dist/lib/skill-hash.d.ts +77 -0
- package/dist/sdk/cancel.d.ts +30 -0
- package/dist/sdk/dispatcher.d.ts +40 -0
- package/dist/sdk/event-sink.d.ts +2 -0
- package/dist/sdk/events.d.ts +79 -0
- package/dist/sdk/execution/admission.d.ts +44 -0
- package/dist/sdk/execution/dispatchers/e2b.d.ts +17 -0
- package/dist/sdk/execution/dispatchers/ecs.d.ts +151 -0
- package/dist/sdk/execution/image-profile.d.ts +73 -0
- package/dist/sdk/execution/index.d.ts +15 -0
- package/dist/sdk/execution/receipts.d.ts +44 -0
- package/dist/sdk/execution/state-machine.d.ts +38 -0
- package/dist/sdk/execution/storage.d.ts +158 -0
- package/dist/sdk/execution/types.d.ts +130 -0
- package/dist/sdk/executor.d.ts +17 -0
- package/dist/sdk/governance-store.d.ts +156 -0
- package/dist/sdk/governance.d.ts +92 -0
- package/dist/sdk/index.d.ts +26 -0
- package/dist/sdk/index.js +49728 -0
- package/dist/sdk/offline.d.ts +16 -0
- package/dist/sdk/outputs.d.ts +71 -0
- package/dist/sdk/registry.d.ts +28 -0
- package/dist/sdk/runs.d.ts +229 -0
- package/dist/sdk/server.d.ts +35 -0
- package/dist/sdk/spend.d.ts +36 -0
- package/dist/sdk/storage.d.ts +25 -0
- package/dist/server/app.d.ts +42 -0
- package/dist/server/artifact-storage.d.ts +102 -0
- package/dist/server/auth.d.ts +5 -0
- package/dist/server/config.d.ts +50 -0
- package/dist/server/database-url.d.ts +42 -0
- package/dist/server/handlers.d.ts +3 -0
- package/dist/server/index.d.ts +2 -0
- package/dist/server/migrate.d.ts +13 -0
- package/dist/server/migrations-dir.d.ts +18 -0
- package/dist/server/redaction.d.ts +1 -0
- package/dist/server/registry.d.ts +5 -0
- package/dist/server/rows.d.ts +24 -0
- package/dist/server/skills-api.d.ts +170 -0
- package/dist/server/sqlite-store.d.ts +131 -0
- package/dist/server/store-fixtures.d.ts +25 -0
- package/dist/server/store.d.ts +170 -0
- package/dist/server/types.d.ts +337 -0
- package/dist/server/worker.d.ts +4 -0
- package/dist/storage.js +39 -2
- package/docs/skill-standard.md +211 -39
- package/migrations/postgres/0003_run_outputs_governance.sql +83 -0
- package/migrations/postgres/0004_hosted_pins.sql +28 -0
- package/migrations/postgres/0005_revision_tombstone_registry.sql +37 -0
- package/migrations/postgres/0005_tag_projection.sql +36 -0
- package/migrations/sqlite/0003_run_outputs_governance.sql +58 -0
- package/migrations/sqlite/0004_hosted_pins.sql +21 -0
- package/migrations/sqlite/0005_revision_tombstone_registry.sql +18 -0
- package/migrations/sqlite/0005_tag_projection.sql +25 -0
- package/package.json +12 -8
- package/schemas/skill.schema.json +181 -0
- package/agent-skills/README.md +0 -41
- package/agent-skills/fleet-package-rollout/SKILL.md +0 -169
- package/agent-skills/inbox/SKILL.md +0 -25
- package/agent-skills/inbox/scripts/inbox +0 -109
- package/agent-skills/inbox/tests/test_registered_sender_id.sh +0 -92
- package/agent-skills/inbox-monitor/SKILL.md +0 -41
- package/agent-skills/inbox-monitor/scripts/inbox_monitor.sh +0 -91
- package/agent-skills/inbox-monitor/scripts/test_inbox_monitor.sh +0 -71
- package/agent-skills/merge-pr/SKILL.md +0 -85
- package/agent-skills/merge-pr/references/merge-safety.md +0 -82
- package/agent-skills/merge-pr/scripts/merge_pr_guard.py +0 -694
- package/agent-skills/merge-pr/scripts/test_merge_pr_guard.py +0 -647
- package/agent-skills/merge-pr/tests/fixtures/multi-commit-synthesized.json +0 -28
- package/agent-skills/merge-pr/tests/fixtures/trailer-free-provider.json +0 -28
- package/agent-skills/skill-goal-execute/SKILL.md +0 -115
- package/agent-skills/skill-login/SKILL.md +0 -109
- package/agent-skills/skill-project-create/SKILL.md +0 -91
- package/agent-skills/skill-publish/SKILL.md +0 -254
- package/agent-skills/skill-publish/scripts/capture_registry.js +0 -47
- package/agent-skills/skill-publish/scripts/publish_with_git_head.sh +0 -143
- package/agent-skills/skill-publish/scripts/test_publish_with_git_head.sh +0 -231
- package/skills/_common/auth.ts +0 -45
- package/skills/_common/http-client.ts +0 -143
- package/skills/_common/index.ts +0 -26
- package/skills/_common/install.sh +0 -7
- package/skills/_common/installer.ts +0 -72
- package/skills/_common/skill-install.ts +0 -37
- package/skills/_common/vision.ts +0 -374
- package/skills/ad-creative-pack/SKILL.md +0 -55
- package/skills/ad-creative-pack/package.json +0 -10
- package/skills/analyze-data/CLAUDE.md +0 -16
- package/skills/analyze-data/SKILL.md +0 -112
- package/skills/analyze-data/package.json +0 -23
- package/skills/analyze-data/src/analysis.ts +0 -401
- package/skills/analyze-data/src/cli.ts +0 -66
- package/skills/analyze-data/src/formatters.ts +0 -235
- package/skills/analyze-data/src/index.ts +0 -74
- package/skills/analyze-data/src/logger.ts +0 -36
- package/skills/analyze-data/src/parsers.ts +0 -57
- package/skills/analyze-data/src/stats.ts +0 -151
- package/skills/analyze-data/src/types.ts +0 -85
- package/skills/analyze-data/tsconfig.json +0 -19
- package/skills/api-docs-portal/SKILL.md +0 -84
- package/skills/api-docs-portal/package.json +0 -35
- package/skills/api-docs-portal/src/index.ts +0 -919
- package/skills/api-docs-portal/tsconfig.json +0 -17
- package/skills/api-test-suite/CLAUDE.md +0 -19
- package/skills/api-test-suite/package.json +0 -27
- package/skills/api-test-suite/src/index.ts +0 -381
- package/skills/api-test-suite/tsconfig.json +0 -10
- package/skills/audio-extract/CLAUDE.md +0 -9
- package/skills/audio-extract/SKILL.md +0 -73
- package/skills/audio-extract/package.json +0 -23
- package/skills/audio-extract/src/index.ts +0 -323
- package/skills/audio-extract/tsconfig.json +0 -11
- package/skills/bio-sequence-tool/CLAUDE.md +0 -19
- package/skills/bio-sequence-tool/package.json +0 -27
- package/skills/bio-sequence-tool/src/index.ts +0 -85
- package/skills/bio-sequence-tool/tsconfig.json +0 -10
- package/skills/blog-article/CLAUDE.md +0 -12
- package/skills/blog-article/SKILL.md +0 -55
- package/skills/blog-article/package.json +0 -10
- package/skills/blog-article/tsconfig.json +0 -10
- package/skills/brand-assets/SKILL.md +0 -118
- package/skills/brand-assets/package.json +0 -35
- package/skills/brand-assets/src/cli.ts +0 -155
- package/skills/brand-assets/src/constants.ts +0 -8
- package/skills/brand-assets/src/extract.ts +0 -236
- package/skills/brand-assets/src/index.ts +0 -668
- package/skills/brand-assets/src/types.ts +0 -59
- package/skills/brand-assets/tsconfig.json +0 -17
- package/skills/brand-kit/SKILL.md +0 -54
- package/skills/brand-kit/package.json +0 -10
- package/skills/businessactivity/CLAUDE.md +0 -176
- package/skills/businessactivity/LICENSE +0 -192
- package/skills/businessactivity/README.md +0 -287
- package/skills/businessactivity/package.json +0 -25
- package/skills/businessactivity/scripts/publish.ts +0 -210
- package/skills/businessactivity/src/commands/activity.ts +0 -211
- package/skills/businessactivity/src/commands/function.ts +0 -227
- package/skills/businessactivity/src/commands/owner.ts +0 -193
- package/skills/businessactivity/src/commands/profile.ts +0 -121
- package/skills/businessactivity/src/commands/responsibility.ts +0 -264
- package/skills/businessactivity/src/commands/team.ts +0 -244
- package/skills/businessactivity/src/commands/workflow.ts +0 -359
- package/skills/businessactivity/src/index.ts +0 -3
- package/skills/businessactivity/src/lib/config.ts +0 -167
- package/skills/businessactivity/src/lib/output.ts +0 -76
- package/skills/businessactivity/src/lib/paths.ts +0 -79
- package/skills/businessactivity/src/lib/storage.ts +0 -95
- package/skills/businessactivity/src/types/index.ts +0 -86
- package/skills/businessactivity/tsconfig.json +0 -29
- package/skills/codefix/LICENSE +0 -192
- package/skills/codefix/README.md +0 -232
- package/skills/codefix/SKILL.md +0 -94
- package/skills/codefix/package.json +0 -21
- package/skills/codefix/src/fixers/batch.ts +0 -213
- package/skills/codefix/src/fixers/detector.ts +0 -160
- package/skills/codefix/src/fixers/index.ts +0 -7
- package/skills/codefix/src/fixers/runner.ts +0 -522
- package/skills/codefix/src/index-local.ts +0 -431
- package/skills/codefix/src/index.ts +0 -4
- package/skills/codefix/src/types.ts +0 -211
- package/skills/codefix/tsconfig.json +0 -15
- package/skills/commitpush/SKILL.md +0 -57
- package/skills/commitpush/package.json +0 -33
- package/skills/commitpush/src/index.ts +0 -34
- package/skills/commitpush/tsconfig.json +0 -17
- package/skills/commitpushpr/SKILL.md +0 -55
- package/skills/commitpushpr/package.json +0 -33
- package/skills/commitpushpr/src/index.ts +0 -34
- package/skills/commitpushpr/tsconfig.json +0 -17
- package/skills/compress-video/CLAUDE.md +0 -9
- package/skills/compress-video/SKILL.md +0 -79
- package/skills/compress-video/package.json +0 -23
- package/skills/compress-video/src/index.ts +0 -473
- package/skills/compress-video/tsconfig.json +0 -11
- package/skills/contract-review-report/SKILL.md +0 -52
- package/skills/contract-review-report/package.json +0 -10
- package/skills/customer-feedback-report/SKILL.md +0 -52
- package/skills/customer-feedback-report/package.json +0 -10
- package/skills/dashboard-builder/CLAUDE.md +0 -19
- package/skills/dashboard-builder/package.json +0 -29
- package/skills/dashboard-builder/src/index.ts +0 -150
- package/skills/dashboard-builder/tsconfig.json +0 -10
- package/skills/data-anonymizer/CLAUDE.md +0 -19
- package/skills/data-anonymizer/package.json +0 -27
- package/skills/data-anonymizer/src/index.ts +0 -183
- package/skills/data-anonymizer/tsconfig.json +0 -10
- package/skills/database-explorer/CLAUDE.md +0 -19
- package/skills/database-explorer/package.json +0 -29
- package/skills/database-explorer/src/index.ts +0 -95
- package/skills/database-explorer/tsconfig.json +0 -10
- package/skills/diff-viewer/CLAUDE.md +0 -19
- package/skills/diff-viewer/package.json +0 -30
- package/skills/diff-viewer/src/index.ts +0 -164
- package/skills/diff-viewer/tsconfig.json +0 -10
- package/skills/doc-read/SKILL.md +0 -45
- package/skills/doc-read/package.json +0 -29
- package/skills/doc-read/src/index.ts +0 -324
- package/skills/doc-read/tsconfig.json +0 -8
- package/skills/domainpurchase/LICENSE +0 -192
- package/skills/domainpurchase/SKILL.md +0 -29
- package/skills/domainpurchase/package.json +0 -30
- package/skills/domainpurchase/src/index.ts +0 -3
- package/skills/domainpurchase/tsconfig.json +0 -21
- package/skills/email-sequence/SKILL.md +0 -53
- package/skills/email-sequence/package.json +0 -10
- package/skills/experiment-power-calculator/CLAUDE.md +0 -19
- package/skills/experiment-power-calculator/package.json +0 -29
- package/skills/experiment-power-calculator/src/index.ts +0 -86
- package/skills/experiment-power-calculator/tsconfig.json +0 -10
- package/skills/extract-frames/CLAUDE.md +0 -19
- package/skills/extract-frames/package.json +0 -27
- package/skills/extract-frames/src/index.ts +0 -616
- package/skills/extract-frames/tsconfig.json +0 -10
- package/skills/file-organizer/CLAUDE.md +0 -19
- package/skills/file-organizer/package.json +0 -27
- package/skills/file-organizer/src/index.ts +0 -91
- package/skills/file-organizer/tsconfig.json +0 -10
- package/skills/folder-tree/CLAUDE.md +0 -19
- package/skills/folder-tree/package.json +0 -29
- package/skills/folder-tree/src/index.ts +0 -568
- package/skills/folder-tree/tsconfig.json +0 -10
- package/skills/form-filler/CLAUDE.md +0 -19
- package/skills/form-filler/package.json +0 -29
- package/skills/form-filler/src/index.ts +0 -81
- package/skills/form-filler/tsconfig.json +0 -10
- package/skills/generate-api-client/CLAUDE.md +0 -19
- package/skills/generate-api-client/package.json +0 -29
- package/skills/generate-api-client/src/generator.ts +0 -47
- package/skills/generate-api-client/src/index.ts +0 -92
- package/skills/generate-api-client/src/logger.ts +0 -34
- package/skills/generate-api-client/src/python-generator.ts +0 -245
- package/skills/generate-api-client/src/spec-loader.ts +0 -48
- package/skills/generate-api-client/src/type-mappers.ts +0 -79
- package/skills/generate-api-client/src/types.ts +0 -76
- package/skills/generate-api-client/src/typescript-generator.ts +0 -247
- package/skills/generate-api-client/tsconfig.json +0 -10
- package/skills/generate-chart/CLAUDE.md +0 -19
- package/skills/generate-chart/package.json +0 -27
- package/skills/generate-chart/src/index.ts +0 -510
- package/skills/generate-chart/tsconfig.json +0 -10
- package/skills/generate-dockerfile/CLAUDE.md +0 -19
- package/skills/generate-dockerfile/package.json +0 -27
- package/skills/generate-dockerfile/src/cli.ts +0 -78
- package/skills/generate-dockerfile/src/dockerfile-templates.ts +0 -392
- package/skills/generate-dockerfile/src/index.ts +0 -81
- package/skills/generate-dockerfile/src/logger.ts +0 -30
- package/skills/generate-dockerfile/src/project-detection.ts +0 -68
- package/skills/generate-dockerfile/src/support-files.ts +0 -171
- package/skills/generate-dockerfile/src/types.ts +0 -29
- package/skills/generate-dockerfile/tsconfig.json +0 -10
- package/skills/generate-env/CLAUDE.md +0 -19
- package/skills/generate-env/package.json +0 -29
- package/skills/generate-env/src/cli.ts +0 -85
- package/skills/generate-env/src/detection.ts +0 -161
- package/skills/generate-env/src/env-data.ts +0 -66
- package/skills/generate-env/src/generators.ts +0 -240
- package/skills/generate-env/src/index.ts +0 -120
- package/skills/generate-env/src/runtime.ts +0 -30
- package/skills/generate-env/src/types.ts +0 -32
- package/skills/generate-env/tsconfig.json +0 -10
- package/skills/generate-favicon/CLAUDE.md +0 -19
- package/skills/generate-favicon/package.json +0 -29
- package/skills/generate-favicon/src/index.ts +0 -421
- package/skills/generate-favicon/tsconfig.json +0 -10
- package/skills/generate-qrcode/CLAUDE.md +0 -19
- package/skills/generate-qrcode/package.json +0 -30
- package/skills/generate-qrcode/src/index.ts +0 -584
- package/skills/generate-qrcode/tsconfig.json +0 -10
- package/skills/generate-resume/CLAUDE.md +0 -19
- package/skills/generate-resume/package.json +0 -27
- package/skills/generate-resume/src/cli.ts +0 -157
- package/skills/generate-resume/src/index.ts +0 -178
- package/skills/generate-resume/src/parsers.ts +0 -95
- package/skills/generate-resume/src/renderers.ts +0 -538
- package/skills/generate-resume/src/security.ts +0 -39
- package/skills/generate-resume/src/types.ts +0 -86
- package/skills/generate-resume/tsconfig.json +0 -10
- package/skills/generate-sitemap/CLAUDE.md +0 -19
- package/skills/generate-sitemap/package.json +0 -27
- package/skills/generate-sitemap/src/index.ts +0 -626
- package/skills/generate-sitemap/tsconfig.json +0 -10
- package/skills/gif-maker/CLAUDE.md +0 -19
- package/skills/gif-maker/package.json +0 -30
- package/skills/gif-maker/src/index.ts +0 -600
- package/skills/gif-maker/tsconfig.json +0 -10
- package/skills/hook/LICENSE +0 -192
- package/skills/hook/README.md +0 -74
- package/skills/hook/SKILL.md +0 -85
- package/skills/hook/bunfig.toml +0 -5
- package/skills/hook/package.json +0 -28
- package/skills/hook/src/commands/create.ts +0 -112
- package/skills/hook/src/commands/events.ts +0 -37
- package/skills/hook/src/commands/validate.ts +0 -117
- package/skills/hook/src/index.ts +0 -118
- package/skills/hook/src/templates/root.ts +0 -196
- package/skills/hook/src/templates/source.ts +0 -647
- package/skills/hook/tsconfig.json +0 -18
- package/skills/http-server/CLAUDE.md +0 -19
- package/skills/http-server/package.json +0 -29
- package/skills/http-server/src/index.ts +0 -51
- package/skills/http-server/tsconfig.json +0 -10
- package/skills/implementation/LICENSE +0 -192
- package/skills/implementation/README.md +0 -53
- package/skills/implementation/SKILL.md +0 -57
- package/skills/implementation/bunfig.toml +0 -5
- package/skills/implementation/package.json +0 -28
- package/skills/implementation/src/commands/create.ts +0 -187
- package/skills/implementation/src/index.ts +0 -62
- package/skills/implementation/tsconfig.json +0 -18
- package/skills/implementation-plan/CLAUDE.md +0 -19
- package/skills/implementation-plan/package.json +0 -29
- package/skills/implementation-plan/src/index.ts +0 -520
- package/skills/implementation-plan/tsconfig.json +0 -10
- package/skills/implementation-todo/CLAUDE.md +0 -19
- package/skills/implementation-todo/package.json +0 -29
- package/skills/implementation-todo/src/index.ts +0 -429
- package/skills/implementation-todo/tsconfig.json +0 -10
- package/skills/invoice/.env.example +0 -3
- package/skills/invoice/CLAUDE.md +0 -31
- package/skills/invoice/LICENSE +0 -192
- package/skills/invoice/README.md +0 -70
- package/skills/invoice/package.json +0 -26
- package/skills/invoice/src/commands/companies.ts +0 -202
- package/skills/invoice/src/commands/config.ts +0 -132
- package/skills/invoice/src/commands/generate.ts +0 -177
- package/skills/invoice/src/commands/invoices.ts +0 -218
- package/skills/invoice/src/index.ts +0 -3
- package/skills/invoice/src/lib/api.ts +0 -124
- package/skills/invoice/src/lib/storage.ts +0 -171
- package/skills/invoice/src/types/index.ts +0 -86
- package/skills/invoice/src/utils/logger.ts +0 -33
- package/skills/invoice/src/utils/paths.ts +0 -25
- package/skills/invoice/tsconfig.json +0 -23
- package/skills/invoice-reconciliation/SKILL.md +0 -98
- package/skills/invoice-reconciliation/package.json +0 -36
- package/skills/invoice-reconciliation/src/index.ts +0 -743
- package/skills/invoice-reconciliation/tsconfig.json +0 -17
- package/skills/landing-page-pack/SKILL.md +0 -55
- package/skills/landing-page-pack/package.json +0 -10
- package/skills/latex-table-generator/CLAUDE.md +0 -19
- package/skills/latex-table-generator/package.json +0 -29
- package/skills/latex-table-generator/src/index.ts +0 -113
- package/skills/latex-table-generator/tsconfig.json +0 -10
- package/skills/logo-design/SKILL.md +0 -94
- package/skills/logo-design/package.json +0 -35
- package/skills/logo-design/src/cli.ts +0 -132
- package/skills/logo-design/src/constants.ts +0 -5
- package/skills/logo-design/src/docs.ts +0 -102
- package/skills/logo-design/src/geometry.ts +0 -324
- package/skills/logo-design/src/index.ts +0 -212
- package/skills/logo-design/src/palette.ts +0 -258
- package/skills/logo-design/src/types.ts +0 -50
- package/skills/logo-design/tsconfig.json +0 -17
- package/skills/lorem-generator/CLAUDE.md +0 -19
- package/skills/lorem-generator/package.json +0 -29
- package/skills/lorem-generator/src/index.ts +0 -59
- package/skills/lorem-generator/tsconfig.json +0 -10
- package/skills/managemcp/CLAUDE.md +0 -14
- package/skills/managemcp/README.md +0 -24
- package/skills/managemcp/package.json +0 -16
- package/skills/managemcp/src/index.ts +0 -3
- package/skills/managemcp/tsconfig.json +0 -27
- package/skills/markdown-validator/CLAUDE.md +0 -19
- package/skills/markdown-validator/package.json +0 -29
- package/skills/markdown-validator/src/index.ts +0 -92
- package/skills/markdown-validator/tsconfig.json +0 -10
- package/skills/market-research-report/SKILL.md +0 -51
- package/skills/market-research-report/package.json +0 -10
- package/skills/meeting-pack/SKILL.md +0 -52
- package/skills/meeting-pack/package.json +0 -10
- package/skills/merge-pdfs/CLAUDE.md +0 -19
- package/skills/merge-pdfs/package.json +0 -31
- package/skills/merge-pdfs/src/index.ts +0 -427
- package/skills/merge-pdfs/tsconfig.json +0 -10
- package/skills/migration-plan-pack/SKILL.md +0 -56
- package/skills/migration-plan-pack/package.json +0 -10
- package/skills/monitor/SKILL.md +0 -69
- package/skills/monitor/package.json +0 -33
- package/skills/monitor/src/index.ts +0 -34
- package/skills/monitor/tsconfig.json +0 -17
- package/skills/one-page-website/SKILL.md +0 -128
- package/skills/one-page-website/package.json +0 -34
- package/skills/one-page-website/src/design.ts +0 -336
- package/skills/one-page-website/src/docs.ts +0 -159
- package/skills/one-page-website/src/index.ts +0 -357
- package/skills/one-page-website/src/page.ts +0 -340
- package/skills/one-page-website/src/styles.ts +0 -508
- package/skills/one-page-website/src/types.ts +0 -78
- package/skills/one-page-website/tsconfig.json +0 -17
- package/skills/pdf-generate/CLAUDE.md +0 -19
- package/skills/pdf-generate/SKILL.md +0 -86
- package/skills/pdf-generate/package.json +0 -21
- package/skills/pdf-generate/src/cli.ts +0 -162
- package/skills/pdf-generate/src/html.ts +0 -84
- package/skills/pdf-generate/src/index.ts +0 -62
- package/skills/pdf-generate/src/markdown.ts +0 -27
- package/skills/pdf-generate/src/pdf-writer.ts +0 -78
- package/skills/pdf-generate/src/runtime.ts +0 -34
- package/skills/pdf-generate/src/security.ts +0 -37
- package/skills/pdf-generate/src/templates.ts +0 -311
- package/skills/pdf-generate/src/types.ts +0 -28
- package/skills/pdf-generate/tsconfig.json +0 -16
- package/skills/pdf-to-dataset/SKILL.md +0 -88
- package/skills/pdf-to-dataset/package.json +0 -37
- package/skills/pdf-to-dataset/src/index.ts +0 -790
- package/skills/pdf-to-dataset/tsconfig.json +0 -17
- package/skills/pdf-to-markdown/SKILL.md +0 -81
- package/skills/pdf-to-markdown/package.json +0 -35
- package/skills/pdf-to-markdown/src/index.ts +0 -694
- package/skills/pdf-to-markdown/tsconfig.json +0 -17
- package/skills/performance-audit-report/SKILL.md +0 -49
- package/skills/performance-audit-report/package.json +0 -10
- package/skills/pitch-deck/SKILL.md +0 -51
- package/skills/pitch-deck/package.json +0 -10
- package/skills/product-mockup/SKILL.md +0 -107
- package/skills/product-mockup/package.json +0 -32
- package/skills/product-mockup/src/cli.ts +0 -150
- package/skills/product-mockup/src/design.ts +0 -151
- package/skills/product-mockup/src/docs.ts +0 -134
- package/skills/product-mockup/src/index.ts +0 -182
- package/skills/product-mockup/src/render.ts +0 -407
- package/skills/product-mockup/src/types.ts +0 -66
- package/skills/product-mockup/tsconfig.json +0 -17
- package/skills/proposal-pack/SKILL.md +0 -53
- package/skills/proposal-pack/package.json +0 -10
- package/skills/read-csv/SKILL.md +0 -62
- package/skills/read-csv/package.json +0 -37
- package/skills/read-csv/src/index.ts +0 -356
- package/skills/read-csv/tsconfig.json +0 -17
- package/skills/read-excel/SKILL.md +0 -64
- package/skills/read-excel/package.json +0 -36
- package/skills/read-excel/src/index.ts +0 -266
- package/skills/read-excel/tsconfig.json +0 -17
- package/skills/regex-tester/CLAUDE.md +0 -19
- package/skills/regex-tester/package.json +0 -27
- package/skills/regex-tester/src/index.ts +0 -183
- package/skills/regex-tester/tsconfig.json +0 -10
- package/skills/repo-onboarding-report/SKILL.md +0 -52
- package/skills/repo-onboarding-report/package.json +0 -10
- package/skills/scancommitpr/SKILL.md +0 -178
- package/skills/scancommitpr/package.json +0 -34
- package/skills/scancommitpr/src/index.ts +0 -44
- package/skills/scancommitpr/tsconfig.json +0 -13
- package/skills/scancommitpush/SKILL.md +0 -174
- package/skills/scancommitpush/package.json +0 -32
- package/skills/scancommitpush/src/index.ts +0 -44
- package/skills/scancommitpush/tsconfig.json +0 -13
- package/skills/scientific-figure-check/CLAUDE.md +0 -19
- package/skills/scientific-figure-check/package.json +0 -29
- package/skills/scientific-figure-check/src/index.ts +0 -83
- package/skills/scientific-figure-check/tsconfig.json +0 -10
- package/skills/security-audit/CLAUDE.md +0 -19
- package/skills/security-audit/package.json +0 -27
- package/skills/security-audit/src/index.ts +0 -145
- package/skills/security-audit/tsconfig.json +0 -10
- package/skills/security-audit-report/SKILL.md +0 -52
- package/skills/security-audit-report/package.json +0 -10
- package/skills/seo-content-pack/SKILL.md +0 -54
- package/skills/seo-content-pack/package.json +0 -10
- package/skills/siteanalyze/SKILL.md +0 -25
- package/skills/siteanalyze/package.json +0 -27
- package/skills/siteanalyze/src/index.ts +0 -592
- package/skills/slide-deck-generator/SKILL.md +0 -93
- package/skills/slide-deck-generator/package.json +0 -38
- package/skills/slide-deck-generator/src/cli.ts +0 -133
- package/skills/slide-deck-generator/src/index.ts +0 -148
- package/skills/slide-deck-generator/src/model.ts +0 -307
- package/skills/slide-deck-generator/src/pptx.ts +0 -143
- package/skills/slide-deck-generator/src/render.ts +0 -248
- package/skills/slide-deck-generator/src/types.ts +0 -114
- package/skills/slide-deck-generator/src/utils.ts +0 -53
- package/skills/slide-deck-generator/tsconfig.json +0 -17
- package/skills/social-content-calendar/SKILL.md +0 -54
- package/skills/social-content-calendar/package.json +0 -10
- package/skills/split-pdf/CLAUDE.md +0 -19
- package/skills/split-pdf/package.json +0 -30
- package/skills/split-pdf/src/index.ts +0 -301
- package/skills/split-pdf/tsconfig.json +0 -10
- package/skills/statistical-test-selector/CLAUDE.md +0 -19
- package/skills/statistical-test-selector/package.json +0 -27
- package/skills/statistical-test-selector/src/index.ts +0 -75
- package/skills/statistical-test-selector/tsconfig.json +0 -10
- package/skills/test-suite-generator/SKILL.md +0 -51
- package/skills/test-suite-generator/package.json +0 -10
- package/skills/tmux-session/SKILL.md +0 -109
- package/skills/tmux-session/package.json +0 -33
- package/skills/tmux-session/src/index.ts +0 -34
- package/skills/tmux-session/tsconfig.json +0 -17
- package/skills/todos-plan/SKILL.md +0 -363
- package/skills/todos-plan/agents/openai.yaml +0 -4
- package/skills/todos-plan/package.json +0 -9
- package/skills/todos-plan/src/index.ts +0 -68
- package/skills/tsconfig.base.json +0 -12
- package/skills/validate-config/CLAUDE.md +0 -19
- package/skills/validate-config/package.json +0 -29
- package/skills/validate-config/src/index.ts +0 -56
- package/skills/validate-config/tsconfig.json +0 -10
- package/skills/video-downloader/CLAUDE.md +0 -19
- package/skills/video-downloader/package.json +0 -29
- package/skills/video-downloader/src/index.ts +0 -561
- package/skills/video-downloader/tsconfig.json +0 -10
- package/skills/video-highlight-pack/SKILL.md +0 -54
- package/skills/video-highlight-pack/package.json +0 -10
- package/skills/watermark/CLAUDE.md +0 -19
- package/skills/watermark/package.json +0 -32
- package/skills/watermark/src/index.ts +0 -587
- package/skills/watermark/tsconfig.json +0 -10
|
@@ -1,287 +0,0 @@
|
|
|
1
|
-
# service-businessactivity
|
|
2
|
-
|
|
3
|
-
Business activity, workflow, and ownership management service.
|
|
4
|
-
|
|
5
|
-
A CLI tool for managing business functions, activities, workflows, responsibilities, and ownership (humans or agents). Supports multi-profile for managing multiple companies.
|
|
6
|
-
|
|
7
|
-
## Features
|
|
8
|
-
|
|
9
|
-
- **Multi-Profile Support**: Manage multiple companies/organizations
|
|
10
|
-
- **Owner Management**: Track humans and AI agents with capabilities
|
|
11
|
-
- **Team Management**: Organize owners into teams
|
|
12
|
-
- **Function Hierarchy**: Define hierarchical business functions
|
|
13
|
-
- **Activities**: Track activities under functions
|
|
14
|
-
- **Workflows**: Define multi-step workflows with assigned owners/teams
|
|
15
|
-
- **RACI Responsibilities**: Assign responsibilities using RACI matrix
|
|
16
|
-
|
|
17
|
-
## Installation
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
# Install dependencies
|
|
21
|
-
bun install
|
|
22
|
-
|
|
23
|
-
# Install globally
|
|
24
|
-
bun link
|
|
25
|
-
|
|
26
|
-
# Verify installation
|
|
27
|
-
service-businessactivity --help
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## Storage
|
|
31
|
-
|
|
32
|
-
All data is stored locally in JSON files at `~/.service/service-businessactivity/`:
|
|
33
|
-
|
|
34
|
-
```
|
|
35
|
-
~/.service/service-businessactivity/
|
|
36
|
-
├── config.json # Multi-profile configuration
|
|
37
|
-
└── profiles/
|
|
38
|
-
└── {profile-name}/
|
|
39
|
-
├── owners.json
|
|
40
|
-
├── teams.json
|
|
41
|
-
├── team-members.json
|
|
42
|
-
├── functions.json
|
|
43
|
-
├── activities.json
|
|
44
|
-
├── workflows.json
|
|
45
|
-
├── workflow-steps.json
|
|
46
|
-
└── responsibilities.json
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
## CLI Usage
|
|
50
|
-
|
|
51
|
-
### Profile Management
|
|
52
|
-
|
|
53
|
-
Profiles represent different companies/organizations.
|
|
54
|
-
|
|
55
|
-
```bash
|
|
56
|
-
# Create a profile
|
|
57
|
-
service-businessactivity profile create --name "Acme Corp" --description "Main company"
|
|
58
|
-
|
|
59
|
-
# List profiles
|
|
60
|
-
service-businessactivity profile list
|
|
61
|
-
|
|
62
|
-
# Switch active profile
|
|
63
|
-
service-businessactivity profile use "Acme Corp"
|
|
64
|
-
|
|
65
|
-
# Show current profile
|
|
66
|
-
service-businessactivity profile current
|
|
67
|
-
|
|
68
|
-
# Delete a profile
|
|
69
|
-
service-businessactivity profile delete "Acme Corp" --force
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
### Owner Management
|
|
73
|
-
|
|
74
|
-
Owners are humans or AI agents that can be assigned to activities and workflows.
|
|
75
|
-
|
|
76
|
-
```bash
|
|
77
|
-
# Create a human owner
|
|
78
|
-
service-businessactivity owner create --name "John Doe" --type human --email john@example.com --capabilities "approve,review"
|
|
79
|
-
|
|
80
|
-
# Create an AI agent owner
|
|
81
|
-
service-businessactivity owner create --name "Support Bot" --type agent --capabilities "respond,escalate"
|
|
82
|
-
|
|
83
|
-
# List owners
|
|
84
|
-
service-businessactivity owner list
|
|
85
|
-
service-businessactivity owner list --type agent
|
|
86
|
-
|
|
87
|
-
# Get owner details
|
|
88
|
-
service-businessactivity owner get <id>
|
|
89
|
-
|
|
90
|
-
# Update owner
|
|
91
|
-
service-businessactivity owner update <id> --capabilities "approve,review,execute"
|
|
92
|
-
|
|
93
|
-
# Delete owner
|
|
94
|
-
service-businessactivity owner delete <id> --force
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
### Team Management
|
|
98
|
-
|
|
99
|
-
Teams group owners together for collective assignment.
|
|
100
|
-
|
|
101
|
-
```bash
|
|
102
|
-
# Create a team
|
|
103
|
-
service-businessactivity team create --name "Engineering" --description "Engineering team"
|
|
104
|
-
|
|
105
|
-
# List teams
|
|
106
|
-
service-businessactivity team list
|
|
107
|
-
|
|
108
|
-
# Add member to team
|
|
109
|
-
service-businessactivity team add-member --team <teamId> --owner <ownerId> --role "Lead"
|
|
110
|
-
|
|
111
|
-
# Remove member from team
|
|
112
|
-
service-businessactivity team remove-member --team <teamId> --owner <ownerId>
|
|
113
|
-
|
|
114
|
-
# Get team details with members
|
|
115
|
-
service-businessactivity team get <id>
|
|
116
|
-
|
|
117
|
-
# Delete team
|
|
118
|
-
service-businessactivity team delete <id> --force
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
### Function Management
|
|
122
|
-
|
|
123
|
-
Business functions can be organized hierarchically.
|
|
124
|
-
|
|
125
|
-
```bash
|
|
126
|
-
# Create a root function
|
|
127
|
-
service-businessactivity function create --name "Finance"
|
|
128
|
-
|
|
129
|
-
# Create a child function
|
|
130
|
-
service-businessactivity function create --name "Accounts Payable" --parent <parentId>
|
|
131
|
-
|
|
132
|
-
# List functions (tree view)
|
|
133
|
-
service-businessactivity function list
|
|
134
|
-
|
|
135
|
-
# List functions (flat)
|
|
136
|
-
service-businessactivity function list --flat
|
|
137
|
-
|
|
138
|
-
# Get function details
|
|
139
|
-
service-businessactivity function get <id>
|
|
140
|
-
|
|
141
|
-
# Update function
|
|
142
|
-
service-businessactivity function update <id> --description "Updated description"
|
|
143
|
-
|
|
144
|
-
# Delete function
|
|
145
|
-
service-businessactivity function delete <id> --force
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
### Activity Management
|
|
149
|
-
|
|
150
|
-
Activities are tasks within business functions.
|
|
151
|
-
|
|
152
|
-
```bash
|
|
153
|
-
# Create an activity
|
|
154
|
-
service-businessactivity activity create --name "Invoice Processing" --function <functionId> --status pending
|
|
155
|
-
|
|
156
|
-
# List activities
|
|
157
|
-
service-businessactivity activity list
|
|
158
|
-
service-businessactivity activity list --function <functionId>
|
|
159
|
-
service-businessactivity activity list --status in_progress
|
|
160
|
-
|
|
161
|
-
# Update activity status
|
|
162
|
-
service-businessactivity activity update <id> --status completed
|
|
163
|
-
|
|
164
|
-
# Get activity details
|
|
165
|
-
service-businessactivity activity get <id>
|
|
166
|
-
|
|
167
|
-
# Delete activity
|
|
168
|
-
service-businessactivity activity delete <id> --force
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
Activity statuses: `pending`, `in_progress`, `completed`, `cancelled`
|
|
172
|
-
|
|
173
|
-
### Workflow Management
|
|
174
|
-
|
|
175
|
-
Workflows define multi-step processes with assigned owners or teams.
|
|
176
|
-
|
|
177
|
-
```bash
|
|
178
|
-
# Create a workflow
|
|
179
|
-
service-businessactivity workflow create --name "Approval Flow" --trigger manual --status draft
|
|
180
|
-
|
|
181
|
-
# Add steps to workflow
|
|
182
|
-
service-businessactivity workflow add-step --workflow <id> --name "Submit Request" --action "submit"
|
|
183
|
-
service-businessactivity workflow add-step --workflow <id> --name "Review" --owner <ownerId> --action "review"
|
|
184
|
-
service-businessactivity workflow add-step --workflow <id> --name "Approve" --team <teamId> --action "approve"
|
|
185
|
-
|
|
186
|
-
# Reorder steps
|
|
187
|
-
service-businessactivity workflow reorder --workflow <id> --step <stepId> --position 2
|
|
188
|
-
|
|
189
|
-
# Show workflow with steps
|
|
190
|
-
service-businessactivity workflow show <id>
|
|
191
|
-
|
|
192
|
-
# List workflows
|
|
193
|
-
service-businessactivity workflow list
|
|
194
|
-
service-businessactivity workflow list --status active
|
|
195
|
-
|
|
196
|
-
# Update workflow
|
|
197
|
-
service-businessactivity workflow update <id> --status active
|
|
198
|
-
|
|
199
|
-
# Delete workflow
|
|
200
|
-
service-businessactivity workflow delete <id> --force
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
Workflow statuses: `draft`, `active`, `paused`, `archived`
|
|
204
|
-
Trigger types: `manual`, `scheduled`, `event`, `condition`
|
|
205
|
-
|
|
206
|
-
### Responsibility Management (RACI)
|
|
207
|
-
|
|
208
|
-
Assign responsibilities using RACI (Responsible, Accountable, Consulted, Informed).
|
|
209
|
-
|
|
210
|
-
```bash
|
|
211
|
-
# Assign responsibility for a function
|
|
212
|
-
service-businessactivity responsibility assign --owner <ownerId> --function <functionId> --type owner
|
|
213
|
-
|
|
214
|
-
# Assign responsibility for an activity
|
|
215
|
-
service-businessactivity responsibility assign --owner <ownerId> --activity <activityId> --type accountable
|
|
216
|
-
|
|
217
|
-
# List responsibilities
|
|
218
|
-
service-businessactivity responsibility list
|
|
219
|
-
service-businessactivity responsibility list --owner <ownerId>
|
|
220
|
-
service-businessactivity responsibility list --function <functionId>
|
|
221
|
-
|
|
222
|
-
# Show RACI matrix for a function
|
|
223
|
-
service-businessactivity responsibility matrix --function <functionId>
|
|
224
|
-
|
|
225
|
-
# Revoke responsibility
|
|
226
|
-
service-businessactivity responsibility revoke <id> --force
|
|
227
|
-
```
|
|
228
|
-
|
|
229
|
-
Responsibility types: `owner` (R), `accountable` (A), `consulted` (C), `informed` (I)
|
|
230
|
-
|
|
231
|
-
## Project Structure
|
|
232
|
-
|
|
233
|
-
```
|
|
234
|
-
service-businessactivity/
|
|
235
|
-
├── bin/
|
|
236
|
-
│ └── cli.ts # CLI entry point
|
|
237
|
-
├── src/
|
|
238
|
-
│ ├── commands/
|
|
239
|
-
│ │ ├── profile.ts # profile commands
|
|
240
|
-
│ │ ├── owner.ts # owner commands
|
|
241
|
-
│ │ ├── team.ts # team commands
|
|
242
|
-
│ │ ├── function.ts # function commands
|
|
243
|
-
│ │ ├── activity.ts # activity commands
|
|
244
|
-
│ │ ├── workflow.ts # workflow commands
|
|
245
|
-
│ │ └── responsibility.ts # responsibility commands
|
|
246
|
-
│ ├── lib/
|
|
247
|
-
│ │ ├── config.ts # Multi-profile config
|
|
248
|
-
│ │ ├── paths.ts # File path helpers
|
|
249
|
-
│ │ ├── storage.ts # JSON storage utilities
|
|
250
|
-
│ │ └── output.ts # CLI output helpers
|
|
251
|
-
│ └── types/
|
|
252
|
-
│ └── index.ts # TypeScript types
|
|
253
|
-
├── package.json
|
|
254
|
-
├── tsconfig.json
|
|
255
|
-
├── CLAUDE.md
|
|
256
|
-
└── README.md
|
|
257
|
-
```
|
|
258
|
-
|
|
259
|
-
## Configuration
|
|
260
|
-
|
|
261
|
-
Profile configurations are stored in `~/.service/service-businessactivity/config.json`:
|
|
262
|
-
|
|
263
|
-
```json
|
|
264
|
-
{
|
|
265
|
-
"currentProfile": "acme-corp",
|
|
266
|
-
"profiles": {
|
|
267
|
-
"acme-corp": {
|
|
268
|
-
"name": "Acme Corp",
|
|
269
|
-
"description": "Main company",
|
|
270
|
-
"createdAt": "2025-01-29T12:00:00.000Z"
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
}
|
|
274
|
-
```
|
|
275
|
-
|
|
276
|
-
## Scripts
|
|
277
|
-
|
|
278
|
-
- `bun run dev` - Run CLI in development
|
|
279
|
-
- `bun run build` - Build for distribution
|
|
280
|
-
|
|
281
|
-
## License
|
|
282
|
-
|
|
283
|
-
MIT
|
|
284
|
-
|
|
285
|
-
## Author
|
|
286
|
-
|
|
287
|
-
Hasna
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "businessactivity",
|
|
3
|
-
"version": "0.1.2",
|
|
4
|
-
"type": "module",
|
|
5
|
-
"description": "Business activity, workflow, and ownership management service",
|
|
6
|
-
"bin": {
|
|
7
|
-
"businessactivity": "src/index.ts"
|
|
8
|
-
},
|
|
9
|
-
"scripts": {
|
|
10
|
-
"dev": "bun run bin/cli.ts",
|
|
11
|
-
"build": "bun build ./bin/cli.ts --outdir ./dist --target node",
|
|
12
|
-
"release": "bun run ./scripts/publish.ts",
|
|
13
|
-
"release:patch": "bun run ./scripts/publish.ts patch",
|
|
14
|
-
"release:minor": "bun run ./scripts/publish.ts minor",
|
|
15
|
-
"release:major": "bun run ./scripts/publish.ts major",
|
|
16
|
-
"release:dry": "bun run ./scripts/publish.ts --dry-run"
|
|
17
|
-
},
|
|
18
|
-
"dependencies": {
|
|
19
|
-
"commander": "^13.0.0"
|
|
20
|
-
},
|
|
21
|
-
"devDependencies": {
|
|
22
|
-
"@types/bun": "^1.1.14",
|
|
23
|
-
"typescript": "^5.7.2"
|
|
24
|
-
}
|
|
25
|
-
}
|
|
@@ -1,210 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bun
|
|
2
|
-
/**
|
|
3
|
-
* Auto-versioning publish script
|
|
4
|
-
* - Fetches current npm version
|
|
5
|
-
* - Auto-bumps patch version if local version <= npm version
|
|
6
|
-
* - Creates git tag
|
|
7
|
-
* - Publishes to npm
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
import { $ } from 'bun';
|
|
11
|
-
import { readFileSync, writeFileSync } from 'fs';
|
|
12
|
-
import { join } from 'path';
|
|
13
|
-
|
|
14
|
-
interface PackageJson {
|
|
15
|
-
name: string;
|
|
16
|
-
version: string;
|
|
17
|
-
[key: string]: unknown;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
type BumpType = 'patch' | 'minor' | 'major';
|
|
21
|
-
|
|
22
|
-
function parseVersion(version: string): { major: number; minor: number; patch: number } {
|
|
23
|
-
const [major, minor, patch] = version.split('.').map(Number);
|
|
24
|
-
return { major, minor, patch };
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
function bumpVersion(version: string, type: BumpType = 'patch'): string {
|
|
28
|
-
const { major, minor, patch } = parseVersion(version);
|
|
29
|
-
|
|
30
|
-
switch (type) {
|
|
31
|
-
case 'major':
|
|
32
|
-
return `${major + 1}.0.0`;
|
|
33
|
-
case 'minor':
|
|
34
|
-
return `${major}.${minor + 1}.0`;
|
|
35
|
-
case 'patch':
|
|
36
|
-
default:
|
|
37
|
-
return `${major}.${minor}.${patch + 1}`;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
function compareVersions(a: string, b: string): number {
|
|
42
|
-
const vA = parseVersion(a);
|
|
43
|
-
const vB = parseVersion(b);
|
|
44
|
-
|
|
45
|
-
if (vA.major !== vB.major) return vA.major - vB.major;
|
|
46
|
-
if (vA.minor !== vB.minor) return vA.minor - vB.minor;
|
|
47
|
-
return vA.patch - vB.patch;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
async function getNpmVersion(packageName: string): Promise<string | null> {
|
|
51
|
-
try {
|
|
52
|
-
const result = await $`npm view ${packageName} version 2>/dev/null`.text();
|
|
53
|
-
return result.trim() || null;
|
|
54
|
-
} catch {
|
|
55
|
-
return null;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
async function hasUncommittedChanges(): Promise<boolean> {
|
|
60
|
-
try {
|
|
61
|
-
const result = await $`git status --porcelain`.text();
|
|
62
|
-
return result.trim().length > 0;
|
|
63
|
-
} catch {
|
|
64
|
-
return false;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
async function isGitRepo(): Promise<boolean> {
|
|
69
|
-
try {
|
|
70
|
-
await $`git rev-parse --git-dir 2>/dev/null`.text();
|
|
71
|
-
return true;
|
|
72
|
-
} catch {
|
|
73
|
-
return false;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
async function createGitTag(version: string, packageName: string): Promise<boolean> {
|
|
78
|
-
const tagName = `${packageName}@${version}`;
|
|
79
|
-
|
|
80
|
-
try {
|
|
81
|
-
// Check if tag already exists
|
|
82
|
-
const existingTags = await $`git tag -l ${tagName}`.text();
|
|
83
|
-
if (existingTags.trim()) {
|
|
84
|
-
console.log(`⚠️ Tag ${tagName} already exists, skipping tag creation`);
|
|
85
|
-
return true;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
await $`git tag -a ${tagName} -m "Release ${tagName}"`;
|
|
89
|
-
console.log(`✅ Created git tag: ${tagName}`);
|
|
90
|
-
return true;
|
|
91
|
-
} catch (error) {
|
|
92
|
-
console.error(`❌ Failed to create git tag: ${error}`);
|
|
93
|
-
return false;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
async function commitVersionBump(version: string, packageName: string): Promise<boolean> {
|
|
98
|
-
try {
|
|
99
|
-
await $`git add package.json`;
|
|
100
|
-
await $`git commit -m "chore(${packageName}): bump version to ${version}"`;
|
|
101
|
-
console.log(`✅ Committed version bump`);
|
|
102
|
-
return true;
|
|
103
|
-
} catch (error) {
|
|
104
|
-
console.error(`❌ Failed to commit: ${error}`);
|
|
105
|
-
return false;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
async function main() {
|
|
110
|
-
const args = process.argv.slice(2);
|
|
111
|
-
const bumpType = (args.find(a => ['patch', 'minor', 'major'].includes(a)) || 'patch') as BumpType;
|
|
112
|
-
const skipGit = args.includes('--skip-git');
|
|
113
|
-
const dryRun = args.includes('--dry-run');
|
|
114
|
-
const force = args.includes('--force');
|
|
115
|
-
|
|
116
|
-
// Read package.json
|
|
117
|
-
const pkgPath = join(process.cwd(), 'package.json');
|
|
118
|
-
const pkg: PackageJson = JSON.parse(readFileSync(pkgPath, 'utf-8'));
|
|
119
|
-
|
|
120
|
-
console.log(`\n📦 Publishing ${pkg.name}\n`);
|
|
121
|
-
|
|
122
|
-
// Get current npm version
|
|
123
|
-
const npmVersion = await getNpmVersion(pkg.name);
|
|
124
|
-
let newVersion = pkg.version;
|
|
125
|
-
|
|
126
|
-
if (npmVersion) {
|
|
127
|
-
console.log(`📌 Current npm version: ${npmVersion}`);
|
|
128
|
-
console.log(`📌 Local version: ${pkg.version}`);
|
|
129
|
-
|
|
130
|
-
// Check if we need to bump
|
|
131
|
-
if (compareVersions(pkg.version, npmVersion) <= 0) {
|
|
132
|
-
newVersion = bumpVersion(npmVersion, bumpType);
|
|
133
|
-
console.log(`🔄 Auto-bumping to: ${newVersion}`);
|
|
134
|
-
} else {
|
|
135
|
-
console.log(`✅ Local version is ahead, using: ${pkg.version}`);
|
|
136
|
-
}
|
|
137
|
-
} else {
|
|
138
|
-
console.log(`📌 Package not yet published to npm`);
|
|
139
|
-
console.log(`📌 Using local version: ${pkg.version}`);
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
// Update package.json if version changed
|
|
143
|
-
if (newVersion !== pkg.version) {
|
|
144
|
-
if (dryRun) {
|
|
145
|
-
console.log(`\n🧪 DRY RUN: Would update version to ${newVersion}`);
|
|
146
|
-
} else {
|
|
147
|
-
pkg.version = newVersion;
|
|
148
|
-
writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + '\n');
|
|
149
|
-
console.log(`✅ Updated package.json to version ${newVersion}`);
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
// Git operations
|
|
154
|
-
const isGit = await isGitRepo();
|
|
155
|
-
|
|
156
|
-
if (isGit && !skipGit) {
|
|
157
|
-
const hasChanges = await hasUncommittedChanges();
|
|
158
|
-
|
|
159
|
-
if (hasChanges && newVersion !== pkg.version) {
|
|
160
|
-
if (dryRun) {
|
|
161
|
-
console.log(`🧪 DRY RUN: Would commit version bump`);
|
|
162
|
-
} else {
|
|
163
|
-
await commitVersionBump(newVersion, pkg.name.replace('@hasnaxyz/', ''));
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
if (dryRun) {
|
|
168
|
-
console.log(`🧪 DRY RUN: Would create tag ${pkg.name}@${newVersion}`);
|
|
169
|
-
} else {
|
|
170
|
-
await createGitTag(newVersion, pkg.name.replace('@hasnaxyz/', ''));
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
// Build
|
|
175
|
-
console.log(`\n🔨 Building...`);
|
|
176
|
-
if (!dryRun) {
|
|
177
|
-
await $`bun run build`;
|
|
178
|
-
} else {
|
|
179
|
-
console.log(`🧪 DRY RUN: Would run build`);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
// Publish
|
|
183
|
-
console.log(`\n🚀 Publishing to npm...`);
|
|
184
|
-
if (dryRun) {
|
|
185
|
-
console.log(`🧪 DRY RUN: Would publish ${pkg.name}@${newVersion}`);
|
|
186
|
-
} else {
|
|
187
|
-
try {
|
|
188
|
-
await $`npm publish`;
|
|
189
|
-
console.log(`\n✅ Successfully published ${pkg.name}@${newVersion}`);
|
|
190
|
-
} catch (error) {
|
|
191
|
-
console.error(`\n❌ Publish failed: ${error}`);
|
|
192
|
-
process.exit(1);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
// Push tags
|
|
197
|
-
if (isGit && !skipGit && !dryRun) {
|
|
198
|
-
console.log(`\n📤 Pushing tags to remote...`);
|
|
199
|
-
try {
|
|
200
|
-
await $`git push --tags`;
|
|
201
|
-
console.log(`✅ Pushed tags to remote`);
|
|
202
|
-
} catch {
|
|
203
|
-
console.log(`⚠️ Could not push tags (no remote or not configured)`);
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
console.log(`\n✨ Done!\n`);
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
main().catch(console.error);
|