@osovv/vv-opencode 1.4.4 → 1.5.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.
Files changed (69) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +8 -8
  3. package/dist/commands/patch-provider.d.ts +5 -5
  4. package/dist/commands/patch-provider.js +10 -6
  5. package/dist/commands/patch-provider.js.map +1 -1
  6. package/dist/lib/opencode/agent-registrations.d.ts +33 -0
  7. package/dist/lib/opencode/agent-registrations.js +469 -0
  8. package/dist/lib/opencode/agent-registrations.js.map +1 -0
  9. package/dist/lib/opencode/inspection.d.ts +84 -0
  10. package/dist/lib/opencode/inspection.js +367 -0
  11. package/dist/lib/opencode/inspection.js.map +1 -0
  12. package/dist/lib/opencode/model-overrides.d.ts +19 -0
  13. package/dist/lib/opencode/model-overrides.js +221 -0
  14. package/dist/lib/opencode/model-overrides.js.map +1 -0
  15. package/dist/lib/opencode/paths.d.ts +21 -0
  16. package/dist/lib/opencode/paths.js +62 -0
  17. package/dist/lib/opencode/paths.js.map +1 -0
  18. package/dist/lib/opencode/plugin-registration.d.ts +17 -0
  19. package/dist/lib/opencode/plugin-registration.js +210 -0
  20. package/dist/lib/opencode/plugin-registration.js.map +1 -0
  21. package/dist/lib/opencode/shared-utils.d.ts +30 -0
  22. package/dist/lib/opencode/shared-utils.js +183 -0
  23. package/dist/lib/opencode/shared-utils.js.map +1 -0
  24. package/dist/lib/opencode/vvoc-config-io.d.ts +9 -0
  25. package/dist/lib/opencode/vvoc-config-io.js +58 -0
  26. package/dist/lib/opencode/vvoc-config-io.js.map +1 -0
  27. package/dist/lib/opencode.d.ts +15 -174
  28. package/dist/lib/opencode.js +19 -1387
  29. package/dist/lib/opencode.js.map +1 -1
  30. package/dist/lib/spec-lint/cross-file-rules.d.ts +2 -0
  31. package/dist/lib/spec-lint/cross-file-rules.js +33 -0
  32. package/dist/lib/spec-lint/cross-file-rules.js.map +1 -0
  33. package/dist/lib/spec-lint/delegated-extraction.d.ts +8 -0
  34. package/dist/lib/spec-lint/delegated-extraction.js +112 -0
  35. package/dist/lib/spec-lint/delegated-extraction.js.map +1 -0
  36. package/dist/lib/spec-lint/lint.d.ts +7 -0
  37. package/dist/lib/spec-lint/lint.js +92 -0
  38. package/dist/lib/spec-lint/lint.js.map +1 -0
  39. package/dist/lib/spec-lint/parser.d.ts +101 -0
  40. package/dist/lib/spec-lint/parser.js +482 -0
  41. package/dist/lib/spec-lint/parser.js.map +1 -0
  42. package/dist/lib/spec-lint/plan-rules.d.ts +38 -0
  43. package/dist/lib/spec-lint/plan-rules.js +745 -0
  44. package/dist/lib/spec-lint/plan-rules.js.map +1 -0
  45. package/dist/lib/spec-lint/spec-rules.d.ts +8 -0
  46. package/dist/lib/spec-lint/spec-rules.js +188 -0
  47. package/dist/lib/spec-lint/spec-rules.js.map +1 -0
  48. package/dist/lib/spec-lint.d.ts +4 -63
  49. package/dist/lib/spec-lint.js +13 -1505
  50. package/dist/lib/spec-lint.js.map +1 -1
  51. package/dist/lib/vvoc-preset-registry.d.ts +7 -7
  52. package/dist/lib/vvoc-preset-registry.js +8 -8
  53. package/dist/lib/vvoc-preset-registry.js.map +1 -1
  54. package/dist/plugins/workflow/authorization.d.ts +30 -0
  55. package/dist/plugins/workflow/authorization.js +139 -0
  56. package/dist/plugins/workflow/authorization.js.map +1 -0
  57. package/dist/plugins/workflow/index.js +26 -329
  58. package/dist/plugins/workflow/index.js.map +1 -1
  59. package/dist/plugins/workflow/recovery.d.ts +17 -0
  60. package/dist/plugins/workflow/recovery.js +150 -0
  61. package/dist/plugins/workflow/recovery.js.map +1 -0
  62. package/dist/plugins/workflow/schemas.d.ts +208 -0
  63. package/dist/plugins/workflow/schemas.js +138 -0
  64. package/dist/plugins/workflow/schemas.js.map +1 -0
  65. package/dist/plugins/workflow/tooling.d.ts +10 -65
  66. package/dist/plugins/workflow/tooling.js +5 -5
  67. package/dist/plugins/workflow/tooling.js.map +1 -1
  68. package/package.json +1 -1
  69. package/schemas/vvoc/v3.json +1 -1
@@ -1,175 +1,16 @@
1
- import { type ManagedOpenCodeAgentName } from "./managed-agents.js";
2
- import { type OrchestrationProfile } from "./orchestration.js";
3
- import { type GuardianConfig, type GuardianConfigOverrides, type SecretsRedactionConfig, type VvocConfig } from "./vvoc-config.js";
4
- import { PACKAGE_NAME } from "./package.js";
5
- import { type ConfigReadScope, type ConfigSource } from "./config-layers.js";
6
- export declare const CLI_NAME = "vvoc";
7
- export { PACKAGE_NAME };
8
- export declare const OPENCODE_SCHEMA_URL = "https://opencode.ai/config.json";
9
- export declare const OPENCODE_TUI_SCHEMA_URL = "https://opencode.ai/tui.json";
10
- export declare const TUI_PACKAGE_SPECIFIER: string;
11
- export declare const MINIMUM_TUI_OPENCODE_VERSION = "1.18.2";
12
- type JsonObject = Record<string, unknown>;
13
- export type TuiPluginEntry = string | [string, JsonObject];
14
- export type OpenCodeDefaultModelKey = "model" | "small_model";
15
- export type Scope = "global" | "project";
16
- export type ResolvedPaths = {
17
- scope: Scope;
18
- cwd: string;
19
- configHome: string;
20
- projectRoot?: string;
21
- opencodeBaseDir: string;
22
- vvocBaseDir: string;
23
- vvocConfigPath: string;
24
- managedAgentsDirPath: string;
25
- managedSkillsDirPath: string;
26
- opencodeConfigPath: string;
27
- opencodeAlternatePaths: string[];
28
- opencodeTuiConfigPath: string;
29
- opencodeTuiAlternatePaths: string[];
30
- };
31
- export type WriteResult = {
32
- action: "created" | "updated" | "kept" | "skipped";
33
- path: string;
34
- reason?: string;
35
- };
36
- export type ManagedAgentModelMap = Record<ManagedOpenCodeAgentName, string | undefined>;
37
- export type OpenCodeAgentOverride = {
38
- model?: string;
39
- };
40
- export type ManagedAgentOverrideMap = Record<ManagedOpenCodeAgentName, OpenCodeAgentOverride>;
41
- export type OpenCodeRuntimeInspection = {
42
- version?: string;
43
- minimumTuiVersion: string;
44
- tuiCompatible?: boolean;
45
- error?: string;
46
- };
47
- export type InstallationInspection = {
48
- scope: ConfigReadScope;
49
- runtime: OpenCodeRuntimeInspection;
50
- opencode: {
51
- path: string;
52
- exists: boolean;
53
- alternates: string[];
54
- parseError?: string;
55
- pluginConfigured: boolean;
56
- plugins: string[];
57
- };
58
- tui: {
59
- path: string;
60
- exists: boolean;
61
- alternates: string[];
62
- parseError?: string;
63
- pluginConfigured: boolean;
64
- plugins: TuiPluginEntry[];
65
- };
66
- vvoc: {
67
- path: string;
68
- exists: boolean;
69
- parseError?: string;
70
- schema?: string;
71
- version?: number;
72
- };
73
- guardian: {
74
- config?: GuardianConfig;
75
- };
76
- secretsRedaction: {
77
- config?: SecretsRedactionConfig;
78
- };
79
- orchestration: {
80
- profile?: OrchestrationProfile;
81
- };
82
- roles: {
83
- assignments: Array<{
84
- roleId: string;
85
- model: string;
86
- builtIn: boolean;
87
- }>;
88
- unresolvedReferences: Array<{
89
- fieldPath: string;
90
- roleRef: string;
91
- roleId: string;
92
- }>;
93
- };
94
- warnings: string[];
95
- problems: string[];
96
- };
97
- export declare function resolvePaths(options: {
98
- scope: Scope;
99
- cwd: string;
100
- configDir?: string;
101
- }): Promise<ResolvedPaths>;
102
- export declare function ensurePackageConfigText(text: string | undefined, packageSpecifier?: string): string;
103
- export declare function ensureTuiPackageConfigText(text: string | undefined, packageSpecifier?: string): string;
104
- export declare function ensureTuiPackageInstalled(paths: Pick<ResolvedPaths, "opencodeTuiConfigPath">): Promise<WriteResult>;
105
- export declare function ensureManagedAgentRegistrationsConfigText(text: string | undefined, paths: Pick<ResolvedPaths, "managedAgentsDirPath" | "managedSkillsDirPath" | "opencodeConfigPath">): string;
106
- export declare function syncManagedAgentRegistrations(paths: ResolvedPaths): Promise<{
107
- path: string;
108
- changed: boolean;
109
- }>;
110
- export declare function installManagedAgentPrompts(paths: ResolvedPaths, options: {
111
- force: boolean;
112
- }): Promise<WriteResult[]>;
113
- export declare function syncManagedAgentPrompts(paths: ResolvedPaths, options: {
114
- force: boolean;
115
- }): Promise<WriteResult[]>;
116
- export declare function installManagedSkillFiles(paths: ResolvedPaths, options: {
117
- force: boolean;
118
- }): Promise<WriteResult[]>;
119
- export declare function syncManagedSkillFiles(paths: ResolvedPaths, options: {
120
- force: boolean;
121
- }): Promise<WriteResult[]>;
122
- export declare function ensureManagedSkillSymlink(configDir?: string): Promise<WriteResult>;
123
- export declare function readManagedAgentModels(paths: Pick<ResolvedPaths, "opencodeConfigPath">): Promise<ManagedAgentModelMap>;
124
- export declare function readManagedAgentOverrides(paths: Pick<ResolvedPaths, "opencodeConfigPath">): Promise<ManagedAgentOverrideMap>;
125
- export declare function readOpenCodeAgentModel(paths: Pick<ResolvedPaths, "opencodeConfigPath">, agentName: string): Promise<string | undefined>;
126
- export declare function readOpenCodeAgentOverride(paths: Pick<ResolvedPaths, "opencodeConfigPath">, agentName: string): Promise<OpenCodeAgentOverride>;
127
- export declare function readOpenCodeDefaultModel(paths: Pick<ResolvedPaths, "opencodeConfigPath">, key: OpenCodeDefaultModelKey): Promise<string | undefined>;
128
- export declare function writeOpenCodeAgentModel(paths: Pick<ResolvedPaths, "opencodeConfigPath">, agentName: string, options: {
129
- model?: string;
130
- ensureEntry: boolean;
131
- }): Promise<WriteResult>;
132
- export declare function writeOpenCodeDefaultModel(paths: Pick<ResolvedPaths, "opencodeConfigPath">, key: OpenCodeDefaultModelKey, options: {
133
- model?: string;
134
- ensureEntry: boolean;
135
- }): Promise<WriteResult>;
136
- export declare function writeOpenCodeProviderObject(paths: Pick<ResolvedPaths, "opencodeConfigPath">, providerID: string, value: JsonObject): Promise<WriteResult>;
137
- export declare function writeManagedAgentModel(paths: Pick<ResolvedPaths, "managedAgentsDirPath" | "managedSkillsDirPath" | "opencodeConfigPath">, agentName: ManagedOpenCodeAgentName, options: {
138
- model?: string;
139
- ensureEntry: boolean;
140
- }): Promise<WriteResult>;
1
+ export { PACKAGE_NAME } from "./package.js";
141
2
  export { parseGuardianConfigText, renderGuardianConfig, type GuardianConfigOverrides, } from "./vvoc-config.js";
142
- export declare function ensurePackageInstalled(paths: ResolvedPaths): Promise<{
143
- path: string;
144
- changed: boolean;
145
- }>;
146
- export declare function ensureProviderBaseUrlConfigText(text: string | undefined, providerID: string, baseURL: string): string;
147
- export declare function writeProviderBaseUrl(paths: Pick<ResolvedPaths, "opencodeConfigPath">, providerID: string, baseURL: string): Promise<WriteResult>;
148
- export declare function readVvocConfig(paths: Pick<ResolvedPaths, "vvocConfigPath">): Promise<VvocConfig | undefined>;
149
- export declare function installVvocConfig(paths: Pick<ResolvedPaths, "vvocConfigPath">): Promise<WriteResult>;
150
- export declare function syncVvocConfig(paths: Pick<ResolvedPaths, "vvocConfigPath">): Promise<WriteResult>;
151
- export declare function writeGuardianConfig(paths: Pick<ResolvedPaths, "vvocConfigPath">, overrides: GuardianConfigOverrides, options?: {
152
- merge?: boolean;
153
- }): Promise<WriteResult>;
154
- export declare function inspectOpenCodeRuntime(run?: () => Promise<{
155
- exitCode: number;
156
- stdout: string;
157
- stderr: string;
158
- }>): Promise<OpenCodeRuntimeInspection>;
159
- export declare function isTuiOpenCodeVersionCompatible(version: string): boolean;
160
- /** Extracts the first semantic version found in `opencode --version` output. */
161
- export declare function extractOpenCodeVersion(output: string): string | undefined;
162
- export declare function inspectInstallation(paths: ResolvedPaths, options?: {
163
- runtime?: OpenCodeRuntimeInspection;
164
- }): Promise<InstallationInspection>;
165
- export declare function inspectInstallationForScope(options: {
166
- scope: ConfigReadScope;
167
- cwd: string;
168
- configDir?: string;
169
- inspectRuntime?: () => Promise<OpenCodeRuntimeInspection>;
170
- }): Promise<InstallationInspection & {
171
- opencodeSource: ConfigSource;
172
- opencodeTuiSource: ConfigSource;
173
- vvocSource: ConfigSource;
174
- }>;
175
- export declare function describeWriteResult(result: WriteResult): string;
3
+ export { CLI_NAME, OPENCODE_SCHEMA_URL, OPENCODE_TUI_SCHEMA_URL } from "./opencode/shared-utils.js";
4
+ export type { WriteResult, OpenCodeAgentOverride } from "./opencode/shared-utils.js";
5
+ export { resolvePaths } from "./opencode/paths.js";
6
+ export type { Scope, ResolvedPaths } from "./opencode/paths.js";
7
+ export { ensurePackageConfigText, ensureTuiPackageConfigText, ensureTuiPackageInstalled, ensurePackageInstalled, } from "./opencode/plugin-registration.js";
8
+ export { TUI_PACKAGE_SPECIFIER, MINIMUM_TUI_OPENCODE_VERSION, } from "./opencode/plugin-registration.js";
9
+ export type { TuiPluginEntry } from "./opencode/plugin-registration.js";
10
+ export { ensureManagedAgentRegistrationsConfigText, syncManagedAgentRegistrations, installManagedAgentPrompts, syncManagedAgentPrompts, installManagedSkillFiles, syncManagedSkillFiles, ensureManagedSkillSymlink, readManagedAgentModels, readManagedAgentOverrides, writeManagedAgentModel, } from "./opencode/agent-registrations.js";
11
+ export type { ManagedAgentModelMap, ManagedAgentOverrideMap, } from "./opencode/agent-registrations.js";
12
+ export { readOpenCodeAgentModel, readOpenCodeAgentOverride, readOpenCodeDefaultModel, writeOpenCodeAgentModel, writeOpenCodeDefaultModel, writeOpenCodeProviderObject, ensureProviderBaseUrlConfigText, writeProviderBaseUrl, } from "./opencode/model-overrides.js";
13
+ export type { OpenCodeDefaultModelKey } from "./opencode/model-overrides.js";
14
+ export { readVvocConfig, installVvocConfig, syncVvocConfig, writeGuardianConfig, } from "./opencode/vvoc-config-io.js";
15
+ export { inspectOpenCodeRuntime, isTuiOpenCodeVersionCompatible, extractOpenCodeVersion, inspectInstallation, inspectInstallationForScope, describeWriteResult, } from "./opencode/inspection.js";
16
+ export type { OpenCodeRuntimeInspection, InstallationInspection } from "./opencode/inspection.js";