@su-record/vibe 3.0.0 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +2 -2
- package/README.en.md +6 -4
- package/README.md +5 -3
- package/dist/__tests__/wiring-integrity.test.d.ts +2 -0
- package/dist/__tests__/wiring-integrity.test.d.ts.map +1 -0
- package/dist/__tests__/wiring-integrity.test.js +160 -0
- package/dist/__tests__/wiring-integrity.test.js.map +1 -0
- package/dist/cli/commands/info.d.ts.map +1 -1
- package/dist/cli/commands/info.js +2 -1
- package/dist/cli/commands/info.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +4 -2
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/index.js +102 -128
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/postinstall/claude-agents.d.ts.map +1 -1
- package/dist/cli/postinstall/claude-agents.js +0 -5
- package/dist/cli/postinstall/claude-agents.js.map +1 -1
- package/dist/cli/postinstall/constants.d.ts +6 -0
- package/dist/cli/postinstall/constants.d.ts.map +1 -1
- package/dist/cli/postinstall/constants.js +42 -60
- package/dist/cli/postinstall/constants.js.map +1 -1
- package/dist/cli/postinstall/inline-skills.js +2 -2
- package/dist/cli/postinstall/inline-skills.js.map +1 -1
- package/dist/cli/postinstall/main.d.ts.map +1 -1
- package/dist/cli/postinstall/main.js +2 -0
- package/dist/cli/postinstall/main.js.map +1 -1
- package/dist/cli/postinstall.d.ts +6 -1
- package/dist/cli/postinstall.d.ts.map +1 -1
- package/dist/cli/postinstall.js +6 -1
- package/dist/cli/postinstall.js.map +1 -1
- package/dist/cli/setup/GlobalInstaller.d.ts +1 -15
- package/dist/cli/setup/GlobalInstaller.d.ts.map +1 -1
- package/dist/cli/setup/GlobalInstaller.js +16 -115
- package/dist/cli/setup/GlobalInstaller.js.map +1 -1
- package/dist/cli/setup/GlobalInstaller.test.d.ts +2 -0
- package/dist/cli/setup/GlobalInstaller.test.d.ts.map +1 -0
- package/dist/cli/setup/GlobalInstaller.test.js +16 -0
- package/dist/cli/setup/GlobalInstaller.test.js.map +1 -0
- package/dist/cli/setup/ProjectSetup.js +2 -2
- package/dist/cli/setup/ProjectSetup.js.map +1 -1
- package/dist/cli/setup.d.ts +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +1 -1
- package/dist/cli/setup.js.map +1 -1
- package/dist/infra/lib/SkillRepository.js +1 -1
- package/dist/infra/lib/evolution/__tests__/integration.test.js +0 -42
- package/dist/infra/lib/evolution/__tests__/integration.test.js.map +1 -1
- package/hooks/scripts/__tests__/.vibe/command-log.txt +3 -78
- package/hooks/scripts/__tests__/clone-behaviors.test.js +97 -1
- package/hooks/scripts/__tests__/clone-merge-responsive.test.js +106 -0
- package/hooks/scripts/__tests__/code-check-memory-write.test.js +81 -0
- package/hooks/scripts/__tests__/step-counter.test.js +21 -0
- package/hooks/scripts/auto-format.js +2 -11
- package/hooks/scripts/auto-test.js +2 -11
- package/hooks/scripts/clone-extract.js +388 -38
- package/hooks/scripts/clone-merge-responsive.js +184 -0
- package/hooks/scripts/clone-spec.js +33 -8
- package/hooks/scripts/clone-validate.js +15 -9
- package/hooks/scripts/code-check.js +27 -55
- package/hooks/scripts/lib/glob.js +32 -0
- package/hooks/scripts/lib/hook-context.js +19 -2
- package/hooks/scripts/post-edit.js +2 -3
- package/hooks/scripts/prompt-dispatcher.js +1 -1
- package/hooks/scripts/scope-guard.js +3 -42
- package/hooks/scripts/sentinel-guard.js +5 -20
- package/hooks/scripts/session-start.js +2 -2
- package/hooks/scripts/step-counter.js +35 -57
- package/package.json +6 -4
- package/skills/clone/SKILL.md +74 -203
- package/skills/clone/references/capture-rules.md +48 -0
- package/skills/clone/references/legal-and-error-recovery.md +40 -0
- package/skills/clone/references/refine-rules.md +61 -0
- package/skills/clone/references/scaffold-phases.md +59 -0
- package/skills/clone/references/setup-and-layout.md +30 -0
- package/skills/docs/SKILL.md +39 -4
- package/skills/docs/references/api-docs-changelog.md +34 -0
- package/skills/docs/references/codemaps-output.md +23 -0
- package/{agents/diagrammer.md → skills/docs/references/diagram-spec.md} +2 -15
- package/skills/exec-plan/SKILL.md +1 -1
- package/skills/exec-plan/templates/plan.md +1 -1
- package/skills/handoff/SKILL.md +3 -3
- package/skills/handoff/templates/handoff.md +1 -1
- package/skills/vibe/SKILL.md +3 -2
- package/skills/vibe.analyze/SKILL.md +12 -249
- package/skills/vibe.analyze/references/output-templates.md +188 -0
- package/skills/vibe.analyze/references/quality-gate.md +93 -0
- package/skills/vibe.clone/SKILL.md +52 -19
- package/skills/vibe.continue/SKILL.md +32 -0
- package/skills/vibe.design/SKILL.md +23 -1
- package/skills/vibe.design/references/ui-preview.md +20 -0
- package/skills/vibe.docs/SKILL.md +4 -2
- package/skills/vibe.figma/SKILL.md +33 -260
- package/skills/vibe.figma/references/branch-phases.md +113 -0
- package/skills/vibe.figma/references/state-schema.md +42 -0
- package/skills/vibe.figma/references/step-algorithms.md +204 -0
- package/skills/vibe.image/SKILL.md +62 -0
- package/skills/vibe.image/references/image-generation-examples.md +39 -0
- package/skills/vibe.reason/SKILL.md +3 -183
- package/skills/vibe.reason/references/output-format-template.md +57 -0
- package/skills/vibe.reason/references/quality-rubrics.md +94 -0
- package/skills/vibe.reason/references/worked-example.md +45 -0
- package/skills/vibe.review/SKILL.md +13 -348
- package/skills/vibe.review/references/boundary-check.md +25 -0
- package/skills/vibe.review/references/output-template.md +74 -0
- package/skills/vibe.review/references/quality-gate.md +84 -0
- package/skills/vibe.review/references/race-mode.md +117 -0
- package/skills/vibe.review/references/worked-examples.md +94 -0
- package/vibe/templates/claudemd-template.md +1 -1
- package/agents/acceptance-tester.md +0 -56
- package/agents/documenter.md +0 -43
- package/agents/figma/figma-engineer.md +0 -76
- package/dist/cli/llm/gemini-commands.d.ts +0 -25
- package/dist/cli/llm/gemini-commands.d.ts.map +0 -1
- package/dist/cli/llm/gemini-commands.js +0 -143
- package/dist/cli/llm/gemini-commands.js.map +0 -1
- package/dist/cli/postinstall/codex-agents.d.ts +0 -24
- package/dist/cli/postinstall/codex-agents.d.ts.map +0 -1
- package/dist/cli/postinstall/codex-agents.js +0 -114
- package/dist/cli/postinstall/codex-agents.js.map +0 -1
- package/dist/cli/postinstall/codex-instruction.d.ts +0 -10
- package/dist/cli/postinstall/codex-instruction.d.ts.map +0 -1
- package/dist/cli/postinstall/codex-instruction.js +0 -56
- package/dist/cli/postinstall/codex-instruction.js.map +0 -1
- package/dist/cli/postinstall/gemini-agents.d.ts +0 -12
- package/dist/cli/postinstall/gemini-agents.d.ts.map +0 -1
- package/dist/cli/postinstall/gemini-agents.js +0 -80
- package/dist/cli/postinstall/gemini-agents.js.map +0 -1
- package/dist/cli/postinstall/gemini-instruction.d.ts +0 -10
- package/dist/cli/postinstall/gemini-instruction.d.ts.map +0 -1
- package/dist/cli/postinstall/gemini-instruction.js +0 -59
- package/dist/cli/postinstall/gemini-instruction.js.map +0 -1
- package/dist/cli/postinstall/index.d.ts +0 -23
- package/dist/cli/postinstall/index.d.ts.map +0 -1
- package/dist/cli/postinstall/index.js +0 -23
- package/dist/cli/postinstall/index.js.map +0 -1
- package/dist/cli/setup/index.d.ts +0 -9
- package/dist/cli/setup/index.d.ts.map +0 -1
- package/dist/cli/setup/index.js +0 -12
- package/dist/cli/setup/index.js.map +0 -1
- package/dist/infra/lib/ContextCompressor.d.ts +0 -104
- package/dist/infra/lib/ContextCompressor.d.ts.map +0 -1
- package/dist/infra/lib/ContextCompressor.js +0 -297
- package/dist/infra/lib/ContextCompressor.js.map +0 -1
- package/dist/infra/lib/ContextCompressor.test.d.ts +0 -2
- package/dist/infra/lib/ContextCompressor.test.d.ts.map +0 -1
- package/dist/infra/lib/ContextCompressor.test.js +0 -25
- package/dist/infra/lib/ContextCompressor.test.js.map +0 -1
- package/dist/infra/lib/ProgressTracker.d.ts +0 -73
- package/dist/infra/lib/ProgressTracker.d.ts.map +0 -1
- package/dist/infra/lib/ProgressTracker.js +0 -267
- package/dist/infra/lib/ProgressTracker.js.map +0 -1
- package/dist/infra/lib/TokenBudgetTracker.d.ts +0 -68
- package/dist/infra/lib/TokenBudgetTracker.d.ts.map +0 -1
- package/dist/infra/lib/TokenBudgetTracker.js +0 -191
- package/dist/infra/lib/TokenBudgetTracker.js.map +0 -1
- package/dist/infra/lib/autonomy/AuditStore.d.ts +0 -63
- package/dist/infra/lib/autonomy/AuditStore.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/AuditStore.js +0 -185
- package/dist/infra/lib/autonomy/AuditStore.js.map +0 -1
- package/dist/infra/lib/autonomy/AutonomyConfig.d.ts +0 -84
- package/dist/infra/lib/autonomy/AutonomyConfig.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/AutonomyConfig.js +0 -49
- package/dist/infra/lib/autonomy/AutonomyConfig.js.map +0 -1
- package/dist/infra/lib/autonomy/AutonomyOrchestrator.d.ts +0 -78
- package/dist/infra/lib/autonomy/AutonomyOrchestrator.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/AutonomyOrchestrator.js +0 -246
- package/dist/infra/lib/autonomy/AutonomyOrchestrator.js.map +0 -1
- package/dist/infra/lib/autonomy/BackgroundMonitor.d.ts +0 -36
- package/dist/infra/lib/autonomy/BackgroundMonitor.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/BackgroundMonitor.js +0 -138
- package/dist/infra/lib/autonomy/BackgroundMonitor.js.map +0 -1
- package/dist/infra/lib/autonomy/CollaborationProtocol.d.ts +0 -56
- package/dist/infra/lib/autonomy/CollaborationProtocol.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/CollaborationProtocol.js +0 -122
- package/dist/infra/lib/autonomy/CollaborationProtocol.js.map +0 -1
- package/dist/infra/lib/autonomy/ConfirmationManager.d.ts +0 -42
- package/dist/infra/lib/autonomy/ConfirmationManager.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/ConfirmationManager.js +0 -200
- package/dist/infra/lib/autonomy/ConfirmationManager.js.map +0 -1
- package/dist/infra/lib/autonomy/ConfirmationStore.d.ts +0 -55
- package/dist/infra/lib/autonomy/ConfirmationStore.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/ConfirmationStore.js +0 -130
- package/dist/infra/lib/autonomy/ConfirmationStore.js.map +0 -1
- package/dist/infra/lib/autonomy/EventBus.d.ts +0 -20
- package/dist/infra/lib/autonomy/EventBus.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/EventBus.js +0 -119
- package/dist/infra/lib/autonomy/EventBus.js.map +0 -1
- package/dist/infra/lib/autonomy/EventOutbox.d.ts +0 -32
- package/dist/infra/lib/autonomy/EventOutbox.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/EventOutbox.js +0 -152
- package/dist/infra/lib/autonomy/EventOutbox.js.map +0 -1
- package/dist/infra/lib/autonomy/NotificationDispatcher.d.ts +0 -24
- package/dist/infra/lib/autonomy/NotificationDispatcher.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/NotificationDispatcher.js +0 -112
- package/dist/infra/lib/autonomy/NotificationDispatcher.js.map +0 -1
- package/dist/infra/lib/autonomy/PolicyEngine.d.ts +0 -76
- package/dist/infra/lib/autonomy/PolicyEngine.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/PolicyEngine.js +0 -208
- package/dist/infra/lib/autonomy/PolicyEngine.js.map +0 -1
- package/dist/infra/lib/autonomy/ProactiveAnalyzer.d.ts +0 -61
- package/dist/infra/lib/autonomy/ProactiveAnalyzer.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/ProactiveAnalyzer.js +0 -236
- package/dist/infra/lib/autonomy/ProactiveAnalyzer.js.map +0 -1
- package/dist/infra/lib/autonomy/RiskClassifier.d.ts +0 -35
- package/dist/infra/lib/autonomy/RiskClassifier.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/RiskClassifier.js +0 -147
- package/dist/infra/lib/autonomy/RiskClassifier.js.map +0 -1
- package/dist/infra/lib/autonomy/SecuritySentinel.d.ts +0 -51
- package/dist/infra/lib/autonomy/SecuritySentinel.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/SecuritySentinel.js +0 -162
- package/dist/infra/lib/autonomy/SecuritySentinel.js.map +0 -1
- package/dist/infra/lib/autonomy/SuggestionStore.d.ts +0 -54
- package/dist/infra/lib/autonomy/SuggestionStore.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/SuggestionStore.js +0 -144
- package/dist/infra/lib/autonomy/SuggestionStore.js.map +0 -1
- package/dist/infra/lib/autonomy/TaskDecomposer.d.ts +0 -38
- package/dist/infra/lib/autonomy/TaskDecomposer.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/TaskDecomposer.js +0 -175
- package/dist/infra/lib/autonomy/TaskDecomposer.js.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/audit-store.test.d.ts +0 -2
- package/dist/infra/lib/autonomy/__tests__/audit-store.test.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/audit-store.test.js +0 -198
- package/dist/infra/lib/autonomy/__tests__/audit-store.test.js.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/event-bus.test.d.ts +0 -2
- package/dist/infra/lib/autonomy/__tests__/event-bus.test.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/event-bus.test.js +0 -225
- package/dist/infra/lib/autonomy/__tests__/event-bus.test.js.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/event-core.test.d.ts +0 -2
- package/dist/infra/lib/autonomy/__tests__/event-core.test.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/event-core.test.js +0 -194
- package/dist/infra/lib/autonomy/__tests__/event-core.test.js.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/governance.test.d.ts +0 -2
- package/dist/infra/lib/autonomy/__tests__/governance.test.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/governance.test.js +0 -540
- package/dist/infra/lib/autonomy/__tests__/governance.test.js.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/integration.test.d.ts +0 -2
- package/dist/infra/lib/autonomy/__tests__/integration.test.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/integration.test.js +0 -480
- package/dist/infra/lib/autonomy/__tests__/integration.test.js.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/proactive.test.d.ts +0 -2
- package/dist/infra/lib/autonomy/__tests__/proactive.test.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/proactive.test.js +0 -410
- package/dist/infra/lib/autonomy/__tests__/proactive.test.js.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/sentinel.test.d.ts +0 -2
- package/dist/infra/lib/autonomy/__tests__/sentinel.test.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/__tests__/sentinel.test.js +0 -486
- package/dist/infra/lib/autonomy/__tests__/sentinel.test.js.map +0 -1
- package/dist/infra/lib/autonomy/index.d.ts +0 -18
- package/dist/infra/lib/autonomy/index.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/index.js +0 -22
- package/dist/infra/lib/autonomy/index.js.map +0 -1
- package/dist/infra/lib/autonomy/schemas.d.ts +0 -317
- package/dist/infra/lib/autonomy/schemas.d.ts.map +0 -1
- package/dist/infra/lib/autonomy/schemas.js +0 -90
- package/dist/infra/lib/autonomy/schemas.js.map +0 -1
- package/dist/infra/lib/claude/index.d.ts +0 -5
- package/dist/infra/lib/claude/index.d.ts.map +0 -1
- package/dist/infra/lib/claude/index.js +0 -5
- package/dist/infra/lib/claude/index.js.map +0 -1
- package/dist/infra/lib/claude/storage.d.ts +0 -12
- package/dist/infra/lib/claude/storage.d.ts.map +0 -1
- package/dist/infra/lib/claude/storage.js +0 -54
- package/dist/infra/lib/claude/storage.js.map +0 -1
- package/dist/infra/lib/gemini/auth.d.ts +0 -18
- package/dist/infra/lib/gemini/auth.d.ts.map +0 -1
- package/dist/infra/lib/gemini/auth.js +0 -32
- package/dist/infra/lib/gemini/auth.js.map +0 -1
- package/dist/infra/lib/gemini/capabilities.d.ts +0 -28
- package/dist/infra/lib/gemini/capabilities.d.ts.map +0 -1
- package/dist/infra/lib/gemini/capabilities.js +0 -178
- package/dist/infra/lib/gemini/capabilities.js.map +0 -1
- package/dist/infra/lib/gemini/chat.d.ts +0 -35
- package/dist/infra/lib/gemini/chat.d.ts.map +0 -1
- package/dist/infra/lib/gemini/chat.js +0 -161
- package/dist/infra/lib/gemini/chat.js.map +0 -1
- package/dist/infra/lib/gemini/completion.d.ts +0 -12
- package/dist/infra/lib/gemini/completion.d.ts.map +0 -1
- package/dist/infra/lib/gemini/completion.js +0 -13
- package/dist/infra/lib/gemini/completion.js.map +0 -1
- package/dist/infra/lib/gemini/constants.d.ts +0 -8
- package/dist/infra/lib/gemini/constants.d.ts.map +0 -1
- package/dist/infra/lib/gemini/constants.js +0 -11
- package/dist/infra/lib/gemini/constants.js.map +0 -1
- package/dist/infra/lib/gemini/index.d.ts +0 -13
- package/dist/infra/lib/gemini/index.d.ts.map +0 -1
- package/dist/infra/lib/gemini/index.js +0 -12
- package/dist/infra/lib/gemini/index.js.map +0 -1
- package/dist/infra/lib/gemini/models.d.ts +0 -11
- package/dist/infra/lib/gemini/models.d.ts.map +0 -1
- package/dist/infra/lib/gemini/models.js +0 -38
- package/dist/infra/lib/gemini/models.js.map +0 -1
- package/dist/infra/lib/gemini/orchestration.d.ts +0 -33
- package/dist/infra/lib/gemini/orchestration.d.ts.map +0 -1
- package/dist/infra/lib/gemini/orchestration.js +0 -62
- package/dist/infra/lib/gemini/orchestration.js.map +0 -1
- package/dist/infra/lib/gemini/types.d.ts +0 -115
- package/dist/infra/lib/gemini/types.d.ts.map +0 -1
- package/dist/infra/lib/gemini/types.js +0 -5
- package/dist/infra/lib/gemini/types.js.map +0 -1
- package/dist/infra/orchestrator/AgentAnnouncer.d.ts +0 -64
- package/dist/infra/orchestrator/AgentAnnouncer.d.ts.map +0 -1
- package/dist/infra/orchestrator/AgentAnnouncer.js +0 -127
- package/dist/infra/orchestrator/AgentAnnouncer.js.map +0 -1
- package/dist/infra/orchestrator/AgentAnnouncer.test.d.ts +0 -5
- package/dist/infra/orchestrator/AgentAnnouncer.test.d.ts.map +0 -1
- package/dist/infra/orchestrator/AgentAnnouncer.test.js +0 -119
- package/dist/infra/orchestrator/AgentAnnouncer.test.js.map +0 -1
- package/dist/infra/orchestrator/AgentExecutor.d.ts +0 -22
- package/dist/infra/orchestrator/AgentExecutor.d.ts.map +0 -1
- package/dist/infra/orchestrator/AgentExecutor.js +0 -272
- package/dist/infra/orchestrator/AgentExecutor.js.map +0 -1
- package/dist/infra/orchestrator/AgentManager.d.ts +0 -72
- package/dist/infra/orchestrator/AgentManager.d.ts.map +0 -1
- package/dist/infra/orchestrator/AgentManager.js +0 -183
- package/dist/infra/orchestrator/AgentManager.js.map +0 -1
- package/dist/infra/orchestrator/AgentManifestCache.d.ts +0 -54
- package/dist/infra/orchestrator/AgentManifestCache.d.ts.map +0 -1
- package/dist/infra/orchestrator/AgentManifestCache.js +0 -191
- package/dist/infra/orchestrator/AgentManifestCache.js.map +0 -1
- package/dist/infra/orchestrator/AgentRegistry.d.ts +0 -76
- package/dist/infra/orchestrator/AgentRegistry.d.ts.map +0 -1
- package/dist/infra/orchestrator/AgentRegistry.js +0 -217
- package/dist/infra/orchestrator/AgentRegistry.js.map +0 -1
- package/dist/infra/orchestrator/AgentRegistry.test.d.ts +0 -5
- package/dist/infra/orchestrator/AgentRegistry.test.d.ts.map +0 -1
- package/dist/infra/orchestrator/AgentRegistry.test.js +0 -122
- package/dist/infra/orchestrator/AgentRegistry.test.js.map +0 -1
- package/dist/infra/orchestrator/BackgroundManager.d.ts +0 -128
- package/dist/infra/orchestrator/BackgroundManager.d.ts.map +0 -1
- package/dist/infra/orchestrator/BackgroundManager.js +0 -620
- package/dist/infra/orchestrator/BackgroundManager.js.map +0 -1
- package/dist/infra/orchestrator/BackgroundManager.test.d.ts +0 -6
- package/dist/infra/orchestrator/BackgroundManager.test.d.ts.map +0 -1
- package/dist/infra/orchestrator/BackgroundManager.test.js +0 -162
- package/dist/infra/orchestrator/BackgroundManager.test.js.map +0 -1
- package/dist/infra/orchestrator/CheckpointManager.d.ts +0 -54
- package/dist/infra/orchestrator/CheckpointManager.d.ts.map +0 -1
- package/dist/infra/orchestrator/CheckpointManager.js +0 -121
- package/dist/infra/orchestrator/CheckpointManager.js.map +0 -1
- package/dist/infra/orchestrator/CodexAgentRuntime.d.ts +0 -12
- package/dist/infra/orchestrator/CodexAgentRuntime.d.ts.map +0 -1
- package/dist/infra/orchestrator/CodexAgentRuntime.js +0 -94
- package/dist/infra/orchestrator/CodexAgentRuntime.js.map +0 -1
- package/dist/infra/orchestrator/CodexAgentRuntime.test.d.ts +0 -2
- package/dist/infra/orchestrator/CodexAgentRuntime.test.d.ts.map +0 -1
- package/dist/infra/orchestrator/CodexAgentRuntime.test.js +0 -37
- package/dist/infra/orchestrator/CodexAgentRuntime.test.js.map +0 -1
- package/dist/infra/orchestrator/LLMCluster.d.ts +0 -82
- package/dist/infra/orchestrator/LLMCluster.d.ts.map +0 -1
- package/dist/infra/orchestrator/LLMCluster.js +0 -146
- package/dist/infra/orchestrator/LLMCluster.js.map +0 -1
- package/dist/infra/orchestrator/MultiLlmResearch.d.ts +0 -31
- package/dist/infra/orchestrator/MultiLlmResearch.d.ts.map +0 -1
- package/dist/infra/orchestrator/MultiLlmResearch.js +0 -160
- package/dist/infra/orchestrator/MultiLlmResearch.js.map +0 -1
- package/dist/infra/orchestrator/PhasePipeline.d.ts +0 -122
- package/dist/infra/orchestrator/PhasePipeline.d.ts.map +0 -1
- package/dist/infra/orchestrator/PhasePipeline.js +0 -385
- package/dist/infra/orchestrator/PhasePipeline.js.map +0 -1
- package/dist/infra/orchestrator/PhaseResultStore.d.ts +0 -39
- package/dist/infra/orchestrator/PhaseResultStore.d.ts.map +0 -1
- package/dist/infra/orchestrator/PhaseResultStore.js +0 -151
- package/dist/infra/orchestrator/PhaseResultStore.js.map +0 -1
- package/dist/infra/orchestrator/SessionStore.d.ts +0 -40
- package/dist/infra/orchestrator/SessionStore.d.ts.map +0 -1
- package/dist/infra/orchestrator/SessionStore.js +0 -116
- package/dist/infra/orchestrator/SessionStore.js.map +0 -1
- package/dist/infra/orchestrator/SmartRouter.d.ts +0 -90
- package/dist/infra/orchestrator/SmartRouter.d.ts.map +0 -1
- package/dist/infra/orchestrator/SmartRouter.js +0 -277
- package/dist/infra/orchestrator/SmartRouter.js.map +0 -1
- package/dist/infra/orchestrator/SmartRouter.test.d.ts +0 -5
- package/dist/infra/orchestrator/SmartRouter.test.d.ts.map +0 -1
- package/dist/infra/orchestrator/SmartRouter.test.js +0 -484
- package/dist/infra/orchestrator/SmartRouter.test.js.map +0 -1
- package/dist/infra/orchestrator/SwarmOrchestrator.d.ts +0 -143
- package/dist/infra/orchestrator/SwarmOrchestrator.d.ts.map +0 -1
- package/dist/infra/orchestrator/SwarmOrchestrator.js +0 -378
- package/dist/infra/orchestrator/SwarmOrchestrator.js.map +0 -1
- package/dist/infra/orchestrator/SwarmOrchestrator.test.d.ts +0 -5
- package/dist/infra/orchestrator/SwarmOrchestrator.test.d.ts.map +0 -1
- package/dist/infra/orchestrator/SwarmOrchestrator.test.js +0 -95
- package/dist/infra/orchestrator/SwarmOrchestrator.test.js.map +0 -1
- package/dist/infra/orchestrator/agentDiscovery.d.ts +0 -26
- package/dist/infra/orchestrator/agentDiscovery.d.ts.map +0 -1
- package/dist/infra/orchestrator/agentDiscovery.js +0 -175
- package/dist/infra/orchestrator/agentDiscovery.js.map +0 -1
- package/dist/infra/orchestrator/backgroundAgent.d.ts +0 -9
- package/dist/infra/orchestrator/backgroundAgent.d.ts.map +0 -1
- package/dist/infra/orchestrator/backgroundAgent.js +0 -10
- package/dist/infra/orchestrator/backgroundAgent.js.map +0 -1
- package/dist/infra/orchestrator/index.d.ts +0 -207
- package/dist/infra/orchestrator/index.d.ts.map +0 -1
- package/dist/infra/orchestrator/index.js +0 -362
- package/dist/infra/orchestrator/index.js.map +0 -1
- package/dist/infra/orchestrator/orchestrator.d.ts +0 -60
- package/dist/infra/orchestrator/orchestrator.d.ts.map +0 -1
- package/dist/infra/orchestrator/orchestrator.js +0 -214
- package/dist/infra/orchestrator/orchestrator.js.map +0 -1
- package/dist/infra/orchestrator/parallelResearch.d.ts +0 -27
- package/dist/infra/orchestrator/parallelResearch.d.ts.map +0 -1
- package/dist/infra/orchestrator/parallelResearch.js +0 -285
- package/dist/infra/orchestrator/parallelResearch.js.map +0 -1
- package/dist/infra/orchestrator/types.d.ts +0 -205
- package/dist/infra/orchestrator/types.d.ts.map +0 -1
- package/dist/infra/orchestrator/types.js +0 -87
- package/dist/infra/orchestrator/types.js.map +0 -1
- package/dist/infra/orchestrator/types.test.d.ts +0 -2
- package/dist/infra/orchestrator/types.test.d.ts.map +0 -1
- package/dist/infra/orchestrator/types.test.js +0 -57
- package/dist/infra/orchestrator/types.test.js.map +0 -1
- package/dist/tools/semantic/analyzeDependencyGraph.d.ts +0 -12
- package/dist/tools/semantic/analyzeDependencyGraph.d.ts.map +0 -1
- package/dist/tools/semantic/analyzeDependencyGraph.js +0 -359
- package/dist/tools/semantic/analyzeDependencyGraph.js.map +0 -1
- package/dist/tools/semantic/astGrep.d.ts +0 -25
- package/dist/tools/semantic/astGrep.d.ts.map +0 -1
- package/dist/tools/semantic/astGrep.js +0 -324
- package/dist/tools/semantic/astGrep.js.map +0 -1
- package/dist/tools/semantic/astGrep.test.d.ts +0 -2
- package/dist/tools/semantic/astGrep.test.d.ts.map +0 -1
- package/dist/tools/semantic/astGrep.test.js +0 -74
- package/dist/tools/semantic/astGrep.test.js.map +0 -1
- package/dist/tools/semantic/findReferences.d.ts +0 -9
- package/dist/tools/semantic/findReferences.d.ts.map +0 -1
- package/dist/tools/semantic/findReferences.js +0 -200
- package/dist/tools/semantic/findReferences.js.map +0 -1
- package/dist/tools/semantic/findSymbol.d.ts +0 -8
- package/dist/tools/semantic/findSymbol.d.ts.map +0 -1
- package/dist/tools/semantic/findSymbol.js +0 -204
- package/dist/tools/semantic/findSymbol.js.map +0 -1
- package/dist/tools/semantic/index.d.ts +0 -9
- package/dist/tools/semantic/index.d.ts.map +0 -1
- package/dist/tools/semantic/index.js +0 -11
- package/dist/tools/semantic/index.js.map +0 -1
- package/dist/tools/semantic/lsp.d.ts +0 -68
- package/dist/tools/semantic/lsp.d.ts.map +0 -1
- package/dist/tools/semantic/lsp.js +0 -561
- package/dist/tools/semantic/lsp.js.map +0 -1
- package/dist/tools/spec/e2eTestGenerator.d.ts +0 -61
- package/dist/tools/spec/e2eTestGenerator.d.ts.map +0 -1
- package/dist/tools/spec/e2eTestGenerator.js +0 -255
- package/dist/tools/spec/e2eTestGenerator.js.map +0 -1
- package/dist/tools/spec/specVersioning.d.ts +0 -76
- package/dist/tools/spec/specVersioning.d.ts.map +0 -1
- package/dist/tools/spec/specVersioning.js +0 -236
- package/dist/tools/spec/specVersioning.js.map +0 -1
- package/hooks/scripts/__tests__/.vibe/memories/memories.db +0 -0
- package/hooks/scripts/__tests__/.vibe/memories/memories.db-shm +0 -0
- package/hooks/scripts/__tests__/.vibe/memories/memories.db-wal +0 -0
- package/hooks/scripts/evolution-engine.js +0 -91
- package/hooks/scripts/hud-status.js +0 -321
- package/hooks/scripts/skill-injector.js +0 -83
- package/skills/vibe.utils/SKILL.md +0 -415
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Codex 플러그인 설치
|
|
3
|
-
*
|
|
4
|
-
* Codex v0.117.0+ 플러그인 시스템 대응.
|
|
5
|
-
* agents + skills → ~/.codex/plugins/vibe/ 플러그인 번들로 패키징.
|
|
6
|
-
*
|
|
7
|
-
* 생성 구조:
|
|
8
|
-
* ~/.codex/plugins/vibe/
|
|
9
|
-
* ├── .codex-plugin/plugin.json
|
|
10
|
-
* ├── skills/
|
|
11
|
-
* ├── agents/
|
|
12
|
-
* └── AGENTS.md
|
|
13
|
-
*/
|
|
14
|
-
import path from 'path';
|
|
15
|
-
import fs from 'fs';
|
|
16
|
-
import { ensureDir, removeDirRecursive, copySkillsFiltered, removeLegacySkills } from './fs-utils.js';
|
|
17
|
-
import { GLOBAL_SKILLS, LEGACY_SKILL_DIRS } from './constants.js';
|
|
18
|
-
import { generateCodexAgentsMd } from './codex-instruction.js';
|
|
19
|
-
/**
|
|
20
|
-
* package.json에서 버전 읽기
|
|
21
|
-
*/
|
|
22
|
-
function getPackageVersion(packageRoot) {
|
|
23
|
-
try {
|
|
24
|
-
const pkgPath = path.join(packageRoot, 'package.json');
|
|
25
|
-
const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
|
|
26
|
-
return pkg.version ?? '0.0.0';
|
|
27
|
-
}
|
|
28
|
-
catch {
|
|
29
|
-
return '0.0.0';
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* .codex-plugin/plugin.json 매니페스트 생성
|
|
34
|
-
*/
|
|
35
|
-
function writePluginManifest(pluginDir, version) {
|
|
36
|
-
const manifestDir = path.join(pluginDir, '.codex-plugin');
|
|
37
|
-
ensureDir(manifestDir);
|
|
38
|
-
const manifest = {
|
|
39
|
-
name: 'vibe',
|
|
40
|
-
version,
|
|
41
|
-
description: 'VIBE — Easy vibe coding with minimum quality guaranteed',
|
|
42
|
-
skills: './skills/',
|
|
43
|
-
agents: './agents/',
|
|
44
|
-
};
|
|
45
|
-
fs.writeFileSync(path.join(manifestDir, 'plugin.json'), JSON.stringify(manifest, null, 2) + '\n', 'utf-8');
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* agents/*.md → pluginDir/agents/ 재귀 복사 (YAML frontmatter 제거)
|
|
49
|
-
*/
|
|
50
|
-
function installAgentsToPlugin(agentsSource, pluginAgentsDir) {
|
|
51
|
-
if (!fs.existsSync(agentsSource))
|
|
52
|
-
return 0;
|
|
53
|
-
ensureDir(pluginAgentsDir);
|
|
54
|
-
let installed = 0;
|
|
55
|
-
function processDirectory(srcDir, destDir) {
|
|
56
|
-
ensureDir(destDir);
|
|
57
|
-
const entries = fs.readdirSync(srcDir, { withFileTypes: true });
|
|
58
|
-
for (const entry of entries) {
|
|
59
|
-
const srcPath = path.join(srcDir, entry.name);
|
|
60
|
-
const destPath = path.join(destDir, entry.name);
|
|
61
|
-
if (entry.isDirectory()) {
|
|
62
|
-
processDirectory(srcPath, destPath);
|
|
63
|
-
}
|
|
64
|
-
else if (entry.name.endsWith('.md')) {
|
|
65
|
-
try {
|
|
66
|
-
let content = fs.readFileSync(srcPath, 'utf-8');
|
|
67
|
-
content = content.replace(/\r\n/g, '\n').replace(/\r/g, '\n');
|
|
68
|
-
content = content.replace(/^---\n[\s\S]*?\n---\n/, '');
|
|
69
|
-
fs.writeFileSync(destPath, content.trimStart(), 'utf-8');
|
|
70
|
-
installed++;
|
|
71
|
-
}
|
|
72
|
-
catch {
|
|
73
|
-
// skip failed files
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
processDirectory(agentsSource, pluginAgentsDir);
|
|
79
|
-
return installed;
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Codex 플러그인 설치 (agents + skills + manifest + AGENTS.md)
|
|
83
|
-
*
|
|
84
|
-
* @param agentsSource - agents/ 소스 디렉토리
|
|
85
|
-
* @param skillsSource - skills/ 소스 디렉토리
|
|
86
|
-
* @param codexConfigDir - ~/.codex/ 디렉토리
|
|
87
|
-
* @param packageRoot - 패키지 루트 디렉토리
|
|
88
|
-
*/
|
|
89
|
-
export function installCodexPlugin(agentsSource, skillsSource, codexConfigDir, packageRoot) {
|
|
90
|
-
const pluginDir = path.join(codexConfigDir, 'plugins', 'vibe');
|
|
91
|
-
// 클린 설치
|
|
92
|
-
if (fs.existsSync(pluginDir)) {
|
|
93
|
-
removeDirRecursive(pluginDir);
|
|
94
|
-
}
|
|
95
|
-
ensureDir(pluginDir);
|
|
96
|
-
// 1. 매니페스트 생성
|
|
97
|
-
const version = getPackageVersion(packageRoot);
|
|
98
|
-
writePluginManifest(pluginDir, version);
|
|
99
|
-
// 2. Agents 설치
|
|
100
|
-
const agentCount = installAgentsToPlugin(agentsSource, path.join(pluginDir, 'agents'));
|
|
101
|
-
// 3. Skills 설치
|
|
102
|
-
const pluginSkillsDir = path.join(pluginDir, 'skills');
|
|
103
|
-
if (fs.existsSync(skillsSource)) {
|
|
104
|
-
ensureDir(pluginSkillsDir);
|
|
105
|
-
removeLegacySkills(pluginSkillsDir, LEGACY_SKILL_DIRS);
|
|
106
|
-
copySkillsFiltered(skillsSource, pluginSkillsDir, GLOBAL_SKILLS);
|
|
107
|
-
}
|
|
108
|
-
// 4. AGENTS.md 생성 (플러그인 내부)
|
|
109
|
-
generateCodexAgentsMd(pluginDir, packageRoot);
|
|
110
|
-
console.log(` 📦 Codex plugin: ${agentCount} agents installed → ${pluginDir}`);
|
|
111
|
-
}
|
|
112
|
-
// 레거시 호환 — installCodexAgents 이름으로도 export
|
|
113
|
-
export const installCodexAgents = installCodexPlugin;
|
|
114
|
-
//# sourceMappingURL=codex-agents.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex-agents.js","sourceRoot":"","sources":["../../../src/cli/postinstall/codex-agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Codex CLI 전역 AGENTS.md 생성
|
|
3
|
-
*
|
|
4
|
-
* CLAUDE.md에서 VIBE 섹션을 읽어 Codex AGENTS.md 형식으로 변환
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* 전역 ~/.codex/AGENTS.md 생성
|
|
8
|
-
*/
|
|
9
|
-
export declare function generateCodexAgentsMd(codexDir: string, packageRoot: string): void;
|
|
10
|
-
//# sourceMappingURL=codex-instruction.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex-instruction.d.ts","sourceRoot":"","sources":["../../../src/cli/postinstall/codex-instruction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmDH;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAQjF"}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Codex CLI 전역 AGENTS.md 생성
|
|
3
|
-
*
|
|
4
|
-
* CLAUDE.md에서 VIBE 섹션을 읽어 Codex AGENTS.md 형식으로 변환
|
|
5
|
-
*/
|
|
6
|
-
import path from 'path';
|
|
7
|
-
import fs from 'fs';
|
|
8
|
-
const CORE_START_MARKER = '# VIBE';
|
|
9
|
-
const CORE_END_MARKER = '<!-- VIBE:END -->';
|
|
10
|
-
/**
|
|
11
|
-
* CLAUDE.md에서 VIBE 섹션 추출 (CLI-neutral 공통 내용)
|
|
12
|
-
*/
|
|
13
|
-
function getVibeInstructionContent(packageRoot) {
|
|
14
|
-
const claudeMdPath = path.join(packageRoot, 'CLAUDE.md');
|
|
15
|
-
if (!fs.existsSync(claudeMdPath))
|
|
16
|
-
return '';
|
|
17
|
-
const content = fs.readFileSync(claudeMdPath, 'utf-8').replace(/\r\n/g, '\n');
|
|
18
|
-
const startIdx = content.indexOf(CORE_START_MARKER);
|
|
19
|
-
const endIdx = content.indexOf(CORE_END_MARKER);
|
|
20
|
-
if (startIdx === -1)
|
|
21
|
-
return '';
|
|
22
|
-
const endPos = endIdx !== -1 ? endIdx + CORE_END_MARKER.length : content.length;
|
|
23
|
-
return content.substring(startIdx, endPos);
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* VIBE 내용을 Codex 형식으로 변환
|
|
27
|
-
* - "Claude Code Exclusive" 문구 제거
|
|
28
|
-
* - hooks 관련 섹션 제거 (Codex 미지원)
|
|
29
|
-
* - 경로 참조를 ~/.codex/ 기준으로 변환
|
|
30
|
-
*/
|
|
31
|
-
function adaptForCodex(content) {
|
|
32
|
-
let adapted = content;
|
|
33
|
-
// "Claude Code Exclusive" 문구 제거
|
|
34
|
-
adapted = adapted.replace(/\(Claude Code Exclusive\)/g, '');
|
|
35
|
-
adapted = adapted.replace(/Claude Code Exclusive/g, '');
|
|
36
|
-
// Hooks System 섹션 제거 (Codex 미지원)
|
|
37
|
-
adapted = adapted.replace(/## Hooks System\n[\s\S]*?(?=\n## )/g, '');
|
|
38
|
-
// ~/.claude/ → ~/.codex/ 경로 변환
|
|
39
|
-
adapted = adapted.replace(/~\/\.claude\//g, '~/.codex/');
|
|
40
|
-
adapted = adapted.replace(/\.claude\//g, '.codex/');
|
|
41
|
-
// "Claude Code" → "Codex CLI" 변환 (일반적 참조)
|
|
42
|
-
adapted = adapted.replace(/Claude Code/g, 'Codex CLI');
|
|
43
|
-
return adapted.trim();
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* 전역 ~/.codex/AGENTS.md 생성
|
|
47
|
-
*/
|
|
48
|
-
export function generateCodexAgentsMd(codexDir, packageRoot) {
|
|
49
|
-
const vibeContent = getVibeInstructionContent(packageRoot);
|
|
50
|
-
if (!vibeContent)
|
|
51
|
-
return;
|
|
52
|
-
const codexContent = adaptForCodex(vibeContent);
|
|
53
|
-
const agentsMdPath = path.join(codexDir, 'AGENTS.md');
|
|
54
|
-
fs.writeFileSync(agentsMdPath, codexContent + '\n', 'utf-8');
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=codex-instruction.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex-instruction.js","sourceRoot":"","sources":["../../../src/cli/postinstall/codex-instruction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AACnC,MAAM,eAAe,GAAG,mBAAmB,CAAC;AAE5C;;GAEG;AACH,SAAS,yBAAyB,CAAC,WAAmB;IACpD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO,EAAE,CAAC;IAE5C,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAEhD,IAAI,QAAQ,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAEhF,OAAO,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,OAAe;IACpC,IAAI,OAAO,GAAG,OAAO,CAAC;IAEtB,gCAAgC;IAChC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC5D,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAExD,iCAAiC;IACjC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,qCAAqC,EAAE,EAAE,CAAC,CAAC;IAErE,+BAA+B;IAC/B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;IACzD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAEpD,0CAA0C;IAC1C,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IAEvD,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB,EAAE,WAAmB;IACzE,MAAM,WAAW,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAC3D,IAAI,CAAC,WAAW;QAAE,OAAO;IAEzB,MAAM,YAAY,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAEtD,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AAC/D,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gemini CLI 에이전트 변환 및 설치
|
|
3
|
-
*
|
|
4
|
-
* VIBE 에이전트 마크다운 파일을 Gemini CLI 형식
|
|
5
|
-
* (YAML frontmatter: name, description만) 으로 변환하여 ~/.gemini/agents/에 설치
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Gemini CLI 에이전트 설치
|
|
9
|
-
* agents/ → ~/.gemini/agents/ 재귀 순회하여 변환 후 설치
|
|
10
|
-
*/
|
|
11
|
-
export declare function installGeminiAgents(agentsSource: string, geminiAgentsDir: string): void;
|
|
12
|
-
//# sourceMappingURL=gemini-agents.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-agents.d.ts","sourceRoot":"","sources":["../../../src/cli/postinstall/gemini-agents.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6CH;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI,CAsCvF"}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gemini CLI 에이전트 변환 및 설치
|
|
3
|
-
*
|
|
4
|
-
* VIBE 에이전트 마크다운 파일을 Gemini CLI 형식
|
|
5
|
-
* (YAML frontmatter: name, description만) 으로 변환하여 ~/.gemini/agents/에 설치
|
|
6
|
-
*/
|
|
7
|
-
import path from 'path';
|
|
8
|
-
import fs from 'fs';
|
|
9
|
-
import { ensureDir, removeDirRecursive } from './fs-utils.js';
|
|
10
|
-
/**
|
|
11
|
-
* VIBE 에이전트를 Gemini CLI 형식으로 변환
|
|
12
|
-
* Gemini frontmatter: name, description만 (model/tools/permissionMode 없음)
|
|
13
|
-
*/
|
|
14
|
-
function convertAgentToGemini(content, filename) {
|
|
15
|
-
const normalizedContent = content.replace(/\r\n/g, '\n').replace(/\r/g, '\n');
|
|
16
|
-
const name = path.basename(filename, '.md');
|
|
17
|
-
// 제목 추출
|
|
18
|
-
const titleMatch = normalizedContent.match(/^# (.+)$/m);
|
|
19
|
-
const title = titleMatch ? titleMatch[1].trim() : name;
|
|
20
|
-
// Role 섹션 추출
|
|
21
|
-
const roleMatch = normalizedContent.match(/## Role\s*\n([\s\S]*?)(?=\n## )/);
|
|
22
|
-
const roleLines = roleMatch
|
|
23
|
-
? roleMatch[1]
|
|
24
|
-
.split('\n')
|
|
25
|
-
.filter((line) => line.trim().startsWith('- '))
|
|
26
|
-
.map((line) => line.trim().replace(/^- /, '').trim())
|
|
27
|
-
.slice(0, 3)
|
|
28
|
-
: [];
|
|
29
|
-
const description = roleLines.length > 0
|
|
30
|
-
? `${title}. ${roleLines.join(', ')}.`
|
|
31
|
-
: title;
|
|
32
|
-
// Gemini YAML frontmatter (name, description만)
|
|
33
|
-
let frontmatter = '---\n';
|
|
34
|
-
frontmatter += `name: ${name}\n`;
|
|
35
|
-
frontmatter += `description: ${description}\n`;
|
|
36
|
-
frontmatter += '---\n';
|
|
37
|
-
// 기존 frontmatter 제거 후 원본 본문 유지
|
|
38
|
-
const bodyContent = normalizedContent.replace(/^---\n[\s\S]*?\n---\n/, '');
|
|
39
|
-
return `${frontmatter}\n${bodyContent}`;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Gemini CLI 에이전트 설치
|
|
43
|
-
* agents/ → ~/.gemini/agents/ 재귀 순회하여 변환 후 설치
|
|
44
|
-
*/
|
|
45
|
-
export function installGeminiAgents(agentsSource, geminiAgentsDir) {
|
|
46
|
-
if (!fs.existsSync(agentsSource)) {
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
// 클린 설치
|
|
50
|
-
if (fs.existsSync(geminiAgentsDir)) {
|
|
51
|
-
removeDirRecursive(geminiAgentsDir);
|
|
52
|
-
}
|
|
53
|
-
ensureDir(geminiAgentsDir);
|
|
54
|
-
let installed = 0;
|
|
55
|
-
function processDirectory(srcDir, destDir) {
|
|
56
|
-
ensureDir(destDir);
|
|
57
|
-
const entries = fs.readdirSync(srcDir, { withFileTypes: true });
|
|
58
|
-
for (const entry of entries) {
|
|
59
|
-
const srcPath = path.join(srcDir, entry.name);
|
|
60
|
-
const destPath = path.join(destDir, entry.name);
|
|
61
|
-
if (entry.isDirectory()) {
|
|
62
|
-
processDirectory(srcPath, destPath);
|
|
63
|
-
}
|
|
64
|
-
else if (entry.name.endsWith('.md')) {
|
|
65
|
-
try {
|
|
66
|
-
const content = fs.readFileSync(srcPath, 'utf-8');
|
|
67
|
-
const geminiContent = convertAgentToGemini(content, entry.name);
|
|
68
|
-
fs.writeFileSync(destPath, geminiContent, 'utf-8');
|
|
69
|
-
installed++;
|
|
70
|
-
}
|
|
71
|
-
catch {
|
|
72
|
-
// skip failed files
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
processDirectory(agentsSource, geminiAgentsDir);
|
|
78
|
-
console.log(` 📦 Gemini agents: ${installed} installed`);
|
|
79
|
-
}
|
|
80
|
-
//# sourceMappingURL=gemini-agents.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-agents.js","sourceRoot":"","sources":["../../../src/cli/postinstall/gemini-agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gemini CLI 전역 GEMINI.md 생성
|
|
3
|
-
*
|
|
4
|
-
* CLAUDE.md에서 VIBE 섹션을 읽어 GEMINI.md 형식으로 변환
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* 전역 ~/.gemini/GEMINI.md 생성
|
|
8
|
-
*/
|
|
9
|
-
export declare function generateGeminiMd(geminiDir: string, packageRoot: string): void;
|
|
10
|
-
//# sourceMappingURL=gemini-instruction.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-instruction.d.ts","sourceRoot":"","sources":["../../../src/cli/postinstall/gemini-instruction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAsDH;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAQ7E"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gemini CLI 전역 GEMINI.md 생성
|
|
3
|
-
*
|
|
4
|
-
* CLAUDE.md에서 VIBE 섹션을 읽어 GEMINI.md 형식으로 변환
|
|
5
|
-
*/
|
|
6
|
-
import path from 'path';
|
|
7
|
-
import fs from 'fs';
|
|
8
|
-
const CORE_START_MARKER = '# VIBE';
|
|
9
|
-
const CORE_END_MARKER = '<!-- VIBE:END -->';
|
|
10
|
-
/**
|
|
11
|
-
* CLAUDE.md에서 VIBE 섹션 추출 (CLI-neutral 공통 내용)
|
|
12
|
-
*/
|
|
13
|
-
function getVibeInstructionContent(packageRoot) {
|
|
14
|
-
const claudeMdPath = path.join(packageRoot, 'CLAUDE.md');
|
|
15
|
-
if (!fs.existsSync(claudeMdPath))
|
|
16
|
-
return '';
|
|
17
|
-
const content = fs.readFileSync(claudeMdPath, 'utf-8').replace(/\r\n/g, '\n');
|
|
18
|
-
const startIdx = content.indexOf(CORE_START_MARKER);
|
|
19
|
-
const endIdx = content.indexOf(CORE_END_MARKER);
|
|
20
|
-
if (startIdx === -1)
|
|
21
|
-
return '';
|
|
22
|
-
const endPos = endIdx !== -1 ? endIdx + CORE_END_MARKER.length : content.length;
|
|
23
|
-
return content.substring(startIdx, endPos);
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* VIBE 내용을 Gemini CLI 형식으로 변환
|
|
27
|
-
* - "Claude Code Exclusive" 문구 제거
|
|
28
|
-
* - hooks 이벤트 이름을 Gemini 형식으로 변환
|
|
29
|
-
* - 경로 참조를 ~/.gemini/ 기준으로 변환
|
|
30
|
-
*/
|
|
31
|
-
function adaptForGemini(content) {
|
|
32
|
-
let adapted = content;
|
|
33
|
-
// "Claude Code Exclusive" 문구 제거
|
|
34
|
-
adapted = adapted.replace(/\(Claude Code Exclusive\)/g, '');
|
|
35
|
-
adapted = adapted.replace(/Claude Code Exclusive/g, '');
|
|
36
|
-
// Hooks 이벤트 이름 변환 (Claude → Gemini)
|
|
37
|
-
adapted = adapted.replace(/PreToolUse/g, 'BeforeTool');
|
|
38
|
-
adapted = adapted.replace(/PostToolUse/g, 'AfterTool');
|
|
39
|
-
adapted = adapted.replace(/UserPromptSubmit/g, 'BeforeAgent');
|
|
40
|
-
adapted = adapted.replace(/\bStop\b/g, 'SessionEnd');
|
|
41
|
-
// ~/.claude/ → ~/.gemini/ 경로 변환
|
|
42
|
-
adapted = adapted.replace(/~\/\.claude\//g, '~/.gemini/');
|
|
43
|
-
adapted = adapted.replace(/\.claude\//g, '.gemini/');
|
|
44
|
-
// "Claude Code" → "Gemini CLI" 변환 (일반적 참조)
|
|
45
|
-
adapted = adapted.replace(/Claude Code/g, 'Gemini CLI');
|
|
46
|
-
return adapted.trim();
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* 전역 ~/.gemini/GEMINI.md 생성
|
|
50
|
-
*/
|
|
51
|
-
export function generateGeminiMd(geminiDir, packageRoot) {
|
|
52
|
-
const vibeContent = getVibeInstructionContent(packageRoot);
|
|
53
|
-
if (!vibeContent)
|
|
54
|
-
return;
|
|
55
|
-
const geminiContent = adaptForGemini(vibeContent);
|
|
56
|
-
const geminiMdPath = path.join(geminiDir, 'GEMINI.md');
|
|
57
|
-
fs.writeFileSync(geminiMdPath, geminiContent + '\n', 'utf-8');
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=gemini-instruction.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-instruction.js","sourceRoot":"","sources":["../../../src/cli/postinstall/gemini-instruction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AACnC,MAAM,eAAe,GAAG,mBAAmB,CAAC;AAE5C;;GAEG;AACH,SAAS,yBAAyB,CAAC,WAAmB;IACpD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO,EAAE,CAAC;IAE5C,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAEhD,IAAI,QAAQ,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAEhF,OAAO,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,OAAe;IACrC,IAAI,OAAO,GAAG,OAAO,CAAC;IAEtB,gCAAgC;IAChC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC5D,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAExD,oCAAoC;IACpC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IACvD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IACvD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;IAC9D,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAErD,gCAAgC;IAChC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;IAC1D,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAErD,2CAA2C;IAC3C,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAExD,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB,EAAE,WAAmB;IACrE,MAAM,WAAW,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAC3D,IAAI,CAAC,WAAW;QAAE,OAAO;IAEzB,MAAM,aAAa,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAEvD,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,aAAa,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AAChE,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* postinstall 모듈
|
|
3
|
-
*
|
|
4
|
-
* 관심사별 모듈 분리:
|
|
5
|
-
* - fs-utils: 파일시스템 유틸리티
|
|
6
|
-
* - global-config: 전역 설정 관리
|
|
7
|
-
* - constants: 상수 데이터
|
|
8
|
-
* - inline-skills: 인라인 스킬 시딩
|
|
9
|
-
* - cursor-rules: Cursor 룰 변환/생성
|
|
10
|
-
* - cursor-agents: Cursor 에이전트 변환/설치
|
|
11
|
-
* - claude-agents: Claude Code 네이티브 에이전트 변환/설치
|
|
12
|
-
* - cursor-skills: Cursor 스킬 생성
|
|
13
|
-
* - main: 메인 오케스트레이션
|
|
14
|
-
*/
|
|
15
|
-
export { getCoreConfigDir, replaceTemplatesInDir } from './fs-utils.js';
|
|
16
|
-
export { STACK_TO_LANGUAGE_FILE, GLOBAL_SKILLS, GLOBAL_SKILLS_CORE, GLOBAL_SKILLS_STANDARD, GLOBAL_SKILLS_OPTIONAL, STACK_TO_SKILLS, CAPABILITY_SKILLS, AVAILABLE_CAPABILITIES, resolveLocalSkills, resolveExternalSkills, CONDITIONAL_AGENT_GROUPS, STACK_TO_AGENT_GROUPS, CAPABILITY_AGENT_GROUPS, resolveLocalAgentGroups } from './constants.js';
|
|
17
|
-
export { copySkillsFiltered, applyCodexSkillInvocationPolicies } from './fs-utils.js';
|
|
18
|
-
export { generateCursorRules } from './cursor-rules.js';
|
|
19
|
-
export { installCursorAgents } from './cursor-agents.js';
|
|
20
|
-
export { installClaudeAgents } from './claude-agents.js';
|
|
21
|
-
export { generateCursorSkills } from './cursor-skills.js';
|
|
22
|
-
export { main } from './main.js';
|
|
23
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/postinstall/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,eAAe,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACrV,OAAO,EAAE,kBAAkB,EAAE,iCAAiC,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* postinstall 모듈
|
|
3
|
-
*
|
|
4
|
-
* 관심사별 모듈 분리:
|
|
5
|
-
* - fs-utils: 파일시스템 유틸리티
|
|
6
|
-
* - global-config: 전역 설정 관리
|
|
7
|
-
* - constants: 상수 데이터
|
|
8
|
-
* - inline-skills: 인라인 스킬 시딩
|
|
9
|
-
* - cursor-rules: Cursor 룰 변환/생성
|
|
10
|
-
* - cursor-agents: Cursor 에이전트 변환/설치
|
|
11
|
-
* - claude-agents: Claude Code 네이티브 에이전트 변환/설치
|
|
12
|
-
* - cursor-skills: Cursor 스킬 생성
|
|
13
|
-
* - main: 메인 오케스트레이션
|
|
14
|
-
*/
|
|
15
|
-
export { getCoreConfigDir, replaceTemplatesInDir } from './fs-utils.js';
|
|
16
|
-
export { STACK_TO_LANGUAGE_FILE, GLOBAL_SKILLS, GLOBAL_SKILLS_CORE, GLOBAL_SKILLS_STANDARD, GLOBAL_SKILLS_OPTIONAL, STACK_TO_SKILLS, CAPABILITY_SKILLS, AVAILABLE_CAPABILITIES, resolveLocalSkills, resolveExternalSkills, CONDITIONAL_AGENT_GROUPS, STACK_TO_AGENT_GROUPS, CAPABILITY_AGENT_GROUPS, resolveLocalAgentGroups } from './constants.js';
|
|
17
|
-
export { copySkillsFiltered, applyCodexSkillInvocationPolicies } from './fs-utils.js';
|
|
18
|
-
export { generateCursorRules } from './cursor-rules.js';
|
|
19
|
-
export { installCursorAgents } from './cursor-agents.js';
|
|
20
|
-
export { installClaudeAgents } from './claude-agents.js';
|
|
21
|
-
export { generateCursorSkills } from './cursor-skills.js';
|
|
22
|
-
export { main } from './main.js';
|
|
23
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/postinstall/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,eAAe,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACrV,OAAO,EAAE,kBAAkB,EAAE,iCAAiC,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Setup Module - CLI Setup 기능 모듈화
|
|
3
|
-
*/
|
|
4
|
-
export { detectOsLanguage, getLanguageInstruction, SupportedLanguage } from './LanguageDetector.js';
|
|
5
|
-
export { getCoreConfigDir, installGlobalCorePackage, registerMcpServers } from './GlobalInstaller.js';
|
|
6
|
-
export { updateConstitution, updateRules, installProjectHooks, updateGitignore, updateConfig } from './ProjectSetup.js';
|
|
7
|
-
export { buildCodexHooksConfig, installProjectCodexHooks } from './CodexHooks.js';
|
|
8
|
-
export { migrateLegacyCore, cleanupLegacy, removeLocalAssets, cleanupClaudeConfig, cleanupLegacyMcp } from './LegacyMigration.js';
|
|
9
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/setup/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,YAAY,EACb,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACzB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC"}
|
package/dist/cli/setup/index.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Setup Module - CLI Setup 기능 모듈화
|
|
3
|
-
*/
|
|
4
|
-
// LanguageDetector
|
|
5
|
-
export { detectOsLanguage, getLanguageInstruction } from './LanguageDetector.js';
|
|
6
|
-
// GlobalInstaller
|
|
7
|
-
export { getCoreConfigDir, installGlobalCorePackage, registerMcpServers } from './GlobalInstaller.js';
|
|
8
|
-
// ProjectSetup
|
|
9
|
-
export { updateConstitution, updateRules, installProjectHooks, updateGitignore, updateConfig } from './ProjectSetup.js';
|
|
10
|
-
export { buildCodexHooksConfig, installProjectCodexHooks } from './CodexHooks.js';
|
|
11
|
-
export { migrateLegacyCore, cleanupLegacy, removeLocalAssets, cleanupClaudeConfig, cleanupLegacyMcp } from './LegacyMigration.js';
|
|
12
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/setup/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,mBAAmB;AACnB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EAEvB,MAAM,uBAAuB,CAAC;AAE/B,kBAAkB;AAClB,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAE9B,eAAe;AACf,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,YAAY,EACb,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACzB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC"}
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
export interface CompressionResult {
|
|
2
|
-
compressed: string;
|
|
3
|
-
originalSize: number;
|
|
4
|
-
compressedSize: number;
|
|
5
|
-
compressionRatio: number;
|
|
6
|
-
removedSections: string[];
|
|
7
|
-
retainedSections: string[];
|
|
8
|
-
retentionStats?: {
|
|
9
|
-
codeRetentionPercent: number;
|
|
10
|
-
answerRetentionPercent: number;
|
|
11
|
-
questionRetentionPercent: number;
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
export interface ChunkScore {
|
|
15
|
-
text: string;
|
|
16
|
-
score: number;
|
|
17
|
-
type: 'code' | 'explanation' | 'question' | 'answer' | 'metadata';
|
|
18
|
-
keywords: string[];
|
|
19
|
-
index: number;
|
|
20
|
-
}
|
|
21
|
-
export declare class ContextCompressor {
|
|
22
|
-
private static readonly MAX_CHUNK_SIZE;
|
|
23
|
-
private static readonly DEFAULT_TARGET_TOKENS;
|
|
24
|
-
private static readonly TOKENS_PER_CHAR_ESTIMATE;
|
|
25
|
-
private static readonly MAX_SCORE;
|
|
26
|
-
private static readonly MIN_SCORE;
|
|
27
|
-
private static readonly CODE_KEYWORDS;
|
|
28
|
-
private static readonly IMPORTANT_KEYWORDS;
|
|
29
|
-
/**
|
|
30
|
-
* Compress context by selecting most important chunks
|
|
31
|
-
* @param context - Text content to compress
|
|
32
|
-
* @param targetTokens - Target token count (default: 4000)
|
|
33
|
-
* @returns Compression result with statistics
|
|
34
|
-
*/
|
|
35
|
-
static compress(context: string, targetTokens?: number): CompressionResult;
|
|
36
|
-
/**
|
|
37
|
-
* Calculate retention percentages by type
|
|
38
|
-
*/
|
|
39
|
-
private static calculateRetentionStats;
|
|
40
|
-
/**
|
|
41
|
-
* Split context into manageable chunks
|
|
42
|
-
*/
|
|
43
|
-
private static splitIntoChunks;
|
|
44
|
-
/**
|
|
45
|
-
* Score chunk importance (0-100)
|
|
46
|
-
* @param text - Text chunk to score
|
|
47
|
-
* @param index - Original position of the chunk in the source document
|
|
48
|
-
* @returns Scored chunk with type, keywords, and original index
|
|
49
|
-
*/
|
|
50
|
-
private static scoreChunk;
|
|
51
|
-
/**
|
|
52
|
-
* Detect chunk type based on content
|
|
53
|
-
*/
|
|
54
|
-
private static detectChunkType;
|
|
55
|
-
/**
|
|
56
|
-
* Extract important keywords from text
|
|
57
|
-
*/
|
|
58
|
-
private static extractKeywords;
|
|
59
|
-
/**
|
|
60
|
-
* Calculate base score for chunk
|
|
61
|
-
*/
|
|
62
|
-
private static calculateBaseScore;
|
|
63
|
-
/**
|
|
64
|
-
* Get score based on chunk type
|
|
65
|
-
*/
|
|
66
|
-
private static getTypeScore;
|
|
67
|
-
/**
|
|
68
|
-
* Get score for important keywords
|
|
69
|
-
*/
|
|
70
|
-
private static getKeywordScore;
|
|
71
|
-
/**
|
|
72
|
-
* Get score based on text structure
|
|
73
|
-
*/
|
|
74
|
-
private static getStructureScore;
|
|
75
|
-
/**
|
|
76
|
-
* Summarize removed chunk (one-liner)
|
|
77
|
-
*/
|
|
78
|
-
private static summarizeChunk;
|
|
79
|
-
/**
|
|
80
|
-
* Reconstruct compressed context.
|
|
81
|
-
*
|
|
82
|
-
* Chunks are emitted in their original document order (the caller sorts
|
|
83
|
-
* `selected` by index before calling). We intentionally do NOT regroup by
|
|
84
|
-
* type: reordering by score/type means a small change to the input reshuffles
|
|
85
|
-
* the whole output, destroying the common prefix between successive
|
|
86
|
-
* compactions and forcing a full KV-cache recompute. Preserving order keeps
|
|
87
|
-
* appended content at the tail so the prefix stays stable.
|
|
88
|
-
*/
|
|
89
|
-
private static reconstructContext;
|
|
90
|
-
/**
|
|
91
|
-
* Extract key entities (names, numbers, dates) from context
|
|
92
|
-
*/
|
|
93
|
-
static extractKeyEntities(context: string): {
|
|
94
|
-
names: string[];
|
|
95
|
-
numbers: string[];
|
|
96
|
-
dates: string[];
|
|
97
|
-
files: string[];
|
|
98
|
-
};
|
|
99
|
-
/**
|
|
100
|
-
* Estimate token count (rough approximation)
|
|
101
|
-
*/
|
|
102
|
-
static estimateTokens(text: string): number;
|
|
103
|
-
}
|
|
104
|
-
//# sourceMappingURL=ContextCompressor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ContextCompressor.d.ts","sourceRoot":"","sources":["../../../src/infra/lib/ContextCompressor.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,CAAC,EAAE;QACf,oBAAoB,EAAE,MAAM,CAAC;QAC7B,sBAAsB,EAAE,MAAM,CAAC;QAC/B,wBAAwB,EAAE,MAAM,CAAC;KAClC,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;IAClE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAKnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,iBAAiB;IAG5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAO;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAQ;IAIrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAQ;IACxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAO;IACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAK;IAEtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAGnC;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAGxC;IAEF;;;;;OAKG;WACW,QAAQ,CACpB,OAAO,EAAE,MAAM,EACf,YAAY,GAAE,MAAgD,GAC7D,iBAAiB;IAkFpB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IA2BtC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAuB9B;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAczB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAS9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAU9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAgBjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAW3B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAU9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAkBhC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAS7B;;;;;;;;;OASG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAwBjC;;OAEG;WACW,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG;QACjD,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB;IA4BD;;OAEG;WACW,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAKnD"}
|