@jmanuelcorral/openteam 0.1.3 → 0.1.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/commands/dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAUrD,MAAM,MAAM,OAAO,GAAG;IACpB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACtD,UAAU,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;IACnE,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA4FF,wBAAsB,MAAM,CAC1B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAgDpB"}
1
+ {"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/commands/dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAUrD,MAAM,MAAM,OAAO,GAAG;IACpB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACtD,UAAU,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;IACnE,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA6FF,wBAAsB,MAAM,CAC1B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAgDpB"}
@@ -0,0 +1,121 @@
1
+ import { type OpenTeamConfig, type PrivacyMode, type RouterMode } from "../config/schema";
2
+ import type { LocalRuntimeId } from "../local/types";
3
+ import type { CliResult } from "./dispatch";
4
+ /** Nombre del paquete npm del plugin, declarado en el opencode.json generado. */
5
+ export declare const OPENTEAM_PLUGIN_SPEC = "@jmanuelcorral/openteam";
6
+ /** Ruta del opencode.json de proyecto, relativa al cwd. */
7
+ export declare const OPENCODE_CONFIG_PATH = "opencode.json";
8
+ export type KnownRuntime = {
9
+ id: LocalRuntimeId;
10
+ label: string;
11
+ defaultBaseURL?: string;
12
+ fallbackModelID: string;
13
+ dynamicPort?: boolean;
14
+ };
15
+ /**
16
+ * Runtimes locales que `openteam init` conoce y ofrece. El orden define el
17
+ * orden de las preguntas.
18
+ */
19
+ export declare const KNOWN_RUNTIMES: readonly KnownRuntime[];
20
+ export type DetectedRuntime = {
21
+ id: LocalRuntimeId;
22
+ baseURL: string;
23
+ reachable: boolean;
24
+ models: string[];
25
+ error?: string;
26
+ };
27
+ export type RuntimeChoice = {
28
+ id: LocalRuntimeId;
29
+ enabled: boolean;
30
+ baseURL?: string;
31
+ defaultModelID: string;
32
+ models: string[];
33
+ };
34
+ export type FrontierChoice = {
35
+ providerID: string;
36
+ modelID: string;
37
+ };
38
+ export type InitAnswers = {
39
+ runtimes: RuntimeChoice[];
40
+ frontier: FrontierChoice;
41
+ routerMode: RouterMode;
42
+ privacyMode: PrivacyMode;
43
+ };
44
+ export type OpencodeProviderConfig = {
45
+ npm: string;
46
+ name: string;
47
+ options: {
48
+ baseURL: string;
49
+ };
50
+ models: Record<string, {
51
+ name: string;
52
+ }>;
53
+ };
54
+ export type OpencodeConfig = {
55
+ $schema: string;
56
+ plugin: string[];
57
+ provider?: Record<string, OpencodeProviderConfig>;
58
+ model: string;
59
+ small_model?: string;
60
+ };
61
+ /**
62
+ * Modelos frontier ofrecidos por `init`, del más barato-capaz al más caro,
63
+ * derivados del catálogo curado. Pure/determinista.
64
+ */
65
+ export declare function frontierChoices(): FrontierChoice[];
66
+ /**
67
+ * Construye y valida el OpenTeamConfig a partir de las respuestas del init.
68
+ * Pure: no I/O.
69
+ */
70
+ export declare function buildOpenTeamConfig(answers: InitAnswers): OpenTeamConfig;
71
+ /**
72
+ * Construye el opencode.json: declara el plugin, los providers locales
73
+ * OpenAI-compatible y el modelo por defecto (baseline frontier). Pure.
74
+ */
75
+ export declare function buildOpencodeConfig(answers: InitAnswers): OpencodeConfig;
76
+ export declare function serializeOpencodeConfig(config: OpencodeConfig): string;
77
+ export type SelectChoice<T> = {
78
+ value: T;
79
+ label: string;
80
+ hint?: string;
81
+ };
82
+ export type MultiselectChoice<T> = SelectChoice<T> & {
83
+ selected?: boolean;
84
+ };
85
+ /**
86
+ * Superficie de prompting inyectable. La implementación real (clack) vive en
87
+ * el bin; los tests usan un fake determinista.
88
+ */
89
+ export type Prompter = {
90
+ intro(title: string): void;
91
+ outro(message: string): void;
92
+ note(message: string, title?: string): void;
93
+ select<T>(opts: {
94
+ message: string;
95
+ choices: SelectChoice<T>[];
96
+ initial?: T;
97
+ }): Promise<T>;
98
+ multiselect<T>(opts: {
99
+ message: string;
100
+ choices: MultiselectChoice<T>[];
101
+ required?: boolean;
102
+ }): Promise<T[]>;
103
+ confirm(opts: {
104
+ message: string;
105
+ initial?: boolean;
106
+ }): Promise<boolean>;
107
+ text(opts: {
108
+ message: string;
109
+ placeholder?: string;
110
+ initial?: string;
111
+ }): Promise<string>;
112
+ };
113
+ export type InitDeps = {
114
+ cwd: string;
115
+ detect: () => Promise<DetectedRuntime[]>;
116
+ prompt: Prompter;
117
+ writeFile: (path: string, contents: string) => Promise<void>;
118
+ fileExists: (path: string) => Promise<boolean>;
119
+ };
120
+ export declare function runInit(deps: InitDeps): Promise<CliResult>;
121
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAOA,OAAO,EAEL,KAAK,cAAc,EAEnB,KAAK,WAAW,EAChB,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,iFAAiF;AACjF,eAAO,MAAM,oBAAoB,4BAA4B,CAAC;AAE9D,2DAA2D;AAC3D,eAAO,MAAM,oBAAoB,kBAAkB,CAAC;AAEpD,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,cAAc,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,YAAY,EAmBjD,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,cAAc,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,cAAc,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,QAAQ,EAAE,cAAc,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAOF;;;GAGG;AACH,wBAAgB,eAAe,IAAI,cAAc,EAAE,CAWlD;AAgBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAuCxE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CA6CxE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAEtE;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC5B,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,EAAE,CAAC,CAAC;KACb,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACf,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACjB,OAAO,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxE,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IACzC,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAChD,CAAC;AAuEF,wBAAsB,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CA8KhE"}
package/dist/index.js CHANGED
@@ -707,6 +707,7 @@ var HELP = [
707
707
  "openteam — comandos runtime",
708
708
  "",
709
709
  "Uso:",
710
+ " openteam init Configura opencode + openteam (interactivo)",
710
711
  " openteam baseline show Muestra el baseline efectivo",
711
712
  " openteam baseline set <p/model> Fija el baseline (modo pinned)",
712
713
  " openteam baseline auto Baseline cheapest-capable (modo auto)",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jmanuelcorral/openteam",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Plugin opencode de routing coste-consciente local-first con orquestación Squad.",
5
5
  "license": "MIT",
6
6
  "author": "Jose Manuel Corral",
@@ -58,7 +58,7 @@
58
58
  "prebuild": "bun run clean",
59
59
  "build": "bun run build:js && bun run build:cli && bun run build:types",
60
60
  "build:js": "bun build ./src/index.ts --target=node --format=esm --outfile=dist/index.js --external @opencode-ai/plugin --external @opencode-ai/sdk --external zod",
61
- "build:cli": "bun build ./src/cli.ts --target=node --format=esm --outfile=dist/cli.js --banner \"#!/usr/bin/env node\" --external @opencode-ai/plugin --external @opencode-ai/sdk --external zod",
61
+ "build:cli": "bun build ./src/cli.ts --target=node --format=esm --outfile=dist/cli.js --banner \"#!/usr/bin/env node\" --external @opencode-ai/plugin --external @opencode-ai/sdk --external zod --external @clack/prompts",
62
62
  "build:types": "tsc -p tsconfig.build.json",
63
63
  "clean": "node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"",
64
64
  "test": "bun test",
@@ -69,6 +69,7 @@
69
69
  "prepublishOnly": "bun run build"
70
70
  },
71
71
  "dependencies": {
72
+ "@clack/prompts": "1.7.0",
72
73
  "@opencode-ai/plugin": "1.17.13",
73
74
  "@opencode-ai/sdk": "1.17.13",
74
75
  "zod": "4.4.3"