cloving 0.3.20 → 1.1.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/{LICENSE.md → LICENSE} +1 -1
- package/README.md +606 -182
- package/dist/src/authority/budgets.d.ts +12 -0
- package/dist/src/authority/budgets.js +42 -0
- package/dist/src/authority/commands.d.ts +7 -0
- package/dist/src/authority/commands.js +271 -0
- package/dist/src/authority/details.d.ts +28 -0
- package/dist/src/authority/details.js +33 -0
- package/dist/src/authority/dispatch-decision.d.ts +40 -0
- package/dist/src/authority/dispatch-decision.js +47 -0
- package/dist/src/authority/effect-requests.d.ts +2 -0
- package/dist/src/authority/effect-requests.js +139 -0
- package/dist/src/authority/effect-results.d.ts +4 -0
- package/dist/src/authority/effect-results.js +236 -0
- package/dist/src/authority/events.d.ts +2 -0
- package/dist/src/authority/events.js +45 -0
- package/dist/src/authority/gate-reduction.d.ts +8 -0
- package/dist/src/authority/gate-reduction.js +109 -0
- package/dist/src/authority/gates.d.ts +48 -0
- package/dist/src/authority/gates.js +77 -0
- package/dist/src/authority/history-state.d.ts +15 -0
- package/dist/src/authority/history-state.js +61 -0
- package/dist/src/authority/history.d.ts +13 -0
- package/dist/src/authority/history.js +37 -0
- package/dist/src/authority/instants.d.ts +3 -0
- package/dist/src/authority/instants.js +38 -0
- package/dist/src/authority/leases.d.ts +15 -0
- package/dist/src/authority/leases.js +113 -0
- package/dist/src/authority/operations.d.ts +101 -0
- package/dist/src/authority/operations.js +75 -0
- package/dist/src/authority/reconciliation.d.ts +29 -0
- package/dist/src/authority/reconciliation.js +156 -0
- package/dist/src/authority/reducer.d.ts +41 -0
- package/dist/src/authority/reducer.js +139 -0
- package/dist/src/authority/reduction-state.d.ts +36 -0
- package/dist/src/authority/reduction-state.js +68 -0
- package/dist/src/authority/reduction.d.ts +6 -0
- package/dist/src/authority/reduction.js +160 -0
- package/dist/src/authority/status-closure.d.ts +4 -0
- package/dist/src/authority/status-closure.js +57 -0
- package/dist/src/authority/status-effects.d.ts +17 -0
- package/dist/src/authority/status-effects.js +43 -0
- package/dist/src/authority/status-input.d.ts +45 -0
- package/dist/src/authority/status-input.js +9 -0
- package/dist/src/authority/status.d.ts +32 -0
- package/dist/src/authority/status.js +256 -0
- package/dist/src/authority/stop-sequence.d.ts +37 -0
- package/dist/src/authority/stop-sequence.js +91 -0
- package/dist/src/authority/transitions.d.ts +63 -0
- package/dist/src/authority/transitions.js +124 -0
- package/dist/src/broker/actor/adapter-calls.d.ts +13 -0
- package/dist/src/broker/actor/adapter-calls.js +34 -0
- package/dist/src/broker/actor/adapter-outcomes.d.ts +28 -0
- package/dist/src/broker/actor/adapter-outcomes.js +80 -0
- package/dist/src/broker/actor/authority-actor.d.ts +25 -0
- package/dist/src/broker/actor/authority-actor.js +169 -0
- package/dist/src/broker/actor/authority-changes.d.ts +31 -0
- package/dist/src/broker/actor/authority-changes.js +46 -0
- package/dist/src/broker/actor/authority-connection.d.ts +15 -0
- package/dist/src/broker/actor/authority-connection.js +44 -0
- package/dist/src/broker/actor/authority-conversion.d.ts +10 -0
- package/dist/src/broker/actor/authority-conversion.js +72 -0
- package/dist/src/broker/actor/authority-delivery.d.ts +13 -0
- package/dist/src/broker/actor/authority-delivery.js +162 -0
- package/dist/src/broker/actor/authority-logger.d.ts +2 -0
- package/dist/src/broker/actor/authority-logger.js +19 -0
- package/dist/src/broker/actor/authority-policy.d.ts +9 -0
- package/dist/src/broker/actor/authority-policy.js +11 -0
- package/dist/src/broker/actor/authority-queries.d.ts +45 -0
- package/dist/src/broker/actor/authority-queries.js +85 -0
- package/dist/src/broker/actor/authority-receipts.d.ts +28 -0
- package/dist/src/broker/actor/authority-receipts.js +84 -0
- package/dist/src/broker/actor/authority-release.d.ts +13 -0
- package/dist/src/broker/actor/authority-release.js +69 -0
- package/dist/src/broker/actor/authority-runtime.d.ts +60 -0
- package/dist/src/broker/actor/authority-runtime.js +204 -0
- package/dist/src/broker/actor/authority-session.d.ts +67 -0
- package/dist/src/broker/actor/authority-session.js +251 -0
- package/dist/src/broker/actor/authority-settings.d.ts +33 -0
- package/dist/src/broker/actor/authority-settings.js +63 -0
- package/dist/src/broker/actor/authority-upgrades.d.ts +16 -0
- package/dist/src/broker/actor/authority-upgrades.js +12 -0
- package/dist/src/broker/actor/authority-watchdog.d.ts +14 -0
- package/dist/src/broker/actor/authority-watchdog.js +41 -0
- package/dist/src/broker/actor/authority.d.ts +14 -0
- package/dist/src/broker/actor/authority.js +115 -0
- package/dist/src/broker/actor/delivery-intents.d.ts +68 -0
- package/dist/src/broker/actor/delivery-intents.js +77 -0
- package/dist/src/broker/actor/delivery-plan.d.ts +2 -0
- package/dist/src/broker/actor/delivery-plan.js +109 -0
- package/dist/src/broker/actor/delivery-results.d.ts +11 -0
- package/dist/src/broker/actor/delivery-results.js +63 -0
- package/dist/src/broker/actor/effect-delivery.d.ts +19 -0
- package/dist/src/broker/actor/effect-delivery.js +118 -0
- package/dist/src/broker/actor/effect-plan.d.ts +41 -0
- package/dist/src/broker/actor/effect-plan.js +173 -0
- package/dist/src/broker/actor/effect-queries.d.ts +27 -0
- package/dist/src/broker/actor/effect-queries.js +80 -0
- package/dist/src/broker/actor/effect-turn.d.ts +25 -0
- package/dist/src/broker/actor/effect-turn.js +84 -0
- package/dist/src/broker/actor/pin-check.d.ts +6 -0
- package/dist/src/broker/actor/pin-check.js +12 -0
- package/dist/src/broker/actor/runtime-parts.d.ts +23 -0
- package/dist/src/broker/actor/runtime-parts.js +34 -0
- package/dist/src/broker/actor/stop-plan.d.ts +20 -0
- package/dist/src/broker/actor/stop-plan.js +46 -0
- package/dist/src/broker/actor/stop-turn.d.ts +17 -0
- package/dist/src/broker/actor/stop-turn.js +42 -0
- package/dist/src/broker/actor/turn-draft.d.ts +31 -0
- package/dist/src/broker/actor/turn-draft.js +138 -0
- package/dist/src/broker/actor/turn-plan.d.ts +17 -0
- package/dist/src/broker/actor/turn-plan.js +136 -0
- package/dist/src/broker/actor/turn-refusals.d.ts +8 -0
- package/dist/src/broker/actor/turn-refusals.js +35 -0
- package/dist/src/broker/actor/turn-staging.d.ts +78 -0
- package/dist/src/broker/actor/turn-staging.js +34 -0
- package/dist/src/broker/actor/turn-state.d.ts +34 -0
- package/dist/src/broker/actor/turn-state.js +208 -0
- package/dist/src/broker/authority-admission.d.ts +21 -0
- package/dist/src/broker/authority-admission.js +70 -0
- package/dist/src/broker/authority-restore.d.ts +30 -0
- package/dist/src/broker/authority-restore.js +165 -0
- package/dist/src/broker/decision-restore.d.ts +16 -0
- package/dist/src/broker/decision-restore.js +158 -0
- package/dist/src/broker/decision-upgrade.d.ts +3 -0
- package/dist/src/broker/decision-upgrade.js +12 -0
- package/dist/src/broker/effect-restore.d.ts +20 -0
- package/dist/src/broker/effect-restore.js +111 -0
- package/dist/src/broker/effect-upgrade.d.ts +3 -0
- package/dist/src/broker/effect-upgrade.js +9 -0
- package/dist/src/broker/operation-digest.d.ts +1 -0
- package/dist/src/broker/operation-digest.js +4 -0
- package/dist/src/broker/socket-address.d.ts +9 -0
- package/dist/src/broker/socket-address.js +14 -0
- package/dist/src/broker/workflow-pin.d.ts +2 -0
- package/dist/src/broker/workflow-pin.js +5 -0
- package/dist/src/chats/analysis-batches.d.ts +24 -0
- package/dist/src/chats/analysis-batches.js +83 -0
- package/dist/src/chats/analysis-contract.d.ts +80 -0
- package/dist/src/chats/analysis-contract.js +16 -0
- package/dist/src/chats/analysis-data.d.ts +3 -0
- package/dist/src/chats/analysis-data.js +85 -0
- package/dist/src/chats/analysis-input.d.ts +12 -0
- package/dist/src/chats/analysis-input.js +83 -0
- package/dist/src/chats/analysis-links.d.ts +2 -0
- package/dist/src/chats/analysis-links.js +25 -0
- package/dist/src/chats/analysis-prompt.d.ts +10 -0
- package/dist/src/chats/analysis-prompt.js +16 -0
- package/dist/src/chats/analysis-proposal.d.ts +2 -0
- package/dist/src/chats/analysis-proposal.js +32 -0
- package/dist/src/chats/analysis-provenance.d.ts +4 -0
- package/dist/src/chats/analysis-provenance.js +99 -0
- package/dist/src/chats/analysis-shape.d.ts +3 -0
- package/dist/src/chats/analysis-shape.js +228 -0
- package/dist/src/chats/analysis.d.ts +3 -0
- package/dist/src/chats/analysis.js +42 -0
- package/dist/src/chats/corpus-input.d.ts +5 -0
- package/dist/src/chats/corpus-input.js +288 -0
- package/dist/src/chats/destination.d.ts +4 -0
- package/dist/src/chats/destination.js +96 -0
- package/dist/src/chats/import.d.ts +15 -0
- package/dist/src/chats/import.js +243 -0
- package/dist/src/chats/input-file.d.ts +3 -0
- package/dist/src/chats/input-file.js +32 -0
- package/dist/src/chats/normalize.d.ts +29 -0
- package/dist/src/chats/normalize.js +155 -0
- package/dist/src/chats/previous-import.d.ts +5 -0
- package/dist/src/chats/previous-import.js +34 -0
- package/dist/src/chats/reader.d.ts +21 -0
- package/dist/src/chats/reader.js +118 -0
- package/dist/src/chats/redact-import.d.ts +14 -0
- package/dist/src/chats/redact-import.js +141 -0
- package/dist/src/chats/redaction.d.ts +41 -0
- package/dist/src/chats/redaction.js +161 -0
- package/dist/src/chats/revision-input.d.ts +3 -0
- package/dist/src/chats/revision-input.js +180 -0
- package/dist/src/chats/revision.d.ts +48 -0
- package/dist/src/chats/revision.js +94 -0
- package/dist/src/chats/selection.d.ts +25 -0
- package/dist/src/chats/selection.js +109 -0
- package/dist/src/chats/source.d.ts +23 -0
- package/dist/src/chats/source.js +135 -0
- package/dist/src/chats/structure.d.ts +57 -0
- package/dist/src/chats/structure.js +216 -0
- package/dist/src/cli/arguments.d.ts +31 -0
- package/dist/src/cli/arguments.js +235 -0
- package/dist/src/cli/client.d.ts +16 -0
- package/dist/src/cli/client.js +159 -0
- package/dist/src/cli/commands.d.ts +17 -0
- package/dist/src/cli/commands.js +271 -0
- package/dist/src/cli/main.d.ts +2 -0
- package/dist/src/cli/main.js +127 -0
- package/dist/src/cli/render.d.ts +10 -0
- package/dist/src/cli/render.js +254 -0
- package/dist/src/cli/runtime-arguments.d.ts +73 -0
- package/dist/src/cli/runtime-arguments.js +248 -0
- package/dist/src/cli/runtime-directory.d.ts +4 -0
- package/dist/src/cli/runtime-directory.js +25 -0
- package/dist/src/cli/toolchain.d.ts +3 -0
- package/dist/src/cli/toolchain.js +74 -0
- package/dist/src/cli/usage-render.d.ts +3 -0
- package/dist/src/cli/usage-render.js +28 -0
- package/dist/src/cli/usage.d.ts +5 -0
- package/dist/src/cli/usage.js +156 -0
- package/dist/src/cli/validate.d.ts +38 -0
- package/dist/src/cli/validate.js +116 -0
- package/dist/src/cli/watch-actions.d.ts +10 -0
- package/dist/src/cli/watch-actions.js +58 -0
- package/dist/src/cli/watch-board-view.d.ts +54 -0
- package/dist/src/cli/watch-board-view.js +201 -0
- package/dist/src/cli/watch-board.d.ts +15 -0
- package/dist/src/cli/watch-board.js +179 -0
- package/dist/src/cli/watch-card-client.d.ts +1 -0
- package/dist/src/cli/watch-card-client.js +44 -0
- package/dist/src/cli/watch-card-forms.d.ts +2 -0
- package/dist/src/cli/watch-card-forms.js +33 -0
- package/dist/src/cli/watch-card-reply.d.ts +5 -0
- package/dist/src/cli/watch-card-reply.js +34 -0
- package/dist/src/cli/watch-card-view.d.ts +40 -0
- package/dist/src/cli/watch-card-view.js +86 -0
- package/dist/src/cli/watch-client.d.ts +1 -0
- package/dist/src/cli/watch-client.js +118 -0
- package/dist/src/cli/watch-element.d.ts +11 -0
- package/dist/src/cli/watch-element.js +6 -0
- package/dist/src/cli/watch-model.d.ts +29 -0
- package/dist/src/cli/watch-model.js +278 -0
- package/dist/src/cli/watch-navigation.d.ts +9 -0
- package/dist/src/cli/watch-navigation.js +40 -0
- package/dist/src/cli/watch-page.d.ts +1 -0
- package/dist/src/cli/watch-page.js +258 -0
- package/dist/src/cli/watch-paths.d.ts +2 -0
- package/dist/src/cli/watch-paths.js +52 -0
- package/dist/src/cli/watch-phases.d.ts +7 -0
- package/dist/src/cli/watch-phases.js +148 -0
- package/dist/src/cli/watch-pr-board.d.ts +3 -0
- package/dist/src/cli/watch-pr-board.js +26 -0
- package/dist/src/cli/watch-pr-command.d.ts +15 -0
- package/dist/src/cli/watch-pr-command.js +37 -0
- package/dist/src/cli/watch-pr-identity.d.ts +20 -0
- package/dist/src/cli/watch-pr-identity.js +62 -0
- package/dist/src/cli/watch-pr-observer.d.ts +19 -0
- package/dist/src/cli/watch-pr-observer.js +108 -0
- package/dist/src/cli/watch-pr-settings.d.ts +8 -0
- package/dist/src/cli/watch-pr-settings.js +47 -0
- package/dist/src/cli/watch-reads.d.ts +28 -0
- package/dist/src/cli/watch-reads.js +248 -0
- package/dist/src/cli/watch-render.d.ts +153 -0
- package/dist/src/cli/watch-render.js +102 -0
- package/dist/src/cli/watch-run-input.d.ts +14 -0
- package/dist/src/cli/watch-run-input.js +49 -0
- package/dist/src/cli/watch-server.d.ts +13 -0
- package/dist/src/cli/watch-server.js +214 -0
- package/dist/src/cli/watch-start-view.d.ts +18 -0
- package/dist/src/cli/watch-start-view.js +77 -0
- package/dist/src/cli/watch-stream.d.ts +11 -0
- package/dist/src/cli/watch-stream.js +128 -0
- package/dist/src/cli/watch-turn.d.ts +30 -0
- package/dist/src/cli/watch-turn.js +135 -0
- package/dist/src/cli/watch-usage.d.ts +6 -0
- package/dist/src/cli/watch-usage.js +65 -0
- package/dist/src/cli/watch-view.d.ts +54 -0
- package/dist/src/cli/watch-view.js +267 -0
- package/dist/src/cli.d.ts +2 -0
- package/dist/src/cli.js +104 -0
- package/dist/src/daemon/analysis-launch.d.ts +5 -0
- package/dist/src/daemon/analysis-launch.js +81 -0
- package/dist/src/daemon/analysis-token.d.ts +6 -0
- package/dist/src/daemon/analysis-token.js +88 -0
- package/dist/src/daemon/analysis-worker.d.ts +22 -0
- package/dist/src/daemon/analysis-worker.js +219 -0
- package/dist/src/daemon/chats-files.d.ts +15 -0
- package/dist/src/daemon/chats-files.js +113 -0
- package/dist/src/daemon/chats-worker.d.ts +12 -0
- package/dist/src/daemon/chats-worker.js +200 -0
- package/dist/src/daemon/claude-turn.d.ts +38 -0
- package/dist/src/daemon/claude-turn.js +216 -0
- package/dist/src/daemon/claude-worker.d.ts +29 -0
- package/dist/src/daemon/claude-worker.js +276 -0
- package/dist/src/daemon/codex-stream.d.ts +4 -0
- package/dist/src/daemon/codex-stream.js +129 -0
- package/dist/src/daemon/daemon.d.ts +49 -0
- package/dist/src/daemon/daemon.js +195 -0
- package/dist/src/daemon/delivery-router.d.ts +10 -0
- package/dist/src/daemon/delivery-router.js +34 -0
- package/dist/src/daemon/github-calls.d.ts +29 -0
- package/dist/src/daemon/github-calls.js +127 -0
- package/dist/src/daemon/github-issue-methods.d.ts +3 -0
- package/dist/src/daemon/github-issue-methods.js +99 -0
- package/dist/src/daemon/github-issue-privacy.d.ts +6 -0
- package/dist/src/daemon/github-issue-privacy.js +131 -0
- package/dist/src/daemon/github-merge.d.ts +18 -0
- package/dist/src/daemon/github-merge.js +259 -0
- package/dist/src/daemon/github-methods.d.ts +5 -0
- package/dist/src/daemon/github-methods.js +202 -0
- package/dist/src/daemon/github-operation.d.ts +38 -0
- package/dist/src/daemon/github-operation.js +57 -0
- package/dist/src/daemon/github-ticket-status.d.ts +3 -0
- package/dist/src/daemon/github-ticket-status.js +268 -0
- package/dist/src/daemon/github-worker.d.ts +17 -0
- package/dist/src/daemon/github-worker.js +281 -0
- package/dist/src/daemon/host-environment.d.ts +8 -0
- package/dist/src/daemon/host-environment.js +14 -0
- package/dist/src/daemon/issue-queue.d.ts +10 -0
- package/dist/src/daemon/issue-queue.js +254 -0
- package/dist/src/daemon/notify-message.d.ts +14 -0
- package/dist/src/daemon/notify-message.js +48 -0
- package/dist/src/daemon/notify.d.ts +12 -0
- package/dist/src/daemon/notify.js +161 -0
- package/dist/src/daemon/operation-journal.d.ts +43 -0
- package/dist/src/daemon/operation-journal.js +55 -0
- package/dist/src/daemon/retrying-turn.d.ts +9 -0
- package/dist/src/daemon/retrying-turn.js +185 -0
- package/dist/src/daemon/ticket-registration.d.ts +33 -0
- package/dist/src/daemon/ticket-registration.js +177 -0
- package/dist/src/daemon/ticket-source.d.ts +17 -0
- package/dist/src/daemon/ticket-source.js +36 -0
- package/dist/src/daemon/work-tree.d.ts +26 -0
- package/dist/src/daemon/work-tree.js +206 -0
- package/dist/src/effect-authorization.d.ts +21 -0
- package/dist/src/effect-authorization.js +14 -0
- package/dist/src/execution-pin.d.ts +4 -0
- package/dist/src/execution-pin.js +68 -0
- package/dist/src/host/start-delivery.d.ts +41 -0
- package/dist/src/host/start-delivery.js +68 -0
- package/dist/src/host/step-bridge-host.d.ts +79 -0
- package/dist/src/host/step-bridge-host.js +205 -0
- package/dist/src/host/step-claims.d.ts +31 -0
- package/dist/src/host/step-claims.js +85 -0
- package/dist/src/host/world-host.d.ts +21 -0
- package/dist/src/host/world-host.js +51 -0
- package/dist/src/host/world-reconciliation.d.ts +39 -0
- package/dist/src/host/world-reconciliation.js +81 -0
- package/dist/src/host/world-runs.d.ts +14 -0
- package/dist/src/host/world-runs.js +69 -0
- package/dist/src/operation-identity.d.ts +7 -0
- package/dist/src/operation-identity.js +59 -0
- package/dist/src/protocol.d.ts +35 -0
- package/dist/src/protocol.js +64 -0
- package/dist/src/resource-files.d.ts +1 -0
- package/dist/src/resource-files.js +29 -0
- package/dist/src/service/changes.d.ts +11 -0
- package/dist/src/service/changes.js +32 -0
- package/dist/src/service/decision-handler.d.ts +9 -0
- package/dist/src/service/decision-handler.js +233 -0
- package/dist/src/service/event-handler.d.ts +10 -0
- package/dist/src/service/event-handler.js +70 -0
- package/dist/src/service/expiry.d.ts +13 -0
- package/dist/src/service/expiry.js +53 -0
- package/dist/src/service/gateway.d.ts +21 -0
- package/dist/src/service/gateway.js +120 -0
- package/dist/src/service/registry.d.ts +40 -0
- package/dist/src/service/registry.js +13 -0
- package/dist/src/service/replies.d.ts +26 -0
- package/dist/src/service/replies.js +56 -0
- package/dist/src/service/run-handlers.d.ts +4 -0
- package/dist/src/service/run-handlers.js +263 -0
- package/dist/src/service/service.d.ts +58 -0
- package/dist/src/service/service.js +212 -0
- package/dist/src/service/submission-handler.d.ts +4 -0
- package/dist/src/service/submission-handler.js +206 -0
- package/dist/src/service/transport.d.ts +16 -0
- package/dist/src/service/transport.js +141 -0
- package/dist/src/service/worker-port.d.ts +85 -0
- package/dist/src/service/worker-port.js +126 -0
- package/dist/src/service/worker-totals.d.ts +3 -0
- package/dist/src/service/worker-totals.js +28 -0
- package/dist/src/step-bridge.d.ts +57 -0
- package/dist/src/step-bridge.js +4 -0
- package/dist/src/steps/decision-gate.d.ts +2 -0
- package/dist/src/steps/decision-gate.js +8 -0
- package/dist/src/steps/load-cycle.d.ts +10 -0
- package/dist/src/steps/load-cycle.js +11 -0
- package/dist/src/steps/protected-effect.d.ts +2 -0
- package/dist/src/steps/protected-effect.js +8 -0
- package/dist/src/storage/decision-rows.d.ts +54 -0
- package/dist/src/storage/decision-rows.js +72 -0
- package/dist/src/storage/decision-snapshots.d.ts +17 -0
- package/dist/src/storage/decision-snapshots.js +25 -0
- package/dist/src/storage/domain-changes.d.ts +48 -0
- package/dist/src/storage/domain-changes.js +213 -0
- package/dist/src/storage/domain-rows.d.ts +85 -0
- package/dist/src/storage/domain-rows.js +129 -0
- package/dist/src/storage/domain-schema.d.ts +32 -0
- package/dist/src/storage/domain-schema.js +193 -0
- package/dist/src/storage/effect-changes.d.ts +5 -0
- package/dist/src/storage/effect-changes.js +105 -0
- package/dist/src/storage/effect-rows.d.ts +67 -0
- package/dist/src/storage/effect-rows.js +74 -0
- package/dist/src/storage/effect-schema.d.ts +1 -0
- package/dist/src/storage/effect-schema.js +59 -0
- package/dist/src/storage/statements.d.ts +9 -0
- package/dist/src/storage/statements.js +8 -0
- package/dist/src/submission.d.ts +42 -0
- package/dist/src/submission.js +71 -0
- package/dist/src/ticket-status.d.ts +8 -0
- package/dist/src/ticket-status.js +45 -0
- package/dist/src/token-prices.d.ts +19 -0
- package/dist/src/token-prices.js +76 -0
- package/dist/src/turn-profile.d.ts +13 -0
- package/dist/src/turn-profile.js +100 -0
- package/dist/src/worker-usage.d.ts +22 -0
- package/dist/src/worker-usage.js +44 -0
- package/dist/src/workflow-admission.d.ts +45 -0
- package/dist/src/workflow-admission.js +151 -0
- package/dist/src/workflow-candidate.d.ts +29 -0
- package/dist/src/workflow-candidate.js +59 -0
- package/dist/src/workflow-contracts.d.ts +29 -0
- package/dist/src/workflow-contracts.js +110 -0
- package/dist/src/workflow-declaration.d.ts +11 -0
- package/dist/src/workflow-declaration.js +59 -0
- package/dist/src/workflow-resources.d.ts +8 -0
- package/dist/src/workflow-resources.js +14 -0
- package/dist/src/workflows.d.ts +6 -0
- package/dist/src/workflows.js +4 -0
- package/dist/tools/compile-workflows.d.ts +1 -0
- package/dist/tools/compile-workflows.js +33 -0
- package/dist/tools/self-host-processes.d.ts +10 -0
- package/dist/tools/self-host-processes.js +156 -0
- package/dist/tools/self-host-workflows.d.ts +15 -0
- package/dist/tools/self-host-workflows.js +78 -0
- package/dist/tools/self-host.d.ts +1 -0
- package/dist/tools/self-host.js +261 -0
- package/dist/tools/self-update-host.d.ts +13 -0
- package/dist/tools/self-update-host.js +88 -0
- package/dist/tools/self-update.d.ts +11 -0
- package/dist/tools/self-update.js +177 -0
- package/dist/tools/workflow-manifest.d.ts +3 -0
- package/dist/tools/workflow-manifest.js +34 -0
- package/dist/workflows/analyze-chats.d.ts +10 -0
- package/dist/workflows/analyze-chats.declaration.json +9 -0
- package/dist/workflows/analyze-chats.js +73 -0
- package/dist/workflows/develop-prd.d.ts +7 -0
- package/dist/workflows/develop-prd.js +97 -0
- package/dist/workflows/develop-ticket.d.ts +9 -0
- package/dist/workflows/develop-ticket.js +202 -0
- package/dist/workflows/issue-labels.d.ts +16 -0
- package/dist/workflows/issue-labels.js +70 -0
- package/dist/workflows/ticket-prompts.d.ts +35 -0
- package/dist/workflows/ticket-prompts.js +133 -0
- package/package.json +84 -75
- package/dist/abstract_gpt/index.js +0 -55
- package/dist/cloving_gpt/adapters/Adapter.js +0 -2
- package/dist/cloving_gpt/adapters/azureopenai.js +0 -69
- package/dist/cloving_gpt/adapters/claude.js +0 -128
- package/dist/cloving_gpt/adapters/gemini.js +0 -135
- package/dist/cloving_gpt/adapters/gpt4all.js +0 -29
- package/dist/cloving_gpt/adapters/index.js +0 -2
- package/dist/cloving_gpt/adapters/mistral.js +0 -128
- package/dist/cloving_gpt/adapters/ollama.js +0 -128
- package/dist/cloving_gpt/adapters/openai.js +0 -100
- package/dist/cloving_gpt/index.js +0 -192
- package/dist/commands/analyze.js +0 -47
- package/dist/commands/chat.js +0 -14
- package/dist/commands/check.js +0 -7
- package/dist/commands/commit.js +0 -44
- package/dist/commands/config.js +0 -167
- package/dist/commands/describe.js +0 -235
- package/dist/commands/generate/code.js +0 -21
- package/dist/commands/generate/commit.js +0 -11
- package/dist/commands/generate/context.js +0 -82
- package/dist/commands/generate/docs.js +0 -11
- package/dist/commands/generate/documentation.js +0 -11
- package/dist/commands/generate/fizzbuzz.js +0 -35
- package/dist/commands/generate/init.js +0 -15
- package/dist/commands/generate/review.js +0 -11
- package/dist/commands/generate/sh.js +0 -95
- package/dist/commands/generate/shell.js +0 -11
- package/dist/commands/generate/unit_tests.js +0 -11
- package/dist/commands/init.js +0 -13
- package/dist/commands/models.js +0 -22
- package/dist/commands/project/build.js +0 -88
- package/dist/commands/project/complete.js +0 -12
- package/dist/commands/project/init.js +0 -82
- package/dist/commands/project/plan.js +0 -108
- package/dist/commands/proxy.js +0 -11
- package/dist/commands/review.js +0 -50
- package/dist/commands/tokens.js +0 -75
- package/dist/commands/unit_tests.js +0 -150
- package/dist/commands/update.js +0 -7
- package/dist/file2.js +0 -4
- package/dist/index.js +0 -136
- package/dist/managers/BlockManager.js +0 -120
- package/dist/managers/ChatManager.js +0 -653
- package/dist/managers/ChunkManager.js +0 -32
- package/dist/managers/CodeManager.js +0 -185
- package/dist/managers/CommitManager.js +0 -78
- package/dist/managers/DocsManager.js +0 -88
- package/dist/managers/DocumentationManager.js +0 -114
- package/dist/managers/InitManager.js +0 -230
- package/dist/managers/ProxyManager.js +0 -210
- package/dist/managers/ReviewManager.js +0 -131
- package/dist/managers/ShellManager.js +0 -163
- package/dist/managers/StreamManager.js +0 -308
- package/dist/managers/UnitTestManager.js +0 -243
- package/dist/managers/src/managers/ProxyManager.js +0 -1
- package/dist/newfile.js +0 -2
- package/dist/package.json +0 -86
- package/dist/utils/command_utils.js +0 -384
- package/dist/utils/config_utils.js +0 -249
- package/dist/utils/gitUtils.js +0 -42
- package/dist/utils/git_utils.js +0 -217
- package/dist/utils/modelUtils.js +0 -7
- package/dist/utils/model_utils.js +0 -7
- package/dist/utils/prompt_utils.js +0 -333
- package/dist/utils/prompts/CODEGEN_COULDNT_APPLY.md +0 -5
- package/dist/utils/prompts/CODEGEN_EXAMPLES.md +0 -82
- package/dist/utils/prompts/CODEGEN_INSTRUCTIONS.md +0 -43
- package/dist/utils/prompts/DOCS_INSTRUCTIONS.md +0 -9
- package/dist/utils/prompts/INIT_INSTRUCTIONS.md +0 -132
- package/dist/utils/prompts/REVIEW_INSTRUCTIONS.md +0 -49
- package/dist/utils/prompts/SHELL_INSTRUCTIONS.md +0 -15
- package/dist/utils/prompts/SPECIAL_FILES.md +0 -66
- package/dist/utils/prompts/index.js +0 -27
- package/dist/utils/string_utils.js +0 -505
- package/dist/utils/types.js +0 -2
package/dist/commands/config.js
DELETED
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.config = void 0;
|
|
4
|
-
const config_utils_1 = require("../utils/config_utils");
|
|
5
|
-
const prompt_utils_1 = require("../utils/prompt_utils");
|
|
6
|
-
// Add this type definition at the top of the file
|
|
7
|
-
const prompts_1 = require("@inquirer/prompts");
|
|
8
|
-
/**
|
|
9
|
-
* Configures the AI models by prompting the user for various settings.
|
|
10
|
-
*
|
|
11
|
-
* @returns {Promise<void>} A promise that resolves when the configuration is complete.
|
|
12
|
-
*/
|
|
13
|
-
const config = async () => {
|
|
14
|
-
let currentConfig = (0, config_utils_1.getConfig)({});
|
|
15
|
-
// Ensure models are initialized properly
|
|
16
|
-
if (!currentConfig.models) {
|
|
17
|
-
currentConfig.models = {};
|
|
18
|
-
}
|
|
19
|
-
const models = await (0, prompt_utils_1.fetchModels)();
|
|
20
|
-
if (models.length === 0) {
|
|
21
|
-
console.error('No models available.');
|
|
22
|
-
throw new Error('No models available');
|
|
23
|
-
}
|
|
24
|
-
let continueConfig = true;
|
|
25
|
-
while (continueConfig) {
|
|
26
|
-
const providers = [...new Set(models.map((model) => model.split(':')[0]))];
|
|
27
|
-
/**
|
|
28
|
-
* Prompts the user to select a provider from the available models.
|
|
29
|
-
*/
|
|
30
|
-
const selectedProvider = await (0, prompts_1.select)({
|
|
31
|
-
message: 'Select a provider:',
|
|
32
|
-
choices: providers.map((provider) => ({ name: provider, value: provider })),
|
|
33
|
-
});
|
|
34
|
-
const providerModels = models.filter((model) => model.startsWith(selectedProvider));
|
|
35
|
-
const modelCategories = [...new Set(providerModels.map((model) => model.split(':')[1]))];
|
|
36
|
-
/**
|
|
37
|
-
* Prompts the user to select a category from the selected provider's models.
|
|
38
|
-
*/
|
|
39
|
-
const selectedCategory = await (0, prompts_1.select)({
|
|
40
|
-
message: 'Select a category:',
|
|
41
|
-
choices: modelCategories.map((category) => ({ name: category, value: category })),
|
|
42
|
-
});
|
|
43
|
-
const specificModels = providerModels.filter((model) => model.split(':')[1] === selectedCategory);
|
|
44
|
-
/**
|
|
45
|
-
* Prompts the user to select a specific model from the selected category.
|
|
46
|
-
*/
|
|
47
|
-
const modelIndex = await (0, prompts_1.select)({
|
|
48
|
-
message: "Select an AI model you'd like to use:",
|
|
49
|
-
choices: specificModels.map((model, index) => ({ name: model, value: index })),
|
|
50
|
-
pageSize: specificModels.length,
|
|
51
|
-
});
|
|
52
|
-
const selectedModel = specificModels[modelIndex];
|
|
53
|
-
/**
|
|
54
|
-
* Prompts the user to enter the API key for the selected model.
|
|
55
|
-
*/
|
|
56
|
-
const apiKey = await (0, prompts_1.input)({
|
|
57
|
-
message: `Enter your API key for ${selectedModel}: `,
|
|
58
|
-
});
|
|
59
|
-
const [provider, ...modelParts] = selectedModel?.split(':') || [];
|
|
60
|
-
const model = modelParts.join(':');
|
|
61
|
-
if (!currentConfig.models[provider]) {
|
|
62
|
-
currentConfig.models[provider] = {};
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Prompts the user to set the selected model as the primary model.
|
|
66
|
-
*/
|
|
67
|
-
const primary = await (0, prompts_1.confirm)({
|
|
68
|
-
message: 'Set this model as the primary? Primary models are used by default if your prompt fits within its context window. You can configure backup models for larger prompts.',
|
|
69
|
-
default: true,
|
|
70
|
-
});
|
|
71
|
-
/**
|
|
72
|
-
* Prompts the user to enter the priority for the selected model.
|
|
73
|
-
*
|
|
74
|
-
* @returns {string} The priority value as a string.
|
|
75
|
-
*/
|
|
76
|
-
const priority = await (0, prompts_1.input)({
|
|
77
|
-
message: 'Enter the priority for this model (0-100). Higher priority AI APIs are chosen as long as the prompt fits its context window:',
|
|
78
|
-
default: primary ? '100' : '0',
|
|
79
|
-
validate: (input) => {
|
|
80
|
-
const num = parseInt(input, 10);
|
|
81
|
-
if (isNaN(num) || num < 0 || num > 100) {
|
|
82
|
-
return 'Please enter a valid number between 0 and 100.';
|
|
83
|
-
}
|
|
84
|
-
return true;
|
|
85
|
-
},
|
|
86
|
-
});
|
|
87
|
-
/**
|
|
88
|
-
* Prompts the user to decide if they want to review all prompts before they are sent to the selected model.
|
|
89
|
-
*/
|
|
90
|
-
const review = await (0, prompts_1.confirm)({
|
|
91
|
-
message: `Do you want to review all prompts before they are sent to ${selectedModel}?`,
|
|
92
|
-
default: false,
|
|
93
|
-
});
|
|
94
|
-
/**
|
|
95
|
-
* Prompts the user to decide if they trust the selected model with sensitive information.
|
|
96
|
-
*/
|
|
97
|
-
const trust = await (0, prompts_1.confirm)({
|
|
98
|
-
message: `Do you trust ${selectedModel} with sensitive information?`,
|
|
99
|
-
default: true,
|
|
100
|
-
});
|
|
101
|
-
/**
|
|
102
|
-
* Prompts the user to enter the temperature setting for the selected model.
|
|
103
|
-
*
|
|
104
|
-
* @returns {string} The temperature value as a string.
|
|
105
|
-
*/
|
|
106
|
-
const temperature = await (0, prompts_1.input)({
|
|
107
|
-
message: `Enter the temperature for ${selectedModel} (0.0 - 1.0): [0.2]`,
|
|
108
|
-
default: '0.2',
|
|
109
|
-
validate: (value) => {
|
|
110
|
-
const num = parseFloat(value);
|
|
111
|
-
if (isNaN(num) || num < 0 || num > 1) {
|
|
112
|
-
return 'Please enter a valid number between 0.0 and 1.0.';
|
|
113
|
-
}
|
|
114
|
-
return true;
|
|
115
|
-
},
|
|
116
|
-
});
|
|
117
|
-
const parsedTemperature = parseFloat(temperature);
|
|
118
|
-
/**
|
|
119
|
-
* Constructs the model configuration object.
|
|
120
|
-
*/
|
|
121
|
-
let modelConfig = {
|
|
122
|
-
apiKey,
|
|
123
|
-
primary,
|
|
124
|
-
priority: parseInt(priority, 10),
|
|
125
|
-
silent: !review,
|
|
126
|
-
trust,
|
|
127
|
-
temperature: parsedTemperature,
|
|
128
|
-
};
|
|
129
|
-
if (provider === 'azureopenai') {
|
|
130
|
-
/**
|
|
131
|
-
* Prompts the user to enter the Azure OpenAI endpoint URL.
|
|
132
|
-
*/
|
|
133
|
-
const endpoint = await (0, prompts_1.input)({
|
|
134
|
-
message: 'Enter the Azure OpenAI endpoint URL:',
|
|
135
|
-
validate: (value) => {
|
|
136
|
-
if (!value.startsWith('https://')) {
|
|
137
|
-
return 'Please enter a valid HTTPS URL';
|
|
138
|
-
}
|
|
139
|
-
return true;
|
|
140
|
-
},
|
|
141
|
-
});
|
|
142
|
-
modelConfig.endpoint = endpoint;
|
|
143
|
-
}
|
|
144
|
-
currentConfig.models[provider][model] = modelConfig;
|
|
145
|
-
if (primary) {
|
|
146
|
-
// Ensure only one primary model
|
|
147
|
-
for (const p in currentConfig.models) {
|
|
148
|
-
for (const m in currentConfig.models[p]) {
|
|
149
|
-
if (p !== provider || m !== model) {
|
|
150
|
-
currentConfig.models[p][m].primary = false;
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
/**
|
|
156
|
-
* Prompts the user to decide if they want to configure another model.
|
|
157
|
-
*/
|
|
158
|
-
const anotherModel = await (0, prompts_1.confirm)({
|
|
159
|
-
message: 'Do you want to configure another model?',
|
|
160
|
-
default: true,
|
|
161
|
-
});
|
|
162
|
-
continueConfig = anotherModel;
|
|
163
|
-
}
|
|
164
|
-
(0, config_utils_1.saveConfig)(currentConfig);
|
|
165
|
-
};
|
|
166
|
-
exports.config = config;
|
|
167
|
-
exports.default = exports.config;
|
|
@@ -1,235 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.describe = void 0;
|
|
7
|
-
const fs_1 = __importDefault(require("fs"));
|
|
8
|
-
const os_1 = __importDefault(require("os"));
|
|
9
|
-
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const child_process_1 = require("child_process");
|
|
11
|
-
const string_utils_1 = require("../utils/string_utils");
|
|
12
|
-
const cloving_gpt_1 = __importDefault(require("../cloving_gpt"));
|
|
13
|
-
const readline_1 = __importDefault(require("readline"));
|
|
14
|
-
const ignore_1 = __importDefault(require("ignore"));
|
|
15
|
-
// List of special files to check
|
|
16
|
-
const specialFiles = [
|
|
17
|
-
'package.json',
|
|
18
|
-
'Gemfile',
|
|
19
|
-
'requirements.txt',
|
|
20
|
-
'Pipfile',
|
|
21
|
-
'pyproject.toml',
|
|
22
|
-
'pom.xml',
|
|
23
|
-
'build.gradle',
|
|
24
|
-
'.csproj',
|
|
25
|
-
'packages.config',
|
|
26
|
-
'composer.json',
|
|
27
|
-
'CMakeLists.txt',
|
|
28
|
-
'conanfile.txt',
|
|
29
|
-
'conanfile.py',
|
|
30
|
-
'go.mod',
|
|
31
|
-
'Cargo.toml',
|
|
32
|
-
'Package.swift',
|
|
33
|
-
'build.gradle.kts',
|
|
34
|
-
'Podfile',
|
|
35
|
-
'Cartfile',
|
|
36
|
-
'cpanfile',
|
|
37
|
-
'DESCRIPTION',
|
|
38
|
-
'mix.exs',
|
|
39
|
-
'build.sbt',
|
|
40
|
-
'pubspec.yaml',
|
|
41
|
-
'stack.yaml',
|
|
42
|
-
'cabal.project',
|
|
43
|
-
'Project.toml',
|
|
44
|
-
'rockspec',
|
|
45
|
-
'rebar.config',
|
|
46
|
-
'project.clj'
|
|
47
|
-
];
|
|
48
|
-
const runCommand = (command, args) => {
|
|
49
|
-
return new Promise((resolve, reject) => {
|
|
50
|
-
const process = (0, child_process_1.spawn)(command, args);
|
|
51
|
-
const output = [];
|
|
52
|
-
process.stdout.on('data', (data) => {
|
|
53
|
-
output.push(data.toString());
|
|
54
|
-
});
|
|
55
|
-
process.stderr.on('data', (data) => {
|
|
56
|
-
console.error(`stderr: ${data}`);
|
|
57
|
-
});
|
|
58
|
-
process.on('close', (code) => {
|
|
59
|
-
if (code !== 0) {
|
|
60
|
-
reject(new Error(`${command} process exited with code ${code}`));
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
resolve(output.join('').trim().split('\n'));
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
};
|
|
68
|
-
const generateFileList = async () => {
|
|
69
|
-
try {
|
|
70
|
-
const lsOutput = await runCommand('ls', []);
|
|
71
|
-
const findOutput = await runCommand('find', ['.']);
|
|
72
|
-
const cleanedFindOutput = findOutput.map(file => file.startsWith('./') ? file.slice(2) : file);
|
|
73
|
-
const files = [...lsOutput, ...cleanedFindOutput];
|
|
74
|
-
const uniqueFiles = Array.from(new Set(files));
|
|
75
|
-
return uniqueFiles.filter(file => file && !file.includes('.git') && !file.includes('node_modules') && !file.includes('tmp'));
|
|
76
|
-
}
|
|
77
|
-
catch (error) {
|
|
78
|
-
console.error('Error generating file list:', error.message);
|
|
79
|
-
return [];
|
|
80
|
-
}
|
|
81
|
-
};
|
|
82
|
-
const collectSpecialFileContents = () => {
|
|
83
|
-
const specialFileContents = {};
|
|
84
|
-
for (const file of specialFiles) {
|
|
85
|
-
if (fs_1.default.existsSync(file)) {
|
|
86
|
-
try {
|
|
87
|
-
const content = fs_1.default.readFileSync(file, 'utf-8');
|
|
88
|
-
specialFileContents[file] = file.endsWith('.json') ? JSON.parse(content) : content;
|
|
89
|
-
}
|
|
90
|
-
catch (error) {
|
|
91
|
-
specialFileContents[file] = fs_1.default.readFileSync(file, 'utf-8');
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
return specialFileContents;
|
|
96
|
-
};
|
|
97
|
-
// Main function for the describe command
|
|
98
|
-
const describe = async () => {
|
|
99
|
-
// Generate a temporary file path
|
|
100
|
-
const tempFilePath = path_1.default.join(os_1.default.tmpdir(), `describe_${Date.now()}.tmp`);
|
|
101
|
-
try {
|
|
102
|
-
// Read .gitignore and create ignore instance
|
|
103
|
-
const gitignorePath = path_1.default.join(process.cwd(), '.gitignore');
|
|
104
|
-
const ig = (0, ignore_1.default)();
|
|
105
|
-
if (fs_1.default.existsSync(gitignorePath)) {
|
|
106
|
-
const gitignoreContent = fs_1.default.readFileSync(gitignorePath, 'utf-8');
|
|
107
|
-
ig.add(gitignoreContent);
|
|
108
|
-
}
|
|
109
|
-
// Generate the file list excluding .git, node_modules and matching .gitignore patterns
|
|
110
|
-
const fileList = await generateFileList();
|
|
111
|
-
const filteredFileList = fileList.filter(file => {
|
|
112
|
-
try {
|
|
113
|
-
return !ig.ignores(file);
|
|
114
|
-
}
|
|
115
|
-
catch (error) {
|
|
116
|
-
return false;
|
|
117
|
-
}
|
|
118
|
-
});
|
|
119
|
-
// Limit the file list to the first 100 files
|
|
120
|
-
const limitedFileList = filteredFileList.slice(0, 100);
|
|
121
|
-
// Collect the contents of special files
|
|
122
|
-
const specialFileContents = collectSpecialFileContents();
|
|
123
|
-
// Generate the JSON object for the AI chat model
|
|
124
|
-
const projectDetails = {
|
|
125
|
-
files: limitedFileList,
|
|
126
|
-
specialFiles: specialFileContents
|
|
127
|
-
};
|
|
128
|
-
const prompt = `Here is a JSON object describing my project:
|
|
129
|
-
${JSON.stringify(projectDetails, null, 2)}
|
|
130
|
-
|
|
131
|
-
Please return JSON-formatted metadata about the project, including:
|
|
132
|
-
- The programming language(s) used
|
|
133
|
-
- The detected framework(s) (if any)
|
|
134
|
-
- The version of the language(s)
|
|
135
|
-
|
|
136
|
-
Here is an example response:
|
|
137
|
-
|
|
138
|
-
{
|
|
139
|
-
"languages": [
|
|
140
|
-
{
|
|
141
|
-
"name": "TypeScript",
|
|
142
|
-
"version": "~> 5.5.3"
|
|
143
|
-
"primary": true
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
"name": "JavaScript",
|
|
147
|
-
"version": "ES6+"
|
|
148
|
-
}
|
|
149
|
-
],
|
|
150
|
-
"frameworks": [
|
|
151
|
-
{
|
|
152
|
-
"name": "Node.js",
|
|
153
|
-
"type": "Runtime environment",
|
|
154
|
-
"primary": true
|
|
155
|
-
}
|
|
156
|
-
],
|
|
157
|
-
"testingFrameworks": [
|
|
158
|
-
{
|
|
159
|
-
"name": "Jest",
|
|
160
|
-
"type": "Testing framework",
|
|
161
|
-
"version": "29.7.0"
|
|
162
|
-
"directory": "tests"
|
|
163
|
-
},
|
|
164
|
-
],
|
|
165
|
-
"buildTools": [
|
|
166
|
-
{
|
|
167
|
-
"name": "TypeScript Compiler (tsc)",
|
|
168
|
-
"type": "Transpiler"
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
"name": "Vite",
|
|
172
|
-
"type": "Build tool",
|
|
173
|
-
"version": "5.3.3"
|
|
174
|
-
}
|
|
175
|
-
],
|
|
176
|
-
"packageManager": "Yarn",
|
|
177
|
-
"linters": [
|
|
178
|
-
{
|
|
179
|
-
"name": "ESLint",
|
|
180
|
-
"version": "9.6.0"
|
|
181
|
-
}
|
|
182
|
-
],
|
|
183
|
-
"databases": [
|
|
184
|
-
{
|
|
185
|
-
"name": "MongoDB",
|
|
186
|
-
"version": "5.0.3",
|
|
187
|
-
"primary": true
|
|
188
|
-
}
|
|
189
|
-
],
|
|
190
|
-
"projectType": "Command-line tool",
|
|
191
|
-
}`;
|
|
192
|
-
// Estimate and print token count if DEBUG=1
|
|
193
|
-
if (process.env.DEBUG === '1') {
|
|
194
|
-
(0, string_utils_1.estimateTokens)(prompt).then(tokenCount => {
|
|
195
|
-
console.log(`Estimated token count: ${tokenCount}`);
|
|
196
|
-
});
|
|
197
|
-
}
|
|
198
|
-
// Instantiate ClovingGPT and get the AI chat response
|
|
199
|
-
const gpt = new cloving_gpt_1.default();
|
|
200
|
-
const aiChatResponse = await gpt.generateText({ prompt });
|
|
201
|
-
// Write the AI chat response to a temporary file
|
|
202
|
-
fs_1.default.writeFileSync(tempFilePath, aiChatResponse);
|
|
203
|
-
// Extract JSON metadata from the AI response
|
|
204
|
-
const jsonMetadata = (0, string_utils_1.extractJsonMetadata)(aiChatResponse);
|
|
205
|
-
if (jsonMetadata) {
|
|
206
|
-
console.log(jsonMetadata);
|
|
207
|
-
}
|
|
208
|
-
else {
|
|
209
|
-
console.log(aiChatResponse);
|
|
210
|
-
}
|
|
211
|
-
const response = jsonMetadata || aiChatResponse;
|
|
212
|
-
// Clean up
|
|
213
|
-
fs_1.default.unlinkSync(tempFilePath);
|
|
214
|
-
// Ask user if they want to save the result to cloving.json
|
|
215
|
-
const rl = readline_1.default.createInterface({
|
|
216
|
-
input: process.stdin,
|
|
217
|
-
output: process.stdout
|
|
218
|
-
});
|
|
219
|
-
rl.question('Do you want to save this file to cloving.json to improve the context of future cloving requests? [Yn] ', (answer) => {
|
|
220
|
-
rl.close();
|
|
221
|
-
if (answer.toLowerCase() === 'y' || answer.trim() === '') {
|
|
222
|
-
fs_1.default.writeFileSync('cloving.json', response);
|
|
223
|
-
console.log('File saved to cloving.json');
|
|
224
|
-
}
|
|
225
|
-
else {
|
|
226
|
-
console.log('File not saved.');
|
|
227
|
-
}
|
|
228
|
-
});
|
|
229
|
-
}
|
|
230
|
-
catch (error) {
|
|
231
|
-
console.error('Error describing the project:', error.message);
|
|
232
|
-
}
|
|
233
|
-
};
|
|
234
|
-
exports.describe = describe;
|
|
235
|
-
exports.default = exports.describe;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const config_utils_1 = require("../../utils/config_utils");
|
|
7
|
-
const ChatManager_1 = __importDefault(require("../../managers/ChatManager"));
|
|
8
|
-
const CodeManager_1 = __importDefault(require("../../managers/CodeManager"));
|
|
9
|
-
const code = async (options) => {
|
|
10
|
-
if (options.interactive) {
|
|
11
|
-
options.silent = (0, config_utils_1.getConfig)(options).globalSilent || false;
|
|
12
|
-
options.stream = true;
|
|
13
|
-
const chatManager = new ChatManager_1.default(options);
|
|
14
|
-
await chatManager.initialize();
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
const codeManager = new CodeManager_1.default(options);
|
|
18
|
-
await codeManager.initialize();
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
exports.default = code;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const CommitManager_1 = __importDefault(require("../../managers/CommitManager"));
|
|
7
|
-
const commit = async (options) => {
|
|
8
|
-
const commitManager = new CommitManager_1.default(options);
|
|
9
|
-
await commitManager.generateCommit();
|
|
10
|
-
};
|
|
11
|
-
exports.default = commit;
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const cli_highlight_1 = __importDefault(require("cli-highlight"));
|
|
7
|
-
const copy_paste_1 = __importDefault(require("copy-paste"));
|
|
8
|
-
const fs_1 = __importDefault(require("fs"));
|
|
9
|
-
const path_1 = __importDefault(require("path"));
|
|
10
|
-
const prompts_1 = require("@inquirer/prompts");
|
|
11
|
-
const prompt_utils_1 = require("../../utils/prompt_utils");
|
|
12
|
-
const config_utils_1 = require("../../utils/config_utils");
|
|
13
|
-
const generateContextPrompt = (files, contextFiles) => {
|
|
14
|
-
const specialFileContents = (0, prompt_utils_1.collectSpecialFileContents)();
|
|
15
|
-
const specialFiles = Object.keys(specialFileContents)
|
|
16
|
-
.map((file) => `### Contents of ${file}\n\n${JSON.stringify(specialFileContents[file], null, 2)}\n\n`)
|
|
17
|
-
.join('\n');
|
|
18
|
-
const contextFileContents = Object.keys(contextFiles)
|
|
19
|
-
.map((file) => `### Contents of ${file}\n\n${contextFiles[file]}\n\n`)
|
|
20
|
-
.join('\n');
|
|
21
|
-
return `### Description of App
|
|
22
|
-
|
|
23
|
-
${JSON.stringify((0, config_utils_1.getNearestClovingConfig)().config, null, 2)}
|
|
24
|
-
|
|
25
|
-
${specialFiles}
|
|
26
|
-
|
|
27
|
-
${contextFileContents}
|
|
28
|
-
|
|
29
|
-
### Directory structure
|
|
30
|
-
|
|
31
|
-
${files.join('\n')}`;
|
|
32
|
-
};
|
|
33
|
-
const context = async (options) => {
|
|
34
|
-
let { files } = options;
|
|
35
|
-
options.silent = (0, config_utils_1.getConfig)(options).globalSilent || false;
|
|
36
|
-
const allSrcFiles = await (0, config_utils_1.getAllFiles)(options, false);
|
|
37
|
-
let contextFiles = {};
|
|
38
|
-
try {
|
|
39
|
-
if (files) {
|
|
40
|
-
for (const file of files) {
|
|
41
|
-
const filePath = path_1.default.resolve(file);
|
|
42
|
-
if (await fs_1.default.promises
|
|
43
|
-
.stat(filePath)
|
|
44
|
-
.then((stat) => stat.isFile())
|
|
45
|
-
.catch(() => false)) {
|
|
46
|
-
const content = await fs_1.default.promises.readFile(filePath, 'utf-8');
|
|
47
|
-
contextFiles[file] = content;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
let includeMoreFiles = true;
|
|
53
|
-
while (includeMoreFiles) {
|
|
54
|
-
const contextFile = await (0, prompts_1.input)({
|
|
55
|
-
message: 'Enter the relative path of a file or directory you would like to include as context (or press enter to continue):',
|
|
56
|
-
});
|
|
57
|
-
if (contextFile) {
|
|
58
|
-
contextFiles = await (0, prompt_utils_1.addFileOrDirectoryToContext)(contextFile, contextFiles, options);
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
includeMoreFiles = false;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
const contextPrompt = generateContextPrompt(allSrcFiles, contextFiles);
|
|
66
|
-
console.log('\nGenerated Context Prompt:');
|
|
67
|
-
console.log((0, cli_highlight_1.default)(contextPrompt, { language: 'markdown' }));
|
|
68
|
-
const copyToClipboard = await (0, prompts_1.confirm)({
|
|
69
|
-
message: 'Do you want to copy the context prompt to your clipboard?',
|
|
70
|
-
default: true,
|
|
71
|
-
});
|
|
72
|
-
if (copyToClipboard) {
|
|
73
|
-
copy_paste_1.default.copy(contextPrompt, () => {
|
|
74
|
-
console.log('Context prompt copied to clipboard');
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
catch (error) {
|
|
79
|
-
console.error('Could not generate context', error);
|
|
80
|
-
}
|
|
81
|
-
};
|
|
82
|
-
exports.default = context;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const DocsManager_1 = __importDefault(require("../../managers/DocsManager"));
|
|
7
|
-
const docs = async (options) => {
|
|
8
|
-
const docsManager = new DocsManager_1.default(options);
|
|
9
|
-
await docsManager.generateDocs();
|
|
10
|
-
};
|
|
11
|
-
exports.default = docs;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const DocumentationManager_1 = __importDefault(require("../../managers/DocumentationManager"));
|
|
7
|
-
const documentation = async (options) => {
|
|
8
|
-
const documentationManager = new DocumentationManager_1.default(options);
|
|
9
|
-
await documentationManager.generateDocumentation();
|
|
10
|
-
};
|
|
11
|
-
exports.default = documentation;
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.fizzbuzzCommand = void 0;
|
|
7
|
-
const commander_1 = require("commander");
|
|
8
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
9
|
-
const cli_highlight_1 = __importDefault(require("cli-highlight"));
|
|
10
|
-
const copy_paste_1 = __importDefault(require("copy-paste"));
|
|
11
|
-
const fizzbuzz_utils_1 = require("../../utils/fizzbuzz_utils");
|
|
12
|
-
exports.fizzbuzzCommand = new commander_1.Command('fizzbuzz')
|
|
13
|
-
.description('Generate FizzBuzz sequence')
|
|
14
|
-
.action(async () => {
|
|
15
|
-
const answers = await inquirer_1.default.prompt([
|
|
16
|
-
{
|
|
17
|
-
type: 'number',
|
|
18
|
-
name: 'start',
|
|
19
|
-
message: 'Enter the starting number:',
|
|
20
|
-
default: 1,
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
type: 'number',
|
|
24
|
-
name: 'end',
|
|
25
|
-
message: 'Enter the ending number:',
|
|
26
|
-
default: 100,
|
|
27
|
-
},
|
|
28
|
-
]);
|
|
29
|
-
const fizzBuzzArray = (0, fizzbuzz_utils_1.generateFizzBuzzArray)(answers.start, answers.end);
|
|
30
|
-
const output = fizzBuzzArray.join('\n');
|
|
31
|
-
console.log((0, cli_highlight_1.default)(output, { language: 'plaintext', ignoreIllegals: true }));
|
|
32
|
-
copy_paste_1.default.copy(output, () => {
|
|
33
|
-
console.log('FizzBuzz sequence copied to clipboard!');
|
|
34
|
-
});
|
|
35
|
-
});
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const cloving_gpt_1 = __importDefault(require("../../cloving_gpt"));
|
|
7
|
-
const config_utils_1 = require("../../utils/config_utils");
|
|
8
|
-
class InitCommand {
|
|
9
|
-
constructor(options) {
|
|
10
|
-
this.options = options;
|
|
11
|
-
this.chatHistory = [];
|
|
12
|
-
options.silent = (0, config_utils_1.getConfig)(options).globalSilent || false;
|
|
13
|
-
this.gpt = new cloving_gpt_1.default(options);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const ReviewManager_1 = __importDefault(require("../../managers/ReviewManager"));
|
|
7
|
-
const review = async (options) => {
|
|
8
|
-
const reviewManager = new ReviewManager_1.default(options);
|
|
9
|
-
await reviewManager.generateReview();
|
|
10
|
-
};
|
|
11
|
-
exports.default = review;
|