snipara-companion 3.6.22 → 3.6.24
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/CHANGELOG.md +17 -0
- package/README.md +19 -9
- package/dist/index.d.ts +24 -1
- package/dist/index.js +103 -10
- package/docs/FULL_REFERENCE.md +17 -8
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,23 @@ Release notes for `snipara-companion`, newest first.
|
|
|
4
4
|
|
|
5
5
|
## Unreleased
|
|
6
6
|
|
|
7
|
+
## New In 3.6.24 - 2026-09-21
|
|
8
|
+
|
|
9
|
+
- Makes `workflow run` use AUTO mode by default and adds French intent signals
|
|
10
|
+
for LITE, STANDARD, FULL, and ORCHESTRATED routing.
|
|
11
|
+
- Reports an automatic setup card showing when Companion, hosted memory,
|
|
12
|
+
Orchestrator, and policy-gated workers are selected.
|
|
13
|
+
- Keeps standalone `snipara-memory` opt-in and worker execution policy-gated.
|
|
14
|
+
|
|
15
|
+
## New In 3.6.23 - 2026-09-14
|
|
16
|
+
|
|
17
|
+
- Adds opt-in strict closeout for `workflow task-commit` and
|
|
18
|
+
`workflow phase-commit`, requiring passed verification evidence before a
|
|
19
|
+
task commit and requiring all declared phase tasks to be completed or
|
|
20
|
+
skipped before hosted workflow writes.
|
|
21
|
+
- Keeps the default workflow behavior backward-compatible while making strict
|
|
22
|
+
mode suitable for release, security, and multi-agent dogfooding.
|
|
23
|
+
|
|
7
24
|
## New In 3.6.22 - 2026-09-12
|
|
8
25
|
|
|
9
26
|
- Saves explicit session summaries and file checkpoints to the hosted journal,
|
package/README.md
CHANGED
|
@@ -131,13 +131,13 @@ These commands are useful without hosted Snipara:
|
|
|
131
131
|
|
|
132
132
|
Use the exact CLI value after `workflow run --mode`:
|
|
133
133
|
|
|
134
|
-
| CLI value | Guide label | Meaning
|
|
135
|
-
| ------------- | ------------------- |
|
|
136
|
-
| `lite` | LITE | Small, known-scope work with no mandatory hosted context call
|
|
137
|
-
| `standard` | STANDARD | Normal work with context and code-graph follow-up when needed
|
|
138
|
-
| `auto` | AUTO |
|
|
139
|
-
| `full` | FULL | Managed, phased work with durable context and plan support
|
|
140
|
-
| `orchestrate` | FULL + ORCHESTRATED | Explicit deeper orchestration for multi-agent or proof-gate work
|
|
134
|
+
| CLI value | Guide label | Meaning |
|
|
135
|
+
| ------------- | ------------------- | ----------------------------------------------------------------------------------- |
|
|
136
|
+
| `lite` | LITE | Small, known-scope work with no mandatory hosted context call |
|
|
137
|
+
| `standard` | STANDARD | Normal work with context and code-graph follow-up when needed |
|
|
138
|
+
| `auto` | AUTO | Default mode; routes by task intent to `lite`, `standard`, `full`, or `orchestrate` |
|
|
139
|
+
| `full` | FULL | Managed, phased work with durable context and plan support |
|
|
140
|
+
| `orchestrate` | FULL + ORCHESTRATED | Explicit deeper orchestration for multi-agent or proof-gate work |
|
|
141
141
|
|
|
142
142
|
The root `run` command is the Project Intelligence judgment/release flow.
|
|
143
143
|
`workflow run` is the workflow-mode runner. They share a verb but are not
|
|
@@ -484,6 +484,13 @@ npx -y snipara-companion workflow producer-review --latest --outcome useful --re
|
|
|
484
484
|
npx -y snipara-companion handoff --summary "auth impact mapped" --next "run auth tests"
|
|
485
485
|
```
|
|
486
486
|
|
|
487
|
+
For a stricter engineering workflow, add `--strict` to a completed
|
|
488
|
+
`workflow task-commit` or `workflow phase-commit`. Strict phase closeout requires
|
|
489
|
+
all declared tasks to be completed or skipped and requires every supplied
|
|
490
|
+
verification item to be passed. The default remains backward-compatible for
|
|
491
|
+
older workflows; strict mode is recommended for release, security, and
|
|
492
|
+
multi-agent work.
|
|
493
|
+
|
|
487
494
|
Managed workflow judgments use risk-based authority. `info` and `watch`
|
|
488
495
|
recommendations are accepted locally by policy and remain auditable; `risk` and
|
|
489
496
|
`block` recommendations still need `workflow judgment-respond`. The immutable
|
|
@@ -503,8 +510,11 @@ and file evidence when the Companion hook is installed. `workflow session` deriv
|
|
|
503
510
|
Session Snapshot V0 includes latest activity, risk reasons, touched files, a
|
|
504
511
|
next action, and advisory Intent Detection V0. Intent Detection V0 reports the
|
|
505
512
|
inferred intent, confidence, reason-code signals, local evidence counts, and a
|
|
506
|
-
suggested workflow mode. `workflow run
|
|
507
|
-
principle to choose lite, standard, full, or orchestrate.
|
|
513
|
+
suggested workflow mode. `workflow run` uses AUTO by default and that same
|
|
514
|
+
Control Plane principle to choose lite, standard, full, or orchestrate. It
|
|
515
|
+
reports an automatic setup card for Companion, hosted memory, Orchestrator,
|
|
516
|
+
and policy-gated workers. Standalone `snipara-memory` remains an explicit
|
|
517
|
+
application choice. Lite runs with zero
|
|
508
518
|
mandatory hosted context calls; recall/context/code-impact are on-demand
|
|
509
519
|
escalations, not an entry toll.
|
|
510
520
|
`workflow timeline --export md` prints a compact redacted Markdown timeline for
|
package/dist/index.d.ts
CHANGED
|
@@ -4176,6 +4176,20 @@ declare function formatFinalCommitReport(report: FinalCommitReportV1): string;
|
|
|
4176
4176
|
|
|
4177
4177
|
type SyncDocumentKind = "DOC" | "BINARY";
|
|
4178
4178
|
type WorkflowMode = "lite" | "standard" | "auto" | "full" | "orchestrate";
|
|
4179
|
+
type AutomaticMemorySetup = "none" | "hosted";
|
|
4180
|
+
type AutomaticOrchestratorSetup = "none" | "available" | "required";
|
|
4181
|
+
type AutomaticWorkerSetup = "none" | "policy_gated";
|
|
4182
|
+
interface AutomaticSetupSelection {
|
|
4183
|
+
requestedMode: WorkflowMode;
|
|
4184
|
+
effectiveMode: Exclude<WorkflowMode, "auto">;
|
|
4185
|
+
companion: "active";
|
|
4186
|
+
memory: AutomaticMemorySetup;
|
|
4187
|
+
orchestrator: AutomaticOrchestratorSetup;
|
|
4188
|
+
workers: AutomaticWorkerSetup;
|
|
4189
|
+
standaloneMemory: "not_selected";
|
|
4190
|
+
tokenStrategy: "minimal" | "budgeted";
|
|
4191
|
+
reasons: string[];
|
|
4192
|
+
}
|
|
4179
4193
|
type OnboardFolderMode = "auto" | "business_context" | "code_project" | "mixed";
|
|
4180
4194
|
type DetectedOnboardFolderMode = "business_context" | "code_project" | "mixed" | "unknown";
|
|
4181
4195
|
type ManagedWorkflowStatus = "active" | "completed" | "blocked";
|
|
@@ -4915,6 +4929,15 @@ declare function buildWorkflowPhaseCommitSummary(args: {
|
|
|
4915
4929
|
summary: string;
|
|
4916
4930
|
}): string;
|
|
4917
4931
|
declare function resolveAutoWorkflowMode(query: string): Exclude<WorkflowMode, "auto">;
|
|
4932
|
+
/**
|
|
4933
|
+
* Describe the smallest effective Snipara setup selected for a task.
|
|
4934
|
+
* This is deliberately a decision card: it never enables standalone memory
|
|
4935
|
+
* or executes a worker by itself. Worker execution remains policy-gated and
|
|
4936
|
+
* requires an explicit orchestrator path or project policy.
|
|
4937
|
+
*/
|
|
4938
|
+
declare function resolveAutomaticSetup(query: string, requestedMode: WorkflowMode, options?: {
|
|
4939
|
+
hostedConfigured?: boolean;
|
|
4940
|
+
}): AutomaticSetupSelection;
|
|
4918
4941
|
/**
|
|
4919
4942
|
* Compute the impact gate for committed-but-unpushed workflow phases.
|
|
4920
4943
|
*
|
|
@@ -5587,4 +5610,4 @@ declare function installAutomationBundle(args: {
|
|
|
5587
5610
|
}): Promise<AutomationInstallResult>;
|
|
5588
5611
|
declare function getAutomationStatus(projectDir?: string): AutomationStatusResult;
|
|
5589
5612
|
|
|
5590
|
-
export { AGENT_CONTEXT_EVIDENCE_DEFAULT_LEDGER, AUTOMATION_MANIFEST_RELATIVE_PATH, AutomationInstallConflictError, AutomationUnsupportedHookBundleError, CODING_INTELLIGENCE_LEDGER_VERSION, COLLABORATION_STATE_RELATIVE_PATH, DEFAULT_DOCS_BOOTSTRAP_OUTPUT, DOCS_BOOTSTRAP_VERSION, ENGINEERING_LEAD_EXECUTION_RECEIPT_STAGES, ENGINEERING_LEAD_EXECUTION_RECEIPT_STATUSES, ENGINEERING_LEAD_POSTURES, ENGINEERING_LEAD_PROOF_VERIFICATION_SOURCES, ENGINEERING_LEAD_PROOF_VERIFICATION_STATUSES, ENGINEERING_LEAD_ROUTING_MODES, ENGINEERING_LEAD_STATUSES, ENGINEERING_LEAD_SUPERVISION_STATUSES, ENGINEERING_LEAD_WORKER_ROLES, ENGINEERING_LEAD_WORK_PACKAGE_STATUSES, FEATURE_DEFAULT_OUTPUT_DIR, FEATURE_WORK_ITEM_VERSION, FINAL_COMMIT_REPORT_RELATIVE_PATH, FINAL_COMMIT_REPORT_VERSION, type GeneratedWorkflowTaskDocument, MEMORY_GUARD_CONTEXT_TIMEOUT_MS, MEMORY_GUARD_RECALL_TIMEOUT_MS, type ManagedWorkflowTask, type ManagedWorkflowTaskContextEnvelope, type ManagedWorkflowTaskStatus, ORCHESTRATOR_HANDOFF_RELATIVE_PATH, POLICY_LEDGER_SYNC_REPORT_VERSION, PRODUCER_LOOP_ARTIFACT_VERSION, PRODUCER_LOOP_RELATIVE_DIR, PRODUCER_LOOP_REPORT_VERSION, TEAM_SYNC_STATE_RELATIVE_PATH, WHY_OUTCOME_CAPTURE_VERSION, WORKFLOW_PLANS_RELATIVE_DIR, WORKFLOW_STATE_RELATIVE_PATH, addLocalWorker, agentContextEvidenceCollectCommand, agentContextEvidenceRecordCommand, agentContextEvidenceStatusCommand, agentContextEvidenceTemplateCommand, agentContextResolveCommand, agentContextValidateCommand, agentReadinessAuditCommand, appendActivityEvent, applyLocalContextMutationPlan, applyManagedWorkflowPolicyAutoResponses, archiveInactiveTeamSyncWork, attachLocalContextPackReceipts, autoArchiveTeamSyncState, buildAdaptiveWorkRoutingRecommendation, buildAgentReadinessAuditReport, buildAgenticHandoffMarkdown, buildAgenticTimeline, buildAgenticWorkStatus, buildAutomationInstallPlan, buildCanonicalEvent, buildCodeHooksInstallPlan, buildCodePromotionResult, buildCodeStatusResult, buildCodeSyncResult, buildCodingIntelligenceLedger, buildCollaborationActor, buildCollaborationGuardActionCards, buildCollaborationHooksInstallPlan, buildCommitResultMetadata, buildCompanionEngineeringLeadPlanReport, buildContextPackStats, buildDocsBootstrapResult, buildEvalCaseArtifact, buildFeaturePlanMarkdown, buildFeatureSpecMarkdown, buildFeatureTasksMarkdown, buildFinalCommitReport, buildGeneratedWorkflowPlanDocument, buildHostedCodeOverlayUploadPayload, buildHostedGuardPayload, buildInstalledDependencyEvidence, buildJournalCheckpointEntry, buildLocalAgentContextValidationReport, buildLocalCallersResult, buildLocalCodeOverlay, buildLocalContextMutationPlan, buildLocalContextPackReceipt, buildLocalContextPackReceipts, buildLocalImpactResult, buildLocalImportsResult, buildLocalNeighborsResult, buildLocalProjectContextValidationReport, buildLocalProjectDriftReport, buildLocalProjectRealityCheck, buildLocalProjectRealityCheckWithAutoContext, buildLocalShortestPathResult, buildLocalSourceSnapshot, buildLocalSourceStatus, buildLocalSourceSyncResult, buildMemoryAudit, buildOnboardFolderManifest, buildOrchestratorHandoff, buildPolicyLedgerSyncReport, buildProducerLoopReport, buildProjectBriefMarkdown, buildProjectIntelligenceBrief, buildProjectIntelligenceRun, buildProjectJudgmentCard, buildSessionBootstrapBrief, buildSessionBootstrapQuality, buildSessionSnapshot, buildSmallestSafeDiffEvidence, buildSyncDocumentsDryRun, buildTeamSyncHandoffRecord, buildTeamSyncStartWorkRecord, buildTeamSyncSummary, buildToolCallPayload, buildToolResultPayload, buildVerificationPlan, buildWhyOutcomeCaptureReport, buildWorkerTrustCandidates, buildWorkflowImpactGate, buildWorkflowPhaseCommitReceipt, buildWorkflowPhaseCommitSummary, buildWorkflowPlanScaffold, captureStandaloneCommitWhy, categoryFromGuardTag, classifyToolResult, cleanContextPacks, codingLedgerExportCommand, collaborationIdeStatusCommand, collectAgentReadinessLocalSignals, collectPolicyLedgerSyncArtifacts, collectSyncDocuments, collectSyncDocumentsInput, compactHostedGuardResources, compareLocalSourceSnapshots, completeTeamSyncStateFromEvidence, completeTeamSyncWorkFromEvidence, contextControlApplyCommand, contextControlDriftCommand, contextControlHostedApplyCommand, contextControlHostedDiffCommand, contextControlPlanCommand, contextControlValidateCommand, contextPackCleanCommand, contextPackPackCommand, contextPackRetrieveCommand, contextPackStatsCommand, controlledWorkerExecuteCommand, createClient, createEmptyCollaborationState, createEmptyTeamSyncState, createLocalQueryCache, deriveLocalCollaborationResourcesFromFiles, deriveManagedWorkflowJudgmentResolution, detectReleaseSurfacesFromFiles, detectRuntimeEnvironment, docsBootstrapCommand, evalExportCommand, evalRunCommand, evaluateProjectPolicyGates, extractCommandFromToolInput, extractFilesFromToolInput, featureInitCommand, featurePlanCommand, featureSpecifyCommand, featureStartCommand, featureStatusCommand, featureTasksCommand, formatAgentContextResolution, formatAgentReadinessAuditReport, formatCompanionEngineeringLeadPlanReport, formatFinalCommitReport, formatOrchestratorRecommendationReason, formatPolicyGateDecision, formatProjectJudgmentCard, formatStuckGuardDecision, getAutomationManifestPath, getAutomationStatus, getCollaborationStatePath, getConfigPath, getContextPackStoragePaths, getLocalCodeOverlayCachePath, getLocalCodePromotionStatePath, getLocalSourceSnapshotPath, getOrchestratorRecommendation, getPlanStepDisplayTitle, getStagedFiles, getStuckGuardInjection, getTeamSyncStatePath, hasActiveManagedWorkflow, hashWorkerProfile, ingestReferences, installAutomationBundle, leadPlanCommand, listProjectsForApiKey, loadAutomationManifest, loadCollaborationState, loadConfig, loadTeamSyncState, memoryAuditCommand, memoryCleanCandidatesCommand, memoryCompactCommand, memoryHealthCommand, memoryLocalCommand, memoryReviewsCommand, mergeHybridCodeResults, normalizeCollaborationFiles, normalizeFeatureSlug, normalizeGuardTag, normalizeWorkflowPlanInput, outcomeCapturePreviewCommand, packContext, parseCollaborationResources, projectIntelligenceBriefCommand, projectIntelligenceRunCommand, readActivityTimeline, readAgentContextEvidenceLedger, readLocalCodeOverlayCache, readLocalCodePromotionState, readLocalSourceSnapshot, readLocalWorkersConfig, readSessionSnapshot, readStandaloneCommitEvidence, readWorkerTrustEvent, realityCheckCommand, referencesIngestCommand, referencesScanCommand, resolveAutoWorkflowMode, resolveCodeGraphMode, resolveContextPackRecord, resolveFeatureArtifactPaths, resolveFullWorkflowTokenBudget, resolveLocalWorkerRoutingDefaults, resolveMinimumChangeMode, resolveQueryFromToolInput, retrieveContextPack, runMemoryGuardCheck, saveCollaborationState, saveConfig, saveTeamSyncState, scanReferences, shouldFailCollaborationGuard, shouldSuggestOrchestratorForWorkflow, shouldSuggestRuntimeForWorkflow, summarizeLocalCodeOverlay, teamSyncSweepCommand, validatePlanResult, verifyCommand, workerTrustCandidateCommand, workerTrustReviewCommand, workerTrustStatusCommand, workersLocalAddCommand, workersLocalListCommand, workersLocalProbePrintCommand, workersLocalRemoveCommand, workersLocalStatusCommand, workflowSyncPolicyLedgerCommand, writeFinalCommitReport, writeLocalCodeOverlayCache, writeLocalCodePromotionState, writeLocalSourceSnapshot, writeOrchestratorHandoff, writeProducerLoopArtifact, writeSessionSnapshot };
|
|
5613
|
+
export { AGENT_CONTEXT_EVIDENCE_DEFAULT_LEDGER, AUTOMATION_MANIFEST_RELATIVE_PATH, type AutomaticMemorySetup, type AutomaticOrchestratorSetup, type AutomaticSetupSelection, type AutomaticWorkerSetup, AutomationInstallConflictError, AutomationUnsupportedHookBundleError, CODING_INTELLIGENCE_LEDGER_VERSION, COLLABORATION_STATE_RELATIVE_PATH, DEFAULT_DOCS_BOOTSTRAP_OUTPUT, DOCS_BOOTSTRAP_VERSION, ENGINEERING_LEAD_EXECUTION_RECEIPT_STAGES, ENGINEERING_LEAD_EXECUTION_RECEIPT_STATUSES, ENGINEERING_LEAD_POSTURES, ENGINEERING_LEAD_PROOF_VERIFICATION_SOURCES, ENGINEERING_LEAD_PROOF_VERIFICATION_STATUSES, ENGINEERING_LEAD_ROUTING_MODES, ENGINEERING_LEAD_STATUSES, ENGINEERING_LEAD_SUPERVISION_STATUSES, ENGINEERING_LEAD_WORKER_ROLES, ENGINEERING_LEAD_WORK_PACKAGE_STATUSES, FEATURE_DEFAULT_OUTPUT_DIR, FEATURE_WORK_ITEM_VERSION, FINAL_COMMIT_REPORT_RELATIVE_PATH, FINAL_COMMIT_REPORT_VERSION, type GeneratedWorkflowTaskDocument, MEMORY_GUARD_CONTEXT_TIMEOUT_MS, MEMORY_GUARD_RECALL_TIMEOUT_MS, type ManagedWorkflowTask, type ManagedWorkflowTaskContextEnvelope, type ManagedWorkflowTaskStatus, ORCHESTRATOR_HANDOFF_RELATIVE_PATH, POLICY_LEDGER_SYNC_REPORT_VERSION, PRODUCER_LOOP_ARTIFACT_VERSION, PRODUCER_LOOP_RELATIVE_DIR, PRODUCER_LOOP_REPORT_VERSION, TEAM_SYNC_STATE_RELATIVE_PATH, WHY_OUTCOME_CAPTURE_VERSION, WORKFLOW_PLANS_RELATIVE_DIR, WORKFLOW_STATE_RELATIVE_PATH, addLocalWorker, agentContextEvidenceCollectCommand, agentContextEvidenceRecordCommand, agentContextEvidenceStatusCommand, agentContextEvidenceTemplateCommand, agentContextResolveCommand, agentContextValidateCommand, agentReadinessAuditCommand, appendActivityEvent, applyLocalContextMutationPlan, applyManagedWorkflowPolicyAutoResponses, archiveInactiveTeamSyncWork, attachLocalContextPackReceipts, autoArchiveTeamSyncState, buildAdaptiveWorkRoutingRecommendation, buildAgentReadinessAuditReport, buildAgenticHandoffMarkdown, buildAgenticTimeline, buildAgenticWorkStatus, buildAutomationInstallPlan, buildCanonicalEvent, buildCodeHooksInstallPlan, buildCodePromotionResult, buildCodeStatusResult, buildCodeSyncResult, buildCodingIntelligenceLedger, buildCollaborationActor, buildCollaborationGuardActionCards, buildCollaborationHooksInstallPlan, buildCommitResultMetadata, buildCompanionEngineeringLeadPlanReport, buildContextPackStats, buildDocsBootstrapResult, buildEvalCaseArtifact, buildFeaturePlanMarkdown, buildFeatureSpecMarkdown, buildFeatureTasksMarkdown, buildFinalCommitReport, buildGeneratedWorkflowPlanDocument, buildHostedCodeOverlayUploadPayload, buildHostedGuardPayload, buildInstalledDependencyEvidence, buildJournalCheckpointEntry, buildLocalAgentContextValidationReport, buildLocalCallersResult, buildLocalCodeOverlay, buildLocalContextMutationPlan, buildLocalContextPackReceipt, buildLocalContextPackReceipts, buildLocalImpactResult, buildLocalImportsResult, buildLocalNeighborsResult, buildLocalProjectContextValidationReport, buildLocalProjectDriftReport, buildLocalProjectRealityCheck, buildLocalProjectRealityCheckWithAutoContext, buildLocalShortestPathResult, buildLocalSourceSnapshot, buildLocalSourceStatus, buildLocalSourceSyncResult, buildMemoryAudit, buildOnboardFolderManifest, buildOrchestratorHandoff, buildPolicyLedgerSyncReport, buildProducerLoopReport, buildProjectBriefMarkdown, buildProjectIntelligenceBrief, buildProjectIntelligenceRun, buildProjectJudgmentCard, buildSessionBootstrapBrief, buildSessionBootstrapQuality, buildSessionSnapshot, buildSmallestSafeDiffEvidence, buildSyncDocumentsDryRun, buildTeamSyncHandoffRecord, buildTeamSyncStartWorkRecord, buildTeamSyncSummary, buildToolCallPayload, buildToolResultPayload, buildVerificationPlan, buildWhyOutcomeCaptureReport, buildWorkerTrustCandidates, buildWorkflowImpactGate, buildWorkflowPhaseCommitReceipt, buildWorkflowPhaseCommitSummary, buildWorkflowPlanScaffold, captureStandaloneCommitWhy, categoryFromGuardTag, classifyToolResult, cleanContextPacks, codingLedgerExportCommand, collaborationIdeStatusCommand, collectAgentReadinessLocalSignals, collectPolicyLedgerSyncArtifacts, collectSyncDocuments, collectSyncDocumentsInput, compactHostedGuardResources, compareLocalSourceSnapshots, completeTeamSyncStateFromEvidence, completeTeamSyncWorkFromEvidence, contextControlApplyCommand, contextControlDriftCommand, contextControlHostedApplyCommand, contextControlHostedDiffCommand, contextControlPlanCommand, contextControlValidateCommand, contextPackCleanCommand, contextPackPackCommand, contextPackRetrieveCommand, contextPackStatsCommand, controlledWorkerExecuteCommand, createClient, createEmptyCollaborationState, createEmptyTeamSyncState, createLocalQueryCache, deriveLocalCollaborationResourcesFromFiles, deriveManagedWorkflowJudgmentResolution, detectReleaseSurfacesFromFiles, detectRuntimeEnvironment, docsBootstrapCommand, evalExportCommand, evalRunCommand, evaluateProjectPolicyGates, extractCommandFromToolInput, extractFilesFromToolInput, featureInitCommand, featurePlanCommand, featureSpecifyCommand, featureStartCommand, featureStatusCommand, featureTasksCommand, formatAgentContextResolution, formatAgentReadinessAuditReport, formatCompanionEngineeringLeadPlanReport, formatFinalCommitReport, formatOrchestratorRecommendationReason, formatPolicyGateDecision, formatProjectJudgmentCard, formatStuckGuardDecision, getAutomationManifestPath, getAutomationStatus, getCollaborationStatePath, getConfigPath, getContextPackStoragePaths, getLocalCodeOverlayCachePath, getLocalCodePromotionStatePath, getLocalSourceSnapshotPath, getOrchestratorRecommendation, getPlanStepDisplayTitle, getStagedFiles, getStuckGuardInjection, getTeamSyncStatePath, hasActiveManagedWorkflow, hashWorkerProfile, ingestReferences, installAutomationBundle, leadPlanCommand, listProjectsForApiKey, loadAutomationManifest, loadCollaborationState, loadConfig, loadTeamSyncState, memoryAuditCommand, memoryCleanCandidatesCommand, memoryCompactCommand, memoryHealthCommand, memoryLocalCommand, memoryReviewsCommand, mergeHybridCodeResults, normalizeCollaborationFiles, normalizeFeatureSlug, normalizeGuardTag, normalizeWorkflowPlanInput, outcomeCapturePreviewCommand, packContext, parseCollaborationResources, projectIntelligenceBriefCommand, projectIntelligenceRunCommand, readActivityTimeline, readAgentContextEvidenceLedger, readLocalCodeOverlayCache, readLocalCodePromotionState, readLocalSourceSnapshot, readLocalWorkersConfig, readSessionSnapshot, readStandaloneCommitEvidence, readWorkerTrustEvent, realityCheckCommand, referencesIngestCommand, referencesScanCommand, resolveAutoWorkflowMode, resolveAutomaticSetup, resolveCodeGraphMode, resolveContextPackRecord, resolveFeatureArtifactPaths, resolveFullWorkflowTokenBudget, resolveLocalWorkerRoutingDefaults, resolveMinimumChangeMode, resolveQueryFromToolInput, retrieveContextPack, runMemoryGuardCheck, saveCollaborationState, saveConfig, saveTeamSyncState, scanReferences, shouldFailCollaborationGuard, shouldSuggestOrchestratorForWorkflow, shouldSuggestRuntimeForWorkflow, summarizeLocalCodeOverlay, teamSyncSweepCommand, validatePlanResult, verifyCommand, workerTrustCandidateCommand, workerTrustReviewCommand, workerTrustStatusCommand, workersLocalAddCommand, workersLocalListCommand, workersLocalProbePrintCommand, workersLocalRemoveCommand, workersLocalStatusCommand, workflowSyncPolicyLedgerCommand, writeFinalCommitReport, writeLocalCodeOverlayCache, writeLocalCodePromotionState, writeLocalSourceSnapshot, writeOrchestratorHandoff, writeProducerLoopArtifact, writeSessionSnapshot };
|
package/dist/index.js
CHANGED
|
@@ -255,6 +255,7 @@ __export(index_exports, {
|
|
|
255
255
|
referencesIngestCommand: () => referencesIngestCommand,
|
|
256
256
|
referencesScanCommand: () => referencesScanCommand,
|
|
257
257
|
resolveAutoWorkflowMode: () => resolveAutoWorkflowMode,
|
|
258
|
+
resolveAutomaticSetup: () => resolveAutomaticSetup,
|
|
258
259
|
resolveCodeGraphMode: () => resolveCodeGraphMode,
|
|
259
260
|
resolveContextPackRecord: () => resolveContextPackRecord,
|
|
260
261
|
resolveFeatureArtifactPaths: () => resolveFeatureArtifactPaths,
|
|
@@ -31527,35 +31528,59 @@ function phaseQuery(state, phase) {
|
|
|
31527
31528
|
}
|
|
31528
31529
|
function resolveAutoWorkflowMode(query) {
|
|
31529
31530
|
const normalized = query.toLowerCase();
|
|
31530
|
-
if (/\b(orchestrate|swarm|htask|handoff|multi-agent|multi agent|worker|proof gate|proof-gate|drift check|release gate|production gate)\b/.test(
|
|
31531
|
+
if (/\b(orchestrate|orchestrat|swarm|essaim|htask|h[- ]?tache|handoff|passation|multi-agent|multi agent|multi-agent|sous-agent|sous agent|worker|travailleur|parall[eè]le|coordonn(?:er|ation)|proof gate|proof-gate|preuve|garde-fou|gate|drift check|d[eé]rive|release gate|production gate|mise en production|contr[oô]le de production)\b/.test(
|
|
31531
31532
|
normalized
|
|
31532
31533
|
)) {
|
|
31533
31534
|
return "orchestrate";
|
|
31534
31535
|
}
|
|
31535
|
-
if (/\b(deploy|deployment|release|merge|push|migration|
|
|
31536
|
+
if (/\b(deploy|deployment|d[eé]ployer|d[eé]ploiement|release|livraison|mise en production|merge|fusionner|push|pousser|migration|sch[eé]ma|auth|authentification|billing|facturation|security|s[eé]curit[eé]|architecture|architectural|multi-phase|multiphase|phase commit|commit de phase|final commit|commit final|managed workflow|workflow g[eé]r[eé]|roadmap|feuille de route|plan|chantier)\b/.test(
|
|
31536
31537
|
normalized
|
|
31537
31538
|
)) {
|
|
31538
31539
|
return "full";
|
|
31539
31540
|
}
|
|
31540
|
-
if (/\b(why|pourquoi|decision|
|
|
31541
|
+
if (/\b(why|pourquoi|decision|d[eé]cision|rationale|positioning|positionnement|strategy|strat[eé]gie|contexte|pr[eé]f[eé]rence|cross-session|multi-session|previous decision|prior decision|historical context|contexte historique)\b/.test(
|
|
31541
31542
|
normalized
|
|
31542
31543
|
)) {
|
|
31543
31544
|
return "standard";
|
|
31544
31545
|
}
|
|
31545
|
-
if (/\b(status|show|list|read|lookup|recall|brief|summarize|summary|what changed|question|docs?|documentation)\b/.test(
|
|
31546
|
+
if (/\b(status|statut|show|montre|montrer|afficher|list|liste|lister|read|lire|lookup|chercher|retrouver|recall|rappel|brief|r[eé]sum[eé]|summarize|summary|what changed|ce qui a chang[eé]|question|docs?|documentation)\b/.test(
|
|
31546
31547
|
normalized
|
|
31547
31548
|
) && !/\b(implement|change|fix|ship|code|refactor|test|write|create|build)\b/.test(normalized)) {
|
|
31548
31549
|
return "lite";
|
|
31549
31550
|
}
|
|
31550
|
-
if (/\b(typo|copy edit|small diff|tiny diff|one-line|one line|known file|obvious fix|quick fix|format|formatting|rename)\b/.test(
|
|
31551
|
+
if (/\b(typo|faute|correction de texte|copy edit|petite correction|petit diff|small diff|tiny diff|one-line|one line|une ligne|fichier connu|known file|obvious fix|quick fix|correction rapide|format|formatting|formatage|rename|renommer)\b/.test(
|
|
31551
31552
|
normalized
|
|
31552
|
-
) && !/\b(architecture|release|deploy|migration|schema|auth|billing|security|multi-file|many files|5\+ files|cross-session|decision|
|
|
31553
|
+
) && !/\b(architecture|release|deploy|d[eé]ploiement|migration|schema|sch[eé]ma|auth|billing|security|s[eé]curit[eé]|multi-file|multi-fichier|many files|plusieurs fichiers|5\+ files|cross-session|multi-session|decision|d[eé]cision)\b/.test(
|
|
31553
31554
|
normalized
|
|
31554
31555
|
)) {
|
|
31555
31556
|
return "lite";
|
|
31556
31557
|
}
|
|
31557
31558
|
return "standard";
|
|
31558
31559
|
}
|
|
31560
|
+
function resolveAutomaticSetup(query, requestedMode, options = {}) {
|
|
31561
|
+
const effectiveMode = effectiveWorkflowMode(requestedMode, query);
|
|
31562
|
+
const hostedMemory = options.hostedConfigured !== false && effectiveMode !== "lite";
|
|
31563
|
+
const orchestratorRequired = effectiveMode === "orchestrate";
|
|
31564
|
+
const hasOrchestratorSignal = getOrchestratorRecommendation(query, effectiveMode) !== null;
|
|
31565
|
+
return {
|
|
31566
|
+
requestedMode,
|
|
31567
|
+
effectiveMode,
|
|
31568
|
+
companion: "active",
|
|
31569
|
+
memory: hostedMemory ? "hosted" : "none",
|
|
31570
|
+
orchestrator: orchestratorRequired ? "required" : hasOrchestratorSignal ? "available" : "none",
|
|
31571
|
+
workers: orchestratorRequired && /\b(worker|travailleur|sous-agent(?:s)?|sous agent(?:s)?|parall[eè]le(?:s)?|swarm|essaim)\b/i.test(
|
|
31572
|
+
query
|
|
31573
|
+
) ? "policy_gated" : "none",
|
|
31574
|
+
standaloneMemory: "not_selected",
|
|
31575
|
+
tokenStrategy: effectiveMode === "full" || effectiveMode === "orchestrate" ? "budgeted" : "minimal",
|
|
31576
|
+
reasons: [
|
|
31577
|
+
`task intent selected ${effectiveMode.toUpperCase()}`,
|
|
31578
|
+
hostedMemory ? "hosted memory is used for this workflow depth" : "no mandatory memory call for this workflow depth",
|
|
31579
|
+
orchestratorRequired ? "orchestrator capabilities are required for proof, coordination, or production gates" : hasOrchestratorSignal ? "orchestrator remains available if the task escalates" : "orchestration is not needed for the detected task scope",
|
|
31580
|
+
"standalone snipara-memory is reserved for applications that explicitly choose the autonomous memory package"
|
|
31581
|
+
]
|
|
31582
|
+
};
|
|
31583
|
+
}
|
|
31559
31584
|
function effectiveWorkflowMode(mode, query = "") {
|
|
31560
31585
|
return mode === "auto" ? resolveAutoWorkflowMode(query) : mode;
|
|
31561
31586
|
}
|
|
@@ -32809,6 +32834,26 @@ function printLiteWorkflowRun(query, requestedMode) {
|
|
|
32809
32834
|
);
|
|
32810
32835
|
console.log("");
|
|
32811
32836
|
}
|
|
32837
|
+
function printAutomaticSetup(selection) {
|
|
32838
|
+
console.log(import_chalk9.default.bold("Automatic Snipara setup"));
|
|
32839
|
+
printKeyValue2("Companion:", "active router");
|
|
32840
|
+
printKeyValue2("Workflow:", `${selection.effectiveMode} (${selection.requestedMode} requested)`);
|
|
32841
|
+
printKeyValue2(
|
|
32842
|
+
"Memory:",
|
|
32843
|
+
selection.memory === "hosted" ? "hosted Snipara memory" : "none required"
|
|
32844
|
+
);
|
|
32845
|
+
printKeyValue2(
|
|
32846
|
+
"Orchestrator:",
|
|
32847
|
+
selection.orchestrator === "required" ? "required" : selection.orchestrator === "available" ? "available on escalation" : "not selected"
|
|
32848
|
+
);
|
|
32849
|
+
printKeyValue2(
|
|
32850
|
+
"Workers:",
|
|
32851
|
+
selection.workers === "policy_gated" ? "policy-gated recommendation" : "not selected"
|
|
32852
|
+
);
|
|
32853
|
+
printKeyValue2("Standalone memory:", "not selected automatically");
|
|
32854
|
+
printKeyValue2("Token strategy:", selection.tokenStrategy);
|
|
32855
|
+
console.log("");
|
|
32856
|
+
}
|
|
32812
32857
|
function runtimeHintVersionLabel(report) {
|
|
32813
32858
|
if (!report.runtime.cliVersion) {
|
|
32814
32859
|
return report.runtime.version ? ` (${report.runtime.version})` : "";
|
|
@@ -34951,6 +34996,9 @@ async function sharedContextCommand(options) {
|
|
|
34951
34996
|
async function workflowRunCommand(options) {
|
|
34952
34997
|
const hostedConfigured = isConfigured();
|
|
34953
34998
|
const effectiveMode = effectiveWorkflowMode(options.mode, options.query);
|
|
34999
|
+
const automaticSetup = resolveAutomaticSetup(options.query, options.mode, {
|
|
35000
|
+
hostedConfigured
|
|
35001
|
+
});
|
|
34954
35002
|
const localAdaptiveRoutingPolicy = readLocalAdaptiveRoutingProjectPolicy();
|
|
34955
35003
|
const localAdaptiveRoutingRequested = shouldBuildAdaptiveRouting(options);
|
|
34956
35004
|
const canRunLocalAdaptiveRouting = !hostedConfigured && effectiveMode !== "orchestrate" && (localAdaptiveRoutingRequested || localAdaptiveRoutingPolicy !== null && localAdaptiveRoutingPolicy.mode !== "off");
|
|
@@ -34985,7 +35033,7 @@ async function workflowRunCommand(options) {
|
|
|
34985
35033
|
policySource: options.orchestratorPolicySource,
|
|
34986
35034
|
adaptiveRoutingDryRun: Boolean(adaptiveRouting)
|
|
34987
35035
|
});
|
|
34988
|
-
const shouldEmitOrchestratorHandoff = options.emitOrchestratorHandoff || options.autoRouteOrchestrator;
|
|
35036
|
+
const shouldEmitOrchestratorHandoff = options.emitOrchestratorHandoff || options.autoRouteOrchestrator || options.mode === "auto" && effectiveMode === "orchestrate";
|
|
34989
35037
|
const preparedHandoff = shouldEmitOrchestratorHandoff && orchestratorRecommendation ? writeOrchestratorHandoff({
|
|
34990
35038
|
sourceCommand: "workflow run",
|
|
34991
35039
|
recommendation: orchestratorRecommendation,
|
|
@@ -34999,6 +35047,7 @@ async function workflowRunCommand(options) {
|
|
|
34999
35047
|
const payload2 = {
|
|
35000
35048
|
mode: options.mode,
|
|
35001
35049
|
effective_mode: effectiveMode,
|
|
35050
|
+
automatic_setup: automaticSetup,
|
|
35002
35051
|
local_only: true,
|
|
35003
35052
|
local_policy_path: localAdaptiveRoutingPolicy ? ADAPTIVE_ROUTING_POLICY_RELATIVE_PATH2 : null,
|
|
35004
35053
|
retrieval_policy: effectiveMode === "lite" ? {
|
|
@@ -35021,6 +35070,7 @@ async function workflowRunCommand(options) {
|
|
|
35021
35070
|
if (effectiveMode === "lite") {
|
|
35022
35071
|
printLiteWorkflowRun(options.query, options.mode);
|
|
35023
35072
|
} else {
|
|
35073
|
+
printAutomaticSetup(automaticSetup);
|
|
35024
35074
|
console.log(import_chalk9.default.bold("Local Adaptive Work Routing"));
|
|
35025
35075
|
console.log(
|
|
35026
35076
|
"Hosted Snipara is not configured; no context query, hosted catalog, or planner call ran."
|
|
@@ -35038,6 +35088,7 @@ async function workflowRunCommand(options) {
|
|
|
35038
35088
|
const payload2 = {
|
|
35039
35089
|
mode: options.mode,
|
|
35040
35090
|
effective_mode: effectiveMode,
|
|
35091
|
+
automatic_setup: automaticSetup,
|
|
35041
35092
|
retrieval_policy: {
|
|
35042
35093
|
mandatory_calls: [],
|
|
35043
35094
|
escalation: "Run recall, context_query, or code impact only when the task needs them.",
|
|
@@ -35053,6 +35104,7 @@ async function workflowRunCommand(options) {
|
|
|
35053
35104
|
return;
|
|
35054
35105
|
}
|
|
35055
35106
|
printLiteWorkflowRun(options.query, options.mode);
|
|
35107
|
+
printAutomaticSetup(automaticSetup);
|
|
35056
35108
|
if (options.runtimeHint !== false) {
|
|
35057
35109
|
printRuntimeHint(options.query, effectiveMode);
|
|
35058
35110
|
}
|
|
@@ -35072,6 +35124,7 @@ async function workflowRunCommand(options) {
|
|
|
35072
35124
|
if (options.json) {
|
|
35073
35125
|
printJson2({
|
|
35074
35126
|
mode: options.mode,
|
|
35127
|
+
automatic_setup: automaticSetup,
|
|
35075
35128
|
orchestrate: result,
|
|
35076
35129
|
orchestrator_recommendation: orchestratorRecommendation,
|
|
35077
35130
|
orchestrator_handoff: preparedHandoff,
|
|
@@ -35081,6 +35134,7 @@ async function workflowRunCommand(options) {
|
|
|
35081
35134
|
return;
|
|
35082
35135
|
}
|
|
35083
35136
|
printOrchestrateResult(result);
|
|
35137
|
+
printAutomaticSetup(automaticSetup);
|
|
35084
35138
|
if (options.runtimeHint !== false) {
|
|
35085
35139
|
printRuntimeHint(options.query, effectiveMode);
|
|
35086
35140
|
printOrchestratorHandoffHint(options.query, effectiveMode, orchestratorRecommendation);
|
|
@@ -35104,6 +35158,7 @@ async function workflowRunCommand(options) {
|
|
|
35104
35158
|
const payload = {
|
|
35105
35159
|
mode: options.mode,
|
|
35106
35160
|
effective_mode: effectiveMode,
|
|
35161
|
+
automatic_setup: automaticSetup,
|
|
35107
35162
|
orchestrator_recommendation: orchestratorRecommendation,
|
|
35108
35163
|
orchestrator_handoff: preparedHandoff,
|
|
35109
35164
|
adaptive_routing: adaptiveRouting,
|
|
@@ -35183,6 +35238,7 @@ async function workflowRunCommand(options) {
|
|
|
35183
35238
|
printJson2(payload);
|
|
35184
35239
|
return;
|
|
35185
35240
|
}
|
|
35241
|
+
printAutomaticSetup(automaticSetup);
|
|
35186
35242
|
if (effectiveMode === "full" && payload.session_bootstrap) {
|
|
35187
35243
|
const printedBootstrap = printSessionBootstrap(
|
|
35188
35244
|
payload.session_bootstrap,
|
|
@@ -35537,6 +35593,29 @@ function workflowOutcomeEvidence(values) {
|
|
|
35537
35593
|
];
|
|
35538
35594
|
});
|
|
35539
35595
|
}
|
|
35596
|
+
function assertStrictVerificationEvidence(values, subject) {
|
|
35597
|
+
const evidence = workflowOutcomeEvidence(values);
|
|
35598
|
+
if (evidence.length === 0) {
|
|
35599
|
+
throw new Error(`${subject} requires at least one --evidence passed:<check> in strict mode.`);
|
|
35600
|
+
}
|
|
35601
|
+
const nonPassing = evidence.filter((item) => item.status !== "passed");
|
|
35602
|
+
if (nonPassing.length > 0) {
|
|
35603
|
+
throw new Error(
|
|
35604
|
+
`${subject} has non-passing evidence in strict mode: ${nonPassing.map((item) => `${item.status}:${item.label}`).join(" | ")}`
|
|
35605
|
+
);
|
|
35606
|
+
}
|
|
35607
|
+
return evidence;
|
|
35608
|
+
}
|
|
35609
|
+
function assertStrictPhaseTasksCompleted(phase) {
|
|
35610
|
+
const incomplete = workflowTasks(phase).filter(
|
|
35611
|
+
(task) => !["completed", "skipped"].includes(task.status)
|
|
35612
|
+
);
|
|
35613
|
+
if (incomplete.length > 0) {
|
|
35614
|
+
throw new Error(
|
|
35615
|
+
`Phase '${phase.id}' has incomplete tasks in strict mode: ${incomplete.map((task) => `${task.id} (${task.status})`).join(", ")}`
|
|
35616
|
+
);
|
|
35617
|
+
}
|
|
35618
|
+
}
|
|
35540
35619
|
var MANAGED_WORKFLOW_JUDGMENT_AUTONOMY_VERSION = "snipara.workflow.judgment-autonomy.v1";
|
|
35541
35620
|
function isPolicyAutoEligibleRecommendation(recommendation) {
|
|
35542
35621
|
return recommendation.severity === "info" || recommendation.severity === "watch";
|
|
@@ -36887,6 +36966,9 @@ async function workflowTaskCommitCommand(options) {
|
|
|
36887
36966
|
const outcome = options.outcome ?? "completed";
|
|
36888
36967
|
const category = options.category ?? "workflow-task";
|
|
36889
36968
|
const files = options.files && options.files.length > 0 ? options.files : task.files ?? phase.files;
|
|
36969
|
+
if (options.strict && outcome === "completed") {
|
|
36970
|
+
assertStrictVerificationEvidence(options.evidence, `Task '${task.id}'`);
|
|
36971
|
+
}
|
|
36890
36972
|
await memoryGuardCheckCommand({
|
|
36891
36973
|
trigger: "commit",
|
|
36892
36974
|
files,
|
|
@@ -37533,6 +37615,10 @@ async function workflowPhaseCommitCommand(options) {
|
|
|
37533
37615
|
const outcome = options.outcome ?? "completed";
|
|
37534
37616
|
const category = options.category ?? "workflow-phase";
|
|
37535
37617
|
const files = options.files && options.files.length > 0 ? options.files : phase.files;
|
|
37618
|
+
if (options.strict && outcome === "completed") {
|
|
37619
|
+
assertStrictPhaseTasksCompleted(phase);
|
|
37620
|
+
assertStrictVerificationEvidence(options.evidence, `Phase '${phase.id}'`);
|
|
37621
|
+
}
|
|
37536
37622
|
if (outcome === "completed" && workflowTasks(phase).some((task) => task.status === "blocked")) {
|
|
37537
37623
|
throw new Error(
|
|
37538
37624
|
`Phase '${phase.id}' still has blocked tasks. Retry or complete their recovery tasks before phase-commit.`
|
|
@@ -46464,7 +46550,7 @@ workflow.command("task-commit").description("Persist a task outcome and keep the
|
|
|
46464
46550
|
"Task evidence as passed|failed|not-run|unknown:text; repeatable",
|
|
46465
46551
|
collectOption,
|
|
46466
46552
|
[]
|
|
46467
|
-
).option("--json", "Print raw JSON").action(async (phaseId, taskId, options) => {
|
|
46553
|
+
).option("--strict", "Require passed evidence before completing this task").option("--json", "Print raw JSON").action(async (phaseId, taskId, options) => {
|
|
46468
46554
|
await workflowTaskCommitCommand({
|
|
46469
46555
|
phaseId,
|
|
46470
46556
|
taskId,
|
|
@@ -46478,6 +46564,7 @@ workflow.command("task-commit").description("Persist a task outcome and keep the
|
|
|
46478
46564
|
outcome: options.outcome,
|
|
46479
46565
|
files: options.files,
|
|
46480
46566
|
evidence: options.evidence,
|
|
46567
|
+
strict: Boolean(options.strict),
|
|
46481
46568
|
json: options.json
|
|
46482
46569
|
});
|
|
46483
46570
|
});
|
|
@@ -46524,7 +46611,7 @@ workflow.command("phase-commit").description(
|
|
|
46524
46611
|
"Phase evidence as passed|failed|not-run|unknown:text; repeatable",
|
|
46525
46612
|
collectOption,
|
|
46526
46613
|
[]
|
|
46527
|
-
).option("--json", "Print raw JSON").action(async (phaseId, options) => {
|
|
46614
|
+
).option("--strict", "Require all tasks complete and passed evidence before completing this phase").option("--json", "Print raw JSON").action(async (phaseId, options) => {
|
|
46528
46615
|
await workflowPhaseCommitCommand({
|
|
46529
46616
|
phaseId,
|
|
46530
46617
|
summary: options.summary,
|
|
@@ -46537,6 +46624,7 @@ workflow.command("phase-commit").description(
|
|
|
46537
46624
|
outcome: options.outcome,
|
|
46538
46625
|
files: options.files,
|
|
46539
46626
|
evidence: options.evidence,
|
|
46627
|
+
strict: Boolean(options.strict),
|
|
46540
46628
|
json: options.json
|
|
46541
46629
|
});
|
|
46542
46630
|
});
|
|
@@ -46562,7 +46650,11 @@ workflow.command("final-commit").description("Persist the final workflow outcome
|
|
|
46562
46650
|
json: options.json
|
|
46563
46651
|
});
|
|
46564
46652
|
});
|
|
46565
|
-
workflow.command("run").description("Run a LITE/STANDARD/FULL/orchestrate workflow preset").requiredOption("-q, --query <query>", "Workflow query").option(
|
|
46653
|
+
workflow.command("run").description("Run a LITE/STANDARD/FULL/orchestrate workflow preset").requiredOption("-q, --query <query>", "Workflow query").option(
|
|
46654
|
+
"-M, --mode <mode>",
|
|
46655
|
+
"lite|standard|auto|full|orchestrate (auto selects the smallest effective setup)",
|
|
46656
|
+
"auto"
|
|
46657
|
+
).option(
|
|
46566
46658
|
"-m, --max-tokens <number>",
|
|
46567
46659
|
"Maximum tokens; FULL mode splits this across workflow surfaces",
|
|
46568
46660
|
"8000"
|
|
@@ -47931,6 +48023,7 @@ if (require.main === module) {
|
|
|
47931
48023
|
referencesIngestCommand,
|
|
47932
48024
|
referencesScanCommand,
|
|
47933
48025
|
resolveAutoWorkflowMode,
|
|
48026
|
+
resolveAutomaticSetup,
|
|
47934
48027
|
resolveCodeGraphMode,
|
|
47935
48028
|
resolveContextPackRecord,
|
|
47936
48029
|
resolveFeatureArtifactPaths,
|
package/docs/FULL_REFERENCE.md
CHANGED
|
@@ -1131,13 +1131,13 @@ where the specific command needs hosted context or memory:
|
|
|
1131
1131
|
|
|
1132
1132
|
`workflow run --mode` accepts exactly these values:
|
|
1133
1133
|
|
|
1134
|
-
| CLI value | Guide label | Runtime behavior
|
|
1135
|
-
| ------------- | ------------------- |
|
|
1136
|
-
| `lite` | LITE | Small, known-scope work with no mandatory hosted context call
|
|
1137
|
-
| `standard` | STANDARD | Normal work with context and code-graph follow-up when needed
|
|
1138
|
-
| `auto` | AUTO |
|
|
1139
|
-
| `full` | FULL | Managed, phased work with durable context and plan support
|
|
1140
|
-
| `orchestrate` | FULL + ORCHESTRATED | Explicit deeper orchestration for multi-agent or proof-gate work
|
|
1134
|
+
| CLI value | Guide label | Runtime behavior |
|
|
1135
|
+
| ------------- | ------------------- | ----------------------------------------------------------------------------------- |
|
|
1136
|
+
| `lite` | LITE | Small, known-scope work with no mandatory hosted context call |
|
|
1137
|
+
| `standard` | STANDARD | Normal work with context and code-graph follow-up when needed |
|
|
1138
|
+
| `auto` | AUTO | Default mode; routes by task intent to `lite`, `standard`, `full`, or `orchestrate` |
|
|
1139
|
+
| `full` | FULL | Managed, phased work with durable context and plan support |
|
|
1140
|
+
| `orchestrate` | FULL + ORCHESTRATED | Explicit deeper orchestration for multi-agent or proof-gate work |
|
|
1141
1141
|
|
|
1142
1142
|
The root `run` command is the Project Intelligence judgment/release flow.
|
|
1143
1143
|
`workflow run` is the workflow-mode runner; they are different commands.
|
|
@@ -1180,6 +1180,15 @@ snipara-companion workflow run --mode full --no-runtime-hint --query "implement
|
|
|
1180
1180
|
snipara-companion workflow run --mode orchestrate --query "map production rollout risks"
|
|
1181
1181
|
snipara-companion workflow final-commit --summary "Shipped auth hardening and tests" --why "Close the reported session replay gap" --evidence "passed:pnpm test auth" --risk "Monitor production auth errors" --next-step "Review the first 24 hours of telemetry" --files src/auth.ts tests/auth.test.ts
|
|
1182
1182
|
snipara-companion workflow producer-report
|
|
1183
|
+
```
|
|
1184
|
+
|
|
1185
|
+
Use `--strict` on a completed `workflow task-commit` or `workflow phase-commit`
|
|
1186
|
+
when the work needs a hard engineering closeout. Strict phase commit refuses
|
|
1187
|
+
pending or in-progress declared tasks and requires every supplied evidence item
|
|
1188
|
+
to be passed. Without the flag, legacy workflows retain their existing
|
|
1189
|
+
compatibility behavior.
|
|
1190
|
+
|
|
1191
|
+
```
|
|
1183
1192
|
snipara-companion workflow producer-review --artifact producer-abc123 --outcome useful --reviewer alice
|
|
1184
1193
|
snipara-companion final-commit --summary "Shipped auth hardening and tests" --why "Close the reported session replay gap" --evidence "passed:pnpm test auth" --next-step "Review the first 24 hours of telemetry" --files src/auth.ts tests/auth.test.ts
|
|
1185
1194
|
snipara-companion doctor
|
|
@@ -1663,7 +1672,7 @@ Semantics:
|
|
|
1663
1672
|
- `snipara-companion query --follow-recommendation` = execute the hosted recommended structural tool instead of only printing it; context retrieval defaults to a 30-second timeout and supports `--search-mode keyword|semantic|hybrid`, `--no-answer-pack`, `--no-auto-decompose`, and `--no-shared-context`
|
|
1664
1673
|
- `snipara-companion workflow run --mode lite` = zero mandatory hosted calls for small known-file work
|
|
1665
1674
|
- `snipara-companion workflow run --mode standard` = context query plus automatic `snipara_code_*` follow-up when Snipara recommends one
|
|
1666
|
-
- `snipara-companion workflow run
|
|
1675
|
+
- `snipara-companion workflow run` = AUTO by default; routes to lite, standard, full, or orchestrate from task intent and reports the selected Companion/memory/orchestrator setup
|
|
1667
1676
|
- `snipara-companion workflow run --mode full` = budgeted durable bootstrap + optional session context + context query + automatic structural follow-up + hosted plan with quality diagnostics
|
|
1668
1677
|
- `snipara-companion plan --write-plan-file ./plan.json` = convert hosted `snipara_plan` output into managed workflow JSON
|
|
1669
1678
|
- `snipara-companion plan --start-workflow` or `workflow run --mode full --start-workflow-from-plan` = create local `.snipara/workflow/current.json` from a valid generated plan
|