@iaforged/context-code 2.0.3 → 2.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/dist/src/components/BypassPermissionsModeDialog.js +1 -1
- package/dist/src/components/ConsoleOAuthFlow.js +1 -1
- package/dist/src/components/HelpV2/HelpV2.js +1 -1
- package/dist/src/components/Stats.js +1 -1
- package/dist/src/components/TeleportProgress.js +1 -1
- package/dist/src/components/WorkflowMultiselectDialog.js +1 -1
- package/dist/webapp/chunk-OJZNEHPP.js +1 -1
- package/dist/webapp/chunk-VAB2VXFI.js +1 -1
- package/dist/webapp/ngsw-worker.js +1 -1
- package/dist/webapp/ngsw.json +1 -1
- package/dist/webapp/polyfills-7R4CRVNH.js +1 -1
- package/package.json +1 -2
- package/docs/BRIDGES.md +0 -90
- package/docs/Contex.md +0 -70
- package/docs/LIMITS.md +0 -37
- package/docs/MCP_SERVERS.md +0 -77
- package/docs/MULTI_PROVIDER.md +0 -201
- package/docs/MULTI_SQUAD_ORCHESTRATION_PLAN.md +0 -639
- package/docs/PHASE_1_WORKSPACES_AGENTS_TEAMS.md +0 -161
- package/docs/PHASE_2_SQLITE_ORCHESTRATION.md +0 -127
- package/docs/PHASE_3_DOMAIN_EXECUTION.md +0 -215
- package/docs/PHASE_3_VALIDATION.md +0 -136
- package/docs/PHASE_4_RISKS_AND_TESTS.md +0 -182
- package/docs/PUBLISH.md +0 -199
- package/docs/RECOVERY_NOTES.md +0 -78
- package/docs/RENAMING_NOTES.md +0 -25
- package/docs/SKILLS.md +0 -27
- package/docs/TEAMS_AND_ORCHESTRATION.md +0 -626
- package/docs/TROUBLESHOOTING.md +0 -72
- package/docs/comandos.md +0 -144
- package/docs/index.md +0 -37
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
# Fase 4: autonomia, seleccion automatica y resiliencia
|
|
2
|
-
|
|
3
|
-
Fase 4 debe convertir la orquestacion por dominio en un sistema capaz de elegir agentes, cambiar de proveedor cuando convenga y explicar por que tomo cada decision. La regla base es mantener a SQLite como fuente de verdad y no ejecutar automatismos silenciosos sin dejar evidencia en `orchestration_messages`.
|
|
4
|
-
|
|
5
|
-
## Objetivo
|
|
6
|
-
|
|
7
|
-
- Seleccionar automaticamente agentes por dominio usando capacidades, costo, latencia, calidad, disponibilidad y resiliencia.
|
|
8
|
-
- Reasignar tareas cuando un agente, perfil o proveedor no pueda continuar.
|
|
9
|
-
- Definir politicas de retry y fallback por tipo de error.
|
|
10
|
-
- Registrar cada decision de seleccion y fallback para auditoria posterior.
|
|
11
|
-
- Mantener comandos manuales para inspeccionar, aceptar o corregir decisiones automaticas.
|
|
12
|
-
|
|
13
|
-
## Modelo de politica
|
|
14
|
-
|
|
15
|
-
Fase 4 queda implementada como primer corte operativo con tipos en `src/services/orchestration/policy/types.ts` y scoring deterministico en `src/services/orchestration/policy/scoring.ts`.
|
|
16
|
-
|
|
17
|
-
Conceptos principales:
|
|
18
|
-
|
|
19
|
-
- `OrchestrationSelectionPolicy`: define modo de seleccion, objetivo de optimizacion, capabilities requeridas/preferidas, pesos y profundidad de fallback.
|
|
20
|
-
- `OrchestrationFallbackPolicy`: define que hacer ante errores de auth, cuota, rate-limit, timeout, modelo no disponible, proveedor caido, tool error o validacion.
|
|
21
|
-
- `OrchestrationAgentScoreBreakdown`: explica el puntaje de un candidato por capability, costo, latencia, calidad, disponibilidad y resiliencia.
|
|
22
|
-
- `OrchestrationSelectionDecision`: registra el agente elegido, candidatos evaluados, fallback candidates y razon final.
|
|
23
|
-
|
|
24
|
-
## Modos de seleccion
|
|
25
|
-
|
|
26
|
-
- `manual`: usa exactamente el agente asignado en el team o dominio.
|
|
27
|
-
- `score`: rankea candidatos dentro del dominio y elige el mejor disponible.
|
|
28
|
-
- `score-with-fallback`: rankea candidatos y conserva alternativas para errores recuperables.
|
|
29
|
-
- `fallback-only`: no cambia la seleccion inicial, pero puede reasignar cuando una tarea falla.
|
|
30
|
-
|
|
31
|
-
## Objetivos de optimizacion
|
|
32
|
-
|
|
33
|
-
- `balanced`: ponderacion equilibrada para trabajo general.
|
|
34
|
-
- `cost`: prioriza proveedores o modelos baratos cuando las capabilities minimas se cumplen.
|
|
35
|
-
- `latency`: prioriza respuesta rapida para tareas pequenas o iterativas.
|
|
36
|
-
- `quality`: prioriza agentes de mayor calidad para arquitectura, revision o cambios riesgosos.
|
|
37
|
-
- `capability`: prioriza especializacion declarada o inferida.
|
|
38
|
-
- `resilience`: prioriza agentes con historial estable y fallback fuerte.
|
|
39
|
-
|
|
40
|
-
## Scoring propuesto
|
|
41
|
-
|
|
42
|
-
El puntaje total debe calcularse con pesos normalizados entre `0` y `1`.
|
|
43
|
-
|
|
44
|
-
Formula inicial:
|
|
45
|
-
|
|
46
|
-
```text
|
|
47
|
-
total =
|
|
48
|
-
capabilityScore * capabilityWeight +
|
|
49
|
-
costScore * costWeight +
|
|
50
|
-
latencyScore * latencyWeight +
|
|
51
|
-
qualityScore * qualityWeight +
|
|
52
|
-
availabilityScore * availabilityWeight +
|
|
53
|
-
resilienceScore * resilienceWeight
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
Reglas:
|
|
57
|
-
|
|
58
|
-
- Si falta una capability requerida, el candidato queda bloqueado aunque tenga buen puntaje.
|
|
59
|
-
- Las capabilities preferidas suman puntaje, pero no bloquean.
|
|
60
|
-
- Un workspace deshabilitado bloquea todos sus agentes.
|
|
61
|
-
- Un agente deshabilitado no entra al ranking.
|
|
62
|
-
- Un perfil sin credenciales validas puede aparecer como candidato bloqueado, pero no debe ejecutarse automaticamente.
|
|
63
|
-
- Si dos candidatos empatan, gana el de mayor `qualityScore`; si persiste empate, gana el de menor costo estimado; si persiste, se ordena por nombre para mantener determinismo.
|
|
64
|
-
|
|
65
|
-
## Fallback entre proveedores
|
|
66
|
-
|
|
67
|
-
El fallback no debe tratar todos los errores igual.
|
|
68
|
-
|
|
69
|
-
Politica recomendada:
|
|
70
|
-
|
|
71
|
-
- `auth`: bloquear para intervencion humana; no reintentar con la misma credencial.
|
|
72
|
-
- `quota`: intentar fallback a otro provider/profile si existe candidato compatible.
|
|
73
|
-
- `rate-limit`: reintentar con backoff o mover a fallback si la tarea es urgente.
|
|
74
|
-
- `timeout`: permitir retry limitado con el mismo agente y luego fallback.
|
|
75
|
-
- `model-unavailable`: permitir cambio de modelo dentro del mismo perfil si la politica lo permite.
|
|
76
|
-
- `provider-unavailable`: fallback a otro proveedor compatible.
|
|
77
|
-
- `tool-error`: bloquear si la tarea requiere tool especifica; de lo contrario permitir fallback.
|
|
78
|
-
- `validation`: no reintentar automaticamente; requiere ajuste del plan o instrucciones.
|
|
79
|
-
- `unknown`: un retry controlado y luego bloqueo.
|
|
80
|
-
|
|
81
|
-
Cada fallback debe escribir un mensaje con:
|
|
82
|
-
|
|
83
|
-
- tarea afectada
|
|
84
|
-
- error clasificado
|
|
85
|
-
- agente original
|
|
86
|
-
- agente nuevo, si aplica
|
|
87
|
-
- razon de la decision
|
|
88
|
-
- si hubo cambio de provider, profile o modelo
|
|
89
|
-
|
|
90
|
-
## Comandos operativos
|
|
91
|
-
|
|
92
|
-
Estos comandos ya operan sobre SQLite y registran decisiones auditables en `orchestration_messages` con prefijo `policy.*`.
|
|
93
|
-
|
|
94
|
-
```sh
|
|
95
|
-
/run optimize <run-id> [policy]
|
|
96
|
-
/run assign <run-id> [policy]
|
|
97
|
-
/run fallback <run-id> [task-id] [policy]
|
|
98
|
-
/run retry <run-id> <task-id>
|
|
99
|
-
/run reassign <task-id> <provider>/<agent>
|
|
100
|
-
/run explain <run-id>
|
|
101
|
-
/policy list
|
|
102
|
-
/policy show <policy>
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
Comportamiento esperado:
|
|
106
|
-
|
|
107
|
-
- `/run assign` aplica una politica de seleccion a tareas abiertas.
|
|
108
|
-
- `/run optimize` propone cambios sin ejecutarlos.
|
|
109
|
-
- `/run fallback` intenta reasignar tareas fallidas o bloqueadas con una politica vigente.
|
|
110
|
-
- `/run retry` reintenta una tarea concreta respetando su clasificacion de error.
|
|
111
|
-
- `/run reassign` fuerza una reasignacion manual.
|
|
112
|
-
- `/run explain` muestra scoring, bloqueos y razones de seleccion.
|
|
113
|
-
- `/policy` lista y muestra politicas predefinidas.
|
|
114
|
-
|
|
115
|
-
Ejemplos:
|
|
116
|
-
|
|
117
|
-
```sh
|
|
118
|
-
/policy show score-with-fallback:quality
|
|
119
|
-
/run optimize <run-id> score-with-fallback:quality
|
|
120
|
-
/run assign <run-id> score:capability
|
|
121
|
-
/run fallback <run-id> <task-id> score-with-fallback:resilience
|
|
122
|
-
/run explain <run-id>
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
Quedan fuera de este primer corte:
|
|
126
|
-
|
|
127
|
-
- persistencia editable de politicas personalizadas
|
|
128
|
-
- `/policy create`
|
|
129
|
-
- `/policy set-weights`
|
|
130
|
-
- clasificacion automatica profunda de errores por provider mas alla del fallback manual/auditable
|
|
131
|
-
|
|
132
|
-
## Riesgos principales
|
|
133
|
-
|
|
134
|
-
- Seleccion automatica sin scoring claro: puede enviar dominios criticos a agentes rapidos pero debiles.
|
|
135
|
-
- Fallback entre proveedores sin contexto: puede repetir el mismo fallo con otro proveedor y gastar tokens.
|
|
136
|
-
- Reintentos agresivos: pueden duplicar cambios o saturar cuentas con cuota baja.
|
|
137
|
-
- Conflictos entre escuadrones: frontend, backend y reviewer pueden producir salidas incompatibles.
|
|
138
|
-
- Reportes demasiado resumidos: el orquestador global puede cerrar una corrida sin evidencia suficiente.
|
|
139
|
-
- Capabilities desactualizadas: un agente puede declararse apto para un dominio que ya no soporta.
|
|
140
|
-
- Credenciales por perfil: un agente valido puede fallar si su provider profile no tiene credenciales activas.
|
|
141
|
-
- Scoring opaco: el usuario puede perder confianza si no entiende por que se eligio un proveedor.
|
|
142
|
-
- Fallback cross-provider sin equivalencia de modelo: la salida puede cambiar de formato o calidad.
|
|
143
|
-
- Costos no observados: una politica de calidad puede consumir cuota rapidamente.
|
|
144
|
-
|
|
145
|
-
## Pruebas recomendadas
|
|
146
|
-
|
|
147
|
-
- Ranking deterministico de agentes con mismas capacidades.
|
|
148
|
-
- Preferencia por `requiredCapabilities` sobre `preferredCapabilities`.
|
|
149
|
-
- Fallback cuando el agente principal esta deshabilitado.
|
|
150
|
-
- Fallback cuando el workspace del agente esta deshabilitado.
|
|
151
|
-
- Reasignacion de tareas `blocked` a otro miembro del dominio.
|
|
152
|
-
- Politica de no retry para errores no recuperables de proveedor.
|
|
153
|
-
- Consolidacion global con reportes mixtos: completados, bloqueados y fallidos.
|
|
154
|
-
- Autocompletado de `team`, `domain`, `agent` y `run-id`.
|
|
155
|
-
- Persistencia de metricas por dominio y agente.
|
|
156
|
-
- Verificacion de que un run cancelado no se reejecute accidentalmente.
|
|
157
|
-
- Explicacion completa de scoring para cada decision automatica.
|
|
158
|
-
- Fallback de `quota` hacia otro proveedor compatible.
|
|
159
|
-
- Bloqueo de `auth` sin retry automatico.
|
|
160
|
-
- Retry limitado de `timeout` con conteo de intentos persistido.
|
|
161
|
-
- Determinismo cuando dos agentes tienen el mismo score.
|
|
162
|
-
- Validacion de pesos de politica para evitar totales incoherentes.
|
|
163
|
-
|
|
164
|
-
## Gates para implementar Fase 4
|
|
165
|
-
|
|
166
|
-
- `npm run build`
|
|
167
|
-
- pruebas unitarias para scoring y fallback
|
|
168
|
-
- harness de stores para mensajes `policy.*`
|
|
169
|
-
- escenario manual con dos proveedores, dos dominios y un fallo forzado por cuota
|
|
170
|
-
- escenario manual con timeout recuperable
|
|
171
|
-
- revision de costos/cuotas antes de habilitar reintentos automaticos
|
|
172
|
-
|
|
173
|
-
## Criterio de cierre
|
|
174
|
-
|
|
175
|
-
Fase 4 solo debe considerarse cerrada cuando:
|
|
176
|
-
|
|
177
|
-
- las decisiones automaticas sean explicables desde `/run explain`
|
|
178
|
-
- el scoring sea deterministico
|
|
179
|
-
- cada fallback quede persistido como mensaje auditable
|
|
180
|
-
- los errores no recuperables no disparen retries agresivos
|
|
181
|
-
- el usuario pueda forzar reasignacion manual
|
|
182
|
-
- la documentacion de politicas y comandos coincida con el comportamiento real
|
package/docs/PUBLISH.md
DELETED
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
# Publicar Context Code en npmjs
|
|
2
|
-
|
|
3
|
-
Guía completa de los caminos para publicar el paquete `@iaforged/context-code`.
|
|
4
|
-
El paquete se publica al registry oficial de npmjs (`https://registry.npmjs.org/`)
|
|
5
|
-
y puede subirse tanto con `pnpm` como con `npm`. El cliente que uses al publicar
|
|
6
|
-
es independiente del cliente que usen los usuarios finales para instalarlo.
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## Antes de publicar — checks obligatorios
|
|
11
|
-
|
|
12
|
-
```bash
|
|
13
|
-
pnpm whoami # debe imprimir tu usuario de npmjs
|
|
14
|
-
# o si vas a usar npm:
|
|
15
|
-
npm whoami
|
|
16
|
-
|
|
17
|
-
pnpm view @iaforged/context-code version # versión actual en el registry
|
|
18
|
-
git status # cero cambios pendientes en main
|
|
19
|
-
node --check cli.js # bundle de producción válido
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
Si no estás logueado:
|
|
23
|
-
|
|
24
|
-
```bash
|
|
25
|
-
pnpm login --registry=https://registry.npmjs.org/
|
|
26
|
-
# o:
|
|
27
|
-
npm login --registry=https://registry.npmjs.org/
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
Variables/flags que la pipeline interna necesita:
|
|
31
|
-
|
|
32
|
-
- `AUTHORIZED=1` — obligatorio. El script `scripts/preflight-check.mjs` corre
|
|
33
|
-
como `prepublishOnly` y aborta si esa variable no está. Es la salvaguarda
|
|
34
|
-
contra publicaciones accidentales desde una terminal cualquiera.
|
|
35
|
-
- `--access public` — el paquete es scoped (`@iaforged/...`); por defecto los
|
|
36
|
-
scoped son privados, hay que forzar público.
|
|
37
|
-
- `--no-git-checks` (pnpm) — la pipeline modifica `package.json` durante la
|
|
38
|
-
publicación, así que `pnpm` no debe quejarse por árbol sucio.
|
|
39
|
-
|
|
40
|
-
---
|
|
41
|
-
|
|
42
|
-
## Opción A — Pipeline completa (recomendado): `pnpm pubpackages`
|
|
43
|
-
|
|
44
|
-
Es el flujo "todo en uno" que vive en `scripts/pubpackages.sh`:
|
|
45
|
-
|
|
46
|
-
```bash
|
|
47
|
-
pnpm pubpackages
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
Pasos que ejecuta:
|
|
51
|
-
|
|
52
|
-
1. `pnpm build` — compila TypeScript a `dist/`.
|
|
53
|
-
2. Bump de versión automático en `package.json` (1.3.5 → 1.3.6; al llegar a
|
|
54
|
-
x.x.9 salta a x.(y+1).0).
|
|
55
|
-
3. Genera un `package.json` "limpio" para publicar (sin `devDependencies`, sin
|
|
56
|
-
`pnpm.*`, sin scripts de desarrollo). Mantiene una copia del original.
|
|
57
|
-
4. `pnpm publish --access public --no-git-checks`.
|
|
58
|
-
5. Restaura el `package.json` original (vía `trap EXIT`) aunque la publicación
|
|
59
|
-
falle.
|
|
60
|
-
|
|
61
|
-
Equivalente con npm si prefieres no usar pnpm para publicar (mismo script,
|
|
62
|
-
mismo flujo — pnpm solo orquesta el bash):
|
|
63
|
-
|
|
64
|
-
```bash
|
|
65
|
-
AUTHORIZED=1 bash ./scripts/pubpackages.sh
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
> El `pnpm` interno del script seguirá invocándose para `pnpm build` y
|
|
69
|
-
> `pnpm publish`. Si quieres una versión 100% npm, copia el script y reemplaza
|
|
70
|
-
> esas dos invocaciones por `npm run build` y `npm publish --access public`.
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
## Opción B — Publicación manual desde PowerShell (Windows)
|
|
75
|
-
|
|
76
|
-
`publish-package.ps1` está en la raíz del repo. No bumpea versión: publica
|
|
77
|
-
exactamente lo que haya en `package.json`. Útil para reintentar una publicación
|
|
78
|
-
que falló o para subir versiones beta/preview.
|
|
79
|
-
|
|
80
|
-
```powershell
|
|
81
|
-
.\publish-package.ps1 # tag latest, access public
|
|
82
|
-
.\publish-package.ps1 -Tag beta
|
|
83
|
-
.\publish-package.ps1 -Tag rc -Access public
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
Lo que hace:
|
|
87
|
-
|
|
88
|
-
1. Localiza `pnpm` en el PATH (o en rutas típicas de Windows: `nvm`, `npm` global, `Program Files\nodejs`).
|
|
89
|
-
2. Pone `AUTHORIZED=1`.
|
|
90
|
-
3. Corre `node --check cli.js` para validar el bundle.
|
|
91
|
-
4. `pnpm publish --tag <tag> --access <access> --no-git-checks`.
|
|
92
|
-
|
|
93
|
-
---
|
|
94
|
-
|
|
95
|
-
## Opción C — Una línea directa (cuando ya sabes qué quieres subir)
|
|
96
|
-
|
|
97
|
-
Con pnpm:
|
|
98
|
-
|
|
99
|
-
```bash
|
|
100
|
-
pnpm build
|
|
101
|
-
AUTHORIZED=1 pnpm publish --access public --no-git-checks
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
Con npm:
|
|
105
|
-
|
|
106
|
-
```bash
|
|
107
|
-
pnpm build # o npm run build si quieres todo npm
|
|
108
|
-
AUTHORIZED=1 npm publish --access public
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
Variantes con tag distinto a `latest`:
|
|
112
|
-
|
|
113
|
-
```bash
|
|
114
|
-
AUTHORIZED=1 pnpm publish --access public --tag beta --no-git-checks
|
|
115
|
-
AUTHORIZED=1 npm publish --access public --tag beta
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
> Nota: con `npm publish` no necesitas `--no-git-checks` — npm no valida árbol
|
|
119
|
-
> de git, solo pnpm lo hace por defecto.
|
|
120
|
-
|
|
121
|
-
---
|
|
122
|
-
|
|
123
|
-
## Diferencias prácticas pnpm vs npm al publicar
|
|
124
|
-
|
|
125
|
-
| Aspecto | pnpm | npm |
|
|
126
|
-
|---|---|---|
|
|
127
|
-
| Lee `.npmrc` raíz | sí | sí |
|
|
128
|
-
| Lee `pnpm-workspace.yaml#allowBuilds` | sí | no aplica (no bloquea install scripts) |
|
|
129
|
-
| Valida árbol git por defecto | sí (necesita `--no-git-checks`) | no |
|
|
130
|
-
| Respeta `prepublishOnly` script | sí | sí |
|
|
131
|
-
| Respeta `publishConfig.registry` | sí | sí |
|
|
132
|
-
| Archivos incluidos en el tar | igual (lee `files` de `package.json` y `.npmignore`) | igual |
|
|
133
|
-
| Reduce el tamaño del tar | igual (ambos comprimen con `tar.gz`) | igual |
|
|
134
|
-
| Velocidad real | parecida; pnpm hace una pasada más para validar el lockfile | parecida |
|
|
135
|
-
|
|
136
|
-
El paquete resultante en el registry es **bit-by-bit idéntico** independiente
|
|
137
|
-
del cliente que lo suba — los usuarios finales pueden instalar con `npm`,
|
|
138
|
-
`pnpm`, `yarn` o `bun` sin diferencia.
|
|
139
|
-
|
|
140
|
-
---
|
|
141
|
-
|
|
142
|
-
## Verificación post-publicación
|
|
143
|
-
|
|
144
|
-
```bash
|
|
145
|
-
pnpm view @iaforged/context-code version # versión publicada
|
|
146
|
-
pnpm view @iaforged/context-code dist-tags # qué dist-tag apunta dónde
|
|
147
|
-
|
|
148
|
-
# instalar la versión recién subida en una carpeta limpia para probar:
|
|
149
|
-
mkdir /tmp/cc-test && cd /tmp/cc-test
|
|
150
|
-
pnpm add @iaforged/context-code@latest
|
|
151
|
-
./node_modules/.bin/context --version
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
Si publicaste con un tag distinto a `latest`:
|
|
155
|
-
|
|
156
|
-
```bash
|
|
157
|
-
pnpm add @iaforged/context-code@beta
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
---
|
|
161
|
-
|
|
162
|
-
## Si algo falla
|
|
163
|
-
|
|
164
|
-
| Error | Causa típica | Cómo se arregla |
|
|
165
|
-
|---|---|---|
|
|
166
|
-
| `ENEEDAUTH` | no estás logueado | `pnpm login` o `npm login` |
|
|
167
|
-
| `403 Forbidden` | el usuario no tiene permisos de publish en el scope | añade el usuario al scope `@iaforged` en npmjs.com |
|
|
168
|
-
| `Cannot publish over previously published version` | la versión ya existe | bump de versión (manual o por `pubpackages`) |
|
|
169
|
-
| `ERR_PNPM_GIT_UNCLEAN` | árbol sucio | `git stash` o `--no-git-checks` |
|
|
170
|
-
| El preflight aborta sin publicar | falta `AUTHORIZED=1` | añadir la variable al entorno |
|
|
171
|
-
| `tsc no se reconoce` durante prepublish | falta `typescript` en devDeps | `pnpm add -D typescript` (ya está en main) |
|
|
172
|
-
|
|
173
|
-
---
|
|
174
|
-
|
|
175
|
-
## Política de versiones
|
|
176
|
-
|
|
177
|
-
El bump automático del `pubpackages.sh` sigue una variante mínima:
|
|
178
|
-
- `patch` incrementa cada release.
|
|
179
|
-
- Al llegar a `patch === 9` salta a `minor + 1` y `patch = 0`.
|
|
180
|
-
- Nunca toca `major`.
|
|
181
|
-
|
|
182
|
-
Para bumpear manualmente (p. ej. una major):
|
|
183
|
-
|
|
184
|
-
```bash
|
|
185
|
-
node -e "const p=require('./package.json'); p.version='2.0.0'; require('fs').writeFileSync('package.json', JSON.stringify(p,null,2)+'\n')"
|
|
186
|
-
AUTHORIZED=1 pnpm publish --access public --no-git-checks
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
---
|
|
190
|
-
|
|
191
|
-
## Despublicar / depreciar (no recomendado)
|
|
192
|
-
|
|
193
|
-
npm bloquea unpublish después de 72h. Para marcar una versión como obsoleta:
|
|
194
|
-
|
|
195
|
-
```bash
|
|
196
|
-
npm deprecate @iaforged/context-code@1.3.5 "Usa 1.3.6 o superior"
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
Esto no quita el paquete del registry, solo añade un warning al instalar.
|
package/docs/RECOVERY_NOTES.md
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
# Recovery Notes
|
|
2
|
-
|
|
3
|
-
Recovered source files from `cli.js.map`.
|
|
4
|
-
|
|
5
|
-
## Summary
|
|
6
|
-
|
|
7
|
-
- Total entries in source map: 4756
|
|
8
|
-
- Files written: 4756
|
|
9
|
-
- Entries without inline content: 0
|
|
10
|
-
- Main application files under `src/`: 1902
|
|
11
|
-
- Dependency files under `node_modules/`: 2850
|
|
12
|
-
- Native/vendor helper files under `vendor/`: 4
|
|
13
|
-
- Other recovered paths: 0
|
|
14
|
-
|
|
15
|
-
## Recommended Review Order
|
|
16
|
-
|
|
17
|
-
1. `src/cli/`
|
|
18
|
-
2. `src/commands/`
|
|
19
|
-
3. `src/components/`
|
|
20
|
-
4. `src/services/`
|
|
21
|
-
5. `src/tools/`
|
|
22
|
-
6. `src/utils/`
|
|
23
|
-
|
|
24
|
-
## Top-Level `src/` Breakdown
|
|
25
|
-
|
|
26
|
-
- utils: 564 files
|
|
27
|
-
- components: 389 files
|
|
28
|
-
- commands: 207 files
|
|
29
|
-
- tools: 184 files
|
|
30
|
-
- services: 130 files
|
|
31
|
-
- hooks: 104 files
|
|
32
|
-
- ink: 96 files
|
|
33
|
-
- bridge: 31 files
|
|
34
|
-
- constants: 21 files
|
|
35
|
-
- skills: 20 files
|
|
36
|
-
- cli: 19 files
|
|
37
|
-
- keybindings: 14 files
|
|
38
|
-
- tasks: 12 files
|
|
39
|
-
- types: 11 files
|
|
40
|
-
- migrations: 11 files
|
|
41
|
-
- context: 9 files
|
|
42
|
-
- entrypoints: 8 files
|
|
43
|
-
- memdir: 8 files
|
|
44
|
-
- state: 6 files
|
|
45
|
-
- buddy: 6 files
|
|
46
|
-
- vim: 5 files
|
|
47
|
-
- native-ts: 4 files
|
|
48
|
-
- query: 4 files
|
|
49
|
-
- remote: 4 files
|
|
50
|
-
- screens: 3 files
|
|
51
|
-
- server: 3 files
|
|
52
|
-
- plugins: 2 files
|
|
53
|
-
- upstreamproxy: 2 files
|
|
54
|
-
- bootstrap: 1 files
|
|
55
|
-
- schemas: 1 files
|
|
56
|
-
- Tool.ts: 1 files
|
|
57
|
-
- ink.ts: 1 files
|
|
58
|
-
- context.ts: 1 files
|
|
59
|
-
- coordinator: 1 files
|
|
60
|
-
- cost-tracker.ts: 1 files
|
|
61
|
-
- tasks.ts: 1 files
|
|
62
|
-
- voice: 1 files
|
|
63
|
-
- tools.ts: 1 files
|
|
64
|
-
- query.ts: 1 files
|
|
65
|
-
- outputStyles: 1 files
|
|
66
|
-
- projectOnboardingState.ts: 1 files
|
|
67
|
-
- history.ts: 1 files
|
|
68
|
-
- commands.ts: 1 files
|
|
69
|
-
- Task.ts: 1 files
|
|
70
|
-
- assistant: 1 files
|
|
71
|
-
- moreright: 1 files
|
|
72
|
-
- costHook.ts: 1 files
|
|
73
|
-
- replLauncher.tsx: 1 files
|
|
74
|
-
- interactiveHelpers.tsx: 1 files
|
|
75
|
-
- dialogLaunchers.tsx: 1 files
|
|
76
|
-
- setup.ts: 1 files
|
|
77
|
-
- QueryEngine.ts: 1 files
|
|
78
|
-
- main.tsx: 1 files
|
package/docs/RENAMING_NOTES.md
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
# Context Code Renaming Notes
|
|
2
|
-
|
|
3
|
-
This folder is a working copy created from recovered sources and the original bundle.
|
|
4
|
-
|
|
5
|
-
What was changed:
|
|
6
|
-
- Package name changed to `@context-ai/context-code`
|
|
7
|
-
- CLI bin name changed from `claude` to `context`
|
|
8
|
-
- README branding changed to `Context Code`
|
|
9
|
-
- Executable launcher added: `context.cmd`
|
|
10
|
-
- Visible bundle strings `Claude Code` were rebranded where possible
|
|
11
|
-
|
|
12
|
-
What was not fully changed:
|
|
13
|
-
- Internal identifiers, service integrations, telemetry, and some upstream references may still mention Claude or Anthropic
|
|
14
|
-
- Source files under `src/` were left mostly intact to avoid breaking runtime behavior
|
|
15
|
-
|
|
16
|
-
Recommended local run:
|
|
17
|
-
|
|
18
|
-
```powershell
|
|
19
|
-
.\context.cmd --help
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
Validation status:
|
|
23
|
-
- `.\context.cmd --help` works
|
|
24
|
-
- `.\context.cmd --version` works and reports `Context Code`
|
|
25
|
-
- No complete build pipeline was recovered with the source map copy, so there is no guaranteed `build` script or `tsconfig`-driven compile step yet
|
package/docs/SKILLS.md
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
## Skills de Context
|
|
2
|
-
|
|
3
|
-
Context usa `.context/skills` como carpeta oficial de skills del proyecto y `~/.context/skills` como carpeta global de usuario.
|
|
4
|
-
|
|
5
|
-
Formato:
|
|
6
|
-
|
|
7
|
-
```text
|
|
8
|
-
.context/skills/<nombre-skill>/SKILL.md
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
Comandos:
|
|
12
|
-
|
|
13
|
-
```sh
|
|
14
|
-
/skills
|
|
15
|
-
/skills import
|
|
16
|
-
/skills import .claude
|
|
17
|
-
/skills import .codex
|
|
18
|
-
/skills import .agents
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
Uso practico:
|
|
22
|
-
|
|
23
|
-
- `/skills` lista las skills disponibles.
|
|
24
|
-
- `/skills import` busca skills legacy en `.claude/skills`, `.codex/skills` y `.agents/skills`, y las copia a `.context/skills`.
|
|
25
|
-
- `/skills import .claude` importa solo desde `.claude/skills`.
|
|
26
|
-
- Las nuevas skills deben crearse en `.context/skills/<nombre>/SKILL.md`.
|
|
27
|
-
- `CONTEXT_CONFIG_DIR` es la variable principal para cambiar la carpeta global; `CLAUDE_CONFIG_DIR` queda como fallback temporal de compatibilidad.
|