@vectorplane/ctrl-cli 0.1.0 → 0.1.2
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/README.md +20 -113
- package/dist/core/constants.js +2 -2
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,110 +1,63 @@
|
|
|
1
1
|
# VectorPlane Ctrl CLI
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
CLI oficial do VectorPlane.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
## Relação com `conductor-edge-ia`
|
|
8
|
-
|
|
9
|
-
O backend atual define alguns conceitos centrais que este CLI preserva:
|
|
10
|
-
|
|
11
|
-
- `workspace` como unidade primária de contexto
|
|
12
|
-
- `snapshot` consolidado como envelope principal de estado
|
|
13
|
-
- `agent session` e `clientInstanceId` como base de observabilidade e coordenação
|
|
14
|
-
- `control plane` como camada acima de clientes locais, MCP e REST
|
|
15
|
-
- preocupação explícita com governança, rastreabilidade, serialização consistente e isolamento
|
|
16
|
-
|
|
17
|
-
O `vp` foi desenhado para se encaixar nesse vocabulário e servir como cliente local premium do VectorPlane.
|
|
18
|
-
|
|
19
|
-
## Evolução planejada
|
|
20
|
-
|
|
21
|
-
O roadmap do CLI foi documentado em [`docs/evolution-phases.md`](./docs/evolution-phases.md), alinhado às fases já visíveis no `conductor-edge-ia`:
|
|
22
|
-
|
|
23
|
-
- `Foundation`
|
|
24
|
-
- `Coordination`
|
|
25
|
-
- `Governed Sync`
|
|
26
|
-
- `Enterprise Control Surface`
|
|
5
|
+
Use o comando `vp` para autenticar, verificar a sessão local e sincronizar o workspace com o produto.
|
|
27
6
|
|
|
28
7
|
## Instalação
|
|
29
8
|
|
|
30
|
-
```bash
|
|
31
|
-
npm install
|
|
32
|
-
npm run build
|
|
33
|
-
npm install -g .
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
Instalação via npm público:
|
|
37
|
-
|
|
38
9
|
```bash
|
|
39
10
|
npm install -g @vectorplane/ctrl-cli
|
|
40
11
|
```
|
|
41
12
|
|
|
42
|
-
## Uso
|
|
13
|
+
## Uso
|
|
43
14
|
|
|
44
15
|
```bash
|
|
45
16
|
vp login
|
|
46
17
|
vp status
|
|
47
18
|
vp sync
|
|
48
|
-
vp whoami
|
|
49
|
-
vp doctor
|
|
50
|
-
vp workspace current
|
|
51
19
|
```
|
|
52
20
|
|
|
53
21
|
## Comandos
|
|
54
22
|
|
|
55
23
|
### `vp login`
|
|
56
24
|
|
|
57
|
-
- inicia callback local em `http://127.0.0.1:4217/callback`
|
|
58
|
-
- gera `state` seguro
|
|
59
25
|
- abre o navegador para autenticação
|
|
60
|
-
-
|
|
61
|
-
-
|
|
26
|
+
- conclui o login com callback local seguro
|
|
27
|
+
- salva a sessão localmente
|
|
62
28
|
|
|
63
29
|
### `vp sync`
|
|
64
30
|
|
|
65
|
-
-
|
|
66
|
-
-
|
|
67
|
-
-
|
|
68
|
-
- faz deduplicação por hash
|
|
69
|
-
- persiste snapshot localmente
|
|
70
|
-
- envia para `POST https://api.vectorplane.io/sync`
|
|
71
|
-
- enfileira localmente quando a API falha
|
|
31
|
+
- coleta contexto local do workspace
|
|
32
|
+
- envia a sincronização para o VectorPlane
|
|
33
|
+
- usa fila local quando a API estiver indisponível
|
|
72
34
|
|
|
73
35
|
### `vp status`
|
|
74
36
|
|
|
75
|
-
-
|
|
76
|
-
-
|
|
77
|
-
- mostra workspace ativo e binding local
|
|
78
|
-
- mostra diretório atual
|
|
79
|
-
- mostra machine ID persistido
|
|
80
|
-
- mostra branch git, fila local, sessão de agente e última sincronização quando disponíveis
|
|
37
|
+
- mostra o estado da sessão local
|
|
38
|
+
- exibe workspace ativo, diretório atual e última sincronização
|
|
81
39
|
|
|
82
40
|
### Comandos adicionais já implementados
|
|
83
41
|
|
|
84
42
|
- `vp whoami`
|
|
85
|
-
-
|
|
43
|
+
- mostra a identidade autenticada
|
|
86
44
|
- `vp doctor`
|
|
87
|
-
-
|
|
45
|
+
- executa verificações locais e de conectividade
|
|
88
46
|
- `vp config`
|
|
89
|
-
-
|
|
90
|
-
- lê e altera configurações principais
|
|
47
|
+
- gerencia perfis e configuração local
|
|
91
48
|
- `vp workspace`
|
|
92
|
-
-
|
|
93
|
-
- faz binding manual
|
|
94
|
-
- tenta resolver por repositório remoto
|
|
49
|
+
- gerencia o workspace atual
|
|
95
50
|
- `vp session`
|
|
96
|
-
-
|
|
51
|
+
- gerencia sessões de agente
|
|
97
52
|
- `vp context`
|
|
98
|
-
- carrega
|
|
53
|
+
- carrega contexto remoto do workspace
|
|
99
54
|
- `vp bootstrap`
|
|
100
|
-
-
|
|
55
|
+
- obtém instruções de setup do workspace
|
|
101
56
|
- `vp event send`
|
|
102
|
-
- envia
|
|
57
|
+
- envia eventos operacionais
|
|
103
58
|
|
|
104
59
|
## Persistência local
|
|
105
60
|
|
|
106
|
-
Arquivos usados:
|
|
107
|
-
|
|
108
61
|
- `~/.vectorplane/config.json`
|
|
109
62
|
- `~/.vectorplane/session.json`
|
|
110
63
|
- `~/.vectorplane/device.json`
|
|
@@ -117,51 +70,5 @@ Arquivos usados:
|
|
|
117
70
|
|
|
118
71
|
- tokens nunca são impressos no terminal
|
|
119
72
|
- tokens nunca são enviados por query string
|
|
120
|
-
- o callback
|
|
121
|
-
-
|
|
122
|
-
- logs evitam payloads sensíveis e mascaram chaves delicadas
|
|
123
|
-
- remotes git são sanitizados antes de entrarem no snapshot
|
|
124
|
-
|
|
125
|
-
## Desenvolvimento
|
|
126
|
-
|
|
127
|
-
```bash
|
|
128
|
-
npm run check
|
|
129
|
-
npm run build
|
|
130
|
-
npm start -- status
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
## Publicação npm
|
|
134
|
-
|
|
135
|
-
O pacote foi preparado para publicação pública como `@vectorplane/ctrl-cli`.
|
|
136
|
-
|
|
137
|
-
Checklist local:
|
|
138
|
-
|
|
139
|
-
```bash
|
|
140
|
-
npm run release:check
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
Publicação:
|
|
144
|
-
|
|
145
|
-
```bash
|
|
146
|
-
npm login
|
|
147
|
-
npm publish --access public
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
Notas de empacotamento:
|
|
151
|
-
|
|
152
|
-
- o tarball publica apenas `bin/`, `dist/`, `README.md` e `LICENSE`
|
|
153
|
-
- `src/`, `docs/`, `.git/`, `node_modules/`, `package-lock.json` e arquivos locais não entram no pacote
|
|
154
|
-
- tokens, sessão local e dados de `~/.vectorplane/` não fazem parte do publish
|
|
155
|
-
|
|
156
|
-
## Integração aplicada
|
|
157
|
-
|
|
158
|
-
O fluxo web e backend do CLI foi alinhado ao ecossistema real:
|
|
159
|
-
|
|
160
|
-
- dashboard com rota `/cli/login`
|
|
161
|
-
- emissão autenticada de código por `POST /auth/cli/code`
|
|
162
|
-
- troca de token por `POST /cli/token/exchange`
|
|
163
|
-
- refresh por `POST /cli/token/refresh`
|
|
164
|
-
- resolução e leitura de workspace via rotas `cli/workspace/*`
|
|
165
|
-
- `POST /sync` e `POST /events` no mesmo envelope oficial do worker
|
|
166
|
-
|
|
167
|
-
O cliente agora faz unwrapping do envelope `{ success, data, requestId }` usado pelo `conductor-edge-ia`, em vez de assumir respostas cruas.
|
|
73
|
+
- o callback valida o `state`
|
|
74
|
+
- a sessão fica no diretório do usuário
|
package/dist/core/constants.js
CHANGED
|
@@ -12,8 +12,8 @@ export const SNAPSHOTS_DIRECTORY_NAME = "snapshots";
|
|
|
12
12
|
export const DEFAULT_PROFILE_NAME = "default";
|
|
13
13
|
export const DEFAULT_PROFILE = {
|
|
14
14
|
name: DEFAULT_PROFILE_NAME,
|
|
15
|
-
apiBaseUrl: "https://
|
|
16
|
-
appBaseUrl: "https://app.vectorplane.
|
|
15
|
+
apiBaseUrl: "https://proxy-pn.vectorplane.ai",
|
|
16
|
+
appBaseUrl: "https://app.vectorplane.ai",
|
|
17
17
|
workspace: null,
|
|
18
18
|
orgId: null,
|
|
19
19
|
environment: "production",
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vectorplane/ctrl-cli",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "Official VectorPlane CLI
|
|
3
|
+
"version": "0.1.2",
|
|
4
|
+
"description": "Official VectorPlane CLI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|